[petsc-dev] Preconditioner for Schur complement (pcfieldsplit)

Thomas Witkowski thomas.witkowski at tu-dresden.de
Wed Apr 6 04:36:53 CDT 2011


Jed Brown wrote:
> On Wed, Apr 6, 2011 at 09:34, Thomas Witkowski 
> <thomas.witkowski at tu-dresden.de 
> <mailto:thomas.witkowski at tu-dresden.de>> wrote:
>
>     I have not a very good overview of PETSc's internal matters, but
>     wouldn't be it correct that MatGetBlockSize returns the number of
>     nested matrices of a MatNest?
>
>
> No, and it would not make sense to do so because that is semantically 
> different information.
>
> We can add support for automatically detecting splits when MatNest is 
> used, but it really is better to set the splits using 
> PCFieldSplitSetIS() or by using DMComposite because then it will do 
> the correct thing regardless of whether MatNest is used underneath.
This brings me back to the starting point of my current problem: how to 
set splits for MatNest correctly? PCFieldSplitSetFields seems not to 
work in my case. When I want to make use of PCFieldSplitSetIS for 
splitting MatNest, which indices should I provide? The MatNest I've 
created consists of the to main diagonal blocks with indices 0 to n and 
0 to m. I'm not sure which index sets must be provided for 
PCFieldSplitSetIS.

Thomas



More information about the petsc-dev mailing list