IGLib  1.7.2
The IGLib base library EXTENDED - with other lilbraries and applications.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Macros
Meta.Numerics.Statistics.Distributions.ExponentialDistribution Class Reference

Represents an exponential distribution. More...

+ Inheritance diagram for Meta.Numerics.Statistics.Distributions.ExponentialDistribution:
+ Collaboration diagram for Meta.Numerics.Statistics.Distributions.ExponentialDistribution:

Public Member Functions

 ExponentialDistribution (double mu)
 Initializes a new exponential distribution with the given mean. More...
 
 ExponentialDistribution ()
 Initializes a new standard exponential distribution. More...
 
override double ProbabilityDensity (double x)
 Returns the probability density at the given point.
Parameters
xThe reference point.
Returns
The probability density p(x).
The probability density function (PDF) gives the relative probability of obtaining different values. More...
 
override double LeftProbability (double x)
 Returns the cumulative probability to the left of (below) the given point.
Parameters
xThe reference point.
Returns
The integrated probability to obtain a result below the reference point.
The left probability function is commonly called the cumulative distribution function (CDF). More...
 
override double RightProbability (double x)
 Return the cumulative probability to the right of (above) the given point.
Parameters
xThe reference point.
Returns
The integrated probability 1-P(x1) to obtain a result above the reference point.
In survival analysis, the right probability function is commonly called the survival function, because it gives the fraction of the population remaining after the given time. More...
 
override double InverseLeftProbability (double P)
 Returns the point at which the cumulative distribution function attains a given value.
Parameters
PThe left cumulative probability P, which must lie between 0 and 1.
Returns
The value x at which LeftProbability equals P.
The inverse left probability is commonly called the quantile function. Given a quantile, it tells which variable value is the lower border of that quantile. More...
 
override double InverseRightProbability (double Q)
 Returns the point at which the right probability function attains the given value. More...
 
override double Moment (int r)
 Computes a raw moment of the distribution.
Parameters
rThe order of the moment to compute.
Returns
The rth raw moment of the distribution.
See also
Moment
More...
 
override double MomentAboutMean (int r)
 Computes a central moment of the distribution.
Parameters
rThe order of the moment to compute.
Returns
The rth central moment of the distribution.
See also
Moment
More...
 
override double Cumulant (int r)
 Computes a cumulant of the distribution.
Parameters
rThe index of the cumulant to compute.
Returns
The rth cumulant of the distribution.
More...
 
- Public Member Functions inherited from Meta.Numerics.Statistics.Distributions.Distribution
virtual double ExpectationValue (Func< double, double > f)
 Computes the expectation value of the given function. More...
 
virtual double GetRandomValue (Random rng)
 Returns a random value. More...
 

Static Public Member Functions

static FitResult FitToSample (Sample sample)
 Computes the exponential distribution that best fits the given sample. More...
 

Properties

override double Mean [get]
 
override double StandardDeviation [get]
 
override double Median [get]
 
override double Skewness [get]
 
override double ExcessKurtosis [get]
 
override Interval Support [get]
 
- Properties inherited from Meta.Numerics.Statistics.Distributions.Distribution
virtual double Median [get]
 Gets the median of the distribution. More...
 
virtual Interval Support [get]
 Gets the interval over which the distribution is nonvanishing. More...
 
- Properties inherited from Meta.Numerics.Statistics.Distributions.UnivariateDistribution
virtual double Mean [get]
 Gets the mean of the distribution. More...
 
virtual double Variance [get]
 Gets the variance of the distribution. More...
 
virtual double StandardDeviation [get]
 Gets the standard deviation of the distribution. More...
 
virtual double Skewness [get]
 Gets the skewness of the distribution. More...
 
virtual double ExcessKurtosis [get]
 Gets the excess kurtosis of the distribution. More...
 

Private Member Functions

double[]
IParameterizedDistribution. 
GetParameters ()
 Gets the parameter values of the distribution. More...
 
void IParameterizedDistribution. SetParameters (IList< double > parameters)
 Sets the parameter values of the distribution. More...
 
double IParameterizedDistribution. Likelihood (double x)
 Gets the likelihood of a value, given the current parameters. More...
 

Private Attributes

double mu
 

Detailed Description

Represents an exponential distribution.

An exponential distribution falls off exponentially in the range from zero to infinity. It is a one-parameter distribution, determined entirely by its rate of fall-off.

The exponential distribution describes the distribution of decay times of radioactive particles.

An exponential distribution with mean one is called a standard exponential distribution. Any exponential distribution can be converted to a standard exponential by reparameterizing the data into "fractions of the mean," i.e. z = x / &#x3BC;.

Processes resulting in events that are exponentially distributed in time are said to be "ageless" because the hazard function of the exponential distribution is constant. The Weibull distribution (WeibullDistribution) is a generalization of the exponential distribution which the hazard function changes (typically by increasing) with time.

Constructor & Destructor Documentation

Meta.Numerics.Statistics.Distributions.ExponentialDistribution.ExponentialDistribution ( double  mu)
inline

Initializes a new exponential distribution with the given mean.

Parameters
muThe mean, which must be positive.
Meta.Numerics.Statistics.Distributions.ExponentialDistribution.ExponentialDistribution ( )
inline

Initializes a new standard exponential distribution.

Member Function Documentation

override double Meta.Numerics.Statistics.Distributions.ExponentialDistribution.ProbabilityDensity ( double  x)
inlinevirtual

Returns the probability density at the given point.

Parameters
xThe reference point.
Returns
The probability density p(x).
The probability density function (PDF) gives the relative probability of obtaining different values.

Implements Meta.Numerics.Statistics.Distributions.Distribution.

override double Meta.Numerics.Statistics.Distributions.ExponentialDistribution.LeftProbability ( double  x)
inlinevirtual

Returns the cumulative probability to the left of (below) the given point.

Parameters
xThe reference point.
Returns
The integrated probability to obtain a result below the reference point.
The left probability function is commonly called the cumulative distribution function (CDF).

Reimplemented from Meta.Numerics.Statistics.Distributions.Distribution.

References Meta.Numerics.MoreMath.ExpMinusOne().

override double Meta.Numerics.Statistics.Distributions.ExponentialDistribution.RightProbability ( double  x)
inlinevirtual

Return the cumulative probability to the right of (above) the given point.

Parameters
xThe reference point.
Returns
The integrated probability 1-P(x1) to obtain a result above the reference point.
In survival analysis, the right probability function is commonly called the survival function, because it gives the fraction of the population remaining after the given time.

Reimplemented from Meta.Numerics.Statistics.Distributions.Distribution.

override double Meta.Numerics.Statistics.Distributions.ExponentialDistribution.InverseLeftProbability ( double  P)
inlinevirtual

Returns the point at which the cumulative distribution function attains a given value.

Parameters
PThe left cumulative probability P, which must lie between 0 and 1.
Returns
The value x at which LeftProbability equals P.
The inverse left probability is commonly called the quantile function. Given a quantile, it tells which variable value is the lower border of that quantile.

Reimplemented from Meta.Numerics.Statistics.Distributions.Distribution.

References Meta.Numerics.MoreMath.LogOnePlus().

override double Meta.Numerics.Statistics.Distributions.ExponentialDistribution.InverseRightProbability ( double  Q)
inlinevirtual

Returns the point at which the right probability function attains the given value.

Parameters
QThe right cumulative probability, which must lie between 0 and 1.
Returns
The value x for which RightProbability equals Q.

Reimplemented from Meta.Numerics.Statistics.Distributions.Distribution.

override double Meta.Numerics.Statistics.Distributions.ExponentialDistribution.Moment ( int  r)
inlinevirtual

Computes a raw moment of the distribution.

Parameters
rThe order of the moment to compute.
Returns
The rth raw moment of the distribution.
See also
Moment

Reimplemented from Meta.Numerics.Statistics.Distributions.Distribution.

References Meta.Numerics.Functions.AdvancedIntegerMath.Factorial(), and Meta.Numerics.MoreMath.Pow().

override double Meta.Numerics.Statistics.Distributions.ExponentialDistribution.MomentAboutMean ( int  r)
inlinevirtual

Computes a central moment of the distribution.

Parameters
rThe order of the moment to compute.
Returns
The rth central moment of the distribution.
See also
Moment

Reimplemented from Meta.Numerics.Statistics.Distributions.Distribution.

References Meta.Numerics.Functions.AdvancedIntegerMath.Factorial(), and Meta.Numerics.MoreMath.Pow().

override double Meta.Numerics.Statistics.Distributions.ExponentialDistribution.Cumulant ( int  r)
inlinevirtual

Computes a cumulant of the distribution.

Parameters
rThe index of the cumulant to compute.
Returns
The rth cumulant of the distribution.

Reimplemented from Meta.Numerics.Statistics.Distributions.UnivariateDistribution.

References Meta.Numerics.Functions.AdvancedIntegerMath.Factorial(), and Meta.Numerics.MoreMath.Pow().

double [] IParameterizedDistribution. Meta.Numerics.Statistics.Distributions.ExponentialDistribution.GetParameters ( )
inlineprivate

Gets the parameter values of the distribution.

Returns
The parameter values characterizing the distribution.

Implements Meta.Numerics.Statistics.Distributions.IParameterizedDistribution.

void IParameterizedDistribution. Meta.Numerics.Statistics.Distributions.ExponentialDistribution.SetParameters ( IList< double >  parameters)
inlineprivate

Sets the parameter values of the distribution.

Parameters
parametersA list of parameter values.

Implements Meta.Numerics.Statistics.Distributions.IParameterizedDistribution.

double IParameterizedDistribution. Meta.Numerics.Statistics.Distributions.ExponentialDistribution.Likelihood ( double  x)
inlineprivate

Gets the likelihood of a value, given the current parameters.

Parameters
xThe value.
Returns
The likelihood of the value.

Implements Meta.Numerics.Statistics.Distributions.IParameterizedDistribution.

static FitResult Meta.Numerics.Statistics.Distributions.ExponentialDistribution.FitToSample ( Sample  sample)
inlinestatic

Computes the exponential distribution that best fits the given sample.

Parameters
sampleThe sample to fit.
Returns
The best fit parameter.

The returned fit parameter is &#x3BC; (the Mean). This is the same parameter that is required by the ExponentialDistribution(double) constructor to specify a new exponential distribution.

Exceptions
ArgumentNullExceptionsample is null.
InsufficientDataExceptionsample contains fewer than two values.
InvalidOperationExceptionsample contains non-positive values.

References Meta.Numerics.Statistics.Sample.Count.

Referenced by Test.SampleTest.ExponentialFit(), Test.SampleTest.ExponentialFitUncertainty(), Test.SampleTest.NormalFit(), and Test.SampleTest.SampleFitChiSquaredTest().

Member Data Documentation

double Meta.Numerics.Statistics.Distributions.ExponentialDistribution.mu
private

Property Documentation

override double Meta.Numerics.Statistics.Distributions.ExponentialDistribution.Mean
get
override double Meta.Numerics.Statistics.Distributions.ExponentialDistribution.StandardDeviation
get

override double Meta.Numerics.Statistics.Distributions.ExponentialDistribution.Median
get

override double Meta.Numerics.Statistics.Distributions.ExponentialDistribution.Skewness
get

override double Meta.Numerics.Statistics.Distributions.ExponentialDistribution.ExcessKurtosis
get

override Interval Meta.Numerics.Statistics.Distributions.ExponentialDistribution.Support
get


The documentation for this class was generated from the following file: