<div dir="ltr"><div class="gmail_quote"><div dir="ltr"><div>Hi all,</div><div>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 </div>
<div> </div><div> [ A B^t ]</div>
<div>M = [ ]</div><div> [ B 0 ]</div><div><br></div><div>My first question is about the MINRES behaviour with pcfieldsplit. My options for pcfieldsplit are </div><div><br></div><div> ierr = PCFieldSplitSetType(pc,PC_COMPOSITE_SCHUR);CHKERRQ(ierr);</div>
<div> </div><div> PCFieldSplitSchurFactType schurfact = PC_FIELDSPLIT_SCHUR_FACT_DIAG;</div><div> ierr = PCFieldSplitSetSchurFactType(pc,schurfact);CHKERRQ(ierr);</div><div> </div><div> PCFieldSplitSchurPreType schurpre = PC_FIELDSPLIT_SCHUR_PRE_USER;</div>
<div><br></div><div> where I'm providing the pressure mass matrix as a preconditioner for S. When I run with</div><div><br></div><div>-snes_type ksponly</div><div>-ksp_type minres</div><div>-pc_type fieldsplit</div>
<div>
<br></div><div> #Velocity</div><div>-fieldsplit_u_ksp_type cg </div><div>-fieldsplit_u_pc_type jacobi</div><div>-fieldsplit_u_ksp_rtol 1e-05 </div><div>-fieldsplit_u_ksp_monitor </div><div><br></div><div>#Pressure</div>
<div>
-fieldsplit_p_ksp_type cg</div><div>-fieldsplit_p_pc_type jacobi</div><div>-fieldsplit_p_ksp_rtol 1e-05</div><div>-fieldsplit_p_ksp_monitor</div><div><br></div><div>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.</div>
<div><br></div><div>My second question is: what options I have to set up if I want to use as preconditionr for M the matrix</div><div><br></div><div> [ A 0 ]</div><div>P = [ ]</div><div> [ 0 Q ]</div>
<div><br></div><div>where again Q is the pressure mass matrix, and with A and Q being solved by CG with BJACOBI.</div><div><br></div><div>Thanks in advance.</div><span class="HOEnZb"><font color="#888888"><div>Adriano.</div>
</font></span></div>
</div><br></div>