Skip to content

TQC-Antwerp/nonlinear-electron-phonon-spectral-function

 
 

Repository files navigation

Summary

PhonoPy postprocessing code to calculate the 1-electron-2-phonon spectral function from first principles, useful for long-range nonlinear electron phonon interaction. The code accompanies the following publication: M. Houtput, L. Ranalli, C. Verdi, S. Klimin, S. Ragni, C. Franchini, and J. Tempere, First-principles theory of nonlinear long-range electron-phonon interaction. Phys. Rev. B 111, 184320 (2025). DOI: https://doi.org/10.1103/PhysRevB.111.184320. Open-source article available at https://arxiv.org/abs/2412.09470.

Dependencies

1e2ph-spectral is fully written in Python and requires the following external python libraries:

  • numpy
  • scipy
  • matplotlib
  • pyyaml
  • joblib
  • itertools
  • warnings

Basic usage

Code

  • main.py reproduces all figures from arXiv:2412.09470. Set recalculate=True to explicitly recalculate the 1-electron-2-phonon spectral functions; otherwise, this data is read from the precalculated results directory.
  • minimal_example.py generates the basic figures for LiF to illustrate the basic usage of the code
  • phonopyReaders.py contains all functions and classes that interface with the PhonoPy data. See minimal_example.py or main.py for example usage.
  • pathsLabels.py contains a method that contains information for the high-symmetry paths of cubic Brillouin zones.

Directories

  • data contains the relevant output data from PhonoPy, ultimately derived from first-principles calculations in VASP.
  • plots contains the figures generated by main.py.
  • results contains .npz files that contain the numerical data of calculated 1-electron-2-phonon spectral functions, which is read by main.py.

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%