[petsc-users] Near nullspace for preconditioners other than GAMG?

Matthew Knepley knepley at gmail.com
Sun Mar 8 07:45:55 CDT 2015

On Sat, Mar 7, 2015 at 5:52 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:

> > On Mar 7, 2015, at 5:27 PM, David Knezevic <david.knezevic at akselos.com>
> wrote:
> >
> > OK, thanks for letting me know.
> >
> > I've tried GAMG and ML with MatNullSpaceCreateRigidBody and those both
> work well for me. (I tried ML after Jed pointed out that ML also uses the
> near nullspace.)
> >
> > I have also tried hypre but the convergence hasn't been as good for the
> elasticity models I've been using, though I may not have been setting the
> hypre options in an optimal way for elasticity.
> >
> > Another situation I've been meaning to ask about: If the elasticity
> model includes some "near rigid" regions (very high Young's modulus) all
> iterative solvers I've tried fare poorly. I guess it's because the highly
> contrasting stiffnesses give a large condition number. Is there a standard
> way to get the preconditioner compensate for this?
>   Off the top of my head:   a "domain decomposition" answer might be to
> use a sparse direct solver on that region; of course how to tie that into
> the rest of the regions and the iterative solver is a broad question.
>    Maybe in the context of AMG all the nodes in that region could be
> retained in the coarser grids (assuming it is a relatively small part of
> the domain) and so all those points end up in the coarse grid which is
> solved with a sparse direct solver?  We don't currently have an interface
> for you to indicate nodes you want to keep in the coarse grid; Mark would
> have know if this makes any sense at all.

Isn't this just another near null vector? If the thing is very stiff, the
Jacobian is approximately singular there since you really
only have the 3 rigid body modes as degrees of freedom. You are right that
it should be a coarse basis function, but the way
to get it in there is to put it in as a near null mode, just as he is doing


>    Barry
> >
> > Thanks,
> > David
> >
> >
> >
> > On Sat, Mar 7, 2015 at 5:57 PM, Mark Adams <mfadams at lbl.gov> wrote:
> > FYI, stüben used classical AMG for elasticity but he has articulated his
> code for elasticity more than Hypre as I understand it.  Hypre can work OK
> for elasticity in my experience.  Its worth a try.
> >
> > Mark
> >
> > On Thu, Mar 5, 2015 at 5:27 PM, David Knezevic <
> david.knezevic at akselos.com> wrote:
> > OK, got it, thanks!
> >
> > David
> >
> >
> > On Thu, Mar 5, 2015 at 5:08 PM, Jed Brown <jed at jedbrown.org> wrote:
> > David Knezevic <david.knezevic at akselos.com> writes:
> > > I was just wondering if its possible to achieve the same sort of thing
> with
> > > other AMG solvers (e.g. BoomerAMG)? I assume that MatSetNearNullSpace
> does
> > > nothing for external solvers like hypre, right?
> >
> > It is used by ML (smoothed aggregation), but not BoomerAMG (classical
> > AMG) which uses an algorithm that doesn't have a natural place for such
> > information.  To my knowledge, classical AMG is not widely used for
> > elasticity.  It is very robust for M-matrices.
> >
> >
> >

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/20150308/a8ae23b3/attachment.html>

More information about the petsc-users mailing list