这是我从零开始学习LAMMPS的个人笔记,主要用于自我回顾。如果你觉得这些内容对你有帮助,欢迎参考。如果有任何错误或需要改进的地方,也请不吝赐教~由于本人没有自装Lammps,用的远程超算提交模式,这里可能会与个人操作有一些不同。下面开始:
【三个文件:in文件、eam势文件、任务提交文件】
1 Input 文件:
是一个包含模拟参数和设置的文本文件。这个文件告诉模拟程序如何进行模拟,包括但不限于以下内容:
-
初始化设置:定义模拟盒子的大小和形状、原子类型、初始位置和速度等。
-
力场参数:指定原子间相互作用的势函数,如EAM势、Lennard-Jones势等,以及这些势函数的参数。
-
运行控制:设置模拟的时间步长、总步数、温度和压力控制参数、输出频率等。
-
边界条件:定义模拟的边界类型,如周期性边界、固定边界等。
-
原子定义:指定模拟中包含的原子类型和它们的属性。
-
计算设置:定义需要计算的物理量,如能量、压力、温度等,以及它们的输出格式。
-
特殊操作:如热化过程、退火过程、温度和压力的控制方法等。
-
后处理指令:有时input文件中也会包含一些后处理指令,用于模拟结束后对数据进行处理。
例如:
# This is a comment line
units metal # 设置单位
atom_style atomic # 设置原子样式
boundary p p p # 设置周期性边界条件
read_data data.file # 读取初始原子配置文件
pair_style eam/alloy # 设置EAM势函数
pair_coeff * * CuNi.eam/alloy Cu Ni # 指定EAM势函数的参数
neighbor 2.0 bin # 设置邻居列表的更新频率和方法
neigh_modify every 10 delay 0 check yes # 进一步设置邻居列表
timestep 0.001 # 设置时间步长
thermo 100 # 设置输出信息的频率
thermo_style custom step temp pe ke etotal # 设置输出信息的内容
# 运行模拟
run 10000
如果同样是新手的话,计算内容最好从简单的开始,多看看网上的案例。
2 Potential 文件:
EAM文件,全称为Embedded Atom Method(嵌入原子法)势函数文件,是用于描述金属体系中原子间相互作用的一种势函数。EAM势函数考虑了金属中电子的密度对原子能量的影响,因此比简单的两体势函数(如Lennard-Jones势)能更精确地描述金属原子间的相互作用。EAM文件通常以“.eam”为后缀,包含了用于计算EAM势函数所需的所有参数和函数,如嵌入函数、配对势函数和电子密度函数。这些函数通常以表格的形式给出,包含了在一定范围内的预设值,用于在模拟过程中计算原子间的作用力和能量。
如何获取EAM?参考:
分享几个查找势函数的网站以及查找晶格常数的网站/软件_势函数网站-CSDN博客
(我本人用的是脚本生成的方法,这里不提供具体的脚本了,有需要的可以联系我~)
脚本生成EAM流程:
1. 将脚本文件保存到C盘:
2. 打开Anaconda Powershell Prompt,输入命令:
python create_eam.py -n Cu Ni -nr 2500 -nrho 2500
-n
:这个参数后面跟的是你想要生成EAM势函数的元素名称。在这个例子中,Cu Ni
表示你想要为铜(Cu)和镍(Ni)这两种元素生成EAM势函数。
-nr
:这个参数指定了径向基函数的点数。
2500
:这是-nr
参数的值,如上所述,表示径向基函数的点数。在这个例子中,2500
表示在生成势函数时,将使用2500个点来描述径向基函数。径向基函数是EAM势函数中用来描述原子间相互作用的函数,更多的点可以提供更精确的描述,但同时也会增加计算的复杂度。
-nrho
:这个参数指定了密度网格的点数。在这个例子中,2500
表示在生成势函数时,将使用2500个点来描述密度网格。密度网格是EAM势函数中用来计算电子密度的网格,更多的点可以提供更精确的电子密度计算,但同样会增加计算的复杂度。
运行结束后,在C盘中得到如下文件,说明成功生成:
3 脚本文件:
脚本文件命名可以询问自己课题组的成员,具体内容可以参考:
#!/bin/bash
#SBATCH -n 128
#SBATCH -N 2
#SBATCH -p 64cores
module load LAMMPS/23Jun2022
###module load LAMMPS/29Sep2021-avx2
mpirun lmp < xxx.in >lmp.out 2>lmp.err
这里“xxx.in”对应input文件的文件名,每次提交前都需要改成本次要提交的任务名称,否则会提示找不到文件。
4 任务提交:
sbatch 脚本文件名
5 结语:
这里主要给出的是Lammps准备文件以及超算提交流程,后面会结合具体案例进行讲解。
标签:文件,EAM,设置,Lammps,初学,提交,2500,模拟,势函数 From: https://blog.csdn.net/weixin_50519490/article/details/143423640