<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><div class=""><br class=""></div>   -pc_type fieldsplit -pc_fieldsplit_detect_saddle_point -pc_fieldsplit_type schur<div class=""><br class=""></div><div class="">   Now there will be two additional decisions you need to make how to precondition the A00 block and the Schur complement. </div><div class=""><br class=""></div><div class="">   For the A00 block the option is </div><div class=""><br class=""></div><div class="">   -fieldsplit_0_pc_type something    where depending on your problem gamg may be a good place to start </div><div class="">   -fieldsplit_0_ksp_type preonly (likely is the default)</div><div class=""><br class=""></div><div class="">   For the Schur complement start with just using the default and see how the convergence goes.</div><div class=""><br class=""></div><div class="">   Use -ksp_view to see all the parts of the preconditioner and -ksp_monitor_true_residual to see how it is coverging.</div><div class=""><br class=""></div><div class="">   Run with -help | grep fieldsplit to see all possible options and of course consult <a href="https://petsc.org/release/docs/manualpages/PC/PCFIELDSPLIT.html" class="">https://petsc.org/release/docs/manualpages/PC/PCFIELDSPLIT.html</a></div><div class=""><br class=""></div><div class="">  Barry</div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""><div class=""><br class=""></div><div class="">   <br class=""><div><br class=""><blockquote type="cite" class=""><div class="">On Sep 27, 2022, at 11:47 PM, wangzj997 <<a href="mailto:wangzj997@foxmail.com" class="">wangzj997@foxmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><meta http-equiv="Content-Type" content="text/html; charset=GB18030" class=""><p class="MsoNormal"><span lang="EN-US" class="">D</span><font __editorwarp__="1" style="display: inline; font-size: 14px; font-family: Verdana; background-color: rgba(0, 0, 0, 0); font-weight: 400; font-style: normal;" class="">ear PETSc development team:</font></p><p class="MsoNormal"><span lang="EN-US" class="">Currently, I am learning and trying to use <a name="OLE_LINK2" class=""></a><a name="OLE_LINK1" class=""><span style="mso-bookmark:OLE_LINK2" class="">PETSc</span></a>'s
KSP to solve large-scale sparse linear systems Ax= b, where A is symmetric
positive definite and nonsingular. However, the main diagonal of A contains
many 0 items, which leads to the fact that many preconditioners cannot be used
when using MPI for multi-process solution, and the number of iterations is
large, and the convergence is slow. May I ask how to solve this problem? If it
is necessary to make the main diagonal of A all non-zero items, is there any
solution in PETSc?<o:p class=""></o:p></span></p><p class="MsoNormal"><font __editorwarp__="1" style="display: inline; font-size: 14px; font-family: Verdana; background-color: rgba(0, 0, 0, 0); font-weight: 400; font-style: normal;" class="">I would be grateful if you would reply and answer my question.</font></p><p class="MsoNormal"><font __editorwarp__="1" style="display: inline; font-size: 14px; font-family: Verdana; background-color: rgba(0, 0, 0, 0); font-weight: 400; font-style: normal;" class="">Best Regards.</font></p><p class="MsoNormal"><br class=""></p><br class=""></div></blockquote></div><br class=""></div></div></body></html>