ABACUS 实时响应提取与频谱
实际电场归一化、NumPy终端提取,时间步、传播器、窗口和阻尼控制。
阅读本篇目录
下载H₂的22个条件、完整输入、原生结果和绘图脚本,解压进入附件根目录,先读取已有数据:
bash analyze.sh
表和数组在reference/analysis,高清图在reference/figures。需要从头重算时,在新的附件目录提交:
sbatch submit.slurm
模板分配1张P100,先顺序运行各条件,再后处理。实时传播使用GPU,线性响应使用同主机的CPU路径;申请了GPU不代表线性响应获得GPU加速。脚本拒绝覆盖已有work,重算请新解压。这是一套含多项控制的演示,整套耗时长于单个小例子。
环境为ABACUS3.10.1模块abacus/3.10.1-p100,GNU13.3、HPC-X2.50/OpenMPI5.0.10rc2、CUDA12.8,1个MPI进程和1线程,双精度;ASE3.29.0环境提供NumPy/SciPy和绘图依赖。不包含Intel Xeon 8173M性能对照。文中的直接计算命令应在已分配的计算资源中执行,不在登录节点运行DFT。
1 先检查传播,而不是直接找峰#
reference/analysis/conditions.csv列出每个实时条件的时间步、总时长、场强、方向、传播器和脉冲结束后的能量变化范围。每个时间步都检查电子自洽,MD_dump确认原子位置不动;密度归一化为2电子不等于已经证明传播器严格酉。
python - <<'PY'
import csv
with open('reference/analysis/conditions.csv') as f:
for r in csv.DictReader(f):
if r['kind']=='rt':
print(r['name'],'dt/fs',r['md_dt_fs'],'T/fs',r['total_time_fs'],
'场后能量范围/eV',r['postpulse_energy_range_eV'])
PY

电场存在时,电子体系与外场交换能量,总能并不应该强行保持不变。脉冲结束后再看能量漂移和诱导偶极,并独立检查dt=0.01、0.005、0.0025fs。本例的真实偏差保留在rt-controls.csv;更小时间步是否足够,应结合你的目标精度判断。
2 用实际场作频域归一化#
工具analyze_rt.response使用NumPy梯形积分,分别变换实际诱导偶极和实际电场,再取比值得到有限窗口的α(ω)。转换使用与本版一致的eV、fs、Bohr常数,并将V/Å转换成原子单位场强。没有将一条任意脉冲的偶极傅里叶变换直接称为吸收谱。
采用exp(+iEt/ℏ−ηt/ℏ)约定;本例η是后处理的eV参数,与LR输入abs_broadening的Ry单位不同。频域实际驱动低于最大值2%的点不求商,数组中保留NaN和有效掩码,避免除以接近0的驱动后出现假峰。该掩码不代表其余频段已收敛。
python - <<'PY'
import numpy as np
z=np.load('reference/analysis/response-trajectories.npz')
e=z['T4_eta0.2__energy_eV']
a=z['T4_eta0.2__alpha_au']
m=z['T4_eta0.2__valid_mask']
print('有效驱动频率点',m.sum(),'有限窗口正频响应样例',e[m][:3],a.imag[m][:3])
PY
3 同一条轨迹,比较窗口和阻尼#

有限截断可产生振铃和负侧瓣;本图展示有限窗比值,不能将负侧瓣解释为分子增益。阻尼会改变振铃和峰形,仍需更长轨迹与独立收敛检查。
4fs参考轨迹分别截取1、2、4fs,并比较η=0.1、0.2、0.4eV。这里截取窗口是后处理,没有重复计成新模拟。天然傅里叶间隔尺度约h/T:1fs约4.14eV,2fs约2.07eV,4fs约1.03eV。把画图网格加密到0.05eV,不会让4fs轨迹突然具有0.05eV的物理分辨率。
python - <<'PY'
import csv
with open('reference/analysis/finite-window-response.csv') as f:
for r in csv.DictReader(f):
print(r['name'],'h/T尺度/eV',r['Fourier_bin_scale_eV'],
'有限窗口表观峰/eV',r['apparent_peak_eV'])
PY
本例η=0.2eV时,1fs窗口的表观峰在14.80eV,2fs和4fs均在14.75eV,但峰高仍显著改变;这说明画图网格上的峰位不变也不能单独证明收敛。LR-TDA的14.0222eV参考线与此有限窗峰仍有差别。
文中的表观峰来自指定8–23eV观察区间,用于演示截断和阻尼影响,不是精确分子激发能。实时绝热传播与LR-TDA也不是完全相同的近似,图中的LR参考线不能当作必须逐点重合的标准答案。
4 用于自己的体系#
先收敛基态结构、赝势/轨道和辅助网格,确认所用规范适合分子或周期体系,再检查场强、方向、时间步和传播器,最后延长总传播时间并改变阻尼。更大的盒子和更高的截断能在附件各有实际对照,但单次对照不等于周期镜像或基组完全收敛。
对分子,SPIN1_DIPOLE适合本例这种局域在盒内、冻结离子的响应读取;对周期固体应使用对应的电流/规范和体响应定义。不要把本篇有限盒的比值曲线直接标成实验吸收截面。