SSJ
V. 2.6.

## umontreal.iro.lecuyer.probdist Class NormalDistQuick

```java.lang.Object
umontreal.iro.lecuyer.probdist.ContinuousDistribution
umontreal.iro.lecuyer.probdist.NormalDist
umontreal.iro.lecuyer.probdist.NormalDistQuick
```
All Implemented Interfaces:
Distribution

`public class NormalDistQuickextends NormalDist`

A variant of the class `NormalDist` (for the normal distribution with mean μ and variance σ2). The difference is in the implementation of the methods `cdf01`, `barF01` and `inverseF01`, which are faster but less accurate than those of the class `NormalDist`.

Field Summary

Fields inherited from class umontreal.iro.lecuyer.probdist.ContinuousDistribution
`decPrec`

Constructor Summary
`NormalDistQuick()`
Constructs a NormalDistQuick object with default parameters μ = 0 and σ = 1.
```NormalDistQuick(double mu, double sigma)```
Constructs a NormalDistQuick object with mean μ = mu and standard deviation σ = sigma.

Method Summary
` double` `barF(double x)`
Returns the complementary distribution function.
`static double` ```barF(double mu, double sigma, double x)```
Returns an approximation of 1 - Φ(x), where Φ is the standard normal distribution function, with mean 0 and variance 1.
`static double` `barF01(double x)`
Same as `barF` (0.0, 1.0, x).
` double` `cdf(double x)`
Returns the distribution function F(x).
`static double` ```cdf(double mu, double sigma, double x)```
Returns an approximation of Φ(x), where Φ is the standard normal distribution function, with mean 0 and variance 1.
`static double` `cdf01(double x)`
Same as `cdf` (0.0, 1.0, x).
` double` `inverseF(double u)`
Returns the inverse distribution function x = F-1(u).
`static double` ```inverseF(double mu, double sigma, double u)```
Returns an approximation of Φ-1(u), where Φ is the standard normal distribution function, with mean 0 and variance 1.
`static double` `inverseF01(double u)`
Same as `inverseF` (0.0, 1.0, u).

Methods inherited from class umontreal.iro.lecuyer.probdist.NormalDist
`density, density, density01, getInstanceFromMLE, getMean, getMean, getMLE, getMu, getParams, getSigma, getStandardDeviation, getStandardDeviation, getVariance, getVariance, setParams, toString`

Methods inherited from class umontreal.iro.lecuyer.probdist.ContinuousDistribution
`getXinf, getXsup, inverseBisection, inverseBrent, setXinf, setXsup`

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

Constructor Detail

### NormalDistQuick

`public NormalDistQuick()`
Constructs a NormalDistQuick object with default parameters μ = 0 and σ = 1.

### NormalDistQuick

```public NormalDistQuick(double mu,
double sigma)```
Constructs a NormalDistQuick object with mean μ = mu and standard deviation σ = sigma.

Method Detail

### cdf

`public double cdf(double x)`
Description copied from interface: `Distribution`
Returns the distribution function F(x).

Specified by:
`cdf` in interface `Distribution`
Overrides:
`cdf` in class `NormalDist`
Parameters:
`x` - value at which the distribution function is evaluated
Returns:
distribution function evaluated at x

### barF

`public double barF(double x)`
Description copied from class: `ContinuousDistribution`
Returns the complementary distribution function. The default implementation computes bar(F)(x) = 1 - F(x).

Specified by:
`barF` in interface `Distribution`
Overrides:
`barF` in class `NormalDist`
Parameters:
`x` - value at which the complementary distribution function is evaluated
Returns:
complementary distribution function evaluated at x

### inverseF

`public double inverseF(double u)`
Description copied from class: `ContinuousDistribution`
Returns the inverse distribution function x = F-1(u). Restrictions: u∈[0, 1].

Specified by:
`inverseF` in interface `Distribution`
Overrides:
`inverseF` in class `NormalDist`
Parameters:
`u` - value at which the inverse distribution function is evaluated
Returns:
the inverse distribution function evaluated at u

### cdf01

`public static double cdf01(double x)`
Same as `cdf` (0.0, 1.0, x).

### cdf

```public static double cdf(double mu,
double sigma,
double x)```
Returns an approximation of Φ(x), where Φ is the standard normal distribution function, with mean 0 and variance 1. Uses Marsaglia et al's fast method with table lookups. Returns 15 decimal digits of precision. This method is approximately 60% faster than NormalDist.cdf.

### barF01

`public static double barF01(double x)`
Same as `barF` (0.0, 1.0, x).

### barF

```public static double barF(double mu,
double sigma,
double x)```
Returns an approximation of 1 - Φ(x), where Φ is the standard normal distribution function, with mean 0 and variance 1. Uses Marsaglia et al's fast method with table lookups. Returns 15 decimal digits of precision. This method is approximately twice faster than NormalDist.barF.

### inverseF01

`public static double inverseF01(double u)`
Same as `inverseF` (0.0, 1.0, u).

### inverseF

```public static double inverseF(double mu,
double sigma,
double u)```
Returns an approximation of Φ-1(u), where Φ is the standard normal distribution function, with mean 0 and variance 1. Uses the method of Marsaglia, Zaman, and Marsaglia, with table lookups. Returns 6 decimal digits of precision. This method is approximately 20% faster than NormalDist.inverseF.

SSJ
V. 2.6.

To submit a bug or ask questions, send an e-mail to Pierre L'Ecuyer.