SIESTA专题

SIESTA分子动力学:从优化结构到NVE与Nose轨迹

用孤立水分子实算说明结构准备、短程NVE与Nose输入、作业提交,以及温度和能量数据的提取。

更新于 2026-11-05约 4 分钟阅读按任务与环境选择适用配置
阅读本篇目录

本例先优化一个水分子,再从同一份优化坐标分别开始NVE和Nose计算。重点是学会准备输入、运行和检查数据。每条轨迹只有5fs,不能用来报告平衡温度、扩散系数或收敛热力学性质。

1. 下载并提交#

下载水分子实操包

unzip siesta-water-wave201.zip -d water-md
cd water-md
sbatch job.slurm

模板使用CPU分区;提交前用sinfo确认该分区可用。程序先完成优化,再生成后续输入,最多并发4组、每组2个MPI进程和1线程。环境为SIESTA5.4.2、Intel oneAPI2024.2、Intel MPI2021.13、MKL顺序LP64,配套sisl0.16.4读取结构与画图。

squeue -u "$USER"
ls cases
ls analysis figures

2. 先优化结构#

用12Å立方盒容纳一个水分子,采用PBE、DZP、150Ry网格和Gamma采样。坐标前三列用小数,末列1/2是O/H物种编号。

NumberOfAtoms 3
NumberOfSpecies 2
LatticeConstant 1 Ang
%block ChemicalSpeciesLabel
1 8 O
2 1 H
%endblock ChemicalSpeciesLabel
%block LatticeVectors
12.0 0.0 0.0
0.0 12.0 0.0
0.0 0.0 12.0
%endblock LatticeVectors
AtomicCoordinatesFormat Ang
%block AtomicCoordinatesAndAtomicSpecies
6.000 6.000 6.000 1
6.757 6.000 6.586 2
5.243 6.000 6.586 2
%endblock AtomicCoordinatesAndAtomicSpecies
XC.functional GGA
XC.authors PBE
PAO.BasisSize DZP
PAO.EnergyShift 100 meV
MeshCutoff 150 Ry
%block kgrid_Monkhorst_Pack
1 0 0 0
0 1 0 0
0 0 1 0
%endblock kgrid_Monkhorst_Pack
SCF.DM.Converge true
SCF.DM.Tolerance 1.e-5
SCF.FreeE.Converge true
SCF.FreeE.Tolerance 1.e-6 eV
MD.TypeOfRun CG
MD.NumCGsteps 100
MD.MaxForceTol 0.01 eV/Ang
MD.VariableCell false

优化只移动原子,12Å晶胞保持固定。程序读取优化后的h2o.XV生成动力学坐标,不会继续使用最初的未优化位置。本例同时检查原子力向量模小于0.02eV/Å。

优化水分子

cat cases/water-opt/h2o.FA
cat analysis/GEOMETRY.json

3. NVE:先选时间步长,再运行#

保留前面的结构、赝势、基组与电子收敛参数,将运行部分换成:

MD.TypeOfRun Verlet
MD.InitialTimeStep 1
MD.FinalTimeStep 20
MD.LengthTimeStep 0.25 fs
MD.InitialTemperature 300 K
WriteMDHistory true
MD.UseSaveXV false

另一个对照用0.5fs、10步;两者时长都是5fs,便于观察时间步长对能量变化的影响。MD.InitialTemperature设置初速度,不是持续温控。此版本原生初速度采用固定种子,重复本例可得到相同初始轨迹。

head cases/nve025/h2o.MDE
head cases/nve050/h2o.MDE

MDE依次是步数、温度、电子能量、总能量、体积和压力。NVE应关注包含离子动能的总能量,不能只用电子能量判断守恒。

4. Nose:设置目标温度和热浴质量#

MD.TypeOfRun Nose
MD.InitialTimeStep 1
MD.FinalTimeStep 20
MD.LengthTimeStep 0.25 fs
MD.InitialTemperature 300 K
MD.TargetTemperature 300 K
MD.NoseMass 100 Ry*fs**2

质量单位写成一个连续标记Ry*fs**2。热浴参数影响温控的时间尺度;5fs不足以声称达到目标温度或获得正确温度分布。Nose控制下也不能套用NVE的裸体系能量守恒判据。

5. 提取数据和图片#

cat analysis/cases.csv
head analysis/nve025.csv
head analysis/nose025.csv
ls figures

CSV提供时间、温度、电子能量与总能量;water-short-md.png比较三条轨迹。程序还生成水分子力常数,具体流程见分子振动教程。

短程温度与总能量变化

轨迹 总时长 总能量最大变化(meV) 温度范围(K)
nve025 5fs 0.180 209.68–300.00
nve050 5fs 0.760 211.20–300.00
nose025 5fs 0.180 209.69–300.00

本例只改变两种NVE步长,并演示一种Nose设置。实际研究需要进一步检验基组、网格、盒长、时间步长、平衡时长和采样长度;这些短程结果不代替上述收敛检查。

需要根据你的体系选择资源?联系讨论计算需求。实际可用软件与权限,以当前账户和运行环境为准。

查看配图

放大后可滚动查看细节,按 Esc 关闭。

100%查看原图 ↗