[petsc-users] GAMG

Matthew Knepley knepley at gmail.com
Fri Oct 28 09:35:07 CDT 2016


On Fri, Oct 28, 2016 at 8:38 AM, Jeremy Theler <jeremy at seamplex.com> wrote:

>
> >
> >         If I do not call PCSetCoordinates() the error goes away but
> >         convergence
> >         is slow.
> > Is it possible that your coordinates lie on a 2D surface? All this
> > does is make the 6 basis vectors
> > for translations and rotations. You can just make these yourself and
> > call MatSetNearNullSpace()
> > and see what you get.
> >
> No, they do not lie on a 2D surface :-/
>
> Sorry but I did not get the point about the 6 basis vectors and
> MatSetNearNullSpace().
>

AMG (the agglomeration kind) needs to know the near null space of your
operator in order
to work. You have an elasticity problem (I think), and if you take that
operator without boundary
conditions, the energy is invariant to translations and rotations. The
space of translations and
rotations is a 6D space (3 translations, 3 rotations). You need to express
these in the basis for
your problem (I assume linear elements, P1). This is what
PCSetCoordinates() tries to do. Something
is going wrong, but its hard for us to say what since I have no idea what
your problem looks like.
So you can make these vectors yourself and provide them to GAMG using
MatSetNearNullSpace().

   Matt


> --
> jeremy
>
-- 
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/20161028/e32cd2b4/attachment.html>


More information about the petsc-users mailing list