【LAMMPS翻译系列】newton命令
newton命令用来开启或关闭对势或键相互作用中的第三运动定律。
使用语法
newton flag newton flag1 flag2
- flag: 开关对势和键相互作用[on/off]
- flag1:开关对势相互作用[on/off]
- flag2:开关键相互作用[on/off]
使用举例
newton off newton on off
使用介绍
该命令用来开启或关闭对势或键相互作用中的第三运动定律。对于大多数问题而言,将牛顿第三定律设置为开启是一种可以节省2倍及以上计算量的做法。具体到是否会更快,则取决于问题的规模、力截断长度、机器的计算/交换比、以及所使用的处理器数量。
将对势相互作用的flag设置为off,那么如果相互作用的两个原子在不同的处理器上,两个处理器都会计算它们的相互作用,所得的关于力的结果信息也不会进行通信。类似的,对于键相互作用,将flag设置为off,那么如果键、角、二面角或不合适的相互作用在2个或更多的处理器上,这些相互作用会被每个处理器分别计算。
但不论将newton命令的flag设置成什么,LAMMPS计算出来的结果都是一样的,除了一些舍入误差之外。
对于run_style respa,如果最内层时间步只计算键相互作用,那么将键相互作用的newton设置为off可以避免内层循环的外部外部通信,从而可能会变得更快。[译注:建议参考原文]
使用限制
模拟盒子定义(命令read_data或create_box)以后,newton键设置就不能再改变了。
相关命令
run_style respa
默认设置
newton on