casacore::HyperGeometric Class Reference

Hypergeometric distribution. More...

#include <Random.h>

Inheritance diagram for casacore::HyperGeometric:
casacore::Random

List of all members.

Public Member Functions

 HyperGeometric (RNG *gen, Double mean=0.5, Double variance=1.0)
 Construct a random number generator for an hypergeometric distribution.
virtual ~HyperGeometric ()
 The destructor is trivial.
virtual Double operator() ()
 Returns a value from the hypergeometric distribution.
Double mean () const
 Functions that allow you to query and change the parameters of the hypergeometric distribution.
void mean (Double x)
Double variance () const
void variance (Double x)
virtual void setParameters (const Vector< Double > &parms)
 These function allow you to manipulate the parameters (mean & variance) described above through the base class.
virtual Vector< Doubleparameters () const
virtual Bool checkParameters (const Vector< Double > &parms) const

Private Member Functions

void setState ()

Private Attributes

Double itsMean
Double itsVariance
Double itsP

Detailed Description

Hypergeometric distribution.

Synopsis

The HyperGeometric class implements the hypergeometric distribution. The mean and variance are the parameters of the distribution. The operator() functions returns a value from this distribution

It is assumed the variance is positive and that the mean is non-zero and not bigger than the square-root of the variance. An AipsError exception is thrown if this is not true. The remaining members allow you to read and set the parameters.

Example

Thrown Exceptions

To Do

Definition at line 904 of file Random.h.


Constructor & Destructor Documentation

casacore::HyperGeometric::HyperGeometric ( RNG gen,
Double  mean = 0.5,
Double  variance = 1.0 
) [inline]

Construct a random number generator for an hypergeometric distribution.

The first argument is a class that produces random bits. This pointer is NOT taken over by this class and the user is responsible for deleting it. The second and third arguments define the parameters for this distribution as described in the synopsis.

Definition at line 945 of file Random.h.

References setState().

virtual casacore::HyperGeometric::~HyperGeometric (  )  [virtual]

The destructor is trivial.


Member Function Documentation

virtual Bool casacore::HyperGeometric::checkParameters ( const Vector< Double > &  parms  )  const [virtual]

Implements casacore::Random.

void casacore::HyperGeometric::mean ( Double  x  )  [inline]

Definition at line 957 of file Random.h.

References itsMean, and setState().

Double casacore::HyperGeometric::mean (  )  const [inline]

Functions that allow you to query and change the parameters of the hypergeometric distribution.

Definition at line 953 of file Random.h.

References itsMean.

virtual Double casacore::HyperGeometric::operator() (  )  [virtual]

Returns a value from the hypergeometric distribution.

Implements casacore::Random.

virtual Vector<Double> casacore::HyperGeometric::parameters (  )  const [virtual]

Implements casacore::Random.

virtual void casacore::HyperGeometric::setParameters ( const Vector< Double > &  parms  )  [virtual]

These function allow you to manipulate the parameters (mean & variance) described above through the base class.

The Vectors must always be of length two.

Implements casacore::Random.

void casacore::HyperGeometric::setState (  )  [private]

Referenced by HyperGeometric(), mean(), and variance().

void casacore::HyperGeometric::variance ( Double  x  )  [inline]

Definition at line 966 of file Random.h.

References itsVariance, and setState().

Double casacore::HyperGeometric::variance (  )  const [inline]

Definition at line 962 of file Random.h.

References itsVariance.


Member Data Documentation

Definition at line 939 of file Random.h.

Referenced by mean().

Definition at line 941 of file Random.h.

Definition at line 940 of file Random.h.

Referenced by variance().


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 31 Aug 2016 for casa by  doxygen 1.6.1