SF_RANDOM

Description

SciFortran module for RNG

Quick access

Routines:

mersenne_init(), mt_init(), mersenne(), mt_random(), mt_uniform(), mt_normal(), mt_exponential(), mt_gamma(), mt_chi_square(), mt_inverse_gamma(), mt_weibull(), mt_cauchy(), mt_student_t(), mt_laplace(), mt_log_normal(), mt_beta(), mt_save(), mt_get(), random_number_init(), random_number_seed(), random_normal(), random_gamma(), random_gamma1(), random_gamma2(), random_chisq(), random_exponential(), random_weibull(), random_beta(), random_inv_gauss(), random_poisson(), random_binomial1(), bin_prob(), lngamma(), random_binomial2(), random_neg_binomial(), random_von_mises(), random_cauchy(), nrand(), random_order()

Subroutines and functions

interface  sf_random/mersenne_init(seed)
Parameters:

seed [integer, in]

interface  sf_random/mt_init(seed)
Parameters:

seed [integer, in]

interface  sf_random/mersenne()
interface  sf_random/mt_random(a)
Parameters:

a (various shapes) [real, complex]

interface  sf_random/mt_uniform(l, h, a, b)
Parameters:
  • l [integer, in]

  • h [integer, in]

  • a [real]

  • b [real]

interface  sf_random/mt_normal(mean, stdev)
Parameters:
  • mean [real]

  • stdev [real]

interface  sf_random/mt_exponential(mean)
Parameters:

mean [real]

interface  sf_random/mt_gamma(shape, scale)
Parameters:
  • shape [real]

  • scale [real]

interface  sf_random/mt_chi_square(dof)
Parameters:

dof [real]

interface  sf_random/mt_inverse_gamma(shape, scale)
Parameters:
  • shape [real]

  • scale [real]

interface  sf_random/mt_weibull(shape, scale)
Parameters:
  • shape [real]

  • scale [real]

interface  sf_random/mt_cauchy(median, scale)
Parameters:
  • median [real]

  • scale [real]

interface  sf_random/mt_student_t(dof)
Parameters:

dof [real]

interface  sf_random/mt_laplace(mean, scale)
Parameters:
  • mean [real]

  • scale [real]

interface  sf_random/mt_log_normal(mu, sigma)
Parameters:
  • mu [real]

  • sigma [real]

interface  sf_random/mt_beta(a, b)
Parameters:
  • a [real]

  • b [real]

interface  sf_random/mt_save(fname, forma, unum)
Parameters:
  • fname [character(len=*), in]

  • forma [character, in]

  • unum [integer, in]

interface  sf_random/mt_get(fname, forma, unum)
Parameters:
  • fname [character(len=*), in]

  • forma [character, in]

  • unum [integer, in]

subroutine  sf_random/random_number_init([shift])
Options:

shift [integer]

function  sf_random/random_number_seed([info, file])
Options:
  • info [integer, in]

  • file [integer, in]

Return:

random_number_seed [integer]

function  sf_random/random_normal()
Return:

fn_val [real]

function  sf_random/random_gamma(s, first)
Parameters:
  • s [real, in]

  • first [logical, in]

Return:

fn_val [real]

function  sf_random/random_gamma1(s, first)
Parameters:
  • s [real, in]

  • first [logical, in]

Return:

fn_val [real]

function  sf_random/random_gamma2(s, first)
Parameters:
  • s [real, in]

  • first [logical, in]

Return:

fn_val [real]

function  sf_random/random_chisq(ndf, first)
Parameters:
  • ndf [integer, in]

  • first [logical, in]

Return:

fn_val [real]

function  sf_random/random_exponential()
Return:

fn_val [real]

function  sf_random/random_weibull(a)
Parameters:

a [real, in]

Return:

fn_val [real]

function  sf_random/random_beta(aa, bb, first)
Parameters:
  • aa [real, in]

  • bb [real, in]

  • first [logical, in]

Return:

fn_val [real]

function  sf_random/random_inv_gauss(h, b, first)
Parameters:
  • h [real, in]

  • b [real, in]

  • first [logical, in]

Return:

fn_val [real]

function  sf_random/random_poisson(mu, first)
Parameters:
  • mu [real, in]

  • first [logical, in]

Return:

ival [integer]

function  sf_random/random_binomial1(n, p, first)
Parameters:
  • n [integer, in]

  • p [real, in]

  • first [logical, in]

Return:

ival [integer]

function  sf_random/bin_prob(n, p, r)
Parameters:
  • n [integer, in]

  • p [real, in]

  • r [integer, in]

Return:

fn_val [real]

function  sf_random/lngamma(x)
Parameters:

x [real, in]

Return:

fn_val [real]

function  sf_random/random_binomial2(n, pp, first)
Parameters:
  • n [integer, in]

  • pp [real, in]

  • first [logical, in]

Return:

ival [integer]

function  sf_random/random_neg_binomial(sk, p)
Parameters:
  • sk [real, in]

  • p [real, in]

Return:

ival [integer]

function  sf_random/random_von_mises(k, first)
Parameters:
  • k [real, in]

  • first [logical, in]

Return:

fn_val [real]

function  sf_random/random_cauchy()
Return:

fn_val [real]

function  sf_random/nrand([dseed_])
Options:

dseed [integer]

Return:

nrand [real]

subroutine  sf_random/random_order(order, n)

generate a random ordering of the integers 1 … n.

Parameters:
  • order (n) [integer, out]

  • n [integer, in]