<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
</head>
<body dir="ltr">
<div id="divtagdefaultwrapper" style="font-size:10pt;color:#000000;font-family:Helvetica,Arial,sans-serif;" dir="ltr">
<div id="divtagdefaultwrapper" style="font-size: 10pt; color: rgb(0, 0, 0); font-family: Helvetica, Arial, sans-serif, Arial, EmojiFont, "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Segoe UI Symbol", "Android Emoji", EmojiSymbols;" dir="ltr">
<p>I couldn't resist. Please forgive me. </p>
<p><br>
</p>
</div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>From:</b> petsc-users-bounces@mcs.anl.gov <petsc-users-bounces@mcs.anl.gov> on behalf of Matthew Knepley <knepley@gmail.com><br>
<b>Sent:</b> Tuesday, July 4, 2017 10:10:38 AM<br>
<b>To:</b> Harshad Sahasrabudhe<br>
<b>Cc:</b> PETSc<br>
<b>Subject:</b> Re: [petsc-users] Setting GAMG options C code</font>
<div> </div>
</div>
<div>
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">On Tue, Jul 4, 2017 at 9:06 AM, Harshad Sahasrabudhe <span dir="ltr">
<<a href="mailto:hsahasra@purdue.edu" target="_blank">hsahasra@purdue.edu</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">
<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 dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote"><span>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">
<div style="font-size:12.8px"><span style="font-size:12.8px">          ierr = PetscOptionsSetValue(NULL, "-st_mg_levels_ksp_type", "chebyshev");</span><br>
</div>
<div style="font-size:12.8px">
<div style="font-size:12.8px">          chkerr(ierr);</div>
<div style="font-size:12.8px">          ierr = PetscOptionsSetValue(NULL, "-st_mg_levels_pc_type", "jacobi");</div>
<div style="font-size:12.8px">          chkerr(ierr);</div>
<div style="font-size:12.8px">          ierr = PetscOptionsSetValue(NULL, "-st_mg_levels_ksp_max_it", "8");</div>
<div style="font-size:12.8px">          chkerr(ierr);</div>
<div style="font-size:12.8px">          ierr = PetscOptionsSetValue(NULL, "-st_pc_gamg_threshold", "0.01");</div>
<div style="font-size:12.8px">          chkerr(ierr);</div>
</div>
</div>
</blockquote>
<div><br>
</div>
</span>
<div>I have a different opinion than Jose. I think the above lines are a better way to lock in the setup.</div>
<div><br>
</div>
<div>1) It is very difficult to get the order correct when you use the API</div>
<div><br>
</div>
<div>2) For deeply nested solvers it can be either inflexible (you assume a structure) or laborious (since</div>
<div>you check for certain structures at each level)</div>
<div><br>
</div>
<div>  Thanks,</div>
<div><br>
</div>
<div>    Matt</div>
</div>
</div>
</div>
</blockquote>
<div><br>
</div>
<div>Thanks Matt! I will use it by setting options. I have one question though: What happens if there are 2 conflicting options? </div>
</div>
</div>
</div>
</blockquote>
</div>
<br>
Last one wins, just like sports.</div>
<div class="gmail_extra"><br>
</div>
<div class="gmail_extra">   Matt<br clear="all">
<div><br>
</div>
-- <br>
<div class="gmail_signature" data-smartmail="gmail_signature">
<div dir="ltr">
<div>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><br>
</div>
<div><a href="http://www.caam.rice.edu/~mk51/" target="_blank">http://www.caam.rice.edu/~mk51/</a><br>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>