TOMS462
Bivariate Normal Distribution
TOMS462
is a C++ library which
evaluates the upper right tail of the bivariate normal distribution; that is,
the probability that normal variables X and Y with correlation R will
satisfy H <= X and K <= Y.
While the text of many ACM TOMS algorithms is available online
through ACM:
http://www.acm.org/pubs/calgo
or NETLIB:
http://www.netlib.org/toms/index.html, most of the early
algorithms are not available. This is one of them. I typed it
in.
Usage:

value = bivnor ( ah, ak, r )

computes VALUE, the probability that two variables,
X and Y related by a bivariate normal distribution
with correlation R, satisfy AH <= X and
AK <= Y.
Licensing:
The computer code and data files described and made available on this web page
are distributed under
the GNU LGPL license.
Languages:
TOMS462 is available in
a C version and
a C++ version and
a FORTRAN90 version and
a MATLAB version.
Related Data and Programs:
OWENS,
a C++ library which
evaluates Owen's T function.
PROB,
a C++ library which
contains a
number of routines for evaluating cumulative distribution functions.
TEST_VALUES,
a C++ library which
supplies test values of various mathematical functions.
Reference:

Thomas Donnelly,
Algorithm 462: Bivariate Normal Distribution,
Communications of the ACM,
October 1973, Volume 16, Number 10, page 638.

Donald Owen,
Tables for Computing Bivariate Normal Probabilities,
Annals of Mathematical Statistics,
Volume 27, Number 4, pages 10751090, December 1956.
Source Code:
Examples and Tests:
List of Routines:

BIVARIATE_NORMAL_CDF_VALUES returns some values of the bivariate normal CDF.

BIVNOR computes the bivariate normal CDF.

GAUSS returns the area of the lower tail of the normal curve.

R8_ABS returns the absolute value of an R8.

R8_MAX returns the maximum of two R8's.

R8_MIN returns the minimum of two R8's.

TIMESTAMP prints the current YMDHMS date as a time stamp.
You can go up one level to
the C++ source codes.
Last revised on 13 April 2012.