Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

multivariate normal cdf in C, C++, or Fortran [closed]

Is there an open source to calculate multivariate (where dimension is large > 3, not bivariate or trivariate ) numerical cdf of gaussian distributions in C, C++ or Fortran?

I believe IMSL does it; http://www.roguewave.com/portals/0/products/imsl-numerical-libraries/c-library/docs/7.0/html/cstat/default.htm?turl=multivariatenormalcdf.htm

like image 610
adam Avatar asked Jun 19 '12 21:06

adam


1 Answers

You should go to the source...this dude Professor Alan Genz has been researching how to do this and other multivariate integrals numerically since the 1980's. All of the code that others have implemented are derived from his algorithm and papers. His code can compute the CDF and expectation of the multivariate normal and T distributions for dimensions up to 1000.

http://www.math.wsu.edu/faculty/genz/software/software.html

I've also written code to call those subroutines from Java: Compute the multivariate normal CDF in Java

like image 51
Andrew Mao Avatar answered Sep 28 '22 01:09

Andrew Mao