Package cern.jet.random
Class Hyperbolic
java.lang.Object
cern.colt.PersistentObject
cern.jet.random.AbstractDistribution
cern.jet.random.AbstractContinousDistribution
cern.jet.random.Hyperbolic
- All Implemented Interfaces:
DoubleFunction
,IntFunction
,Serializable
,Cloneable
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.
- Version:
- 1.0, 09/24/99
- See Also:
-
Field Summary
FieldsModifier 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 static Hyperbolic
protected double
protected double
protected double
Fields inherited from class cern.jet.random.AbstractDistribution
randomGenerator
Fields inherited from class cern.colt.PersistentObject
serialVersionUID
-
Constructor Summary
ConstructorsConstructorDescriptionHyperbolic
(double alpha, double beta, RandomEngine 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.static double
staticNextDouble
(double alpha, double beta) Returns a random number from the distribution.toString()
Returns a String representation of the receiver.private static void
xstaticSetRandomGenerator
(RandomEngine randomGenerator) Sets the uniform random number generated shared by all static methods.Methods inherited from class cern.jet.random.AbstractDistribution
apply, apply, clone, getRandomGenerator, makeDefaultGenerator, 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. -
staticNextDouble
public static double staticNextDouble(double alpha, double beta) Returns a random number from the distribution. -
toString
Returns a String representation of the receiver. -
xstaticSetRandomGenerator
Sets the uniform random number generated shared by all static methods.- Parameters:
randomGenerator
- the new uniform random number generator to be shared.
-