S3L_trans performs a generalized transposition of a parallel array. A generalized transposition is defined as a general permutation of the axes. The array axis_perm contains a description of the permutation to be performed.
The distribution characteristics of a and b must be compatible--that is, they must have the same rank and type and corresponding axes must be of the same length.
A faster algorithm is used in the 2D case when the array meets the following conditions:
The first axis of the array is local.
The second axis of the array is global.
The size of each dimension is divisible by the number of processes.
The blocksizes are equal to the result of the division.