在C,C ++或Fortran中的多变量正态cdf [英] multivariate normal cdf in C, C++, or Fortran
问题描述
是否有一个开源来计算多变量(维度大于3,而不是双变量或三变量)C,C ++或Fortran中高斯分布的数值cdf?
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
推荐答案
你应该去源...这个花花公子Alan Genz教授一直在研究如何做这个和其他多变量自20世纪80年代以来,其他人实现的所有代码都来自他的算法和论文。他的代码可以计算CDF和多维正态和T分布的期望,尺寸高达1000.
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
我也写了代码从Java调用这些子程序:计算Java中的多变量法线CDF
I've also written code to call those subroutines from Java: Compute the multivariate normal CDF in Java
这篇关于在C,C ++或Fortran中的多变量正态cdf的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!