Multi-rank counterpart of process_spectral_110_x_pair_fw: the X paired split, but the partner mode lives on another rank, reached through the dim2 mirror exchange (see exchange_dim2_mirror). Unlike the single-rank kernel this only updates this rank's own modes; the partner rank updates its own copy the same way. At the global Nyquist mode (even grid size) the mirror partner is this rank's own pre-update value, so the formula below self-pairs it exactly as the single-rank kernel does.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| complex(kind=dp), | intent(inout), | device, dimension(:, :, :) | :: | div_u | ||
| complex(kind=dp), | intent(in), | device, dimension(:, :, :) | :: | mirror | ||
| complex(kind=dp), | intent(in), | device, dimension(:, :) | :: | plane | ||
| integer, | intent(in), | value | :: | nz_h | ||
| integer, | intent(in), | value | :: | nx_l | ||
| integer, | intent(in), | value | :: | ny | ||
| integer, | intent(in), | value | :: | x_sp_st | ||
| real(kind=dp), | intent(in), | device, dimension(:) | :: | ax | ||
| real(kind=dp), | intent(in), | device, dimension(:) | :: | bx |