p†q: a tool for prototyping many-body methods for quantum chemistry
Abstract
p q is a C++ accelerated Python library designed to generate equations for many-body quantum chemistry methods and to realise proof-of-concept implementations of these equations for rapid prototyping. Central to this library is a simple interface to define strings of second-quantised creation and annihilation operators and to bring these strings to normal order with respect to either the true vacuum state or the Fermi vacuum. Tensor contractions over fully-contracted strings can then be evaluated using standard Python functions (e.g. NUMPY's einsum). Given one- and two-electron integrals, these features allow for the rapid implementation and assessment of a wide array of many-body quantum chemistry methods.
- Publication:
-
Molecular Physics
- Pub Date:
- November 2021
- DOI:
- 10.1080/00268976.2021.1954709
- arXiv:
- arXiv:2106.06850
- Bibcode:
- 2021MolPh.11954709R
- Keywords:
-
- Physics - Chemical Physics
- E-Print:
- doi:10.1080/00268976.2021.1954709