ConstructLimitedRandomPermutation Subroutine

public subroutine ConstructLimitedRandomPermutation(this, actual_matrix_dimension, logical_matrix_dimension, process_grid_in)

Constructs a permutation that has a random order, but there is no permutation from beyond the actual matrix dimension.

Arguments

Type IntentOptional Attributes Name
type(Permutation_t), intent(inout) :: this

The permutation to construct.

integer, intent(in) :: actual_matrix_dimension

Actual size of the matrix.

integer, intent(in) :: logical_matrix_dimension

Padded size of the matrix.

type(ProcessGrid_t), intent(inout), optional :: process_grid_in

A permutation should be shared amongst these processes. This is to synchronize random number across processes.


Contents