Last week we submitted the molsturm design paper titled Towards quantum-chemical method development for arbitrary basis functions. This manuscript is a condensed summary of the arguments about design and implementation of a basis-function independent self-consistent field scheme (SCF) already presented in my PhD thesis.
Our approach to a basis-function-independent electronic structure theory code is to employ contraction-based methods for solving the Hartree-Fock (HF) problem. The idea of this ansatz is to avoid storing the Fock matrix, i.e. the matrix representation of the operator underlying the HF problem, in memory. Instead one focuses on only employing optimised expressions for the product of this matrix with a set of trial vectors in the SCF procedure for solving HF. As the paper discusses in more detail this is possible, since all SCF algorithms known to us can be performed based upon iterative procedures, which only require a matrix-vector product.
An advantage of the contraction-based SCF is that the basis-function-dependent structure of the Fock matrix can be hidden inside the expression for the matrix-vector product. As a result the SCF code becomes independent of the basis function choice and new basis functions can be added to our SCF procedure in a plug and play fashion just by linking to appropriate integral libraries. The abstract of the paper reads
We present the design of a flexible quantum-chemical method development framework, which supports employing any type of basis function. This design has been implemented in the light-weight program package
molsturm, yielding a basis-function-independent self-consistent field scheme. Versatile interfaces, making use of open standards like
python, mediate the integration of
molsturmwith existing third-party packages. In this way both rapid extension of the present set of methods for electronic structure calculations as well as adding new basis function types can be readily achieved. This makes
molsturmwell-suitable for testing novel approaches for discretising the electronic wave function and allows comparing them to existing methods using the same software stack. This is illustrated by two examples, an implementation of coupled-cluster doubles as well as a gradient-free geometry optimisation, where in both cases, an arbitrary basis functions could be used.
molsturmis open-source and can be obtained from http://molsturm.org.
Michael F. Herbst, Andreas Dreuw and James E. Avery.
Towards quantum-chemical method development for arbitrary basis functions.
Published in Journal of Chemical Physics, 149, 84106 (2018).
[DOI 10.1063/1.5044765] [arXiv:1807.00704] [code] [further details]