Skip to content

Initial Release

Choose a tag to compare

@qtm-iisc qtm-iisc released this 22 Oct 15:35
· 17 commits to main since this release

We present Quantum MASALA (Quantum MAterialS Ab initio eLectronic-structure pAckage), a compact package that implements different electronic-structure methods in Python using the plane-wave basis. Within just 8100 lines of pure Python code, we have implemented Density Functional Theory, Time-dependent Density Functional Theory and the GW Method. The program can run across multiple processors and in Graphical Processing Units (GPU) with the help of easily-accessible Python libraries. With Quantum ESPRESSO and BerkeleyGW input interfaces implemented, it can also be used as a substitute for small- and medium-scale calculations, making it a perfect learning tool for ab initio methods. The package is aimed to provide a framework with its modular and simple code design to rapidly build and test new methods for first-principles calculation.

Features:

  • Kohn-Sham Density functional theory
    • Multiple levels of parallelization using MPI: k-points, bands and G-space.
    • Mostly CPU-GPU agnostic. GPU code via CuPy.
    • Supports Quantum ESPRESSO input file format.
    • Supports ONCV pseudopotentials.
    • Supports interactive usage via IPython/Jupyter notebooks.
    • Multiple eigensolver backends available: Davidson, PRIMME.
    • Multiple FFT backends supported: PyFFTW, MKL FFT, NumPy, SciPy
  • GW Approximation
    • Currently supports gapped systems.
    • Methods available for self-energy calculation:
      • Hartree-Fock approximation
      • Static Coulomb hole - Screened exchange approximation
      • Hybertsen-Louie Plasmon Pole
    • The module implements MPI-based q-grid parallelization.
    • The module supports BerkeleyGW input file format.
    • Currently symmetry reduction of k/q points is not supported.
  • Time-dependent density functional theory
    • Real time propagation of time-dependent density functional theory.
    • Supports Enforced Time-Reversal Symmetry and the split-operator propagation methods.
    • G-space parallelisation.