<div dir="ltr">Cosima<div><br></div><div>This information is available from Carpet. Carpet maintains a &quot;grid hierarchy&quot; gh, and if you use AMR, there will be a single gh that you can look up in Carpet, probably as &quot;Carpet::<a href="http://vhh.at">vhh.at</a>(0)&quot; (this is C++ code). This grid hierarchy contains the information you want -- you can look up which regions exist, to which process they are assigned, and you can also look up on which region (and thus on which process) a particular point is located.</div><div><br></div><div>Having said this -- are you sure that this will save a noticeable amount of time compared to letting Carpet handle the interpolation? Did you benchmark your current implementation? If you leave out the interpolation in your current implementation, how much time do you save?</div><div><br></div><div>I&#39;d be happy to discuss further. A good venue would e.g. be one of the Einstein Toolkit telecons that we have on Mondays. (I might not attend next Monday because I&#39;ll be at SC16.)</div><div><br></div><div>-erik</div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Nov 10, 2016 at 8:54 AM,  <span dir="ltr">&lt;<a href="mailto:breu@th.physik.uni-frankfurt.de" target="_blank">breu@th.physik.uni-frankfurt.de</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Dear users of the Einstein Toolkit,<br>
<br>
I have a question: I would like to integrate the geodesic equations for a<br>
large quantity of particles in parallel (e.g. one million). To save<br>
computational time, I want to make sure that the arrays containing the<br>
particle data are handled by the same process that takes care of the<br>
corresponding grid patch on which the particles are moving and only<br>
communicate particle data if a particle moves to another grid patch.<br>
<br>
Since I only want a process to communicate with the processes that contain<br>
the adjacent grid patches, can I access information on which process owns<br>
which grid patch and if yes, how?<br>
<br>
So far I have only found functions that return the upper and lower bounds<br>
for the local process, but each process would need to know where all the<br>
rest of the grid is.<br>
<br>
Kind regards,<br>
<br>
Cosima Breu<br>
<br>
______________________________<wbr>_________________<br>
Users mailing list<br>
<a href="mailto:Users@einsteintoolkit.org">Users@einsteintoolkit.org</a><br>
<a href="http://lists.einsteintoolkit.org/mailman/listinfo/users" rel="noreferrer" target="_blank">http://lists.einsteintoolkit.<wbr>org/mailman/listinfo/users</a><br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature">Erik Schnetter &lt;<a href="mailto:schnetter@cct.lsu.edu" target="_blank">schnetter@cct.lsu.edu</a>&gt;<br><a href="http://www.perimeterinstitute.ca/personal/eschnetter/" target="_blank">http://www.perimeterinstitute.ca/personal/eschnetter/</a></div>
</div>