ATOMKIT专题

ATOMKIT 导出格式:30个入口怎么选

按目标程序选择结构格式,理解单位、占位符及当前版本的转换限制。

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

本例使用 ATOMKIT 0.9.0 官方 Linux 预编译程序,属于 VASPKIT 团队的结构工具,与同名 Python 包不同。集群通过 module load atomkit/0.9.0 使用;二进制含 GCC 9.4 与 Intel Fortran 运行库标记,完整上游编译参数未公开,不能据此指定一套完整编译链。ASE 辅助操作使用集群 ASE 3.29.0。短小结构处理在个人目录执行,不会自动开始 VASP 等计算。

下载本篇共用结构、命令、数据与作图包。解压后进入 atomkit-menu-examples;原生错误文件保留用于比较,请先看对应限制再使用。

先完成一次简单转换#

module load atomkit/0.9.0
cp inputs/POSCAR-Si POSCAR
atomkit

输入 113,再输入 175 POSCAR,得到 POSCAR.cif。113 是目标 CIF 格式,175 POSCAR 是源文件的格式与文件名。熟悉后可以直接记录输入:

printf '113
175 POSCAR
' | atomkit
ls -lh POSCAR.cif

下面的表覆盖当前导出菜单的 30 个入口。单位说明针对本例输出;能读出几何并不代表电子结构输入已经配齐。

编号 目标格式 本版使用要点
101 ABACUS STRU 晶格常数和原子坐标有各自单位标记;另配赝势、轨道和 INPUT
102 ABINIT 结构模板;另配赝势和计算参数
105 ASE Python 原生导出曾出现 Si 坐标错误;使用 CIF→ASE 路线
107 ATAT 前行是晶胞参数,后接单位坐标系和分数坐标;不是能量数据
109 AtomEye CFG ASE 独立读取晶胞与 8 个 Si 坐标一致
112 CASTEP CELL 结构部分;仍需 .param 和对应赝势
113 CIF 通用周期结构交换的优先选择之一
114 CP2K 结构模板;补 KIND、基组、势函数与方法
115 CPMD 晶胞和坐标使用 bohr;赝势文件一行仍是占位符
123 Elk 晶格向量为 bohr、原子为分数坐标;ASE 可读,原生再导入有问题
124 exciting XML 本例 speciespath 属性缺一个结束引号,原文件不能直接作为 XML 输入
126 DFTB+ HSD GenFormat 几何可由 ASE 读取;还缺 Hamiltonian、参数文件等
127 DMol3 INCOOR 本例原生程序异常退出,输出为空;改用 ASE
129 FHI-aims 读取 atom/atom_frac 标记区分坐标;另配 control.in
132 FLEUR 晶格尺度为 bohr;结构片段有旧式头部,不能视为完整 inpgen 输入
134 Gaussian 分子输入片段;明确电荷、多重度、方法与周期性是否丢失
136 LAMMPS 本版输出缺标题行;加标题后再读,原始文件单独保存
138 JDFTx 晶格为 bohr;默认 coords-type Lattice,ion 使用分数坐标
142 Octopus 本例部分 z 错用了 x;必须从正确结构重新生成坐标
144 OpenMX 几何一致,但 Sixxxx 基组名、X.X 自旋占位符必须填写
146 ORCA 分子结构;方法、电荷、多重度仍需按任务设置
149 PDB 输出可用 ASE 读几何;原生再导入会丢失或误识别元素
156 Quantum ESPRESSO 几何标记和单位要保留;另配赝势及计算控制
165 RSPt 晶格尺度为原子单位;这里只提供结构片段
168 SIESTA FDF 晶胞 Å,原子 Fractional;另配赝势及 SCF 参数
175 VASP POSCAR 保留元素顺序并与 POTCAR 一致;不能由结构推断 INCAR
180 Wannier90 WIN 仅 unit_cell_cart 与 atoms_frac;还需投影、k 点与 num_wann
182 WIEN2k STRUCT 几何数值一致,但缺 MULT/ISPLIT 与对称操作等完整结构项
185 XSF 周期结构交换;原生读写已在前篇给出
189 XYZ 常规 XYZ 仅表达元素和笛卡尔坐标,不能假定保留周期晶胞

单位核对的实际数值#

自有 Si 常规胞有 8 个原子,晶格常数 5.43 Å。CPMD、Elk、JDFTx 等输出的长度为 10.2612132839 bohr,乘以约 0.529177 Å/bohr,得到原来的 5.43 Å。第二个 Si 分数坐标 (0.25,0.25,0.25) 对应笛卡尔坐标 (1.3575,1.3575,1.3575) Å。

本批 15 个新增导出入口逐个运行;除 DMol3 空文件、Octopus 坐标错误外,另外 13 个入口的几何数值与源结构一致,其中 exciting 仍存在 XML 语法问题。其余早期入口的实际案例见结构转换基础。没有把这些片段作为 30 套完整的电子结构计算输入运行。

自有 Si 输出格式坐标对照与残差

图左展示真实 Octopus 导出错误,右侧是其他格式的几何读取残差。图中的通过阈值只用于结构一致性,不代表目标程序可直接计算。

三条实用的替代转换路线#

先进入工具包目录,用独立的 ASE 读取和写出结构:

module load ase/3.29.0
python - <<'PYCODE'
from ase.io import read, write
si = read('inputs/POSCAR-Si', format='vasp')
write('Si.incoor', si, format='dmol-incoor')
write('Si.py', si, format='py')
# Elk 导出可以用 ASE 读取,转成原生导入稳定的 CIF。
a = read('native-cases/format-exports/123/POSCAR.in', format='elk')
write('Si-from-Elk.cif', a, format='cif')
PYCODE

若你的模块环境中 python 未随 ASE 模块切换,可直接使用 /public/toolkit/miniconda3/envs/ase-3.29.0/bin/python。本包的 alternatives 已保存这些实际生成的结构。Octopus 坐标从正确 Si 分数坐标重新生成,不能仅给错误文件补一个标题。exciting 的替代文件只修复缺引号,未改变数值;仍需配置物种目录与电子结构计算参数。

bash results.sh
bash plot.sh

公开 CSV 为 Atomkit-export-formats.csv。更多输入操作见导入与晶体建模,全部菜单见功能导航。单位可参考 JDFTx coords-type 与 FLEUR inpgen。

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

查看配图

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

100%查看原图 ↗