分子动力学模拟方法
251/360
1
11/18
1/6
1/60
二阶运动方程之二:
r f(r,r)
Values
3 4 5 6
r r (t t ) r (t t )
c 2 p 2
c0
0 1/6 19/90 3/16
c1
1 5/6 3/4 251/360
c2
1 1 1 1
c3
c4
c5
1/3 1/2 11/18 1/12 1/6 1/60
c3
c5
1/6 1/3 35/72 1/24 5/48 1/120
二阶运动方程之一:
r f(r)
Values
3 4 5
r r (t t) r (t t)
c 2 p 2
c0
0 1/6 19/120
c1
1 5/6 3/4
c2
1 1 1
c3
c4
c5
1/3 1/2 1/12
6
3/20
Velocity Verlet算法的表述:
算法启动
① 规定初始位置 ② 规定初始速度 ③ 计算第n+1步的位置: ④ 计算第n+1步的力 ⑤ 计算第n+1步的速度: ⑥ 重复③至⑤
1 ri (t t) ri (t) v i (t) t ai (t) t 2 2
1 v i (t t) v i (t) [ai (t) ai (t t)]t 2
•1984年:恒温条件下的动力学方法 (Nosé -Hoover法)
•1985年:第一原理分子動力学法(Car-Parrinello法) •1991年:巨正则系综的分子动力学方法(Cagin and Pettit)
课程讲解内容:经典分子动力学 (Classical Molecular Dynamics)
Verlet三种形式算法的比较:
Verlet Leapfrog Velocity Verlet
四、预测-校正(Predictor-Corrector)格式算法:
1. 预测(Predictor)阶段:其基本思想是Taylor展开
1 1 2 r (t t ) r (t ) v(t )t a(t )t b(t )t 3 2 6 1 p v (t t ) v(t ) a(t )t b(t )t 2 2 p a (t t ) a(t ) b(t )t
校正阶段运动方程的变换:
r0c (t t) r0p (t t) c0 c p r1 (t t) r1 (t t) c1 r r c (t t) r p (t t) c2 2 2 c p r (t t) r (t t) c 3 3 3
分子动力学简史
•1957年:基于刚球势的分子動力学法(Alder and Wainwright)
•1964年:利用Lennard-Jone势函数法对液态氩性质的模拟(Rahman) •1971年:模拟具有分子团簇行为的水的性质(Rahman and Stillinger) •1977年:约束动力学方法(Rychaert, Ciccotti & Berendsen; van Gunsteren) •1980年:恒压条件下的动力学方法(Andersen法、Parrinello-Rahman法) •1983年:非平衡态动力学方法(Gillan and Dixon) •1984年: 恒温条件下的动力学方法 (Berendsen et al.)
Verlet算法的表述:
算法启动
① 规定初始位置 ② 规定初始速度 ③ 扰动初始位置: ④ 计算第n步的力 ⑤ 计算第n+1步的位置: ⑥ 计算第n步的速度: ⑦ 重复④至⑥
r (t) r (0) v i (0) t
ri (t t) 2ri (t) ri (t - t) ai (t) t 2
初始条件:
N 1 N U ( r ) dpi N 1 N ij F(rij ) dt rij i 1 j i 1 i 1 j i 1
ri
t 0
ri (0)
dri dt
t 0
v i (0)
分子动力学方法特征:
• 分子动力学是在原子、分子水平上求解多体问题的重要 的计算机模拟方法,可以预测纳米尺度上的材料动力学 特性。 • 通过求解所有粒子的运动方程,分子动力学方法可以用 于模拟与原子运动路径相关的基本过程。 • 在分子动力学中,粒子的运动行为是通过经典的 Newton 运动方程所描述。 • 分子动力学方法是确定性方法,一旦初始构型和速度确 定了,分子随时间所产生的运动轨迹也就确定了。
温度越高,∆t 应该减小
微正则系综分子动力学(NVE MD)
它是分子动力学方法的最基本系综 具有确定的粒子数N,能量E和体积V 算法:
① 规定初始位置和初始速度 ② 对运动方程积分若干步 ③ 计算势能和动能 ④ 若能量不等于所需要的值,对速度进行标度 ⑤ 重复②至④,直到系统平衡
微正则系综(NVE)MD模拟算法的流程图:
+
粒子位置: ri (t t) 2ri (t) ri (t - t) ai (t) t 2
粒子速度: v i (t)
ri (t t) ri (t - t) 2t
粒子加速度: ai (t)
Fi (t) mi
开始运动时需要r(t-Δt):
r (t) r (0) v i (0) t
v i (t) ri (t t) ri (t - t) 2t
Verlet算法的优缺点:
优点: 1、精确,误差O(Δ4) 2、每次积分只计算一次力 3、时间可逆 缺点: 1、速度有较大误差O(Δ2) 2、轨迹与速度无关,无法与热浴耦联
二、蛙跳(Leap-frog)算法:半步算法
1. 首先利用当前时刻的加速度,计算半个时间步长后的速度:
等价于
பைடு நூலகம்
1 1 v i (t t) v i (t) ai (t)t 2 2 1 ri (t t) ri (t) v i (t t) t 2
1 1 v i (t t) v i (t t) a i (t t)t 2 2
优点:速度计算更加准确
粒子的运动取决于经典力 学(牛顿定律(F = m a)
分子动力学方法基础:
原理:计算一组分子的相空间轨道,其中每个分 子各自服从牛顿运动定律:
1 N pi2 N 1 N H U (rij ) 2 i 1 mi i 1 j i 1
dri p i mi mi v i dt
校正:
r (t t ) r (t ) c0 a(t t )
c p
v (t t ) v (t ) c1a(t t )
c p
a (t t ) a (t ) c2 a(t t )
c p
b (t t ) b (t ) c3a(t t )
C0, C1, C2, C3的值以及r的形式: 取决于运动方程的阶数。
一阶运动方程:
r f(r)
Values
3
4 5 6
r r (t t) r (t t)
c 1 p 1
c4 c1
1
1 1 1
c0
5/12
3/8 251/720 95/288
c2
1/2
3/4 11/12 25/24
M. Allen, D. J. Tildesley, Computer Simulation of Liquids (Clarendon Press, Oxford, 1987)
积分时间步长t的选择:
太长的时间步长会造成分子间的激烈碰撞,体系数据溢出; 导致系统崩溃。 太短的时间步长会降低模拟过程搜索相空间的能力 室温下, ∆t ≈ 1 fs (femtosecond 10-15s),
分子动力学的算法:有限差分方法
一、Verlet算法
粒子位置的Taylor展开式:
ri (t t) ri (t) v i (t) t 1 1 a i (t) t 2 b i (t) t 3 2 6
1 1 ri (t t) ri (t) v i (t) t ai (t) t 2 b i (t) t 3 2 6
1 1 v i (t t) v i (t - t) 2 2 v i (t) 2
v
t-Δt/2
r
t t+Δt/2 t+Δt
v
t+3Δt/2 t+2Δt
Leap-frog算法的表述:
算法启动
① 规定初始位置 ② 规定初始速度 ③ 扰动初始速度: ④ 计算第n步的力 ⑤ 计算第n+1/2步的速度: ⑥ 计算第n+1步的位置: ⑦ 计算第n步的速度: ⑧ 重复④至⑦
c p
预测阶段运动方程的变换:
定义一组矢量:
r0 r (t ) r1 dr (t ) t dt d 2 r (t ) 1 2 r2 t 2 dt 2 d 3 r (t ) 1 3 r3 t 3 dt 6
1 1 2 r (t t) r(t) v(t)t a(t)t b(t)t 3 2 6 1 p v (t t) v(t) a(t)t b(t)t 2 2 a p (t t) a(t) b(t)t
给定每个分子的初始位置ri(0)和速度vi(0) 计算每个分子的受力Fi 和加速度ai 解运动方程并求出每个分子运动一个时间步 长后到达的位置所具有的速度 移动所有分子到新的位置 , 并具有当前时刻 的速度 统计系统的热力学性质及其它物理量 No Yes