CHAMP

The Cornell-Holland Ab-initio Materials Package (CHAMP) is a quantum Monte Carlo package for electronic structure calculations of molecular systems

Claudia Filippi (UT, The Netherlands), Saverio Moroni (SISSA/CNR, Italy);
As part of TREX: Ravindra Shinde (UT), Stuart Shepard (UT), Ramon Panades (UT)

The Cornell-Holland Ab-initio Materials Package (CHAMP) is a quantum Monte Carlo package for electronic structure calculations of molecular systems. CHAMP has three basic capabilities: variational Monte Carlo (VMC), diffusion Monte Carlo (DMC) and optimization of many-body wave functions by energy minimization for ground and excited states. The optimization can be carried out in a state-specific or state-average fashion for multiple states of the same symmetry. Noteworthy features of CHAMP are the compact formulation for a fast evaluation of multi-determinant expansions and their derivatives, the efficient computation of analytical interatomic forces, and the implementation of multiscale schemes for QMC calculations in classical point charges (MM), polarizable continuum model (PCM), and polarizable force fields (MMpol).

Video

Learn more about the TREX Code: CHAMP from Claudia Filippi - Project Coordinator, University of Twente

Watch now

Current Stage and Next Steps

Current Stage: in the last year, CHAMP transitioned from Fortran77 to Modern Fortran and was equipped with a modern and user-friendly Fortran parser based on the libfdf library developed within E-CAM CoE. The TREXIO library was integrated in CHAMP for interoperability within the TREX platform and efficient I/O of large wave-function files in HDF5 format. An extensive test set was added to the package. Upon profiling with the MAQAO tools, the first steps for improving vectorization were taken with a resulting speedup of 25%. On the methodological side, state-specific optimization for excited states was implemented. 

Next Steps: we will proceed with further modernization (e.g. reorganization of moduli to facilitate future development, removal of unused codes), profiling, and optimization of CHAMP as well as the creation of the full documentation for users/developers. We will also interface CHAMP to QMCkl kernels.