跳转至

30. DFT 能算的物性完全指南(输出侧)

本篇定位

前面 00–22 把 DFT 作为数值求解器讲完了:12 步化简把 3N 维多体问题压成 QE 能跑的矩阵特征值循环。跑通之后 QE 输出一堆数字——哪些数字有物理意义?能对比实验的是哪些?DFT 算不准的又是哪些?

本篇是 DFT 的"输出物性百科"。按物理范畴分 8 组,每组给出:

  • 定义 — 物理学教科书定义
  • DFT 怎么算 — 用化简链里的哪些输出 + 后处理
  • QE 命令 / 字段 — 触发它的输入参数,输出文件
  • benchmark 关联 — 在 DFTBench questions/ 里对应哪个模板,compare.py 里有无评分字段
  • 典型值 — 让 ML 背景读者对数值尺度有直觉
  • 常见坑 / DFT 局限哪些物性 DFT 系统性算不准,为什么
  • ML 类比(如适用)

本篇和 benchmark 设计直接相关:benchmark 的"可评分物性"取决于 DFT 本身的精度上限。带隙低估 30% 是 PBE 的内禀属性,不是 bug;把 band_gap 纳入严格评分就要接受这个系统偏差或切换到 HSE06。


组 0:单位速查

物性 QE 内部单位 常用单位 换算
能量 Ry(里德伯) eV 1 Ry = 13.6057 eV
长度 bohr Å 1 bohr = 0.5292 Å
Ry/bohr eV/Å 1 Ry/bohr = 25.71 eV/Å
压强 / 应力 Ry/bohr³ kbar / GPa 1 Ry/bohr³ = 14710 kbar;1 GPa = 10 kbar
频率(声子) cm⁻¹ 或 THz meV 1 THz ≈ 4.14 meV ≈ 33.36 cm⁻¹
磁矩 μ_B(玻尔磁子)

配方单元 (formula unit, f.u.):一个化学式对应的原子组。如 Si₂(金刚石原胞含 2 个 Si 原子)= 1 f.u.;NaCl 原胞含 1 个 Na + 1 个 Cl = 1 f.u.。benchmark 的 total_energy_ev_per_fu 需要把 QE 输出的总能量除以原胞内 f.u. 数。


组 1:结构与能量(vc-relax / scf 直接输出)

这是 DFTBench 绝大多数任务的直接评分对象,也是 DFT 算得最准的一组物性。

1.1 总能量 / total energy (E)

  • 定义:KS 基态的总能量 \(E[\rho_0] = T_s + V_{ext}\cdot\rho + E_H + E_{xc} + E_{nuc-nuc}\)
  • DFT 怎么算:SCF 收敛后直接输出(化简 11 的产物)
  • QE 字段calculation='scf' 或任何含 SCF 的流程;输出里 grep
    !    total energy              =    -15.84528512 Ry
    
  • benchmark 关联questions/scf_energy.json;评分字段 total_energy_ev_per_fu
  • 典型值:绝对值没有物理意义——它相对"裸核+无穷远电子"的参考态,数字跟赝势选择强相关。只有能量差才是物理量
  • Si(金刚石,2 原子/原胞):~ −15.8 Ry ≈ −215 eV
  • NaCl(2 原子/原胞):~ −130 Ry
  • 差一个赝势库就能差几百 eV——所以 benchmark 对绝对总能量比较时必须所有计算用同一赝势
  • 常见坑
  • 不同赝势/泛函算的总能量不可比较
  • 单位混淆:QE 输出 Ry,benchmark 要 eV
  • 忘了除 f.u. 数(原胞内有几个化学式)
  • ML 类比:总能量像神经网络的 loss,单独看没意义,要看差值(ΔE = loss 下降)

1.2 形成能 / formation energy (E_f)

  • 定义\(E_f = E(\text{化合物}) - \sum_i n_i E(\text{单质}_i)\);衡量化合物相对于元素单质的热力学稳定性
  • DFT 怎么算:算化合物 + 所有组分单质的总能量,相减除以原子数
  • QE 字段:多个独立 SCF 计算 + 后处理
  • benchmark 关联:当前 DFTBench 不评形成能
  • 典型值(每原子):
  • 稳定化合物 −1 到 −5 eV/atom(SiO₂ ≈ −3.1 eV/atom)
  • 亚稳相 0 到 −0.5 eV/atom
  • 不稳定(分解)> 0 eV/atom
  • 常见坑:单质参考态要选对(Fe 要用 bcc 铁磁态;O₂ 是三重态,自旋极化必须开)
  • Materials Project 的 "energy above hull":更严格的稳定性判据——不仅比单质,还比所有可能的分解组合

1.3 弛豫结构 / relaxed structure

  • 定义:BFGS 外层优化到力/应力收敛的晶格参数 (a, b, c, α, β, γ) 和原子分数坐标
  • DFT 怎么算:化简 12(见 22-bfgs-relax.md
  • QE 字段calculation='vc-relax';输出 CELL_PARAMETERSATOMIC_POSITIONS
  • benchmark 关联DFTBench 评分的核心
  • questions/vc_relax*.json
  • compare.pya, b, c, α, β, γ(relative error)+ space_group*, point_group, crystal_system(exact match)
  • 典型精度:PBE 晶格常数 vs 实验
  • 平均误差 +1% 到 +2%(PBE 普遍高估
  • LDA −1% 到 −2%(普遍低估
  • PBEsol(专为固体调优的 GGA)误差 <0.5%
  • SCAN(meta-GGA)< 0.3% 但 2-3 倍贵
  • 常见坑 / DFT 局限
  • 范德华(vdW)材料(石墨层间、MoS₂)普通 PBE 根本绑不住 → 层间距严重高估,需要 DFT+D3 色散修正
  • 弱氢键体系(冰、DNA)同上
  • 磁性体系未开 nspin=2 → 结构错
  • ML 类比:相对误差 1% 像一个训练很好的回归模型的 MAPE

1.4 体模量 / bulk modulus (B)

  • 定义\(B = -V \partial P / \partial V = V \partial^2 E / \partial V^2\),描述材料抗体积压缩能力
  • DFT 怎么算:在平衡体积附近取 5-7 个不同体积,做 SCF,拟合 Birch-Murnaghan 方程态: $\(E(V) = E_0 + \frac{9V_0 B_0}{16}\left\{[(V_0/V)^{2/3}-1]^3 B_0' + [(V_0/V)^{2/3}-1]^2 [6-4(V_0/V)^{2/3}]\right\}\)$
  • QE 字段:手动脚本(或用 ev.x 后处理);需要一组 vc-relax 固定体积
  • benchmark 关联:DFTBench 暂无
  • 典型值(GPa):
  • 金刚石 C:440(最硬之一)
  • Si:98
  • Al:76
  • Cu:140
  • NaCl:25
  • 橡胶等软材料:<1
  • DFT 局限:PBE 通常低估 B 约 5-10%(因为它高估晶格)

1.5 弹性常数矩阵 / elastic constants (Cᵢⱼ)

  • 定义:应力-应变关系 \(\sigma_i = C_{ij}\epsilon_j\) 的 6×6 矩阵(Voigt 记号),各向异性体模量、剪切模量、杨氏模量都由它导出
  • DFT 怎么算:对晶胞施加 6 种不同应变(εxx, εyy, εzz, εyz, εxz, εxy),每个应变下做 relax(只动原子)并读应力
  • QE 字段thermo_pw.x(QE 配套工具)或手动脚本
  • benchmark 关联:DFTBench 暂无
  • 典型值(GPa):立方晶 C₁₁(对角硬度)200-1000;C₁₂(横向耦合)通常更小
  • DFT 局限:同晶格常数问题传递——晶格错 1% 对应 Cᵢⱼ 错 3-5%

1.6 应力张量 / stress tensor (σᵢⱼ)

  • 定义:单位体积内的晶格梯度 \(\sigma_{ij} = -\frac{1}{V}\partial E/\partial \epsilon_{ij}\);3×3 对称矩阵
  • DFT 怎么算:SCF 收敛后由 Hellmann-Feynman + Nielsen-Martin 公式直接得
  • QE 字段tstress=.true.(vc-relax 自动开);输出
    total   stress  (Ry/bohr**3)                   (kbar)     P=    0.32
       0.00000218   0.00000000   0.00000000          0.32       0.00       0.00
       ...
    
  • benchmark 关联press_conv_thr 是 vc-relax 收敛判据;间接影响晶格评分
  • 典型值:0 压目标 = 0 kbar;地球深处 ~ 10⁶ kbar = 100 GPa
  • 常见坑:QE 的压强精度内禀 ~1 kbar(来自 ecutrho / 泛函),设 press_conv_thr=0.01 纯属浪费(见 22-bfgs-relax.md

1.7 力 / forces

  • 定义\(\vec{F}_I = -\partial E / \partial \vec{R}_I\)
  • DFT 怎么算:Hellmann-Feynman 定理(见 22-bfgs-relax.md §3.1)
  • QE 字段tprnfor=.true.(scf/relax 默认开);输出 Forces acting on atoms ...
  • benchmark 关联forc_conv_thr 是 relax/vc-relax 收敛判据
  • 单位坑:Ry/bohr ≠ eV/Å

组 2:电子结构(scf / nscf / bands / dos)

这是 DFT 的"看家本领",也是精度问题最大的一组——band_gap 是 DFT 最著名的系统性低估。

2.1 带隙 / band gap (E_g)

  • 定义:价带顶 (VBM) 到导带底 (CBM) 的能量差
  • 直接带隙:VBM 和 CBM 在同一 k 点(如 GaAs 在 Γ)→ 光吸收效率高,LED 材料
  • 间接带隙:VBM 和 CBM 在不同 k 点(如 Si,VBM 在 Γ,CBM 在 X 附近)→ 光吸收需声子参与,太阳能电池
  • DFT 怎么算
  • SCF 得电子密度
  • NSCF(非自洽)在稠密 k 网格上算本征值
  • calculation='bands' 沿高对称点连线
  • 带隙 = min(CBM k) − max(VBM k)
  • QE 字段calculation='bands' + K_POINTS crystal_b;后处理 bands.x
  • benchmark 关联
  • questions/band_gap.json 有模板
  • compare.py 里没有 band_gap 字段——评分不完整(见本篇末尾映射表)
  • 典型值(eV,实验值):
  • Si:1.17(室温间接)
  • Ge:0.66(间接)
  • GaAs:1.43(直接)
  • C 金刚石:5.47(间接)
  • MgO:7.8(绝缘体)
  • NaCl:8.5
  • DFT 局限(关键,benchmark 设计必读)
  • LDA/PBE 系统性低估 30-50%!Si 实验 1.17 eV,PBE 算 ~0.6 eV
  • 原因:KS 本征值不是真实准粒子能量;XC 泛函缺少 "derivative discontinuity"
  • 修复路线(代价递增):
    • HSE06(杂化泛函,25% 精确交换):误差降到 ~0.2 eV,但贵 10-100×
    • G₀W₀(准粒子 GW 近似):接近实验,但完全不同代码(BerkeleyGW / Yambo),贵 100-1000×
    • DFT+U:只对局域 d/f 电子(如 NiO)有效
  • benchmark 若要评 band gap 必须选定泛函并接受系统偏差,或切换 HSE06 承担 10× 成本
  • 常见坑
  • 金属没有带隙(E_g = 0),但 DFT 算可能因 smearing 显出非零的假带隙
  • 自旋极化体系(nspin=2)要分别看 spin-up 和 spin-down 带隙
  • k 网格太稀 → VBM/CBM 位置错(Si 的 CBM 在 X 附近的非对称点,需要精细网格)
  • ML 类比:像一个有 30% 系统性低估 bias 的预测模型——集成方法(加 hybrid XC)能减 bias,但计算成本是训一个更大模型

2.2 能带结构 / band structure

  • 定义\(\varepsilon_n(\vec{k})\) 作为 k 的函数;画在高对称点连线上是连续曲线
  • DFT 怎么算:SCF → NSCF(或 bands)沿路径 Γ-X-W-K-Γ-L(fcc 为例)
  • QE 字段calculation='bands' + K_POINTS crystal_b;后处理 bands.x 生成 .dat + .gnu
  • benchmark 关联questions/band_gap.jsondos.json 工作流含 bands;无直接评分字段
  • 典型图像
  • 金属:能带穿过 E_F
  • 半导体/绝缘体:带隙把能带劈成价带和导带
  • 平带:局域电子(d/f 轨道)
  • 常见坑:高对称路径要按晶系选(Setyawan-Curtarolo 标准);xmgrace / matplotlib 画图前要把 E_F 平移到 0

2.3 费米能级 / Fermi level (E_F)

  • 定义:零温下最高占据态能量;有限温度下化学势 μ(T)
  • DFT 怎么算:SCF 自动输出
  • QE 字段
    the Fermi energy is    12.3456 ev
    
    或对绝缘体:
    highest occupied, lowest unoccupied level (ev):   5.4321  7.1234
    
  • benchmark 关联:无直接评分,但带隙计算要用
  • 常见坑
  • 金属必须开 smearing(occupations='smearing')才能算得准;不开会 SCF 振荡
  • 绝缘体 E_F 位置不唯一(任何带隙中值都行),QE 默认取 VBM

2.4 费米面 / Fermi surface

  • 定义:金属 k 空间里 \(\varepsilon_n(\vec{k}) = E_F\) 的 3D 等值面;决定导电、磁性、超导性质
  • DFT 怎么算:NSCF 稠密 k 网格 → fs.x 后处理 → XCrysDen 可视化
  • QE 字段:后处理程序 fs.x
  • benchmark 关联:DFTBench 暂无
  • ML 类比:高维决策边界的可视化

2.5 DOS / density of states g(E)

  • 定义\(g(E) = \sum_{n,\vec{k}} \delta(E - \varepsilon_n(\vec{k}))\);单位能量内的能带数
  • DFT 怎么算
  • SCF 收敛密度
  • NSCF 稠密均匀 k 网格
  • dos.x 后处理:高斯展宽 δ 函数求和
  • QE 字段dos.x 输入需要 DeltaE (bin 宽)、Emin/Emax;输出 *.dos 文件
  • benchmark 关联questions/dos.json无直接评分字段
  • 典型图像
  • 3D 自由电子:g(E) ∝ √E
  • 2D 自由电子:g(E) = const(阶跃)
  • 1D 自由电子:g(E) ∝ 1/√E(van Hove 奇点)
  • 半导体:带隙内 g = 0
  • 常见坑
  • k 网格不够密 → DOS 出锯齿(高斯展宽能遮盖,但不解决物理问题)
  • E_F 未对齐 → 图错位

2.6 PDOS / projected DOS

  • 定义:把 DOS 按原子轨道(s, p, d, f)或原子位置投影分解
  • DFT 怎么算projwfc.x 把 KS 轨道投影到原子中心的球谐函数
  • QE 字段projwfc.x 后处理;输出 *.pdos_atm#*
  • benchmark 关联:DFTBench 暂无
  • 典型用法
  • 看化学键(O 的 2p 和 Si 的 3s 哪个主导 VBM)
  • d 带中心理论(Nørskov):催化剂吸附强度 ∝ d 带中心距 E_F 的距离
  • DFT 局限:投影基不完备——投影系数加起来不到 1 是正常的

组 3:磁性(nspin=2 相关)

DFT 做磁性需要显式开自旋极化。基态磁构型常不唯一,初值敏感

3.1 磁矩 / magnetic moment (μ)

  • 定义:自旋向上密度 − 自旋向下密度的体积分
  • total magnetization = ∫(ρ↑ − ρ↓) dV(代数和)
  • absolute magnetization = ∫|ρ↑ − ρ↓| dV(绝对值和,反铁磁不为零)
  • DFT 怎么算nspin=2 下 SCF 自动输出,单位 μ_B
  • QE 字段
    nspin = 2
    starting_magnetization(1) = 0.5    # 初始磁矩猜测
    
    输出:
    total magnetization       =     2.20 Bohr mag/cell
    absolute magnetization    =     2.40 Bohr mag/cell
    
  • benchmark 关联:DFTBench materials/magnetic.json 有磁性材料;评分字段暂无
  • 典型值(每原子 μ_B):
  • bcc Fe:2.22
  • hcp Co:1.72
  • fcc Ni:0.62
  • NiO(反铁磁):total = 0,per atom = ±1.8
  • DFT 局限
  • 强关联体系(NiO, La₂CuO₄)普通 PBE 算成金属(错),需 DFT+U 或 HSE06
  • 磁构型"亚稳陷阱":初猜决定收敛到 FM / AFM / 非磁
  • 有限温度磁性(居里温度)需 DFT + 蒙特卡洛/Heisenberg 模型,不是直接输出

3.2 自旋极化 / spin polarization

  • DFT 怎么算nspin=2 打开,每个原子设 starting_magnetization
  • 常见坑
  • 不设初始磁矩 → QE 默认全零 → 收敛到非磁态(即便真实基态是铁磁)
  • 对称性"意外地"强制非磁——nosym=.true. 可破
  • ML 类比:对称性打破像 GAN 里的 mode collapse 预防——初始噪声不能全一样

3.3 反铁磁 / antiferromagnetism (AFM)

  • 定义:相邻原子磁矩反平行,total M = 0 但 absolute M ≠ 0
  • DFT 怎么算:构造 AFM 超胞(单胞对称性会强制铁磁或非磁);不同原子设相反符号的 starting_magnetization
  • 典型:NiO、MnO、Cr₂O₃
  • 常见坑:AFM 超胞选不对(如 NiO 需要 2×2×2 rock-salt 超胞破坏对称)→ 收敛到错误态

3.4 磁晶各向异性 / magnetic anisotropy energy (MAE)

  • 定义:不同磁化方向的能量差(如 E_[100] − E_[001])
  • DFT 怎么算
  • 必须开自旋轨道耦合 lspinorb=.true. + FR(full-relativistic)赝势
  • 非共线自旋 noncolin=.true.
  • 约束不同量化轴,各跑一次 SCF
  • 典型值:μeV/atom 到 meV/atom 量级(极小!)
  • DFT 局限:量级太小,容易被数值噪声淹没;k 网格需要远密于常规计算

3.5 DFT+U

  • 定义:对局域轨道(d/f)加 Hubbard 项 \(U(n-n^2)\) 惩罚分数占据,矫正 LDA/GGA 的自作用误差
  • DFT 怎么算:QE 的 Hubbard_U 参数;U 值可经验调(3-7 eV)或线性响应法算
  • QE 字段
    lda_plus_u = .true.
    Hubbard_U(1) = 4.0   ! Ni d 轨道
    
  • 典型用例:NiO, CoO, MnO, UO₂ —— LDA 预测金属,DFT+U 纠正为绝缘体
  • ML 类比:像正则化项手动调强度

组 4:振动 / 声子(DFPT, ph.x)

声子需要额外一层计算(DFPT = 密度泛函微扰理论),比电子结构贵 10-100×。

4.1 声子谱 / phonon dispersion ω_q,j

  • 定义:晶格振动频率作为波矢 q 和模式 j 的函数;和电子能带概念平行,但是振动模式
  • DFT 怎么算
  • ph.x 在 q 网格上算动力学矩阵(linear response,不需做超胞)
  • q2r.x 傅里叶反变换到实空间力常数
  • matdyn.x 沿 BZ 路径插值得完整声子谱
  • QE 字段:独立可执行 ph.x;输入需要 tr2_ph 收敛阈值、q 点网格
  • benchmark 关联:DFTBench 暂无声子任务
  • 典型值
  • 金属:最高声子频率 10-30 meV(Pb 9 meV,Al 40 meV)
  • 共价半导体:Si 63 meV (LO @ Γ)
  • 轻元素:金刚石 165 meV(光学模)
  • DFT 局限:准确度通常 <5%(比带隙好),但贵

4.2 声子 DOS / phonon density of states

  • 定义\(g_{ph}(\omega) = \sum_{q,j} \delta(\omega - \omega_{q,j})\)
  • 用途:积分得热容、零点振动能
  • 常见坑:q 网格不够密 → 低频尾部不准 → 热力学量(特别是低温 Cv)偏差

4.3 虚频 / imaginary frequency(动力学稳定性判据)

  • 定义:声子谱中 ω² < 0 → 报告为 虚频(负值)→ 表示结构沿该模式能量会降低 → 动力学不稳定
  • 物理含义:你 vc-relax 找到的是鞍点而非极小;沿虚频模式畸变会得到更稳定的低对称性相
  • 典型例
  • 立方 BaTiO₃(高温顺电相)在 Γ 点有虚频 → 极化到四方铁电相
  • 氢化物超导研究中,虚频表示高压预测的结构不稳定
  • benchmark 关联动力学稳定性是材料筛选的第一性判据;未来 DFTBench 扩展必选
  • DFT 局限:消除虚频需做无限多次低对称性超胞弛豫,工程量大

4.4 拉曼 / 红外光谱

  • 定义:Γ 点(q=0)光学声子 + 对称性筛选
  • 红外活性:要求模式改变电偶极
  • 拉曼活性:要求模式改变极化率
  • DFT 怎么算ph.x 算 Γ 点 + epsil=.true. 开极化计算
  • 典型用途:实验光谱表征的理论对标

4.5 热容 Cv(T)

  • DFT 怎么算:从声子 DOS 积分 $\(C_v(T) = k_B \int g_{ph}(\omega) \left(\frac{\hbar\omega/k_BT}{\sinh(\hbar\omega/2k_BT)}\right)^2 d\omega\)$
  • 典型值:Dulong-Petit 极限 3Nk_B ≈ 25 J/(mol·K)(高温)
  • DFT 局限:电子贡献(金属低温 ∝T)需额外算;非谐项(热膨胀)要 quasi-harmonic 近似

4.6 热导率 κ

  • DFT 怎么算:声子 + Boltzmann 输运方程(BTE),专用代码 ShengBTE、phono3py
  • 用途:热电材料筛选
  • 成本:需要三阶力常数 → 计算量 10²-10³ × 常规声子谱

4.7 电声耦合 / electron-phonon coupling λ

  • 定义:电子被声子散射的强度;超导 McMillan/Allen-Dynes 公式的关键参数
  • DFT 怎么算ph.x + EPW(Electron-Phonon Wannier)或 phonon+elph 流程
  • 典型值:λ ~ 0.1(弱耦合)到 ~3(强耦合,如 H₃S 高压超导)
  • benchmark 关联:超导材料(superconductor.json)潜在评分点

4.8 零点振动能 / zero-point energy (ZPE)

  • 定义\(E_{ZPE} = \frac{1}{2}\sum_{q,j}\hbar\omega_{q,j}\);量子基态的振动剩余能
  • 典型值
  • 氢(H₂):135 meV/原子(极大,显著影响化学)
  • 碳(金刚石):180 meV/f.u.
  • 重金属(Au):几 meV/原子
  • 常见坑:轻元素(H, Li)绝对不能忽略 ZPE;金属氢化物研究必算

组 5:光学与介电(epsilon.x, ph.x at q=0)

5.1 介电函数 ε(ω)

  • 定义\(\epsilon(\omega) = \epsilon_1(\omega) + i\epsilon_2(\omega)\)
  • 实部:折射
  • 虚部 ε₂:光吸收(与吸收系数 α 成正比)
  • DFT 怎么算
  • 独立粒子近似:epsilon.x 直接从 KS 本征态求和(Kubo 公式)
  • 含激子效应:需 TDDFT 或 BSE(Bethe-Salpeter)
  • QE 字段epsilon.x 后处理
  • benchmark 关联:DFTBench 暂无
  • DFT 局限
  • 独立粒子 ε₂ 峰位置 = 带隙低估同样问题
  • 激子束缚能完全缺失(独立粒子近似)
  • 绝缘体光谱需要 BSE 才定量

5.2 介电常数 ε∞ vs ε₀

  • ε∞(高频 / 纯电子):光频介电常数,只有电子响应
  • ε₀(低频 / 静态):= ε∞ + 离子位移贡献(LO-TO splitting 相关)
  • DFT 怎么算ph.x at q=0 + epsil=.true.
  • 典型值
  • Si:ε∞ ≈ 11.7
  • NaCl:ε∞ ≈ 2.3,ε₀ ≈ 5.9
  • 铁电 BaTiO₃:ε₀ ~ 2000(极大,因为离子软模)
  • ML 类比:ε∞ ≈ 只用快推理,ε₀ ≈ 加上慢的全流程

5.3 Born effective charge Z*

  • 定义:原子位移 u 对宏观极化 P 的贡献:\(P_\alpha = \sum_I Z^*_{I,\alpha\beta} u_{I,\beta}/V\)
  • 用途铁电极化计算的基础;LO-TO splitting
  • 典型值:形式电荷 ± Z_formal,但实际 Z 常明显偏离(BaTiO₃ 里 Ti 的 Z ≈ +7 而不是 +4)
  • DFT 怎么算ph.x at q=0 + epsil=.true. + zue=.true.

5.4 折射率 n + 消光系数 k

  • 定义:由 ε 导出,\(\tilde{n} = \sqrt{\epsilon} = n + ik\)
  • 典型值(可见光):
  • 水:n ≈ 1.33
  • 玻璃:1.5
  • 金刚石:2.4
  • GaAs:3.3-3.9(高折射率)

组 6:电荷与键合(pp.x 后处理)

6.1 电荷密度 ρ(r)

  • 定义\(\rho(\vec{r}) = \sum_i f_i |\phi_i^{KS}(\vec{r})|^2\)
  • DFT 怎么算:SCF 输出 charge-density.hdf5pp.x 转成 3D 网格(cube/xsf 格式)
  • QE 字段pp.xplot_num=0;可视化用 VESTA / XCrysDen
  • 用途:看化学键性质
  • 离子键:电荷显著转移到阴离子(NaCl 里 Cl 周围堆积)
  • 共价键:原子间有明显的电荷积累(Si-Si 键的"桥")
  • 金属键:均匀背景
  • ML 类比:像注意力图的可视化

6.2 Bader / Löwdin / Mulliken 电荷

  • 定义:不同方案把连续 ρ 分配给各原子
  • Bader 分析:按 ρ 的零通量面划分空间(最物理);工具 bader (Henkelman)
  • Löwdin 电荷projwfc.x 输出;投影法,依赖基组
  • Mulliken:QE 不原生提供(基组依赖性强)
  • 典型值:NaCl 里 Na +0.85 e,Cl −0.85 e(Bader);形式电荷是 ±1
  • 常见坑:不同方案的绝对数字不可直接比较,只比较同方案下的变化

6.3 差分电荷密度 Δρ

  • 定义\(\Delta\rho = \rho_{AB} - \rho_A - \rho_B\);成键时相对于孤立原子的电荷重分布
  • DFT 怎么算:跑三次 SCF(AB 体系 + A + B,同一盒子),pp.x 相减
  • 用途:可视化"成键电子来自哪里"

6.4 功函数 / work function (Φ)

  • 定义:把一个电子从固体拿到真空中需要的能量 Φ = V_vacuum − E_F
  • DFT 怎么算表面 slab 模型(几层原子 + 真空层 >15 Å),从 pp.x 的平面平均静电势读真空能级
  • 典型值(eV):
  • Cs:1.95(最低,光电阴极材料)
  • Al(111):4.2
  • Au(111):5.3
  • Pt:5.6
  • 常见坑
  • 真空层太薄(<10 Å)→ 镜像势互相干扰
  • 表面弛豫必须做(slab 顶部几层要 relax)
  • 极性表面需要偶极修正 dipfield=.true.

组 7:反应与动力学

7.1 反应能 ΔE_rxn

  • 定义\(\Delta E = \sum E(\text{产物}) - \sum E(\text{反应物})\)
  • DFT 怎么算:所有物种独立 SCF(同赝势、同 ecut、同 k 密度)
  • 典型精度:简单反应(无氢键/vdW)~ 0.1 eV;复杂化学可达 0.3 eV
  • DFT 局限
  • 过渡金属自旋态翻转 → 能量跳几百 meV
  • 开壳层自由基能量不准

7.2 过渡态 / transition state

  • 定义:反应路径上能量最高点(鞍点,1 个虚频方向)
  • DFT 怎么算NEB (Nudged Elastic Band) 方法;QE 的 neb.x
  • 在初态和末态间插 5-9 个 "image"
  • 沿路径同时优化所有 image(约束垂直于路径方向)
  • QE 字段neb.x 独立程序;输入包含所有 images
  • 常见坑
  • 初始/末态必须先各自 relax
  • 线性插值初猜可能过高(穿过原子核)→ 用 IDPP (Image Dependent Pair Potential) 初猜
  • 鞍点附近要切换到 "Climbing Image NEB" 精确定位

7.3 活化能 / activation energy Ea

  • 定义\(E_a = E(\text{TS}) - E(\text{IS})\);决定反应速率 \(k \propto e^{-E_a/k_BT}\)
  • 典型值:化学反应 0.5-2 eV;扩散势垒 0.1-1 eV
  • benchmark 关联:DFTBench 暂无 NEB 任务(但多智能体 DFT 应用的自然扩展方向)

7.4 分子动力学 / ab initio MD

  • DFT 怎么算calculation='md';每步用 Hellmann-Feynman 力做 Verlet 积分;QE 提供 NVE, NVT(Langevin / Nosé-Hoover)
  • 成本:每个时间步 = 一次完整 SCF(~1e-3 s CPU 对小体系);ns 级模拟对 ~100 原子不现实,通常做 10-100 ps
  • 替代:机器学习力场(MACE, NequIP, DeePMD)—— DFT 数据训练,推理快 1000×

组 8:拓扑与自旋电子学

8.1 自旋轨道耦合 / spin-orbit coupling (SOC)

  • 定义:相对论效应,把自旋和轨道角动量耦合;对重原子(Z>40)显著
  • DFT 怎么算
  • lspinorb=.true. + noncolin=.true.
  • 使用 FR(full-relativistic)赝势(PseudoDojo 有 FR 版)
  • 本征态变成双分量旋量
  • QE 字段:PseudoDojo 里的 SR vs FR 目录区分
  • 典型值
  • Bi:SOC splitting ~1.5 eV
  • Au:~0.5 eV
  • Si:~30 meV(可忽略)
  • 成本:双分量 → 矩阵大小 × 2 → 计算量 × 4 到 × 8
  • benchmark 关联topological.json(Bi, Bi₂Se₃, ...)的正确处理必须开 SOC

8.2 Berry phase / Berry curvature

  • 定义
  • Berry phase:波函数沿闭合路径绕一圈的几何相
  • Berry curvature:类比磁场的"k 空间磁通密度"
  • DFT 怎么算calculation='nscf' + lberry=.true.(极化模式)
  • 用途
  • 电极化 P(现代极化理论):P = e/(2π)³ ∫ i⟨u_k|∇_k|u_k⟩ d³k
  • 反常霍尔导数 σ_xy = e²/ℏ ∫ Ω(k) d³k / (2π)³

8.3 拓扑不变量(Chern, Z₂)

  • Chern number C:2D 绝缘体的整数拓扑量,决定量子霍尔电导 σ_xy = Ce²/h
  • Z₂ invariant:3D 时间反演对称拓扑绝缘体的拓扑类
  • DFT 怎么算:Wannier 函数 + Wannier90 / Z2Pack;或直接从 Wilson loop 算
  • benchmark 关联topological.json 材料的本质评分点——但实现难度高

8.4 Wannier 函数 / Wannier functions

  • 定义:Bloch 波的傅里叶变换到实空间,得到局域化的轨道
  • DFT 怎么算pw2wannier90.x + Wannier90(外部代码
  • 用途
  • 插值能带(拟合少量 k 点,插到任意 k)
  • 低能有效哈密顿量
  • 自动化拓扑不变量计算
  • ML 类比:降维 + 可解释特征(Bloch 基 = 全局,Wannier 基 = 局部,类似傅里叶 vs 小波)

Benchmark 映射表(关键)

这是本篇和 DFTBench 的直接对接。src/evaluate/compare.pyCOMPARISON_RULES 只评 10 个字段,而 questions/ 里有 5 类任务模板:

benchmark 评分字段 比较方式 对应物性组 触发 task
a, b, c relative error 组 1.3(弛豫结构——晶格长度) vc_relax*.json
alpha, beta, gamma relative error 组 1.3(弛豫结构——晶格角度) vc_relax*.json
space_group exact 组 1.3 的对称分析(spglib 后处理) vc_relax*.json
space_group_number exact 同上 同上
point_group exact 同上 同上
crystal_system exact 同上(cubic / hexagonal / ...) 同上

required_ground_truth 在 JSON 里出现但 COMPARISON_RULES 未实现的字段:

字段 出现在 应对应组 现状
total_energy_ev_per_fu scf_energy.json, vc_relax_scf.json 组 1.1(总能量) compare.py 未实现
relaxed_structure band_gap.json, dos.json, vc_relax*.json 组 1.3 只评其衍生的 a,b,c,...

完全无评分字段的 task

  • band_gap.json → 工作流算了带隙(组 2.1),但 compare 里没有 band_gap
  • dos.json → 工作流算了 DOS(组 2.5),但 compare 里没有 dos

结论:当前 benchmark 评分覆盖面 = 组 1.3 的晶格和对称性 + 组 1.1 总能量(若未来修 compare.py)。组 2 的电子结构物性(带隙、DOS)task 有、评分无——这是 DFTBench 设计不完整处,也是自制 bench 时的扩展点。


DFT 精度内禀层级(benchmark 设计必读)

把 8 组物性按 DFT(PBE 级别)的精度排序——这决定了哪些适合作为 benchmark 评分项:

第 1 档:可信(误差 <2%)

  • 晶格常数(PBE 高估 1-2%,PBEsol 更准)
  • 体模量(5-10%)
  • 声子谱(<5%)
  • 形成能相对顺序(绝对值偏 0.1 eV,排序基本对)

benchmark 启示:这些是评分"性价比"最高的物性。DFTBench 当前评分对应的组 1.3 在这档。

第 2 档:系统偏差已知可修正(误差 10-30%)

  • 磁矩(PBE 常高估 10-20%)
  • 介电常数(类似带隙问题)
  • 反应能(0.1-0.3 eV)

第 3 档:PBE 级根本不行(误差 >30% 或定性错)

  • 带隙(PBE 低估 30-50%)→ 必须 HSE06 或 GW
  • 激子束缚能 → 必须 BSE
  • 强关联体系磁序 → 必须 DFT+U 或动态平均场
  • 范德华体系层间距 → 必须 DFT+D3 或 vdW-DF

benchmark 启示:把这些物性纳入评分时,必须在 prompt 里明确泛函,否则 PBE 低估带隙被当"错误回答"会不公平——但用 HSE06 计算成本爆炸。这是 benchmark 设计的核心权衡。

第 4 档:需额外后处理代码

  • 输运(热导、电导):ShengBTE / BoltzTraP
  • 拓扑不变量:Z2Pack / WannierTools
  • 光学(含激子):Yambo / BerkeleyGW

benchmark 启示:集成多智能体调用这些外部代码是未来扩展方向,但单台机器成本将爆炸。


下一步阅读

  • 31-material-categories.md — DFTBench 10 大材料类别(金属 / 半导体 / 绝缘体 / 铁电 / 压电 / 磁性 / 超导 / 拓扑 / 热电 / 光学)的物理特征与计算难点。读完本篇,就能理解"为什么磁性材料要 nspin=2"、"为什么拓扑材料要 SOC"——那篇把每类材料和本篇的物性组对应起来。

如果想回顾化简链任何一步: