[petsc-users] Nullspaces for schur complement PCs
Matthew Knepley
knepley at gmail.com
Mon Nov 10 17:50:16 CST 2014
On Mon, Nov 10, 2014 at 5:34 PM, Lawrence Mitchell <
lawrence.mitchell at imperial.ac.uk> wrote:
>
> On 10 Nov 2014, at 21:48, Matthew Knepley <knepley at gmail.com> wrote:
>
> > On Fri, Nov 7, 2014 at 11:04 AM, Lawrence Mitchell <
> lawrence.mitchell at imperial.ac.uk>wrote:
> > Hi petsc-dev,
> >
> > I'm solving a pure Neumann mixed Poisson-like problem, preconditioning
> with a schur complement. The pressure space has a nullspace of the
> constant functions and so I attach the appropriate nullspace to the krylov
> solver, and compose the constant nullspace with the IS defining the
> pressure space. My RHS is consistent.
> >
> > That is supposed to work, and I think it does in my tests. The code is
> here
> >
> >
> https://bitbucket.org/petsc/petsc/src/1f0d623c8336219eb98f7ded6f95c151ca603fe7/src/ksp/pc/impls/fieldsplit/fieldsplit.c?at=master#cl-562
> >
>
> That code attaches the nullspace attached to the IS to jac->pmat if
> appropriate. However, if I'm using -pc_fieldsplit_schur_precondition selfp
> then the schur complement is preconditioned with jac->schurp (rather than
> jac->pmat[1]) which is not setup until here
> https://bitbucket.org/petsc/petsc/src/1f0d623c8336219eb98f7ded6f95c151ca603fe7/src/ksp/pc/impls/fieldsplit/fieldsplit.c?at=master#cl-656
>
> at which point the nullspace is not attached, no?
>
Crap, that is right. I think we should propagate the nullspace from pmat[1].
The next 2 weeks are insane for me. If you do it, I promise to look at the
pull request
and merge to next.
Thanks,
Matt
> Cheers,
>
> Lawrence
>
--
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/20141110/9718c617/attachment-0001.html>
More information about the petsc-users
mailing list