Package sim.util.distribution
Class Hyperbolic
java.lang.Object
sim.util.distribution.AbstractDistribution
sim.util.distribution.AbstractContinuousDistribution
sim.util.distribution.Hyperbolic
- All Implemented Interfaces:
Serializable
Hyperbolic distribution.
Static methods operate on a default uniform random number generator; they are synchronized.
Method: Non-Universal Rejection.
High performance implementation.
This is a port of hyplc.c from the C-RAND / WIN-RAND library.
C-RAND's implementation, in turn, is based upon
Valid parameter ranges: alpha > 0 and beta > 0.
Instance methods operate on a user supplied uniform random number generator; they are unsynchronized.
Implementation:
L. Devroye (1986): Non-Uniform Random Variate Generation, Springer Verlag, New York.
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionprotected double
protected double
protected double
protected double
protected double
protected double
protected double
protected double
protected double
protected double
protected double
protected double
protected double
protected double
protected double
protected double
protected double
Fields inherited from class sim.util.distribution.AbstractDistribution
randomGenerator
-
Constructor Summary
ConstructorDescriptionHyperbolic
(double alpha, double beta, MersenneTwisterFast randomGenerator) Constructs a Beta distribution. -
Method Summary
Modifier and TypeMethodDescriptiondouble
Returns a random number from the distribution.double
nextDouble
(double alpha, double beta) Returns a hyperbolic distributed random number; bypasses the internal state.void
setState
(double alpha, double beta) Sets the parameters.toString()
Returns a String representation of the receiver.Methods inherited from class sim.util.distribution.AbstractDistribution
apply, apply, getRandomGenerator, nextInt, setRandomGenerator
-
Field Details
-
alpha
protected double alpha -
beta
protected double beta -
a_setup
protected double a_setup -
b_setup
protected double b_setup -
x
protected double x -
u
protected double u -
v
protected double v -
e
protected double e -
hr
protected double hr -
hl
protected double hl -
s
protected double s -
pm
protected double pm -
pr
protected double pr -
samb
protected double samb -
pmr
protected double pmr -
mpa_1
protected double mpa_1 -
mmb_1
protected double mmb_1
-
-
Constructor Details
-
Hyperbolic
Constructs a Beta distribution.
-
-
Method Details
-
nextDouble
public double nextDouble()Returns a random number from the distribution.- Specified by:
nextDouble
in classAbstractDistribution
-
nextDouble
public double nextDouble(double alpha, double beta) Returns a hyperbolic distributed random number; bypasses the internal state. -
setState
public void setState(double alpha, double beta) Sets the parameters. -
toString
Returns a String representation of the receiver.
-