<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Jul 5, 2023 at 11:29 AM Khurana, Parv <<a href="mailto:p.khurana22@imperial.ac.uk">p.khurana22@imperial.ac.uk</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="msg-6281710636080213084">





<div lang="EN-GB" style="overflow-wrap: break-word;">
<div class="m_-6281710636080213084WordSection1">
<p class="MsoNormal">Hello PETSc users,<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">I am fairly inexperienced with PETSc as of now and am new to the mailing list! Thanks for running this channel.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">I seek basic help regarding running AMG routines (BoomerAMG/ML/GAMG). I am trying to compare the performance of solving a Poisson problem using a AMG Preconditioned GMRES iterative solve vs using AMG as the solver. I use PETSc options using
 the options database keys as of now, and it is connected to a flow solver (Nektar++) I use for my research.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">I currently run the AMG Preconditioned GMRES iterative solve by setting
<span style="font-family:"Courier New"">-ksp_type gmres</span> and then specifying the preconditioner I want using, for e.g, -<span style="font-family:"Courier New"">pc_type hypre -pc_hypre_type boomeramg</span>. </p></div></div></div></blockquote><div><br></div><div>Looks good. You need to configure with --download-hypre and you should be good to go. </div><div>You can also try -<span style="font-family:"Courier New"">pc_type gamg</span></div><div>You can also try -<span style="font-family:"Courier New"">pc_type ml</span></div><br class="gmail-Apple-interchange-newline"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="msg-6281710636080213084"><div lang="EN-GB" style="overflow-wrap: break-word;"><div class="m_-6281710636080213084WordSection1"><p class="MsoNormal">If I want to use the AMG routine, I am currently
 setting <span style="font-family:"Courier New"">-ksp_type preonly</span> and the same
<span style="font-family:"Courier New"">-pc_type</span>. </p></div></div></div></blockquote><div><br></div><div>I am not understanding this. You just said you use <span style="font-family:"Courier New"">-ksp_type gmres.</span></div><div><span style="font-family:"Courier New"">Stick with that!</span></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="msg-6281710636080213084"><div lang="EN-GB" style="overflow-wrap: break-word;"><div class="m_-6281710636080213084WordSection1"><p class="MsoNormal">However, I am not sure if this is correct way to go about it due to two reasons:  a) my solution using AMG as a solver with these options has a larger error than AMG Preconditioned GMRES (which could
 still be acceptable), and b) I could not find any clear documentation regarding how to use AMG directly as a solver. I saw some hints in the examples here
<a href="https://petsc.org/main/tutorials/handson/" target="_blank">https://petsc.org/main/tutorials/handson/#</a>, but it hasn’t helped me.
<u></u><u></u></p>
<p class="MsoNormal"><u></u> </p></div></div></div></blockquote><div><br></div><div>There are a lot of solver examples in the code base. </div><div>eg,</div><div><br></div><div>src/snes/tutorials/ex19.c:      args: -da_refine 5 -snes_monitor -snes_converged_reason -pc_type hypre -dm_mat_type {{aij baij}}<br></div><div><br></div><div>There are regression tests in a big comment block at the end of each example file. You can use these as examples.</div><div><br></div><div>Good luck,</div><div>Mark</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="msg-6281710636080213084"><div lang="EN-GB" style="overflow-wrap: break-word;"><div class="m_-6281710636080213084WordSection1"><p class="MsoNormal"><u></u></p>
<p class="MsoNormal">Any hints on how to use AMG directly as a solver?<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Best<u></u><u></u></p>
<p class="MsoNormal">Parv<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
</div>

</div></blockquote></div></div>