本文的主要内容有:
- ORCA简介
- 安装ORCA依赖关系
- 安装ORCA
- 检查ORCA是否安装成功
- 如何优雅快捷地使用ORCA
ORCA 是什么
ORCA是一款对学术用户免费但不开源的量子化学程序;它主要由Frank Neese设计开发,是包含了从头计算、DFT、半经验方法和耦合簇的量子化学程序包。ORCA可以处理溶剂化和相对论效应,同时特别着重于开壳层分子的光谱计算;可以进行几何优化计算,以及预测大量的不同理论级别的光谱参数。
ORCA支持多个平台,包括Windows、Linux和Mac OS。由于利用Mac OS来进行量化计算的人群较小,本文不涉及Mac上的安装方法。本文发表时,ORCA最新的版本是4.2.1。
大家如果希望了解如何入门ORCA,可以查看ORCA开发者Frank Neese自己写的ORCA快速入门指南,我已经将其翻译成了中文。
准备工作
在安装ORCA之前,我们首先需要安装几个ORCA依赖的软件。
Open MPI (Linux)
在Linux下,ORCA的并行计算能力依赖于特定版本的Open MPI。比如ORCA 4.2.1就依赖于Open MPI 3.1.4(注意,这一般不是最新版本!)。ORCA的安装文件名里一般都会指明自己依赖于什么软件,安装ORCA前请大家先确定好自己希望安装的ORCA版本对应的Open MPI版本号。Open MPI官网往往会提供老版本的下载。本文下载使用的是openmpi-3.1.4.tar.gz。
下载完后,进入文件所在的目录,使用以下命令解压文件:
1 | tar -zxvf openmpi-3.1.4.tar.gz |
再进入解压出来的文件夹:
1 | cd openmpi-3.1.4 |
再进行配置,指定文件安装的位置(假设是/home/randomuser/openmpi314):(若不指定,则会自动安装在/usr/local)
1 | ./configure --prefix=/home/randomuser/openmpi314 --disable-builtin-atomics |
上面的命令会生成一个Makefile
,我们再以此进行编译、安装:(请依次执行下列命令)
1 | make all |
最后,如果你机器的shell是bash,就在.bashrc
中加上下面几句:
1 | export PATH=$PATH:/home/randomuser/openmpi314/bin |
最后运行mpiexec -V
检查是否输出正确的Open MPI版本号,如果正确,则已经安装完成。如果输出的是一个比较老的版本,那么你的机器里很有可能已经安装了一个比较老的版本。如果是你有足够的权限,那么可以将老的版本删除,倘若没有,那么可以像这样修改你的.bashrc
:
1 | export PATH=/home/randomuser/openmpi314/bin:$PATH |
Microsoft MPI (Windows)
在Windows下,ORCA的并行计算能力依赖于Microsoft MPI。和前面类似,特定的ORCA版本会要求特定的Microsoft MPI版本,比如ORCA 4.2.1需要Microsoft MPI 10.0以后版本。
Microsoft MPI官网可以下载到安装文件,本文中使用的文件可在此处下载。
Microsoft MPI的安装非常简单,无脑下一步就可以了。
ORCA 安装文件的获取
ORCA官网和ORCA论坛是绑定的。你可以选择进入官网注册新用户,登陆后进入论坛,页面上方有Download按钮,进去就可以下载了。
不过注册账号需要一定的上网技巧,国内的同志们可能会感到一些不方便,同时从官网下载也非常慢。这里我事先下载好了ORCA在三个平台上的版本,并存放到网盘里了,提取码是sulq
。大家可以去那里下载。
Zstandard
如果你下载了orca_4_2_1_linux_x86-64_shared_openmpi314.tar.zst
这种以.zst
为拓展名的文件,就必须再下载一个叫zstd的软件来解压。下面我们以Linux系统为例来看看怎么安装并使用这个软件。
首先去往该软件的官方发布页面,下载最新的版本,本文里的例子是zstd-1.4.4.tar.gz
。
解压完文件后仍旧使用Makefile
来进行安装。安装好后我们使用下列命令来解压我们的ORCA安装包:(如果你没有将zstd的目录加入PATH,也可以直接用完整路径)
1 | zstd --decompress orca_4_2_1_linux_x86-64_shared_openmpi314.tar.zst |
随后解压我们得到的.tar
文件:
1 | tar -xvf orca_4_2_1_linux_x86-64_shared_openmpi314.tar |
这样,我们就做好了安装ORCA前的所有准备工作。
安装 ORCA 并检查
Windows用户建议直接下载并安装.exe
的安装文件,下载会比较快。直接双击安装即可。
Linux用户将下载好的文件解压完成后就已经安装完成。
下面来检查是否安装成功,将下面的内容复制到一个文本文档里并将其重命名为test.inp
:
1 | ! BLYP D3 def2-TZVP def2/J noautostart miniprint nopop |
在Windows中假设解压完后的目录是D:\ORCA421
,那么运行ORCA的方法是在命令行(Windows Powershell也一样)中,先进入test.inp
所在的目录,再运行以下命令:
1 | D:\ORCA421\orca test.inp > test.out |
在Linux中,如果解压完的目录是/home/randomuser/ORCA421
,就在test.inp
所在的目录运行以下命令:
1 | /home/randomuser/ORCA421/orca test.inp >& test.out & |
检查输出的test.out
内容看起来是否正常,最后是否有****ORCA TERMINATED NORMALLY****
这一段,如果这两点都满足,那么ORCA就安装完成了。
当然,每次都输入绝对路径是非常累的,在这里也提供一些省力的方法。
在Windows下,你可以写一个runorca.bat
文件,文件内容如下:(假设你将自己的ORCA输入文件放在E:\ORCAfile
下)
1 | D:\ORCA421\orca "E:\ORCAfile\test.inp" > "E:\ORCAfile\test.out" |
这样只要每次改一改文件名就可以了。或者你也可以使用cmder等第三方命令行工具。
利用cmder可以令ORCA在Windows下的使用明显更方便,cmder是一个第三方的文本终端。首先去https://cmder.net下载Full版的cmder,然后解压到你平时安装应用程序的目录。之后进入操作系统的命令行窗口,在cmder的目录下,输入Cmder.exe /REGISTER ALL。从此在任意目录下点右键选cmder Here即可进入cmder命令行窗口,并且当前路径就是此文件夹。启动cmder窗口后,在cmder的标题位置点右键选Settings,在General页面里选择{bash::bash as Admin},然后把cmder关了。从此之后,新开的cmder终端里的命令写法就和Linux的Bash环境下一样了,连awk、vi等常用工具都有。用文本编辑器打开cmder安装目录下的config\user_profile.sh,添加一行比如alias oo='D:/study/orca420/orca',这里oo是你启动ORCA想用的自定义命令,后面是ORCA可执行文件路径。这样,进入cmder后就可以使用比如oo Roselia.inp |tee RAS.out来调用ORCA运行.inp文件,输出的信息不仅显示在屏幕上还同时输出到RAS.out里,比起在Windows的cmd或者powershell里运行ORCA方便省事得多。
在Linux下,只需要再次修改你的.bashrc
即可:
1 | alias orca=/home/randomuser/ORCA421/orca |
如果你是在公共服务器上使用ORCA,那么nohup
命令将会很有用,它能让ORCA在你登出后继续进行计算。像上面那样更改过你的.bashrc
后,就可以这样输入命令:
1 | nohup orca test.inp >& test.out & |