分子动力学是什么?

分子动力学是什么?

导读:计算模拟领域的科学家们玩的是世间万物,从一个原子一团电子云出发,搭建起整个物质世界的模型。DP君推出“万物设计师”系列,回顾历史,展望未来,带大家看一看理论科学家们如何用公式和数据模拟世界。

第一篇文章“漫谈分子动力学”,带大家瞧一瞧分子动力学模拟是个什么东西。

分子动力学(Molecular dynamics)其实就是模拟一大堆原子的运动。万物的构成大家都知道,原子由中心的原子核与周围的电子云组成,原子之间相互成键会形成分子。大量单原子或分子(统称粒子)聚集在一起,简单来说,如果温度高、运动快,形成的就是液态;如果温度低、运动慢,粒子位置相对固定,形成的就是固态。当然还存在很多其他物态,比如团簇、等离子体、超流体等等。

要模拟分子动力学,切入点非常直接,表示出体系的势能面。势能面这个词很容易让人误解。它不是现实空间中的面,而是反应空间中的面。化学家在分析化学反应过程的时候,往往会画一条反应路径,自变量可能是时间,也可能是分子的不同构型,比如某一个氢原子的坐标变化,或两个键之间夹角的变化;反应路径的纵坐标往往是能量相关的量,比如势能或自由能。这个面就是定义在这个坐标系里的,如果只有一个自变量,势能面就是一条线,如果有两个自变量,势能面就是一个名副其实的面,如果有更多自变量,它就是一个高维面。

传统分子动力学方法主流的有两种:

一种是第一性原理分子动力学(Ab initio MD),另一种是经验势分子动力学。Ab initio MD方法一般由两部分组成,第一性原理密度泛函理论(ab initio DFT)和分子动力学(MD)。

Ab-initio DFT(Density Functional Theory)旨在用递归逼近的方法,根据原子核的坐标构造出电子的密度分布,进而用电子密度求出所有我们感兴趣的物理量。

MD则旨在让DFT随着时间动起来。

在经典物理中,运动是一件自然而然的事情,知道了质点的速度v,位置x随时间的变化就可以写成时间的多项式:

(其中 表示速度的时间导,也就是加速度。)

但是在量子力学中,粒子是波动性的。波函数随时间的变化走的是指数型路线:

这是含时的薛定谔方程,描述波函数和时间的关系:

因此,波函数随时间的变化是波动式的:

这个形式对那些数学大神来说还凑合,但是放在计算机上是不好搞的。所以一般情况下分子动力学会采用verlet算法,就是根据H把粒子的动量和位置求出来,再直接套进公式(1)里,做经典式的运动。相当于把公式(3)中的指数函数做泰勒展开,并忽略二次以上的项,准确度还是不错的。(PS:指数函数展开公式 )

本章的本意是想尽可能简单地介绍一下Ab initio DFT的思想,结果小编在整理资料的时候,发现自己被卷进一个无穷无尽的历史漩涡。本章扯得比较多,如果看似离题敬请原谅。

前面说了,Ab-initio DFT是用递归逼近的方法构造电子密度,具体说来,递归逼近方法有很多,这里主要介绍两种。其中一种名气莫名地很大,叫Car-Parrinello(CP)方法[1];另一种应用很广,叫共轭梯度法(Conjugate Gradient,CG)[2]。其中CP方法对分子动力学的理念本身做了很好的解读,而CG方法的优势在于收敛快,它的解题思想和深度势还挺相似,不得不讲一讲。

为了介绍CP方法,不得不先引入大名鼎鼎的拉格朗日量。

经典物理、量子物理和相对论其实相距没有那么远。要把三者的联结起来,最好的出发点莫过于最小作用量原理。

在经典体系下,公式(1)是运动的动力学表达。但是数学家们都不喜欢动力学表达,太形象了,得画图,要是图不好画,比如涉及到高维之类的,根本没法处理。所以呢,在分析力学中,运动被表达成一个叫作用量的东西:

这里的L叫拉格朗日量,K是动能,V是势能。

初学分析力学时,拉格朗日量曾让小编很难受。一眼看上去,它根本没有任何物理意义,它不是总能量,总能量应该是动能加势能才对,它却是动能减势能。为什么会定义这样一个量,脑子抽了吗?

直到很多年后,小编学到一个简单的道理,那就是:物理数学其实都是根据人们观察到的现象构造起来的。才终于有点理解了拉格朗日量的来由。说明白点就是,它没有任何道理,像牛顿定律一样就是人们观察到的事实。

比如牛顿第一定律:没有外力作用下,质点会保持静止或做匀速直线运动。为什么?

牛顿第二定律:动量随时间的变化率同质点所受的外力成正比,并与外力的方向相同。凭什么?

牛顿第三定律:相互作用的两个质点之间的作用力和反作用力总是大小相等,方向相反,作用在同一条直线上。谁说的?

老师会告诉你,这些都是事实,没有道理的。以及,等你长大就明白了。用西洋话说,上帝的旨意。不过,随着人们观察尺度的减小或增大,小到原子、电子、夸克等等量级,大到恒星、星系等等量级,上帝的旨意看起来会有一点点不一样。

作用量也是这样的东西。

作用量就是对拉格朗日量进行时间积分或者说路径积分。最小作用量原理说的是,粒子运动时,一定会走作用量最小的那条路线。

作用量常常被用来与光程做对比。如下图(a),光在1->2两点之间一定会走最短的那条路线,也就是直线。那么由此推论,在一个二维曲面空间里,只要打开一束激光,你就可以找到“直线”在哪里。下图(c)示意的是一个折射过程,当光经过两个不同的介质,路径的方向会发生偏折。所以对于光来说,作用量=折射率的路径积分( )。

拉格朗日量就相当于粒子运动的折射率,作用量就相当于粒子运动的光程,在两点间所有可能的路径中,粒子总是会选取作用量最小的那一条。

下面展示一下怎么从作用量最小原理推导到一些我们熟悉的物理量,不可避免地涉及到几个公式,对公式不感兴趣的同学可以跳过此段往下读。

如下图所示。连续函数的极值点有个特征,就是极值点处函数的导数为0。所以最小作用量原理也可以表达成,作用量的变分为0,

也就是说当对轨迹做一个微小的改变 ,作用量是不会变的: 。

由于拉格朗日量是空间坐标 与 时间导 (通常而言就是速度 )的函数,作用量的变分可以展开如下(这里做了一个分步积分):

其中第一项是对初始和终止两个时间点( 和 )的变分,第二项是对中间轨迹的变分。由于我们是固定 和 并对轨迹变分,所以第一项为 。对于第二项,由于 取值任意,那么作用量的变分 就意味着括号内的

这个等式称为欧拉-拉格朗日方程(Euler–Lagrange equations),对于实际体系,把L用坐标和速度展开代入这个方程就得到动力学方程。

动力学方程是个什么呢?简单来说,把经典的动能和势能代入,动力学方程就是牛顿第二定律 ,其中力等于势能的梯度。

处理量子体系时,我们动用一个小技巧,给动力学方程乘以 ,再做时间积分(这里又做了一个分步积分):

这里, 是 、 和 的函数,假如 不直接与时间有关,而是经由与时间有关的 和 间接地与时间有关(数学术语 叫不显含时间)。那么括号里的 就是 的时间导。所以:

右边中括号内就是体系的总能,在量子力学中被称为哈密顿量 。这里, 和 是任意两个时间点,因此这个式子说了一件事,那就是能量守恒。

以上,从最小作用量原理出发,针对经典体系,我们推导出动力学公式牛顿第二定律;针对量子体系,我们推导出能量守恒定理。

那么为什么不直接说能量守恒就好了,搞个拉格朗日量令人头晕,有什么意义吗?这其实是一件非常重要的事情,它藏在一堆奇特的数学背后,导致只有很专业的人还记得它,那就是:能量守恒完全不一定成立。(还记得我们假设了L不显含时间吗?)

作为题外话,这里提一下诺特定理[3],在诺特定理中,体系的总能哈密顿量叫诺特流J,又被称为守恒流,如果这个流不随时间变化,它就是守恒的。

类似这样的等式被称为连续性方程,表达了诺特流J的时间不变性。时间不变性,用物理术语说就是J关于时间对称,用俗话说就是守恒。

诺特定理得名于20世纪初的数学家艾米·诺特。作为一个女数学家,她出生的时间真是好巧不巧。巧在她出生在爱因斯坦、波尔等人的时代,一路看着相对论和量子力学出生长大,那个时代的数学世界才真叫风起云涌。不巧在那时候性别歧视还蛮严重的。诺特被称为“现代数学之母”,是相对论的奠基人之一,却只因为是女性,大学毕业都没有拿到文凭,在哥廷根大学以希尔伯特的名义开课,从讲师做到教授都是编外教授,没有工资,过得很穷。更不巧在,她还是个犹太人,而哥廷根大学在德国。1933年,她也漂洋过海,加入了那一批带美国升天的科学家队伍。不过她没有带美国飞太久,1935年不幸死于一次外科手术。

提这个事情是想发一句感慨,真理和愚蠢是一对儿,如胶似漆永不分离。文末会再给一个例子。

如上文所述,量子力学中,波函数随时间的演化是指数式的,用计算机不好处理。所以在做分子动力学时,一般会采用verlet算法,就是先解出粒子的坐标和速度,再直接代入经典运动方程做经典运动。这样的处理从原理上来说是半经典的,不管它准不准确,首先道理就没有讲通。Car-Parrinello方法厉害就厉害在,他们从拉格朗日量出发,把道理讲通了。

Car-Parrinello一看就知,是两个科学家的名字,普林斯顿大学的Roberto Car教授和瑞士意大利语区大学的Michele Parrinello教授。1985年,两人在PRL上合作发表论文“Unified Approach for Molecular Dynamics and Density-Functional Theory”[1]。实现了分子动力学与密度泛函的结合,并将分子动力学的思想用于密度泛函的递归求解。

密度泛函是从不含时的薛定谔方程出发构建起来的,它可以用来求解某一瞬态粒子的波函数或密度,但没有描述粒子随时间的演化。

通过上一章一番胡言乱语,我们说了一件事情,拉格朗日量L没有任何物理意义,意味着你可以随便给这个量里加东西,一切你关心的量都可以加进去,每个量都有自己满足的限制条件,这些限制条件也就随之加在了拉格朗日量上。Car和Parrinello给拉格朗日量中加入了一系列类似动能的项,就是时间导的平方项。每一个类动能项前面都有一个可调参量,相当于这一动能项的假想质量,比如波函数时间导的平方项相当于假想电子动能,可调参量就是假想的电子质量;核坐标时间导的平方项相当于假想核动能,可调参量就是假想的核质量,等等。

用上一章所述的方法,由拉格朗日量变换到动力学公式,粒子就可以动起来了。在实际计算中假想质量取值任意,通过调节与实验数据符合就好了。这就是CP方法,它根据作用量最小原理调节波函数,让波函数朝着作用量减小的方向改变,从而求解密度泛函,同时,它通过直接把作用量变换到动力学方程,让波函数动起来。它不仅理论完备,算起来收敛性也相当不错,你可以在任何一本讲分子动力学的书中找到它。

相对而言,共轭梯度法是一种更数学的方法。我们知道,计算机直接处理的是矩阵,也就是说如果我们想让计算机来求解密度泛函,就得把泛函写成矩阵形式。求解泛函其实就是找到矩阵的本征值。但是问题在于,物理问题是定义在连续空间中的,而矩阵维度是有限的。在计算中,往往需要在连续空间中撒点,用有限点上的取值来拼出矩阵,撒点越少,精确度就越低,所以点肯定要尽量撒得多,但是点撒得越多,计算量就越大,算得就越慢。那么到底撒多少点合适呢?这是一个逼近问题。

在第一性原理中,粒子的波函数是平面波,平面波只有两个可控参量,波长和方向。如果波长连续从0取到无穷大,那么这么多平面波组成的基组就是完备的,可以叠加出任何一种波函数。傅里叶变换就是从平面波空间变换到波长空间,物理术语叫从实空间变换到倒空间。在平面波基组下,撒点是在倒空间撒点,点撒得越多,基组就越完备,矩阵维度就越大,算起来就越慢。

共轭梯度法可以说是懒人的聪明办法。它从最少量的撒点开始,先撒一个,看看精度,不行,再加一个,直到达到我们想要的精度。就是这么粗暴。

“能量守恒”这个说法本身就相当草率。比如说你在一个房间里,房间里的东西总量是守恒的,那假如你把水杯从窗户丢出去呢?是不是就不守恒了?宇宙也是一样的道理,宇宙存不存在边界?宇宙中间有没有窗户?从这些地方有没有能量泄漏?这些都是不一定的。

诺特流可以说是对“守恒”这一概念的推广,其实也没什么奇特的,就是加入一个可变量,假设空间中有泄漏,泄漏多少不知道,那就设为x,就是这么简单。诺特定理的提出适时地出现在二十世纪,提醒了热衷于“物理大厦”幻想的科学家们,连“能量守恒”都是相对的,世上哪有什么不变的真理?

不确定性关系是量子力学建立的基础。它说的是,微观粒子的动量和位置无法同时确定,只能知道一个范围,这个范围的大小与普朗克常量接近:

粒子的能量和测量时间也有一个类似的关系:

量子力学中用波函数来描述粒子的运动,波函数又称概率波,也就是说它只能描述粒子在空间中分布的概率。

二十世纪,不确定性关系从科学界到哲学界掀起一股“不确定”的迷信狂潮,类似“上帝在掷骰子”这样的说法甚嚣尘上。但是有时候确实是科学走得太远,导致人们忘了它的初衷。

不确定性关系有另一个名字叫“测不准原理”,这是什么意思?就是测不准嘛。值得注意的是,不确定性关系到底有多不确定呢?不确定范围与普朗克常量接近。

为什么是普朗克常量?普朗克常量是怎么来的?普朗克常量来自黑体辐射理论,用来计算光子的能量,光子能量=普朗克常量*光频。

说到这里很多人应该已经看出来,不确定原理的出现是与光子有关的。是因为在实验中,对粒子扰动最小的测量也只能通过光子,所以测量精度超不过光子尺度。

二十世纪八十年代以来,有声音开始质疑不确定关系。2003年,名古屋大学的教授小泽正直提出“小泽不等式”[4],认为不确定关系有缺陷。从2003年到2012年,小泽团队与奥地利工科大学副教授长谷川祐司团队合作,对中子“自转”相关的两个值进行了精密测量,成功超过了不确定关系给出的极限,并满足“小泽不等式”[5]。

2012年,多伦多大学量子光学研究组的李·罗泽马用一种弱测量技术,实现了超过不确定性极限的测量[6]。

从守恒是相对的,到测不准原理的本质其实就是测不准,我们发现科学存在边界,认知存在极限,而我们的数学、物理学、哲学最多只能考虑到有限的真理。

1926年,爱因斯坦和海森堡在讨论电子轨道问题时,爱因斯坦曾质问海森堡:“难道你是认真相信只有可观察量才应当进入物理理论吗?”

海森堡答道:“你处理相对论不正是这样吗?你曾经强调过绝对时间不能进入物理理论,仅仅因为绝对时间无法观察。”

爱因斯坦点头承认,但是又说:“一个人把实际观察到的东西记在心里,这很重要。但是在原则上,单靠可观测量来建立理论,那是完全错误的。现实世界中的认知过程其实是反过来的,是理论决定我们能观察到的东西。只有理论,也就是关于规律的知识,才能使我们从感觉印象推论出基本原理。”[7][8]

爱因斯坦这段话太思辨了,有点“白马非马”那味儿。事实是,不管爱因斯坦觉得多么难以接受,整个量子体系就在“测不准”的前提下建立起来。而随着科技的发展、测量的日益精确、量子计算机的发展等等,量子力学终有一天还会天翻地覆。到时候,我们所有人都会显得很愚蠢。

标签:动力学,分子,计算化学,分子动力学,分子模拟