Installation

Requirements

Installation

Pip

Using pip can easy install the release version (serial) of QEpy from PyPI:

$ python -m pip install qepy

Note

Install the QEpy using pip only support serial version. If want to run parallel version or use some custom features, please install QEpy from source.

Source

You can download the QEpy source file from gitlab.

git clone --recurse-submodules https://gitlab.com/shaoxc/qepy.git
python -m pip install ./qepy

or with all features:

tddft=yes python -m pip install ./qepy

Example on Ubuntu 22.04

sudo apt-get update
sudo apt-get install --upgrade -y make git python3-dev python3-pip wget
sudo apt-get install --upgrade -y gcc gfortran libblas-dev liblapack-dev libopenmpi-dev libfftw3-dev
git clone --depth=1 -b qe-7.2 https://gitlab.com/QEF/q-e.git
cd q-e
./configure CFLAGS=-fPIC FFLAGS='-fPIC -fallow-argument-mismatch' MPIF90=mpif90 --with-scalapack=no BLAS_LIBS='-lblas' LAPACK_LIBS='-llapack'
make all -j 8
make all -j 8
cd ..
git clone --recurse-submodules https://gitlab.com/shaoxc/qepy.git
qedir=`pwd`/q-e/ python3 -m pip install -U ./qepy

Tips

  • Environment variable qedir should be the absolute path of QE, which contains the make.inc file. If not set qedir, the installation will download the QE code from gitlab and automatically compile it.

  • If not clone the submodules in the beginning, can update through:

    git submodule update --init --recursive
    
  • Set the variables can help you customize your build.

    e.g.

    • tddft=yes” support real-time TDDFT by using ce-tddft.

Install the QE

The QE should be compiled before QEpy with the -fPIC (position-independent code) compiler option. Add -fPIC to the configuration options. E.g.,

./configure CFLAGS=-fPIC FFLAGS=-fPIC

Then,

make all
export qedir=`pwd`

More examples for QE

./configure FFLAGS='-fPIC -fallow-argument-mismatch' CFLAGS=-fPIC
./configure FFLAGS='-fPIC -fallow-argument-mismatch -ff2c -fno-second-underscore' CFLAGS='-fPIC -arch arm64' CPP='gcc -E' LDFLAGS=-headerpad_max_install_names

Note

Because QEpy still under active development, non-backward-compatible changes can happen at any time. Please, clone the lastest release often.