[petsc-users] PCFieldSplitSetSchurPre in fortran

Klaij, Christiaan C.Klaij at marin.nl
Fri Aug 29 08:55:03 CDT 2014


I'm trying PCFieldSplitSetSchurPre with
PC_FIELDSPLIT_SCHUR_PRE_SELFP in petsc-3.5.1 using fortran.

The first problem is that PC_FIELDSPLIT_SCHUR_PRE_SELFP seems to
be missing in fortran, I get the compile error:

This name does not have a type, and must have an explicit type.   [PC_FIELDSPLIT_SCHUR_PRE_SELFP]

while compilation works fine with _A11, _SELF and _USER.

The second problem is that the call doesn't seem to have any
effect. For example, I have

CALL PCFieldSplitSetSchurPre(pc,PC_FIELDSPLIT_SCHUR_PRE_USER,aa,ierr)
CALL PCFieldSplitSetSchurFactType(pc,PC_FIELDSPLIT_SCHUR_FACT_LOWER,ierr)

This compiles and runs, but ksp_view tells me

PC Object:(sys_) 3 MPI processes
  type: fieldsplit
    FieldSplit with Schur preconditioner, factorization LOWER
    Preconditioner for the Schur complement formed from A11

So changing the factorization from the default FULL to LOWER did
work, but changing the preconditioner from A11 to USER didn't.

I've also tried to run directly from the command line using

-sys_pc_fieldsplit_schur_precondition user -sys_ksp_view

This works in the sense that I don't get the "WARNING! There are
options you set that were not used!" message, but still ksp_view
reports A11 instead of user provided matrix.

Chris


dr. ir. Christiaan Klaij
CFD Researcher
Research & Development
E mailto:C.Klaij at marin.nl
T +31 317 49 33 44


MARIN
2, Haagsteeg, P.O. Box 28, 6700 AA Wageningen, The Netherlands
T +31 317 49 39 11, F +31 317 49 32 45, I www.marin.nl



More information about the petsc-users mailing list