EMPIRE DA  v1.9.1
Data assimilation codes using EMPIRE communication
 All Classes Files Functions Variables Pages
random Module Reference

A module for random number generation from the following distributions: More...

Public Member Functions

real(kind=kind(1.0d+0)) function random_normal ()
 function to get random normal with zero mean and stdev 1 More...
 
real(kind=kind(1.0d+0)) function random_gamma (s, first)
 
real(kind=kind(1.0d+0)) function random_gamma1 (s, first)
 
real(kind=kind(1.0d+0)) function random_gamma2 (s, first)
 
real(kind=kind(1.0d+0)) function random_chisq (ndf, first)
 
real(kind=kind(1.0d+0)) function random_exponential ()
 
real(kind=kind(1.0d+0)) function random_weibull (a)
 
real(kind=kind(1.0d+0)) function random_beta (aa, bb, first)
 
real(kind=kind(1.0d+0)) function random_t (m)
 
subroutine random_mvnorm (n, h, d, f, first, x, ier)
 
real(kind=kind(1.0d+0)) function random_inv_gauss (h, b, first)
 
integer function random_poisson (mu, first)
 
integer function random_binomial1 (n, p, first)
 
real(kind=kind(1.0d+0)) function bin_prob (n, p, r)
 
real(dp) function lngamma (x)
 
integer function random_binomial2 (n, pp, first)
 
integer function random_neg_binomial (sk, p)
 
real(kind=kind(1.0d+0)) function random_von_mises (k, first)
 
real(kind=kind(1.0d+0)) function random_cauchy ()
 
subroutine random_order (order, n)
 
subroutine seed_random_number (iounit)
 

Public Attributes

integer, parameter dp = SELECTED_REAL_KIND(12, 60)
 

Detailed Description

A module for random number generation from the following distributions:

Distribution Function/subroutine name

Normal (Gaussian) random_normal Gamma random_gamma Chi-squared random_chisq Exponential random_exponential Weibull random_Weibull Beta random_beta t random_t Multivariate normal random_mvnorm Generalized inverse Gaussian random_inv_gauss Poisson random_Poisson Binomial random_binomial1 * random_binomial2 * Negative binomial random_neg_binomial von Mises random_von_Mises Cauchy random_Cauchy

Definition at line 22 of file random_d.f90.

Member Function/Subroutine Documentation

real(kind=kind(1.0d+0)) function random::bin_prob ( integer, intent(in)  n,
real(kind=kind(1.0d+0)), intent(in)  p,
integer, intent(in)  r 
)

Definition at line 1000 of file random_d.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

real (dp) function random::lngamma ( real (dp), intent(in)  x)

Definition at line 1018 of file random_d.f90.

Here is the caller graph for this function:

real(kind=kind(1.0d+0)) function random::random_beta ( real(kind=kind(1.0d+0)), intent(in)  aa,
real(kind=kind(1.0d+0)), intent(in)  bb,
logical, intent(in)  first 
)

Definition at line 371 of file random_d.f90.

integer function random::random_binomial1 ( integer, intent(in)  n,
real(kind=kind(1.0d+0)), intent(in)  p,
logical, intent(in)  first 
)

Definition at line 923 of file random_d.f90.

Here is the call graph for this function:

integer function random::random_binomial2 ( integer, intent(in)  n,
real(kind=kind(1.0d+0)), intent(in)  pp,
logical, intent(in)  first 
)

Definition at line 1082 of file random_d.f90.

real(kind=kind(1.0d+0)) function random::random_cauchy ( )

Definition at line 1517 of file random_d.f90.

real(kind=kind(1.0d+0)) function random::random_chisq ( integer, intent(in)  ndf,
logical, intent(in)  first 
)

Definition at line 308 of file random_d.f90.

Here is the call graph for this function:

real(kind=kind(1.0d+0)) function random::random_exponential ( )

Definition at line 324 of file random_d.f90.

Here is the caller graph for this function:

real(kind=kind(1.0d+0)) function random::random_gamma ( real(kind=kind(1.0d+0)), intent(in)  s,
logical, intent(in)  first 
)

Definition at line 154 of file random_d.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

real(kind=kind(1.0d+0)) function random::random_gamma1 ( real(kind=kind(1.0d+0)), intent(in)  s,
logical, intent(in)  first 
)

Definition at line 189 of file random_d.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

real(kind=kind(1.0d+0)) function random::random_gamma2 ( real(kind=kind(1.0d+0)), intent(in)  s,
logical, intent(in)  first 
)

Definition at line 238 of file random_d.f90.

Here is the caller graph for this function:

real(kind=kind(1.0d+0)) function random::random_inv_gauss ( real(kind=kind(1.0d+0)), intent(in)  h,
real(kind=kind(1.0d+0)), intent(in)  b,
logical, intent(in)  first 
)

Definition at line 610 of file random_d.f90.

subroutine random::random_mvnorm ( integer, intent(in)  n,
real(kind=kind(1.0d+0)), dimension(:), intent(in)  h,
real(kind=kind(1.0d+0)), dimension(:), intent(in)  d,
real(kind=kind(1.0d+0)), dimension(:), intent(inout)  f,
logical, intent(in)  first,
real(kind=kind(1.0d+0)), dimension(:), intent(out)  x,
integer, intent(out)  ier 
)

Definition at line 509 of file random_d.f90.

Here is the call graph for this function:

integer function random::random_neg_binomial ( real(kind=kind(1.0d+0)), intent(in)  sk,
real(kind=kind(1.0d+0)), intent(in)  p 
)

Definition at line 1314 of file random_d.f90.

real(kind=kind(1.0d+0)) function random::random_normal ( )

function to get random normal with zero mean and stdev 1

Returns
fn_val

Definition at line 108 of file random_d.f90.

Here is the caller graph for this function:

subroutine random::random_order ( integer, dimension(n), intent(out)  order,
integer, intent(in)  n 
)

Definition at line 1539 of file random_d.f90.

integer function random::random_poisson ( real(kind=kind(1.0d+0)), intent(in)  mu,
logical, intent(in)  first 
)

Definition at line 681 of file random_d.f90.

Here is the call graph for this function:

real(kind=kind(1.0d+0)) function random::random_t ( integer, intent(in)  m)

Definition at line 448 of file random_d.f90.

real(kind=kind(1.0d+0)) function random::random_von_mises ( real(kind=kind(1.0d+0)), intent(in)  k,
logical, intent(in)  first 
)

Definition at line 1389 of file random_d.f90.

real(kind=kind(1.0d+0)) function random::random_weibull ( real(kind=kind(1.0d+0)), intent(in)  a)

Definition at line 351 of file random_d.f90.

Here is the call graph for this function:

subroutine random::seed_random_number ( integer, intent(in)  iounit)

Definition at line 1573 of file random_d.f90.

Member Data Documentation

integer, parameter random::dp = SELECTED_REAL_KIND(12, 60)

Definition at line 101 of file random_d.f90.


The documentation for this module was generated from the following file: