<div>On Wed, 19 Jun 2019 at 08:37, Matthew Knepley via petsc-users <<a href="mailto:petsc-users@mcs.anl.gov">petsc-users@mcs.anl.gov</a>> wrote:<br></div><div><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 dir="ltr">On Mon, Jun 17, 2019 at 9:49 PM Swarnava Ghosh <<a href="mailto:swarnava89@gmail.com" target="_blank">swarnava89@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">Hi Matthew,<div><br></div><div>I am primarily trying to interpolate fields which are defined on vertices. For a process, the point at which the interpolation to be carried out can be in an element that is owned by another process. My initial plan while writing the earlier email was to create local dmplexes in each rank which contains all the elements that are required for interpolation. However on second thoughts, this is too cumbersome.</div></div></blockquote><div><br></div><div>Thanks. This is much clearer to me now.</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"><div>What might be potentially better approach (ofcourse you will be an expert to judge) is to simply extend the ghost region to include the elements of the neighbor processes. In this way the points to interpolate at lie in the ghost region of the process. Is there a way I could extend the ghost region if I know the neighbor ranks?</div></div></blockquote><div><br></div><div>I see at least two cases:</div><div><br></div><div>  1) Only a few points, anywhere in the domain</div><div><br></div><div>      If you have a few points that can be anywhere in the domain, I would use</div><div><br></div><div>        <a href="https://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/SNES/DMInterpolationCreate.html#DMInterpolationCreate" target="_blank">https://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/SNES/DMInterpolationCreate.html#DMInterpolationCreate</a></div></div></div></blockquote><div dir="auto"><br></div><div dir="auto">Does this work in parallel? If I look at the implementation here: <div><a href="https://www.mcs.anl.gov/petsc/petsc-current/src/dm/impls/plex/plexgeometry.c.html#DMLocatePoints_Plex">https://www.mcs.anl.gov/petsc/petsc-current/src/dm/impls/plex/plexgeometry.c.html#DMLocatePoints_Plex</a></div><div dir="auto"><br></div><div dir="auto">It seems it complains unless run on comm_self.</div><div dir="auto"><br></div><div dir="auto">Cheers, </div><div dir="auto"><br></div><div dir="auto">Lawrence</div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_quote"><div></div></div></div></blockquote></div></div>