对AMS而言,所有力场、机器学习势,或基于DFTB、DFT的优化,除了Main的设置不同(为各种计算引擎自身参数)外,均与下例设置一致。这里以ReaxFF为例进行说明。
本教程基于AMS2023及以上版本。
这里用两种相同的固体(不同的固体则面临晶格常数不统一的问题,需要通过最小公倍数得到共同的晶格尺寸,一个Cell只能有一个尺寸),中间为液体。建模时,导入单晶结构(*.cif文件通过AMSinput → File → Import Coordinates导入),然后转为Conventional Cell(窗口底部❄ → Convert to conventional Cell),得到便于看出晶向指数、晶面指数的Conventional Cell,然后❄ → Generate Slab…输晶面的密勒指数。以及Slab的厚度(为当前Vonventional Cell厚度的几倍?),Generate即可得到。
当前就变成了一个二维周期体系,需要将其改回三维(因为二维周期体系是无法施加压强的):回到Main窗口,将Periodicity改为Bulk,然后修改Model → Lattice中晶格矢量的C方向尺寸(垂直于Slab的方向)到一个比较合适的值,这样控制Slab之间的真空层厚度。修改完毕后,窗口底部学❄ → Generate Super Cell,对角项三个数字为A、B、C方向的重复数量,A、B方向可以根据需要设置适当的倍数,C方向设置为2,从而最终生成2层、一定宽度、长度的Slab。
Edit → Builder,添加适当数量的Benzene分子:
不过如上所示由于设置了分子最小间距“Distance”为2.5埃,则添加的分子-分子间,分子与Slab间最小间距将不会小于2.5埃,因此能添加的分子个数是有上限,超过了上限,随机堆叠的时候,就会堆叠失败而报错。用户可以多次尝试不同数量,从而得到不太小的密度就可以了。因为后面施加压力的时候,即使液体密度小了,也会通过压力压缩到较大的密度。
添加好之后,删除上表面以上、下表面以下的分子,看起来就像下图:
基本参数,包括结构优化Task、Force Field的设置如上图所示,然后点击Task右侧的 > 按钮,增加压力的设置:
注意因为要考虑压力,所以Cell的尺寸是需要变化的,即Optimize lattive需要勾选;这种体系结构优化是永不收敛的,只需要大致收敛即可,因此设置了优化步数5000,即优化5000步后就不再优化了(因此计算完毕会提示结构优化不收敛);窗口底部有Pressure框,输入压强。保存,并提交作业即可。
SCM → Movie,如前所述,这个优化不是收敛的,因此可以忽略下述提示:
整个过程中,两个Slab之间的间距有所压缩(因此液体密度也有所压缩),A、B方向的尺寸也有所变化(选中窗口右侧的曲线窗口,按del键删除,然后Graph → Lattice vector length → Vector 1,即可看到A的变化):
3200步以后的结构,任意一帧结构,均可用于后续的分子动力学模拟,并不会影响分子动力学的结果。Movie窗口调整到所需的帧数后,File → Update Geometry in Input则可将其更新到AMSinput原先作业的窗口中,便于设置分子动力学参数,并另存一个作业。当然也可以在所需帧数位置,File → Save geometry保存为xyz格式,然后在AMSinput中可以通过File → Import Coordinates导入结构。
因为是结构优化,所以没有温度(分子没有热运动、振动),可以近似理解为绝对零度。不过由于分子间存在排斥,所以压强是存在的,即我们设置的1 Bar。