CREST QCG:空腔填充与参考能量
复用已完成的溶剂簇,用CUT-FREEZE-FILL构建纯水参考簇并解释电子能量归一化。
阅读本篇目录
QCG不仅可以增长溶剂簇,还需要构建与其匹配的溶剂参考。本篇演示默认的CUT-FREEZE-FILL(CFF):去掉溶质、保留外壳,再用溶剂填充空出的空间。例子沿用已完成的乙醇加1个水分子簇,只新增CFF参考簇计算。
1. 下载与读取实际结果#
下载完整输入、实际输出、读取和绘图脚本,保存为 example.zip:
python3 -m zipfile -e example.zip .
cd crest-qcg-cavity-fill
bash read.sh
bash plot.sh
默认读取附带结果,CSV写入 analysis-read,图片写入 figures。这些命令不会重新提交计算。

2. 先有什么,再运行什么#
完整起点见QCG构象集合操作。该流程先准备溶质/溶剂、增长溶剂簇,再生成簇的构象集合。本例的这些步骤已经完成,输入保留在:
ls inputs/cff-energy/grow
ls inputs/cff-energy/ensemble
cat inputs/cff-energy/solute.xyz
cat inputs/cff-energy/water.xyz
水分子的输入为:
3
Own water starting geometry, Angstrom
O 0.0 0.0 0.0
H 0.9572 0.0 0.0
H -0.2399872 0.9272970 0.0
需要保留相匹配的 grow、ensemble、qcg_tmp 及分子文件。不能将其他分子、不同模型或不同水分子数的旧文件混用。本例日志明确识别了已有的1水簇和已有集合,没有再次执行生长或集合采样。
3. 提交默认CFF能量计算#
使用未改源码的个人CREST 3.0.3构建,GNU Fortran 13、MKL及内置GFN2接口。与其他现代CREST示例共用 ~/.local/ys-crest-tools/bin/crest;首次编译在已分配的CPU资源内执行:
bash build-private.sh
bash submit.sh
本次实际核心命令为:
crest solute.xyz --qcg water.xyz --nsolv 1 --gfn2 --samerand --T 1 --keepdir \
--md --mdlen 0.05 --tstep 1 --mddump 10 --enslvl gfn2 \
--gsolv --esolv --nclus 1
此处 crest 指个人3.0.3入口。CFF是默认路径,所以没有写 --nocff。本命令最后选择 --esolv,实际止于电子能量阶段;不能因为前面还出现了 --gsolv 就把结果称为包含RRHO修正的完整溶剂化自由能。
4. 为什么1个水变成了4个水#
grep -A22 'CUT-FREEZE-FILL Algorithm' reference-results/cff-energy/native.log
cat reference-results/cff-energy/solvent_ensemble/crest_best.xyz
--nsolv 1 是原始溶质簇外壳中的水分子数。本例去掉乙醇后,CFF实际又加入了3个水来填满空腔,最终参考簇含4个水、12原子。原始“乙醇加1水”也恰好是12原子,但两者元素组成不同,不能只凭原子数判断是同一个体系。
CFF对原壳层施加的约束也意味着该参考簇不能直接当作完全自由优化的四水全局最低构型。
5. 原始能量与归一化能量在哪里#
head -2 reference-results/cff-energy/solvent_ensemble/crest_best.xyz
cat reference-results/cff-energy/solvent_ensemble/cluster_energy.dat
cat reference-results/cff-energy/ensemble/cluster_energy.dat
本例三项输入到电子能量差的数值为:
| 项目 | 能量(Eh) |
|---|---|
| 乙醇加1水的簇 | −16.4728898210 |
| CFF四水簇原始能量 | −20.31984925 |
| 按原来1水归一化后的溶剂参考 | −5.0799623134 |
| 气相乙醇(屏幕显示精度) | −11.3943393 |
归一化方式为:
E_reference = E_filled × N_original_water / N_filled_water
= E_filled × 1 / 4
ESOLV = E_solute_cluster − E_reference − E_gas_solute
不能直接把四水簇原始能量代入1水的能量平衡。本次屏幕显示 ESOLV=+0.89 kcal/mol,用表中显示精度重建约+0.885913kcal/mol,两者差异来自输出小数位。
同一份最终Turbomole坐标的外部GFN2单点能为 −20.319849244245Eh,与原始四水簇标签相差约5.76×10⁻⁹Eh。下载能量分项CSV。
6. 怎样理解这个结果#
这是一个1水起点的短流程,用来学会文件、CFF步骤和参考能量的读取。正负号只能在本模型与本定义下解释,不能将它当作已经收敛的体相溶剂化自由能。
需要温度、振动与标准态等项时,继续参考QCG自由能与RRHO的实际操作;CFF与 --nocff 的溶剂参考处理不同,不应直接互换中间文件。
新任务完成后读取:
bash read.sh work-new
bash plot.sh