【发布时间】:2018-03-19 08:19:20
【问题描述】:
我想使用 hit and miss 方法计算以下积分。
I=∫x^3dx 与 lower= 0 和 upper =1
我知道如何解决它,但我在 R 中找不到正确的代码来计算它并生成 - 例如 100000 随机数 - 然后像这样绘制它们:
谢谢。
【问题讨论】:
标签: r algorithm simulation montecarlo
我想使用 hit and miss 方法计算以下积分。
I=∫x^3dx 与 lower= 0 和 upper =1
我知道如何解决它,但我在 R 中找不到正确的代码来计算它并生成 - 例如 100000 随机数 - 然后像这样绘制它们:
谢谢。
【问题讨论】:
标签: r algorithm simulation montecarlo
1.从所需长度的均匀分布中生成2个向量
l = 10000
x = runif(l)
y = runif(l)
2. 积分的近似值是 (x,y) 点低于您要积分的函数的情况数:
sum(y<x^3)/l
3. 对于绘图,您只需绘制点,根据它们是在曲线上方还是下方更改它们的颜色,然后使用curve() 添加函数:
plot(x,y,col=1+(y<x^3))
curve(x^3,add=T,col=3)
【讨论】: