SSJ API Documentation
Stochastic Simulation in Java
Loading...
Searching...
No Matches
umontreal.ssj.randvar.GammaGen Class Reference

This class implements random variate generators for the gamma distribution. More...

Inheritance diagram for umontreal.ssj.randvar.GammaGen:
umontreal.ssj.randvar.RandomVariateGen umontreal.ssj.randvar.ErlangGen umontreal.ssj.randvar.GammaAcceptanceRejectionGen umontreal.ssj.randvar.GammaRejectionLoglogisticGen umontreal.ssj.randvar.ErlangConvolutionGen

Public Member Functions

 GammaGen (RandomStream s, double alpha, double lambda)
 Creates a gamma random variate generator with parameters.
 GammaGen (RandomStream s, double alpha)
 Creates a gamma random variate generator with parameters.
 GammaGen (RandomStream s, GammaDist dist)
 Creates a new generator object for the gamma distribution dist and stream s.
double getAlpha ()
 Returns the parameter \(\alpha\) of this object.
double getLambda ()
 Returns the parameter \(\lambda\) of this object.
Public Member Functions inherited from umontreal.ssj.randvar.RandomVariateGen
 RandomVariateGen (RandomStream s, Distribution dist)
 Creates a new random variate generator from the distribution dist, using stream s.
double nextDouble ()
 Generates a random number from the continuous distribution contained in this object.
void nextArrayOfDouble (double[] v, int start, int n)
 Generates n random numbers from the continuous distribution contained in this object.
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.
RandomStream getStream ()
 Returns the umontreal.ssj.rng.RandomStream used by this generator.
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.
String toString ()
 Returns a String containing information about the current generator.

Static Public Member Functions

static double nextDouble (RandomStream s, double alpha, double lambda)
 Generates a new gamma random variate with parameters \(\alpha= \) alpha and \(\lambda= \) lambda, using stream s.

Protected Member Functions

void setParams (double alpha, double lambda)
 Sets the parameter \(\alpha\) and \(\lambda\) of this object.

Detailed Description

This class implements random variate generators for the gamma distribution.

Its parameters are \(\alpha>0\) (shape) and \(\lambda>0\) (rate). Its density function is

\[ f(x) = \lambda^{\alpha}x^{\alpha- 1}e^{-\lambda x} / \Gamma(\alpha) \qquad\mbox{ for } x>0, \tag{fgamma} \]

where \(\Gamma\) is the gamma function defined by

\[ \Gamma(\alpha) = \int_0^{\infty}x^{\alpha- 1} e^{-x} dx. \tag{Gamma} \]

The (non-static) nextDouble method simply calls inverseF on the distribution.

Definition at line 47 of file GammaGen.java.

Constructor & Destructor Documentation

◆ GammaGen() [1/3]

umontreal.ssj.randvar.GammaGen.GammaGen ( RandomStream s,
double alpha,
double lambda )

Creates a gamma random variate generator with parameters.

\(\alpha=\) alpha and \(\lambda\) = lambda, using stream s.

Definition at line 56 of file GammaGen.java.

◆ GammaGen() [2/3]

umontreal.ssj.randvar.GammaGen.GammaGen ( RandomStream s,
double alpha )

Creates a gamma random variate generator with parameters.

\(\alpha=\) alpha and \(\lambda= 1\), using stream s.

Definition at line 66 of file GammaGen.java.

◆ GammaGen() [3/3]

umontreal.ssj.randvar.GammaGen.GammaGen ( RandomStream s,
GammaDist dist )

Creates a new generator object for the gamma distribution dist and stream s.

Definition at line 74 of file GammaGen.java.

Member Function Documentation

◆ getAlpha()

double umontreal.ssj.randvar.GammaGen.getAlpha ( )

Returns the parameter \(\alpha\) of this object.

Definition at line 92 of file GammaGen.java.

◆ getLambda()

double umontreal.ssj.randvar.GammaGen.getLambda ( )

Returns the parameter \(\lambda\) of this object.

Definition at line 99 of file GammaGen.java.

◆ nextDouble()

double umontreal.ssj.randvar.GammaGen.nextDouble ( RandomStream s,
double alpha,
double lambda )
static

Generates a new gamma random variate with parameters \(\alpha= \) alpha and \(\lambda= \) lambda, using stream s.

Reimplemented in umontreal.ssj.randvar.GammaAcceptanceRejectionGen, and umontreal.ssj.randvar.GammaRejectionLoglogisticGen.

Definition at line 85 of file GammaGen.java.

◆ setParams()

void umontreal.ssj.randvar.GammaGen.setParams ( double alpha,
double lambda )
protected

Sets the parameter \(\alpha\) and \(\lambda\) of this object.

Definition at line 106 of file GammaGen.java.


The documentation for this class was generated from the following file: