蒙特卡洛方法基础预案.ppt

  1. 1、本文档共77页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Monte Carlo 方法 ;凝聚态物质的数值模拟方法主要有三类: 1, Monte Carlo 方法, a, 经典统计物理的Monte Carlo 方法, b, 量子Monte Carlo 方法quantum MC, 2, 分子动力学方法Molecular Dynamics, 3, 布朗动力学方法.;引言(Introduction);引言(Introduction);Monte Carlo模拟在物理研究中的作用;引言(Introduction);注意以下两点:;引言(Introduction);引言(Introduction);引言(Introduction);引言(Introduction);引言(Introduction);均匀分布的赝随机数的产生方法;随机数的定义和特性;随机数的定义和特性;随机数的定义和特性;随机数的定义和特性;均匀分布的随机数的产生;随机数的产生;随机数的产生;线性乘同余方法 (Linear Congruential Method);线性乘同余方法 (Linear Congruential Method);线性乘同余方法 (Linear Congruential Method);线性乘同余方法 (Linear Congruential Method);讲义中的同余法, xn=(Cxn-1)Mod (N) 其中, C, N 为合适的整数, 从一个种子x0出发, 可以得到一个序列. 很多计算机自带的赝随机数发生器就用的这种方法, 种子通常取系统的当时时间, 重复的可能性很小. 目前这一方法很少使用。 设N=42,C=5,x0=1,根据上式有 x1=(5x0) Mod(42)=5·1-0·42=5 x2=(5x1) Mod(42)=5·5-0·42=25 x3=(5x2) Mod(42)=5·25-2·42=41 x4=(5x3) Mod(42)=5·41-4·42=37 ...... 求得前面的10个数为5,25,41,37,17,1,5,25,41,37 从上述给出数据可见,经过6个数以后就开始重复,周期为m=6 16807法, linux=linux*16807 if(linux.lt.0) linux=linux+2147483647+1 产生 (1, 231 )之间的随机数。 ;Kirkpatrick-Stoll (R250) 假定有250个赝随机整数. 第251个可以这样得到: 或更一般的 : 这里 250, 103是一对特别的数字, 当然还有其它组合. IEOR是FORTRAN 中exclusive OR的记号. 实际上只需要存储250个整数, 不过为了计算简单, 用256个整数. 其它组合有: (98, 27), (1279,216), (1279,418), (9689, 84), (9689,471) (9689, 1836), (9689, 2444), (9689, 4187) ;随机数的随机性检验: 1,均匀性检验 ([0, 1]区间上的直方图) 2,相关性检验 (打点观察) 用严格可解的物理模型检验。 如无规行走。;均匀性检验:黑色为同余法的结果,红色为R250的结果。100点,108 个随机数。 ;相关性检验,左边为R250结果,右边为同余法的结果。10000个点。;非均匀分布的赝随机数产生方法;所以:Z=-(1/α)ln(1-Γ) 去舍法 ;;MC方法求定积分;MC方法求定积分;经典统计物理中的积分: 给定系统的哈密顿量 H(x1, x2, ?, xN), 计算配分函数 自由能: 对自由能求导, 得到各个物理量. 内能: 熵: ; 另一种表述方式: 概率分布: 物理量是状态(用{x}表示)的函数 : 平均值: 涨落: 对于能量: 注意到: 所以: 实际系统 模拟系统;多重积分的计算, Monte Carlo 方法: 由上述第二种表述, 物理量的平均值的计算归结为一个多重积分的计算, 设系统 由100个粒子构成, 每个粒子有6个自由度, 所以需要计算600重积分. 现在考虑在 每一维取10个点, 总共有10600个

文档评论(0)

a336661148 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档