答案 0 :(得分:0)
是的,我发现了自己的错误。我没有使用PDF的逆积分来计算每个点的“权重”。对于任何感兴趣的人,我的条件循环读取如下:
for (i = 0; i <= N; i++) {
X = (double) rand() / (double) RAND_MAX;
integrand = function(inverse(X)) / PDF(inverse(X));
sum = sum + integrand;
sum2 = sum2 + (integrand * integrand);
}
average = sum / N;
average2 = sum2 / N;
当PDF是我的概率密度函数时,inverse是PDF的逆积分。平均值和平均值分别代表和。