<div dir="ltr"><div dir="ltr">On Tue, Mar 15, 2022 at 9:33 AM Joauma Marichal <<a href="mailto:joauma.marichal@uclouvain.be">joauma.marichal@uclouvain.be</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">
<div style="font-family:Calibri,Arial,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
Hello, <br>
</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
I am writing to you as I am trying to implement a Lagrangian Particle Tracking method to my eulerian solver that relies on a 3D DMDA. To that end, I want to use the DMSwarm library but cannot find much documentation on it. Is there any examples that you would
 recommend for this specific application?  I understood the very basics but do not really understand how to use the following fields: DMSwarm_pid, DMSwarmPIC_coor and DMSwarm_cellid.
<br>
</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
I also understood that particles could be moved from one processor to another using DMSwarm_rank and the migrate functions. However, is there any way to link directly the coordinates of my particle to the processor on which it should be stored?</div></div></blockquote><div><br></div><div>I was trying to do a similar thing. Here is my attempt: <a href="https://gitlab.com/petsc/petsc/-/blob/main/src/ts/tutorials/ex77.c">https://gitlab.com/petsc/petsc/-/blob/main/src/ts/tutorials/ex77.c</a></div><div>It is simple, but hopefully how you integrate the particles in is somewhat clear.</div><div><br></div><div>DMSwarmPIC_coor is the coordinate field, and it is updated by the user. Then you call DMSwarmMigrate() to move the particles to the<br></div><div>appropriate process. DMSwarm_cellid is the cell number of the cell that contains each particle. It is updated by Migrate().</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">
<div style="font-family:Calibri,Arial,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
Thanks a lot for your help. <br>
</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
Best regards,
<div>Joauma</div>
<br>
</div>
</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>