php软件安装包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 /frs/download.php/167/espresso-4.3.
$wget /frs/download ...3.
如果提示不到wget那就先安装wget和curl。 Ubuntu Linux下:
$ sudo apt-get install wget
$ sudo apt-get install curl (运行测试会用到)
注意你打开终端窗口以后,当前目录为/home/xxxx
xxxx为你的用户名。
2. 解压
下载完后,输入:
$ tar zxfv espresso-4.3.
$ tar zxfv espresso-4.3.
解压完成后会生成一个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
$ ./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,折腾。
并行版的测试与串行版类似,唯一不同点是运行./j和./run_all_examples之前,修改 espresso-4.3.2/examples目录下面的environment_variables文件,把
#PARA_PREFIX="mpirun -np 2"
PARA_PREFIX=""
修改成
PARA_PREFIX="mpirun -np 2"
#PARA_PREFIX=""
把2换成你要并行的核数,比如4。
如果在configure或make all的过程出错,这个很正常,也很难预料是什么样的错误,那你可以来这里报告,或者去maillist上搜搜解决方法。一般你遇到的问题,都是别人遇到过上百次的;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论