xTB 局域轨道与静电势:水分子操作实例
从优化结构生成LMO中心、Molden轨道与ESP表面数据,说明坐标和单位。
阅读本篇目录
下载输入、参考输出、CSV与画图程序,保存为example.zip:
python3 -m zipfile -e example.zip .
cd xtb-properties-examples
bash results.sh
bash plot.sh
图片生成在figures目录,实际计算的原始文本在reference-results。环境为xtb/6.7.1,官方Intel版、固定提交edcfbbe;每个例子单线程,无需GPU。下文的xtb命令展示实际计算步骤,集群提交时使用配套sbatch job.slurm 算例名;不要在登录终端长时间占用资源。每次重算使用新目录,避免旧文件混入。
1. 先准备并优化结构#
XYZ第二行是注释,坐标单位Å。示例的初始结构为:
3
Water
O 0.05291772109030 0.10583544218060 0.15875316327090
H 0.81682432412487 0.28469910273760 -0.38959556953728
H -0.14865865300789 0.94592297669472 0.57088389466498
module load xtb/6.7.1
sbatch job.slurm water-opt
该任务的核心命令为:
xtb input.xyz --gfn 2 --opt tight --acc .01 --json --parallel 1
得到xtbopt.xyz后,后面的性质应使用优化结构。下载包中各个inputs/water-*目录已放入相同的优化后结构,不必每算一项就重新优化。
2. 生成局域轨道中心#
sbatch job.slurm water-lmo
实际命令:
xtb input.xyz --gfn 2 --lmo --molden --json --parallel 1
cat lmocent.coord
cat xtblmoinfo
结果有4个占据局域轨道:2个O–H的σ轨道、2个孤对电子轨道。molden.input用于支持Molden格式的轨道可视化软件;lmocent.coord里的坐标默认是Bohr,换成Å乘以0.529177210903。文件中前3个点是真实原子,后4个标为He的点是局域轨道中心的占位标记,不能当成氦原子用于下一步能量计算。
本版本终端表格中孤对电子的打印位置用于质子化方向提示,会沿氧原子到原始中心的方向放大3.2倍。要画实际中心,请读lmocent.coord或xtblmoinfo,不要直接复制终端中的孤对电子位置。σ中心没有这一放大。
3. 生成ESP采样点#
sbatch job.slurm water-esp
核心命令与输出:
xtb input.xyz --gfn 2 --esp --json --parallel 1
head xtb_esp.dat
xtb_esp.dat每行依次是x、y、z和静电势,坐标Bohr、静电势原子单位。它是程序生成的表面采样点,不是规则三维Cube网格;不能只改后缀就按Cube读取。参考数据同时包含正、负静电势,可用附带程序按颜色显示。

4. 如何换自己的分子#
先确认电荷与未成对电子数,再优化、做性质。离子加--chrg,开壳层加--uhf。不同分子的电势比较要采用相同方法、表面定义和色标;颜色深浅不直接等于反应速率。参考官方性质输出说明。