FourPhonon专题

FourPhonon:与TDEP比较声子频率及Γ点

用原生路径和27点网格说明频率单位、q点匹配及精确Γ点与方向性LO–TO极限的区别。

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

下载ZnS极性TDEP与FourPhonon示例包,保存为example.zip:

python3 -m zipfile -e example.zip .
cd polar-tdep-fourphonon-examples
bash results.sh
bash read.sh
bash plot.sh

以上命令读取本例的实算结果并画图,不会重算VASP。需要自己重新拟合时,运行sbatch run.slurm,然后用bash read.sh work读取新的原生输出。CPU队列按整节点申请56核,本例小程序实际使用1个MPI进程和1个线程;申请核数不能用来缩减整节点计费。绘图使用ase-3.29.0的Python,HDF5读取使用phonopy-4.8.3的Python,脚本已写好解释器路径。

本例使用TDEP25.03(d38f435)与FourPhonon1.3-fix20260924(5b814b3)的CPU程序,Intel oneAPI2024.2、Intel MPI2021.13、MKL顺序库。四个位移结构的力由VASP6.6.1实算获得:NVHPC25.3、CUDA12.8、HPC-X2.22.1、MKL2023.2,P100/V10016G单卡。

1. 先画原生TDEP能带#

提交脚本里已包含:

module load tdep/25.03-8173m
cd work/TDEP-reference
phonon_dispersion_relations --dumpgrid --qpoint_grid 3 3 3 --meshtype 2 --nq_on_path 5
head outfile.dispersion_relations

路径由原生TDEP确定,为Γ–X–U|K–Γ–L。图和CSV保留原生路径坐标,未把它改成另一套距离定义。--dumpgrid同时输出可与FourPhonon网格匹配的HDF5数据。

ZnS原生TDEP路径与Gamma比较

2. 比较前先统一单位和q点#

原生输出 频率定义 转换到rad/ps
FourPhonon BTE.omega rad/ps 直接使用
TDEP网格HDF5 frequencies 属性为Hz (angular) 乘1E−12,不能再乘2π
本例TDEP路径HDF5 frequencies THz普通频率 乘2π

最容易出错的是拿路径频率THz直接与网格角频率比较。公开读取脚本会检查文件属性,再用BTE.qpoints_full逐点匹配,最后才比较分支。

bash read.sh
head data/matched-frequencies.csv
head data/TDEP-reference-path.csv

当前TDEP版本这份网格文件的q点属性写1/A,但实际数值按逆Bohr的周波坐标才能与全部27个网格点一一对应。脚本采用q_frac = q_native @ cell.T / 0.529177210903再按倒格矢周期归一;这只是对当前文件和版本核对后的约定,不能不检查就推广到别的版本。原始HDF5不修改。

3. 为什么Γ点最后一支不同#

本例保留以下原生数值,单位rad/ps:

结果 光学1 光学2 光学3
FourPhonon精确q=0 49.288014 49.288014 49.288014
TDEP方向性Γ极限 49.285120 49.285120 61.808766

两条横光学支匹配,方向性纵光学支因LO–TO分裂而不同。这两种Γ点定义不能逐支强行相等;本例非Γ对比单独列出,Γ点也完整保存。不能靠删去最后一支、取平均值或改写原生输出来“对齐”。

4. 换成自己的极性材料#

依次检查:原胞和原子顺序;质量;Born电荷和介电张量;短程/长程分离的参数;q点实际坐标;角频率与普通频率;Γ点取极限方向。确认这些一致后,再分析真正来自超胞、IFC截断和数值积分的差异。

完整逐点CSV包含Γ标记、两程序频率及只用短程IFC的频率;路径CSV可直接重新绘图。资料包同时提供read.py与plot.py,可以查看全部换算过程。

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

查看配图

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

100%查看原图 ↗