<div dir="ltr">Thanks Barry<div><br></div><div>Running with that option gives the output for the first solve:</div><div><br></div><div><div>BoomerAMG SETUP PARAMETERS:</div><div><br></div><div> Max levels = 25</div><div> Num levels = 7</div><div><br></div><div> Strength Threshold = 0.100000</div><div> Interpolation Truncation Factor = 0.000000</div><div> Maximum Row Sum Threshold for Dependency Weakening = 0.900000</div><div><br></div><div> Coarsening Type = PMIS</div><div> measures are determined locally</div><div><br></div><div><br></div><div> No global partition option chosen.</div><div><br></div><div> Interpolation = modified classical interpolation</div><div><br></div><div>Operator Matrix Information:</div><div><br></div><div>            nonzero         entries per row        row sums</div><div>lev   rows  entries  sparse  min  max   avg       min         max</div><div>==============================<wbr>==============================<wbr>=======</div><div> 0 1056957 109424691  0.000    30 1617  103.5  -2.075e+11   3.561e+11</div><div> 1  185483 33504881  0.001    17  713  180.6  -3.493e+11   1.323e+13</div><div> 2   26295  4691629  0.007    17  513  178.4  -3.367e+10   6.960e+12</div><div> 3    3438   432138  0.037    24  295  125.7  -2.194e+10   2.154e+11</div><div> 4     476    34182  0.151     8  192  71.8  -6.435e+09   2.306e+11</div><div> 5      84     2410  0.342     8   70  28.7  -1.052e+07   6.640e+10</div><div> 6      18      252  0.778    10   18  14.0   9.038e+06   8.828e+10</div><div><br></div><div><br></div><div>Interpolation Matrix Information:</div><div>                 entries/row    min     max         row sums</div><div>lev  rows cols    min max     weight   weight     min       max</div><div>==============================<wbr>==============================<wbr>=====</div><div> 0 1056957 x 185483   0  18  -1.143e+02 7.741e+01 -1.143e+02 7.741e+01</div><div> 1 185483 x 26295   0  15  -1.053e+01 2.918e+00 -1.053e+01 2.918e+00</div><div> 2 26295 x 3438    0   9   1.308e-02 1.036e+00 0.000e+00 1.058e+00</div><div> 3  3438 x 476     0   7   1.782e-02 1.015e+00 0.000e+00 1.015e+00</div><div> 4   476 x 84      0   5   1.378e-02 1.000e+00 0.000e+00 1.000e+00</div><div> 5    84 x 18      0   3   1.330e-02 1.000e+00 0.000e+00 1.000e+00</div><div><br></div><div><br></div><div>     Complexity:    grid = 1.204165</div><div>                operator = 1.353353</div><div>                memory = 1.381360</div><div><br></div><div>BoomerAMG SOLVER PARAMETERS:</div><div><br></div><div>  Maximum number of cycles:         1</div><div>  Stopping Tolerance:               0.000000e+00</div><div>  Cycle type (1 = V, 2 = W, etc.):  1</div><div><br></div><div>  Relaxation Parameters:</div><div>   Visiting Grid:                     down   up  coarse</div><div>            Number of sweeps:            1    1     1</div><div>   Type 0=Jac, 3=hGS, 6=hSGS, 9=GE:      6    6     6</div><div>   Point types, partial sweeps (1=C, -1=F):</div><div>                  Pre-CG relaxation (down):   1  -1</div><div>                   Post-CG relaxation (up):  -1   1</div><div>                             Coarsest grid:   0</div><div><br></div><div>Output flag (print_level): 3</div><div>                                            relative</div><div>               residual        factor       residual</div><div>               --------        ------       --------</div><div>    Initial    9.006493e+06                 1.000000e+00</div><div>    Cycle  1   7.994266e+06    <a href="tel:08876%2011" value="+49887611" target="_blank">0.887611</a>     8.876114e-01</div><div><br></div><div><br></div><div> Average Convergence Factor = <a href="tel:08876%2011" value="+49887611" target="_blank">0.887611</a></div><div><br></div><div>     Complexity:    grid = 1.204165</div><div>                operator = 1.353353</div><div>                   cycle = 2.706703</div><div><br></div><div>KSP Object:(fieldsplit_u_) 8 MPI processes</div><div>  type: preonly</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 NONE norm type for convergence test</div><div>PC Object:(fieldsplit_u_) 8 MPI processes</div><div>  type: hypre</div><div>    HYPRE BoomerAMG preconditioning</div><div>    HYPRE BoomerAMG: Cycle type V</div><div>    HYPRE BoomerAMG: Maximum number of levels 25</div><div>    HYPRE BoomerAMG: Maximum number of iterations PER hypre call 1</div><div>    HYPRE BoomerAMG: Convergence tolerance PER hypre call 0</div><div>    HYPRE BoomerAMG: Threshold for strong coupling 0.1</div><div>    HYPRE BoomerAMG: Interpolation truncation factor 0</div><div>    HYPRE BoomerAMG: Interpolation: max elements per row 0</div><div>    HYPRE BoomerAMG: Number of levels of aggressive coarsening 0</div><div>    HYPRE BoomerAMG: Number of paths for aggressive coarsening 1</div><div>    HYPRE BoomerAMG: Maximum row sums 0.9</div><div>    HYPRE BoomerAMG: Sweeps down         1</div><div>    HYPRE BoomerAMG: Sweeps up           1</div><div>    HYPRE BoomerAMG: Sweeps on coarse    1</div><div>    HYPRE BoomerAMG: Relax down          symmetric-SOR/Jacobi</div><div>    HYPRE BoomerAMG: Relax up            symmetric-SOR/Jacobi</div><div>    HYPRE BoomerAMG: Relax on coarse     Gaussian-elimination</div><div>    HYPRE BoomerAMG: Relax weight  (all)      1</div><div>    HYPRE BoomerAMG: Outer relax weight (all) 1</div><div>    HYPRE BoomerAMG: Using CF-relaxation</div><div>    HYPRE BoomerAMG: Measure type        local</div><div>    HYPRE BoomerAMG: Coarsen type        PMIS</div><div>    HYPRE BoomerAMG: Interpolation type  classical</div><div>  linear system matrix = precond matrix:</div><div>  Mat Object:  (fieldsplit_u_)   8 MPI processes</div><div>    type: mpiaij</div><div>    rows=1056957, cols=1056957, bs=3</div><div>    total: nonzeros=1.09425e+08, allocated nonzeros=1.09425e+08</div><div>    total number of mallocs used during MatSetValues calls =0</div><div>      using I-node (on process 0) routines: found 43537 nodes, limit used is 5</div><div>  0 KSP preconditioned resid norm 4.076033642262e+00 true resid norm 9.006493083033e+06 ||r(i)||/||b|| 1.000000000000e+00</div><div><br></div><div><br></div></div><div class="gmail_extra"><br clear="all"><div><div class="m_-3590034925387443022gmail_signature" data-smartmail="gmail_signature"><div dir="ltr">Giang</div></div></div>
<br><div class="gmail_quote">On Sat, Apr 29, 2017 at 8:06 PM, Barry Smith <span dir="ltr"><<a href="mailto:bsmith@mcs.anl.gov" target="_blank">bsmith@mcs.anl.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span><br>
> On Apr 29, 2017, at 8:34 AM, Jed Brown <<a href="mailto:jed@jedbrown.org" target="_blank">jed@jedbrown.org</a>> wrote:<br>
><br>
> Hoang Giang Bui <<a href="mailto:hgbk2008@gmail.com" target="_blank">hgbk2008@gmail.com</a>> writes:<br>
><br>
>> Hi Barry<br>
>><br>
>> The first block is from a standard solid mechanics discretization based on<br>
>> balance of momentum equation. There is some material involved but in<br>
>> principal it's well-posed elasticity equation with positive definite<br>
>> tangent operator. The "gluing business" uses the mortar method to keep the<br>
>> continuity of displacement. Instead of using Lagrange multiplier to treat<br>
>> the constraint I used penalty method to penalize the energy. The<br>
>> discretization form of mortar is quite simple<br>
>><br>
>> \int_{\Gamma_1} { rho * (\delta u_1 - \delta u_2) * (u_1 - u_2) dA }<br>
>><br>
>> rho is penalty parameter. In the simulation I initially set it low (~E) to<br>
>> preserve the conditioning of the system.<br>
><br>
> There are two things that can go wrong here with AMG:<br>
><br>
> * The penalty term can mess up the strength of connection heuristics<br>
>  such that you get poor choice of C-points (classical AMG like<br>
>  BoomerAMG) or poor choice of aggregates (smoothed aggregation).<br>
><br>
> * The penalty term can prevent Jacobi smoothing from being effective; in<br>
>  this case, it can lead to poor coarse basis functions (higher energy<br>
>  than they should be) and poor smoothing in an MG cycle.  You can fix<br>
>  the poor smoothing in the MG cycle by using a stronger smoother, like<br>
>  ASM with some overlap.<br>
><br>
> I'm generally not a fan of penalty methods due to the irritating<br>
> tradeoffs and often poor solver performance.<br>
<br>
</span>   So, let's first see what hypre BoomerAMG is doing with the system. Run for just one BoomerAMG solve with the additional options<br>
<br>
-fieldsplit_u_ksp_view -fieldsplit_u_pc_hypre_boomera<wbr>mg_print_statistics<br>
<br>
this should print a good amount of information of what BoomerAMG has decided to do based on the input matrix.<br>
<br>
I'm bringing the hypre team into the conversation since they obviously know far more about BoomerAMG tuning options that may help your case.<br>
<span class="m_-3590034925387443022HOEnZb"><font color="#888888"><br>
   Barry<br>
</font></span><div class="m_-3590034925387443022HOEnZb"><div class="m_-3590034925387443022h5"><br>
<br>
<br>
><br>
>> In the figure below, the colorful blocks are u_1 and the base is u_2. Both<br>
>> u_1 and u_2 use isoparametric quadratic approximation.<br>
>><br>
>> ​<br>
>> Snapshot.png<br>
>> <<a href="https://drive.google.com/file/d/0Bw8Hmu0-YGQXc2hKQ1BhQ1I4OEU/view?usp=drive_web" rel="noreferrer" target="_blank">https://drive.google.com/file<wbr>/d/0Bw8Hmu0-YGQXc2hKQ1BhQ1I4OE<wbr>U/view?usp=drive_web</a>><br>
>> ​​​<br>
>><br>
>> Giang<br>
>><br>
>> On Fri, Apr 28, 2017 at 6:21 PM, Barry Smith <<a href="mailto:bsmith@mcs.anl.gov" target="_blank">bsmith@mcs.anl.gov</a>> wrote:<br>
>><br>
>>><br>
>>>  Ok, so boomerAMG algebraic multigrid is not good for the first block.<br>
>>> You mentioned the first block has two things glued together? AMG is<br>
>>> fantastic for certain problems but doesn't work for everything.<br>
>>><br>
>>>   Tell us more about the first block, what PDE it comes from, what<br>
>>> discretization, and what the "gluing business" is and maybe we'll have<br>
>>> suggestions for how to precondition it.<br>
>>><br>
>>>   Barry<br>
>>><br>
>>>> On Apr 28, 2017, at 3:56 AM, Hoang Giang Bui <<a href="mailto:hgbk2008@gmail.com" target="_blank">hgbk2008@gmail.com</a>> wrote:<br>
>>>><br>
>>>> It's in fact quite good<br>
>>>><br>
>>>>    Residual norms for fieldsplit_u_ solve.<br>
>>>>    0 KSP Residual norm 4.014715925568e+00<br>
>>>>    1 KSP Residual norm 2.160497019264e-10<br>
>>>>    Residual norms for fieldsplit_wp_ solve.<br>
>>>>    0 KSP Residual norm 0.000000000000e+00<br>
>>>>  0 KSP preconditioned resid norm 4.014715925568e+00 true resid norm<br>
>>> 9.006493082896e+06 ||r(i)||/||b|| 1.000000000000e+00<br>
>>>>    Residual norms for fieldsplit_u_ solve.<br>
>>>>    0 KSP Residual norm 9.999999999416e-01<br>
>>>>    1 KSP Residual norm 7.118380416383e-11<br>
>>>>    Residual norms for fieldsplit_wp_ solve.<br>
>>>>    0 KSP Residual norm 0.000000000000e+00<br>
>>>>  1 KSP preconditioned resid norm 1.701150951035e-10 true resid norm<br>
>>> 5.494262251846e-04 ||r(i)||/||b|| 6.100334726599e-11<br>
>>>> Linear solve converged due to CONVERGED_ATOL iterations 1<br>
>>>><br>
>>>> Giang<br>
>>>><br>
>>>> On Thu, Apr 27, 2017 at 5:25 PM, Barry Smith <<a href="mailto:bsmith@mcs.anl.gov" target="_blank">bsmith@mcs.anl.gov</a>> wrote:<br>
>>>><br>
>>>>  Run again using LU on both blocks to see what happens.<br>
>>>><br>
>>>><br>
>>>>> On Apr 27, 2017, at 2:14 AM, Hoang Giang Bui <<a href="mailto:hgbk2008@gmail.com" target="_blank">hgbk2008@gmail.com</a>><br>
>>> wrote:<br>
>>>>><br>
>>>>> I have changed the way to tie the nonconforming mesh. It seems the<br>
>>> matrix now is better<br>
>>>>><br>
>>>>> with -pc_type lu  the output is<br>
>>>>>  0 KSP preconditioned resid norm 3.308678584240e-01 true resid norm<br>
>>> 9.006493082896e+06 ||r(i)||/||b|| 1.000000000000e+00<br>
>>>>>  1 KSP preconditioned resid norm 2.004313395301e-12 true resid norm<br>
>>> 2.549872332830e-05 ||r(i)||/||b|| 2.831148938173e-12<br>
>>>>> Linear solve converged due to CONVERGED_ATOL iterations 1<br>
>>>>><br>
>>>>><br>
>>>>> with -pc_type fieldsplit  -fieldsplit_u_pc_type hypre<br>
>>> -fieldsplit_wp_pc_type lu    the convergence is slow<br>
>>>>>  0 KSP preconditioned resid norm 1.116302362553e-01 true resid norm<br>
>>> 9.006493083520e+06 ||r(i)||/||b|| 1.000000000000e+00<br>
>>>>>  1 KSP preconditioned resid norm 2.582134825666e-02 true resid norm<br>
>>> 9.268347719866e+06 ||r(i)||/||b|| 1.029073984060e+00<br>
>>>>> ...<br>
>>>>> 824 KSP preconditioned resid norm 1.018542387738e-09 true resid norm<br>
>>> 2.906608839310e+02 ||r(i)||/||b|| 3.227237074804e-05<br>
>>>>> 825 KSP preconditioned resid norm 9.743727947637e-10 true resid norm<br>
>>> 2.820369993061e+02 ||r(i)||/||b|| 3.131485215062e-05<br>
>>>>> Linear solve converged due to CONVERGED_ATOL iterations 825<br>
>>>>><br>
>>>>> checking with additional  -fieldsplit_u_ksp_type richardson<br>
>>> -fieldsplit_u_ksp_monitor -fieldsplit_u_ksp_max_it 1<br>
>>> -fieldsplit_wp_ksp_type richardson -fieldsplit_wp_ksp_monitor<br>
>>> -fieldsplit_wp_ksp_max_it 1  gives<br>
>>>>><br>
>>>>>  0 KSP preconditioned resid norm 1.116302362553e-01 true resid norm<br>
>>> 9.006493083520e+06 ||r(i)||/||b|| 1.000000000000e+00<br>
>>>>>    Residual norms for fieldsplit_u_ solve.<br>
>>>>>    0 KSP Residual norm 5.803507549280e-01<br>
>>>>>    1 KSP Residual norm 2.069538175950e-01<br>
>>>>>    Residual norms for fieldsplit_wp_ solve.<br>
>>>>>    0 KSP Residual norm 0.000000000000e+00<br>
>>>>>  1 KSP preconditioned resid norm 2.582134825666e-02 true resid norm<br>
>>> 9.268347719866e+06 ||r(i)||/||b|| 1.029073984060e+00<br>
>>>>>    Residual norms for fieldsplit_u_ solve.<br>
>>>>>    0 KSP Residual norm 7.831796195225e-01<br>
>>>>>    1 KSP Residual norm 1.734608520110e-01<br>
>>>>>    Residual norms for fieldsplit_wp_ solve.<br>
>>>>>    0 KSP Residual norm 0.000000000000e+00<br>
>>>>> ....<br>
>>>>> 823 KSP preconditioned resid norm 1.065070135605e-09 true resid norm<br>
>>> 3.081881356833e+02 ||r(i)||/||b|| 3.421843916665e-05<br>
>>>>>    Residual norms for fieldsplit_u_ solve.<br>
>>>>>    0 KSP Residual norm 6.113806394327e-01<br>
>>>>>    1 KSP Residual norm 1.535465290944e-01<br>
>>>>>    Residual norms for fieldsplit_wp_ solve.<br>
>>>>>    0 KSP Residual norm 0.000000000000e+00<br>
>>>>> 824 KSP preconditioned resid norm 1.018542387746e-09 true resid norm<br>
>>> 2.906608839353e+02 ||r(i)||/||b|| 3.227237074851e-05<br>
>>>>>    Residual norms for fieldsplit_u_ solve.<br>
>>>>>    0 KSP Residual norm 6.123437055586e-01<br>
>>>>>    1 KSP Residual norm 1.524661826133e-01<br>
>>>>>    Residual norms for fieldsplit_wp_ solve.<br>
>>>>>    0 KSP Residual norm 0.000000000000e+00<br>
>>>>> 825 KSP preconditioned resid norm 9.743727947718e-10 true resid norm<br>
>>> 2.820369990571e+02 ||r(i)||/||b|| 3.131485212298e-05<br>
>>>>> Linear solve converged due to CONVERGED_ATOL iterations 825<br>
>>>>><br>
>>>>><br>
>>>>> The residual for wp block is zero since in this first step the rhs is<br>
>>> zero. As can see in the output, the multigrid does not perform well to<br>
>>> reduce the residual in the sub-solve. Is my observation right? what can be<br>
>>> done to improve this?<br>
>>>>><br>
>>>>><br>
>>>>> Giang<br>
>>>>><br>
>>>>> On Tue, Apr 25, 2017 at 12:17 AM, Barry Smith <<a href="mailto:bsmith@mcs.anl.gov" target="_blank">bsmith@mcs.anl.gov</a>><br>
>>> wrote:<br>
>>>>><br>
>>>>>   This can happen in the matrix is singular or nearly singular or if<br>
>>> the factorization generates small pivots, which can occur for even<br>
>>> nonsingular problems if the matrix is poorly scaled or just plain nasty.<br>
>>>>><br>
>>>>><br>
>>>>>> On Apr 24, 2017, at 5:10 PM, Hoang Giang Bui <<a href="mailto:hgbk2008@gmail.com" target="_blank">hgbk2008@gmail.com</a>><br>
>>> wrote:<br>
>>>>>><br>
>>>>>> It took a while, here I send you the output<br>
>>>>>><br>
>>>>>>  0 KSP preconditioned resid norm 3.129073545457e+05 true resid norm<br>
>>> 9.015150492169e+06 ||r(i)||/||b|| 1.000000000000e+00<br>
>>>>>>  1 KSP preconditioned resid norm 7.442444222843e-01 true resid norm<br>
>>> 1.003356247696e+02 ||r(i)||/||b|| 1.112966720375e-05<br>
>>>>>>  2 KSP preconditioned resid norm 3.267453132529e-07 true resid norm<br>
>>> 3.216722968300e+01 ||r(i)||/||b|| 3.568130084011e-06<br>
>>>>>>  3 KSP preconditioned resid norm 1.155046883816e-11 true resid norm<br>
>>> 3.234460376820e+01 ||r(i)||/||b|| 3.587805194854e-06<br>
>>>>>> Linear solve converged due to CONVERGED_ATOL iterations 3<br>
>>>>>> KSP Object: 4 MPI processes<br>
>>>>>>  type: gmres<br>
>>>>>>    GMRES: restart=1000, using Modified Gram-Schmidt<br>
>>> Orthogonalization<br>
>>>>>>    GMRES: happy breakdown tolerance 1e-30<br>
>>>>>>  maximum iterations=1000, initial guess is zero<br>
>>>>>>  tolerances:  relative=1e-20, absolute=1e-09, divergence=10000<br>
>>>>>>  left preconditioning<br>
>>>>>>  using PRECONDITIONED norm type for convergence test<br>
>>>>>> PC Object: 4 MPI processes<br>
>>>>>>  type: lu<br>
>>>>>>    LU: out-of-place factorization<br>
>>>>>>    tolerance for zero pivot 2.22045e-14<br>
>>>>>>    matrix ordering: natural<br>
>>>>>>    factor fill ratio given 0, needed 0<br>
>>>>>>      Factored matrix follows:<br>
>>>>>>        Mat Object:         4 MPI processes<br>
>>>>>>          type: mpiaij<br>
>>>>>>          rows=973051, cols=973051<br>
>>>>>>          package used to perform factorization: pastix<br>
>>>>>>  Error :                        3.24786e-14<br>
>>>>>>          total: nonzeros=0, allocated nonzeros=0<br>
>>>>>>          total number of mallocs used during MatSetValues calls =0<br>
>>>>>>            PaStiX run parameters:<br>
>>>>>>              Matrix type :                      Unsymmetric<br>
>>>>>>              Level of printing (0,1,2):         0<br>
>>>>>>              Number of refinements iterations : 3<br>
>>>>>>  Error :                        3.24786e-14<br>
>>>>>>  linear system matrix = precond matrix:<br>
>>>>>>  Mat Object:   4 MPI processes<br>
>>>>>>    type: mpiaij<br>
>>>>>>    rows=973051, cols=973051<br>
>>>>>>  Error :                        3.24786e-14<br>
>>>>>>    total: nonzeros=9.90037e+07, allocated nonzeros=9.90037e+07<br>
>>>>>>    total number of mallocs used during MatSetValues calls =0<br>
>>>>>>      using I-node (on process 0) routines: found 78749 nodes, limit<br>
>>> used is 5<br>
>>>>>>  Error :                        3.24786e-14<br>
>>>>>><br>
>>>>>> It doesn't do as you said. Something is not right here. I will look<br>
>>> in depth.<br>
>>>>>><br>
>>>>>> Giang<br>
>>>>>><br>
>>>>>> On Mon, Apr 24, 2017 at 8:21 PM, Barry Smith <<a href="mailto:bsmith@mcs.anl.gov" target="_blank">bsmith@mcs.anl.gov</a>><br>
>>> wrote:<br>
>>>>>><br>
>>>>>>> On Apr 24, 2017, at 12:47 PM, Hoang Giang Bui <<a href="mailto:hgbk2008@gmail.com" target="_blank">hgbk2008@gmail.com</a>><br>
>>> wrote:<br>
>>>>>>><br>
>>>>>>> Good catch. I get this for the very first step, maybe at that time<br>
>>> the rhs_w is zero.<br>
>>>>>><br>
>>>>>>    With the multiplicative composition the right hand side of the<br>
>>> second solve is the initial right hand side of the second solve minus<br>
>>> A_10*x where x is the solution to the first sub solve and A_10 is the lower<br>
>>> left block of the outer matrix. So unless both the initial right hand side<br>
>>> has a zero for the second block and A_10 is identically zero the right hand<br>
>>> side for the second sub solve should not be zero. Is A_10 == 0?<br>
>>>>>><br>
>>>>>><br>
>>>>>>> In the later step, it shows 2 step convergence<br>
>>>>>>><br>
>>>>>>> Residual norms for fieldsplit_u_ solve.<br>
>>>>>>>    0 KSP Residual norm 3.165886479830e+04<br>
>>>>>>>    1 KSP Residual norm 2.905922877684e-01<br>
>>>>>>>    Residual norms for fieldsplit_wp_ solve.<br>
>>>>>>>    0 KSP Residual norm 2.397669419027e-01<br>
>>>>>>>    1 KSP Residual norm 0.000000000000e+00<br>
>>>>>>>  0 KSP preconditioned resid norm 3.165886479920e+04 true resid<br>
>>> norm 7.963616922323e+05 ||r(i)||/||b|| 1.000000000000e+00<br>
>>>>>>>    Residual norms for fieldsplit_u_ solve.<br>
>>>>>>>    0 KSP Residual norm 9.999891813771e-01<br>
>>>>>>>    1 KSP Residual norm 1.512000395579e-05<br>
>>>>>>>    Residual norms for fieldsplit_wp_ solve.<br>
>>>>>>>    0 KSP Residual norm 8.192702188243e-06<br>
>>>>>>>    1 KSP Residual norm 0.000000000000e+00<br>
>>>>>>>  1 KSP preconditioned resid norm 5.252183822848e-02 true resid<br>
>>> norm 7.135927677844e+04 ||r(i)||/||b|| 8.960661653427e-02<br>
>>>>>><br>
>>>>>>    The outer residual norms are still wonky, the preconditioned<br>
>>> residual norm goes from 3.165886479920e+04 to 5.252183822848e-02 which is a<br>
>>> huge drop but the 7.963616922323e+05  drops very much less<br>
>>> 7.135927677844e+04. This is not normal.<br>
>>>>>><br>
>>>>>>   What if you just use -pc_type lu for the entire system (no<br>
>>> fieldsplit), does the true residual drop to almost zero in the first<br>
>>> iteration (as it should?). Send the output.<br>
>>>>>><br>
>>>>>><br>
>>>>>><br>
>>>>>>>    Residual norms for fieldsplit_u_ solve.<br>
>>>>>>>    0 KSP Residual norm 6.946213936597e-01<br>
>>>>>>>    1 KSP Residual norm 1.195514007343e-05<br>
>>>>>>>    Residual norms for fieldsplit_wp_ solve.<br>
>>>>>>>    0 KSP Residual norm 1.025694497535e+00<br>
>>>>>>>    1 KSP Residual norm 0.000000000000e+00<br>
>>>>>>>  2 KSP preconditioned resid norm 8.785709535405e-03 true resid<br>
>>> norm 1.419341799277e+04 ||r(i)||/||b|| 1.782282866091e-02<br>
>>>>>>>    Residual norms for fieldsplit_u_ solve.<br>
>>>>>>>    0 KSP Residual norm 7.255149996405e-01<br>
>>>>>>>    1 KSP Residual norm 6.583512434218e-06<br>
>>>>>>>    Residual norms for fieldsplit_wp_ solve.<br>
>>>>>>>    0 KSP Residual norm 1.015229700337e+00<br>
>>>>>>>    1 KSP Residual norm 0.000000000000e+00<br>
>>>>>>>  3 KSP preconditioned resid norm 7.110407712709e-04 true resid<br>
>>> norm 5.284940654154e+02 ||r(i)||/||b|| 6.636357205153e-04<br>
>>>>>>>    Residual norms for fieldsplit_u_ solve.<br>
>>>>>>>    0 KSP Residual norm 3.512243341400e-01<br>
>>>>>>>    1 KSP Residual norm 2.032490351200e-06<br>
>>>>>>>    Residual norms for fieldsplit_wp_ solve.<br>
>>>>>>>    0 KSP Residual norm 1.282327290982e+00<br>
>>>>>>>    1 KSP Residual norm 0.000000000000e+00<br>
>>>>>>>  4 KSP preconditioned resid norm 3.482036620521e-05 true resid<br>
>>> norm 4.291231924307e+01 ||r(i)||/||b|| 5.388546393133e-05<br>
>>>>>>>    Residual norms for fieldsplit_u_ solve.<br>
>>>>>>>    0 KSP Residual norm 3.423609338053e-01<br>
>>>>>>>    1 KSP Residual norm 4.213703301972e-07<br>
>>>>>>>    Residual norms for fieldsplit_wp_ solve.<br>
>>>>>>>    0 KSP Residual norm 1.157384757538e+00<br>
>>>>>>>    1 KSP Residual norm 0.000000000000e+00<br>
>>>>>>>  5 KSP preconditioned resid norm 1.203470314534e-06 true resid<br>
>>> norm 4.544956156267e+00 ||r(i)||/||b|| 5.707150658550e-06<br>
>>>>>>>    Residual norms for fieldsplit_u_ solve.<br>
>>>>>>>    0 KSP Residual norm 3.838596289995e-01<br>
>>>>>>>    1 KSP Residual norm 9.927864176103e-08<br>
>>>>>>>    Residual norms for fieldsplit_wp_ solve.<br>
>>>>>>>    0 KSP Residual norm 1.066298905618e+00<br>
>>>>>>>    1 KSP Residual norm 0.000000000000e+00<br>
>>>>>>>  6 KSP preconditioned resid norm 3.331619244266e-08 true resid<br>
>>> norm 2.821511729024e+00 ||r(i)||/||b|| 3.543002829675e-06<br>
>>>>>>>    Residual norms for fieldsplit_u_ solve.<br>
>>>>>>>    0 KSP Residual norm 4.624964188094e-01<br>
>>>>>>>    1 KSP Residual norm 6.418229775372e-08<br>
>>>>>>>    Residual norms for fieldsplit_wp_ solve.<br>
>>>>>>>    0 KSP Residual norm 9.800784311614e-01<br>
>>>>>>>    1 KSP Residual norm 0.000000000000e+00<br>
>>>>>>>  7 KSP preconditioned resid norm 8.788046233297e-10 true resid<br>
>>> norm 2.849209671705e+00 ||r(i)||/||b|| 3.577783436215e-06<br>
>>>>>>> Linear solve converged due to CONVERGED_ATOL iterations 7<br>
>>>>>>><br>
>>>>>>> The outer operator is an explicit matrix.<br>
>>>>>>><br>
>>>>>>> Giang<br>
>>>>>>><br>
>>>>>>> On Mon, Apr 24, 2017 at 7:32 PM, Barry Smith <<a href="mailto:bsmith@mcs.anl.gov" target="_blank">bsmith@mcs.anl.gov</a>><br>
>>> wrote:<br>
>>>>>>><br>
>>>>>>>> On Apr 24, 2017, at 3:16 AM, Hoang Giang Bui <<a href="mailto:hgbk2008@gmail.com" target="_blank">hgbk2008@gmail.com</a>><br>
>>> wrote:<br>
>>>>>>>><br>
>>>>>>>> Thanks Barry, trying with -fieldsplit_u_type lu gives better<br>
>>> convergence. I still used 4 procs though, probably with 1 proc it should<br>
>>> also be the same.<br>
>>>>>>>><br>
>>>>>>>> The u block used a Nitsche-type operator to connect two<br>
>>> non-matching domains. I don't think it will leave some rigid body motion<br>
>>> leads to not sufficient constraints. Maybe you have other idea?<br>
>>>>>>>><br>
>>>>>>>>    Residual norms for fieldsplit_u_ solve.<br>
>>>>>>>>    0 KSP Residual norm 3.129067184300e+05<br>
>>>>>>>>    1 KSP Residual norm 5.906261468196e-01<br>
>>>>>>>>    Residual norms for fieldsplit_wp_ solve.<br>
>>>>>>>>    0 KSP Residual norm 0.000000000000e+00<br>
>>>>>>><br>
>>>>>>>    ^^^^ something is wrong here. The sub solve should not be<br>
>>> starting with a 0 residual (this means the right hand side for this sub<br>
>>> solve is zero which it should not be).<br>
>>>>>>><br>
>>>>>>>> FieldSplit with MULTIPLICATIVE composition: total splits = 2<br>
>>>>>>><br>
>>>>>>><br>
>>>>>>>   How are you providing the outer operator? As an explicit matrix<br>
>>> or with some shell matrix?<br>
>>>>>>><br>
>>>>>>><br>
>>>>>>><br>
>>>>>>>>  0 KSP preconditioned resid norm 3.129067184300e+05 true resid<br>
>>> norm 9.015150492169e+06 ||r(i)||/||b|| 1.000000000000e+00<br>
>>>>>>>>    Residual norms for fieldsplit_u_ solve.<br>
>>>>>>>>    0 KSP Residual norm 9.999955993437e-01<br>
>>>>>>>>    1 KSP Residual norm 4.019774691831e-06<br>
>>>>>>>>    Residual norms for fieldsplit_wp_ solve.<br>
>>>>>>>>    0 KSP Residual norm 0.000000000000e+00<br>
>>>>>>>>  1 KSP preconditioned resid norm 5.003913641475e-01 true resid<br>
>>> norm 4.692996324114e+01 ||r(i)||/||b|| 5.205677185522e-06<br>
>>>>>>>>    Residual norms for fieldsplit_u_ solve.<br>
>>>>>>>>    0 KSP Residual norm 1.000012180204e+00<br>
>>>>>>>>    1 KSP Residual norm 1.017367950422e-05<br>
>>>>>>>>    Residual norms for fieldsplit_wp_ solve.<br>
>>>>>>>>    0 KSP Residual norm 0.000000000000e+00<br>
>>>>>>>>  2 KSP preconditioned resid norm 2.330910333756e-07 true resid<br>
>>> norm 3.474855463983e+01 ||r(i)||/||b|| 3.854461960453e-06<br>
>>>>>>>>    Residual norms for fieldsplit_u_ solve.<br>
>>>>>>>>    0 KSP Residual norm 1.000004200085e+00<br>
>>>>>>>>    1 KSP Residual norm 6.231613102458e-06<br>
>>>>>>>>    Residual norms for fieldsplit_wp_ solve.<br>
>>>>>>>>    0 KSP Residual norm 0.000000000000e+00<br>
>>>>>>>>  3 KSP preconditioned resid norm 8.671259838389e-11 true resid<br>
>>> norm 3.545103468011e+01 ||r(i)||/||b|| 3.932384125024e-06<br>
>>>>>>>> Linear solve converged due to CONVERGED_ATOL iterations 3<br>
>>>>>>>> KSP Object: 4 MPI processes<br>
>>>>>>>>  type: gmres<br>
>>>>>>>>    GMRES: restart=1000, using Modified Gram-Schmidt<br>
>>> Orthogonalization<br>
>>>>>>>>    GMRES: happy breakdown tolerance 1e-30<br>
>>>>>>>>  maximum iterations=1000, initial guess is zero<br>
>>>>>>>>  tolerances:  relative=1e-20, absolute=1e-09, divergence=10000<br>
>>>>>>>>  left preconditioning<br>
>>>>>>>>  using PRECONDITIONED norm type for convergence test<br>
>>>>>>>> PC Object: 4 MPI processes<br>
>>>>>>>>  type: fieldsplit<br>
>>>>>>>>    FieldSplit with MULTIPLICATIVE composition: total splits = 2<br>
>>>>>>>>    Solver info for each split is in the following KSP objects:<br>
>>>>>>>>    Split number 0 Defined by IS<br>
>>>>>>>>    KSP Object:    (fieldsplit_u_)     4 MPI processes<br>
>>>>>>>>      type: richardson<br>
>>>>>>>>        Richardson: damping factor=1<br>
>>>>>>>>      maximum iterations=1, initial guess is zero<br>
>>>>>>>>      tolerances:  relative=1e-05, absolute=1e-50,<br>
>>> divergence=10000<br>
>>>>>>>>      left preconditioning<br>
>>>>>>>>      using PRECONDITIONED norm type for convergence test<br>
>>>>>>>>    PC Object:    (fieldsplit_u_)     4 MPI processes<br>
>>>>>>>>      type: lu<br>
>>>>>>>>        LU: out-of-place factorization<br>
>>>>>>>>        tolerance for zero pivot 2.22045e-14<br>
>>>>>>>>        matrix ordering: natural<br>
>>>>>>>>        factor fill ratio given 0, needed 0<br>
>>>>>>>>          Factored matrix follows:<br>
>>>>>>>>            Mat Object:             4 MPI processes<br>
>>>>>>>>              type: mpiaij<br>
>>>>>>>>              rows=938910, cols=938910<br>
>>>>>>>>              package used to perform factorization: pastix<br>
>>>>>>>>              total: nonzeros=0, allocated nonzeros=0<br>
>>>>>>>>      Error :                        3.36878e-14<br>
>>>>>>>>          total number of mallocs used during MatSetValues calls<br>
>>> =0<br>
>>>>>>>>                PaStiX run parameters:<br>
>>>>>>>>                  Matrix type :                      Unsymmetric<br>
>>>>>>>>                  Level of printing (0,1,2):         0<br>
>>>>>>>>                  Number of refinements iterations : 3<br>
>>>>>>>>  Error :                        3.36878e-14<br>
>>>>>>>>      linear system matrix = precond matrix:<br>
>>>>>>>>      Mat Object:      (fieldsplit_u_)       4 MPI processes<br>
>>>>>>>>        type: mpiaij<br>
>>>>>>>>        rows=938910, cols=938910, bs=3<br>
>>>>>>>>  Error :                        3.36878e-14<br>
>>>>>>>>  Error :                        3.36878e-14<br>
>>>>>>>>        total: nonzeros=8.60906e+07, allocated<br>
>>> nonzeros=8.60906e+07<br>
>>>>>>>>        total number of mallocs used during MatSetValues calls =0<br>
>>>>>>>>          using I-node (on process 0) routines: found 78749<br>
>>> nodes, limit used is 5<br>
>>>>>>>>    Split number 1 Defined by IS<br>
>>>>>>>>    KSP Object:    (fieldsplit_wp_)     4 MPI processes<br>
>>>>>>>>      type: richardson<br>
>>>>>>>>        Richardson: damping factor=1<br>
>>>>>>>>      maximum iterations=1, initial guess is zero<br>
>>>>>>>>      tolerances:  relative=1e-05, absolute=1e-50,<br>
>>> divergence=10000<br>
>>>>>>>>      left preconditioning<br>
>>>>>>>>      using PRECONDITIONED norm type for convergence test<br>
>>>>>>>>    PC Object:    (fieldsplit_wp_)     4 MPI processes<br>
>>>>>>>>      type: lu<br>
>>>>>>>>        LU: out-of-place factorization<br>
>>>>>>>>        tolerance for zero pivot 2.22045e-14<br>
>>>>>>>>        matrix ordering: natural<br>
>>>>>>>>        factor fill ratio given 0, needed 0<br>
>>>>>>>>          Factored matrix follows:<br>
>>>>>>>>            Mat Object:             4 MPI processes<br>
>>>>>>>>              type: mpiaij<br>
>>>>>>>>              rows=34141, cols=34141<br>
>>>>>>>>              package used to perform factorization: pastix<br>
>>>>>>>>                Error :                        -nan<br>
>>>>>>>>  Error :                        -nan<br>
>>>>>>>>  Error :                        -nan<br>
>>>>>>>> total: nonzeros=0, allocated nonzeros=0<br>
>>>>>>>>              total number of mallocs used during MatSetValues<br>
>>> calls =0<br>
>>>>>>>>                PaStiX run parameters:<br>
>>>>>>>>                  Matrix type :                      Symmetric<br>
>>>>>>>>                  Level of printing (0,1,2):         0<br>
>>>>>>>>                  Number of refinements iterations : 0<br>
>>>>>>>>  Error :                        -nan<br>
>>>>>>>>      linear system matrix = precond matrix:<br>
>>>>>>>>      Mat Object:      (fieldsplit_wp_)       4 MPI processes<br>
>>>>>>>>        type: mpiaij<br>
>>>>>>>>        rows=34141, cols=34141<br>
>>>>>>>>        total: nonzeros=485655, allocated nonzeros=485655<br>
>>>>>>>>        total number of mallocs used during MatSetValues calls =0<br>
>>>>>>>>          not using I-node (on process 0) routines<br>
>>>>>>>>  linear system matrix = precond matrix:<br>
>>>>>>>>  Mat Object:   4 MPI processes<br>
>>>>>>>>    type: mpiaij<br>
>>>>>>>>    rows=973051, cols=973051<br>
>>>>>>>>    total: nonzeros=9.90037e+07, allocated nonzeros=9.90037e+07<br>
>>>>>>>>    total number of mallocs used during MatSetValues calls =0<br>
>>>>>>>>      using I-node (on process 0) routines: found 78749 nodes,<br>
>>> limit used is 5<br>
>>>>>>>><br>
>>>>>>>><br>
>>>>>>>><br>
>>>>>>>> Giang<br>
>>>>>>>><br>
>>>>>>>> On Sun, Apr 23, 2017 at 10:19 PM, Barry Smith <<br>
>>> <a href="mailto:bsmith@mcs.anl.gov" target="_blank">bsmith@mcs.anl.gov</a>> wrote:<br>
>>>>>>>><br>
>>>>>>>>> On Apr 23, 2017, at 2:42 PM, Hoang Giang Bui <<br>
>>> <a href="mailto:hgbk2008@gmail.com" target="_blank">hgbk2008@gmail.com</a>> wrote:<br>
>>>>>>>>><br>
>>>>>>>>> Dear Matt/Barry<br>
>>>>>>>>><br>
>>>>>>>>> With your options, it results in<br>
>>>>>>>>><br>
>>>>>>>>>  0 KSP preconditioned resid norm 1.106709687386e+31 true<br>
>>> resid norm 9.015150491938e+06 ||r(i)||/||b|| 1.000000000000e+00<br>
>>>>>>>>>    Residual norms for fieldsplit_u_ solve.<br>
>>>>>>>>>    0 KSP Residual norm 2.407308987203e+36<br>
>>>>>>>>>    1 KSP Residual norm 5.797185652683e+72<br>
>>>>>>>><br>
>>>>>>>> It looks like Matt is right, hypre is seemly producing useless<br>
>>> garbage.<br>
>>>>>>>><br>
>>>>>>>> First how do things run on one process. If you have similar<br>
>>> problems then debug on one process (debugging any kind of problem is always<br>
>>> far easy on one process).<br>
>>>>>>>><br>
>>>>>>>> First run with -fieldsplit_u_type lu (instead of using hypre) to<br>
>>> see if that works or also produces something bad.<br>
>>>>>>>><br>
>>>>>>>> What is the operator and the boundary conditions for u? It could<br>
>>> be singular.<br>
>>>>>>>><br>
>>>>>>>><br>
>>>>>>>><br>
>>>>>>>><br>
>>>>>>>><br>
>>>>>>>><br>
>>>>>>>>>    Residual norms for fieldsplit_wp_ solve.<br>
>>>>>>>>>    0 KSP Residual norm 0.000000000000e+00<br>
>>>>>>>>> ...<br>
>>>>>>>>> 999 KSP preconditioned resid norm 2.920157329174e+12 true<br>
>>> resid norm 9.015683504616e+06 ||r(i)||/||b|| 1.000059124102e+00<br>
>>>>>>>>>    Residual norms for fieldsplit_u_ solve.<br>
>>>>>>>>>    0 KSP Residual norm 1.533726746719e+36<br>
>>>>>>>>>    1 KSP Residual norm 3.692757392261e+72<br>
>>>>>>>>>    Residual norms for fieldsplit_wp_ solve.<br>
>>>>>>>>>    0 KSP Residual norm 0.000000000000e+00<br>
>>>>>>>>><br>
>>>>>>>>> Do you suggest that the pastix solver for the "wp" block<br>
>>> encounters small pivot? In addition, seem like the "u" block is also<br>
>>> singular.<br>
>>>>>>>>><br>
>>>>>>>>> Giang<br>
>>>>>>>>><br>
>>>>>>>>> On Sun, Apr 23, 2017 at 7:39 PM, Barry Smith <<br>
>>> <a href="mailto:bsmith@mcs.anl.gov" target="_blank">bsmith@mcs.anl.gov</a>> wrote:<br>
>>>>>>>>><br>
>>>>>>>>>   Huge preconditioned norms but normal unpreconditioned norms<br>
>>> almost always come from a very small pivot in an LU or ILU factorization.<br>
>>>>>>>>><br>
>>>>>>>>>   The first thing to do is monitor the two sub solves. Run<br>
>>> with the additional options -fieldsplit_u_ksp_type richardson<br>
>>> -fieldsplit_u_ksp_monitor -fieldsplit_u_ksp_max_it 1<br>
>>> -fieldsplit_wp_ksp_type richardson -fieldsplit_wp_ksp_monitor<br>
>>> -fieldsplit_wp_ksp_max_it 1<br>
>>>>>>>>><br>
>>>>>>>>>> On Apr 23, 2017, at 12:22 PM, Hoang Giang Bui <<br>
>>> <a href="mailto:hgbk2008@gmail.com" target="_blank">hgbk2008@gmail.com</a>> wrote:<br>
>>>>>>>>>><br>
>>>>>>>>>> Hello<br>
>>>>>>>>>><br>
>>>>>>>>>> I encountered a strange convergence behavior that I have<br>
>>> trouble to understand<br>
>>>>>>>>>><br>
>>>>>>>>>> KSPSetFromOptions completed<br>
>>>>>>>>>>  0 KSP preconditioned resid norm 1.106709687386e+31 true<br>
>>> resid norm 9.015150491938e+06 ||r(i)||/||b|| 1.000000000000e+00<br>
>>>>>>>>>>  1 KSP preconditioned resid norm 2.933141742664e+29 true<br>
>>> resid norm 9.015152282123e+06 ||r(i)||/||b|| 1.000000198575e+00<br>
>>>>>>>>>>  2 KSP preconditioned resid norm 9.686409637174e+16 true<br>
>>> resid norm 9.015354521944e+06 ||r(i)||/||b|| 1.000022631902e+00<br>
>>>>>>>>>>  3 KSP preconditioned resid norm 4.219243615809e+15 true<br>
>>> resid norm 9.017157702420e+06 ||r(i)||/||b|| 1.000222648583e+00<br>
>>>>>>>>>> .....<br>
>>>>>>>>>> 999 KSP preconditioned resid norm 3.043754298076e+12 true<br>
>>> resid norm 9.015425041089e+06 ||r(i)||/||b|| 1.000030454195e+00<br>
>>>>>>>>>> 1000 KSP preconditioned resid norm 3.043000287819e+12 true<br>
>>> resid norm 9.015424313455e+06 ||r(i)||/||b|| 1.000030373483e+00<br>
>>>>>>>>>> Linear solve did not converge due to DIVERGED_ITS iterations<br>
>>> 1000<br>
>>>>>>>>>> KSP Object: 4 MPI processes<br>
>>>>>>>>>>  type: gmres<br>
>>>>>>>>>>    GMRES: restart=1000, using Modified Gram-Schmidt<br>
>>> Orthogonalization<br>
>>>>>>>>>>    GMRES: happy breakdown tolerance 1e-30<br>
>>>>>>>>>>  maximum iterations=1000, initial guess is zero<br>
>>>>>>>>>>  tolerances:  relative=1e-20, absolute=1e-09,<br>
>>> divergence=10000<br>
>>>>>>>>>>  left preconditioning<br>
>>>>>>>>>>  using PRECONDITIONED norm type for convergence test<br>
>>>>>>>>>> PC Object: 4 MPI processes<br>
>>>>>>>>>>  type: fieldsplit<br>
>>>>>>>>>>    FieldSplit with MULTIPLICATIVE composition: total splits<br>
>>> = 2<br>
>>>>>>>>>>    Solver info for each split is in the following KSP<br>
>>> objects:<br>
>>>>>>>>>>    Split number 0 Defined by IS<br>
>>>>>>>>>>    KSP Object:    (fieldsplit_u_)     4 MPI processes<br>
>>>>>>>>>>      type: preonly<br>
>>>>>>>>>>      maximum iterations=10000, initial guess is zero<br>
>>>>>>>>>>      tolerances:  relative=1e-05, absolute=1e-50,<br>
>>> divergence=10000<br>
>>>>>>>>>>      left preconditioning<br>
>>>>>>>>>>      using NONE norm type for convergence test<br>
>>>>>>>>>>    PC Object:    (fieldsplit_u_)     4 MPI processes<br>
>>>>>>>>>>      type: hypre<br>
>>>>>>>>>>        HYPRE BoomerAMG preconditioning<br>
>>>>>>>>>>        HYPRE BoomerAMG: Cycle type V<br>
>>>>>>>>>>        HYPRE BoomerAMG: Maximum number of levels 25<br>
>>>>>>>>>>        HYPRE BoomerAMG: Maximum number of iterations PER<br>
>>> hypre call 1<br>
>>>>>>>>>>        HYPRE BoomerAMG: Convergence tolerance PER hypre<br>
>>> call 0<br>
>>>>>>>>>>        HYPRE BoomerAMG: Threshold for strong coupling 0.6<br>
>>>>>>>>>>        HYPRE BoomerAMG: Interpolation truncation factor 0<br>
>>>>>>>>>>        HYPRE BoomerAMG: Interpolation: max elements per row<br>
>>> 0<br>
>>>>>>>>>>        HYPRE BoomerAMG: Number of levels of aggressive<br>
>>> coarsening 0<br>
>>>>>>>>>>        HYPRE BoomerAMG: Number of paths for aggressive<br>
>>> coarsening 1<br>
>>>>>>>>>>        HYPRE BoomerAMG: Maximum row sums 0.9<br>
>>>>>>>>>>        HYPRE BoomerAMG: Sweeps down         1<br>
>>>>>>>>>>        HYPRE BoomerAMG: Sweeps up           1<br>
>>>>>>>>>>        HYPRE BoomerAMG: Sweeps on coarse    1<br>
>>>>>>>>>>        HYPRE BoomerAMG: Relax down<br>
>>> symmetric-SOR/Jacobi<br>
>>>>>>>>>>        HYPRE BoomerAMG: Relax up<br>
>>> symmetric-SOR/Jacobi<br>
>>>>>>>>>>        HYPRE BoomerAMG: Relax on coarse<br>
>>> Gaussian-elimination<br>
>>>>>>>>>>        HYPRE BoomerAMG: Relax weight  (all)      1<br>
>>>>>>>>>>        HYPRE BoomerAMG: Outer relax weight (all) 1<br>
>>>>>>>>>>        HYPRE BoomerAMG: Using CF-relaxation<br>
>>>>>>>>>>        HYPRE BoomerAMG: Measure type        local<br>
>>>>>>>>>>        HYPRE BoomerAMG: Coarsen type        PMIS<br>
>>>>>>>>>>        HYPRE BoomerAMG: Interpolation type  classical<br>
>>>>>>>>>>      linear system matrix = precond matrix:<br>
>>>>>>>>>>      Mat Object:      (fieldsplit_u_)       4 MPI processes<br>
>>>>>>>>>>        type: mpiaij<br>
>>>>>>>>>>        rows=938910, cols=938910, bs=3<br>
>>>>>>>>>>        total: nonzeros=8.60906e+07, allocated<br>
>>> nonzeros=8.60906e+07<br>
>>>>>>>>>>        total number of mallocs used during MatSetValues<br>
>>> calls =0<br>
>>>>>>>>>>          using I-node (on process 0) routines: found 78749<br>
>>> nodes, limit used is 5<br>
>>>>>>>>>>    Split number 1 Defined by IS<br>
>>>>>>>>>>    KSP Object:    (fieldsplit_wp_)     4 MPI processes<br>
>>>>>>>>>>      type: preonly<br>
>>>>>>>>>>      maximum iterations=10000, initial guess is zero<br>
>>>>>>>>>>      tolerances:  relative=1e-05, absolute=1e-50,<br>
>>> divergence=10000<br>
>>>>>>>>>>      left preconditioning<br>
>>>>>>>>>>      using NONE norm type for convergence test<br>
>>>>>>>>>>    PC Object:    (fieldsplit_wp_)     4 MPI processes<br>
>>>>>>>>>>      type: lu<br>
>>>>>>>>>>        LU: out-of-place factorization<br>
>>>>>>>>>>        tolerance for zero pivot 2.22045e-14<br>
>>>>>>>>>>        matrix ordering: natural<br>
>>>>>>>>>>        factor fill ratio given 0, needed 0<br>
>>>>>>>>>>          Factored matrix follows:<br>
>>>>>>>>>>            Mat Object:             4 MPI processes<br>
>>>>>>>>>>              type: mpiaij<br>
>>>>>>>>>>              rows=34141, cols=34141<br>
>>>>>>>>>>              package used to perform factorization: pastix<br>
>>>>>>>>>>            Error :                        -nan<br>
>>>>>>>>>>  Error :                        -nan<br>
>>>>>>>>>>    total: nonzeros=0, allocated nonzeros=0<br>
>>>>>>>>>>            Error :                        -nan<br>
>>>>>>>>>>    total number of mallocs used during MatSetValues calls =0<br>
>>>>>>>>>>                PaStiX run parameters:<br>
>>>>>>>>>>                  Matrix type :<br>
>>> Symmetric<br>
>>>>>>>>>>                  Level of printing (0,1,2):         0<br>
>>>>>>>>>>                  Number of refinements iterations : 0<br>
>>>>>>>>>>  Error :                        -nan<br>
>>>>>>>>>>      linear system matrix = precond matrix:<br>
>>>>>>>>>>      Mat Object:      (fieldsplit_wp_)       4 MPI processes<br>
>>>>>>>>>>        type: mpiaij<br>
>>>>>>>>>>        rows=34141, cols=34141<br>
>>>>>>>>>>        total: nonzeros=485655, allocated nonzeros=485655<br>
>>>>>>>>>>        total number of mallocs used during MatSetValues<br>
>>> calls =0<br>
>>>>>>>>>>          not using I-node (on process 0) routines<br>
>>>>>>>>>>  linear system matrix = precond matrix:<br>
>>>>>>>>>>  Mat Object:   4 MPI processes<br>
>>>>>>>>>>    type: mpiaij<br>
>>>>>>>>>>    rows=973051, cols=973051<br>
>>>>>>>>>>    total: nonzeros=9.90037e+07, allocated<br>
>>> nonzeros=9.90037e+07<br>
>>>>>>>>>>    total number of mallocs used during MatSetValues calls =0<br>
>>>>>>>>>>      using I-node (on process 0) routines: found 78749<br>
>>> nodes, limit used is 5<br>
>>>>>>>>>><br>
>>>>>>>>>> The pattern of convergence gives a hint that this system is<br>
>>> somehow bad/singular. But I don't know why the preconditioned error goes up<br>
>>> too high. Anyone has an idea?<br>
>>>>>>>>>><br>
>>>>>>>>>> Best regards<br>
>>>>>>>>>> Giang Bui<br>
>>>>>>>>>><br>
>>>>>>>>><br>
>>>>>>>>><br>
>>>>>>>><br>
>>>>>>>><br>
>>>>>>><br>
>>>>>>><br>
>>>>>><br>
>>>>>><br>
>>>>><br>
>>>>><br>
>>>><br>
>>>><br>
>>><br>
>>><br>
<br>
</div></div></blockquote></div><br></div></div>