Distributions Template Parameter Method
Method Type |
Distributions |
Math Description |
---|---|---|
uniform_method::standard uniform_method::accurate |
uniform |
Standard method. It involves transforming the output of a generator by scaling and shifting it to fit within the desired interval. uniform_method::accurate checks for additional s and d data types. For integer data types, it uses d as a BRNG data type (sBRNG data type is used in uniform_method::standard method on GPU). |
gaussian_method::box_muller |
gaussian |
Generates normally distributed random number x through the pair of uniformly distributed numbers u1 and u2 according to the formula: |
gaussian_method::box_muller2 |
gaussian |
Generates normally distributed random numbers x1 and x2 through the pair of uniformly distributed numbers u1 and u2 according to the formulas: |
gaussian_method::icdf geometric_method::icdf |
gaussian geometric |
Inverse cumulative distribution function (ICDF) method. |
exponential_method::icdf exponential_method::icdf_accurate |
exponential |
Inverse cumulative distribution function (ICDF) method. |
weibull_method::icdf weibull_method::icdf_accurate |
weibull |
Inverse cumulative distribution function (ICDF) method. |
cauchy_method::icdf |
cauchy |
Inverse cumulative distribution function (ICDF) method. |
rayleigh_method::icdf rayleigh_method::icdf_accurate |
rayleigh |
Inverse cumulative distribution function (ICDF) method. |
lognormal_method::icdf lognormal_method::icdf_accurate |
lognormal |
Inverse cumulative distribution function (ICDF) method. |
lognormal_method::box_muller2 lognormal_method::box_muller2_accurate |
lognormal |
Normally distributed random numbers x1 and x2 are produced through the pair of uniformly distributed numbers u1 and u2 according to the formulas: |
gumbel_method::icdf |
gumbel |
Inverse cumulative distribution function (ICDF) method. |
bernoulli_method::icdf |
bernoulli |
Inverse cumulative distribution function (ICDF) method. |
gamma_method::marsaglia gamma_method::marsaglia_accurate |
gamma |
For |
beta_method::cja beta_method::cja_accurate |
beta |
|
chi_square_method::gamma_based |
chi_square |
(most common): If |
gaussian_mv_method::box_muller gaussian_mv_method::box_muller2 gaussian_mv_method::icdf |
gaussian_mv |
BoxMuller method for multivariate Gaussian distribution. BoxMuller_2 method for multivariate Gaussian distribution. Inverse cumulative distribution function (ICDF) method. |
binomial_method::btpe |
binomial |
Acceptance/rejection method for Two parallelograms Triangle Left exponential tail Right exponential tail |
poisson_method::ptpe |
poisson |
Acceptance/rejection method for Two parallelograms Triangle Left exponential tail Right exponenetial tail |
poisson_method::gaussian_icdf_based poisson_v_method::gaussian_icdf_based |
poissonpoisson_v |
for |
hypergeometric_method::h2pe |
hypergeometric |
Acceptance/rejection method for large mode of distribution with decomposition into three regions: Rectangular Left exponential tail Right exponential tail |
negative_binomial_method::nbar |
negative_binomial |
Acceptance/rejection method for: Rectangular (2) trapezoid Left exponential tail Right exponential tail |
multinomial_method::poisson_icdf_based |
multinomial |
Multinomial distribution with parameters m, k, and a probability vector p. Random numbers of the multinomial distribution are generated by Poisson Approximation method. |