VTST专题

VTST去除原子重叠实操

使用pushapart处理过近原子,检查备份、距离与后续结构优化的衔接。

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

拼接结构或构造路径后,原子距离过小会影响后续计算。pushapart.pl用人工排斥作几何预处理,之后还应使用实际计算方法优化结构。

下载输入、实际输出、CSV和脚本,先查看已完成的结果:

python3 -m zipfile -e vtst-geometry-cube-modes-wave968-*.zip .
cd vtst-geometry-cube-modes
bash read.sh
bash plot.sh

这两步只读取和绘图,不重新执行工具。版本为VTST scripts1040;Perl模块由vtstscripts/1040提供,数据读取使用ASE3.29.0与NumPy。结构是可公开重建的Si₂斜晶胞教学例,没有新增DFT能量计算。

需要自己重新执行整套小例子时,使用新的解压目录:

module load vtstscripts/1040
python3 setup_cube.py
python3 prepare.py
bash run.sh
bash read.sh work-new
bash plot.sh

setup_cube.py在个人目录生成匹配版本的三次Cube取样脚本,不改变公共安装。已有work-new时保留结果、换新目录。本例为小规模文件处理,大网格处理应按集群规则申请CPU资源。

1 看原始结构#

本例在斜晶胞中放置两个间距仅0.4 Å的Si原子,目标是分到至少1.0 Å。这是几何工具例,不将输出称为稳定晶体或平衡结构。

cat inputs/overlap/POSCAR

2 设置最小间距#

pushapart.pl 1.0 POSCAR

1.0的单位是Å。程序将原输入备份为POSCAR.orig,把新坐标写回POSCAR:

ls work-new/overlap
cat work-new/overlap/POSCAR.orig
cat work-new/overlap/POSCAR

真实体系应结合元素、成键与建模目的选择间距,不把1.0 Å当成通用阈值。

3 查看实际变化#

本例两原子从0.4 Å分到1.0 Å,晶胞和原子数不变,几何中心保持不变。没有对应的新DFT能量或受力收敛结果;程序中的“relaxed”指这一步人工排斥过程。

原始重叠与实际处理后的距离

head -n 15 analysis-read/VTST-native-tool-geometry.csv

按case=overlap筛选坐标。含固定层或复杂周期接触的结构,还应检查约束与所有近邻距离,再继续实际结构优化。

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

查看配图

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

100%查看原图 ↗