计算材料学第四章原子模拟方法_精品文档资料下载.pdf
《计算材料学第四章原子模拟方法_精品文档资料下载.pdf》由会员分享,可在线阅读,更多相关《计算材料学第四章原子模拟方法_精品文档资料下载.pdf(37页珍藏版)》请在冰豆网上搜索。
randomnumberMonteCarlohotel,LasVegasMonteCarlo方法的来由随机数方法的来由随机数?
MonteCarlo的思想起源于的思想起源于vonNeumann等人对裂变材料的中子扩散问题研究。
在等人对裂变材料的中子扩散问题研究。
在Metropolis等人建立了计算机模拟的等人建立了计算机模拟的MonteCarlo方法以后方法以后,这一方法在解决多粒子体系的相关物理问题的研究中被广泛使用。
这一方法在解决多粒子体系的相关物理问题的研究中被广泛使用。
?
最早利用计算机模拟研究统计力学体系以及相关物理问题的是最早利用计算机模拟研究统计力学体系以及相关物理问题的是Metropolis等人于等人于1953年在美国年在美国LosAlamos国立实验室的第一代电子计算机上完成的国立实验室的第一代电子计算机上完成的,并由此建立了计算机模拟的并由此建立了计算机模拟的MonteCarlo方法。
方法。
MonteCarlo方法的发展历史方法的发展历史MonteCarlo方法的发展历史方法的发展历史?
1968年年,Wood建立了建立了NPT正则系综的正则系综的MonteCarlo方法。
1969年年Norman和和Filinov建立了巨正则系综的建立了巨正则系综的MonteCarlo抽样方法。
抽样方法。
1987年年Panagiotopoulos把把MonteCarlo方法应用于方法应用于Gibbs系综。
系综。
1986年年,Voter在点阵气体模型基础上提出了描述表面原子运动在点阵气体模型基础上提出了描述表面原子运动KineticMonteCarlo方法,被迅速应用于薄膜生长模拟。
方法,被迅速应用于薄膜生长模拟。
MC方法在数学上成为随机模拟方法、随机抽样技术等;
方法在数学上成为随机模拟方法、随机抽样技术等;
MC方法的基本思想是:
针对某一具体的问题,通过建立一个概率模型或随机过程模型,使其参数等于实际问题的解。
方法的基本思想是:
MonteCarlo方法的基本思想方法的基本思想WhatIsMCandWhatisitfor?
MCexploresthestatesofasystemstochasticallywithprobabilitiesthatmatchthoseexpectedphysicallyStochasticmeansinvolvingorcontainingarandomvariableorvariables,whichispracticemeansthatthemethoddoesthingsbasedonvaluesofrandomnumbersMCisusedtogetthermodynamicaverages,thermodynamicpotentials(fromtheaverages),andstudyphasetransitionsMChasmanyotherapplicationsoutsidematerialsscience,whereiscoversalargerangeofmethodsusingrandomnumbersCalledMonteCarlosincethatiswheregamblinghappenslotsofchance!
MonteCarlo积分圆周率的计算积分圆周率的计算shothitsquarecirclettSS=2121d()()d()()xxxxFxfxfxFxxx=MonteCarlo积分积分max21211max1()()xxxxxFf=xyx1x2f(x)分子动力学方法的局限分子动力学方法的局限统计力学与热力学简单回顾统计力学与热力学简单回顾统计力学与热力学简单回顾统计力学与热力学简单回顾系综平均系综平均系综平均系综平均?
简单抽样方法在随机选取事件(如:
空间位型)时,只考虑事件存在的可能性,而不考虑事件本身存在的概率。
在简单抽样过程中,统计平均量是通过已出现事件及其存在的概率进行统计平均而给出。
抽样满足波尔兹曼统计,物理量抽样满足波尔兹曼统计,物理量A的期望值由下式给出:
的期望值由下式给出:
简单抽样简单抽样=MlMlkTHkTHAA11)/)(exp()/)(exp()()(ProblemwithSimpleMCSampling(s)isVerySharplyPeaked(s)isveryverysharp:
Forasolid,fractionofstateswhere(s)issignificantise-N,whereN=numberofparticles(for100particlesyourchanceofchoosingarelevantstateis1ine100=1044,ie,never!
)Statess(s)Samplingstatesherecontributes0tointegralAlmostallthecontributiontoanintegralover(s)comesfromhere?
重要抽样方法在随机选取事件(如:
空间位型)时,同时考虑事件存在的可能性和事件本身存在的概率。
事件本身存在的概率通过事件本身存在的概率通过Markov链中的转移矩阵而确定。
链中的转移矩阵而确定。
在重要抽样过程中,统计平均量是通过已出现事件直接进行统计平均而给出。
对于有限温度下的统计,不再是按照简单抽样那样随机生成样本,而是对温度对于有限温度下的统计,不再是按照简单抽样那样随机生成样本,而是对温度T起重要作用的那些样本进行择优抽样。
即采取与分布函数相同的概率形式抽取样本。
起重要作用的那些样本进行择优抽样。
重要抽样重要抽样重要抽样重要抽样Pickingstateswithabiasedprobablility:
ImportanceSamplingAnalgorithmtopickaseriesofstatessothattheyasymptoticallyappearwithprobability(s)=exp(-E(s)1.Assumeweareinstatesi2.Chooseanewstates*,anddefineE=E(s*)-E(s)3.IfE0thenaccepts*withprobabilityexp(-E)5.Ifweaccepts*thensetsi+1=s*andreturnto1.instatesi+16.Ifwerejects*thenreturnto1.instatesiThisisaMarkovprocess,whichmeansthatthenextstatedependsonlyonthepreviousoneandnonebeforethan(notlikeMD).TheMetropolisAlgorithm(General)Weonlyneedtoconsideratomicpositions(sincemomentadonotenterinto(s)1.Assumetheatomshavepositions(r1,rj,rN)2.Chooseanewsetofpositionsrj*=rj+(2-1)r,wherejischosenatrandomandrisafixedsteplengthandisarandomnumberbetween0and1.3.FindE=E(r1,rj*,rN)-E(r1,rj,rN)(notethatthiscanbedonequicklybeonlyrecalculatingtheenergycontributionofatomjanditsneighbors)4.IfE0thenacceptrj*withprobabilityexp(-E)6.Ifwerejectrj*thenchangenothingandreturnto1Theprobabilityofseeinganysetofcoordinatesrwilltendasymptoticallyto()()()expVZ=rrrMetropolisAlgorithmforInteractingAtoms1.Startwithsomeconfiguration2.Chooseperturbationofthesystem,e.g.,moveoneatomfromRtoR3.Computeenergychangeduetothatperturbation4.IfE0,acceptperturbationwithprobabilityexp-E/kT5.Choosenextperturbation6.7.RunsufficientMCstepandaverageoverallthesestatesRRMetropolisMonteCarlo样本的分布为正则分布,可以很好模拟样本的分布为正则分布,可以很好模拟NVT系综系综Metropolisetal.,J.Chem.Phys.21,1087(1958)随机数随机数MonteCarlo轨迹轨迹ThermalAverageinMCMCStepEnergyEquilibrationperiod:
Notequilibrated,thermalaverageswillbewrongConverged:
Equilibrated,thermalaverageswillberightObtainingThermalAveragesFromMCTheMCalgorithmwillconvergetosamplestateswithprobability(s)=probabilityexpectedfromstatisticalmechanics.Soathermalaverage