[petsc-users] using PCFieldSplitGetSubKSP in c++

Matthew Knepley knepley at gmail.com
Wed Mar 14 07:47:41 CDT 2012


On Wed, Mar 14, 2012 at 5:11 AM, Jed Brown <jedbrown at mcs.anl.gov> wrote:

> On Wed, Mar 14, 2012 at 02:53, Klaij, Christiaan <C.Klaij at marin.nl> wrote:
>
>> Thanks, no more problems after PCSetUP(). I am using petsc-dev,
>> so are you saying that MatSetNullSpace() on the block matrix [A00
>> A01, A10 A11] will be enough? Can/will the null space of the
>> Schur complement be deduced from this? Otherwise one would still
>> need to "drill down" to get Schur complement matrix, right?
>>
>
> Unfortunately, no, and I don't think it's possible to do this
> automatically.
>
> Barry/Matt, this is the recurring issue of whether
> MatGetSubMatrix()/MatGetSchurComplement() should have the "big" matrix
> retain ownership, such that the user could decompose, set null spaces and
> auxiliary operators, restore, and have PCFieldSplit and everyone else do
> the right thing.
>

I thought MatSchurComplement() made the original matrix available? I still
disagree with this for
MatGetSubMatrix() since it will create a nightmare for references. I am
still tracking down a
reference bug in FS when you use a custom preconditoner for Schur.

   Matt

-- 
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/20120314/f31d4a85/attachment.htm>


More information about the petsc-users mailing list