10

是否有开源来计算 C、C++ 或 Fortran 中高斯分布的多变量(其中维度大于 3,而不是二元或三元)数值 cdf?

我相信 IMSL 做到了; http://www.roguewave.com/portals/0/products/imsl-numerical-libraries/c-library/docs/7.0/html/cstat/default.htm?turl=multivariatenormalcdf.htm

4

2 回答 2

4

你应该去源头……这个家伙自 1980 年代以来,Alan Genz 教授一直在研究如何在数值上做这个和其他多元积分。其他人实现的所有代码都来源于他的算法和论文。他的代码可以计算维度高达 1000 的多元正态分布和 T 分布的 CDF 和期望。

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

我还编写了代码来从 Java 调用这些子例程:Compute the multivariate normal CDF in Java

于 2013-01-25T07:44:54.117 回答
0

我认为 quantlib 应该完成这项工作...... http://quantlib.sourcearchive.com/documentation/1.1-1/classQuantLib_1_1BivariateCumulativeNormalDistributionDr78.html

于 2012-06-19T21:20:15.407 回答