QMCPACK, is a modern high-performance open-source Quantum Monte Carlo (QMC) simulation code. Its main applications are electronic structure calculations of molecular, quasi-2D and solid-state systems. Variational Monte Carlo (VMC), diffusion Monte Carlo (DMC) and a number of other advanced QMC algorithms are implemented. By directly solving the Schrodinger equation, QMC methods offer greater accuracy than methods such as density functional theory, but at a trade-off of much greater computational expense.
QMCPACK is written in C++ and designed with the modularity afforded by object-oriented programming. It makes extensive use of template metaprogramming to achieve high computational efficiency. Due to the modular architecture, the addition of new wavefunctions, algorithms, and observables is relatively straightforward. For parallelization QMCPACK utilizes a fully hybrid (OpenMP,CUDA)/MPI approach to optimize memory usage and to take advantage of the growing number of cores per SMP node or GPUs. High parallel and computational efficiencies are achievable on the largest supercomputers. Finally, QMCPACK utilizes standard file formats for input and output in XML and HDF5 to facilitate data exchange.
A partial list of capabilities is given here (Capabilities).
The primary and original author of the code is Jeongnim Kim. Developers, contributors, and advisors include:
- A. Benali (ANL): Blue Gene optimizations
- K. Esler: einspline, CUDA port, improved numerical algorithms, tools
- J. Kim: overall framework and majority of the code
- J. Krogel (ORNL): Nexus automation tools
- J. McMinis: optimization and advanced QMC drivers
- M. Morales (LLNL): implementation of advanced wavefunctions
- L. Shulenburger (SNL): tools
Over the years many others have contributed, particularly students and postdocs in the groups of D. M. Ceperley and R. M. Martin at University of Illinois. See the coauthors of the QMCPACK citation paper, https://doi.org/10.1088/1361-648X/aab9c3
The development of QMCPACK has been funded by
- U.S. Department of Energy, Office of Science, Basic Energy Sciences, Materials Sciences and Engineering Division, as part of the Computational Materials Sciences Program and Center for Predictive Simulation of Functional Materials.
The Exascale Computing Project (17-SC-20-SC), a collaborative effort of the US Department of Energy Office of Science and the National Nuclear Security Administration.
“Network for ab initio many-body methods: development, education and training“ supported through the Predictive Theory and Modeling for Materials and Chemical Science program by the Basic Energy Science, the U.S. Department of Energy (DOE).
QMC Endstation, supported by Accelerating Delivery of Petascale Computing Environment At the DOE Leadership Computing Facility at ORNL, DOE.
PetaApps, supported by the U. S. National Science Foundation.
- Materials Computational Center, supported by the U.S. National Science Foundation.
We also acknowledge the OLCF and ALCF for help and support in accessing their resources, as part of a DOE INCITE, ALCC and Director’s Discretionary allocation grants supported by US Department of Energy and NCSA, TACC and NICS for providing resources as a part of NSF TeraGrid/XSEDE allocation grants.