SSJ
V. 2.6.2.

umontreal.iro.lecuyer.probdist
Class ChiSquareNoncentralDist

java.lang.Object
  extended by umontreal.iro.lecuyer.probdist.ContinuousDistribution
      extended by umontreal.iro.lecuyer.probdist.ChiSquareNoncentralDist
All Implemented Interfaces:
Distribution

public class ChiSquareNoncentralDist
extends ContinuousDistribution

Extends the class ContinuousDistribution for the noncentral chi-square distribution with ν degrees of freedom and noncentrality parameter λ, where ν > 0 and λ > 0. Its density is

f (x) = (e-(x+λ)/2)/2(x/λ)(ν-2)/4Iν/2-1((λx)1/2)        for x > 0,

where Iν(x) is the modified Bessel function of the first kind of order ν given by

Iν(z) = ∑j=0[(z/2)ν+2j]/[j!  Γ(ν + j + 1)],

where Γ(x) is the gamma function. Notice that this distribution is more general than the chi-square distribution since its number of degrees of freedom can be any positive real number. For λ = 0 and ν a positive integer, we have the ordinary chi-square distribution.

The cumulative probability function can be written as

P[X <= x] = ∑j=0(e-λ/2(λ/2)j/j!)P[χ2ν+2j <= x],

where χ2ν+2j is the central chi-square distribution with ν + 2j degrees of freedom.


Field Summary
 
Fields inherited from class umontreal.iro.lecuyer.probdist.ContinuousDistribution
decPrec
 
Constructor Summary
ChiSquareNoncentralDist(double nu, double lambda)
          Constructs a noncentral chi-square distribution with ν = nu degrees of freedom and noncentrality parameter λ = lambda.
 
Method Summary
 double barF(double x)
          Returns the complementary distribution function.
static double barF(double nu, double lambda, double x)
          Computes the complementary noncentral chi-square distribution function with ν = nu degrees of freedom and parameter λ = lambda.
 double cdf(double x)
          Returns the distribution function F(x).
static double cdf(double nu, double lambda, double x)
          Computes the noncentral chi-square distribution function with ν = nu degrees of freedom and parameter λ = lambda.
 double density(double x)
          Returns f (x), the density evaluated at x.
static double density(double nu, double lambda, double x)
          Computes the density function for a noncentral chi-square distribution with ν = nu degrees of freedom and parameter λ = lambda.
 double getLambda()
          Returns the parameter λ of this object.
 double getMean()
          Returns the mean.
static double getMean(double nu, double lambda)
          Computes and returns the mean E[X] = ν + λ of the noncentral chi-square distribution with parameters ν = nu and λ = lambda.
 double getNu()
          Returns the parameter ν of this object.
 double[] getParams()
          Returns a table containing the parameters of the current distribution.
 double getStandardDeviation()
          Returns the standard deviation.
static double getStandardDeviation(double nu, double lambda)
          Computes and returns the standard deviation of the noncentral chi-square distribution with parameters ν = nu and λ = lambda.
 double getVariance()
          Returns the variance.
static double getVariance(double nu, double lambda)
          Computes and returns the variance Var[X] = 2(ν +2λ) of the noncentral chi-square distribution with parameters ν = nu and λ = lambda.
 double inverseF(double u)
          Returns the inverse distribution function x = F-1(u).
static double inverseF(double nu, double lambda, double u)
          Computes the inverse of the noncentral chi-square distribution with ν = nu degrees of freedom and parameter λ = lambda.
 void setParams(double nu, double lambda)
          Sets the parameters ν = nu and λ = lambda of this object.
 String 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

ChiSquareNoncentralDist

public ChiSquareNoncentralDist(double nu,
                               double lambda)
Constructs a noncentral chi-square distribution with ν = nu degrees of freedom and noncentrality parameter λ = lambda.

Method Detail

density

public double density(double x)
Description copied from class: ContinuousDistribution
Returns f (x), the density evaluated at x.

Specified by:
density in class ContinuousDistribution
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: Distribution
Returns 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: 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 ContinuousDistribution
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 ContinuousDistribution
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: ContinuousDistribution
Returns the mean.

Specified by:
getMean in interface Distribution
Overrides:
getMean in class ContinuousDistribution
Returns:
the mean

getVariance

public double getVariance()
Description copied from class: ContinuousDistribution
Returns the variance.

Specified by:
getVariance in interface Distribution
Overrides:
getVariance in class ContinuousDistribution
Returns:
the variance

getStandardDeviation

public double getStandardDeviation()
Description copied from class: ContinuousDistribution
Returns the standard deviation.

Specified by:
getStandardDeviation in interface Distribution
Overrides:
getStandardDeviation in class ContinuousDistribution
Returns:
the standard deviation

density

public static double density(double nu,
                             double lambda,
                             double x)
Computes the density function for a noncentral chi-square distribution with ν = nu degrees of freedom and parameter λ = lambda.


cdf

public static double cdf(double nu,
                         double lambda,
                         double x)
Computes the noncentral chi-square distribution function with ν = nu degrees of freedom and parameter λ = lambda.


barF

public static double barF(double nu,
                          double lambda,
                          double x)
Computes the complementary noncentral chi-square distribution function with ν = nu degrees of freedom and parameter λ = lambda.


inverseF

public static double inverseF(double nu,
                              double lambda,
                              double u)
Computes the inverse of the noncentral chi-square distribution with ν = nu degrees of freedom and parameter λ = lambda.


getMean

public static double getMean(double nu,
                             double lambda)
Computes and returns the mean E[X] = ν + λ of the noncentral chi-square distribution with parameters ν = nu and λ = lambda.

Returns:
the mean of the Noncentral noncentral chi-square distribution

getVariance

public static double getVariance(double nu,
                                 double lambda)
Computes and returns the variance Var[X] = 2(ν +2λ) of the noncentral chi-square distribution with parameters ν = nu and λ = lambda.

Returns:
the variance of the noncentral chi-square distribution

getStandardDeviation

public static double getStandardDeviation(double nu,
                                          double lambda)
Computes and returns the standard deviation of the noncentral chi-square distribution with parameters ν = nu and λ = lambda.

Returns:
the standard deviation of the noncentral chi-square distribution

getNu

public double getNu()
Returns the parameter ν of this object.


getLambda

public double getLambda()
Returns the parameter λ of this object.


setParams

public void setParams(double nu,
                      double lambda)
Sets the parameters ν = nu and λ = lambda of this object.


getParams

public double[] getParams()
Returns a table containing the parameters of the current distribution.


toString

public String toString()
Overrides:
toString in class Object

SSJ
V. 2.6.2.

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