您好,欢迎访问三七文档
分子动力学方法MolecularDynamicsSimulation分子动力学是在原子、分子水平上求解多体问题的重要的计算机模拟方法,可以预测纳米尺度上的材料动力学特性。通过求解所有粒子的运动方程,分子动力学方法可以用于模拟与原子运动路径相关的基本过程。在分子动力学中,粒子的运动行为是通过经典的Newton运动方程所描述。1.特点:分子动力学模拟方法可以看作是体系在一段时间内的发展过程的模拟。在这样的处理过程中我们可以看出:分子动力学方法中不存在任何随机因素。在分子动力学方法处理过程中,方程组的建立是通过对物理体系的微观数学描述给出的。在这个微观的物理体系中,每个分子都各自服从经典的牛顿力学。每个分子运动是用理论力学上的哈密顿量或者拉格朗日量来描述,也可以直接用牛顿运动方程来描述。系统的动力学机制决定运动方程的形式这种方法可以处理与时间有关的过程,因而可以处理非平衡态问题。但是使用该方法的程序较复杂,计算量大,占内存也多。适用范围广泛:原则上,分子动力学方法所适用的微观物理体系并无什么限制。这个方法适用的体系既可以是少体系统,也可以是多体系统;既可以是点粒子体系,也可以是具有内部结构的体系;处理的微观客体既可以是分子,也可以是其它的微观粒子。实际使用的限制:一个是有限观测时间的限制;另一个是有限系统大小的限制。通常人们感兴趣的是体系在热力学极限下(即粒子数目趋于无穷时)的性质。但是计算机模拟允许的体系大小要比热力学极限小得多,因此可能会出现有限尺寸效应。自五十年代中期开始,分子动力学方法得到了广泛的应用。它与蒙特卡洛方法一起已经成为计算机模拟的重要方法。应用分子动力学方法取得了许多重要成果,例如气体或液体的状态方程、相变问题、吸附问题等,以及非平衡过程的研究。为了减小有限尺寸效应,人们往往引入周期性、全反射、漫反射等边界条件。当然边界条件的引入显然会影响体系的某些性质。数值求解时的离散化方法:对体系的分子运动方程组采用计算机进行数值求解时,需要将运动方程离散化为有限差分方程。常用的求解方法有欧拉法、龙格-库塔法、辛普生法等。数值计算的误差阶数显然取决于所采用的数值求解方法的近似阶数。原则上,只要计算机计算速度足够大,内存足够多,我们可以使计算误差足够小。2.分子动力学基础知识一、分子运动方程及其数值求解采用分子动力学方法时,必须对一组分子运动微分方程做数值求解。从计算数学的角度来看,这是个求一个初值问题的微分方程的解。实际上计算数学为了求解这种问题已经发展了许多的算法,但是并不是所有的这些算法都可以用来解决物理问题。例子:以一个一维谐振子为例,来看一下如何用计算机数值计算方法求解初值问题。一维谐振子的经典哈密顿量为:22212kxmpH这里的哈密顿量(即能量)为守恒量。假定初始条件为x(0)P(0),则它的哈密顿方程是对时间的一阶微分方程mpPHdtdxkxxHdtdp计算在相空间中的运动轨迹(x(t),p(t)):采用有限差分法,将微分方程变为有限差分方程,以便在计算机上做数值求解,并得到空间坐标和动量随时间的演化关系。首先,取差分计算的时间步长为h,采用一阶微分形式的向前差商表示,直接运用展开到h的一阶泰勒展开公式:)()()(2hOdtdfhtfhtf即可得到:htfhtfdtdf)()(则微分方程改写为差分形式:mtphtxhtxdtdx)()()()()()(tkxhtphtpdtdp我们得到解微分方程的欧拉(Euler)算法:)()()()()()(thkxtphtpmthptxhtx这是一组递推公式。有了初始条件,就可以一步一步地使用前一时刻的坐标、动量值确定下一时刻的坐标、动量值。这个方法是一步法的典型例子。由于在实际数值计算时的大小是有限的,因而在上述算法中微分被离散化为差分形式来计算时总是有误差的。可以证明一步法的局部离散化误差与总体误差是相等的,都为的量级。在实际应用中,适当地选择的大小是十分重要的。取得太大,得到的结果偏离也大,甚至于连能量都不守恒;取得太小,有可能结果仍然不够好。这就要求我们改进计算方法,进一步考虑二步法。)(2hO差分计算的二步法实际上泰勒展开式的一般形式为:)()(!)()(1)(niniihOtfihtfhtf前面叙述的欧拉算法就是取n=1。取n=2展开后可得到:)]()([2)()()()(2)(2htxhtxhmtpmtFhhtxtxhtx这是二步法的一种,称为Verlet方法。Verlet算法是分子动力学模拟中求解常微分方程最通用的方法二、多体系统的基本概念与分子动力学方法N体系统中,一个n体的密度函数一般可以写为:NnnnnrdrdrdRWnNNZrrr2121)()!(!1),,(其中是描写系统的几率函数。)(RW通常为由系统中所有粒子的坐标、动量构成的相空间中的任意一点。R分子动力学元胞分子动力学模拟方法往往用于研究大块物质在给定密度下的性质,而实际计算模拟不可能在几乎是无穷大的系统中进行。所以必须引进一个叫做分子动力学元胞的体积元,以维持一个恒定的密度。对气体和液体,如果所占体积足够大,并且系统处于热平衡状态的情况下,那么这个体积的形状是无关紧要的。对于晶态的系统,元胞的形状是有影响的。为了计算简便,对于气体和液体,我们取一个立方形的体积为分子动力学元胞。设分子动力学元胞的线度大小为L,则其体积为L3。由于引进这样的立方体箱子,将产生六个我们不希望出现的表面。模拟中碰撞这些箱的表面的粒子应当被反射回到元胞内部,特别是对粒子数目很少的系统。然而这些表面的存在对系统的任何一种性质都会有重大的影响。元胞的周期性边界条件为了将分子动力学元胞有限立方体内的模拟,扩展到真实大系统的模拟,我们通常采用周期性边界条件。采用这种边界条件,我们就可以消除引入元胞后的表面效应,构造出一个准无穷大的体积来更精确地代表宏观系统。实际上,这里我们做了一个假定,即让这个小体积元胞镶嵌在一个无穷大的大块物质之中。周期性边界条件的数学表示形式为:),,(),()(321nnnnLnxAxA其中为任意的可观测量,为任意整数。这个边界条件就是命令基本分子动力学元胞完全等同地重复无穷多次。A321,,nnn该边界条件的具体实现是这样操作的:当有一个粒子穿过基本分子动力学元胞的六方体表面时,就让这个粒子以相同的速度穿过此表面对面的表面重新进入分子动力学元胞内。不同分子动力学元胞盒子内粒子间的相互作用:对于不同分子动力学元胞盒子内粒子间的相互作用,如果相互作用是短程力,我们可以在长度rc处截断。这里V(rc)必须要足够小,以使截断不会显著地影响模拟结果。cijcijcijijSrrrrrr0-)()(VVV势函数直接截断典型的分子动力学元胞尺度L通常选得比rc大很多。我们往往选择元胞尺度满足不等式条件L/2rc,使得距离大于L/2的粒子的相互作用可以忽略,以避免有限尺寸效应。通常L的数值应当选得很大。在考虑粒子间的相互作用时,通常采用最小像力约定。最小像力约定是在由无穷重复的分子动力学基本元胞中,每一个粒子只同它所在的基本元胞内的另外N-1个中(设在此元胞内有N个粒子)的每个粒子或其最邻近的影像粒子发生相互作用。3分子动力学模拟的基本步骤在计算机上对分子系统的分子动力学模拟的实际步骤可以划分为四步:首先是设定模拟所采用的模型;第二,给定初始条件;第三,趋于平衡的计算过程;最后是宏观物理量的计算。1.模拟模型的设定设定模型是分子动力学模拟的第一步工作。例如在一个分子系统中,假定两个分子间的相互作用势为硬球势,实际上,更常用的是Lennard-Jones型势。它的势函数表示为:612)()(4)(rrrU其中ε−是位势的最小值,r=σ时位势为零.第i个粒子与元胞内其它N-1个粒子或其最邻近的影像粒子的相互作用力在x方向的分量为:8142,)(21)()(48ijijNijjixirrxxFY和Z分量的表达式与上式相同模型确定后,根据经典物理学的规律我们就可以知道在系综模拟中的守恒量。例如对在微正则系综的模拟中能量、动量和角动量均为守恒量。为了计算方便,取分子动力学元胞为立方形,元胞的线度大小为L。iiiiiiprMpPrVrmE)()(212例如,Verlet方法需要两组坐标来启动计算:一组是零时刻的坐标,另一组是前进一个时间步长时的坐标,或者是一组零时刻的速度值。2.给定初始条件分子动力学模拟的过程进入对系统微分方程组做数值求解时,需要知道粒子的初始位置和速度的数值。不同的算法要求不同的初始条件。但是,一般来说系统的初始条件都是不可能知道的。表面上看这是一个难题。实际上,精确选择待求系统的初始条件是没有什么意义的,因为模拟时间足够长时,系统就会忘掉初始条件。但是初始条件的合理选择将可以加快系统趋于平衡。常用的初始条件可以选择为:(1)令初始位置在差分划分网格的格子上,初始速度则从玻尔兹曼分布随机抽样得到。(2)令初始位置随机地偏离差分划分网格的格子,初始速度为零。3.趋于平衡按照上面给出的运动方程、边界条件和初始条件,就可以进行分子动力学模拟计算。但是,这样计算出的系统不会具有所要求的系统能量,并且这个状态本身也还不是一个平衡态。为了使系统达到平衡,模拟中需要一个趋衡过程。在这个过程中,我们增加或从系统中移出能量,直到系统具有所要求的能量。然后,再对运动方程中的时间向前积分若干步,使系统持续给出确定能量值。我们称这时系统已经达到平衡态。这段达到平衡所需的时间称为弛豫时间。在分子动力学模拟中,时间步长h的大小选择是十分重要的。为了减小误差,步长必须取得小一些;但是取得太小,系统模拟的弛豫时间就很长。这里需要积累一定的模拟经验,选择适当的时间步长h。4.宏观物理量的计算实际计算宏观物理量往往是在分子动力学模拟的最后阶段进行的。它是沿着相空间轨迹求平均来计算得到的。例如对于一个宏观物理量A,它的测量值为平均值如果已知初始位置和动量为和(上标N表示系综N个粒子的对应坐标和动量参数),选择某种分子动力学算法求解具有初值问题的运动方程,便得到相空间轨迹:A)0()(Nr)0()(Np)})({)},(({)()(tptrNN对轨迹平均的宏观物理量A的表示为:'0)()(')})({)},(({)'(1limttNNtprAdttA如果宏观物理量为动能,它的平均为:'0)(')})(({)'(1limttNktkpEdttE微观尺度材料设计分子动力学分子动力学的应用-薄膜生长020040060080010000.01.02.03.04.05.0time(ps)temperature(K)0.1eV050010001500200025000.01.02.03.04.05.0time(ps)temperature(K)10.0eVEvolutionofsubstratetemperaturesatvariousincidentenergy分子动力学的应用-薄膜生长0.1eV10.0eVMorphologiesofAu/Au(001)filmsatvariousincidentenergy分子动力学的应用-薄膜生长T=300KT=713KEpitaxialgrowthprocessofSrOonSrTiO3(100)surfaceterminatedbyTiO2atomiclayerKuboetal,J.ChemPhys.109(1998)分子动力学的应用-脆性断裂分子动力学的应用-晶界行为分子动力学的应用-纳米晶体SimulatingContact(TiO2)(a)(b)(c)TiO2ProbeWithdrawalTiO2probeWithdrawal分子动力学相
本文标题:分子动力学
链接地址:https://www.777doc.com/doc-5280251 .html