<div dir="ltr">On Mon, Mar 11, 2013 at 12:33 PM,  <span dir="ltr">&lt;<a href="mailto:BOK10@pitt.edu" target="_blank">BOK10@pitt.edu</a>&gt;</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">
So, I just checked and both the linear and nonlinear solutions are<br>
converging. I&#39;m not sure I know what you mean by different solution<br>
settings? Do you mean the following:<br>
<br>
# Preconditioner settings.<br>
pc_type = asm<br>
sub_pc_factor_shift_type = nonzero<br>
<br>
# Convergence parameters.<br>
ksp_rtol = 1.0e-20<br></blockquote><div><br></div><div style>These kinds of tolerances usually mean that something is not scaled right. You</div><div style>cannot really get meaningful information below 1.0e-12.</div><div style>
<br></div><div style>Brad, does this have something to do with the friction solve?</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
ksp_atol = 1.0e-13<br>
ksp_max_it = 1000000<br>
ksp_gmres_restart = 50<br></blockquote><div><br></div><div style>This restart is too small. If you have more memory, increase it to 100-200.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

# Linear solver monitoring options.<br>
ksp_monitor = true<br>
ksp_view = true<br>
ksp_converged_reason = true<br>
<br>
# Nonlinear solver monitoring options.<br>
snes_rtol = 1.0e-20<br></blockquote><div><br></div><div style>Again, this seems way too small.</div><div style><br></div><div style>  Thanks,</div><div style><br></div><div style>    Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

snes_atol = 1.0e-11<br>
snes_max_it = 1000000<br>
snes_monitor = true<br>
snes_view = true<br>
snes_converged_reason = true<br>
<br>
# PETSc summary -- useful for performance information.<br>
log_summary = true<br>
<br>
Bobby<br>
<br>
&gt; Hi Bobby,<br>
&gt;<br>
&gt; Are all of the solutions converging (both linear and nonlinear)?  I would<br>
&gt; have to look more at the different solution settings to see which of the<br>
&gt; two you&#39;ve shown is more reasonable.<br>
&gt;<br>
&gt; Cheers,<br>
&gt; Charles<br>
&gt;<br>
&gt;<br>
&gt; On 9/03/2013, at 6:11 AM, <a href="mailto:BOK10@pitt.edu">BOK10@pitt.edu</a> wrote:<br>
&gt;<br>
&gt;&gt; Thanks! I tried a mixture of those suggestions, and i was able to get it<br>
&gt;&gt; to reduce its runtime by half.<br>
&gt;&gt;<br>
&gt;&gt; I do have a question regarding the most suitable ksp/snes tolerances<br>
&gt;&gt; though:<br>
&gt;&gt;<br>
&gt;&gt; I ran two simulations. The first had the following:<br>
&gt;&gt;<br>
&gt;&gt; for the fault zero_tolerance = 1e-12<br>
&gt;&gt; ksp_rtol/snes_rtol = 1e-20<br>
&gt;&gt; ksp_atol = 1e-13<br>
&gt;&gt; snes_atol = 1e-11<br>
&gt;&gt;<br>
&gt;&gt; The second had this:<br>
&gt;&gt;<br>
&gt;&gt; for the fault zero_tolerance = 1e-14<br>
&gt;&gt; ksp_rtol/snes_rtol = 1e-20<br>
&gt;&gt; ksp_atol = 1e-15<br>
&gt;&gt; snes_atol = 1e-13<br>
&gt;&gt;<br>
&gt;&gt; What I&#39;m trying to do is look at the time it takes for certain portions<br>
&gt;&gt; of<br>
&gt;&gt; my fault to rupture &gt;1m. Running both simulations, I got wildly<br>
&gt;&gt; different<br>
&gt;&gt; results, and I&#39;m not sure which to rely on at this point. Is there any<br>
&gt;&gt; insight you might be able to give me regarding the best tolerances to<br>
&gt;&gt; settle on?<br>
&gt;&gt;<br>
&gt;&gt; Bobby<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;&gt; Hmm.  It sounds to me as though you need to play with your parameters a<br>
&gt;&gt;&gt; bit.  I&#39;m assuming you&#39;re using a frictional fault, which can<br>
&gt;&gt;&gt; definitely<br>
&gt;&gt;&gt; take a while to converge; however, you can do a few things to speed<br>
&gt;&gt;&gt; things<br>
&gt;&gt;&gt; up:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; 1.  Follow all of the suggestions Brad had from his previous e-mail.<br>
&gt;&gt;&gt; 2.  Make sure you have the highest quality mesh you can get.  Just one<br>
&gt;&gt;&gt; poorly formed element, especially on the fault, can really slow things<br>
&gt;&gt;&gt; down.<br>
&gt;&gt;&gt; 3.  Possibly try reducing your time step size.  It&#39;s possible that your<br>
&gt;&gt;&gt; load increment per timestep is too high for reasonable convergence.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; When you have a chance, I would see if you can build PyLith from source<br>
&gt;&gt;&gt; on<br>
&gt;&gt;&gt; your cluster.  In addition to allowing parallel runs, this will let you<br>
&gt;&gt;&gt; take advantage of any machine-specific tools (e.g., optimized math<br>
&gt;&gt;&gt; libraries, etc.).<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Let us know whether any of this helps.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Cheers,<br>
&gt;&gt;&gt; Charles<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; On 7/03/2013, at 12:15 PM, <a href="mailto:BOK10@pitt.edu">BOK10@pitt.edu</a> wrote:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Hi Charles,<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; I&#39;m not running in parallel (I couldn&#39;t get the model to process in<br>
&gt;&gt;&gt;&gt; parallel on the cluster). Each time step takes ~80 minutes with loose<br>
&gt;&gt;&gt;&gt; tolerances, and about 2 hours for tighter tolerances.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; The mesh itself is about 6,000 cells (2D). The faults have a 2 km<br>
&gt;&gt;&gt;&gt; discretization, and the boundaries have a 5 km discretization. Im<br>
&gt;&gt;&gt;&gt; using<br>
&gt;&gt;&gt;&gt; elasticplanestrain.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Bobby<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; What sort of machine are you running on, and are you running in<br>
&gt;&gt;&gt;&gt;&gt; parallel?<br>
&gt;&gt;&gt;&gt;&gt; I&#39;m not sure what your problem size is, but 80 time steps shouldn&#39;t<br>
&gt;&gt;&gt;&gt;&gt; take<br>
&gt;&gt;&gt;&gt;&gt; that long to run, unless it&#39;s a very nonlinear problem.  How large is<br>
&gt;&gt;&gt;&gt;&gt; your<br>
&gt;&gt;&gt;&gt;&gt; mesh, and what sort of rheology are you using?<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; Cheers,<br>
&gt;&gt;&gt;&gt;&gt; Charles<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; On 7/03/2013, at 11:36 AM, <a href="mailto:BOK10@pitt.edu">BOK10@pitt.edu</a> wrote:<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt; Hi Charles,<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt; It takes pretty long for a simulation to finish processing, and I<br>
&gt;&gt;&gt;&gt;&gt;&gt; was<br>
&gt;&gt;&gt;&gt;&gt;&gt; hoping to split the simulation up into parts so I can come back to<br>
&gt;&gt;&gt;&gt;&gt;&gt; it<br>
&gt;&gt;&gt;&gt;&gt;&gt; later. It&#39;s not a necessity, but more a convenience issue.<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt; I think I&#39;ll just continue on with running it overnight.<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt; Thanks,<br>
&gt;&gt;&gt;&gt;&gt;&gt; Bobby<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Hi Bobby,<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; I&#39;m not quite sure what you have in mind.  If you&#39;re running any<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; sort<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; of<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; viscoelastic problem, you would need to save the entire state at<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; the<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; end<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; of each run.  I don&#39;t see what benefit there would be from doing<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; this,<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; since you would still need to finish each run to get all the state<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; variables at the end of each chunk, and then feed them into the<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; next<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; simulation as initial state variables.<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; If your problem is completely elastic, I suppose you could run them<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; in<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; the<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; way you&#39;re suggesting, and then use linear superposition to obtain<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; the<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; final result.  What is your reason for wanting to break up the<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; simulation?<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Cheers,<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Charles<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; On 7/03/2013, at 11:22 AM, <a href="mailto:BOK10@pitt.edu">BOK10@pitt.edu</a> wrote:<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Is it possible to split a simulation into parts? I&#39;m running my<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; model<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; for<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; 400 years at 5 year time intervals, but is it possible to split it<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; to<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; 100<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; year chunks and run them serially?<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Bobby<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; _______________________________________________<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; CIG-SHORT mailing list<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; <a href="mailto:CIG-SHORT@geodynamics.org">CIG-SHORT@geodynamics.org</a><br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; <a href="http://geodynamics.org/cgi-bin/mailman/listinfo/cig-short" target="_blank">http://geodynamics.org/cgi-bin/mailman/listinfo/cig-short</a><br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Charles A. Williams<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Scientist<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; GNS Science<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; 1 Fairway Drive, Avalon<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; PO Box 30368<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Lower Hutt  5040<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; New Zealand<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; ph (office): 0064-4570-4566<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; fax (office): 0064-4570-4600<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; <a href="mailto:C.Williams@gns.cri.nz">C.Williams@gns.cri.nz</a><br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Notice: This email and any attachments are confidential.<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; If received in error please destroy and immediately notify us.<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Do not copy or disclose the contents.<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; _______________________________________________<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; CIG-SHORT mailing list<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; <a href="mailto:CIG-SHORT@geodynamics.org">CIG-SHORT@geodynamics.org</a><br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; <a href="http://geodynamics.org/cgi-bin/mailman/listinfo/cig-short" target="_blank">http://geodynamics.org/cgi-bin/mailman/listinfo/cig-short</a><br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt; _______________________________________________<br>
&gt;&gt;&gt;&gt;&gt;&gt; CIG-SHORT mailing list<br>
&gt;&gt;&gt;&gt;&gt;&gt; <a href="mailto:CIG-SHORT@geodynamics.org">CIG-SHORT@geodynamics.org</a><br>
&gt;&gt;&gt;&gt;&gt;&gt; <a href="http://geodynamics.org/cgi-bin/mailman/listinfo/cig-short" target="_blank">http://geodynamics.org/cgi-bin/mailman/listinfo/cig-short</a><br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; Charles A. Williams<br>
&gt;&gt;&gt;&gt;&gt; Scientist<br>
&gt;&gt;&gt;&gt;&gt; GNS Science<br>
&gt;&gt;&gt;&gt;&gt; 1 Fairway Drive, Avalon<br>
&gt;&gt;&gt;&gt;&gt; PO Box 30368<br>
&gt;&gt;&gt;&gt;&gt; Lower Hutt  5040<br>
&gt;&gt;&gt;&gt;&gt; New Zealand<br>
&gt;&gt;&gt;&gt;&gt; ph (office): 0064-4570-4566<br>
&gt;&gt;&gt;&gt;&gt; fax (office): 0064-4570-4600<br>
&gt;&gt;&gt;&gt;&gt; <a href="mailto:C.Williams@gns.cri.nz">C.Williams@gns.cri.nz</a><br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; _______________________________________________<br>
&gt;&gt;&gt;&gt;&gt; CIG-SHORT mailing list<br>
&gt;&gt;&gt;&gt;&gt; <a href="mailto:CIG-SHORT@geodynamics.org">CIG-SHORT@geodynamics.org</a><br>
&gt;&gt;&gt;&gt;&gt; <a href="http://geodynamics.org/cgi-bin/mailman/listinfo/cig-short" target="_blank">http://geodynamics.org/cgi-bin/mailman/listinfo/cig-short</a><br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; _______________________________________________<br>
&gt;&gt;&gt;&gt; CIG-SHORT mailing list<br>
&gt;&gt;&gt;&gt; <a href="mailto:CIG-SHORT@geodynamics.org">CIG-SHORT@geodynamics.org</a><br>
&gt;&gt;&gt;&gt; <a href="http://geodynamics.org/cgi-bin/mailman/listinfo/cig-short" target="_blank">http://geodynamics.org/cgi-bin/mailman/listinfo/cig-short</a><br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Charles A. Williams<br>
&gt;&gt;&gt; Scientist<br>
&gt;&gt;&gt; GNS Science<br>
&gt;&gt;&gt; 1 Fairway Drive, Avalon<br>
&gt;&gt;&gt; PO Box 30368<br>
&gt;&gt;&gt; Lower Hutt  5040<br>
&gt;&gt;&gt; New Zealand<br>
&gt;&gt;&gt; ph (office): 0064-4570-4566<br>
&gt;&gt;&gt; fax (office): 0064-4570-4600<br>
&gt;&gt;&gt; <a href="mailto:C.Williams@gns.cri.nz">C.Williams@gns.cri.nz</a><br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; _______________________________________________<br>
&gt;&gt;&gt; CIG-SHORT mailing list<br>
&gt;&gt;&gt; <a href="mailto:CIG-SHORT@geodynamics.org">CIG-SHORT@geodynamics.org</a><br>
&gt;&gt;&gt; <a href="http://geodynamics.org/cgi-bin/mailman/listinfo/cig-short" target="_blank">http://geodynamics.org/cgi-bin/mailman/listinfo/cig-short</a><br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;<br>
&gt; Charles A. Williams<br>
&gt; Scientist<br>
&gt; GNS Science<br>
&gt; 1 Fairway Drive, Avalon<br>
&gt; PO Box 30368<br>
&gt; Lower Hutt  5040<br>
&gt; New Zealand<br>
&gt; ph (office): 0064-4570-4566<br>
&gt; fax (office): 0064-4570-4600<br>
&gt; <a href="mailto:C.Williams@gns.cri.nz">C.Williams@gns.cri.nz</a><br>
&gt;<br>
&gt;<br>
&gt; Notice: This email and any attachments are confidential.<br>
&gt; If received in error please destroy and immediately notify us.<br>
&gt; Do not copy or disclose the contents.<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; CIG-SHORT mailing list<br>
&gt; <a href="mailto:CIG-SHORT@geodynamics.org">CIG-SHORT@geodynamics.org</a><br>
&gt; <a href="http://geodynamics.org/cgi-bin/mailman/listinfo/cig-short" target="_blank">http://geodynamics.org/cgi-bin/mailman/listinfo/cig-short</a><br>
<br>
<br>
_______________________________________________<br>
CIG-SHORT mailing list<br>
<a href="mailto:CIG-SHORT@geodynamics.org">CIG-SHORT@geodynamics.org</a><br>
<a href="http://geodynamics.org/cgi-bin/mailman/listinfo/cig-short" target="_blank">http://geodynamics.org/cgi-bin/mailman/listinfo/cig-short</a><br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>
-- Norbert Wiener
</div></div>