About#

EPWpy is an open-source python code which wraps EPW code for automated calculations. EPWpy provides python objects with methods that can be used to automate DFT+EPW calculations using Quantum Espresso and EPW.EPWpy also provides a series of visualization utilities for plotting various quantities. EPW is a F90/MPI code which calculates properties related to the electron-phonon interaction using Density-Functional Perturbation Theory and Maximally Localized Wannier Functions. The name is derived from the words "Electron-phonon Wannier" which refer to the Wannier-Fourier interpolation method employed by the code. The development of EPWpy is led by Sabyasachi Tiwari, Feliciano Giustino, and the EPW, EPWpy-collaboration.

The most recent reference technical manuscript is:

S. Tiwari, B. Cucco, M. Zacharias, J-L. Bartolome, S. Mishra, W. Yang, V-A. Ha, S. Ponce, E. Kioupakis, R. Margine, and F. Giustino, “EPWpy: A python program for ab-initio many-body calculations”, Unpublished (2024).

The EPWpy code is written by Sabyasachi Tiwari (EPWpy v1.0) while in the Giustino group at the University of Texas at Austin.

As of Dec 2025, the EPWpy Collaboration includes: Sabyasachi Tiwari, Bruno Cucco, Kyle Yu, Adam Denchfield, Tae Yun Kim, Viet-Anh Ha, Jon Lafuente-Bartolomé, Shashi Mishra, Marios Zacharias, Wooil Yang, Sungyeb Jung, Kaifa Luo, Eugene Park, Samuel Poncé, Emmanouil Kioupakis, Roxana Margine, and Feliciano Giustino.

EPWpy is developed under git within the EPW GitLab portal.

Computing electron-phonon properties with EPWpy#

Currently EPWpy supports all functionalities which EPW can compute. EPW can be used to compute:

  • The total electron-phonon coupling strenght

  • The anisotropic Eliashberg spectral function

  • The transport spectral function

  • The anisotropic superconducting gap within the Eliashberg theory

  • The electron and phonon self-energies arising from the electron-phonon interaction

  • The phonon linewidths and lifetimes arising from the electron-phonon interaction

  • The electron linewidths and lifetimes arising from the electron-phonon interaction

  • The temperature-dependence of the carrier lifetimes

  • The spectral functions needed for the calculation of ARPES spectra

  • The temperature-dependent electron and hole mobility within the Boltzmann transport formalism

  • Magnetortransport coefficients such as the Hall mobility

  • Small and large polarons

  • Indirect phonon-assisted optical absorption

  • Temperature-dependent properties using the special displacement method

  • Direct plus indirect phonon-assisted absorption within quasidegenerate perturbation theory

Current interfaces in EPWpy#

Currently, EPWpy interfaces EPW with Quantum Espresso and BerkeleyGW. EPWpy also interfaces with Wannier90. The methods for BerkeleyGW implemented in EPWpy are the following:

  • epsilon

  • sigma

  • sigma2wan

  • kernel

  • absorption