, D# T) X; ?5 I. K* K8 z# j : M) B1 ]( l; f/ u 在解决实际问题的时候应用蒙特卡罗方法主要有两部分工作:1 L7 _0 I( V1 x* h& M
用蒙特卡罗方法模拟某一过程时,需要产生各种概率分布的随机变量。 " ~+ [( ~* L2 X" w% B
用统计方法把模型的数字特征估计出来,从而得到实际问题的数值解。 ' B3 h/ P9 L6 o& R
3 b r# v0 k' I ]
计算步骤$ D. k, o' N+ H* |0 d. p1 R
1 X) W' i; e$ ?% i8 i
]7 D3 Y, T \8 G 使用蒙特卡罗方法进行分子模拟计算是按照以下步骤进行的: : B' s" x5 B3 M2 u( L! e1 q+ _+ K- j ① 使用随机数发生器产生一个随机的分子构型。 8 {8 W5 W2 F# h7 I. H2 E7 x" o ②对此分子构型的其中粒子坐标做无规则的改变,产生一个新的分子构型。 8 C' q" n/ ^5 O, v0 o
③计算新的分子构型的能量。 " C" _. A7 G: S W8 Y( l' [ ④比较新的分子构型于改变前的分子构型的能量变化,判断是否接受该构型。 # n5 @' t4 m& [% j0 w 若新的分子构型能量低于原分子构型的能量,则接受新的构型,使用这个构型重复再做下一次迭代。 2 P! k+ R& y% F4 d 若新的分子构型能量高于原分子构型的能量,则计算玻尔兹曼常数,同时产生一个随机数。 : D6 U% i4 H# p q+ e 若这个随机数大于所计算出的玻尔兹曼因子,则放弃这个构型,重新计算。 6 W& d/ E$ Q! |0 ^6 R
若这个随机数小于所计算出的玻尔兹曼因子,则接受这个构型,使用这个构型重复再做下一次迭代。 - {% p+ o% x0 r$ ^8 G ⑤如此进行迭代计算,直至最后搜索出低于所给能量条件的分子构型结束。 ' \$ E! E( f$ } 9 d; B! l- I \2 x2 ]3 u
在数学中的应用 ! a: W h3 N) w6 X: p/ b8 y8 |" t. [0 Z, z
通常蒙特·卡罗方法通过构造符合一定规则的随机数来解决数学上的各种问题。对于那些由于计算过于复杂而难以得到解析解或者根本没有解析解的问题,蒙特·卡罗方法是一种有效的求出数值解的方法。一般蒙特·卡罗方法在数学中最常见的应用就是蒙特·卡罗积分。 : W8 y5 M, H6 Y7 P; w 积分4 h' q6 F: x) y" c7 `
非权重蒙特卡罗积分,也称确定性抽样,是对被积函数变量区间进行随机均匀抽样,然后对被抽样点的函数值求平均,从而可以得到函数积分的近似值。此种方法的正确性是基于概率论的中心极限定理。当抽样点数为m时,使用此种方法所得近似解的统计误差恒为,不随积分维数的改变而改变。因此当积分维度较高时,蒙特卡罗方法相对于其他数值解法更优。作者: xieyu1232001 时间: 2009-7-18 22:37
基本思想. p5 J: ~' i9 w. ~