Skip to content

QEF/postqe

Repository files navigation

postqe

Postqe is a Python package to perform postprocessing calculations for results obtained with the Quantum Espresso (QE) code1. The package provides Python functions to post-process the results, such as plotting the charge density (or the bare/Hartree/total potentials) on 1D or 2D sections, fitting the total energy with Murnaghan Equation of State (EOS), etc. The package also exposes some QE functionalities in Python using the F2PY code 2 and wrappers to generate Python modules from QE dynamically linked libraries.

It is meant to be imported in your own Python code or used from the command line (see the Tutorial part of this documentation). It is also meant for people who want to tinker with the code and adapt it to their own needs. The package is based on numpy, scipy and matplotlib libraries.

Current features of the package include:

  • Fit the total energy Etot(V) with Murnaghan's equation of state
  • Calculate and plot the electronic band structure
  • Calculate and plot the electronic density of states (DOS)
  • Plot 1D or 2D sections of the charge density
  • Plot 1D or 2D sections of different potentials (Hartree, exchange-correlation, etc.)

Package requirements

There are some non-Python packages required to be installed in your system before installing postqe:

Fortran compiler:

Maybe gfortran on a Gnu Linux platform for free or another commercial package, like PGI or Intel Fortran.

Lapack development libraries:

the basename of this package should be lapack-devel on a RHEL-based system or liblapack-dev on a Debian-based system.

FFTW3 development libraries:

the basename of this package should be fftw-devel on a RHEL-based system or libfftw3-dev on a Debian-based system.

Installation

Download all package's files from GitHub (unpack the downloaded archive or clone the repository).

You also have to download Quantum ESPRESSO v7.2 sources by your own and then unpack the archive in another directory. Then provide the variable QE_TOPDIR to the install command, setting it with the path of the directory containing the Quantum ESPRESSO sources.

If you are in a virtual environment you can install it with the command:

QE_TOPDIR=<path-to-QE-sources-base-dir> pip install .

Otherwise avoid system wide installations with root privileges but install it in user-space with the command:

QE_TOPDIR=<path-to-QE-sources-base-dir> pip install . --user

Usage

The most useful functions for the user are directly accessible. You can import all of them as:

from postqe import *

or you can import only the ones you need. The above command also makes available a number of useful constants that you can use for unit conversions.

More functions are available as submodules. See the related documentation for more details. Note, however, that most of these functions are less well documented and are meant for advanced users or if you want to tinker with the code.

Authors

Mauro Palumbo Davide Brunato Pietro Delugas

License

This software is distributed under the terms of the LGPL-2.1 license. See the file 'LICENSE' in the root directory of the present distribution, or https://opensource.org/licenses/LGPL-2.1 .


  1. http://www.quantum-espresso.org/

  2. https://docs.scipy.org/doc/numpy-dev/f2py/