这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录前一修订版后一修订版 | 前一修订版后一修订版两侧同时换到之后的修订记录 | ||
adf:optimizeff [2019/12/10 15:45] – [3. 准备ffield文件] liu.jun | adf:optimizeff [2022/09/14 11:14] – liu.jun | ||
---|---|---|---|
行 1: | 行 1: | ||
======使用分子体系DFT计算数据优化ReaxFF力场====== | ======使用分子体系DFT计算数据优化ReaxFF力场====== | ||
+ | 本教程仅适用于AMS2019.1及其以下版本。 | ||
ADF软件集成了使用蒙特卡洛方法优化力场参数的脚本。目前已经可以较为方便的使用,脚本经过测试,可以正常工作,但大都是在命令行下工作。用“优化”的方式,也可以创建一些新的力场:一般在相似力场的基础上,对力场中的元素进行修改,使用DFT计算这些新元素体系的一些结构的能量,然后使用MCFF对力场参数进行优化。 | ADF软件集成了使用蒙特卡洛方法优化力场参数的脚本。目前已经可以较为方便的使用,脚本经过测试,可以正常工作,但大都是在命令行下工作。用“优化”的方式,也可以创建一些新的力场:一般在相似力场的基础上,对力场中的元素进行修改,使用DFT计算这些新元素体系的一些结构的能量,然后使用MCFF对力场参数进行优化。 | ||
行 15: | 行 16: | ||
* mcmxst是允许运行的最大步数,这个参数需要改大,否则默认值为0,只运行一步。 | * mcmxst是允许运行的最大步数,这个参数需要改大,否则默认值为0,只运行一步。 | ||
- | [[https:// | + | * {{ :adf:mcff.pdf |详细英文教程下载(点击) |
+ | * {{ : | ||
本文以< | 本文以< | ||
行 32: | 行 34: | ||
{{ : | {{ : | ||
- | 更详细的势能面扫描教程,参考:[[adf: | + | 更详细的势能面扫描教程,参考:[[adf: |
=====2. 从*.t21抽取geo、trainset.in文件===== | =====2. 从*.t21抽取geo、trainset.in文件===== | ||
下面的命令行操作,要求ADF的环境变量生效。用到的命令,都是ADF的内置命令,例如startpython就在adf201*.*/ | 下面的命令行操作,要求ADF的环境变量生效。用到的命令,都是ADF的内置命令,例如startpython就在adf201*.*/ | ||
行 41: | 行 43: | ||
</ | </ | ||
- | 注意,其中startpython是ADF内部命令,只要环境变量生效即可运行。[[https:// | + | 注意,其中startpython是ADF内部命令,只要环境变量生效即可运行。LT_to_trainset.py文件见前面下载链接。LT.t21是前一步Linear Transit计算得到的输出文件。< |
<color grey> | <color grey> | ||
行 54: | 行 56: | ||
adfreport geo -rxtrainset > trainset.in | adfreport geo -rxtrainset > trainset.in | ||
</ | </ | ||
- | adfreport是ADF内部命令,只要环境变量生效即可运行。< | + | adfreport是ADF内部命令,只要环境变量生效即可运行。< |
<color blue> | <color blue> | ||
行 72: | 行 74: | ||
Trainset.in文件有四列,其中第二列是“权重”,关于“权重”,参考《使用块体材料DFT计算数据优化ReaxFF力场》:[[adf: | Trainset.in文件有四列,其中第二列是“权重”,关于“权重”,参考《使用块体材料DFT计算数据优化ReaxFF力场》:[[adf: | ||
- | Trainset.in文件格式,参考:[[https:// | + | Trainset.in文件格式,参考:[[https:// |
=====3. 准备ffield文件===== | =====3. 准备ffield文件===== | ||
- | 相似的力场本例中用了CHOSFClN.ff,直接将其拷贝到当前目录(和前面生成的geo、trainset.in文件在同一个目录中),并修改名字为ffield。将Cl元素修改为Br元素。并修改一些其他的参数,比如原子价、有效质量、范德华半径、价电子个数等(具体参数的含义,[[https:// | + | 相似的力场本例中用了CHOSFClN.ff,直接将其拷贝到当前目录(和前面生成的geo、trainset.in文件在同一个目录中),并修改名字为ffield。将Cl元素修改为Br元素。并修改一些其他的参数,比如原子价、有效质量、范德华半径、价电子个数等(具体参数的含义{{ :adf:reaxff-users-manual-2002.pdf |可以参考手册}})。具体如下(彩色的项目可能需要被改动): |
{{ : | {{ : | ||
行 89: | 行 91: | ||
</ | </ | ||
- | 这三个命令分别在当前目录下,生成ffield_min、ffield_max、ffield_bool文件。[[https:// | + | 这三个命令分别在当前目录下,生成ffield_min、ffield_max、ffield_bool文件。 |
这三个文件原则上修改的越符合实际情况越好。本例中,只包含C-Br的数据,因此只能优化Br的原子参数、C-Br(在力场文件中编号为1、6)的键参数,具体的field_bool见下载文件。 | 这三个文件原则上修改的越符合实际情况越好。本例中,只包含C-Br的数据,因此只能优化Br的原子参数、C-Br(在力场文件中编号为1、6)的键参数,具体的field_bool见下载文件。 | ||
行 95: | 行 97: | ||
ffield的格式、参数的具体含义,参考[[https:// | ffield的格式、参数的具体含义,参考[[https:// | ||
=====5. mcff.run文件===== | =====5. mcff.run文件===== | ||
- | [[https:// | + | 注意根据实际需求,灵活修改(参数的含义在本文前面已经进行了说明): |
* mcbeta可以用默认值; | * mcbeta可以用默认值; | ||
* mcdbet设置的越小越好,降温越慢,蒙特卡洛模拟效果越好,但所需的步数就越多,默认值实际上已经比较小了; | * mcdbet设置的越小越好,降温越慢,蒙特卡洛模拟效果越好,但所需的步数就越多,默认值实际上已经比较小了; | ||
行 111: | 行 113: | ||
生成的summery.txt列出了蒙特卡洛的过程,比较重要的数据是能量误差(Current error这一列数据),当然误差越小越好。生成的ffield_best是优化得到的力场,修改成自己希望的名字,例如CHOSFBrN.ff即可。同时也给出了最后一个被“接受(蒙特卡洛认为较优的力场)”蒙特卡洛生成的力场,名为ffield_last_accepted.1,供参考。 | 生成的summery.txt列出了蒙特卡洛的过程,比较重要的数据是能量误差(Current error这一列数据),当然误差越小越好。生成的ffield_best是优化得到的力场,修改成自己希望的名字,例如CHOSFBrN.ff即可。同时也给出了最后一个被“接受(蒙特卡洛认为较优的力场)”蒙特卡洛生成的力场,名为ffield_last_accepted.1,供参考。 | ||
- | |||
- | [[https:// |