ConstructRandomPermutation Subroutine

public subroutine ConstructRandomPermutation(this, matrix_dimension, process_grid_in)

Constructs a permutation that has a random order. Implements Knuth shuffle.

Arguments

Type IntentOptional AttributesName
type(Permutation_t), intent(inout) :: this

A permutation that reverses the original order.

integer, intent(in) :: matrix_dimension

The 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

None