QUANTUM ESPRESSO v7.1 修改版安装

Posted by Xiehua on July 1, 2022

QUANTUM ESPRESSO的安装

  1. 安装好intel OneAPI编译器,使用下列命令挂载上Intel OneAPI的环境。
1
2
3
4
5
6
7
8
9
10
11
source /share/home/zw/xiehua/opt/modules-5.0.0/init/profile.sh
export MODULEPATH=/share/home/zw/xiehua/modulefiles

module purge
module use /share/home/zw/xiehua/opt/intel/oneapi2022/modulefiles
source /share/home/zw/xiehua/opt/intel/oneapi2022/setvars.sh

module load GCC/9.5.0
module load mkl/latest
module load mpi/latest
module load compiler/latest

直接挂载intel OneAPI的modulefile可能会在编译时遇到调用libc库时出现问题。需要使用

1
source /share/home/zw/xiehua/opt/intel/oneapi2022/setvars.sh

来设置一些环境变量,并使用module load GCC/9.5.0来使用较新版本的GCC。

  1. 安装libxc libxc-5.2.3-intel 安装(使用intel OneApi 2022.2能正常安装)
1
2
3
4
5
6
7
8
tar -zxvf libxc-5.2.3.tar.gz
cd libxc-5.2.3
mkdir /share/home/zw/xiehua/opt/libxc-5.2.3-intel

./configure --prefix=/share/home/zw/xiehua/opt/libxc-5.2.3-intel CC=icc FC=ifort
make 
make check
make install

write modulefiles:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#%Module######################################################################
proc ModulesHelp { } {
 puts stderr "\t libxc-5.2.3 compile with Intel OneApi 202202\n"
 puts stderr "\t \n"
}

module-whatis "\tFor more information, \$module help libxc/5.2.3\n"

conflict libxc

set LIBXC_ROOT /share/home/zw/xiehua/opt/libxc-5.2.3-intel

prepend-path LD_LIBRARY_PATH ${LIBXC_ROOT}/lib
prepend-path INCLUDE ${LIBXC_ROOT}/include
prepend-path CPATH ${LIBXC_ROOT}/include

unset LIBXC_ROOT

# Installed by xiehua, 20220610
##############################################################################
  1. tar -zxvf qe-7.1-ReleasePack.tgz

  2. cd qe-7.1
  3. ./configure
1
./configure MPIF90=mpiifort CC=icc CPP=icpc --enable-openmp --enable-parallel --with-scalapack=intel LDFLAGS=-static --with-libxc --with-libxc-prefix='/share/home/zw/xiehua/opt/libxc-5.2.3-intel'

Note: LDFLAGS=-static该参数可能会导致报错。CPP=icpc的设置可能会导致预处理时出问题。openmp可能会导致并行的效率降低,最好编译两种版本,进行对比测试。

  1. make -j20 all

    1
    2
    3
    4
    5
    
    make epw
    make w90
    make want
    make gipaw  
    make yambo
    
  2. 编译成功后,将仓库https://github.com/xh125/QE-changecode/tree/main/QE_change_code/v7.1中的PW/src和EPW/src中的代码复制到QE的源码路劲中进行替换,再重新编译,可以直接输出Wannier计算时输入文件中需要的结构内容,以及在EPW中电声耦合矩阵元和费米能量的输出保留到小数点后十位以及在epw.out中输出vmef的值,用于后续自编代码LVCSH的输入文件。