randind Interface

public interface randind

Procedure for generating a random array index/subscripts

Called by

interface~~randind~~CalledByGraph interface~randind randind proc~mc_fastion mc_fastion proc~mc_fastion->interface~randind proc~mc_fastion_pass_grid mc_fastion_pass_grid proc~mc_fastion_pass_grid->interface~randind proc~fida_weights_mc fida_weights_mc proc~fida_weights_mc->interface~randind proc~fida_f fida_f proc~fida_f->proc~mc_fastion proc~pnpa_f pnpa_f proc~pnpa_f->proc~mc_fastion_pass_grid proc~pfida_f pfida_f proc~pfida_f->proc~mc_fastion_pass_grid proc~npa_f npa_f proc~npa_f->proc~mc_fastion program~fidasim fidasim program~fidasim->proc~fida_weights_mc program~fidasim->proc~fida_f program~fidasim->proc~pnpa_f program~fidasim->proc~pfida_f program~fidasim->proc~npa_f

Contents


Module Procedures

private subroutine randind_n(n, randomi)

Generate a array of uniformally-distributed random integers in the range [1, n]

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: n

Largest possible value

integer, intent(out), dimension(:):: randomi

Array of uniform deviates

private subroutine randind_w_1(w, randomi)

Generate an array of random indices of an 1D array distributed according to w

Arguments

Type IntentOptional AttributesName
real(kind=Float64), intent(in), dimension(:):: w

1D array of index weights

integer, intent(out), dimension(:):: randomi

Random indices

private subroutine randind_w_2(w, randomi)

Generate an array of random subscripts of an 2D array distributed according to w

Arguments

Type IntentOptional AttributesName
real(kind=Float64), intent(in), dimension(:,:):: w

2D array of subscript weights

integer, intent(out), dimension(:,:):: randomi

A 2D (ndim, :) array of random subscripts

private subroutine randind_w_3(w, randomi)

Generate an array of random subscripts of an 3D array distributed according to w

Arguments

Type IntentOptional AttributesName
real(kind=Float64), intent(in), dimension(:,:,:):: w

3D array of subscript weights

integer, intent(out), dimension(:,:):: randomi

A 2D (ndim, :) array of random subscripts

private subroutine randind_w_4(w, randomi)

Generate an array of random subscripts of an 4D array distributed according to w

Arguments

Type IntentOptional AttributesName
real(kind=Float64), intent(in), dimension(:,:,:,:):: w

4D array of subscript weights

integer, intent(out), dimension(:,:):: randomi

A 2D (ndim, :) array of random subscripts

private subroutine randind_w_5(w, randomi)

Generate an array of random subscripts of an 5D array distributed according to w

Arguments

Type IntentOptional AttributesName
real(kind=Float64), intent(in), dimension(:,:,:,:,:):: w

5D array of subscript weights

integer, intent(out), dimension(:,:):: randomi

A 2D (ndim, :) array of random subscripts

private subroutine randind_r_n(r, n, randomi)

Generate a array of uniformally-distributed random integers in the range [1, n]

Arguments

Type IntentOptional AttributesName
type(rng_type), intent(inout) :: r

Random Number Generator

integer, intent(in) :: n

Largest possible value

integer, intent(out), dimension(:):: randomi

Array of uniform deviates

private subroutine randind_r_w_1(r, w, randomi)

Generate an array of random indices of an 1D array distributed according to w

Arguments

Type IntentOptional AttributesName
type(rng_type), intent(inout) :: r

Random Number Generator

real(kind=Float64), intent(in), dimension(:):: w

1D array of index weights

integer, intent(out), dimension(:):: randomi

Random indices

private subroutine randind_r_w_2(r, w, randomi)

Generate an array of random subscripts of an 2D array distributed according to w

Arguments

Type IntentOptional AttributesName
type(rng_type), intent(inout) :: r

Random Number Generator

real(kind=Float64), intent(in), dimension(:,:), target:: w

2D array of subscript weights

integer, intent(out), dimension(:,:):: randomi

A 2D (ndim, :) array of random subscripts

private subroutine randind_r_w_3(r, w, randomi)

Generate an array of random subscripts of an 3D array distributed according to w

Arguments

Type IntentOptional AttributesName
type(rng_type), intent(inout) :: r

Random Number Generator

real(kind=Float64), intent(in), dimension(:,:,:), target:: w

3D array of subscript weights

integer, intent(out), dimension(:,:):: randomi

A 2D (ndim, :) array of random subscripts

private subroutine randind_r_w_4(r, w, randomi)

Generate an array of random subscripts of an 4D array distributed according to w

Arguments

Type IntentOptional AttributesName
type(rng_type), intent(inout) :: r

Random Number Generator

real(kind=Float64), intent(in), dimension(:,:,:,:), target:: w

4D array of subscript weights

integer, intent(out), dimension(:,:):: randomi

A 2D (ndim, :) array of random subscripts

private subroutine randind_r_w_5(r, w, randomi)

Generate an array of random subscripts of an 5D array distributed according to w

Arguments

Type IntentOptional AttributesName
type(rng_type), intent(inout) :: r

Random Number Generator

real(kind=Float64), intent(in), dimension(:,:,:,:,:), target:: w

5D array of subscript weights

integer, intent(out), dimension(:,:):: randomi

A 2D (ndim, :) array of random subscripts