Alan Genz Software
 R

MVTNORM:
An R package for computing multivariate normal and t probabilities,
quantiles random deviates and densities, with
Bretz, F. Miwa, T., Mi, X., Leisch, F., Scheipl, F.,
Bornkamp, B., and Hothorn, T.

BAYESPACK:
An R package for integration for Bayesian Inference, with B. Bornkamp.
 MATLAB

QSIMVN:
A Matlab function with supporting functions, for the numerical computation
of multivariate normal distribution values. The method used is similar to
the method used by the Fortran MVNDST software, but the quasirandom
integration point set is different. QSIMVNV
is a vectorized version of this software which is usually much faster
than QSIMVN. QSILATMVNV is a vectorized
version of QSIMVN which uses lattice rules for the quasirandom
point set. QSIMVNAUTO is an
"automatic" driver for QSIMVNV, with defaults for accuracy level and
work limit.

QSIMVT:
A Matlab function with supporting functions, for the numerical computation
of multivariate t distribution values. The method used is similar to
the method used by the Fortran MVTDST software, but the quasirandom
integration point set is different. QSIMVTV
is a vectorized version of this software which is usually much faster
than QSIMVT. QSILATMVTV is a vectorized
version of QSIMVT which uses lattice rules for the quasirandom
point set.

MVNRCNV:
A Matlab function for the numerical computation of multivariate
normal distribution values for problems with a constant rho
correlation matrix (all offdiagonal entries equal to the same constant).

BVN:
A Matlab function for the computation of
bivariate normal probabilities.

MVNXPB:
A Matlab function for the approximate computation of
multivariate normal probabilities, using bivariate conditioning.

TVN:
A set of Matlab functions, for the computation of univariate,
bivariate and trivariate normal probabilities.

QVNCDF:
A Matlab function for the computation of
quadrivariate normal probabilities.

ADAPT:
A Matlab function for subregion adaptive multiple integration of a
vector of functions over a hyperrectangle.

ADSIMP:
A Matlab function for subregion adaptive multiple integration of a
vector of functions over a simplex or a set of simplices.
This software uses the integration rules and subdivision methods described in
the paper by Alan Genz and Ronald Cools,
An Adaptive Numerical Cubature Algorithm for Simplices
.

GRNMOL:
A Matlab function for computing an approximation to an integral
over a simplex using GrundmannMoler rules. Reference:
"Invariant Integration Formulas for the NSimplex by Combinatorial Methods",
A. Grundmann and H. M. Moller, SIAM J Numer. Anal. 15(1978), pp. 282290.

MGP:
A Matlab function with supporting functions, for the numerical computation
of approximate upper and lower bounds for the maximum of a centered
stationary Gaussian process P( M_T > u ), or P( M_T > u ).

QSIMVNDV:
A Matlab function with supporting functions, for the numerical computation
of multivariate normal distribution values and derivatives.
The method used is similar to the method used by qsimvnv.

QSCMVN:
A Matlab function with supporting functions, for the numerical computation
of multivariate normal distribution values.
The method used is similar to the method used by the Fortran MVNDST software,
but the quasirandom integration point set is different and the
integration region may be specified by a set of linear inequalities
in the form a < c*x < b, where a and b are mvectors and c is an mxn matrix.
QSCMVNV is a vectorized
version of this software which is usually at lot faster than QSCMVN.
QSCLATMVNV is a vectorized
version of QSCMVN which uses lattice rules for the quasirandom integration
point set.

BVNL:
A Matlab function for the computation of bivariate normal cdf
probabilities; infinity input parameter bug fixed 10/29/09.

TVNL:
A set of Matlab functions, for the computation of univariate,
bivariate and trivariate normal cdf probabilities.
TVNLS
is a simpler but less accurate version of this software.

BVTL:
A Matlab function for the computation of bivariate t cdf probabilities.

TVT:
A set of Matlab functions, for the computation of univariate,
bivariate and trivariate normal and tprobabilities.
All zero correlations bug fixed 10/8/12.

TVTL:
A set of Matlab functions, for the computation of univariate,
bivariate and trivariate normal and t cdf probabilities.
Minor bug for bvtl special cases fixed 12/20/04.
All zero correlations bug fixed 10/8/12.

TRIBND:
A set of Matlab functions, for the computation of
modified Bonferroni and HunterWorsley bounds, with
optional trivariate corrections, for MVN probabilities.

QSIMVNEF:
A Matlab function with supporting functions, for the numerical computation
of multivariate normal distribution expected values. The method used is
similar to the method used for qsimvn, but qsimvnef also computes the
expected value of a user specified function.
QSIMVNEFV is a vectorized version of
qsimvnef, which also allows the user specified function to be a vector
valued function, so that several expectations can be computed simultaneously.

MVNLPS:
A Matlab function for the numerical computation of multivariate normal
distribution values for ellipsoidal sets.

QSCMVT:
A Matlab function with supporting functions, for the numerical computation
of multivariate t distribution values. The method used is similar to the
method used by the Fortran MVTDST software, but the quasirandom
integration point set is different. The integration region may be
specified by a set of linear inequalities in the form a < c*x < b,
where a and b are mvectors and c is an mxn matrix.
QSCMVTV is a vectorized
version of this software which is usually at lot faster than QSCMVT.

FWTPTS:
A Matlab function with supporting functions, for the computation
of points and weights for fully symmetric interpolatory
rules (these are sparsegrid rules) for integration
over hypercubes or Gaussian weighted hyperspace.

GAUSND:
A Matlab function with supporting function, for the computation
of a ddimensional Gauss product rule. GaussLegendre, Hermite or
Laguerre rules can be used. GAUSNDV
is a vectorized version of this software which is usually a lot faster.

SPHRUL:
A Matlab function, with supporting functions, for the
computation of spherical surface integrals.
SPHRLR is
a randomized version of SPHRUL.
 FORTRAN

TVPACK:
A set of Fortran subroutines, with sample driver program, for the
computation of univariate, bivariate and trivariate normal and
tprobabilities.

MVSTAT:
A set of Fortran 90 subroutines for the numerical
computation of multivariate t integrals, with maximum dimension 100.
This is a conversion of the best MVTDST sofware, with modifications
that allow the integration regions to be specified using a set of linear
inequalities. This software may also be used to compute multivariate normal
integrals and critical values. A
simple example program is also available, along with a simple
critical value example program
and a more complicated example program.
Revised 6/02 with the addition of functions for trivariate distributions and
3rd order bounds, and some minor bugs fixed.
A revision 11/05 fixed parameter bug for dimensions 25100.

ADAPT:
A set of Fortran subroutines, with sample driver program, for the
numerical integration of a vector of integrals over a hyperrectangular
region. A simple example program is
also available.

SMPINT:
A set of Fortran subroutines, with sample driver program, for the
numerical integration of a vector of integrals over a collection of simplices.
This software uses the integration rules and subdivision methods described in
the paper by Alan Genz and Ronald Cools,
An Adaptive Numerical Cubature Algorithm for Simplices
(Postscript).

PATSYM:
A set of Fortran subroutines, with sample driver program, for the
numerical integration of a vector of integrals over a hyperrectangular
region. This software uses the integration rules described in
the paper by Alan Genz, Fully Symmetric Interpolatory Rules for Multiple
Integrals, SIAM J. Numer. Anal. 23 (1986), pp. 12731283.

CUBPACK:
website for the CUBPACK research project. The purpose of this
project with Ronald Cools and Ann Haegemans, is to develop and implement
algorithms for the numerical computation of multiple integrals.

ParInt:
website for NSF supported ParInt research project. The purpose of this
project with Elise de Doncker and Ajay Gupta, is to develop and implement
parallel algorithms for the numerical computation of multiple integrals.

MVTDST:
A set of Fortran subroutines, with sample driver program, for the numerical
computation of multivariate t integrals, with maximum
dimension 100. This is an assimilation of the best sofware in MVTPACK.
This software may also be used to compute multivariate normal integrals.
Revised 8/00 to include a bivariate t distribution function.
A revision 11/05 fixed parameter bug for dimensions 25100.
A revision 7/7 increased the maximum dimension to 1000.

MVNEXP:
A Fortran subroutine and function, with sample driver program, for the
numerical computation of the expected values for the variables for a
multivariate normal distribution, with maximum dimension 100. This
must be compiled with the MVNDST file, without the MVNDST driver program.

MVNEXG:
A Fortran subroutine and functions, with sample driver program, for the
numerical computation of expected values for a user defined function with
multivariate normal weight, with maximum dimension 1000.

MVNXPP:
A Fortran subroutine and function, with sample driver program, for the
numerical computation of the expected values for the variables and the
squares of the variables for a multivariate normal distribution,
with maximum dimension 100. This must be compiled with the MVNDST file,
without the MVNDST driver program.

MVNDST:
A set of Fortran subroutines, with sample driver program, for the numerical
computation of multivariate normal integrals, with maximum dimension 100.
A revision 11/98 allows for positive semidefinite correlation matrices.
A revision 1/03 increased the maximum dimension to 500.
A revision 11/05 fixed parameter bug for dimensions 25100.
Minor bug for dimensions > 100 fixed 7/07

MVNPACK:
A set of Fortran subroutines, with sample driver program, for the numerical
computation of multivariate normal integrals. with maximum dimension 100.
Original (1990's) MVN subroutines SADMVN, RANMVN, KROMVN and SPHMVN,
plus supporting software and test program.

RANRTH:
A Fortran subroutine for the numerical computation of a vector
integrals over an infinite region with a Gaussian weight function. This
software is described in the paper "A Stochastic Algorithm for High
Dimensional Multiple Integrals over Unbounded Regions with Gaussian Weight".

HRMSYM:
A Fortran subroutine for the numerical computation of a vector
integrals over an infinite region with a Gaussian weight function. This is
software for an implementation of rules described in the paper "Fully Symmetric
Interpolatory Rules for Multiple Integrals over Infinite Regions with
Gaussian Weight". Also included is software for GaussHermite product rules
for a maximum of fifty points in each variable.

DECUHR:
A set of Fortran subroutines, with sample driver program, for the
numerical computation of singular multiple integrals. This software uses
methods described in the paper by Espelid, T. and Genz, A. (1994),
An Algorithm for Automatic Integration of Singular Functions over a
Hyperrectangular Region, published in Numerical Algorithms 8, pp. 201220.

DCUHRE:
A set of Fortran subroutines, with sample driver program, for the
numerical computation of multiple integrals. This software is described
in the paper by Berntsen, J., Espelid, T. and Genz, A. (1991),
An Adaptive Multidimensional Integration Routine for a Vector of Integrals,
published in ACM Trans. Math. Softw. 17, pp. 452456.

MULTST:
A multiple integration subroutine test package,
with sample driver program and early version of ADAPT.