内容发布更新时间 : 2024/11/13 8:34:37星期一 下面是文章的全部内容请认真阅读。
quantum-espresso安装
quantum-espresso(原先叫pwscf)十分容易安装,至少比同类的CPMD, cp2k容易多了,作为一个后起之秀,解决了很多前一代软件安装上的问题。
首先我假定你有一台AMD多核(4核或6核)的台式机,i7-6核更好;当然最好的是1280核的cluster神码的;
其次,必须装Linux, 没听说过在windows下跑quantum-espresso的,就像火车必须上火车道。火车不是不能在大马路上跑,只是那样不叫一个事儿;如果你不会 Linux操作,现学,单机装Ubuntu,上手很快的;如果你从来没装过,马上请周围懂Linux的朋友20分钟即可装好Ubuntu,再学一些基本命令行操作;千万不能被一些本来很容易办到的事情吓住,对吧。
安装过程大致是这样的,1.下载;2.解压;3.编译;4.测试 一步一步来,没有搞不成的; 1.下载
这里我教个更简单的下载方法,打开Ubuntu linux命令行终端窗口terminal,在Linux 命令提示符$或>后面输入: $wget http://qe-forge.org/frs/download.php/167/espresso-4.3.2.tar.gz $wget http://qe-forge.org/frs/download ...3.2-examples.tar.gz
如果提示找不到wget那就先安装wget和curl。 Ubuntu Linux下: $ sudo apt-get install wget
$ sudo apt-get install curl (运行测试会用到)
注意你打开终端窗口以后,当前目录为/home/xxxx xxxx为你的用户名。 2. 解压
下载完后,输入:
$ tar zxfv espresso-4.3.2.tar.gz
$ tar zxfv espresso-4.3.2-examples.tar.gz
解压完成后会生成一个espresso-4.3.2的目录,进入 $ cd espresso-4.3.2
3. 串行编译
编译前先安装gfortran
$ sudo apt-get install build-essential gcc gfortran
然后自动配置 $ ./configure
然后编译 $ make all
(出去溜达10分钟,再洗个澡,换件衣服)
然后就会在当前目录下生成一个bin目录,里面就是所有编译好的可执行文件,全部以.x结尾; 你要执行它们,以pw.x为例,一般是:
$ /home/xxxx/espresso-4.3.2/bin/pw.x < input.file > output.file (把input.file/output.file换成你的实际的输入输出文件名;)
为了不用每次都输入pw.x前面的绝对路径,可以把这个路径加入到环境配置文件.bashrc中; .bashrc文件在用户根目录“/home/xxxx”下面; $cd 就回到了; $ gedit .bashrc 在最下面加入一行
export PATH=$PATH:/home/xxxx/espresso-4.3.2/bin
保存关闭,然后source一下生效(每次开机会自动source,无须再次source) $ source .bashrc
配置好路径后,每次调用pw.x直接 $ pw.x < input > output 即可 4. 测试
$ cd espresso-4.3.2/tests $ ./check-pw.x.j
这个用来测试是否全部功能正常,注意出错提示;
一般来说,只要常用的pw.x ph.x功能正常,或者你用的功能正常就好;用不到功能出错,没必要去折腾;
运行全部examples
$ cd .. 回到espresso-4.3.2下 $ cd examples $ ./run_all_examples
5. 并行编译
先安装并行编译器和并行编译库openmpi, 最简单的方法是打开Ubuntu的软件中心,搜索openmpi然后点install会自动配置好的,超级easy; 否则手动
$ sudo apt-get install openmpi-bin 然后
$ ./configure $ make all
如果没有错误,完成后在bin下得到并行版的pw.x等可执行文件;注意这样会覆盖掉之前安装的串行版的pwscf;
执行的话,一般是(假如用4个核来跑) $ mpirun -np 4 pw.x < input > output 效率大大提高!
如果你在干净的Ubuntu Linux下按照上述步骤,一般不会出错;这得益于quantumespresso强大的自动配置 ./configure会自动检测当前是否有并行环境,是否安装了数学库lapack, FFT,如果没找到,就自动调用自带的库(下载的压缩文件中自动包含了!)
如果你安装了intel编译器,反而会更麻烦一些,因为openmpi自动与Ubuntu自带的gfortran结合,而不与intel的ifort结合,导致intel并行编译出错;欲用openmpi+intelifort/MKL,那就的卸掉openmpi,然后手动重新编译intel版的openmpi,折腾。
并行版的测试与串行版类似,唯一不同点是运行./check-pw.x.j和./run_all_examples之前,修改 espresso-4.3.2/examples目录下面的environment_variables文件,把 #PARA_PREFIX=\PARA_PREFIX=\修改成
PARA_PREFIX=\#PARA_PREFIX=\
把2换成你要并行的核数,比如4。
如果在configure或make all的过程出错,这个很正常,也很难预料是什么样的错误,那你可以来这里报告,或者去maillist上搜搜解决方法。一般你遇到的问题,都是别人遇到过上百次的;