## Types in MathNet.Numerics.Distributions

Type InverseGaussian

Namespace MathNet.Numerics.Distributions

Interfaces IContinuousDistribution

### Public Constructors

#### InverseGaussian(double mu, double lambda, Random randomSource)

Initializes a new instance of the InverseGaussian class.
##### Parameters
###### `double` mu

The mean (μ) of the distribution. Range: μ > 0.

###### `double` lambda

The shape (λ) of the distribution. Range: λ > 0.

###### `Random` randomSource

The random number generator which is used to draw random samples.

### Public Static Functions

#### doubleCDF(double mu, double lambda, double x)

Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x).
##### Parameters
###### `double` mu

The mean (μ) of the distribution. Range: μ > 0.

###### `double` lambda

The shape (λ) of the distribution. Range: λ > 0.

###### `double` x

The location at which to compute the cumulative distribution function.

##### Return
###### `double`

the cumulative distribution at location x.

#### InverseGaussianEstimate(IEnumerable<double> samples, Random randomSource)

Estimates the Inverse Gaussian parameters from sample data with maximum-likelihood.
##### Parameters
###### `IEnumerable<double>` samples

The samples to estimate the distribution parameters from.

###### `Random` randomSource

The random number generator which is used to draw random samples. Optional, can be null.

##### Return
###### `InverseGaussian`

An Inverse Gaussian distribution.

#### doubleInvCDF(double mu, double lambda, double p)

Computes the inverse cumulative distribution (CDF) of the distribution at p, i.e. solving for P(X ≤ x) = p.
##### Parameters
###### `double` mu

The mean (μ) of the distribution. Range: μ > 0.

###### `double` lambda

The shape (λ) of the distribution. Range: λ > 0.

###### `double` p

The location at which to compute the inverse cumulative distribution function.

##### Return
###### `double`

the inverse cumulative distribution at location p.

#### boolIsValidParameterSet(double mu, double lambda)

Tests whether the provided values are valid parameters for this distribution.
##### Parameters
###### `double` mu

The mean (μ) of the distribution. Range: μ > 0.

###### `double` lambda

The shape (λ) of the distribution. Range: λ > 0.

#### doublePDF(double mu, double lambda, double x)

Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x.
##### Parameters
###### `double` mu

The mean (μ) of the distribution. Range: μ > 0.

###### `double` lambda

The shape (λ) of the distribution. Range: λ > 0.

###### `double` x

The location at which to compute the density.

##### Return
###### `double`

the density at x.

#### doublePDFLn(double mu, double lambda, double x)

Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x).
##### Parameters
###### `double` mu

The mean (μ) of the distribution. Range: μ > 0.

###### `double` lambda

The shape (λ) of the distribution. Range: λ > 0.

###### `double` x

The location at which to compute the log density.

##### Return
###### `double`

the log density at x.

#### doubleSample(Random rnd, double mu, double lambda)

Generates a sample from the inverse Gaussian distribution.
##### Parameters
###### `Random` rnd

The random number generator to use.

###### `double` mu

The mean (μ) of the distribution. Range: μ > 0.

###### `double` lambda

The shape (λ) of the distribution. Range: λ > 0.

##### Return
###### `double`

a sample from the distribution.

#### voidSamples(Random rnd, Double[] values, double mu, double lambda)

Fills an array with samples generated from the distribution.
##### Parameters
###### `Random` rnd

The random number generator to use.

###### `Double[]` values

The array to fill with the samples.

###### `double` mu

The mean (μ) of the distribution. Range: μ > 0.

###### `double` lambda

The shape (λ) of the distribution. Range: λ > 0.

#### IEnumerable<double>Samples(Random rnd, double mu, double lambda)

Generates a sequence of samples from the Burr distribution.
##### Parameters
###### `Random` rnd

The random number generator to use.

###### `double` mu

The mean (μ) of the distribution. Range: μ > 0.

###### `double` lambda

The shape (λ) of the distribution. Range: λ > 0.

##### Return
###### `IEnumerable<double>`

a sequence of samples from the distribution.

### Public Methods

#### doubleCumulativeDistribution(double x)

Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x).
##### Parameters
###### `double` x

The location at which to compute the cumulative distribution function.

##### Return
###### `double`

the cumulative distribution at location x.

#### doubleDensity(double x)

Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x.
##### Parameters
###### `double` x

The location at which to compute the density.

##### Return
###### `double`

the density at x.

#### doubleDensityLn(double x)

Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x).
##### Parameters
###### `double` x

The location at which to compute the log density.

##### Return
###### `double`

the log density at x.

#### doubleInvCDF(double p)

Computes the inverse cumulative distribution (CDF) of the distribution at p, i.e. solving for P(X ≤ x) = p.
##### Parameters
###### `double` p

The location at which to compute the inverse cumulative distribution function.

##### Return
###### `double`

the inverse cumulative distribution at location p.

#### doubleSample()

Generates a sample from the inverse Gaussian distribution.
##### Return
###### `double`

a sample from the distribution.

#### voidSamples(Double[] values)

Fills an array with samples generated from the distribution.
##### Parameters
###### `Double[]` values

The array to fill with the samples.

#### IEnumerable<double>Samples()

Generates a sequence of samples from the inverse Gaussian distribution.
##### Return
###### `IEnumerable<double>`

a sequence of samples from the distribution.

#### stringToString()

A string representation of the distribution.
##### Return
###### `string`

a string representation of the distribution.

### Public Properties

#### doubleEntropy get;

Gets the entropy of the Inverse Gaussian distribution (currently not supported).

#### doubleKurtosis get;

Gets the kurtosis of the Inverse Gaussian distribution.

#### doubleLambda get;

Gets the shape (λ) of the distribution. Range: λ > 0.

#### doubleMaximum get;

Gets the maximum of the Inverse Gaussian distribution.

#### doubleMean get;

Gets the mean of the Inverse Gaussian distribution.

#### doubleMedian get;

Gets the median of the Inverse Gaussian distribution. No closed form analytical expression exists, so this value is approximated numerically and can throw an exception.

#### doubleMinimum get;

Gets the minimum of the Inverse Gaussian distribution.

#### doubleMode get;

Gets the mode of the Inverse Gaussian distribution.

#### doubleMu get;

Gets the mean (μ) of the distribution. Range: μ > 0.

#### RandomRandomSource get; set;

Gets the random number generator which is used to draw random samples.

#### doubleSkewness get;

Gets the skewness of the Inverse Gaussian distribution.

#### doubleStdDev get;

Gets the standard deviation of the Inverse Gaussian distribution.

#### doubleVariance get;

Gets the variance of the Inverse Gaussian distribution.