[petsc-users] Fwd: Questions using PCFIELDSPLIT

Adriano Côrtes adrimacortes at gmail.com
Sat Dec 14 10:38:26 CST 2013


Hi all,
I'm trying to play with PCFIELDSPLIT, but after reading I'm still confused
interpreting the monitors. I'm trying to solve a Stokes problem

        [  A    B^t  ]
M =  [               ]
        [  B    0     ]

My first question is about the MINRES behaviour with pcfieldsplit. My
options for pcfieldsplit are

    ierr = PCFieldSplitSetType(pc,PC_COMPOSITE_SCHUR);CHKERRQ(ierr);

    PCFieldSplitSchurFactType schurfact = PC_FIELDSPLIT_SCHUR_FACT_DIAG;
    ierr = PCFieldSplitSetSchurFactType(pc,schurfact);CHKERRQ(ierr);

    PCFieldSplitSchurPreType  schurpre = PC_FIELDSPLIT_SCHUR_PRE_USER;

  where I'm providing the pressure mass matrix as a preconditioner for S.
When I run with

-snes_type ksponly
-ksp_type minres
-pc_type fieldsplit

 #Velocity
-fieldsplit_u_ksp_type cg
-fieldsplit_u_pc_type jacobi
-fieldsplit_u_ksp_rtol 1e-05
-fieldsplit_u_ksp_monitor

#Pressure
-fieldsplit_p_ksp_type cg
-fieldsplit_p_pc_type jacobi
-fieldsplit_p_ksp_rtol 1e-05
-fieldsplit_p_ksp_monitor

the solution does not converge (i'm testing an analytical one), but when I
use -ksp_type gmres it converges. If you guys want I can dump both monitors
outputs on a file an attach on the email.

My second question is: what options I have to set up if I want to use as
preconditionr for M the matrix

        [  A    0  ]
P =   [            ]
        [  0    Q  ]

where again Q is the pressure mass matrix, and with A and Q being solved by
CG with BJACOBI.

Thanks in advance.
Adriano.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20131214/06aaff66/attachment-0001.html>


More information about the petsc-users mailing list