登陆注册
15420500000011

第11章 分子动力学模拟概述(1)

4.1基本原理

分子动力学模拟(moleculardynamicssimulations)是一种用来计算一个经典多体体系的平衡和传递性质的方法。这里的经典意味着组成粒子的核心运动遵守经典力学定律,这对于许多体系是一个很好的近似。只有当处理到一些较轻的原子或分子(He,H2,D2)的平动、转动或振动频率满足h>kBT的振动时,才需要考虑量子效应。

考虑含有N个分子的运动体系,系统的能量为系统中分子的动能与系统总势能的和。其总势能为分子中各原子位置的函数(,,,)12nUrrr。通常势能可分为分子间(或分子内原子间)的范德华作用(vdw)与分子内部势能(internal,int)两大部分:

vdwintUUU(4-1)范德华作用一般可将其近似为各原子对间的范德华作用的加和:

依据经典力学,系统中任一原子i所受之力为势能的梯度:

由牛顿运动定律可得i原子的加速度为:

将牛顿运动定律方程式对时间积分,可预测i原子经过时间t后的速度与位置:

i式中,v为速度,上标“0”为各物理量的初始值。

分子动力学计算的基本原理,就是利用牛顿运动定律。先由系统中各分子的位置计算系统的势能,再计算系统中各原子所受的力及加速度,然后令上式中的tt,则可得到经过t后各分子的位置及速度。重复以上的步骤,由新的位置计算系统的势能,计算各原子所受的力及加速度,预测再经过t后各分子的位置及速度……如此反复循环,可得到各时间下系统中分子运动的位置、速度及加速度等资料。一般将各时间下的分子位置称为运动轨迹(trajectory)。

4.2牛顿运动方程式的数值解法

在分子动力学中必需求解(4-5)式的牛顿运动方程以计算速度与位置,有限差分方法(finitedifferencemethods)常被用来解具有连续势能函数的分子动力学轨迹,也就是速度与位置。其基本思路就是把积分划分为许多小段,在时间的间隔上为固定的t,在t时刻,粒子受到的总作用力是其和其它粒子相互作用的向量之和。从粒子受到的力,我们可以确定粒子的加速度,结合t时刻的位置和速度得到t+t时刻新的位置和速度。这里假定在时间步长t范围内粒子受到的力是不变的。再计算在新的位置粒子受到的力,继而得到t+2t时刻的新位置和速度,这样周而复始的计算就可以得到粒子运动的轨迹。

利用有限差分方法来积分运动方程的算法有好多种,其中有许多在分子动力学的计算中被广泛地应用。在所有的算法中都假定位置和动力学性质(如速度、加速度等)可以通过Taylor展开式表示:

其中,v(t)是速度(位置对时间的一阶微分);a(t)是加速度(二阶微分),b(t)

是三阶微分,等等。Verlet算法[193]是在分子动力学模拟中最广泛使用的积分运动方程的算法。Verlet算法利用t时刻的位置和加速度,以及前一时刻的位置r(tt),来计算新时刻tt的位置r(tt),我们给出这些性质和速度在t时刻的相互关系。

把这两个方程相加:

r(tt)2r(t)r(tt)t2a(t)(4-11)在Verlet积分算法中不显含速度,速度可以用很多方法来计算,如一个最简单的方法:

v(t)r(tt)r(tt)/2t(4-12)另外,速度还可以利用半个步长ttVerlet算法的应用是很直接的,并且所需的内存也不是很多,包括两组位置〔r(t)和r(tt)〕以及加速度a(t)。Verlet算法的缺陷之一是位置r(tt)的确定利用了较小项〔t2a(t)〕和两个较大项[2r(t)和r(tt)]的差值,这将导致计算精确性的降低。

而且,在方程中,Verlet算法缺乏精确的速度计算项使它获得速度很困难,并且速度实际上是在下一步位置确定后才能得到。另外,Verlet算法不是自我开始的(self-start),新的位置是通过当前时刻位置r(t)和前一时刻位置r(tt)获得的,在t=0时刻,很显然只有一组位置,因而利用其它一些方法获得tt的位置是很必要的。一种获得r(tt)的方法是利用Taylor展开,如方程(4-6)在第一项截断,则r(t)r(0)tv(0)。

随后的跳蛙法(leap-frog)[193]是对Verlet算法进行了一些改进:

应用跳蛙算法,首先要利用tt这样就“跳过”位置给出了tt21时刻的速度,位置则跳过速度给出了tt时刻的新位置,从而为tt23时刻的速度做了准备,等等。相对于传统的Verlet算法,跳蛙算法有两个优点:它显含了速度的计算,而且不需要计算两个较大数的差值。然而,它的明显缺点就是位置和速度并不是同时确定的,这就意味着在确定位置的同时计算动能对总能量的贡献是不可能的,而位置的确定就同时确定了势能对总能量的贡献。

速度Verlet(VelocityVerlet)算法[194]同时给出了位置、速度和加速度,而没有任何精确度的损失:

Beeman算法对于速度给出了更加精密的表达式,因为动能是直接从速度计算得到的,所以它通常给出较好的能量守恒。然而它的表达式比Verlet更加复杂,在计算过程中就需要更多的计算机时。

4.3周期性边界条件

正确模拟边界或边界作用对于模拟方法是极为重要的,因为边界条件可以利用相对较小的分子来计算“宏观”性质。边界条件的重要性可以利用下面简单的性质来加以说明。假设我们有1个1L的容器,在室温条件下充满水,这个立方体容器中含有水分子的个数为3.31025个,水分子与器壁的相互作用可以延伸到10个分子直径的大小,水分子的直径大概为2.8,与边界碰撞的水分子的个数为21019。所以,在150万个水分子中只有1个受到容器壁的影响。在MC和MD模拟中,粒子的个数要远远小于10251026,并且通常要小于1000个。在一个不超过1000个分子的体系中,它们都不包含在和容器壁相互作用的粒子中。显然,用容器中1000个水分子来获得“宏观(bulk)”性质是不太正确的。可供选择的方法是去掉(dispensewith)容器。

执行分子动力计算通常选取一定数目的分子,将其置于一个立方体的盒子里。

但执行的计算必需与实际的体系相符,通常实验的系统密度为必须满足的条件。设立方体盒子的边长为L,则其体积为V=L3。若分子的质量为m,则N个分子系统的密度为:

计算系统的密度应等于实验所测定的密度,以此作为调整盒长的依据。以水分子系统为例,假设执行含有1000个水分子的动力学模拟计算,水的密度为1g/cm3。则L=3.1010-7cm=31(4-23)为使计算中系统的密度维持恒定,通常采用周期性边界条件(periodboundarycondition)。周期性边界条件使利用较少粒子进行宏观性质的模拟成为可能。在周期性边界条件下,粒子所受到的力和宏观液体中粒子受到的力是一样的。考虑立方体盒子中的粒子,它在各种方向重复以给出周期性排列。图4-1给出了一个二维盒子,其中,每个盒子周围有8个邻近盒子,这样在三维中每个盒子周围就有26个近邻。

镜像盒子中粒子的坐标可以简单地用加上或减去盒长的整数倍计算。在图4-1中给出,如果模拟过程中一个粒子离开盒子,则从相对应的边上有一个粒子进入盒子,因而在整个模拟过程中体系的总粒子数保持不变,即密度不变,符合实际的要求。尽管在计算机模拟中已广泛地使用周期性边界条件,但是它确实还存在着一些不足。周期性晶胞的一个很显着的不足是它不能获得大于晶胞长度的波动,比如接近于液-汽临界点。

4.4截断半径与最近镜像

MD模拟中最耗时的部分是能量最小化中非键相互作用和(或)力的计算。在力场模拟中键长伸缩,键角弯曲和二面角扭曲的个数正比于原子的个数,而非键相互作用项的个数随着原子个数平方的增加而增加,因此它的数量级为N2。原则上,非键相互作用在体系中应当对每两对原子间都进行计算,然而在模型中这一点还没有完全实现。Lennard-Jones势能函数随着距离的衰减很快,在2.5时的Lennard-Jones势大概是1.0时的1%。解决非键相互作用最普遍的方法就是利用截断半径和最小镜像方案。在最小镜像方案中,每个原子最多只能“看到”体系中每个原子的一个镜像(通过周期性边界条件无限重复)。如图4-2所表示,只需要计算距离最近原子或镜像之间的能量和(或)力就可以。比如,计算分子1与3的作用力,是取与分子1最近距离的镜像分子3。在所有镜像系统中,分子1和3距离最近的是模拟系统中分子1与D盒中的分子3,而非模拟系统中的分子1与分子3。同样的,计算分子3与分子1的作用是取模拟系统中的分子3与E盒中的分子1。

由于在计算中利用最近镜像的概念,因此就需要采用截断半径(cut-offradius)的方法来计算远程相互作用力。当利用截断半径时,如果原子对之间的距离大于截断半径,则它们之间的相互作用为零,当然同时也要考虑最近镜像。如果利用周期性边界条件,则截断半径不应太大,否则它将看到自身的镜像,那么同一个原子将被计算两次。这就暗示,在模拟立方体盒子中的液态体系时,截断半径不能大于立方盒子的一半,长方体晶胞中截断半径不能大于长方体最小边长的一半。对于分子的模拟,截断半径的上限受到分子大小的影响。模拟中非键相互作用如果只考虑Lennard-Jones势能函数,截断半径就不应过大,用2.5的截断半径就会带来一定的误差。然而,当考虑长程静电相互作用时,截断半径必须要大,事实上证明此时利用多大的截断半径都是有误差的,一般的原子所选取的静电相互作用的截断半径约为10左右,但这只是一个简单的估计,对于不同的原子是不能一概而论的。

一般的非键势能函数在所选取的截断半径处势能值并不为零。因此,分子动力学计算中就会出现能量不连续的情况。处理这种问题的方法,通常将势能函数乘上一个开关函数(switchingfunction)以弥补这一缺点。设截断半径为Rc,开关函数的起始点为Rs,则该函数S(r)之形式为:

同类推荐
热门推荐
  • 暗黑魔体

    暗黑魔体

    13岁少年偶然获得机遇,苦练修为,一步登天
  • 逍遥君李长风传

    逍遥君李长风传

    绝世美男李长风在发掘夏启墓时穿越到夏朝时成了绝世丑婴,父母的离开,而现实情况与记忆历史中的差异。又该如何一步步的发掘?一切尽在穿越之夏王朝
  • 双侠绝恋

    双侠绝恋

    笑里藏刀的墨台初若草草结束了江湖生活,来到了父亲身边。她不但要小心继母的阴毒,还要提防庶姐的陷害,甚至父亲的偏爱......一步走错,难以挽回。
  • 三清道身

    三清道身

    布衣小民中的打工仔张扬,从古怪孤僻的王老头手里得到道家创始人李耳的传承,拥有了分身这个技能。分出三具和本身一模一样的身体,连智商都相同,究竟能干嘛?继续打工领四倍的工资?犯事了让分身去顶替?考试去作弊?都可以!就算去当魔术师也没问题!高手在民间,昔时的三教九流外八门还剩下多少?圈子里流传的三甲被谁所得?状元,榜眼,探花五十年一轮回,老一辈的恩怨何时解决?徐福去过昆仑,诸葛亮去过昆仑,就连李耳也曾去过,那里埋葬了什么隐秘?一不能成仙,二没有超强的战斗力,三不能点石成金,四不能长生不老,五不能飞天遁地,六不能隔空摄物。七不能……,到底能干嘛?
  • 你我不曾安然

    你我不曾安然

    许泽之没有像童话世界里骑着白马来,他一身白西服,开着上海滩最贵的汽车差点将她撞死……沈可君丢下年幼的儿子去了战场,听说那里战事吃紧,许泽之在那儿……
  • 上古小记

    上古小记

    大荒武功第一的神帝为何惨死?苗疆村落中的一个普通的小女孩,因何会患上失忆症?一切看似平常的事情背后,到底隐藏了什么不为人知的秘密?大荒之中,似乎有一股暗流正逐渐涌动,酝酿着一场惊天阴谋
  • 假面公主:面具背后的痛苦

    假面公主:面具背后的痛苦

    那场大火,烧碎了一个女孩所有的期待以及希望,从此便带上了面具,掩饰内心的痛苦,以及对世界的仇恨,,韩熙是她同父异母的亲哥哥,可笑,也因为他,,她失去了一切
  • 爱的挽歌

    爱的挽歌

    她放任自己任性肆意地活着,只为了刻意掩藏心底的悲痛。一出华丽的舞台剧引出那样一个温柔的他,另两个俊美妖异的男子也被她或他所吸引。那么多的纠葛,那么浓烈的感情。但是,这些都是她想要的吗?等一切终结,尘埃落定,原来,所有都是过眼云烟,她什么都没抓住……
  • 外星系修行录,沉浮圣凡间

    外星系修行录,沉浮圣凡间

    一个普通不能在普通的小人物,为了生活在煤矿上班,因一次意外坍塌而死,在他临死前随口念了几句佛,灵魂意外的穿越到宇宙边缘的一个星系,重生在一个六岁的孩子身上,在这个世界上展开他的修行之旅,随着境界越来越高,慢慢的打开了三世的记忆,原来他是转世重修的仙人……。当有一天他脱出轮回苦海来到圣界大陆,又展开了圣与凡之间的沉浮之路,,,,,
  • 大神嫁到:本妃办不到

    大神嫁到:本妃办不到

    “王爷,不好了!!!”“本王不是好好的么!”“不不是,是王妃,王妃说看破红尘,要出家!”“......跟她说,十里外有一处尼姑庵”“王爷,不好了!!!”“本王很好!!!”“不不是,是王妃,王妃说嫁给王爷太无趣,要给王爷找个绿帽子!”“......跟她说,要找就找个比本王更厉害的!”“王爷不好了!!!”“王妃这次要出家还是要去给本王找绿帽子?”“不不是,小的想说,王妃快生了!!!”“什么,你不早说!”“小的想说来着的....”