第七章分子动力学和 monte carlo模拟 · d. 解牛顿运动方程,计算短时间内(time...

21
《量子化学与分子力学/分子模拟》第七章 分子动力学和Monte Carlo模拟 http://struchem.nankai.edu.cn 第七章 分子动力学和 Monte Carlo模拟

Upload: others

Post on 18-Jan-2021

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 第七章分子动力学和 Monte Carlo模拟 · D. 解牛顿运动方程,计算短时间内(Time Step)粒子的新位置 E. 计算粒子新的速度和加速度 F. 重复C~E直至体系达到平衡。体系平衡后,等间隔保存原子的坐

《量子化学与分子力学/分子模拟》第七章分子动力学和Monte Carlo模拟 http://struchem.nankai.edu.cn

第七章 分子动力学和Monte Carlo模拟

Page 2: 第七章分子动力学和 Monte Carlo模拟 · D. 解牛顿运动方程,计算短时间内(Time Step)粒子的新位置 E. 计算粒子新的速度和加速度 F. 重复C~E直至体系达到平衡。体系平衡后,等间隔保存原子的坐

《量子化学与分子力学/分子模拟》第七章分子动力学和Monte Carlo模拟 http://struchem.nankai.edu.cn

MD — Molecular Dynamics Simulation

用来模拟分子体系与时间有关的性质,基于Newton运动定律,

可通过对Newton方程积分来抽样检测由原子坐标和速度所严格定义

的相空间,可以基于当前分子的位置和速度计算出其未来的位置和速

度。与单点能和构型优化不同,分子动力学模拟计算要考虑热运动,

分子可包含足够的热能来穿越势垒。根据各个粒子运动的统计分析,

可推知体系的各种性质。如可能的构象、热力学性质、分子的动态性

质、溶液中的行为,各种平衡态性质等

§7.1 分子动力学

Page 3: 第七章分子动力学和 Monte Carlo模拟 · D. 解牛顿运动方程,计算短时间内(Time Step)粒子的新位置 E. 计算粒子新的速度和加速度 F. 重复C~E直至体系达到平衡。体系平衡后,等间隔保存原子的坐

《量子化学与分子力学/分子模拟》第七章分子动力学和Monte Carlo模拟 http://struchem.nankai.edu.cn

ii r

VF

i

ii mFa

N

iiivmK

1

2

21

加速度

动能

总能量 H(r, p) = V(r) + K(p)

Page 4: 第七章分子动力学和 Monte Carlo模拟 · D. 解牛顿运动方程,计算短时间内(Time Step)粒子的新位置 E. 计算粒子新的速度和加速度 F. 重复C~E直至体系达到平衡。体系平衡后,等间隔保存原子的坐

《量子化学与分子力学/分子模拟》第七章分子动力学和Monte Carlo模拟 http://struchem.nankai.edu.cn

7.1.1 分子动力学模拟的一般步骤

A. 给定条件参数(温度、粒子数、时间等)B. 体系初始化(初始位置和速度) C. 计算作用于所有粒子上的力

D. 解牛顿运动方程,计算短时间内(Time Step)粒子的新位置

E. 计算粒子新的速度和加速度

F. 重复C~E直至体系达到平衡。体系平衡后,等间隔保存原子的坐标,这些信息称为Trajectory

G. 继续计算直到取得足够的数据,分析轨线数据,得到体系的统计性质

Page 5: 第七章分子动力学和 Monte Carlo模拟 · D. 解牛顿运动方程,计算短时间内(Time Step)粒子的新位置 E. 计算粒子新的速度和加速度 F. 重复C~E直至体系达到平衡。体系平衡后,等间隔保存原子的坐

《量子化学与分子力学/分子模拟》第七章分子动力学和Monte Carlo模拟 http://struchem.nankai.edu.cn

7.1.2 MD中的一些概念和问题

• Time Step 每步计算的时间间隔,即求解牛顿方程积分的时间范

围。时间间隔太大,会导致原子偏离过远,间隔过短则使模拟时

间加长。根据Hyperchem手册建议,一般对AA体系使用0.5~1.0fs,对UA使用1~2fs

• Simulation Periods MD模拟可以有3个时间和温度段,加热、模

拟和冷却。如果需要了解平衡性质,则只需要两个部分:平衡和

数据采集

Page 6: 第七章分子动力学和 Monte Carlo模拟 · D. 解牛顿运动方程,计算短时间内(Time Step)粒子的新位置 E. 计算粒子新的速度和加速度 F. 重复C~E直至体系达到平衡。体系平衡后,等间隔保存原子的坐

《量子化学与分子力学/分子模拟》第七章分子动力学和Monte Carlo模拟 http://struchem.nankai.edu.cn

• 初始条件和加热:

MD一般需要有粒子初始的速度,而我们用来进行MD的结构往

往是优化的结果(~0K),虽可以直接使用模拟温度来直接进行模

拟,但最好通过逐步升温的办法到达模拟温度

• 判断平衡:

一般MD平衡10~20ps即可达到(到达指定温度后),但也有需要更

长时间的。可通过监测体系势能、总能量等参数来判断是否已达

到平衡

Page 7: 第七章分子动力学和 Monte Carlo模拟 · D. 解牛顿运动方程,计算短时间内(Time Step)粒子的新位置 E. 计算粒子新的速度和加速度 F. 重复C~E直至体系达到平衡。体系平衡后,等间隔保存原子的坐

《量子化学与分子力学/分子模拟》第七章分子动力学和Monte Carlo模拟 http://struchem.nankai.edu.cn

0 20 40 60 80 100 1200

10

20

30

40

50

60E

tot/k

calm

ol-1

t/ps

Page 8: 第七章分子动力学和 Monte Carlo模拟 · D. 解牛顿运动方程,计算短时间内(Time Step)粒子的新位置 E. 计算粒子新的速度和加速度 F. 重复C~E直至体系达到平衡。体系平衡后,等间隔保存原子的坐

《量子化学与分子力学/分子模拟》第七章分子动力学和Monte Carlo模拟 http://struchem.nankai.edu.cn

• A. 淬火动力学:高温动力学和能量优化结合的方法,使用MD可升到高温(600~1200K),这样可以克服分子各构象间的势垒,使分子在各种可能的构象中自由转化。具体方法:设置5-10ps升温过程,高温下模拟100ps,在后100ps中选取足够的构象进行优化,找到各种极小点

7.1.3 MD构象搜索

分子动力学对于中等大小分子构象空间的搜索具有很高的效率

Page 9: 第七章分子动力学和 Monte Carlo模拟 · D. 解牛顿运动方程,计算短时间内(Time Step)粒子的新位置 E. 计算粒子新的速度和加速度 F. 重复C~E直至体系达到平衡。体系平衡后,等间隔保存原子的坐

《量子化学与分子力学/分子模拟》第七章分子动力学和Monte Carlo模拟 http://struchem.nankai.edu.cn

A. 选择力场,构建分子

B. 设置分子动力学参数

C. 设置保存的文件(Snapshots)D. 设置监视的内容

E. 开始运行,监视内容保存为CSV文件。

F. 运行结束,使用回放功能(playback)观看结果

G. 选择储存的数据进行优化

H. 总结结果

MD 淬火动力学构象搜索

Page 10: 第七章分子动力学和 Monte Carlo模拟 · D. 解牛顿运动方程,计算短时间内(Time Step)粒子的新位置 E. 计算粒子新的速度和加速度 F. 重复C~E直至体系达到平衡。体系平衡后,等间隔保存原子的坐

《量子化学与分子力学/分子模拟》第七章分子动力学和Monte Carlo模拟 http://struchem.nankai.edu.cn

注意

• 淬火动力学构象搜索不能破坏键或环的结构。

• 由于高温动力学的温度较高,因此原子的速度大,timestep比常

温要小,以避免分子“爆炸”,有时模拟温度要小到0.1fs。• 有些势函数不适合高温,为避免产生错误结果(如产生手性变化

等),需要加构型限制条件。

• 研究表明,从多个不同的 构象开始动力学模拟进行构象搜索其

效率要高于从单一构象长时间的搜索。

Page 11: 第七章分子动力学和 Monte Carlo模拟 · D. 解牛顿运动方程,计算短时间内(Time Step)粒子的新位置 E. 计算粒子新的速度和加速度 F. 重复C~E直至体系达到平衡。体系平衡后,等间隔保存原子的坐

《量子化学与分子力学/分子模拟》第七章分子动力学和Monte Carlo模拟 http://struchem.nankai.edu.cn

B. 模拟退火

• 淬火动力学容易陷入区域极小点,为避免产生这样的问题,可以

缓慢降至室温或更低的温度—使用模拟退火可以得到能量相应比

较低的极小值,具体过程如下:

将升高温度至可以克服分子各构象间势垒,逐渐降温至0K,得到

的构象再进行优化可得到近似全局极小

举例

Page 12: 第七章分子动力学和 Monte Carlo模拟 · D. 解牛顿运动方程,计算短时间内(Time Step)粒子的新位置 E. 计算粒子新的速度和加速度 F. 重复C~E直至体系达到平衡。体系平衡后,等间隔保存原子的坐

《量子化学与分子力学/分子模拟》第七章分子动力学和Monte Carlo模拟 http://struchem.nankai.edu.cn

7.1.4 溶液的模拟

• 采用周期性边界条件可以模拟溶液体系中分子构象的变化

Page 13: 第七章分子动力学和 Monte Carlo模拟 · D. 解牛顿运动方程,计算短时间内(Time Step)粒子的新位置 E. 计算粒子新的速度和加速度 F. 重复C~E直至体系达到平衡。体系平衡后,等间隔保存原子的坐

《量子化学与分子力学/分子模拟》第七章分子动力学和Monte Carlo模拟 http://struchem.nankai.edu.cn

7.1.5 实例1 多肽的动力学

1. 构建多肽,优化

• 选择AMBER力场

• Database选择Amino Acids

• 选Beta Sheet, 单击Ser六次,构建六肽

• Database选择Make Zwitterion添加端基,构建六肽两性离子

• Compute选择Geometry Optimization

• 优化结束,E=166.20 kcal/mol

• 保存为p6.hin

Page 14: 第七章分子动力学和 Monte Carlo模拟 · D. 解牛顿运动方程,计算短时间内(Time Step)粒子的新位置 E. 计算粒子新的速度和加速度 F. 重复C~E直至体系达到平衡。体系平衡后,等间隔保存原子的坐

《量子化学与分子力学/分子模拟》第七章分子动力学和Monte Carlo模拟 http://struchem.nankai.edu.cn

2. 动力学模拟

• Compute选择Molecular Dynamics• 设置模拟温度300K, 模拟时间(Run Time)

1ps, 步长0.001ps, 加热、冷却时间为0;• 按snapshots,保存动力学轨迹文件名为

p6-md.hin,保存周期为1个数据步,OK• 设置数据采集周期为1,屏幕刷新周期为

10(动力学计算时可节省时间)• 按Averages, 选EKIN, EPOT ETOT至

avg&graph OK• 按Proceed开始模拟,出现Molecular

Dynamics Averages窗口,按Rescale可调整坐标至合适范围

• 模拟结束,结果如右

Page 15: 第七章分子动力学和 Monte Carlo模拟 · D. 解牛顿运动方程,计算短时间内(Time Step)粒子的新位置 E. 计算粒子新的速度和加速度 F. 重复C~E直至体系达到平衡。体系平衡后,等间隔保存原子的坐

《量子化学与分子力学/分子模拟》第七章分子动力学和Monte Carlo模拟 http://struchem.nankai.edu.cn

3. 动力学数据回放

• 打开p6-md.hin,系统提示如右

• Compute选择Molecular Dynamics

• 选playback

• 按Proceed开始回放

• 如按Sanpshots, 可选择回放的时间范围(如二

者一致则选定某个时间)

Page 16: 第七章分子动力学和 Monte Carlo模拟 · D. 解牛顿运动方程,计算短时间内(Time Step)粒子的新位置 E. 计算粒子新的速度和加速度 F. 重复C~E直至体系达到平衡。体系平衡后,等间隔保存原子的坐

《量子化学与分子力学/分子模拟》第七章分子动力学和Monte Carlo模拟 http://struchem.nankai.edu.cn

4. 动力学数据采集

• 动力学模拟时已存有p6-md.csv,记录的是各时

间下的Ekin, Epot Etot,可直接用来画图

• 如需要监视动力学过程中键长(距离)、键角等的

变化,可选择相应原子,SelectName Selection, “Other”填上名字如L1

• Compute选择Molecular Dynamics

• 选playback,Average,将L1纳入平均的数据

• 按Proceed开始回放,结束后p6-md.csv中有需要

的数据

Page 17: 第七章分子动力学和 Monte Carlo模拟 · D. 解牛顿运动方程,计算短时间内(Time Step)粒子的新位置 E. 计算粒子新的速度和加速度 F. 重复C~E直至体系达到平衡。体系平衡后,等间隔保存原子的坐

《量子化学与分子力学/分子模拟》第七章分子动力学和Monte Carlo模拟 http://struchem.nankai.edu.cn

0.0 0.2 0.4 0.6 0.8 1.0-170

-160

-150

-140

-130E po

t / kc

alm

ol-1

t / ps

0.0 0.2 0.4 0.6 0.8 1.01.8

2.0

2.2

2.4

2.6

2.8

3.0

L1

/ Å

t/ps

Page 18: 第七章分子动力学和 Monte Carlo模拟 · D. 解牛顿运动方程,计算短时间内(Time Step)粒子的新位置 E. 计算粒子新的速度和加速度 F. 重复C~E直至体系达到平衡。体系平衡后,等间隔保存原子的坐

《量子化学与分子力学/分子模拟》第七章分子动力学和Monte Carlo模拟 http://struchem.nankai.edu.cn

t E0.1 -180.760.2 -173.210.3 -176.440.4 -180.850.5 -180.850.6 -179.140.7 -178.740.8 -178.830.9 -255.541.0 -195.05

5. 淬火动力学构象搜索

a. 打开p6-md.hin,b. Compute选择Molecular Dynamicsc. 选playbackd. 按Sanpshots, 可选择回放的时间起止均为0.1pse. Proceed, 回放到0.1ps, Compute Geometry

Optimization E=180.76kcal/mol 保存结构为p6-md-a1.hin

f. 重复b~e,分别选不同时间,优化

Page 19: 第七章分子动力学和 Monte Carlo模拟 · D. 解牛顿运动方程,计算短时间内(Time Step)粒子的新位置 E. 计算粒子新的速度和加速度 F. 重复C~E直至体系达到平衡。体系平衡后,等间隔保存原子的坐

《量子化学与分子力学/分子模拟》第七章分子动力学和Monte Carlo模拟 http://struchem.nankai.edu.cn

6. 溶液动力学模拟

• 打开p6-md.hin,• SetupPeriodic Box打开对话框

• 设置箱子大小20×20×40Å• 力场选项中分别设置内、外的Cutoff• 溶剂箱条件下,Dielectric选Constant• 预优化至Gradient<1• 设置动力学参数,进行动力学模拟。

Page 20: 第七章分子动力学和 Monte Carlo模拟 · D. 解牛顿运动方程,计算短时间内(Time Step)粒子的新位置 E. 计算粒子新的速度和加速度 F. 重复C~E直至体系达到平衡。体系平衡后,等间隔保存原子的坐

《量子化学与分子力学/分子模拟》第七章分子动力学和Monte Carlo模拟 http://struchem.nankai.edu.cn

Mont Carlo模拟基于给定温度下的Boltzmann分布所得到的随机

数值来抽样检测相空间,以概率统计理论为基础,以随机抽样为主要

手段。首先建立一个概率(或随机过程)模型,使它的参数等于问题的

解。然后通过对模型(或过程)的抽样试验来获得有关参数的统计特征

解的近似值及精度估计。Mont Carlo模拟常用来计算一个分子或分子

体系的平均热力学性质,并可扩展到研究分子结构以及液体/溶液的平

衡性质

如一个分子,随机选取其某一个构象角可得到许多可能的构象,

如果取样足够多,则可以用Boltzmann分布来验证,给出统计的结果

§7.2 Monte Carlo模拟

Page 21: 第七章分子动力学和 Monte Carlo模拟 · D. 解牛顿运动方程,计算短时间内(Time Step)粒子的新位置 E. 计算粒子新的速度和加速度 F. 重复C~E直至体系达到平衡。体系平衡后,等间隔保存原子的坐

《量子化学与分子力学/分子模拟》第七章分子动力学和Monte Carlo模拟 http://struchem.nankai.edu.cn

Mont Carlo模拟一般步骤如下:

①给出体系中各原子的初始位置;

②计算体系的能量;

③对体系随机选择一个试验动作(可以对所有原子或仅对一个原子/分子的),产生一个新的分子构型;

④计算体系新状态的能量;

⑤根据新旧能量哪个更符合Boltzmann分布决定是否接受新状态(若新状态的能量低,则接受新状态;若新状态的能量高,则计算Boltzmann常数,同时产生一个随机数,若该随机数小于所计算的Boltzmann因子,接受这个构型,反之放弃这个构型),进而决定保留新状态还是将原子移动回原来的位置;

⑥重复③~⑤,直到体系平衡;

⑦连续重复收集数据计算相应的性质,性质的期望值是其重复数目的平均值