<div dir="ltr"><div dir="ltr">On Thu, Dec 15, 2022 at 10:10 PM Mike Michell <<a href="mailto:mi.mike1021@gmail.com">mi.mike1021@gmail.com</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Hello PETSc developer team,<br><br>I am a user of DMPlex in PETSc with Fortran. I have two questions:<br><br>- Is DMLocalToLocal() now available for DMPlex with Fortran? I made similar inquiry before:<br><a href="https://www.mail-archive.com/petsc-users@mcs.anl.gov/msg44500.html" target="_blank">https://www.mail-archive.com/petsc-users@mcs.anl.gov/msg44500.html</a></div></blockquote><div><br></div><div>There is a DMDA example (<a href="https://gitlab.com/petsc/petsc/-/blob/main/src/dm/tutorials/ex13f90.F90">https://gitlab.com/petsc/petsc/-/blob/main/src/dm/tutorials/ex13f90.F90</a>) so</div><div>the Fortran binding works. However, there is no Plex implementation. I can add it to the TODO list.</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 dir="ltr">- Is there any example that can see how DMCoarsen() works? I can see either src/dm/impls/stag/tutorials/ex4.c  or  src/ksp/ksp/tutorials/ex65.c from the example folder. However, it is a bit tough to get an idea of how DMCoarsen() works. What can be the "coarsening" criteria? Is it uniformly coarsening over the domain? or Can it be variable-gradient based? Having more examples would be very helpful.<br></div></blockquote><div><br></div><div>DMCoarsen really only applies to more structured grids. There is a definition for unstructured grids, and we have written a paper</div><div>about it (<a href="https://arxiv.org/abs/1104.0261">https://arxiv.org/abs/1104.0261</a>), but that code could not be maintained and was difficult to generalize. Right now, if you want</div><div>unstructured coarsening, I would recommend trying DMPlexAdaptMetric() which works with MMG, or DMPlexAdaptLabel() which works</div><div>with p4est.</div><div><br></div><div>  Thanks,</div><div><br></div><div>     Matt</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 dir="ltr">Thanks,<br>Mike<br></div>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><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.cse.buffalo.edu/~knepley/" target="_blank">https://www.cse.buffalo.edu/~knepley/</a><br></div></div></div></div></div></div></div></div>