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), | public | :: | partnerProc |
Process numbers (rank+1) of partner processes |
|||
type(grw_dynintarray_type), | public | :: | halos |
List of my halo elements, which I request from partnerProc. The growing array follows the same ordering as the partnerProc list. |
type tem_haloList_type !> Process numbers (rank+1) of partner processes type(dyn_intArray_type) :: partnerProc !> List of my halo elements, which I request from partnerProc. !! !! The growing array follows the same ordering as the partnerProc list. type(grw_dynintArray_type) :: halos end type tem_haloList_type