Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Colt 1.2.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## cern.jet.random
Class Binomial

    java.lang.Object
      cern.colt.PersistentObject
          cern.jet.random.AbstractDistribution
              cern.jet.random.AbstractDiscreteDistribution
                  cern.jet.random.Binomial

All Implemented Interfaces:
  Cloneable, DoubleFunction, IntFunction, Serializable

public class Binomial
extends AbstractDiscreteDistribution

Binomial distribution; See the math definition and animated definition.

`p(x) = k * p^k * (1-p)^(n-k)` with `k = n! / (k! * (n-k)!)`.

Instance methods operate on a user supplied uniform random number generator; they are unsynchronized.

Static methods operate on a default uniform random number generator; they are synchronized.

Implementation: High performance implementation. Acceptance Rejection/Inversion method. This is a port of RandBinomial used in CLHEP 1.4.0 (C++). CLHEP's implementation is, in turn, based on

V. Kachitvichyanukul, B.W. Schmeiser (1988): Binomial random variate generation, Communications of the ACM 31, 216-222.

Version:
  1.0, 09/24/99
See Also:
  Serialized Form

Field Summary

Fields inherited from class cern.colt.PersistentObject
`serialVersionUID`

Constructor Summary
`Binomial(int n, double p, RandomEngine randomGenerator)` Constructs a binomial distribution.

Method Summary
`double` | `cdf(int k)` Returns the cumulative distribution function.
`int` | `nextInt()` Returns a random number from the distribution.
`int` | `nextInt(int n, double p)` Returns a random number from the distribution with the given parameters n and p; bypasses the internal state.
`double` | `pdf(int k)` Returns the probability distribution function.
`void` | `setNandP(int n, double p)` Sets the parameters number of trials and the probability of success.
`static int` | `staticNextInt(int n, double p)` Returns a random number from the distribution with the given parameters n and p.
`String` | `toString()` Returns a String representation of the receiver.

Methods inherited from class cern.jet.random.AbstractDiscreteDistribution
`nextDouble`

Methods inherited from class cern.jet.random.AbstractDistribution
`apply, apply, clone, makeDefaultGenerator`

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### Binomial

    public Binomial(int n,
                    double p,
                    RandomEngine randomGenerator)

  Constructs a binomial distribution. Example: n=1, p=0.5.

Parameters:
  `n` - the number of trials (also known as sample size).
  `p` - the probability of success.
  `randomGenerator` - a uniform random number generator.
Throws:
  `IllegalArgumentException` - if `n*Math.min(p,1-p) <= 0.0`

Method Detail

### cdf

    public double cdf(int k)

  Returns the cumulative distribution function.

### nextInt

    public int nextInt()

  Returns a random number from the distribution.

  Specified by:
    `nextInt` in class `AbstractDiscreteDistribution`

### nextInt

    public int nextInt(int n,
                       double p)

  Returns a random number from the distribution with the given parameters n and p; bypasses the internal state.

  Parameters:
    `n` - the number of trials
    `p` - the probability of success.
  Throws:
    `IllegalArgumentException` - if `n*Math.min(p,1-p) <= 0.0`

### pdf

    public double pdf(int k)

  Returns the probability distribution function.

### setNandP

    public void setNandP(int n,
                         double p)

  Sets the parameters number of trials and the probability of success.

  Parameters:
    `n` - the number of trials
    `p` - the probability of success.
  Throws:
    `IllegalArgumentException` - if `n*Math.min(p,1-p) <= 0.0`

### staticNextInt

    public static int staticNextInt(int n,
                                    double p)

  Returns a random number from the distribution with the given parameters n and p.

  Parameters:
    `n` - the number of trials
    `p` - the probability of success.
  Throws:
    `IllegalArgumentException` - if `n*Math.min(p,1-p) <= 0.0`

### toString

    public String toString()

  Returns a String representation of the receiver.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Colt 1.2.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Jump to the Colt Homepage