public final class RandomVariates extends java.util.Random implements RevisionHandler
Constructor and Description |
---|
RandomVariates()
Simply the constructor of super class
|
RandomVariates(long seed)
Simply the constructor of super class
|
Modifier and Type | Method and Description |
---|---|
java.lang.String |
getRevision()
Returns the revision string.
|
static void |
main(java.lang.String[] ops)
Main method for testing this class.
|
double |
nextErlang(int a)
Generate a value of a variate following standard Erlang distribution.
|
double |
nextExponential()
Generate a value of a variate following standard exponential
distribution using simple inverse method.
|
double |
nextGamma(double a)
Generate a value of a variate following standard Gamma distribution
with shape parameter a.
|
public RandomVariates()
public RandomVariates(long seed)
seed
- the seed in this random objectpublic double nextExponential()
Variates related to standard Exponential can be generated using simple transformations.
public double nextErlang(int a) throws java.lang.Exception
nextGamma(double a)
instead.a
- the shape parameter, must be no less than 1java.lang.Exception
- if parameter less than 1public double nextGamma(double a) throws java.lang.Exception
If a>1, it uses a rejection method developed by Minh(1988)"Generating
Gamma Variates", ACM Trans. on Math. Software, Vol.14, No.3, pp261-266.
If a<1, it uses the algorithm "GS" developed by Ahrens and Dieter(1974)
"COMPUTER METHODS FOR SAMPLING FROM GAMMA, BETA, POISSON AND BINOMIAL
DISTRIBUTIONS", COMPUTING, 12 (1974), pp223-246, and further implemented
in Fortran by Ahrens, Kohrt and Dieter(1983) "Algorithm 599: sampling
from Gamma and Poisson distributions", ACM Trans. on Math. Software,
Vol.9 No.2, pp255-257.
Variates related to standard Gamma can be generated using simple transformations.
a
- the shape parameter, must be greater than 1java.lang.Exception
- if parameter not greater than 1public java.lang.String getRevision()
getRevision
in interface RevisionHandler
public static void main(java.lang.String[] ops)
ops
- # of variates/seed, default is 10/45