umontreal.iro.lecuyer.probdist
Class ChiDist
- java.lang.Object
-
- umontreal.iro.lecuyer.probdist.ContinuousDistribution
-
- umontreal.iro.lecuyer.probdist.ChiDist
-
- All Implemented Interfaces:
- Distribution
public class ChiDist extends ContinuousDistribution
Extends the classContinuousDistributionfor the chi distribution with shape parameter v > 0, where the number of degrees of freedom v is a positive integer. The density function is given byf (x) = e-x2/2xv-1/(2(v/2)-1Γ(v/2)) for x > 0,where Γ(x) is the gamma function defined inGammaDist. The distribution function isF(x) = 1/Γ(v/2)∫0x2/2tv/2-1e-t dt.It is equivalent to the gamma distribution function with parameters α = v/2 and λ = 1, evaluated at x2/2.
-
-
Field Summary
-
Fields inherited from class umontreal.iro.lecuyer.probdist.ContinuousDistribution
decPrec
-
-
Constructor Summary
Constructors Constructor and Description ChiDist(int nu)Constructs a ChiDist object.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method and Description doublebarF(double x)Returns the complementary distribution function.static doublebarF(int nu, double x)Computes the complementary distribution.doublecdf(double x)Returns the distribution function F(x).static doublecdf(int nu, double x)Computes the distribution function by using the gamma distribution function.doubledensity(double x)Returns f (x), the density evaluated at x.static doubledensity(int nu, double x)Computes the density function.static ChiDistgetInstanceFromMLE(double[] x, int n)Creates a new instance of a chi distribution with parameter ν estimated using the maximum likelihood method based on the n observations x[i], i = 0, 1,…, n - 1.doublegetMean()Returns the mean.static doublegetMean(int nu)Computes and returns the mean of the chi distribution with parameter ν.static double[]getMLE(double[] x, int n)Estimates the parameter ν of the chi distribution using the maximum likelihood method, from the n observations x[i], i = 0, 1,…, n - 1.intgetNu()Returns the value of ν for this object.double[]getParams()Return a table containing parameters of the current distribution.doublegetStandardDeviation()Returns the standard deviation.static doublegetStandardDeviation(int nu)Computes and returns the standard deviation of the chi distribution with parameter ν.doublegetVariance()Returns the variance.static doublegetVariance(int nu)Computes and returns the variance of the chi distribution with parameter ν.doubleinverseF(double u)Returns the inverse distribution function x = F-1(u).static doubleinverseF(int nu, double u)Returns the inverse distribution function computed using the gamma inversion.voidsetNu(int nu)Sets the value of ν for this object.java.lang.StringtoString()-
Methods inherited from class umontreal.iro.lecuyer.probdist.ContinuousDistribution
getXinf, getXsup, inverseBisection, inverseBrent, setXinf, setXsup
-
-
-
-
Method Detail
-
density
public double density(double x)
Description copied from class:ContinuousDistributionReturns f (x), the density evaluated at x.- Specified by:
densityin classContinuousDistribution- Parameters:
x- value at which the density is evaluated- Returns:
- density function evaluated at x
-
cdf
public double cdf(double x)
Description copied from interface:DistributionReturns the distribution function F(x).- 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:ContinuousDistributionReturns the complementary distribution function. The default implementation computes bar(F)(x) = 1 - F(x).- Specified by:
barFin interfaceDistribution- Overrides:
barFin classContinuousDistribution- 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:ContinuousDistributionReturns the inverse distribution function x = F-1(u). Restrictions: u∈[0, 1].- Specified by:
inverseFin interfaceDistribution- Overrides:
inverseFin classContinuousDistribution- Parameters:
u- value at which the inverse distribution function is evaluated- Returns:
- the inverse distribution function evaluated at u
-
getMean
public double getMean()
Description copied from class:ContinuousDistributionReturns the mean.- Specified by:
getMeanin interfaceDistribution- Overrides:
getMeanin classContinuousDistribution- Returns:
- the mean
-
getVariance
public double getVariance()
Description copied from class:ContinuousDistributionReturns the variance.- Specified by:
getVariancein interfaceDistribution- Overrides:
getVariancein classContinuousDistribution- Returns:
- the variance
-
getStandardDeviation
public double getStandardDeviation()
Description copied from class:ContinuousDistributionReturns the standard deviation.- Specified by:
getStandardDeviationin interfaceDistribution- Overrides:
getStandardDeviationin classContinuousDistribution- Returns:
- the standard deviation
-
density
public static double density(int nu, double x)Computes the density function.
-
cdf
public static double cdf(int nu, double x)Computes the distribution function by using the gamma distribution function.
-
barF
public static double barF(int nu, double x)Computes the complementary distribution.
-
inverseF
public static double inverseF(int nu, double u)Returns the inverse distribution function computed using the gamma inversion.
-
getMLE
public static double[] getMLE(double[] x, int n)Estimates the parameter ν of the chi distribution using the maximum likelihood method, from the n observations x[i], i = 0, 1,…, n - 1. The estimate is returned in element 0 of the returned array.- Parameters:
x- the list of observations to use to evaluate parametersn- the number of observations to use to evaluate parameters- Returns:
- returns the parameter [hat(ν)]
-
getInstanceFromMLE
public static ChiDist getInstanceFromMLE(double[] x, int n)
Creates a new instance of a chi distribution with parameter ν estimated using the maximum likelihood method based on the n observations x[i], i = 0, 1,…, n - 1.- Parameters:
x- the list of observations to use to evaluate parametersn- the number of observations to use to evaluate parameters
-
getMean
public static double getMean(int nu)
Computes and returns the mean of the chi distribution with parameter ν.- Returns:
- the mean of the chi distribution E[X] = (2)1/2Γ((ν +1)/2)/Γ(ν/2)
-
getVariance
public static double getVariance(int nu)
Computes and returns the variance of the chi distribution with parameter ν.- Returns:
- the variance of the chi distribution Var[X] = 2[Γ(ν/2)Γ(1 + ν/2) - Γ2(1/2(ν +1))]/Γ(ν/2)
-
getStandardDeviation
public static double getStandardDeviation(int nu)
Computes and returns the standard deviation of the chi distribution with parameter ν.- Returns:
- the standard deviation of the chi distribution
-
getNu
public int getNu()
Returns the value of ν for this object.
-
setNu
public void setNu(int nu)
Sets the value of ν for this object.
-
getParams
public double[] getParams()
Return a table containing parameters of the current distribution.
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-
DMelt 3.0 © DataMelt by jWork.ORG