Package 'pbivnorm'

Title: Vectorized Bivariate Normal CDF
Description: Provides a vectorized R function for calculating probabilities from a standard bivariate normal CDF.
Authors: Fortran code by Alan Genz. R code by Brenton Kenkel, based on Adelchi Azzalini's 'mnormt' package.
Maintainer: Brenton Kenkel <[email protected]>
License: GPL (>= 2)
Version: 0.6.0
Built: 2024-05-07 05:40:34 UTC

Help Index

Standard bivariate normal CDF


Calculate probabilities from the CDF of a standard bivariate normal distribution.


pbivnorm(x, y, rho = 0, recycle = TRUE)



vector of upper integration limits for the CDF. May also be a two-column matrix, in which case y should not be used.


vector of upper integration limits.


correlation parameter.


whether to automatically recycle the vectors x, y, and rho to conform to whichever is longest. If FALSE, all three must be the same length.


This function returns values identical to those of biv.nt.prob in the mnormt package, but is vectorized to reduce the number of Fortran calls required for computation of many probabilities.


Numeric vector of probabilities.


Fortran code by Alan Genz (see references). R interface by Brenton Kenkel ([email protected]), based on code from Adelchi Azzalini's mnormt package.


Genz, A. (1992). Numerical Computation of Multivariate Normal Probabilities. J. Computational and Graphical Statist., 1, 141–149.

Genz, A. (1993). Comparison of methods for the computation of multivariate normal probabilities. Computing Science and Statistics, 25, 400–405.

Genz, A. Fortran code for MVTDSTPACK available at (as of 2011-02-21).


x <- rnorm(10)
y <- rnorm(10)
rho <- runif(10)

pbivnorm(x, y, rho)

X <- cbind(x, y)
pbivnorm(X, rho = rho)

## rho can be a single value, unless recycling is disallowed
rho <- runif(1)
pbivnorm(x, y, rho)