<div dir="ltr"><div><div><div><div><div><div><div>Hello Flash Users,<br><br></div>      I'm currently running with multiple particle types, one of which is sink particles. I've been debugging some of my own code, and in the process came across the following in Particles_sinkSyncWithParticles.F90 (note in the first call there is no mention of BLK_PART_PROP in the call):<br><span style="font-family:monospace"><br>#ifdef TYPE_PART_PROP<br>  call Grid_sortParticles(particles,NPART_PROPS,pt_numLocal,NPART_TYPES, &<br>       pt_maxPerProc,particlesPerBlk,TYPE_PART_PROP)<br>#else<br>  call Grid_sortParticles(particles,NPART_PROPS,pt_numLocal,NPART_TYPES, &<br>       pt_maxPerProc,particlesPerBlk,BLK_PART_PROP)<br>#endif<br>  ! Now update the pt_typeInfo data structure<br>  call pt_updateTypeDS(particlesPerBlk)</span><br><br></div>However, in other places in the code I normally see (like in Particles_advance.F90 here):<br><span style="font-family:monospace"><br>  ! Sort particles there so we only have to move the minimum of them.<br>  !  Sort by type, and then within each sort by block<br><br>#ifdef TYPE_PART_PROP<br>  call Grid_sortParticles(particles,NPART_PROPS,pt_numLocal,NPART_TYPES, &<br>       pt_maxPerProc,particlesPerBlk,BLK_PART_PROP, TYPE_PART_PROP)<br>#else<br>  call Grid_sortParticles(particles,NPART_PROPS,pt_numLocal,NPART_TYPES, &<br>       pt_maxPerProc,particlesPerBlk,BLK_PART_PROP)<br>#endif</span><br><br><br>as well as in the description of pt_updateTypeDS I see:<br><span style="font-family:monospace"><br>!! NOTES<br>!!   The values are actually calculated already in Grid_sortParticles but<br>!!   encapsulation rules make recalculating there here easier than passing them<br>!!   back and forth in data, etc.<br>!!<br>!!   If there is only one particle type, the operation is trivial.<br>!!   Otherwise, it is assumed that particles are sorted with the particle<br>!!   type as the sort key of highest priority, as in<br>!!<br>!!      call Grid_sortParticles(particles,NPART_PROPS,pt_numLocal,NPART_TYPES, &<br>!!           pt_maxPerProc,particlesPerBlk,BLK_PART_PROP, TYPE_PART_PROP)<br><br></span></div><span style="font-family:monospace"><font face="sans-serif">So my question is basically, should Particles_sinkSyncWithParticles be modified to include the BLK_PART_PROP <br>in the call to Grid_sortParticles when TYPE_PART_PROP is defined as</font></span><span style="font-family:monospace"><font face="sans-serif"> seen in other sections of the code? Doing <br>so in my case seems to fix a problem where sinks and a second particle type</font></span><br><span style="font-family:monospace"></span></div></div><span style="font-family:monospace"><font face="sans-serif">appear to get their places exchanged in the particles array after a particle file is written (which calls Particles_sinkSyncWithParticles).<br><br></font></span></div><span style="font-family:monospace"><font face="sans-serif">Cordially,<br><br></font></span></div><span style="font-family:monospace"><font face="sans-serif">Josh<br></font></span></div><div dir="ltr">-- <br></div><div data-smartmail="gmail_signature"><div dir="ltr"><div><div><div><div><div>Joshua Wall<br></div>Doctoral Candidate<br></div>Department of Physics<br></div>Drexel University<br></div>3141 Chestnut Street<br></div>Philadelphia, PA 19104<br></div></div>