<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Tue, Jul 19, 2016 at 9:53 PM, Safin, Artur <span dir="ltr"><<a href="mailto:aks084000@utdallas.edu" target="_blank">aks084000@utdallas.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">
<div style="word-wrap:break-word">
Hello,
<div><br>
</div>
<div>In order to achieve reasonable performance for Helmholtz with PML, Erlangga in his paper used</div>
<div><br>
</div>
<div>1) Matrix dependent interpolation in the multigrid. The operators are nonlinear, for example an intermediate computation reads something like</div>
<div><span style="white-space:pre-wrap"></span>d = max(|a+c|, |b|, …)</div></div></blockquote><div><br></div><div>You can use this <a href="http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/PC/PCMGSetInterpolation.html">http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/PC/PCMGSetInterpolation.html</a></div><div>to set your own interpolation operators.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div style="word-wrap:break-word">
<div>2) Full weighting (This is linear, so I believe I can achieve that with <i>PCMGSetRestriction</i>).</div>
<div><br>
</div>
<div>3) F-cycle with one pre- and postsmoothing with the Jacobi iteration and relaxation factor ω = 0.5.</div></div></blockquote><div><br></div><div>-pc_mg_type full</div><div>-pc_mg_smoothup 1</div><div>-pc_mg_smoothdown 1</div><div>-mg_levels_pc_type sor</div><div>-mg_leves_pc_sor_omega 0.5</div><div><br></div><div>and use -ksp_view to check that you have what you want.</div><div><br></div><div> Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div style="word-wrap:break-word">
<div>I am not sure how to do 1 & 3 in PETSc. Can anyone suggest a way of implementing these?</div>
<div><br>
</div>
<div>Thanks,</div>
<div><br>
</div>
<div>Artur</div>
<div><br>
</div>
<div>PS. for anyone curious, the paper is "Advances in Iterative Methods and Preconditioners for the Helmholtz Equation"</div>
</div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature">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></div>