Description of communication data for particles Will be a member of the particleGroup data type that exists on each process particleGroup%send for sendbuffer particleGroup%recv for recvbuffer
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer, | public | :: | nProcs | = | 0 | ||
| integer, | public, | allocatable | :: | proc(:) |
partition MPI rank |
||
| integer, | public, | allocatable | :: | rqHandle(:) |
Request handle array |
||
| integer, | public, | allocatable | :: | rqHandle2(:) |
2nd Request handle array so we can receive multiple KINDS of messages simultaneously |
||
| type(mus_particles_vectorbuffer_type), | public, | allocatable | :: | buf_force(:) |
communication buffer for force contributions |
||
| type(mus_particles_posbuffer_type), | public, | allocatable | :: | buf_pos(:) |
communication buffer for position updates (inc. coordOfOrigin) |
||
| type(mus_particles_vectorbuffer_type), | public, | allocatable | :: | buf_vec(:) |
communication buffer for velocity updates |
||
| type(mus_particles_wallbuffer_type), | public, | allocatable | :: | buf_wall(:) |
communication buffer for wall positions |
||
| type(mus_particles_statebuffer_type), | public, | allocatable | :: | buf_state(:) |
communication buffer for particle state (= position + velocity + origin) |
||
| type(mus_particles_IDbuffer_type), | public, | allocatable | :: | buf_kill(:) |
communication buffer for IDs of particles to be removed/killed |
||
| type(mus_particles_infobuffer_type), | public, | allocatable | :: | buf_particle(:) |
communication buffer for all particle data together |