CREST:集合属性与加权红外谱
用丁烷两个实际构象批量计算单点、偶极和autoIR,读取自由能权重与红外棒谱。
阅读本篇目录
同一个构象集合可以逐条计算单点、偶极或红外谱。本例用经过频率检查的两个丁烷C₄H₁₀结构,实际运行 --forall --prop 的三个入口,并说明 autoIR 怎样组合谱线。
1. 读取实际结果#
下载完整输入、实际结果与读取绘图程序,保存为 example.zip:
python3 -m zipfile -e example.zip .
cd crest-butane-properties
bash read.sh
bash plot.sh
默认读取附带结果,生成 analysis-read 和 figures,不重新计算。

本例只包含选定的两个结构,权重用于这对结构的演示;没有进行完整构象采样,也不据此声称得到实验光谱或完整平衡占比。可下载属性CSV和72条红外棒谱CSV。
2. 准备多帧XYZ#
每条记录14原子,保持相同原子编号;第二行为实际计算能量,单位Eh。第一条记录为:
14
-13.665127578507
C 0.02200089422964 -0.00196655352522 -0.05214233444360
C 1.29392297412207 0.82216654631444 -0.20906780572502
C 2.53587990957434 0.04014794601324 0.21178651066414
C 3.80841506345099 0.86227008238312 0.04937400090808
H 0.07060392642024 -0.89900275475456 -0.66600078331406
H -0.84901802177563 0.57450715061664 -0.35544215179053
H -0.11083391830972 -0.30491690230552 0.98439233453031
H 1.39986420529357 1.13091892572578 -1.25175346332578
H 1.21685613632682 1.72778541685952 0.39728284916352
H 2.43170927000750 -0.26520416190858 1.25565141110871
H 2.61074879164860 -0.86745758832664 -0.39186108862989
H 3.76129905863582 1.76261503942398 0.65842982035511
H 3.94049298038403 1.15951215948899 -0.98890108250171
H 4.67916537774738 0.28658380196736 0.35482284241770
两条骨架二面角约 179.76°、67.53°,分别接近anti与gauche构象。本例两个最终结构各有 36个正的内部振动模式。最初的对称几何曾有虚频,处理过程见虚频检查与修正。
3. 逐条计算单点与偶极#
使用独立CREST 3.0.3(GNU Fortran、MKL)与xTB 6.7.1。个人入口首次可在分配的CPU作业内用 bash build-private.sh 建立,本专题已有入口可共用。
在已分配CPU资源内,两个属性各放独立目录:
~/.local/ys-crest-tools/bin/crest input.xyz \
--forall ensemble.xyz --prop singlepoint --gfn2 --T 2 --keepdir
~/.local/ys-crest-tools/bin/crest input.xyz \
--forall ensemble.xyz --prop dipole --gfn2 --T 2 --keepdir
单点入口会生成带真实能量的集合并排序;偶极入口保留逐记录对应关系,写出 crest.dipoles。
cat reference-results/corrected-dipole/crest.dipoles
前三个数为原子单位的偶极分量,最后一个数为Debye表示的总偶极。本次显示约 0.000、0.031 D。该输出仅保留三位小数,显示0.000不能解释为数学上严格为零;资料包另用同几何的高精度JSON输出核对了相应舍入范围。
4. 计算集合红外谱#
~/.local/ys-crest-tools/bin/crest input.xyz \
--forall ensemble.xyz --prop autoIR --pthr 0 --gfn2 --T 2 --keepdir
本例 --pthr 0 保留这两条输入记录。程序内部包含优化与Hessian计算,再用各结构的 TOTAL FREE ENERGY 求权重;不是直接使用初始XYZ注释里的电子能。
cat reference-results/corrected-autoIR/PROP/autoir.pop
head -14 reference-results/corrected-autoIR/crest.vibspectrum
本次298.15 K下的两条权重约 0.7406、0.2594。独立按实际自由能重建为 0.740563、0.259437。
5. 为什么输出有78行模式#
每个非线性14原子结构有 3N−6=36 个内部振动模式。程序组合两份谱时保留一组6个零模式,再将 36×2=72 条内部谱线按频率排序,因此共78行。
每条内部谱线的强度乘以对应结构权重。它不是先把两组振动频率逐个求平均,也不是对整个谱形做一次任意缩放。原输出为棒谱;图中的15 cm⁻¹ Lorentz展宽由绘图程序另作,只是显示选项。
6. 整包提交与读取#
bash submit.sh
# 计算结束后
bash read.sh work-new analysis-read
bash plot.sh
CPU模板申请56核,实际2线程。默认重算从已修正的两条结构开始;原虚频例子保留供读取和教学,不会在默认流程中重造错误结构。
这组旧式属性入口适合读取与维护已有项目。换成自己的集合时,先统一方法、原子顺序与化学状态,再检查优化、虚频和权重来源。