【LAMMPS学习】五、LAMMPS命令(1) LAMMPS 输入脚本

5. 命令 

本部分描述了 LAMMPS 输入脚本的格式以及其中的命令如何用于定义 LAMMPS 模拟。主要包括以下内容。

5.1. LAMMPS 输入脚本

LAMMPS 通过从输入脚本(文本文件)读取命令来执行计算,一次一行。当输入脚本结束时,LAMMPS 退出。这与在开始计算之前读取并处理整个输入的程序不同。

每个命令都会导致 LAMMPS 立即采取某些操作,而不考虑稍后可能处理的任何命令。命令可以设置内部变量、读入文件或运行模拟。这些操作可以分为三类:

  • a、更改全局设置的命令(示例:timestep、newton、echo、log、thermo、restart),
  • b、添加、修改、删除或替换“运行”期间执行的“样式”的命令(示例:pair_style、fix、compute、dump、thermo_style、pair_modify),以及
  • c、执行“运行”或执行某些其他计算或操作的命令(示例:print、run、minimum、temper、write_dump、rerun、read_data、read_restart)

a) 类中的命令具有默认设置,这意味着如果您想更改默认设置,只需使用该命令即可。

在许多情况下,输入脚本中命令的顺序并不重要,但当 c) 类别中的命令之间的全局状态发生更改时,可能会产生后果。以下规则适用:

1、LAMMPS 不会读取整个输入脚本,然后使用所有设置执行模拟。相反,输入脚本一次读取一行,并且每个命令在读取时生效。因此这个命令序列:

timestep 0.5
run      100
run      100

执行与此序列不同的操作:

run      100
timestep 0.5
run      100

在第一种情况下,指定的时间步长 (0.5 fs) 用于两次模拟,每次模拟 100 个时间步长。在第二种情况下,默认时间步长 (1.0 fs) 用于第一个 100 步模拟,而 0.5 fs 时间步长用于第二个模拟。

2、有些命令只有在跟随其他命令时才有效。例如,在定义原子并使用组命令定义哪些原子属于该组之前,您无法设置原子组的温度。

3、有时,命令 B 会使用命令 A 可以设置的值。这意味着,如果要获得所需的效果,在输入脚本中命令 A 必须位于命令 B 之前。例如,read_data 命令通过设置模拟盒并将原子分配给处理器来初始化系统。如果不需要默认值,则需要在 read_data 之前使用处理器和边界命令来告诉 LAMMPS 如何将处理器映射到模拟框。

LAMMPS 检测到许多输入脚本错误,并打印错误或警告消息。错误页面提供了有关错误含义的更多信息。每个命令的文档列出了如何使用该命令的限制。

您可以使用 -skiprun 命令行标志让 LAMMPS 跳过任何“运行”、“最小化”或类似命令的执行,以检查整个输入的语法是否正确,以避免长时间运行时因拼写错误或语法错误而崩溃。

5.2.输入脚本的解析规则

5.3.输入脚本结构

5.4.按类别划分的命令

  • 48
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值