这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录前一修订版后一修订版 | 前一修订版 | ||
adf:simplemdofreaxams [2022/03/21 20:22] – [基元反应分析、反应速率常数] liu.jun | adf:simplemdofreaxams [2024/05/27 10:08] (当前版本) – [【入门基础教程】ReaxFF-燃烧:甲烷燃烧过程模拟] liu.jun | ||
---|---|---|---|
行 1: | 行 1: | ||
- | =======ReaxFF-燃烧:甲烷燃烧过程模拟====== | + | =======【入门基础教程】ReaxFF-燃烧:甲烷燃烧过程模拟、基元反应分析、反应速率常数计算、键级====== |
本文以甲烷燃烧为例,燃烧过程中不断生成CO< | 本文以甲烷燃烧为例,燃烧过程中不断生成CO< | ||
行 11: | 行 11: | ||
{{ : | {{ : | ||
- | 点击Task:Molecular Dynamics后面的 > 按钮,设置分子动力学模拟详细参数:步数(此处设置为4万步)、步长(此处默认0.25fs)、sample frequency(每多少步保存一次轨迹): | + | 点击Task:Molecular Dynamics后面的 > 按钮,设置分子动力学模拟详细参数:步数(此处设置为4万步)、步长(此处默认0.25fs,注意温度越高,这个值需要越小,避免单步运动距离太长而失真,因此4000K设置为0.1fs左右应该更好)、sample frequency(每多少步保存一次轨迹): |
{{ : | {{ : | ||
行 21: | 行 21: | ||
===NVT系综的设置=== | ===NVT系综的设置=== | ||
{{ : | {{ : | ||
- | 只需要设置系综实现的方案Thermostat(实现NVT系综的算法)、Temperature、Damping constant。其中Damping constant表示震荡时间(在达到指定温度前,温度随机震荡),一般默认设置100fs,也可以降低为5fs,对结果影响不大。 | + | 只需要设置系综实现的方案Thermostat(实现NVT系综的算法)、Temperature、Damping constant。其中Damping constant表示震荡时间(在达到指定温度前,温度随机震荡),一般默认设置100fs,也可以降低为5fs,对结果影响不大,不过一般不修改,运行更正常一些。 |
**恒温:**温度如果只设置了一个,则不需要设置Duration(s),整个模拟过程都是该温度 | **恒温:**温度如果只设置了一个,则不需要设置Duration(s),整个模拟过程都是该温度 | ||
行 27: | 行 27: | ||
**包含保温过程:**Duration(s)的数字个数比温度的数字个数少1个。如上图所示的设置,表示:起始温度298K,经历3000步升温到1300K,然后保温3000步,然后经历3000步升温到4300K,然后保温20000步,然后经历3000步降温到298K,298K直到结束。 | **包含保温过程:**Duration(s)的数字个数比温度的数字个数少1个。如上图所示的设置,表示:起始温度298K,经历3000步升温到1300K,然后保温3000步,然后经历3000步升温到4300K,然后保温20000步,然后经历3000步降温到298K,298K直到结束。 | ||
===NPT系综的设置=== | ===NPT系综的设置=== | ||
- | 在Thermostat设置的基础上增加Barostat的设置,压强的设置方式类似温度。 | + | 在Thermostat设置的基础上增加Barostat的设置,压强的设置方式类似温度。不过damping constant的设置注意不能设置太小,否则有可能导致出现“singular lattice”的报错。 |
+ | ===关于NVE系综的设置方式=== | ||
+ | Thermostat与Barostat均不设置,只设置MD参数中的Initial Temperature,即NVE系综。 | ||
=====结果分析===== | =====结果分析===== | ||
SCM - Movie - MD Properties - Temperature: | SCM - Movie - MD Properties - Temperature: | ||
行 36: | 行 38: | ||
可以看到温度的变化如同设置的效果。温度曲线大致与能量曲线重合,这是因为温度的变化引起动能的变化。而高温区域不再重合,表示高温区域发生了反应,释放了热量,因此导致能量升高。这里的能量是总能量=动能(每一帧中,原子的运动速度决定)+势能(每一帧中,整个体系的构型决定)。 | 可以看到温度的变化如同设置的效果。温度曲线大致与能量曲线重合,这是因为温度的变化引起动能的变化。而高温区域不再重合,表示高温区域发生了反应,释放了热量,因此导致能量升高。这里的能量是总能量=动能(每一帧中,原子的运动速度决定)+势能(每一帧中,整个体系的构型决定)。 | ||
Graph - Delete graph可以删除该曲线的显示。 | Graph - Delete graph可以删除该曲线的显示。 | ||
- | ====分子数量曲线==== | + | ====一、分子数量曲线==== |
SCM - Movie - MD Properties - Molecules | SCM - Movie - MD Properties - Molecules | ||
{{ : | {{ : | ||
行 47: | 行 49: | ||
曲线的导出:Graph - Save as XY,可以保存为文本文件,包含XY两列数据。 | 曲线的导出:Graph - Save as XY,可以保存为文本文件,包含XY两列数据。 | ||
- | ====基元反应分析、反应速率常数==== | + | ====二、基元反应分析、反应速率常数==== |
- | 这基于AdvancedWF模块的ChemTraYzer与ChemTraYzer2.0。 | + | 这需要使用AdvancedWF模块的ChemTraYzer2.0。Movie → MD Properties → ChemTraYzer2.0: |
- | ===1,ChemTraYzer=== | + | {{ : |
+ | * T stable:滤除存在时间过短的中间体,即滤除一些由于体系密度过大,或热碰撞而产生的假产物中间体(实际碰到一起之后,可能立即就弹开了)的反应,用户可以逐渐增大到20fs、40fs,对比一下反应数量,从而了解假反应的存在情况 | ||
+ | * 如果勾选Write mol population与Write events per time,则可以在生成的结果中包含产物的占比,及其Mann-Kendall值(描述一个物种表现得像反应物或产物的程度),以及总体反应次数、总体键变化次数柱状图(横坐标为时间)等 | ||
+ | * First Frame与Final Frame:设置分析从哪一帧到哪一帧之间的反应,默认的-1表示最后一帧,即默认即分析全部时间范围 | ||
+ | * 其他参数一般保存默认即可 | ||
- | SCM - Movie - MD Properties - Reaction Event Detection:ChemTraYzer(注意ChemTraYzer只适用于小分子体系) | + | 点击 Run ChemTraYzer2: |
- | {{ :adf:sink008.png?450 }} | + | {{ :adf:69c4824f-a770-4d41-bd7d-dcbbb84a02a4.png?800 }} |
+ | 输出结果: | ||
+ | * 以SMILES格式列出反应方程式、反应的级数 | ||
+ | * 反应速率常数(统计平均值,最大值,最小值),单位为cm3/ | ||
+ | * 如上图所示,上方表格列出所有反应方程式,下方表格列出该方程式对应的每个反应事件,用户点击具体某个反应事件,Movie窗口将只呈现该反应事件中相关原子的动态过程,时间轴自动调整到合适位置,便于用户更清晰的观察、检验结果,如下图所示{{ : | ||
+ | * 右下角有导出反应方程式列表的*.csv表格文件的按钮 | ||
+ | * 支持排序。顶部的选项点开,即可针对该项目进行排序,例如针对反应发生次数排序:{{ : | ||
+ | * 如果勾选了Write mol population与Write events per time,产生的结果类似如下(该表格多出来第三部分:Average count即产物的占比;所有Mann-Kendall值都在[-1, | ||
- | 其中第一、二框中的数字,输入要分析的时间段(从time step的第6000步开始,分析随后的20000步这段时间内,也就是第6001~26000步之间)发生的化学反应的情况(但实际目前这两个参数不起作用了,默认分析所有步,因此保持默认即可);**Recorssing filter建议保持默认值(200-250之间)**。 | + | 点击第三部分列表中的一行,将弹窗左下角改为Bar,并设置合适的宽度,例如2000,将生成柱状图类似如下(相关反应次数、键变化次数柱状图:横坐标时间,纵坐标数量): |
- | 然后点击Process方框,等到右下角显示ready之后,即表示分析完毕,可以显示出来了。点击Browse按钮,弹出结果窗口(这实际上是用浏览器打开了*.results/ | + | {{ : |
- | {{ :adf:sink009.png?850 }} | + | 如果按住Ctrl键,选中第三个表格中的多行,将产生相关的几种分子的数量变化曲线: |
+ | {{ :adf:chemtrazyer23sss-1536x768.png?650 }} | ||
- | * 首页是排名前五的“反应物”、产物,以及发生次数最多的前五个反应 | ||
- | * 分子结构都可以点击而得到该分子的“来源”(参与过的基元反应的反应物有哪些)与“去向”(参与过的基元反应的产物有哪些) | ||
- | * 右上角有其他汇总信息,例如所有反应、所以物种、时间线(每种物质首次出现的时间线)等等 | ||
- | * 速率常数:基元反应箭头上方的数值为反应速率常数,但该速率常数单位与化工中单位不一样,单位换算,参考:[[adf: | ||
- | ===2,ChemTraYzer2.0=== | + | ====三、键级==== |
- | **[[https:// | + | 在AMSinput中的键级,未经计算,因此其键级是图形窗口根据简单的价电子规则而猜测出来的。在Movie中是经过计算的,因此鼠标选中两个原子,窗口左下角则会显示两个原子之间的键级。 |