Hefei-NAMD:受驱动两能级模型
实际运行DEV相干传播,给出外部高斯振荡耦合、完整输入与NATXT缩放和相位约定。
阅读本篇目录
本篇用两个能级的明确模型,演示外部时变耦合如何驱动电子布居变化。实际调用集群原版DEV hfnamd的相干电子传播,不重新计算DFT或核运动轨迹。
这里自行构造有效哈密顿量,不是给Hefei-NAMD设置一个原生光场开关,也不是已求得真实材料的光学跃迁偶极矩。模型耦合幅值单位是eV,不能直接当成V/Å。
1. 下载并先看模型#
下载完整输入、原生结果、数据和绘图脚本,保存为example.zip:
python3 -m zipfile -e example.zip .
cd hefei-driven-twolevel
module load ase/3.29.0
bash read.sh
bash plot.sh
默认读取包内参考结果,在analysis-read/和figures/生成数据与图片。新的原生运行使用work-new/独立目录。

两能级能量为0、1 eV,初态全部在低能级。驱动为g(t)=A exp[-(t-15)²/(2×5²)] cos(Eph×t/ℏ),时间fs,ℏ=0.6582119281559802 eV·fs。共振条件A=0.06 eV、Eph=1 eV。
2. 完整输入与初态#
DEV固定快照2023.03.29,提交308d694;ifort 2021.10、oneAPI/MKL 2023.2、Intel MPI 2021.10,适用支持AVX512的CPU。不能换成原版2024分支而仍沿用相同文本长度约定。
&NAMDPARA
BMIN=1, BMAX=2, NSW=804, POTIM=0.05, TEMP=300
NSAMPLE=1, NTRAJ=1, NAMDTIME=801, NELM=10, NPAR=1
ALGO='FSSH', ALGO_INT=0, LHOLE=.FALSE., LSHP=.FALSE.
LCPTXT=.TRUE., LSPACE=.FALSE., LBINOUT=.FALSE., DEBUGLEVEL='I'
/
INICON:
2 1
从第2帧、局部能级1开始,保留前一帧给耦合插值使用。EIGTXT有804行,每行两个能级能量;NATXT也有804行,每行两个能级的2×2原始矩阵,按行展开。
head -3 inputs/resonant/EIGTXT
head -3 inputs/resonant/NATXT
wc -l inputs/resonant/EIGTXT inputs/resonant/NATXT
POTIM=0.05 fs是外部耦合数据时间间隔,NELM=10给电子步长0.005 fs。801个输出点覆盖从初态起40 fs。LSHP=.FALSE.只传播量子振幅,不进行随机面跳跃。
3. NATXT为什么不是直接写g(t)#
该分支读取文本后会除以2×POTIM。本例构造实反对称矩阵D12=g/ℏ、D21=-g/ℏ,写入NATXT的数值是2×POTIM×D。原生传播中的有效非对角元为-iℏD。
通过固定相位变换S=diag(1,-i),它与实非对角耦合g的两能级哈密顿量等价,布居保持相同。这里使用的是外部模型耦合,不应将该矩阵称为从真实轨迹提取的非绝热耦合。
804行的第j行对应模型耦合时刻(j-1.5)×0.05 fs;程序按前/当前/后帧插值。独立积分也使用这些已写入数据的插值,避免将输入采样差异混入积分器对照。
4. 提交并读取新结果#
bash submit.sh
squeue -u "$USER"
# 作业结束后
bash read.sh work-new analysis-new
bash plot.sh analysis-new figures-new work-new
CPU脚本按集群整节点规则申请资源,六个小条件顺序运行,每个使用1个MPI进程、1线程。输入包含关闭驱动、共振、减半子步、失谐、弱驱动及激发态初态关闭驱动六种条件。
新结果看work-new/resonant/POPRT.2和PSICT.2。前者记录布居,后者记录复振幅。程序首行打印时间0.05 fs,但它保存的仍是初始态;读取脚本把此行定义为经过时间0,随后依次到40 fs。
head -3 work-new/resonant/POPRT.2
head -3 work-new/resonant/PSICT.2
cat analysis-new/Hefei-driven-twolevel-summary.csv
本例共振脉冲后的激发态布居为0.291269。下一篇比较场关闭、场强、失谐和电子子步,并解释为什么这还不能作为光吸收截面或复合寿命。