<div dir="ltr">On Mon, Jan 7, 2013 at 9:09 AM, Mark F. Adams <span dir="ltr"><<a href="mailto:mark.adams@columbia.edu" target="_blank">mark.adams@columbia.edu</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word">ex56 is a simple 3D elasticity problem. There is a runex56 target that uses GAMG and a runex56_ml. These have a generic parameters and ML and GAMG work well.<div>
<br></div><div>The eigen estimates could be bad. This can cause death. I've found that CG converges to the largest eigenvalue faster than the default GMRES so I use:</div><div><br></div><div><div>-gamg_est_ksp_max_it 10 # this is the default, you could increase this to test</div>
<div>-gamg_est_ksp_type cg</div><div><br></div><div>Jed could tell you how to set this for ML.</div></div></div></blockquote><div><br></div><div style>ML isn't using eigenvalue estimation (doesn't expose the algorithm). Sanjay is using the default smoother (Richardson + SOR) rather than chebyshev/pbjacobi.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div><div><div class="h5"><div><br></div><div><br><div><br><div><div>On Jan 7, 2013, at 8:49 AM, Jed Brown <<a href="mailto:jedbrown@mcs.anl.gov" target="_blank">jedbrown@mcs.anl.gov</a>> wrote:</div>
<br><blockquote type="cite"><div dir="ltr">Could we get an example matrix exhibiting this behavior? If you run with -ksp_view_binary, the solver will write out the matrix to a file called 'binaryoutput' (and '<a href="http://binaryoutput.info/" target="_blank">binaryoutput.info</a>') when KSPSolve() returns. I suppose it could be a "math" reason of the inodes somehow causing an incorrect near-null space to be passed to ML, but the interface is not supposed to work like this. If you are serious about smoothed aggregation for elasticity, you should use MatSetNearNullSpace() to provide the rigid body modes.<br>
<div><br></div><div>As a related matter, does -pc_type gamg -pc_gamg_agg_nsmooths 1 -mg_levels_ksp_type richardson -mg_levels_pc_type sor converge well?</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">
On Mon, Jan 7, 2013 at 12:55 AM, Sanjay Govindjee <span dir="ltr"><<a href="mailto:s_g@berkeley.edu" target="_blank">s_g@berkeley.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
I am adding ML as an option to our FEA code and was looking for a bit of guidance on<br>
options. Generally we solve 1,2, and 3D solids problems (nonlinear elasticity) but<br>
we also treat shells, thermal, problems, coupled problems, etc. etc.<br>
<br>
My basic run line looks like:<br>
<br>
-@${MPIEXEC} -n $(NPROC) $(MY_PROGRAM) -ksp_type cg -ksp_monitor -pc_type ml -log_summary -ksp_view -options_left<br>
<br>
but this does not work very well at all with 3D elasticity for example -- in fact it fails to converge after 10K iterations on a rather<br>
modest problem. However following ex26 in the ksp tutorials I also tried:<br>
<br>
-@${MPIEXEC} -n $(NPROC) $(FEAPRUN) -ksp_type cg -ksp_monitor -pc_type ml -mat_no_inode -log_summary -ksp_view -options_left<br>
<br>
And this worked very very much better -- converged in about 10 iterations. What exactly is -mat_no_inode doing for me? and are there other 'important' options<br>
that I should be aware of when using ML.<span><font color="#888888"><br>
<br>
-sanjay<br>
</font></span></blockquote></div><br></div>
</blockquote></div><br></div></div></div></div></div></div></blockquote></div><br></div></div>