VAMPyR-A high-level Python library for mathematical operations in a multiwavelet representation

J Chem Phys. 2024 Apr 28;160(16):162502. doi: 10.1063/5.0203401.

Abstract

Wavelets and multiwavelets have lately been adopted in quantum chemistry to overcome challenges presented by the two main families of basis sets: Gaussian atomic orbitals and plane waves. In addition to their numerical advantages (high precision, locality, fast algorithms for operator application, linear scaling with respect to system size, to mention a few), they provide a framework that narrows the gap between the theoretical formalism of the fundamental equations and the practical implementation in a working code. This realization led us to the development of the Python library called VAMPyR (Very Accurate Multiresolution Python Routines). VAMPyR encodes the binding to a C++ library for multiwavelet calculations (algebra and integral and differential operator application) and exposes the required functionality to write a simple Python code to solve, among others, the Hartree-Fock equations, the generalized Poisson equation, the Dirac equation, and the time-dependent Schrödinger equation up to any predefined precision. In this study, we will outline the main features of multiresolution analysis using multiwavelets and we will describe the design of the code. A few illustrative examples will show the code capabilities and its interoperability with other software platforms.