[petsc-users] 2D Poisson on nonuniform meshes

Matthew Knepley knepley at gmail.com
Tue Sep 1 12:13:34 CDT 2015


On Tue, Sep 1, 2015 at 6:53 AM, Filippo Leonardi <filippo.leon at gmail.com>
wrote:

> On Tuesday 01 September 2015 06:32:38 you wrote:
>
> > > >
>
> > > > 1) The KSP view does not say it is shifting. Are you using the latest
>
> > > >
>
> > > > release?
>
> > >
>
> > > yes, 3.6. Does PETSc warn for that even if I set the nullspace? I can
> also
>
> > > check MUMPS or something else.
>
> >
>
> > I am not sure what you think PETSc does here. If shifting were enabled,
> it
>
> > would add some
>
> > diagonal matrix to the input matrix and continue the factorization. This
>
> > would mean that the
>
> > factors were not, in fact, a factorization of the input matrix, and you
>
> > would not get the exact
>
> > solution in one iterate.
>
>
>
> I though PETSc would've replace my pivots with small eps, which is
> actually not a problem in my case
>
>
>
> >
>
> > > > 2) If it shifted, it would not solve in a single iterate.
>
> > >
>
> > > even with preonly?
>
> >
>
> > You would have a large residual. Do you?
>
>
>
> Actually, I get a perfect solution.
>
>
>
> >
>
> > > > 3) Your GAMG results imply that something is wrong with the coarse
>
> > > > solve.
>
> > > >
>
> > > > This is exactly what would happen if
>
> > > >
>
> > > > that problem was not solved accurately (its off by > 10 orders of
>
> > > >
>
> > > > magnitude).
>
> > >
>
> > > yes, but GAMG builds is own coarse solvers so either the problem is
>
> > > already in the definition of A and b (likely) or it is a bug in gamg.
>
> >
>
> > Yes. GAMG uses the constants to build the basis, on the assumption that
>
> > they are in the (near) nullspace of the
>
> > operator with no boundary conditions. Since this is far off, I think this
>
> > must not be true for your A.
>
>
>
> >
>
> > > > It sounds like your operator is not singular, and its not the
> Laplacian
>
> > > >
>
> > > > since it does not look like the Neumann version
>
> > > >
>
> > > > has constants as a null space.
>
> > >
>
> > > I'm using periodic boundaries, and constants are in kern(A)
>
> >
>
> > Did you check?
>
>
>
> Checked with VecSet and MatMult just in case, I get a machine eps constant
> vector.
>

Okay, it seems that we have the best chance of figuring out the problem by
looking at option 2) and 4).

First, is your rhs consistent, meaning is it orthogonal to your nullspace?

   Matt


> >
>
> > Matt
>
> >
>
> > > Thanks a lot for your time.
>
> > >
>
> > > > Thanks,
>
> > > >
>
> > > >
>
> > > > > > > > >
>



-- 
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/20150901/a09d7cae/attachment.html>


More information about the petsc-users mailing list