[petsc-dev] MatNest and inner KSP

Stefano Zampini stefano.zampini at gmail.com
Wed Dec 19 02:46:00 CST 2018


Pierre, 

The details of the  inner solvers for PCFIELDSPLIT are not known if you don’t call PCSetUp, so the cascade approach should be preferred.

After PCSetUp, you can access the inner solves, see e.g.  https://bitbucket.org/petsc/petsc/src/4ddd364d454d7bce974e92e0b5bd4f4516dbff02/src/ksp/pc/impls/bddc/bddc.c#lines-2715
> On Dec 19, 2018, at 9:01 AM, Pierre Jolivet via petsc-dev <petsc-dev at mcs.anl.gov> wrote:
> 
> Hello,
> I have a PCFIELDSPLIT where the fields are defined by a MATNEST “decomposition”.
> Right now, I am first defining the KSP of the diagonal blocks of the MATNEST, which are themselves PCFIELDSPLIT, then creating the Mat itself, and eventually I’d like to solve systems with the complete MATNEST.
> However, the KSP and PC options of the “first level" inner solvers are not propagated to the global outer solver.
> Can this be achieved somehow, or do I always need to set the options in the opposite direction (first outer solver, then inner solvers, e.g., through a cascade of PCFieldSplitGetSubKSP)?
> 
> Thanks in advance,
> Pierre



More information about the petsc-dev mailing list