Data structure to store the halo elements according to the partner process with which they need to be exchanged.
Partner processes are identified by their number (rank+1), and stored in a dynamic array of integers (partnerProc). For each partnerProc there is a dynamic array of halo element ids, stored in a growing array of dynamic integer arrays (halos).
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
type(dyn_intarray_type), | private | :: | partnerProc | Process numbers (rank+1) of partner processes |
|||
type(grw_dynintarray_type), | private | :: | halos | List of my halo elements, which I request from partnerProc. The growing array follows the same ordering as the partnerProc list. |