// readme

LibRPA

LibRPA is a library for efficient and accurate first-principles calculations based on many-body perturbation theory with numerical atomic orbitals (NAOs). It currently supports random-phase approximation (RPA) correlation-energy calculations and one-shot GW quasiparticle calculations for periodic systems.

By leveraging the localized resolution-of-identity (LRI) technique, LibRPA achieves low-scaling algorithms suitable for large-scale systems. It is implemented in C++ with MPI/OpenMP parallelism, provides C and Fortran interfaces, and can be integrated with density functional theory (DFT) codes through both file-based and API-based workflows.

[!NOTE] LibRPA is under active development, and its input/output interfaces are prone to change.

Features

  • RPA correlation-energy calculations and one-shot GW quasiparticle calculations
  • Low-scaling algorithms based on the localized resolution-of-identity (LRI) technique
  • Hybrid MPI/OpenMP parallelism
  • Driver-based and API-based interfaces for integration with external DFT codes

Requirements

LibRPA requires:

  • a C++ compiler with MPI support
  • a Fortran compiler
  • BLAS and LAPACK libraries
  • a ScaLAPACK…