LAMMPS PLUMED集体变量与偏置
PLUMED集体变量与偏置,包含可提交输入、实际终端命令、数据和配图。
阅读本篇目录
本文使用鸢算科技集群 LAMMPS 30 Sep 2026 的真实计算。下载输入、参考轨迹、分析脚本与数据图(约 72.5 MB),解压后进入 lammps-examples。cases 保存参考结果,inputs 保存干净输入,使用 new-case.py 创建自己的计算副本。
要完成什么#
本例在 metal 单位的 EAM 镍中,跟踪原子 1 与 2 的距离,并在 2.5 Å 附近施加一个轻量谐和约束。PLUMED 明确设定 Å、eV、ps;LAMMPS 中先指定 timestep,再定义 fix plumed。
COLVAR 保存距离和偏置能,可先确认偏置是否作用在预期原子和单位上。这是运行集体变量与偏置接口的例子,不是已经完成自由能重建。要做伞形采样需多个窗口、充分平衡和重叠检查,再用 WHAM/MBAR 等方法处理;元动力学也需要独立检查沉积参数与重加权。
原子编号必须在你的实际结构中核对。约化 LJ 单位没有固定的物理单位映射,不要直接照抄本例 Å/eV/ps 的 PLUMED 输入到约化体系。
1 准备并提交#
python new-case.py plumed
cd work/plumed
sbatch run.sh
run.sh 是本算例匹配的核时 P100 或 V10016G 模板。套餐用户按自己的权限使用 yskit 生成提交脚本,保留下面的计算命令。完整模拟在计算节点执行。其他例子回到资料包根目录,替换目录名后分别提交。
| 目录 | 内容 |
|---|---|
plumed |
独立输入、参考输出和可重跑命令 |
2 实际计算命令与输入#
plumed#
mpirun -np 1 lmp -sf gpu -pk gpu 1 -in in.lammps > stdout.log 2>&1
下面是 plumed/in.lammps 的完整输入;其他目录的完整输入也在资料包中。
units metal
atom_style atomic
boundary p p p
lattice fcc 3.52
region box block 0 8 0 8 0 8
create_box 1 box
create_atoms 1 box
mass 1 58.6934
pair_style eam
pair_coeff * * Ni_u3.eam
neighbor 0.3 bin
neigh_modify every 1 delay 0 check yes
thermo 100
thermo_style custom step time atoms temp pe ke etotal press vol density
thermo_modify norm no format float %.12g
timestep 0.001
velocity all create 300 927451 mom yes rot yes dist gaussian
fix int all nvt temp 300 300 .1
fix bias all plumed plumedfile plumed.dat outfile plumed.log
dump tr all custom 100 trajectory.lammpstrj id type x y z vx vy vz
dump_modify tr sort id
run 4000
write_data final.data
plumed.dat:
UNITS LENGTH=A ENERGY=eV TIME=ps
d: DISTANCE ATOMS=1,2
r: RESTRAINT ARG=d AT=2.5 KAPPA=0.1
PRINT ARG=d,r.bias STRIDE=10 FILE=COLVAR
3 查看输出与实际数据#
tail -n 30 stdout.log
ls -lh
stdout.log 是计算输出;轨迹保存在 trajectory.lammpstrj(适用的算例),结构保存在 final.data。静态扫描和 run 0 对照不一定生成动力学轨迹。以下动态均值取最后一个热力学输出块的后半段;静态结果取对应输出,单位随输入确定。
| 算例 | 原子数 | 平均温度 | 平均密度 | 最后势能 |
|---|---|---|---|---|
plumed |
2048 | 300.278 | 8.94115 | -9033.06115 |
LJ/珠簧例子使用约化单位;metal 为 K、g/cm³、eV;水的 real 单位为 K、g/cm³、kcal/mol。势能列是整个体系的总量,跨不同原子数不可直接相比。

4 提取数据与重画#
回到附件根目录,使用已经安装的 ASE Python 环境执行真实数据分析脚本:
module load ase/3.29.0
python analyze.py --root .
ls analysis
ls figures
脚本使用 NumPy/Matplotlib,读取参考日志、轨迹和相关函数,生成 CSV 与 PNG。查看 analyze.py 中本篇对应目录的处理段,可以把路径换成你的新结果。完整脚本按本专题的全部参考目录组织,单个新算例不需要假造其他目录来运行;提取对应段即可。