[petsc-users] GAMG and near-null-space when applying Dirichlet Conditions
Manav Bhatia
bhatiamanav at gmail.com
Fri Feb 26 11:19:48 CST 2016
I have now experimented with different AMG solvers (gamg, ML, hypre ) through petsc, and have a mixed bag of results. I have used -pc_gamg_threshold 0.1 for all cases.
The problem is that of plate-bending that is clamped on all ends, and has a uniformly distributed load.
The problem has 6 dofs per node: {u, v, w, tx, ty, tz}. u, v are the in-plane deformations related to membrane action. w, tx, ty get the stiffness from the Mandlin first-order shear deformation theory. tz doesn’t really do anything in the problem, and the stiffness matrix has small diagonal values to avoid singularity problems.
I have tested AMG solvers for number of unknowns from a few hundred to about 1.5e6.
First off, I am absolutely thrilled to be able to solve that large a system of equations coming from a bending operator on my laptop! So a big thanks to the petsc team for giving us the tools!
I have not done a very thorough convergence study, but following are some general observations:
— Without providing the near null space, all three solvers work.
— The convergence of the solvers is significantly better when the near null space is provided. There are 6 near-null space modes provided: 3 rigid-body translations and 3-rigid body rotations.
— With the near null space provided, both hypre and ML work without problems, but GAMG quits the error of zero-pivot in LU decomposition. I am guessing this happens for the coarsest level. I was able to get around this with -mg_levels_pc_type jacobi . (I saw some earlier discussion on the mailing list about this, and got the sense that this may be a non-deterministic issue (?) ).
— With -pc_gamg_threshold 0.1 and -pc_mg_type full, I get the fastest convergence from ML.
— GAMG seems to take about twice the amount of memory than ML.
I am now keen to play around with various parameters to see how to influence the convergence.
Any comments would be greatly appreciated.
Regards,
Manav
> On Feb 25, 2016, at 6:21 AM, Mark Adams <mfadams at lbl.gov> wrote:
>
> I added ", which is often the null space of the operator without boundary conditions" to the web page doc for MatSetNearNullSpace.
>
> On Wed, Feb 24, 2016 at 10:57 AM, Matthew Knepley <knepley at gmail.com <mailto:knepley at gmail.com>> wrote:
> On Wed, Feb 24, 2016 at 9:45 AM, Manav Bhatia <bhatiamanav at gmail.com <mailto:bhatiamanav at gmail.com>> wrote:
> Hi,
>
> I typically apply Dirichlet BCs by modifying the Jacobin and rhs: zero constrained rows of matrix with 1.0 at diagonal, and zero corresponding rows of rhs.
>
> While using GAMG, is it still recommended to provide the near-null space (given that the zero-eigenvalues have been removed by specification of DIrichlet BCs)?
>
> Yes.
>
> If that information is still needed, should the vectors be modified in any manner to be consistent with the Dirichlet BCs?
>
> No. You can see that if you take a small piece of the domain, apart from the boundary, it will have this as a null space.
>
> Matt
>
> Thanks,
> Manav
>
>
>
>
>
> --
> What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.
> -- Norbert Wiener
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20160226/e06abb42/attachment.html>
More information about the petsc-users
mailing list