The BerkeleyGW Package is a set of computer codes that calculates the quasiparticle properties and the optical responses of a large variety of materials from bulk periodic crystals to nanostructures such as slabs, wires and molecules. The package takes as input the mean-field results from various electronic structure codes such as the Kohn-Sham DFT eigenvalues and eigenvectors computed with PARATECQuantum ESPRESSOSIESTAPARSECAbinitOctopus, or TBPW (aka EPM). The package consists of the three main component codes:

  • Epsilon computes the irreducible polarizability in the Random Phase Approximation and uses it to generate the dielectric matrix and its inverse.
  • Sigma computes the self-energy corrections to the DFT eigenenergies using the GW approximation of Hedin and Lundqvist, applying the first-principles methodology of Hybertsen and Louie within the generalized plasmon-pole model for the frequency-dependent dielectric matrix.
  • BSE solves the Bethe-Salpeter equation for correlated electron-hole excitations.

When using BerkeleyGW, you are expected to cite the following papers and acknowledge the use of the BerkeleyGW package in your publications.

  • Mark S. Hybertsen and Steven G. Louie, “Electron correlation in semiconductors and insulators: Band gaps and quasiparticle energies,” Phys. Rev. B 34, 5390 (1986)
  • Michael Rohlfing and Steven G. Louie, “Electron-hole excitations and optical spectra from first principles,” Phys. Rev. B 62, 4927 (2000)
  • Jack Deslippe, Georgy Samsonidze, David A. Strubbe, Manish Jain, Marvin L. Cohen, and Steven G. Louie, “BerkeleyGW: A Massively Parallel Computer Package for the Calculation of the Quasiparticle and Optical Properties of Materials and Nanostructures,” Comput. Phys. Commun. 183, 1269 (2012) (

Papers #1 and #3 should be cited when discussing quasiparticle properties, and papers #2 and #3 should be cited when discussing optical properties.


A new code branch called “StochasticGW”  has been developed as a result of collaboration between the Neuhauser, Rabani and other Center groups. The software relies on the stochastic formalism and allows the calculation of quasiparticle energies within the GW approach for large systems with many thousands of atoms. The newly released StochasticGW code contains the following highlighted feature set:

  • The computational time scales linearly with the number of electrons. This is demonstrated on supercells of diamond and silicon with 10,978 valence electrons. The calculations for such large systems require less than 2,000 core-hours to reach a statistical error <0.05 eV on quasiparticle band-gaps.
  • StochasticGW calculates the self-energy through a real time propagation technique combined with stochastic sampling of the Hilbert space. The frequency dependent self-energy is computed as a statistical average.   Random vectors are used to represent the Green’s function, the screened Coulomb interaction and non-local operators.
  • A new method, Fragmented-Stochastic Resolution of the Identity, is used to convert the TDDFT propagation results into the required time-ordered quantity, allowing the computation of large systems with thousands of atoms.
  • StochasticGW comes with its own set of libraries; it was extensively tested on multiple computer clusters with both GCC, Intel and Lahey compilers. The parallel code has been tested on Cori Haswell and KNL nodes showing near perfect parallelization efficiency (>90%).

Some future directions for our codes in the next year will be on the development and release of GPU support targeting the Summit computer at Oak Ridge Lab, the optimization at scale of the multi-exciton methods developed in this Center, and the optimization and the release of a stochastic pseudobands generation tool at scale. The BerkeleyGW and StochasticGW applications will be brought together with common release schedules, file-formats and connected via a common application programming interface (API).