CREST专题

CREST 与 ORCA 联用:两种自旋态的输入与输出

使用实际CH₂例子连接两个ORCA计算层,说明模板、multiplicity和能量梯度文件。

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

下载完整输入、参考输出、3份CSV和4张图的程序,保存为example.zip:

python3 -m zipfile -e example.zip .
cd crest-orca-crossing-examples
bash results.sh
bash plot.sh

使用CREST3.0.2官方预编译CPU版、ORCA6.1.1官方Linux/OpenMPI4.1.8版。每个ORCA作业单线程,多个候选可并发。这里是自己建立的三原子CH₂教学模型,采用PBE/def2-SVP和TightSCF;用于了解联用与近似交叉候选流程,不作为高水平激发态或反应速率基准。

1. 为什么在CREST里调用ORCA#

CREST可以组织计算流程,能量和梯度则由指定计算器提供。除了内置xTB方法,本例通过原生ORCA接口同时计算单重态和三重态,为后续两势能面约束优化准备数据。

初始XYZ:

3
Own CH2 teaching geometry
C 0 0 0
H .90 0 .60
H -.90 0 .60

它有8个总电子,初始C–H约1.0817Å,H–C–H约112.620°。

2. ORCA模板只写方法行#

随包spin1.inp与spin3.inp均为同一行:

! PBE def2-SVP TightSCF EnGrad NoAutoStart

本版本按此单行模板操作,坐标、电荷和自旋由CREST生成,不在模板中再写坐标块。两份模板的方法相同,真正的自旋区别在下面两个计算层的设置。这里没有PAL并行指令,单个ORCA作业使用一个核心。

3. 完整的单点TOML#

input="structure.xyz"
runtype="singlepoint"
threads=1

[calculation]
type="mecp"
optlev="tight"
maxcycle=80
elog="energies.log"

[[calculation.level]]
method="orca"
chrg=0
uhf=1
calcspace="spin1"
orca_cmd="/public/software/orca/6.1.1/linux-x86_64-openmpi4.1.8/orca"
orca_template="spin1.inp"
rdgrad=true

[[calculation.level]]
method="orca"
chrg=0
uhf=3
calcspace="spin3"
orca_cmd="/public/software/orca/6.1.1/linux-x86_64-openmpi4.1.8/orca"
orca_template="spin3.inp"
rdgrad=true

[[calculation.constraints]]
mecp=[10.0,0.005,0.2]

这里ORCA层的uhf是自旋多重度:单重态1、三重态3。它与xTB中表示未成对电子数的uhf=0/2不同。为了明确指定两层,本例逐层写出,不能把另一种计算器的自旋数值照搬过来。

type="mecp"把两层能量、梯度与能隙约束组合起来;此处runtype="singlepoint"只做一次计算,不进行结构优化。

4. 提交与实际结果#

sbatch job.slurm sp

作业中核心命令是crest input.toml。每次尝试保存在work/sp/attempt-*,具体目录由终端打印。先用参考结果练习读取:

head -n 20 reference-results/CH2-gap-SP-simple-template/spin1/ORCA.in
head -n 20 reference-results/CH2-gap-SP-simple-template/spin3/ORCA.in
grep 'FINAL SINGLE POINT ENERGY' reference-results/CH2-gap-SP-simple-template/spin*/ORCA.out

初始结构的单重态能量约−39.024319244221Eh,三重态约−39.051772050731Eh,能差约0.747eV,因此这个输入结构本身不是交叉点。

每个ORCA.engrad保存该层能量Eh、Cartesian梯度Eh/Bohr以及原子信息。crest.engrad保存的是组合计算的结果,包含约束贡献,不能当成某一个自旋态的物理能量。

5. 看什么才算计算完成#

除了CREST结束标记,还要查看两个子目录的ORCA正常结束信息及非零、有限的能量与梯度。不要仅凭主程序退出码或最后一行判断两个计算层都已经成功。

官方接口说明见CREST输入文件文档。在线文档同时包含新版选项,本例仅使用已安装3.0.2的orca_template接口。

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

查看配图

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

100%查看原图 ↗