CREST专题

CREST QCG阶段复用:已有团簇如何继续用

实测读取已有grow目录,说明3.0.2的阶段恢复与扩大溶剂数的区别,提供不覆盖旧结果的操作。

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

QCG会识别已有的grow/cluster.coord,但读取一个已完成的团簇阶段,和在小团簇上继续追加溶剂,是两种不同操作。本篇按集群CREST 3.0.2的实际行为说明。

1. 先看实测结果#

下载CREST小溶剂团簇资料包,保存为example.zip:

python3 -m zipfile -e example.zip .
cd crest-qcg-small-clusters
bash results.sh
bash read.sh
bash plot.sh

先读已保存的实际结果,图片位于figures/,CSV在data/;不需要重新运行搜索。

cat data/QCG-energy-reuse-controls.csv

本次把已经完成的乙醇加2个水团簇复制到独立目录,再以相同溶质、溶剂和--nsolv 2启动--grow。程序识别已有的2个溶剂分子,正常结束,约0.47秒;没有重新做对接生长,cluster.coord内容保持相同。

2. 先复制阶段,再操作#

从资料包根目录运行:

mkdir reuse-qcg
cp inputs/ethanol-water-2/solute.xyz reuse-qcg/
cp inputs/ethanol-water-2/water.xyz reuse-qcg/
cp -a reference-results/growth/ethanol-water-2/grow reuse-qcg/

先在根目录准备本例环境和配置路径:

source /etc/profile.d/lmod.sh
module purge
module load crest/3.0.2
export XTBPATH="$PWD/inputs/config:/public/software/xtb/6.7.1/linux-x86_64/share/xtb"

以下核心命令应放入自己的Slurm脚本,在reuse-qcg/执行:

crest solute.xyz --qcg water.xyz --grow --nsolv 2 --gfn2 --samerand --T 1 --keepdir

资料包的run.slurm已经自动包含一次相同的正向阶段复用,不需要另外在登录节点运行计算。

复用时让溶质、溶剂和数量与已有阶段匹配。若目录中还有后续的构象集合等阶段,切回较早任务模式可能清理后续结果;因此先复制所需阶段到独立目录操作。具体阶段关系可参考官方QCG恢复说明。

3. 想从2个水扩大到3个水#

集群3.0.2的对应代码尚未实现从较小团簇接着增长到更大--nsolv的路径。不要在原目录里直接把2改成3,使用新的空目录重新准备输入:

mkdir qcg-three-water
cp inputs/ethanol-water-2/solute.xyz qcg-three-water/
cp inputs/ethanol-water-2/water.xyz qcg-three-water/

自己的Slurm脚本在这个新目录运行:

crest solute.xyz --qcg water.xyz --grow --nsolv 3 --gfn2 --samerand --T 1 --keepdir

这是新任务的操作模板,本包实算的是1、2个水,没有把3个水列为已完成结果。新目录不带旧的grow/,从输入分子建立指定大小的团簇。

4. 阶段复用不是完整MD续算#

本篇验证的是QCG已经完成的生长阶段识别,不是坐标、速度与随机状态逐步连续的MD续算。普通动力学及其重启文件请使用CREST动力学与续算教程。

--ensemble、--gsolv属于QCG后续构象/自由能阶段。本篇没有把单个12或15原子团簇的电子能当成这些完整流程的结果;本例结构与能量的具体含义见团簇文件与能量。

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

查看配图

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

100%查看原图 ↗