目录

ReaxFF-温度分布函数:计算沿着Cell某个轴向的温度分布函数

概述

我们以简单分子动力学模拟为例,单纯演示如何生成沿着A、B、C晶轴方向的温度分布情况。

方法:在*.run文件中,通过Trajectory字段设置TProfileGridPoints实现,例如:

      TProfileGridPoints 40

参数设置

由于温度曲线是从坐标原点开始生成数据,因此用户可以在模型创建完毕之后,Edit → Crystal → Map Atoms to [0..1],从而将坐标原点放置于Cell的顶点,这样数据与模型能够完全对应。

保存作业后,修改*.run文件(记事本可以打开)如下,在Trajectory字段内增加了“TProfileGridPoints 40”的设置。如果没Trajectory字段,用户可以自行添加:

......省略
MolecularDynamics
    NSteps 10000
    Trajectory
        SamplingFreq 1000
        TProfileGridPoints 40
    End
    InitialVelocities
        Temperature 498
    End
    Thermostat
        Type NHC
        Temperature 498
        Tau 5
    End
End
System
    Atoms
......省略

SamplingFreq 1000是我们在图2中设置了保存轨迹的频率为每1000步保存一次轨迹。本例计算了1万步,因此有10帧轨迹(加上初始结构则为11帧)。

提交作业。

结果查看

计算完毕后,SCM → Kf Browser → File → Expert Mode,在窗口底部输入TempProfile,以搜索相关信息:

可以看到MDhistory里面,有TempProfile_a(i)、TempProfile_b(i)、TempProfile_c(i),对应ABC三个晶轴方向,i=1~11,代表从初始结构到最后一帧。

例如我们希望查看最后一帧B方向的温度分布曲线,将其左侧小三角点开,将产生的所有数据拷贝出去即可,即该方向的温度分布数值。

数据处理小技巧:

将所有数值复制到Word文档中,选中数据之间的间隔,用查找替换功能,将其替换为换行符^p,再将剩余的不规则字符替换为空字符(什么也没有),则变成了规则的一列数据。

如果需要做曲线,横坐标即晶格常数B分为40段。晶格常数可以在AMSinput → Model → Lattice下方看到: