<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>