【LAMMPS学习】八、基本知识的讨论(1.3)从一个输入脚本运行多个模拟
8. 基本知识的讨论
此部分描述了如何使用 LAMMPS 为用户和开发人员执行各种任务。术语表页面还列出了 MD 术语,以及相应 LAMMPS 手册页的链接。 LAMMPS 源代码分发的 examples
目录中包含的示例输入脚本以及示例脚本页面上突出显示的示例输入脚本还展示了如何设置和运行各种模拟。
8.1.通用基础知识
8.1.1.重新启动模拟
8.1.2.可视化 LAMMPS 快照
8.1.3.从一个输入脚本运行多个模拟
这可以通过多种方式来完成。有关这些示例如何工作的更多详细信息,请参阅各个命令的文档。
如果“多次模拟”意味着继续先前的模拟更多时间步长,那么您只需多次使用运行命令即可。例如,这个脚本
units lj
atom_style atomic
read_data data.lj
run 10000
run 10000
run 10000
run 10000
run 10000
将对同一系统运行 5 次连续模拟,总共 50,000 个时间步长。
如果您希望一个接一个地运行完全不同的模拟,可以在它们之间使用clear命令来重新初始化LAMMPS。例如,这个脚本
units lj
atom_style atomic
read_data data.lj
run 10000
clear
units lj
atom_style atomic
read_data data.lj.new
run 10000
将运行 2 个独立的模拟,一个接着一个。
对于大量独立模拟,您可以使用变量以及 next 和 jump 命令以不同的设置多次循环相同的输入脚本。例如,此脚本名为 in.polymer
variable d index run1 run2 run3 run4 run5 run6 run7 run8
shell cd $d
read_data data.polymer
run 10000
shell cd ..
clear
next d
jump in.polymer
将在不同的目录中运行 8 个模拟,每个目录中使用一个 data.polymer 文件。例如,可以使用相同的概念在 8 个不同的温度下运行相同的系统,使用温度变量并将输出存储在不同的日志和转储文件中.
ariable a loop 8
variable t index 0.8 0.85 0.9 0.95 1.0 1.05 1.1 1.15
log log.$a
read data.polymer
velocity all create $t 352839
fix 1 all nvt $t $t 100.0
dump 1 all atom 1000 dump.$a
run 100000
clear
next t
next a
jump in.polymer
无论您是在 1 个还是多个处理器上运行,上述所有示例都有效,但假设您在单个处理器分区上运行 LAMMPS。 LAMMPS 可以通过 -partition 命令行开关在多个分区上运行。
在最后 2 个示例中,如果 LAMMPS 在 3 个分区上运行,则如果将“index”和“loop”变量替换为 Universe 样式变量,则可以使用相同的脚本,如变量命令中所述。此外,“next t”和“next a”命令需要替换为单个“next a t”命令。通过这些修改,每个脚本的 8 次模拟将在 3 个分区上依次运行,直到全部完成。最初,将同时启动 3 个模拟,每个分区一个。当一个完成后,该分区将开始第四次模拟,依此类推,直到所有 8 个模拟完成。
原文地址:https://blog.csdn.net/monian000/article/details/137458546
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!