lncdfbvn2#
Purpose#
Returns natural log of standardized bivariate Normal cumulative distribution function of a bounded rectangle.
Format#
- lnp = lncdfbvn2(h, dh, k, dk, corr)#
- Parameters:
h (Nx1 vector) – upper limits of integration for variable 1.
dh (Nx1 vector) – increments for variable 1.
k (Nx1 vector) – upper limits of integration for variable 2.
dk (Nx1 vector) – increments for variable 2.
corr (Nx1 vector) – correlation coefficients between the two variables.
- Returns:
lnp (Nx1 vector) – the log of the integral from h, k to h+dh, k+dk of the standardized bivariate Normal distribution.
Examples#
Example 1#
// Upper limits of integration for variable 1
h = 1;
// Increment for variable 1
dh = 1;
// Upper limits of integration for variable 2
k = 1;
// Increment for variable 2
dk = 1;
// Correlation
corr = 0.5;
lncdfbvn2(h, dh, k, dk, corr);
produces
-3.2180110258198771e+000
Example 2#
trap 0, 2;
// Upper limits of integration for variable 1
h = 1;
// Increment for variable 1
dh = 1e-15;
// Upper limits of integration for variable 2
k = 1;
// Increment for variable 2
dk = 1e-15;
// Correlation
corr = 0.5;
lncdfbvn2(h, dh, k, dk, corr);
produces
-7.098869e+001
Example 3#
trap 2,2;
// Upper limits of integration for variable 1
h = 1;
// Increment for variable 1
dh = 1e-45;
// Upper limits of integration for variable 2
k = 1;
// Increment for variable 2
dk = 1e-45;
// Correlation
corr = 0.5;
lncdfbvn2(h, dh, k, dk, corr);
produces
WARNING: Dubious accuracy from lncdfbvn2:
0.000e+000 +/- 2.8e-060
-INF
Remarks#
Scalar input arguments are okay; they will be expanded to Nx1 vectors.
lncdfbvn2()
will abort if the computed integral is negative.
lncdfbvn2()
computes an error estimate for each set of inputs-the real
integral is \(exp(y) \pm err\). The size of the error depends on the input
arguments. If trap 2
is set, a warning message is displayed when \(err \geq= exp(y)/100\).
For an estimate of the actual error, see cdfBvn2e()
.
See also
Functions cdfbvn2()
, cdfbvn2e()