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

## sim.util.distribution
Class Normal

    java.lang.Object
      sim.util.distribution.AbstractDistribution
          sim.util.distribution.AbstractContinousDistribution
              sim.util.distribution.Normal

All Implemented Interfaces:
  java.io.Serializable

    public class Normal

extends AbstractContinousDistribution

Normal (aka Gaussian) distribution; See the math definition and animated definition.

       1                       2
       pdf(x) = ---------    exp( - (x-mean) / 2v )
       sqrt(2pi*v)

       x
       -
       1        | |                 2
       cdf(x) = ---------    |    exp( - (t-mean) / 2v ) dt
       sqrt(2pi*v)| |
       -
       -inf.

where `v = variance = standardDeviation^2`.

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: Polar Box-Muller transformation. See G.E.P. Box, M.E. Muller (1958): A note on the generation of random normal deviates, Annals Math. Statist. 29, 610-611.

See Also:
  Serialized Form

Field Summary
`protected double` | `cache`
`protected boolean` | `cacheFilled`
`protected double` | `mean`
`protected double` | `SQRT_INV`
`protected double` | `standardDeviation`
`protected double` | `variance`

Fields inherited from class sim.util.distribution.AbstractDistribution
`randomGenerator`

Constructor Summary
`Normal(double mean, double standardDeviation, MersenneTwisterFast randomGenerator)` Constructs a normal (gauss) distribution.

Method Summary
`double` | `cdf(double x)` Returns the cumulative distribution function.
`double` | `nextDouble()` Returns a random number from the distribution.
`double` | `nextDouble(double mean, double standardDeviation)` Returns a random number from the distribution; bypasses the internal state.
`double` | `pdf(double x)` Returns the probability distribution function.
`protected void` | `setRandomGenerator(MersenneTwisterFast randomGenerator)` Sets the uniform random generator internally used.
`void` | `setState(double mean, double standardDeviation)` Sets the mean and variance.
`java.lang.String` | `toString()` Returns a String representation of the receiver.

Methods inherited from class sim.util.distribution.AbstractDistribution
`apply, apply, getRandomGenerator, nextInt`

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

Field Detail

### mean

    protected double mean

### variance

    protected double variance

### standardDeviation

    protected double standardDeviation

### cache

    protected double cache

### cacheFilled

    protected boolean cacheFilled

### SQRT_INV

    protected double SQRT_INV

Constructor Detail

### Normal

    public Normal(double mean,
                  double standardDeviation,
                  MersenneTwisterFast randomGenerator)

  Constructs a normal (gauss) distribution. Example: mean=0.0, standardDeviation=1.0.

Method Detail

### cdf

    public double cdf(double x)

  Returns the cumulative distribution function.

### nextDouble

    public double nextDouble()

  Returns a random number from the distribution.

  Specified by:
    `nextDouble` in class `AbstractDistribution`

### nextDouble

    public double nextDouble(double mean,
                             double standardDeviation)

  Returns a random number from the distribution; bypasses the internal state.

### pdf

    public double pdf(double x)

  Returns the probability distribution function.

### setRandomGenerator

    protected void setRandomGenerator(MersenneTwisterFast randomGenerator)

  Sets the uniform random generator internally used.

  Overrides:
    `setRandomGenerator` in class `AbstractDistribution`

### setState

    public void setState(double mean,
                         double standardDeviation)

  Sets the mean and variance.

### toString

    public java.lang.String toString()

  Returns a String representation of the receiver.

  Overrides:
    `toString` in class `java.lang.Object`

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