<meta http-equiv="Content-Type" content="text/html; charset=utf-8"><div>Hi, Barry, </div><br><div>Thanks for your reply. Yes, I should have used fgmres. But after switching to fgmres I'm still facing the same convergence issue. </div><br><div>Seems like the reason is due to DIVERGED_PC_FAILED. But I simply used FD jacobian, and fieldsplitPC.  I am a bit lost on whether I made some mistakes somewhere in the FormFunction or I did not setup the solver correctly. </div><br><div>///////code///////</div><div>     SNESSetFunction(snes, r, FormFunctionStatic, this);</div><div>      // SNESSetJacobian(snes, J, J, FormJacobianStatic, this);</div><div>        SNESSetJacobian(snes, J, J, SNESComputeJacobianDefault, this);  </div><div> SNESMonitorSet(snes, MySNESMonitor, NULL, NULL);</div><br><div>       SNESGetKSP(snes, &ksp);</div><div>      KSPGetPC(ksp, &pc);</div><div>  PCSetType(pc, PCFIELDSPLIT);</div><div>     PCFieldSplitSetDetectSaddlePoint(pc, PETSC_TRUE);</div><div>        PCFieldSplitSetSchurPre(pc, PC_FIELDSPLIT_SCHUR_PRE_SELF, NULL);</div><div> KSPMonitorSet(ksp, MyKSPMonitor, NULL, 0);</div><div>       KSPSetTolerances(ksp, 1e-8, PETSC_DEFAULT, PETSC_DEFAULT, PETSC_DEFAULT);</div><div>        SNESSetFromOptions(snes);</div><div>//////end/////////</div><br><div>Output from SNES/KSP solver</div><div>################# step 1 #################</div><div>iter = 0, SNES Function norm 0.0430713</div><div>iteration 0 KSP Residual norm 4.307133784528e-02 </div><div>    0 KSP unpreconditioned resid norm 4.307133784528e-02 true resid norm 4.307133784528e-02 ||r(i)||/||b|| 1.000000000000e+00</div><div>iteration 1 KSP Residual norm 4.451434065870e-07 </div><div>    1 KSP unpreconditioned resid norm 4.451434065870e-07 true resid norm 4.451434065902e-07 ||r(i)||/||b|| 1.033502623460e-05</div><div>iteration 2 KSP Residual norm 1.079756105012e-12 </div><div>    2 KSP unpreconditioned resid norm 1.079756105012e-12 true resid norm 1.079754870815e-12 ||r(i)||/||b|| 2.506898844643e-11</div><div>  Linear solve converged due to CONVERGED_RTOL iterations 2</div><div>iter = 1, SNES Function norm 2.40846e-05</div><div>iteration 0 KSP Residual norm 2.408462930023e-05 </div><div>    0 KSP unpreconditioned resid norm 2.408462930023e-05 true resid norm 2.408462930023e-05 ||r(i)||/||b|| 1.000000000000e+00</div><div>iteration 1 KSP Residual norm 1.096958085415e-11 </div><div>    1 KSP unpreconditioned resid norm 1.096958085415e-11 true resid norm 1.096958085425e-11 ||r(i)||/||b|| 4.554598170270e-07</div><div>iteration 2 KSP Residual norm 5.909523288165e-16 </div><div>    2 KSP unpreconditioned resid norm 5.909523288165e-16 true resid norm 5.909519599233e-16 ||r(i)||/||b|| 2.453647729249e-11</div><div>  Linear solve converged due to CONVERGED_RTOL iterations 2</div><div>iter = 2, SNES Function norm 1.19684e-14</div><div>################# step 2 #################</div><div>iter = 0, SNES Function norm 0.00391662</div><div>iteration 0 KSP Residual norm 3.916615614134e-03 </div><div>    0 KSP unpreconditioned resid norm 3.916615614134e-03 true resid norm 3.916615614134e-03 ||r(i)||/||b|| 1.000000000000e+00</div><div>iteration 1 KSP Residual norm 4.068800385009e-08 </div><div>    1 KSP unpreconditioned resid norm 4.068800385009e-08 true resid norm 4.068800384986e-08 ||r(i)||/||b|| 1.038856192653e-05</div><div>iteration 2 KSP Residual norm 8.427513055511e-14 </div><div>    2 KSP unpreconditioned resid norm 8.427513055511e-14 true resid norm 8.427497502034e-14 ||r(i)||/||b|| 2.151729537007e-11</div><div>  Linear solve converged due to CONVERGED_RTOL iterations 2</div><div>iter = 1, SNES Function norm 1.99152e-07</div><div>iteration 0 KSP Residual norm 1.991523558528e-07 </div><div>    0 KSP unpreconditioned resid norm 1.991523558528e-07 true resid norm 1.991523558528e-07 ||r(i)||/||b|| 1.000000000000e+00</div><div>iteration 1 KSP Residual norm 1.413505562549e-13 </div><div>    1 KSP unpreconditioned resid norm 1.413505562549e-13 true resid norm 1.413505562550e-13 ||r(i)||/||b|| 7.097609046588e-07</div><div>iteration 2 KSP Residual norm 5.165934822520e-18 </div><div>    2 KSP unpreconditioned resid norm 5.165934822520e-18 true resid norm 5.165932973227e-18 ||r(i)||/||b|| 2.593960262787e-11</div><div>  Linear solve converged due to CONVERGED_RTOL iterations 2</div><div>iter = 2, SNES Function norm 1.69561e-16</div><div>################# step 3 #################</div><div>iter = 0, SNES Function norm 0.00035615</div><div>iteration 0 KSP Residual norm 3.561504844171e-04 </div><div>    0 KSP unpreconditioned resid norm 3.561504844171e-04 true resid norm 3.561504844171e-04 ||r(i)||/||b|| 1.000000000000e+00</div><div>iteration 1 KSP Residual norm 3.701591890269e-09 </div><div>    1 KSP unpreconditioned resid norm 3.701591890269e-09 true resid norm 3.701591890274e-09 ||r(i)||/||b|| 1.039333667153e-05</div><div>iteration 2 KSP Residual norm 7.832821034843e-15 </div><div>    2 KSP unpreconditioned resid norm 7.832821034843e-15 true resid norm 7.832856926692e-15 ||r(i)||/||b|| 2.199311041093e-11</div><div>  Linear solve converged due to CONVERGED_RTOL iterations 2</div><div>iter = 1, SNES Function norm 1.64671e-09</div><div>iteration 0 KSP Residual norm 1.646709543241e-09 </div><div>    0 KSP unpreconditioned resid norm 1.646709543241e-09 true resid norm 1.646709543241e-09 ||r(i)||/||b|| 1.000000000000e+00</div><div>iteration 1 KSP Residual norm 1.043230469512e-15 </div><div>    1 KSP unpreconditioned resid norm 1.043230469512e-15 true resid norm 1.043230469512e-15 ||r(i)||/||b|| 6.335242749968e-07</div><div>iteration 1 KSP Residual norm 0.000000000000e+00 </div><div>    1 KSP unpreconditioned resid norm 0.000000000000e+00 true resid norm           -nan ||r(i)||/||b||           -nan</div><div>  Linear solve did not converge due to DIVERGED_PC_FAILED iterations 1</div><div>                 PC_FAILED due to SUBPC_ERROR </div><br><br><div>More information from -ksp_error_if_not_converged -info</div><br><div>[0] KSPConvergedDefault(): Linear solver has converged. Residual norm 3.303168180659e-07 is less than relative tolerance 1.000000000000e-05 times initial right hand side norm 7.795816360977e-02 at iteration 12</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] KSPConvergedDefault(): Linear solver has converged. Residual norm 2.227610512466e+00 is less than relative tolerance 1.000000000000e-05 times initial right hand side norm 5.453050347652e+05 at iteration 12</div><div>[0] PCSetUp(): Leaving PC with identical preconditioner since operator is unchanged</div><div>[0] KSPConvergedDefault(): Linear solver is diverging. Initial right hand size norm 9.501675075823e-01, current residual norm 4.894880836662e+04 at iteration 210</div><div>[0]PETSC ERROR: --------------------- Error Message --------------------------------------------------------------</div><div>[0]PETSC ERROR:   </div><div>[0]PETSC ERROR: KSPSolve has not converged, reason DIVERGED_DTOL</div><div>[0]PETSC ERROR: See https://www.mcs.anl.gov/petsc/documentation/faq.html for trouble shooting.</div><div>[0]PETSC ERROR: Petsc Release Version 3.12.5, Mar, 29, 2020 </div><div>[0]PETSC ERROR: ./stokeTutorial on a arch-linux2-c-debug named a2aa8f1c96aa by Unknown Fri Oct  9 13:43:28 2020</div><div>[0]PETSC ERROR: Configure options --with-cc=gcc --with-cxx=g++ --with-fc=gfortran --download-mpich --download-fblaslapack --with-cuda</div><div>[0]PETSC ERROR: #1 KSPSolve() line 832 in /usr/local/petsc/petsc-3.12.5/src/ksp/ksp/interface/itfunc.c</div><div>[0]PETSC ERROR: #2 PCApply_FieldSplit_Schur() line 1189 in /usr/local/petsc/petsc-3.12.5/src/ksp/pc/impls/fieldsplit/fieldsplit.c</div><div>[0]PETSC ERROR: #3 PCApply() line 444 in /usr/local/petsc/petsc-3.12.5/src/ksp/pc/interface/precon.c</div><div>[0]PETSC ERROR: #4 KSP_PCApply() line 281 in /usr/local/petsc/petsc-3.12.5/include/petsc/private/kspimpl.h</div><div>[0]PETSC ERROR: #5 KSPFGMRESCycle() line 166 in /usr/local/petsc/petsc-3.12.5/src/ksp/ksp/impls/gmres/fgmres/fgmres.c</div><div>[0]PETSC ERROR: #6 KSPSolve_FGMRES() line 291 in /usr/local/petsc/petsc-3.12.5/src/ksp/ksp/impls/gmres/fgmres/fgmres.c</div><div>[0]PETSC ERROR: #7 KSPSolve() line 760 in /usr/local/petsc/petsc-3.12.5/src/ksp/ksp/interface/itfunc.c</div><div>[0]PETSC ERROR: #8 SNESSolve_NEWTONLS() line 225 in /usr/local/petsc/petsc-3.12.5/src/snes/impls/ls/ls.c</div><div>[0]PETSC ERROR: #9 SNESSolve() line 4482 in /usr/local/petsc/petsc-3.12.5/src/snes/interface/snes.c</div><div>[0] PetscCommDuplicate(): Using internal PETSc communicator 1140850688 -2080374783</div><div>SNES Object: 1 MPI processes</div><div>  type: newtonls</div><div>  maximum iterations=50, maximum function evaluations=10000</div><div>  tolerances: relative=1e-08, absolute=1e-50, solution=1e-08</div><div>  total number of linear solver iterations=2</div><div>  total number of function evaluations=1322</div><div>  norm schedule ALWAYS</div><div>  Jacobian is built using finite differences one column at a time</div><div>  SNESLineSearch Object: 1 MPI processes</div><div>    type: bt</div><div>      interpolation: cubic</div><div>      alpha=1.000000e-04</div><div>    maxstep=1.000000e+08, minlambda=1.000000e-12</div><div>    tolerances: relative=1.000000e-08, absolute=1.000000e-15, lambda=1.000000e-08</div><div>    maximum iterations=40</div><div>  KSP Object: 1 MPI processes</div><div>    type: fgmres</div><div>      restart=30, using Classical (unmodified) Gram-Schmidt Orthogonalization with no iterative refinement</div><div>      happy breakdown tolerance 1e-30</div><div>    maximum iterations=10000, initial guess is zero</div><div>    tolerances:  relative=1e-08, absolute=1e-50, divergence=10000.</div><div>    right preconditioning</div><div>    using UNPRECONDITIONED norm type for convergence test</div><div>  PC Object: 1 MPI processes</div><div>    type: fieldsplit</div><div>      FieldSplit with Schur preconditioner, blocksize = 1, factorization FULL</div><div>      Preconditioner for the Schur complement formed from S itself</div><div>      Split info:</div><div>      Split number 0 Defined by IS</div><div>      Split number 1 Defined by IS</div><div>      KSP solver for A00 block</div><div>        KSP Object: (fieldsplit_0_) 1 MPI processes</div><div>          type: gmres</div><div>            restart=30, using Classical (unmodified) Gram-Schmidt Orthogonalization with no iterative refinement</div><div>            happy breakdown tolerance 1e-30</div><div>          maximum iterations=10000, initial guess is zero</div><div>          tolerances:  relative=1e-05, absolute=1e-50, divergence=10000.</div><div>          left preconditioning</div><div>          using PRECONDITIONED norm type for convergence test</div><div>        PC Object: (fieldsplit_0_) 1 MPI processes</div><div>          type: ilu</div><div>            out-of-place factorization</div><div>            0 levels of fill</div><div>            tolerance for zero pivot 2.22045e-14</div><div>            matrix ordering: natural</div><div>            factor fill ratio given 1., needed 1.</div><div>              Factored matrix follows:</div><div>                Mat Object: 1 MPI processes</div><div>                  type: seqaij</div><div>                  rows=512, cols=512</div><div>                  package used to perform factorization: petsc</div><div>                  total: nonzeros=9213, allocated nonzeros=9213</div><div>                  total number of mallocs used during MatSetValues calls=0</div><div>                    not using I-node routines</div><div>          linear system matrix = precond matrix:</div><div>          Mat Object: 1 MPI processes</div><div>            type: seqaij</div><div>            rows=512, cols=512</div><div>            total: nonzeros=9213, allocated nonzeros=9213</div><div>            total number of mallocs used during MatSetValues calls=0</div><div>              not using I-node routines</div><div>      KSP solver for S = A11 - A10 inv(A00) A01 </div><div>        KSP Object: (fieldsplit_1_) 1 MPI processes</div><div>          type: gmres</div><div>            restart=30, using Classical (unmodified) Gram-Schmidt Orthogonalization with no iterative refinement</div><div>            happy breakdown tolerance 1e-30</div><div>          maximum iterations=10000, initial guess is zero</div><div>          tolerances:  relative=1e-05, absolute=1e-50, divergence=10000.</div><div>          left preconditioning</div><div>          using PRECONDITIONED norm type for convergence test</div><div>        PC Object: (fieldsplit_1_) 1 MPI processes</div><div>          type: none</div><div>          linear system matrix = precond matrix:</div><div>          Mat Object: (fieldsplit_1_) 1 MPI processes</div><div>            type: schurcomplement</div><div>            rows=147, cols=147</div><div>              Schur complement A11 - A10 inv(A00) A01</div><div>              A11</div><div>                Mat Object: 1 MPI processes</div><div>                  type: seqaij</div><div>                  rows=147, cols=147</div><div>                  total: nonzeros=147, allocated nonzeros=147</div><div>                  total number of mallocs used during MatSetValues calls=0</div><div>                    not using I-node routines</div><div>              A10</div><div>                Mat Object: 1 MPI processes</div><div>                  type: seqaij</div><div>                  rows=147, cols=512</div><div>                  total: nonzeros=2560, allocated nonzeros=2560</div><div>                  total number of mallocs used during MatSetValues calls=0</div><div>                    using I-node routines: found 87 nodes, limit used is 5</div><div>              KSP of A00</div><div>                KSP Object: (fieldsplit_0_) 1 MPI processes</div><div>                  type: gmres</div><div>                    restart=30, using Classical (unmodified) Gram-Schmidt Orthogonalization with no iterative refinement</div><div>                    happy breakdown tolerance 1e-30</div><div>                  maximum iterations=10000, initial guess is zero</div><div>                  tolerances:  relative=1e-05, absolute=1e-50, divergence=10000.</div><div>                  left preconditioning</div><div>                  using PRECONDITIONED norm type for convergence test</div><div>                PC Object: (fieldsplit_0_) 1 MPI processes</div><div>                  type: ilu</div><div>                    out-of-place factorization</div><div>                    0 levels of fill</div><div>                    tolerance for zero pivot 2.22045e-14</div><div>                    matrix ordering: natural</div><div>                    factor fill ratio given 1., needed 1.</div><div>                      Factored matrix follows:</div><div>                        Mat Object: 1 MPI processes</div><div>                          type: seqaij</div><div>                          rows=512, cols=512</div><div>                          package used to perform factorization: petsc</div><div>                          total: nonzeros=9213, allocated nonzeros=9213</div><div>                          total number of mallocs used during MatSetValues calls=0</div><div>                            not using I-node routines</div><div>                  linear system matrix = precond matrix:</div><div>                  Mat Object: 1 MPI processes</div><div>                    type: seqaij</div><div>                    rows=512, cols=512</div><div>                    total: nonzeros=9213, allocated nonzeros=9213</div><div>                    total number of mallocs used during MatSetValues calls=0</div><div>                      not using I-node routines</div><div>              A01</div><div>                Mat Object: 1 MPI processes</div><div>                  type: seqaij</div><div>                  rows=512, cols=147</div><div>                  total: nonzeros=2562, allocated nonzeros=2562</div><div>                  total number of mallocs used during MatSetValues calls=0</div><div>                    not using I-node routines</div><div>    linear system matrix = precond matrix:</div><div>    Mat Object: 1 MPI processes</div><div>      type: seqaij</div><div>      rows=659, cols=659</div><div>      total: nonzeros=14482, allocated nonzeros=27543</div><div>      total number of mallocs used during MatSetValues calls=1309</div><div>        not using I-node routines</div><br><br><br><div class="gmail_quote_attribution">On Oct 9 2020, at 2:17 am, Barry Smith <bsmith@petsc.dev> wrote:</div><blockquote><div><br></div><div>  When you get a huge change at restart this means something is seriously wrong with either the linear operator or the linear preconditioner. </div><div><br></div><div>  How are you doing the matrix vector product?   Note both the operator and preconditioner must be linear operators for GMRES.</div><div><br></div><div>  FGMRES allows the preconditioner to be nonlinear. You can try</div><div><br></div><div>  -ksp_type fgmres -ksp_monitor_true_residual</div><div><br></div><div>   Barry</div><div><br><div><br><blockquote><div>On Oct 8, 2020, at 2:43 AM, Yang Juntao <<a href="https://link.getmailspring.com/link/AA5B8AA2-FFAB-403A-A231-10CE902ACB44@getmailspring.com/0?redirect=mailto%3AY.Juntao%40hotmail.com&recipient=cGV0c2MtdXNlcnNAbWNzLmFubC5nb3Y%3D" title="mailto:Y.Juntao@hotmail.com">Y.Juntao@hotmail.com</a>> wrote:</div><br><div><div class="WordSection1"><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">Hello, </font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif"> </font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">I’m working on a nonlinear solver with SNES with handcoded jacobian and function. Each linear solver is solved with KSP solver.</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">But sometimes I got issues with ksp solver convergence. I tried with finite difference approximated jacobian, but get the same error.</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif"> </font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">From the iterations, the convergence seems ok at the beginning but suddenly diverged in the last iteration.</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">Hope anyone with experience on ksp solvers could direct me to a direction I can debug the problem.</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif"> </font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iter = 0, SNES Function norm 2.94934e-06</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 0 KSP Residual norm 1.094600281831e-06</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 1 KSP Residual norm 1.264284474186e-08</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 2 KSP Residual norm 6.593269221816e-09</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 3 KSP Residual norm 1.689570779457e-09</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 4 KSP Residual norm 1.040661505932e-09</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 5 KSP Residual norm 5.422761817348e-10</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 6 KSP Residual norm 2.492867371369e-10</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 7 KSP Residual norm 8.261522376775e-11</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 8 KSP Residual norm 4.246401544245e-11</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 9 KSP Residual norm 2.514366787388e-11</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 10 KSP Residual norm 1.982940267051e-11</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 11 KSP Residual norm 1.586470414676e-11</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 12 KSP Residual norm 9.866392216207e-12</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 13 KSP Residual norm 4.951342176999e-12</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 14 KSP Residual norm 2.418292660318e-12</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 15 KSP Residual norm 1.747418526086e-12</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 16 KSP Residual norm 1.094150535809e-12</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 17 KSP Residual norm 4.464287492066e-13</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 18 KSP Residual norm 3.530090494462e-13</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 19 KSP Residual norm 2.825698091454e-13</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 20 KSP Residual norm 1.950568425807e-13</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 21 KSP Residual norm 1.227898091813e-13</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 22 KSP Residual norm 5.411106347374e-14</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 23 KSP Residual norm 4.511115848564e-14</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 24 KSP Residual norm 4.063546606691e-14</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 25 KSP Residual norm 3.677694771949e-14</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 26 KSP Residual norm 3.459244943466e-14</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 27 KSP Residual norm 3.263954971093e-14</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 28 KSP Residual norm 3.087344619079e-14</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 29 KSP Residual norm 2.809426925625e-14</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">iteration 30 KSP Residual norm 4.366149884754e-01</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">  Linear solve did not converge due to DIVERGED_DTOL iterations 30</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif"><strong> </strong></font></font></font></font></div><div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif"> </font></font></font></font></div></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">SNES Object: 1 MPI processes</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">  type: newtonls</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">  SNES has not been set up so information may be incomplete</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">  maximum iterations=50, maximum function evaluations=10000</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">  tolerances: relative=1e-08, absolute=1e-50, solution=1e-08</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">  total number of linear solver iterations=0</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">  total number of function evaluations=0</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">  norm schedule ALWAYS</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">  SNESLineSearch Object: 1 MPI processes</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">    type: bt</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">      interpolation: cubic</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">      alpha=1.000000e-04</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">    maxstep=1.000000e+08, minlambda=1.000000e-12</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">    tolerances: relative=1.000000e-08, absolute=1.000000e-15, lambda=1.000000e-08</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">    maximum iterations=40</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">  KSP Object: 1 MPI processes</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">    type: gmres</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">      restart=30, using Classical (unmodified) Gram-Schmidt Orthogonalization with no iterative refinement</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">      happy breakdown tolerance 1e-30</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">    maximum iterations=10000, initial guess is zero</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">    tolerances:  relative=1e-08, absolute=1e-50, divergence=10000.</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">    left preconditioning</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">    using DEFAULT norm type for convergence test</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">  PC Object: 1 MPI processes</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">    type: fieldsplit</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">    PC has not been set up so information may be incomplete</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">      FieldSplit with Schur preconditioner, factorization FULL</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">      Preconditioner for the Schur complement formed from S itself</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">      Split info:</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">      KSP solver for A00 block</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">          not yet available</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">      KSP solver for S = A11 - A10 inv(A00) A01</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">          not yet available</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">    linear system matrix = precond matrix:</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">    Mat Object: 1 MPI processes</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">      type: seqaij</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">      rows=659, cols=659</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">      total: nonzeros=659, allocated nonzeros=7908</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">      total number of mallocs used during MatSetValues calls=0</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">        not using I-node routines</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif"> </font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">Regards</font></font></font></font></div><div><font style="font-size:18px"><font style="font-family:Helvetica"><font style="font-size:11pt"><font style="font-family:Calibri, sans-serif">Juntao</font></font></font></font></div></div></div></blockquote></div></div></blockquote><img class="mailspring-open" alt="Sent from Mailspring" width="0" height="0" style="border:0; width:0; height:0;" src="https://link.getmailspring.com/open/AA5B8AA2-FFAB-403A-A231-10CE902ACB44@getmailspring.com?me=05842e25&recipient=cGV0c2MtdXNlcnNAbWNzLmFubC5nb3Y%3D">