<div dir="ltr"><div><br></div><div class="gmail_extra">
<br><div class="gmail_quote">On Thu, Jan 14, 2016 at 8:08 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:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div class=""><div class="h5"><br>
> On Jan 14, 2016, at 12:57 PM, Jed Brown <<a href="mailto:jed@jedbrown.org">jed@jedbrown.org</a>> wrote:<br>
><br>
> Hoang Giang Bui <<a href="mailto:hgbk2008@gmail.com">hgbk2008@gmail.com</a>> writes:<br>
>> One more question I like to ask, which is more on the performance of the<br>
>> solver. That if I have a coupled problem, says the point block is [u_x u_y<br>
>> u_z p] in which entries of p block in stiffness matrix is in a much smaller<br>
>> scale than u (p~1e-6, u~1e+8), then AMG with hypre in PETSc still scale?<br>
><br>
> You should scale the model (as Barry says).  But the names of your<br>
> variables suggest that the system is a saddle point problem, in which<br>
> case there's a good chance AMG won't work at all.  For example,<br>
> BoomerAMG produces a singular preconditioner in similar contexts, such<br>
> that the preconditioned residual drops smoothly while the true residual<br>
> stagnates (the equations are not solved at all).  So be vary careful if<br>
> you think it's "working".<br>
<br></div></div></blockquote><div><br></div><div><br></div><div>Using block size 4 with the scaling, the hypre AMG does not converge. So it's somehow right.</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div class=""><div class="h5">
</div></div>   The PCFIEDSPLIT preconditioner is designed for helping to solve saddle point problems.<br>
<span class=""><font color="#888888"><br>   <br></font></span></blockquote><div><br></div><div>Does PCFIELDSPLIT support variable block size? For example using P2/P1 discretization, the number of nodes carrying [u_x u_y u_z] is different with number of nodes carrying p. PCFieldSplitSetBlockSize would not be correct in this case.</div><div> </div></div></div><div class="gmail_extra">Giang<br></div><div class="gmail_extra"><br></div></div>