exchangeNewParticles sends all the data needed to initialize a particle on a process. This is needed when a particle travels from one process to another. The data is used to add the particle to the receiving process particleGroup. This only creates a continuous representation of the particle on the receiving process. A subsequent call to a different routine then maps this to the discrete representation in the form of elements in the exclusionList.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(mus_particle_group_type), | intent(inout) | :: | this |
particleGroup of this process |
||
| type(mus_particles_communication_type), | intent(inout) | :: | send |
Communication type for sending force contributions |
||
| type(mus_particles_communication_type), | intent(inout) | :: | recv |
Communication type for receiving force contributions |
||
| integer, | intent(in) | :: | comm |
MPI communicator |
||
| integer, | intent(in) | :: | myRank |
Rank of this process |
||
| integer, | intent(in) | :: | message_flag |
Flag for message (in Musubi this is just iLevel, don't think we really need this here) |