Multiwfn专题

Multiwfn:Becke模糊空间积分与原子电荷

对水分子的总电子密度进行原生空间积分,核对电子守恒和电荷,配合结构图解释结果。

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

下载Multiwfn轨道与分子性质示例包,保存为example.zip:

python3 -m zipfile -e example.zip .
cd multiwfn-orbital-property-examples
bash results.sh
bash read.sh
bash plot.sh

本例使用集群Multiwfn2026.10.18 noGUI,程序自带预编译CPU二进制;水和乙烯波函数来自实际Gaussian16C.01的B3LYP/6-31+G(d)计算,输入与数值波函数随包提供。这里复用已有波函数,不需要重新做Gaussian计算。完整重算13个短后处理条件可用sbatch run.slurm,结束后bash read.sh work analysis-new读取新结果,bash plot.sh analysis-new figures-new绘图。CPU模板按规则申请56核,程序每次只用1线程;这不是56核性能测试。

手动交互的程序路径为:

source /etc/profile.d/lmod.sh
module load multiwfn_nogui/2026.10.18
multiwfn_bin=/public/software/multiwfn_nogui/2026.10.18/Multiwfn_noGUI

下面列出的交互数字对应这个版本,换版本时先看屏幕上的菜单文字。批量运行时给每个任务独立工作目录,避免new.fch等同名输出互相覆盖。

1. 将总电子密度分配到原子空间#

Becke模糊空间分区以平滑权重划分整个空间,对电子密度积分得到原子电子数。它和轨道成分分析不同:这里积分的是总电子密度,而非单个MO的贡献百分比。

"$multiwfn_bin" inputs/water.fchk -nt 1

实际交互:

15
1
1
0
q

15进入模糊原子空间分析,1计算实空间函数积分,接着1选择电子密度,0返回主菜单后退出。采用当前版本默认的Becke分区与积分设置;换版本或更复杂体系时应检查屏幕显示的函数和网格。

2. 从电子数得到电荷#

q_A = Z_A − N_A。本例结果:

原子 积分电子数 电荷/e
O 8.65924479 −0.65924479
H2 0.67037732 +0.32962268
H3 0.67037732 +0.32962268

水分子Becke积分和电荷

总电子数为9.99999944,接近输入的10;总电荷接近0,两个等价H一致。这个检查比仅看到“程序退出”更有帮助。正式分析还要检查网格、分区方法和输入波函数质量。

3. 保存日志与读取表格#

mkdir Becke-density
cd Becke-density
"$multiwfn_bin" ../inputs/water.fchk -nt 1 < ../commands/water-Becke-density.txt > density.log
# 返回示例根目录
cd ..
cat data/Becke-electrons-charges.csv

完整提交脚本会在独立工作目录执行这组命令。bash read.sh work analysis-new会重新读取程序输出、合计原子电子数和总电荷。不要将Becke电荷直接当作氧化态,也不要和Mulliken、Hirshfeld、Bader电荷混用来比较趋势。不同分区定义反映不同的电子归属约定。

电子数与电荷CSV可以自行画柱状图,示例的plot.py也包含完整结构标注。

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

查看配图

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

100%查看原图 ↗