QMCPACK’s capabilities include the following:

  • Auxilary Field Monte Carlo
  • Variational Monte Carlo
  • Diffusion Monte Carlo
  • Reptation Monte Carlo
  • Single and multi-determinant Slater Jastrow wavefunctions
  • Wavefunction updates using optimized multi-determinant algorithm of Clark et al.
  • Backflow wavefunctions
  • One, two, and three-body Jastrow factors
  • Excited state calculations via flexible occupancy assignment of Slater determinants
  • All electron and non-local pseudopotential calculations
  • Casula T-moves for variational evaluation of non-local pseudopotentials
  • Wavefunction optimization using the “linear method” of Umrigar and co-workers, with arbitrary mix of variance and energy in the objective function
  • Gaussian, Slater, plane-wave and real-space spline basis sets for orbitals
  • Interface and conversion utilities for plane-wave wavefunctions from Quantum Espresso (PWSCF)
  • Interface and conversion utilities for Gaussian-basis wavefunctions from GAMESS, PySCF, and Quantum Package (QP)
  • Easy extension and interfacing to other electronic structure codes via standardized XML and HDF5 inputs
  • MPI parallelism
  • Fully threaded using OpenMP
  • GPU (CUDA) implementation (limited functionality)
  • HDF5 input/output for large data
  • Nexus: advanced workflow tool to automate all aspects of QMC calculation from initial DFT calculations through to final analysis
  • Analysis tools for minimal environments (perl only) through to python-based with graphs produced via matplotlib.

Although primarily used for electronic structure problems, within QMCPACK the Hamiltonian definition is very flexible and also suited to some model systems.

For a full description see the current documentation or QMCPACK citation paper.