lammps已跑完,不想重跑,如何补充新的计算?
大家好,我是小马老师。
本文介绍rerun命令的用法。
lammps模拟中,可能会遇到这样的情况:把lammps in文件提交到服务器运行完成后,发现少算了一个数据(如rdf),重新写代码提交,费时费力。
lammps提供了一个命令可以解决此类问题:rerun。
rerun可以理解为重新运算,但是这个运算并不会和run命令一样,从头开始运算,而是从run运算的结果中提取原子信息,如坐标、速度等,以此进行能量、力以及热力学的输出等。
该命令的优点是不需要重新积分运算,不影响原来的运行结果,仅提取需要的信息进行部分运算,运算速度快。
下面以补充计算rdf为例,介绍rerun的使用方法。
(1)in.first
in.first文件模拟了一个溶液体系的原子演化过程,运行1000步,轨迹文件保存到lj.dump文件中。
这个in文件没有进行rdf的计算。
in文件代码:
#in.first
variable x index 1
variable y index 1
variable z index 1
variable xx equal 20*$x
variable yy equal 20*$y
variable zz equal 20*$z
units lj
atom_style atomic
lattice fcc 0.8442
region box block 0 ${xx} 0 ${yy} 0 ${zz}
create_box 1 box
create_atoms 1 box
mass 1 1.0
velocity all create 1.44 87287 loop geom
pair_style lj/cut 2.5
pair_coeff 1 1 1.0 1.0 2.5
neighbor 0.3 bin
neigh_modify delay 0 every 20 check no
fix 1 all nve
dump 1 all custom 100 lj.dump id type x y z vx vy vz
thermo 100
run 1000
(2)in.rdf
在lj.dump文件的基础上补充rdf的运算,首先把rdf命令写到in文件,把最后一句的run语句改成rerun语句:
compute myRDF all rdf 100 cutoff 5.0
fix 2 all ave/time 100 10 1000 c_myRDF[*] file rdf.rerun mode vector
rerun lj.dump dump x y z
rerun后面紧跟dump文件名,之后是需要提取的原子坐标。
这样重启动一个“运算”就可以把rdf计算出来。
in文件代码:
#in.rdf
variable x index 1
variable y index 1
variable z index 1
variable xx equal 20*$x
variable yy equal 20*$y
variable zz equal 20*$z
units lj
atom_style atomic
lattice fcc 0.8442
region box block 0 ${xx} 0 ${yy} 0 ${zz}
create_box 1 box
create_atoms 1 box
mass 1 1.0
pair_style lj/cut 5.0
pair_coeff 1 1 1.0 1.0
neighbor 0.3 bin
thermo 100
compute myRDF all rdf 100 cutoff 5.0
fix 2 all ave/time 100 10 1000 c_myRDF[*] file rdf.rerun mode vector
rerun lj.dump dump x y z
为了方便大家理解这个命令,我选了最简单了一个例子,rerun还有很多高级用法,具体可以查看官网手册介绍,以及read_dump命令。
公众号:lammps加油站
lammps已跑完,不想重跑,如何补充新的计算?相关推荐
- python怎么跑数据_python定时重跑获取数据
做大数据的童鞋经常会写定时任务跑数据,由于任务之间的依赖(一般都是下游依赖上游的数据产出),所以经常会导致数据获取失败,因为很多人发现数据失败后 都会去查看日志,然后手动去执行自己的任务.下面我实现了 ...
- 调度系统批量重跑任务的思考
在调度系统中总会遇到这种场景,上游任务出现数据问题,数据缺失,数据重复.这些问题出现的原因有很多,比如上游业务问题,升级某一调度组件测试覆盖不全面,代码bug等. 出现问题的原因,问题的修复,系统针对 ...
- 任务调度系统--重跑和断点续跑
理论上,重试与重跑效果是一样的.但是重试是程序自动的,而重跑是人工手动干预的. 当一个任务的某一次调度在重试了3次之后,仍然失败,那么这个任务的这一次调度就认为是失败的,当运维人员发现有失败的情况,登 ...
- web高德地图怎么加载离线地图_春节变胖了?高德地图隐藏的实用跑步功能 想怎么跑都随你...
春节期间,好吃的太多,胡吃海塞管不住嘴,一不小心就会变胖.面对我们变粗的腰围.腿围,春节过后抓紧时间跑步减肥,实在是太有必要了. 可是怎么跑圈最合理呢?这时候,高德地图的跑步功能"周边跑步路 ...
- 最重要的是跑完,而不是刚开始跑得有多快
到目前为止,你总共在自己本来有兴趣学的事情上对自己说过多少次"唉,我看我没有天分,还是算了吧"的话呢? 这句话通常被用来当作宣告某一段努力完全失败的休止符,也常被用来把某一扇门关上 ...
- G1D33-BTG复现重跑实验
一.复现BTG 复现很简单,所以就记录一些乱七八糟的叭 (一)传参 传是否使用cuda的参数的时候,发现传True会报错,后来查到链接 https://stackoverflow.com/questi ...
- TestNG监听器实现失败自动截图、重跑、自定义html结果文件功能
本文转载自孔庆云kevin<TestNG监听器实现失败自动截图.重跑.自定义html结果文件功能> 使用Testng框架搭建自动测试框架,经常会需要增加失败自动截图,以及失败重跑功能,下面 ...
- 为什么跑完步了膝盖会疼痛?
为什么跑完步了膝盖会疼痛? http://www.360doc.com/content/15/0517/17/7300976_471255602.shtml 2015-05-17 yuxh91128 ...
- 测试用例出错重跑--flaky插件
2019独角兽企业重金招聘Python工程师标准>>> 自动化测试的时候,经常会遇到这样的问题:大部分时候执行测试用例都能pass,只是偶然出现false,而出现false的时候是因 ...
最新文章
- 统一同一物理主机上VMware虚拟出的不同操作系统如何通信
- ubuntu eclipse CDT 问题
- python使用笔记:sys.argv[]的使用
- 鼠标点击触发事件python_如何在鼠标按下的情况下触发tkinter的“Enter”事件?...
- shell脚本--字符串处理和动态数组
- 017_layout排版
- Spring是如何利用“三级缓存“巧妙解决Bean的循环依赖问题
- 最新版Scrum指南已发布
- free,ps,抓包,网络状态
- cups支持的打印机列表_在Mac上怎样更新打印机软件?
- ❤️《Vue前端基础框架集合从入门到高级》(小白也可学,建议收藏)❤️
- HTML学习总结(1)——HTML基本介绍
- react-native学习小结
- 华硕服务器主板型号命名规则,华硕ROG系列主板命名规则详解_华硕 Maximus V Formula_主板评测-中关村在线...
- instagram 和不联网
- 搭建自己的服务器并且上传文件到自己的服务器上
- MATLAB灰度图像缩小实验
- 流行QQ在线客服代码
- 游戏测试内存泄露相关方案
- nvidia jetson nano 操作指南