RASPA 设置攻略 – 简介
RASPA 设置攻略 – 简介

RASPA 设置攻略 – 简介

IMG_6713

@tkaray RASPA 相关内容遵循原作者授权协议, 本文简译和注释内容遵循 CC-BY-NC 4.0 协议共享.

本文是 RASPA manual 的中文简译, 带有一些个人补充的注释内容. 部分内容没有特别合适的翻译则会使用英文原文. 限于能力所限本文的内容可能有部分纰漏, 请酌情参考. 所有补充的注释内容均使用以下方法标记:

Note: 建议使用 Linux 和 macOS 安装.

Part 1. 简介

RASPA是由 Randall Q. Snurr, Sofia Calero, David Dubbeldam, T.J.H. Vlugt 等研究者开发的经典模拟软件包, 可以用于模拟气体, 流体, 沸石, 硅铝酸盐, MOF, 碳纳米管等材料.

引用文献: (来自于 GitHub 的介绍页)

  • D. Dubbeldam, S. Calero, D.E. Ellis, and R.Q. Snurr, "RASPA: Molecular Simulation Software for Adsorption and Diffusion in Flexible Nanoporous Materials",
    Mol. Sim., 42 (2), 81-101, 2016.
    link to article
  • D. Dubbeldam, A. Torres-Knoop, and K.S. Walton, "On the Inner Workings of Monte Carlo Codes",
    Mol. Sim. (special issue on Monte Carlo) 39(14-15), 1253-1292, 2013.
    link to article
  • D. Dubbeldam and R.Q. Snurr, "Recent developments in the molecular modeling of diffusion in nanoporous materials",
    Mol. Sim., 33 (4-5), 305-325, 2007.
    link to article
  • D. Dubbeldam, K.S. Walton, T.J.H. Vlugt, and S. Calero, "Design, Parameterization, and Implementation of Atomic Force Fields for Adsorption in Nanoporous Materials",
    Adv. Theory Simulat., 2(11), 1900135, 2019.
    link to article

安装, 编译与运行

自行编译

RASPA 是由 C 语言写成的, 因此需要一个 gcc 或 icc 编译器.

Note: 建议使用 Linux / macOS 系统运行()

export RASPA_DIR=/path/to/environment/root
rm -rf autom4te.cache  
mkdir m4  
aclocal  
autoreconf -i  
automake --add-missing  
autoconf  
./configure --prefix=${RASPA_DIR}  
# or ./scripts/CompileScript/make-gcc-local  
make  
make install  

Note: cd 到对应目录后直接运行即可. RASPA_DIR 为目标安装位置.

使用 Conda-forge 源

也可以使用 Anaconda 的方式安装预编译版本.

conda install -c conda-forge raspa2
export RASPA_DIR=/path/to/environment/root
# e.g. export RASPA_DIR=/Users/leopold/Applications/miniconda3/envs/raspa-env

Note: Conda-forge 版本的软件本体在 /path/to/anaconda3/envs/envs-name/bin/simulate, 支持文件在 /path/to/anaconda3/envs/envs-name/share/raspa下. 因此, RASPA_DIR 环境变量设置位置应当位于虚拟环境目录处, 此时和自行编译的情况相同.

Note: (2022年3月5日记) 即使使用 conda-forge 源的预编译方法安装, 也应该下载 GitHub 版本, 因为其中有一些教学示例 demo 是预编译方法未提供的. 此外, GitHub 源目前仅含有部分 example forcefield & molecules, 但 conda-forge 源有更多示例用的力场和小分子文件. 因此, 建议两个都装, 然后合并到一处.

Note: 还需要注意的是, 所有的教学示例 demo 均指定了~目录下的文件夹, 如果不想每次运行示例都改提交文件, 请在家目录对对应位置使用 ln -s 建立软链接.

文档编译与下载

虽然 GitHub 中提供了 tex 编译的选项, 但是有已经编译好的版本在 iRASPA 的主页: Link

运行

Note: RASPA的运行需要多个文件. 其中, simulation.input 文件控制运行过程, 一个运行脚本负责设置环境变量和调用主程序 simulate. 具体内容可以查看示例. 运行过程如果需要使用 mpi, 则应当在运行前添加 mpirun 指令. 暂不清楚开启 openMPI 编译后使用 intelMPI 运行是否会报错, 和安装时保持一致就好了.

使用 AiiDA 调用

Note: 通过安装 AiiDA 框架和交互组件 aiida-raspa 可以实现基于 Python 的控制. 具体方法可以查看 aiida-raspa 的 GitHub repo 的 demo.

Part 2. 文件设置

工程文件的种类

  • simulation.input

    包含模拟类型, 模拟的步数, 骨架名字, 晶胞数目, 使用的小分子, Monte-Carlo 行动 (move) 类型等控制词条.

  • structure-name.cif

    如果使用了一个骨架 (如沸石和 MOF), 则需要提供一个 CIF 文件, 该文件名的前半部分需要在 simulation.input 中进行指定.

  • pseudo_atoms.def

    列举使用的赝原子的信息, 包括电荷和质量等. 一般情况下赝原子代表一个原子, 但也可能代表一个小基团 (比如 -CH3). 由于 CIF 文件会提供原子信息, 因此在 CIF 中列举的原子并不需要在赝原子列表中进行规定, 当读取 CIF 文件时原子信息将自动加入到该列表中. 如果在赝原子中也提供了原子信息, 那么该文件中的数据将被优先读取.

  • force_field_mixing_rules.def 和 force_field.def

    赝原子列表中每个原子所使用的力场参数. 这些参数包括 Van der Waals potential 类型和其他参数, 如是否使用尾部校正 (tail correction), 是否在 cutoff 之后将作用置零, 还有 mixing rule 的类型等.

    在文献中报道的力场参数主要包括两种类型, 第一种会提供每个原子的势能参数和 mixing rule 的列表, 第二种则会提供原子对和参数. 第一种对应 force_field_mixing_rules.def, 第二种则对应 force_field.def. 其中, force_field.def 的优先级高于 force_field_mixing_rules.def.

发表回复

您的电子邮箱地址不会被公开。