欢迎光临散文网 会员登陆 & 注册

分享几个LAMMPS常用命令

2023-06-09 15:01 作者:bili_99919241907  | 我要投稿

一、run命令使用技巧,多次run正确写法

run命令是lammps模拟中必不可缺的一个命令,主要功能是设定运算步数并启动运算。

最常见的命令是run+步数,其实,run命令还有更高级的应用,下面分类介绍run命令的用法。

(1)运行N步:run N

run+步数是用的最多的一条命令,主要功能是运行N步。

例如,run 1000 指在当前状态下继续运行1000步。

还有一个比较特殊的用法是:run 0

run 0功能是在不启动积分运算的情况下,计算热力学信息,此功能可用来进行热力学变量的初始化,如压力、温度等。

(2)运行到N步:run N upto

加关键词upto,表示从当前步数开始,运行到第N步结束。

例如,当前步数为100步,run 300 upto 的意思是从第100步开始,运行到第300步,这个run语句实际运行步数为200步。

(3)run N start N1 stop N2

这个命令表示从N1到N2步数内,运算N步。例如

(1)fix         1 all nvt 200.0 300.0 1.0
(2)run         1000 start 0 stop 10000
(3)run         1000 start 0 stop 10000
(4)...
(5)run         1000 start 0 stop 10000
上面这段代码每一个run命令运行1000步,10个run共运行10000步,在这10000步运行过程中,温度从200K到300K线性变化。

与之类似的命令:
(1)fix 1 all nvt 200.0 300.0 1.0
(2)run 1000
(3)run 1000
(4)...
(5)run 1000
这种写法,每运行1000步,都要重新开始,按照系综的设置从200->300K进行升温,运行的结果类似下图:

(4) run N every N1 command

共运行N步,每隔N1步执行一一次command命令,例:

(1)run 6000 every 2000 "print 'Coord = $q'"

共运行6000步,每2000步在屏幕上输出一行提示。

这个命令和下面的写法效果是一样的:
(1)variable q equal x[100]
(2)run 2000
(3)print "Coord = $q"
(4)run 2000
(5)print "Coord = $q"
(6)run 2000
(7)print "Coord = $q"
以上是run命令的简单介绍

二、restart重启计算命令用法详解

lammps提供了restart、write_restart命令保存模拟文件、read_restart命令读取模拟文件,利用好这三个命令能够最大程度地避免因断电、死机等意外造成的影响。

对于比较大的体系,驰豫时间也比较长,在模型驰豫之后保存restart文件,在后续的模拟过程中(比如不同应变速率的拉伸模拟),直接读取rstart文件进行拉伸即可,不需要再进行驰豫,提高了模拟效率。

1. 基本原理

restart、write_restart命令能够把当前模拟的信息保存到一个二进制文件中,如原子的速度、体系的温度、原子的坐标等,下一次读取这个二进制文件可以延续之前的模拟过程继续进行模拟运算。

比如在第1000步保存了restart.1000文件,在运行到第1100步时断电,重新开机之后就可以直接读取restart.1000文件继续运算,结果和正常运算几乎没有差别。

保存restart文件有两种方式:周期性保存和一次性保存

2. restart命令:周期性保存

restart命令可以每隔多少步保存一次restart文件,如每隔1000步保存一次:restart 1000 restart.equil
生成文件有:restart.equil.0、restart.equil.1000、restart.equil.2000、……

3. write_restart命令:一次性保存

周期性保存文件,产生文件较多,在能量最小化或者驰豫阶段,一般只需要在驰豫结束保存一个restart文件即可。

这时候可以在弛豫代码后面使用write_restart命令,如:write_restart restart.equil

4. read_restart命令:读取文件

重启模拟比较简单,使用方法和read_data命令类似:read_restart restart.equil
需要注意的是,并不是所有的模拟信息都保存在restart.equil文件中。

比如fix命令就需要在新的模拟文件中重新设置,官方手册已经列举的很全面,有需要可以查查手册。

分享几个LAMMPS常用命令的评论 (共 条)

分享到微博请遵守国家法律