https://www.quantum-espresso.org/
6.3
#!/bin/sh
VERSION=6.3
BASEDIR=/home/users/${USER}/Software/QE/${VERSION}
TARBALL=${BASEDIR}/q-e-qe-${VERSION}.tar.gzINSTDIR=/local/apl/lx/espresso63
#LIBXC=${INSTDIR}/libxc-4.2.3
WANT_LATEST=${BASEDIR}/want-latest.tar.gzPARALLEL=12
# --------------------------------------------------------------------
umask 0022module purge
module load intel_parallelstudio/2017update4export LANG=
export LC_ALL=C
# from $MKLROOT/tools/mkl_link_tool
MKL_SCALAPACK_LIBS=-"L${MKLROOT}/lib/intel64 -lmkl_scalapack_lp64 -lmkl_blacs_intelmpi_lp64 -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lpthread -lm -ldl"cd ${INSTDIR}
if [ -d q-e-qe-${VERSION} ]; then
mv q-e-qe-${VERSION} q-e-qe-erase
rm -rf q-e-qe-erase &
fitar zxf ${TARBALL}
mv q-e-qe-${VERSION}/* .
mv q-e-qe-${VERSION}/.[a-z]* .
rmdir q-e-qe-${VERSION}export MPIF90=mpiifort
export MPIFC=mpiifort
export MPIF77=mpiifort
export MPICC=mpiicc
export MPICXX=mpiicpcFC=ifort F90=ifort F77=ifort CC=icc \
FFLAGS="-O2 -assume byterecl -ip -g" BLAS_LIBS="-mkl=sequential" \
LAPACK_LIBS="-mkl=sequential" FFT_LIBS="-mkl=sequential" \
SCALAPACK_LIBS=$MKL_SCALAPACK_LIBS LDFLAGS="-static-intel" \
./configure --with-scalapack# MKL instead of FFTW and add libxc
#LIBXC_ESC=`echo ${LIBXC} | sed -e 's/\//\\\\\//g'`
#sed -i -e "s/D__FFTW3/D__DFTI -D__LIBXC/" \
# -e "/^LD_LIBS/s/$/ -L${LIBXC_ESC}\/lib -lxcf90 -lxc/" \
# -e "/^IFLAGS/s/$/ -I${LIBXC_ESC}\/include/" \
# make.inc
sed -i -e "s/D__FFTW3/D__DFTI/" make.inccp ${WANT_LATEST} archive
echo "==== plumed ===="
make -j${PARALLEL} plumed
for i in pw cp neb ph pp pwcond ld1 xspectra upf tddfpt; do
echo "==== $i ===="
make -j${PARALLEL} $i
donefor i in want gipaw yambo gwl; do
echo "==== $i ===="
make $i
done
# i couldn't understand the situation of west and d3q
WANNIER90_VER=2.1.0
cd install; make -f plugins_makefile uncompress-w90; cd ../
PWD_ESC=`pwd | sed -e 's/\//\\\\\//g'`
sed -i -e "/include/s/.*/include ${PWD_ESC}\/wannier90-${WANNIER90_VER}\/make.inc/" wannier90-${WANNIER90_VER}/src/Makefile.2
for i in epw w90 SternheimerGW couple; do
echo "==== $i ===="
make -j${PARALLEL} $i
donecd test-suite
make run-tests-serial
make clean
make run-tests-parallel
cd ..
全てパス。test-suite/userconfig で定義されるtoleranceのデフォルト値が変更されたことが主な原因のようです。