CHPC Software: Quantum Espresso
Quantum Espresso (QE) is an integrated suite of computer codes for electronic-structure calculations and
materials modeling at the nanoscale. It is based on density-functional theory, plane
waves, and pseudopotentials (both norm-conserving and ultrasoft). The website for
QE is http://www.quantum-espresso.org. GPU versions are available, please contact the CHPC help desk at helpdesk@chpc.utah.edu if you need access to these versions. Also included is the GIPAW software for calculating
NMR and EPR parameters.
Also, please note that under the Rocky 8 OS we have encountered various problems with
various QE versions. The version listed below seems to be the most stable. If you
encounter problems with this version use the module spider quantum-espresso
command to try other versions.
To Use:
The most stable QE seems to be built with the Intel compiler and MVAPICH2:
ml intel-oneapi-compilers/2021.4.0 mvapich2/2.3.7 quantum-espresso/7.0
This build will work on the InfiniBand network CHPC clusters, kingspeak, notchpeak
or ash. For Lonepeak, try to replace the mvapich/2.3.7
module with intel-oneapi-mpi/2021.1.1
.
The following line gives and example of how to run pw.x under SLURM:
mpirun -np $SLURM_NTASKS pw.x -inp input > output
Note that the QE developers recommend the use of "-inp" for supplying input, and not the standard redirects.
For constructing inputs and analyzing outputs the java program J-ICE is recommended. CHPC also has python scripts available for converting to and from CIF format; please contact helpdesk@chpc.utah.edu for more information.
Please find an example script written in bash, and an example input file at /uufs/chpc.utah.edu/sys/installdir/qe/examples
The example slurm script is duplicated below for convenience:
#!/bin/bash
#SBATCH -t 3:00:00
#SBATCH -N 1
#SBATCH -n 16
#SBATCH -A owner-guest
#SBATCH -p kingspeak-guest
#SBATCH -o qe-%j
#Put the names of your input files in this list
#Names are separated by a space; make sure there's
#a space between the parentheses and the names
NAME=qe-input.in
#The data directory is where your input files are located
export DATADIR=/uufs/chpc.utah.edu/common/home/u0123458/qe-inputs/
#Make sure that the scratch path matches the path in your input files
export SCRATCH=/scratch/kingspeak/serial/u0123458/test/
#########################################################
# Don't edit stuff below this line
# Bad things will happen
#########################################################
module purge
module load intel-oneapi-compilers/2021.4.0 mvapich2/2.3.7 quantum-espresso/7.0
mkdir -p $SCRATCH
echo "Evaluating $NAME at `date`"
mpirun -np $SLURM_NTASKS pw.x -inp $DATADIR/$NAME > $DATADIR/$NAME.$SLURM_JOB_ID.out
echo "Finished $NAME at `date`"