小编Dom*_*miD的帖子

Fortran 90的随机数生成器可以信任蒙特卡洛集成吗?

我编写了一个简短的monte carlo积分算法来计算Fortran 90中的积分.我曾经使用内部随机数生成器和使用Numerical Recipes中提供的随机数生成器方法ran1来比较通过求解积分得到的结果. Fortran90第2卷.

运行相同的算法两次,一旦调用内在的random_seed(),然后总是调用random_number(),并且一旦调用在Numerical Recipe书中提供的ran1()方法,我获得的结果是原理相同的形状,但内在的结果是连续的曲线与ran1结果形成对比.在这两种情况下,我使用随机参数调用函数10,000次作为参数值q,添加它然后继续下一个q值并调用函数10,000次等.

结果的比较图像可以在这里找到: http://i.imgur.com/gZVFdOP.png

如果我增加调用次数,则曲线会收敛.但我想知道:为什么内在随机数发生器会产生这种平滑性?是否仍然建议使用它或是否有其他更多建议的RNG?我认为连续结果是内在数字生成器的"较少"随机性的结果.

(我省略了源代码,因为我不认为它有很多输入.如果有人关心我可以在以后交出它.)

random integration fortran montecarlo

9
推荐指数
1
解决办法
1615
查看次数

标签 统计

fortran ×1

integration ×1

montecarlo ×1

random ×1