第六章分子动力学方法
- 格式:pdf
- 大小:298.88 KB
- 文档页数:45
第6章分⼦动⼒学⽅法第6章分⼦动⼒学⽅法经典分⼦动⼒学⽅法⽆疑是材料,尤其是⼤分⼦体系和⼤体系模拟有效的⽅法之⼀。
分⼦动⼒学可以⽤于NPT,NVE,NVT 等不同系综的计算,是⼀种基于⽜顿⼒学确定论的热⼒学计算⽅法。
与蒙特卡罗法相⽐在宏观性质计算上具有更⾼的准确度和有效性,可以⼴泛应⽤于物理,化学,⽣物,材料,医学等各个领域。
本章在介绍分⼦动⼒学的基本概念的基础上,简单介绍了分⼦动⼒学的基本思想,势函数分类和基本⽅程。
然后介绍了分⼦动⼒学的常⽤系综和典型的NPT,NVE,NVT系综基本⽅程。
结合材料建模中的基本简化⽅法和技巧,阐述了边界条件和时间积分的数值处理技巧。
最后,利⽤统计⼒学的基本概念给出分⼦动⼒学的计算信息的解析⽅式。
并且结合Materials Explore软件计算分析了CNT的⼏何结构稳定性。
6.1引⾔分⼦动⼒学⽅法(Molecular Dynamics, MD)⽅法是⼀种按该体系内部的内禀动⼒学规律来计算并确定位形的变化的确定性模拟⽅法。
⾸先需要在给定的外界条件下建⽴⼀组粒⼦的运动⽅程,然后通过直接对系统中的⼀个个粒⼦运动⽅程进⾏数值求解,得到每个时刻各个分⼦的坐标与动量,即在相空间的运动轨迹,再利⽤统计⼒学⽅法得到多体系统的静态和动态特性,从⽽获得系统的宏观性质。
可以看出,分⼦动⼒学⽅法中不存在任何随机因素,这个也是分⼦动⼒学⽅法和后⽂要提到的蒙特卡洛⽅法的区别之⼀。
在分⼦动⼒学⽅法的处理过程中,⽅程组的建⽴是通过对物理体系的微观数学描述给出的。
在这个微观的物理体系中,每个分⼦都各⾃服从经典的⽜顿⼒学定律(或者是拉格朗⽇⽅程)。
每个分⼦运动的内禀动⼒学是⽤理论⼒学上的哈密顿量或者拉格朗⽇函数来描述,也可以直接⽤⽜顿运动⽅程来描述。
确定性⽅法是实现玻尔兹曼的统计⼒学途径。
这种⽅法可以处理与时间有关的过程,因⽽可以处理⾮平衡态问题。
但是分⼦动⼒学⽅法的计算机程序相对蒙特卡罗较复杂,其计算成本较⾼。
第六章 分子动力学模拟 Molecular Dynamics –MD 6.1引言分子动力学模拟方法是在牛顿力学的理论框架下,根据体系内分子之间的相互作用势,获得每个原子随时间运动的轨迹,通过系综平均,可以得到感兴趣的与结构和动力学性质有关的物理量,如:平均原子坐标,平均能量、平均温度及原子运动的自相关函数等。
这些物理量是通过对每个原子的运动轨迹,即微观量求平均而得到的宏观量,因此可以与实验观测量进行比较。
用计算机模拟方法在向空间采样方法有两种: (1) 随机采样 MC (2) 确定性方法MD以上讲过的MC (Monte Carlo )采样方法就是随机方法,与随机方法不同,确定性方法是按照动力学规律使系统在相空间运动。
分子动力学模型就是一种确定性方法。
它的基本出发点是从一个完全确定的物理模型出发,通过解牛顿运动方程而得到原子运动的轨迹。
我们感兴趣的可测量的客观物理量可以通过相空间的采样求系综平均而得到。
在多态历经假设成立的情况下,系综平均与长时间平均是相同的。
⎰∞→∞==τττ01))(),((limdt t p t q A A A系综其中q,p 为t 的函数。
A 表示系综平均,∞A 表示无穷长时间平均。
因模拟时间总是有限的。
对耦分子体系,当模拟时间大于分子的弛豫时间时,有限观测时间可以变成为无穷长的。
当弛豫模拟〉τt ,模拟t 可认为∞,因物理上的∞是不可能的。
6.2基本原理 1.动力学方程基本动力学方程包括在经典力学(CM )框架下的牛顿方程和在量子动力学(QM )框架下的薛定谔方程。
在常温下,经典的牛顿方程对研究生物分子体系的结构和动力学性质已经足够了,因为这时体系的量子效应并不十分重要。
但是,对研究包含隧道效应的反应时间问题时,量子效应十分明显,这时就必须用QM 方程来模拟体系的量子动力学性质。
QM:含时薛定谔方程为),(),(t r i t r H t→∂∂→∧-=ψψ (2.1)其中∧H 为哈密顿算符,),(t r →ψ为波函数,→r 表示一系列原子坐标,即),,(21→→→→=N r r r r 。
分子动力学的基础知识与应用分子动力学是一种研究物质内部微观运动和相互作用的计算方法,适用于物质的热力学性质、结构演变、反应动力学等方面的分析和计算。
分子动力学方法在许多领域中都有着重要的应用,比如材料科学、生物科学、地球科学等。
一、分子动力学的基本原理分子动力学的基本原理是基于牛顿力学和统计力学的,它利用牛顿第二定律描述物质微元体积在作用力的驱使下所发生的动态行为,通过许多个微元体积的合成来模拟整个系统的宏观行为。
在分子动力学模拟中,整个系统被划分为一系列的微观体积单元,每一个粒子受到周围粒子和外力的作用力后会产生相应的加速度,然后根据牛顿第二定律计算它的速度和位置的变化,并不断迭代直至模拟时间结束。
因此,模拟的结果是每个粒子的时间变化轨迹。
分子动力学模拟中,需要根据物质的分子结构和相互作用力来分析和计算物质的性质。
其中,分子结构的理论计算和实验测量是基础。
相互作用力包括范德华相互作用力、氢键相互作用力、库伦相互作用力等。
二、分子动力学的应用1. 材料科学分子动力学方法在材料科学中的应用非常广泛,包括材料力学性质、材料晶体结构、材料扩散、材料表面和界面等方面研究。
比如,在纳米材料领域中,利用分子动力学可以研究纳米材料的形态演变、纳米材料的晶体结构、纳米材料的表面变化等。
此外,分子动力学可以对材料的生长、腐蚀、断裂等过程进行模拟预测,为材料的设计和改进提供依据。
2. 生物科学分子动力学方法在生物科学中的应用也十分广泛,包括蛋白质和核酸的结构研究、蛋白质和核酸相互作用机制的探究、药物的分子设计等。
比如,在研究蛋白质的结构和功能过程中,分子动力学可以模拟蛋白质的构象变化、蛋白质与其他分子的相互作用、蛋白质在细胞内的运动等,为研究蛋白质的功能和药物的分子设计提供依据。
3. 地球科学分子动力学方法在地球科学领域也有重要应用,主要是在研究地球物质的物质运移和地球结构演化等方面。
比如,在地球内部物质的运移研究中,分子动力学可以模拟地幔矿物物质的扩散和渗透,为探究大地构造和地震活动机制提供支持。
分子动力学方法是分子动力学方法(Molecular Dynamics,简称MD)是一种通过计算从原子尺度到宏观尺度上的关键物理、化学过程的方法。
它通过模拟物质中的原子或分子在给定相互作用力下的运动,对物质的结构和动态行为进行研究。
MD方法可以用于模拟固体、液体和气体等各种材料,以及生物分子和纳米材料等体系。
在MD方法中,分子系统的运动是通过求解牛顿方程来模拟的。
它考虑了分子之间的相互作用,以及这些相互作用对原子或分子产生的力和加速度,并根据初始条件求解出系统在每个时刻的状态。
在模拟过程中,分子的位置、速度和受力等参数会根据所采用的数值算法进行更新,直到模拟时间结束或达到所设定的终止条件。
MD方法的核心是对物质的相互作用力进行建模。
常用的相互作用势函数包括经典力场、量子力场和混合力场等。
经典力场基于经验参数和实验数据,提供了描述相互作用力的基本规则,适用于大多数常规物质的模拟。
量子力场则考虑了原子的电子结构和量子力学效应,适用于分子间的电子转移或化学反应等情况。
混合力场将经典力场和量子力场相结合,以提高模拟的准确性和计算效率。
分子动力学方法的具体步骤包括:1. 确定体系的初始状态,包括原子或分子的位置、速度和受力等参数;2. 根据所采用的相互作用势函数计算分子之间的相互作用力;3. 根据牛顿方程的求解方法,更新分子的位置和速度等参数;4. 重复步骤2和3,直到达到所设定的模拟时间结束或终止条件。
MD方法的应用广泛。
在材料科学中,它可以模拟材料的热力学性质、力学性质和输运性质等,为新材料的设计和优化提供理论支持。
在生物物理学和药物设计中,MD方法可以模拟蛋白质的折叠、酶的催化机制和药物与受体的相互作用等过程,帮助理解生物大分子的结构和功能。
在纳米科学和纳米技术中,MD方法可以模拟纳米材料的生长、形貌演变和热力学行为,为纳米器件的设计和应用提供指导。
虽然MD方法在模拟物质性质和过程方面有很大的优势,但也存在一些限制。
分子动力学与动态研究方法分子动力学(Molecular Dynamics,简称MD)是一种重要的计算模拟方法,用于研究粒子(分子或原子)在经典力学作用下的运动轨迹和相互作用。
分子动力学方法可以模拟分子级别的细节,提供对材料、生物分子等系统动态行为的深入认识,并且在材料科学、生物医药、化学等领域具有广泛应用。
本文将介绍分子动力学的原理和常用的动态研究方法。
一、分子动力学原理分子动力学方法的核心是通过牛顿第二定律F=ma来描述粒子的运动。
分子动力学通过将粒子的质量、位置和速度等关键参数输入到计算机模拟中,利用数值求解的方法,从而得到粒子的运动轨迹和动力学行为。
在分子动力学模拟中,粒子的相互作用力通常由势能函数表示,常见的势能函数包括Lennard-Jones势和Coulomb势等。
Lennard-Jones势描述了凡得瓦尔斯力(Van der Waals)和分散力的相互作用,而Coulomb势用于描述带电粒子之间的静电相互作用。
二、分子动力学的步骤分子动力学方法包括几个关键步骤,如下所示:1. 初始构型:选择合适的初始构型,包括粒子的数目、初始位置和初始速度等参数。
2. 势能计算:根据势能函数计算粒子之间的相互作用能量。
3. 积分运动方程:将牛顿第二定律代入到微分方程中,然后使用数值积分算法求解。
4. 更新位置和速度:根据计算得到的加速度和速度来更新粒子的位置和速度,从而得到下一时刻的状态。
5. 时间步进:重复进行步骤2至步骤4,直到达到所需的模拟时间或满足其他条件。
三、动态研究方法1. 结构分析:通过分子动力学模拟,可以得到系统在时间轴上的结构演化。
结构分析方法常用的包括径向分布函数(Radial Distribution Function,RDF)、配位数等。
2. 动力学性质:除了结构演化外,分子动力学还可以用来研究体系的动力学性质,如粒子的动态跳跃、扩散行为等。
通过计算粒子的平均速度、平均动量和平均动能等参数,可以得到体系的动力学性质。
第六章 分子动力学方法6.1引言对于一个多粒子体系的实验观测物理量的数值可以由总的平均得到。
但是由于实验体系又非常大,我们不可能计算求得所有涉及到的态的物理量数值的总平均。
按照产生位形变化的方法,我们有两类方法对有限的一系列态的物理量做统计平均:第一类是随机模拟方法。
它是实现Gibbs的统计力学途径。
在此方法中,体系位形的转变是通过马尔科夫(Markov)过程,由随机性的演化引起的。
这里的马尔科夫过程相当于是内禀动力学在概率方面的对应物。
该方法可以被用到没有任何内禀动力学模型体系的模拟上。
随机模拟方法计算的程序简单,占内存少,但是该方法难于处理非平衡态的问题。
另一类为确定性模拟方法,即统计物理中的所谓分子动力学方法(Molecular Dynamics Method)。
这种方法广泛地用于研究经典的多粒子体系的研究中。
该方法是按该体系内部的内禀动力学规律来计算并确定位形的转变。
它首先需要建立一组分子的运动方程,并通过直接对系统中的一个个分子运动方程进行数值求解,得到每个时刻各个分子的坐标与动量,即在相空间的运动轨迹,再利用统计计算方法得到多体系统的静态和动态特性, 从而得到系统的宏观性质。
因此,分子动力学模拟方法可以看作是体系在一段时间内的发展过程的模拟。
在这样的处理过程中我们可以看出:分子动力学方法中不存在任何随机因素。
系统的动力学机制决定运动方程的形式:在分子动力学方法处理过程中,方程组的建立是通过对物理体系的微观数学描述给出的。
在这个微观的物理体系中,每个分子都各自服从经典的牛顿力学。
每个分子运动的内禀动力学是用理论力学上的哈密顿量或者拉格朗日量来描述,也可以直接用牛顿运动方程来描述。
这种方法可以处理与时间有关的过程,因而可以处理非平衡态问题。
但是使用该方法的程序较复杂,计算量大,占内存也多。
适用范围广泛:原则上,分子动力学方法所适用的微观物理体系并无什么限制。
这个方法适用的体系既可以是少体系统,也可以是多体系统;既可以是点粒子体系,也可以是具有内部结构的体系;处理的微观客体既可以是分子,也可以是其它的微观粒子。
第六章 分子动力学方法6.1引言对于一个多粒子体系的实验观测物理量的数值可以由总的平均得到。
但是由于实验体系又非常大,我们不可能计算求得所有涉及到的态的物理量数值的总平均。
按照产生位形变化的方法,我们有两类方法对有限的一系列态的物理量做统计平均:第一类是随机模拟方法。
它是实现Gibbs的统计力学途径。
在此方法中,体系位形的转变是通过马尔科夫(Markov)过程,由随机性的演化引起的。
这里的马尔科夫过程相当于是内禀动力学在概率方面的对应物。
该方法可以被用到没有任何内禀动力学模型体系的模拟上。
随机模拟方法计算的程序简单,占内存少,但是该方法难于处理非平衡态的问题。
另一类为确定性模拟方法,即统计物理中的所谓分子动力学方法(Molecular Dynamics Method)。
这种方法广泛地用于研究经典的多粒子体系的研究中。
该方法是按该体系内部的内禀动力学规律来计算并确定位形的转变。
它首先需要建立一组分子的运动方程,并通过直接对系统中的一个个分子运动方程进行数值求解,得到每个时刻各个分子的坐标与动量,即在相空间的运动轨迹,再利用统计计算方法得到多体系统的静态和动态特性, 从而得到系统的宏观性质。
因此,分子动力学模拟方法可以看作是体系在一段时间内的发展过程的模拟。
在这样的处理过程中我们可以看出:分子动力学方法中不存在任何随机因素。
系统的动力学机制决定运动方程的形式:在分子动力学方法处理过程中,方程组的建立是通过对物理体系的微观数学描述给出的。
在这个微观的物理体系中,每个分子都各自服从经典的牛顿力学。
每个分子运动的内禀动力学是用理论力学上的哈密顿量或者拉格朗日量来描述,也可以直接用牛顿运动方程来描述。
这种方法可以处理与时间有关的过程,因而可以处理非平衡态问题。
但是使用该方法的程序较复杂,计算量大,占内存也多。
适用范围广泛:原则上,分子动力学方法所适用的微观物理体系并无什么限制。
这个方法适用的体系既可以是少体系统,也可以是多体系统;既可以是点粒子体系,也可以是具有内部结构的体系;处理的微观客体既可以是分子,也可以是其它的微观粒子。
自五十年代中期开始,分子动力学方法得到了广泛的应用。
它与蒙特卡洛方法一起已经成为计算机模拟的重要方法。
应用分子动力学方法取得了许多重要成果,例如气体或液体的状态方程、相变问题、吸附问题等,以及非平衡过程的研究。
其应用已从化学反应、生物学的蛋白质到重离子碰撞等广泛的学科研究领域。
实际使用的限制:实际上,分子动力学模拟方法和随机模拟方法一样都面临着两个基本限制:一个是有限观测时间的限制;另一个是有限系统大小的限制。
通常人们感兴趣的是体系在热力学极限下(即粒子数目趋于无穷时)的性质。
但是计算机模拟允许的体系大小要比热力学极限小得多,因此可能会出现有限尺寸效应。
为了减小有限尺寸效应,人们往往引入周期性、全反射、漫反射等边界条件。
当然边界条件的引入显然会影响体系的某些性质。
数值求解时的离散化方法:对体系的分子运动方程组采用计算机进行数值求解时,需要将运动方程离散化为有限差分方程(参见第四章)。
常用的求解方法有欧拉法、龙格-库塔法、辛普生法等(参见附录D)。
数值计算的误差阶数显然取决于所采用的数值求解方法的近似阶数。
原则上,只要计算机计算速度足够大,内存足够多,我们可以使计算误差足够小。
6.2分子动力学基础知识一、分子运动方程及其数值求解采用分子动力学方法时,必须对一组分子运动微分方程做数值求解。
从计算数学的角度来看,这是个求一个初值问题的微分方程的解。
实际上计算数学为了求解这种问题已经发展了许多的算法,但是并不是所有的这些算法都可以用来解决物理问题。
例子:以一个一维谐振子为例,来看一下如何用计算机数值计算方法求解初值问题。
一维谐振子的经典哈密顿量为: 22212kx m p H +=. (6.2.1) 这里的哈密顿量(即能量)为守恒量。
假定初始条件为,则它的哈密顿方程是对时间的一阶微分方程()()0,0p xm p p H dt dx =∂∂=, kx x H dt dp −=∂∂−=. (6.2.2)计算在相空间中的运动轨迹()()()t p t x ,:采用有限差分法,将微分方程变为有限差分方程,以便在计算机上做数值求解,并得到空间坐标和动量随时间的演化关系。
首先,取差分计算的时间步长为,采用一阶微分形式的向前差商表示,它是直接运用展开到的一阶泰勒展开公式h h ()())(2h O dtdf ht f h t f ++=+, 即得到 ()()h t f h t f dt df −+≈, (6.2.3)则微分方程(6.2.2)可以被改写为差分形式 ()()()mt p h t x h t x dt dx =−+=. (6.2.4)()()()t kx ht p h t p dt dp −=−+=. (6.2.5) 将上面两个公式整理后, 我们得到解微分方程(6.2.2)的欧拉(Euler)算法(参见附录C):()()()mt hp t x h t x +=+. (6.2.6)()()()t hkx t p h t p −=+. (6.2.7) 这是()()t p t x ,的一组递推公式。
有了初始条件()()0,0p x ,就可以一步一步地使用前一时刻的坐标、动量值确定下一时刻的坐标、动量值。
这个方法是一步法的典型例子。
由于在实际数值计算时的大小是有限的,因而在上述算法中微分被离散化为差分形式来计算时总是有误差的。
可以证明一步法的局部离散化误差与总体误差是相等的,都为的量级。
在实际应用中,适当地选择的大小是十分重要的。
取得太大,得到的结果偏离也大,甚至于连能量都不守恒;取得太小,有可能结果仍然不够好。
这就要求我们改进计算方法,进一步考虑二步法。
h )(2h O h h h差分计算的二步法:实际上泰勒展开式的一般形式为()()()()11)(!+=++=+∑n i n i ih O t fi h t f h t f . (6.2.8) 其中()1+n h O 表示误差的数量级。
前面叙述的欧拉算法就是取1=n 。
现在考虑公式(6.2.8)中直到含的二次项的展开(即取),则得到h 2=n ()()()32222h O dx fd h dt df h t f h t f +++=+.(6.2.9) ()()()32222h O dx fd h dt df h t f h t f ++−=−.(6.2.10)将上面两式相加、减得到含二阶和一阶导数的公式()()])(2[1222h t f t f h t f h dx fd −+−+=.(6.2.11) ()()h h t f h t f dt df 2−−+=.(6.2.12)令()()t x t f =,利用牛顿第二定律公式()22dtx d m t F =,公式(6.2.11)写为坐标的递推公式 ()()()()mt F h h t x t x h t x 22+−−=+ . (6.2.13) 公式(6.2.12)写为计算动量的公式得到()()()()()[]h t x h t x hm t mv t x m t p −−+===2&. (6.2.14) 这样我们就推导出了一个比(6.2.6)和(6.2.7)更精确的递推公式。
这是二步法的一种, 称为Verlet 方法。
当然我们还可以建立更高阶的多步算法,然而大部分更高阶的方法所需要的内存比一步法和二步法所需要的大得多,并且有些更高阶的方法还需要用迭代来解出隐式给定的变量,内存的需求量就更大。
并且当今的计算机都仅仅只有有限的内存,因而并不是所有的高阶算法都适用于物理系统的计算机计算。
Verlet 算法是分子动力学模拟中求解常微分方程最通用的方法.二、多体系统的基本概念与分子动力学方法 N 体系统中,一个体的密度函数一般可以写为n ()()()12121!,,...,...!n n n n N N r r r W R dr dr dr N n ρ++=−∫r r r r r r rZ , (6.2.15)其中()W R r 是描写系统的几率函数,()W R dR =∫r rZ 为系统的配分函数,R r 通常为由系统中所有粒子的坐标、动量构成的相空间中的任意一点。
在1=n 的情况下粒子密度函数为()()r r rr 1ρρ=。
两体密度函数与对关联函数()r r g rr −′相关,即()()()()r r r g r r r ′−′=′rr r r r r ρρρ,2. (6.2.16)式中的)(r r g rr −′就是对关联函数,它是描述与时间无关的粒子间关联性的量度。
)(r r g r r −′的物理意义是:当在空间r r 处有一个粒子时,在另一个空间位置r ′r的点周围单位体积内发现另一个粒子的几率。
能够很容易得到()()()()()r r r r r r r rr r r r r r ρδρρρ−′−′=′ˆˆ,2. (6.2.17) 其中公式右边第一项叫做密度关联函数。
()r rρˆ为密度算符,其定义为 ()()∑=−=Ni i r r r 1ˆrr r δρ. (6.2.18) 系统的密度为密度算符的平均值,()()r r rr ρρˆ=. (6.2.19) 如果系统的密度接近一个常数,对关联函数)(r r g rr −′可以导出一个简单的形式()∑≠−=Nji ij r r Nr g rr r δρ1)(, (6.2.20)式中ρ是0=′r r和点的密度的平均。
r r对球坐标的方位角θ和极角ϕ求平均后,得到径向对关联函数为 ()∫=ϕθθπd d r g r g sin 21)(r , (6.2.21)在分子动力学模拟的数值计算中,在空间某点上的密度函数()r rρ可由下式计算得到:()()()r r r r N r ΔΩΔ≈,,rrrρ, (6.2.22)其中()r r ΔΩ,r 为原点在距离球坐标中心r r 处,半径为r Δ的球体积。
()r r N Δ,r为在该体积内的粒子数。
这里我们可以通过调整半径r Δ,来得到特定系统的平滑、真实的密度分布函数()r rρ。
上式中的求平均是对时间步所做的。
采用类似的方法,可以得到径向对关联函数的数值。
若r 是从一个特定粒子位置i r r点为原点的球半径,径向对关联分布函数()r g 就是另一个粒子在距离r 处出现的几率。
由此可以算出,()()r r r r N r g ΔΔΔ≈24,πρr , (6.2.23)()r r N ΔΔ,r为在以为球心,i r r r 为半径,r Δ厚的球壳内的粒子数。
分子动力学元胞:分子动力学模拟方法往往用于研究大块物质在给定密度下的性质,而实际计算模拟不可能在几乎是无穷大的系统中进行。