VASP时间传播光学响应
用Si比较时间传播与Casida光谱,理解传播步数、展宽和输出方向。
阅读本篇目录
同一套线性光学响应可以用矩阵对角化,也可以用时间传播求解。本例沿用Casida教程的Si基态与矩阵元,通过ALGO=TIMEEV得到εxx,并与直接对角化结果比较。
1. 准备同一套基态和空带#
先按Casida教程完成si-manybody-scf与si-manybody-exact,使用prepare_response.py将自己的WAVECAR和WAVEDER放入si-pbe-timeev。三维Si原胞、3³k网格、550 eV和64条总带保持一致,实际响应使用4条占据带与8条空带。
2. 提交时间传播#
ALGO = TIMEEV
IEPSILON = 1
NELM = 2000
CSHIFT = 0.1
OMEGAMAX = 15
LHARTREE = .TRUE.
LFXC = .TRUE.
LADDER = .FALSE.
ANTIRES = 2
进入目录后sbatch run.sh。IEPSILON=1只计算x方向,本例输出因此只有εxx;不能把不存在的yy、zz列硬凑进三方向平均。对于各向异性材料,需要按所需方向分别计算或选择全部方向。VASP时间传播说明
NELM在这里控制允许的传播步数,不等同于基态SCF次数。本例设置2000,OUTCAR实际记录1501步,步长0.033333 eV⁻¹,约0.02194 fs。实际使用的步数以输出为准;不要拿INCAR上限当作已经完成的步数。
3. 提取并比较谱线#
两种响应任务结束后,在包根目录运行:
module load ase/3.29.0
python extract_tddft.py

在1–10 eV范围内,Casida的ε₂峰位为2.700 eV,时间传播为2.685 eV。两条曲线差的均方根为2.1399,除以Casida峰值后约1.14%。这只是两种数值实现对当前有限模型的比较,不能当作相对实验的准确率。
有限传播时间与离散时间步会留下数值差别;图中保留实际差值。检查传播参数时,还要同时保持基态、跃迁空间、相互作用核及展宽一致。只改CSHIFT就会改变峰宽,不能据此宣称材料发生物理变化。
4. 这种时间传播能说明什么#
本例属于线性响应,用时间积分求频率相关介电函数。它不等同于给材料施加强激光后的完整实时电子动力学,不能直接输出载流子复合寿命、激光烧蚀或高次谐波产率。
若目标是光学谱,先扩大k点和空带空间;若目标是强场或非绝热载流子动力学,则需要对应理论与工作流,不能只把ALGO改成TIMEEV。
本例响应使用VASP6.6.1 CPU版、oneAPI2024.2、4MPI,通过Slurm运行。使用其他版本前核对上游适用范围;本例不使用旧版存在对称性处理问题的实现。