SSJ
V. labo.

umontreal.iro.lecuyer.probdist
Class CauchyDist

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

public class CauchyDist
extends ContinuousDistribution

CauchyDist

Extends the class ContinuousDistribution for the Cauchy distribution[#!tJOH95a!#, page 299] with location parameter α and scale parameter β > 0. The density function is given by

f (x) = β/(π[(x - α)2 + β2]) for - ∞ < x < ∞.

The distribution function is

F(x) = 1/2 + arctan((x - α)/β)/π,                for - ∞ < x < ∞,

and its inverse is

F-1(u) = α + βtan(π(u - 1/2)).        for 0 < u < 1.


Field Summary
 
Fields inherited from class umontreal.iro.lecuyer.probdist.ContinuousDistribution
decPrec
 
Constructor Summary
CauchyDist()
          .
CauchyDist(double alpha, double beta)
          .
 
Method Summary
 double barF(double x)
          Returns the complementary distribution function.
static double barF(double alpha, double beta, double x)
          .
 double cdf(double x)
          .
static double cdf(double alpha, double beta, double x)
          .
 double density(double x)
          Returns f (x), the density evaluated at x.
static double density(double alpha, double beta, double x)
          .
 double getAlpha()
          .
 double getBeta()
          .
static CauchyDist getInstanceFromMLE(double[] x, int n)
          .
 double getMean()
          Returns the mean.
static double getMean(double alpha, double beta)
          .
static double[] getMLE(double[] x, int n)
          .
 double[] getParams()
          .
 double getStandardDeviation()
          Returns the standard deviation.
static double getStandardDeviation(double alpha, double beta)
          .
 double getVariance()
          Returns the variance.
static double getVariance(double alpha, double beta)
          .
 double inverseF(double u)
          Returns the inverse distribution function x = F-1(u).
static double inverseF(double alpha, double beta, double u)
          .
 void setParams(double alpha, double beta)
          .
 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

CauchyDist

public CauchyDist()
. \begin{tabb}Constructs a \texttt{CauchyDist} object
 with parameters $\alpha=0$\ and $\beta=1$.
 \end{tabb}


CauchyDist

public CauchyDist(double alpha,
                  double beta)
. \begin{tabb}Constructs a \texttt{CauchyDist} object with parameters
 $\alpha=$\ \texttt{alpha} and $\beta=$\ \texttt{beta}.
 \end{tabb}

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
. \begin{tabb}Returns the distribution function $F(x)$.
 \end{tabb}
xvalue at which the distribution function is evaluated 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 alpha,
                             double beta,
                             double x)
. \begin{tabb}Computes the density function.
 \end{tabb}


cdf

public static double cdf(double alpha,
                         double beta,
                         double x)
. \begin{tabb}
 Computes the distribution function.
 \end{tabb}


barF

public static double barF(double alpha,
                          double beta,
                          double x)
. \begin{tabb}
 Computes the complementary distribution.
 \end{tabb}


inverseF

public static double inverseF(double alpha,
                              double beta,
                              double u)
. \begin{tabb}
 Computes the inverse of the distribution.
 \end{tabb}


getMLE

public static double[] getMLE(double[] x,
                              int n)
. \begin{tabb}
 Estimates the parameters $(\alpha,\beta)$\ of the Cauchy distribut...
 ... function, using the Uncmin package\cite{iSCHa,iVERa}.
 \end{detailed}\end{tabb}
xthe list of observations to use to evaluate parameters nthe number of observations to use to evaluate parameters returns the parameters [ $ \hat{{\alpha}}$, $ \hat{{\beta}}$]


getInstanceFromMLE

public static CauchyDist getInstanceFromMLE(double[] x,
                                            int n)
. \begin{tabb}
 Creates a new instance of a Cauchy distribution with parameters $\...
 ...thod based on the $n$\ observations
 $x[i]$, $i = 0, 1, \ldots, n-1$.
 \end{tabb}
xthe list of observations to use to evaluate parameters nthe number of observations to use to evaluate parameters


getMean

public static double getMean(double alpha,
                             double beta)
. \begin{tabb}Throws an exception since the mean does not exist.
 \end{tabb}
UnsupportedOperationExceptionthe mean of the Cauchy distribution is undefined.


getVariance

public static double getVariance(double alpha,
                                 double beta)
. \begin{tabb}Returns $\infty$\ since the variance does not exist.
 \end{tabb}
.


getStandardDeviation

public static double getStandardDeviation(double alpha,
                                          double beta)
. \begin{tabb}Returns $\infty$\ since the standard deviation does not exist.
 \end{tabb}


getAlpha

public double getAlpha()
. \begin{tabb}
 Returns the value of $\alpha$\ for this object.
 \end{tabb}


getBeta

public double getBeta()
. \begin{tabb}
 Returns the value of $\beta$\ for this object.
 \end{tabb}


setParams

public void setParams(double alpha,
                      double beta)
. \begin{tabb}
 Sets the value of the parameters $\alpha$\ and $\beta$\ for this object.
 \end{tabb}


getParams

public double[] getParams()
. \begin{tabb}
 Return a table containing parameters of the current distribution.
 This table is put in regular order: [$\alpha$, $\beta$].
 \end{tabb}

 


toString

public String toString()
. \begin{hide}
 \par
 \begin{tabb}
 Returns a \texttt{String} containing information about the current distribution.
 \end{tabb}\end{hide}

Overrides:
toString in class Object

SSJ
V. labo.

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