用蒙特卡洛积分估算以下积分:
我正在尝试对以下问题进行蒙特卡洛积分,其中p(x)是高斯分布,均值是1,方差是2。(参见图片)。>>
有人告诉我们,一旦我们从正态分布中抽取样本,pdf就会消失在积分中。请解释这个概念,以及如何在Python中解决这个问题。以下是我的尝试。
def func(x):
return (math.exp(x))*x
mu = 1
sigma = sqrt(2)
N = 1000
areas = []
for i in range(N):
xrand = np.zeros(N)
for i in range (len(xrand)):
xrand[i] = np.random.normal(mu, sigma)
integral = 0.0
for i in range (N):
integral += func(xrand[i])/N
answer = integral
areas.append(answer)
plt.title("Distribution of areas calculated")
plt.hist(areas, 60, ec = 'black')
plt.xlabel("Areas")
integral
[估计以下与蒙特卡洛积分的积分:我正在尝试对以下问题进行蒙特卡洛积分,其中p(x)是高斯分布,平均值为1,方差为...
这里是基于原始源代码的Python实现。