|
SSJ
3.3.1
Stochastic Simulation in Java
|
This class implements random variate generators for the hypergeometric distribution. More...
Public Member Functions | |
| HypergeometricGen (RandomStream s, int m, int l, int k) | |
Creates a hypergeometric generator with parameters \(m = \) m, \(l = \) l and \(k = \) k, using stream s. | |
| HypergeometricGen (RandomStream s, HypergeometricDist dist) | |
Creates a new generator for distribution dist, using stream s. | |
| int | getM () |
| Returns the \(m\) associated with this object. | |
| int | getL () |
| Returns the \(l\) associated with this object. | |
| int | getK () |
| Returns the \(k\) associated with this object. | |
Public Member Functions inherited from RandomVariateGenInt | |
| RandomVariateGenInt (RandomStream s, DiscreteDistributionInt dist) | |
Creates a new random variate generator for the discrete distribution dist, using stream s. More... | |
| int | nextInt () |
| Generates a random number (an integer) from the discrete distribution contained in this object. More... | |
| void | nextArrayOfInt (int[] v, int start, int n) |
Generates n random numbers from the discrete distribution contained in this object. More... | |
| int [] | nextArrayOfInt (int n) |
Generates n random numbers from the discrete distribution contained in this object, and returns them in a new array of size n. More... | |
| DiscreteDistributionInt | getDistribution () |
| Returns the umontreal.ssj.probdist.DiscreteDistributionInt used by this generator. More... | |
Public Member Functions inherited from RandomVariateGen | |
| RandomVariateGen (RandomStream s, Distribution dist) | |
Creates a new random variate generator from the distribution dist, using stream s. More... | |
| double | nextDouble () |
| Generates a random number from the continuous distribution contained in this object. More... | |
| void | nextArrayOfDouble (double[] v, int start, int n) |
Generates n random numbers from the continuous distribution contained in this object. More... | |
| double [] | nextArrayOfDouble (int n) |
Generates n random numbers from the continuous distribution contained in this object, and returns them in a new array of size n. More... | |
| RandomStream | getStream () |
| Returns the umontreal.ssj.rng.RandomStream used by this generator. More... | |
| void | setStream (RandomStream stream) |
Sets the umontreal.ssj.rng.RandomStream used by this generator to stream. | |
| Distribution | getDistribution () |
| Returns the umontreal.ssj.probdist.Distribution used by this generator. More... | |
| String | toString () |
Returns a String containing information about the current generator. | |
Static Public Member Functions | |
| static int | nextInt (RandomStream s, int m, int l, int k) |
Generates a new variate from the hypergeometric distribution with parameters \(m = \) m, \(l = \) l and \(k = \) k, using stream s. | |
Protected Member Functions | |
| void | setParams (int m, int l, int k) |
| Sets the parameter \(n\) and \(p\) of this object. | |
Additional Inherited Members | |
Protected Attributes inherited from RandomVariateGen | |
| RandomStream | stream |
| Distribution | dist |
This class implements random variate generators for the hypergeometric distribution.
Its mass function is (see, e.g., [66] (page 101))
\[ p(x) = \frac{ {m \choose x} {l - m\choose k-x}}{{l \choose k}} \qquad\mbox{for } x=\max(0,k-l+m), …, \min(k, m), \tag{fheperg} \]
where \(m\), \(l\) and \(k\) are integers that satisfy \(0< m\le l\) and \(0 < k\le l\).
The generation method is inversion using the chop-down algorithm [102]
1.8.14