# 简介
ORCA 是一个免费使用的量子化学软件,与闭源 Gaussian 处于同一竞争位。更多信息可以参考 ORCA 6.1 文档。
# 安装
在官网 下载 ORCA,然后直接解压即可。注意,ORCA 下载需要使用学术邮箱进行注册。
tar -xvf orca_xxx_linux_x86-64.tar.gz |
解压后,需要将 ORCA 可执行文件的路径添加到环境变量 ~/.bashrc 中,也就是
export ORCA=<orca_path> | |
export PATH=$PATH:$ORCA |
随后,执行 source ~/.bashrc 来确保环境变量生效。然后可以执行 orca --help 来看看 ORCA 有没有成功安装。
# 入门使用
最简单的,是计算一下水分子。
新建一个文件 water.inp 如下:
!HF DEF2-SVP
* xyz 0 1
O 0.0000 0.0000 0.0626
H -0.7920 0.0000 -0.4973
H 0.7920 0.0000 -0.4973
*
然后执行
orca water.inp > water.out |
这样,日志会在 water.out 中生成。
# 多线程
ORCA 可以使用多线程给计算加速,多线程依赖 OpenMPI. 所依赖的 OpenMPI 版本在下载的 ORCA 安装包名称中显示。目前最新的 ORCA 6.1.1 依赖 OpenMPI 4.1.8. 安装方式如下:
pip install openmpi==4.1.8 |
此外,OpenMPI 需要依靠环境变量 LD_LIBRARY_PATH 寻找动态链接库。因此,为了使用 conda 环境中安装的特定版本 OpenMPI, 需要在命令行中执行:
export LD_LIBRARY_PATH=$CONDA_PREFIX/lib:$LD_LIBRARY_PATH |
这里需要注意的是,上述指令最好不要写到环境变量中。因为在使用 conda activate 切换环境时,此处的 $LD_LIBRARY_PATH 不会随之更新,可能会导致 OpenMPI 的运行版本隐患。
此外,在执行多线程时,最好使用 $ORCA/orca water.inp > water.out 命令,也就是说调用 ORCA 时使用带有绝对路径的方式进行调用,这里的 $ORCA 是我们之前定义的环境变量。虽然很神秘,但是的确有效果。
# 优雅使用 ORCA
ORCA 这种计算化学都有的一个问题是,容易产生一大堆计算的临时文件,又不会自动清理。而 ORCA 更令人失望的是,会在输入的 inp 文件夹内部产生这些临时文件。因此,我的使用方法是:
- 创建三个文件夹,分别是
./inp,./out,./temp. 其中./inp用于存放输入文件。 - 每一次需要进行计算时,将
./inp中的文件复制到./temp中,然后执行相应的命令。 - 执行完之后,将
./temp中的日志文件移动到./out中,并删除./temp中的所有文件。
# Reference
- ORCA 6.1 文档