SSJ
V. 2.6.

umontreal.iro.lecuyer.probdistmulti
Class BiNormalDonnellyDist

java.lang.Object
  extended by umontreal.iro.lecuyer.probdistmulti.ContinuousDistributionMulti
      extended by umontreal.iro.lecuyer.probdistmulti.ContinuousDistribution2Dim
          extended by umontreal.iro.lecuyer.probdistmulti.BiNormalDist
              extended by umontreal.iro.lecuyer.probdistmulti.BiNormalDonnellyDist

public class BiNormalDonnellyDist
extends BiNormalDist

Extends the class BiNormalDist for the bivariate normal distribution using a translation of Donnelly's FORTRAN code.


Field Summary
 
Fields inherited from class umontreal.iro.lecuyer.probdistmulti.ContinuousDistribution2Dim
decPrec
 
Constructor Summary
BiNormalDonnellyDist(double rho)
          Same as BiNormalDonnellyDist (rho, 15).
BiNormalDonnellyDist(double mu1, double sigma1, double mu2, double sigma2, double rho)
          Same as BiNormalDonnellyDist (mu1, sigma1, mu2, sigma2, rho, 15).
BiNormalDonnellyDist(double mu1, double sigma1, double mu2, double sigma2, double rho, int ndig)
          Constructor with parameters μ1 = mu1, μ2 = mu2, σ1 = sigma1, σ2 = sigma2, ρ = rho, and d = ndig digits of accuracy.
BiNormalDonnellyDist(double rho, int ndig)
          Constructor with default parameters μ1 = μ2 = 0, σ1 = σ2 = 1, correlation ρ = rho, and d = ndig digits of accuracy (the absolute error is smaller than 10-d).
 
Method Summary
 double barF(double x, double y)
          .
static double barF(double x, double y, double rho)
           
static double barF(double mu1, double sigma1, double x, double mu2, double sigma2, double y, double rho)
           
static double barF(double mu1, double sigma1, double x, double mu2, double sigma2, double y, double rho, int ndig)
          Computes the upper binormal distribution function with parameters μ1 = mu1, μ2 = mu2, σ1 = sigma1, σ2 = sigma2, ρ = rho and ndig decimal digits of accuracy.
static double barF(double x, double y, double rho, int ndig)
          Computes the upper standard binormal distribution function with parameters ρ = rho and ndig decimal digits of accuracy.
 double cdf(double x, double y)
          .
static double cdf(double x, double y, double rho)
           
static double cdf(double mu1, double sigma1, double x, double mu2, double sigma2, double y, double rho)
           
static double cdf(double mu1, double sigma1, double x, double mu2, double sigma2, double y, double rho, int ndig)
          Computes the binormal distribution function with parameters μ1 = mu1, μ2 = mu2, σ1 = sigma1, σ2 = sigma2, correlation ρ = rho and ndig decimal digits of accuracy.
static double cdf(double x, double y, double rho, int ndig)
          Computes the standard binormal distribution with the method described in, where ndig is the number of decimal digits of accuracy provided (ndig  <= 15).
 
Methods inherited from class umontreal.iro.lecuyer.probdistmulti.BiNormalDist
density, density, density, getCorrelation, getCorrelation, getCovariance, getCovariance, getMean, getMean, getMu1, getMu2, getSigma1, getSigma2
 
Methods inherited from class umontreal.iro.lecuyer.probdistmulti.ContinuousDistribution2Dim
cdf, density
 
Methods inherited from class umontreal.iro.lecuyer.probdistmulti.ContinuousDistributionMulti
getDimension
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BiNormalDonnellyDist

public BiNormalDonnellyDist(double rho,
                            int ndig)
Constructor with default parameters μ1 = μ2 = 0, σ1 = σ2 = 1, correlation ρ = rho, and d = ndig digits of accuracy (the absolute error is smaller than 10-d). Restriction: d <= 15.


BiNormalDonnellyDist

public BiNormalDonnellyDist(double rho)
Same as BiNormalDonnellyDist (rho, 15).


BiNormalDonnellyDist

public BiNormalDonnellyDist(double mu1,
                            double sigma1,
                            double mu2,
                            double sigma2,
                            double rho,
                            int ndig)
Constructor with parameters μ1 = mu1, μ2 = mu2, σ1 = sigma1, σ2 = sigma2, ρ = rho, and d = ndig digits of accuracy. Restriction: d <= 15.


BiNormalDonnellyDist

public BiNormalDonnellyDist(double mu1,
                            double sigma1,
                            double mu2,
                            double sigma2,
                            double rho)
Same as BiNormalDonnellyDist (mu1, sigma1, mu2, sigma2, rho, 15).

Method Detail

cdf

public static double cdf(double x,
                         double y,
                         double rho,
                         int ndig)
Computes the standard binormal distribution with the method described in, where ndig is the number of decimal digits of accuracy provided (ndig  <= 15). The code was translated from the Fortran program written by T. G. Donnelly and copyrighted by the ACM (see http://www.acm.org/pubs/copyright_policy/#Notice). The absolute error is expected to be smaller than 10-d, where d = ndig.


cdf

public static double cdf(double mu1,
                         double sigma1,
                         double x,
                         double mu2,
                         double sigma2,
                         double y,
                         double rho,
                         int ndig)
Computes the binormal distribution function with parameters μ1 = mu1, μ2 = mu2, σ1 = sigma1, σ2 = sigma2, correlation ρ = rho and ndig decimal digits of accuracy.


barF

public static double barF(double mu1,
                          double sigma1,
                          double x,
                          double mu2,
                          double sigma2,
                          double y,
                          double rho,
                          int ndig)
Computes the upper binormal distribution function with parameters μ1 = mu1, μ2 = mu2, σ1 = sigma1, σ2 = sigma2, ρ = rho and ndig decimal digits of accuracy.


barF

public static double barF(double x,
                          double y,
                          double rho,
                          int ndig)
Computes the upper standard binormal distribution function with parameters ρ = rho and ndig decimal digits of accuracy.


cdf

public double cdf(double x,
                  double y)
Description copied from class: ContinuousDistribution2Dim
. Computes the distribution function F(x, y):

F(x, y) = P[X <= x, Y <= y] = ∫-∞xds-∞ydt f (s, t).

Overrides:
cdf in class BiNormalDist
Parameters:
x - value x at which the distribution function is evaluated
y - value y at which the distribution function is evaluated
Returns:
distribution function evaluated at (x, y)

cdf

public static double cdf(double x,
                         double y,
                         double rho)

cdf

public static double cdf(double mu1,
                         double sigma1,
                         double x,
                         double mu2,
                         double sigma2,
                         double y,
                         double rho)

barF

public double barF(double x,
                   double y)
Description copied from class: ContinuousDistribution2Dim
. Computes the upper cumulative distribution function bar(F)(x, y):

bar(F)(x, y) = P[X >= x, Y >= y] = ∫xdsydt f (s, t).

Overrides:
barF in class BiNormalDist
Parameters:
x - value x at which the upper distribution is evaluated
y - value y at which the upper distribution is evaluated
Returns:
upper distribution function evaluated at (x, y)

barF

public static double barF(double mu1,
                          double sigma1,
                          double x,
                          double mu2,
                          double sigma2,
                          double y,
                          double rho)

barF

public static double barF(double x,
                          double y,
                          double rho)

SSJ
V. 2.6.

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