-
Notifications
You must be signed in to change notification settings - Fork 4
Home
Welcome to the official documentation for Fanpy, a free, open-source, cross-platform Python 3 library for ab initio electronic structure calculations. Fanpy is a tool designed for researchers and developers exploring novel wavefunction-based approaches to solve chemical problems.
Visit our group website: Miranda Quintana Group.
Fanpy is built upon the mathematical framework of the Flexible Ansatz for N-electron Configuration Interaction (FANCI):
[ | \Psi_{\mathrm{FANCI}} \rangle = \sum_{\mathbf{m} \in \mathbf{S_m}} f\left( \mathbf{m}, \vec{P} \right) | \mathbf{m} \rangle ]
Here:
- ( \mathbf{S_m} ) is a set of allowed Slater determinants.
- ( f(\mathbf{m}, \vec{P}) ) determines the weight of each Slater determinant ( \mathbf{m} ), parameterized by ( \vec{P} ).
The FANCI ansatz provides a flexible wavefunction structure applicable to various electronic structure methods, including:
- Configuration Interaction (CI)
- Coupled-Cluster (CC)
- Tensor Product States (TPS)
- Antisymmetrized Product of Interacting Geminals (APIG)
Fanpy empowers researchers to develop, implement, and test novel electronic structure methods. Unlike traditional quantum chemistry software designed for well-established methods, Fanpy offers:
- Customizability: Design and experiment with new wavefunctions to tackle unique chemical problems.
- Research Support: Transition seamlessly from theoretical formulation to practical implementation.
Fanpy's design is inspired by the FANCI framework, featuring a modular structure with five key components:
- Hamiltonian Module: Defines the system's energy and properties.
- Wavefunction Module: Manages various wavefunction ansatz.
- Objective Module: Constructs optimization objectives for parameter fitting.
- Solver Module: Solves the defined optimization problems.
- Tools Module: Provides utility functions for pre- and post-processing.
This modularity offers two key benefits:
- Flexibility: Combine wavefunction ansatz and methods in a "sandbox-like" environment.
- Ease of Development: Streamline the process of implementing new theories and algorithms.
Figure: Overview of Fanpy's Modular Structure.
For detailed insights into Fanpy's mathematical and theoretical foundations, refer to the following publications:
We welcome contributions! Please see our Contributing Guidelines for more information.
Feel free to open an issue on our GitHub repository or contact us directly through the Miranda Quintana Group.
Fanpy is developed by the Miranda Quintana Group.