PyCI: A Python-scriptable library for arbitrary determinant CI
Michelle Richer, Gabriela Sánchez‐Díaz, Marco Martínez González, Valerii Chuiko, Taewon David Kim, Alireza Mosleh Tehrani, Shuoyang Wang, Pratiksha B. Gaikwad, Carlos E. V. de Moura, Cassandra Masschelein, Ramón Alain Miranda‐Quintana, Augusto Gerolin, Farnaz Heidar‐Zadeh, Paul W. Ayers
PyCI is a free and open-source Python library for setting up and running arbitrary determinant-driven configuration interaction (CI) computations, as well as their generalizations to cases where the coefficients of the determinant are nonlinear functions of optimizable parameters. PyCI also includes functionality for computing the residual correlation energy, along with the ability to compute spin-polarized one- and two-electron (transition) reduced density matrices. PyCI was originally intended to replace the ab initio quantum chemistry functionality in the HORTON library but emerged as a standalone research tool, primarily intended to aid in method development, while maintaining high performance so that it is suitable for practical calculations. To this end, PyCI is written in Python, adopting principles of modern software development, including comprehensive documentation, extensive testing, continuous integration/delivery protocols, and package management. Computationally intensive steps, notably operations related to generating Slater determinants and computing their expectation values, are delegated to low-level C++ code. This article marks the official release of the PyCI library, showcasing its functionality and scope.
PyCI is a free and open-source Python library for setting up and running arbitrary determinant-driven configuration interaction (CI) computations, as well as their generalizations to cases where the coefficients of the determinant are nonlinear functions of optimizable parameters. PyCI also includes functionality for computing the residual correlation energy, along with the ability to compute spin-polarized one- and two-electron (transition) reduced density matrices. PyCI was originally intended to replace the ab initio quantum chemistry functionality in the HORTON library but emerged as a standalone research tool, primarily intended to aid in method development, while maintaining high performance so that it is suitable for practical calculations. To this end, PyCI is written in Python, adopting principles of modern software development, including comprehensive documentation, extensive testing, continuous integration/delivery protocols, and package management. Computationally intensive steps, notably operations related to generating Slater determinants and computing their expectation values, are delegated to low-level C++ code. This article marks the official release of the PyCI library, showcasing its functionality and scope.
Fanpy is a free and open-source Python library for developing and testing multideterminant wavefunctions and related ab initio methods in electronic structure theory. The main use of Fanpy is to quickly prototype new methods by making it easier to convert the mathematical formulation of a new wavefunction ansätze to a working implementation. Fanpy is designed based on our recently introduced Flexible Ansatz for N-electron Configuration Interaction (FANCI) framework, where multideterminant wavefunctions are represented by their overlaps with Slater determinants of orthonormal spin-orbitals. In the simplest case, a new wavefunction ansatz can be implemented by simply writing a function for evaluating its overlap with an arbitrary Slater determinant. Fanpy is modular in both implementation and theory: the wavefunction model, the system's Hamiltonian, and the choice of objective function are all independent modules. This modular structure makes it easy for users to mix and match different methods and for developers to quickly explore new ideas. Fanpy is written purely in Python with standard dependencies, making it accessible for various operating systems. In addition, it adheres to principles of modern software development, including comprehensive documentation, extensive testing, quality assurance, and continuous integration and delivery protocols. This article is considered to be the official release notes for the Fanpy library.
, where N is proportional to the system size. Therefore, performing accurate calculations on chemically meaningful systems requires (i) approximations that can lower the computational scaling and (ii) efficient implementations that take advantage of modern massively parallel architectures. Quantum Package is an open-source programming environment for quantum chemistry specially designed for wave function methods. Its main goal is the development of determinant-driven selected configuration interaction (sCI) methods and multireference second-order perturbation theory (PT2). The determinant-driven framework allows the programmer to include any arbitrary set of determinants in the reference space, hence providing greater methodological freedom. The sCI method implemented in Quantum Package is based on the CIPSI (Configuration Interaction using a Perturbative Selection made Iteratively) algorithm which complements the variational sCI energy with a PT2 correction. Additional external plugins have been recently added to perform calculations with multireference coupled cluster theory and range-separated density-functional theory. All the programs are developed with the IRPF90 code generator, which simplifies collaborative work and the development of new features. Quantum Package strives to allow easy implementation and experimentation of new methods, while making parallel computation as simple and efficient as possible on modern supercomputer architectures. Currently, the code enables, routinely, to realize runs on roughly 2 000 CPU cores, with tens of millions of determinants in the reference space. Moreover, we have been able to push up to 12 288 cores in order to test its parallel efficiency. In the present manuscript, we also introduce some key new developments: (i) a renormalized second-order perturbative correction for efficient extrapolation to the full CI limit and (ii) a stochastic version of the CIPSI selection performed simultaneously to the PT2 calculation at no extra cost.
PyCC is a Python-based quantum chemistry package that emphasizes coupled cluster and related methods. Developed over the last five years, PyCC's purpose is to provide a clear reference implementation that will serve as a validation suite for production code, a platform for rapid prototyping and testing of new methods, and an educational resource for newcomers to the field. The package covers both closed- and open-shell single-determinant references in spatial- and spin-orbital formulations for the coupled cluster hierarchy through triples-including methods such as CC3, as well as for MP2 and CI methods. PyCC provides a broad range of molecular properties such as analytic first and second energy derivatives including gradients, Hessians, polarizabilities and atomic polar tensors, as well as non-energy-derivative properties, such as velocity-gauge atomic polar tensors and diagonal Born-Oppenheimer corrections, plus dynamic linear response functions, and excitation energies. The package includes a number of unique capabilities, such as real-time CC propagation (up through CC3), atomic axial tensors for simulating vibrational circular dichroism spectra at the MP2 and CI levels, and local correlation methods including perturbation-aware correlation domains. The code is designed around a shared Wavefunction base and a method-agnostic derivative layer that enables a new method to inherit the full property set once it supplies its reduced densities and their first-order responses. PyCC is fully open source and available on GitHub under the BSD 3-clause license.
Fanpy is a Python library for developing new wavefunction methods. It enables users to quickly convert mathematical expressions into working code through a modular design based on the Flexible Ansatz for N-electron Configuration Interaction (FANCI) theory. This architecture facilitates a straightforward extension of the codebase. Here we present version 2.0 of the Fanpy package. This release includes several new wavefunction implementations, including coupled- cluster-inspired geminal approaches. A new analysis module enables a more detailed inspection of computational results and lays the groundwork for future features. In addition, the PySCF interface has been redesigned, and an interface to the PyCI package has been introduced to offload computationally expensive components. Finally, we introduce an improved software development environment, including automated testing and issue tracking.
Psi4NumPy demonstrates the use of efficient computational kernels from the open-source Psi4 program through the popular NumPy library for linear algebra in Python to facilitate the rapid development of clear, understandable Python computer code for new quantum chemical methods, while maintaining a relatively low execution time. Using these tools, reference implementations have been created for a number of methods, including self-consistent field (SCF), SCF response, many-body perturbation theory, coupled-cluster theory, configuration interaction, and symmetry-adapted perturbation theory. Furthermore, several reference codes have been integrated into Jupyter notebooks, allowing background, underlying theory, and formula information to be associated with the implementation. Psi4NumPy tools and associated reference implementations can lower the barrier for future development of quantum chemistry methods. These implementations also demonstrate the power of the hybrid C++/Python programming approach employed by the Psi4 program.
Recent developments in the ChronusQuantum (ChronusQ) software package highlight its advanced capabilities in simulating quantum dynamics of both electrons and nuclei, accurately accounting for relativistic and correlation effects, and leveraging high-performance implementations tailored for modern heterogeneous, massively parallel computing architectures. ChronusQ is an open-source tool released under the GNU General Public License v2, designed to solve complex problems in ab initio electronic structure theory. It is developed by a collaborative team across leading research universities and is renowned for its integrated time-dependent quantum mechanical theories, spectral analysis tools, and variational relativistic frameworks. With support from the Office of Advanced Cyberinfrastructure and the Division of Chemistry at the National Science Foundation, the team has expanded ChronusQ's capabilities in several significant directions. We have developed the nuclear-electronic orbital time- dependent configuration interaction (NEO-TDCI) method, which enables accurate treatment of hydrogen tunneling and double excitations—cases where multiconfigurational approaches are essential. Additionally, we introduced the polarizable continuum model and gauge-invariant atomic orbitals, both compatible with NEO, to simulate solvent effects and magnetic properties. ChronusQ has also significantly advanced its relativistic simulation toolkit with the implementation of a four-component relativistic framework, offering a robust foundation for simulating the quantum behavior of heavy atoms, where relativistic effects are particularly pronounced. Building on this, ChronusQ now integrates relativistic coupled cluster (CC) framework and the distributed active space (DAS) framework, providing highly accurate treatments of electron correlation. Key modules in the NEO, CC, and DAS frameworks are implemented with MPI and GPU-parallelized computation. Notably, our DAS framework has set a new benchmark by surpassing the quadrillion-determinant barrier in a numerically exact configuration interaction method. This year, we also enhanced the user and developer experience by redesigning ChronusQ's module structure to support flexible extension and integration of existing features, reliable restart of interrupted calculations, and seamless interfacing with other computational chemistry software. The physical insights enabled by ChronusQ continue to drive innovations in sustainable energy, catalysis, quantum computing, and other domains with immediate societal impact.