A python package for quantum chemistry/physics to manipulate many-body operators and wave functions.
Project description
QuantNBody : a python package for quantum chemistry/physics to manipulate many-body operators and wave functions.
QuantNBody is a python package facilitating the implementation and manipulation of quantum many-body systems composed of fermions or bosons. It provides a quick and easy way to build many-body operators and wavefunctions and get access (in a few python lines) to quantities/objects of interest for theoretical research and method developments. This tool can be also of a great help for pedagogical purpose and to help illustrate numerical methods for fermionic or bosonic systems.
We provide below a non-exhaustive list of the various possibilities offered by the package:
- Visualizing the structure of any wavefunction in a given many-body basis (for fermionic and bosonic systems)
- Building 1-body, 2-body (...) reduced density matrices (for fermionic and bosonic systems)
- Building Spin operators $S^2$, $S_Z$, $S_+$ expressed in a many-body basis (for fermionic system)
- Building model Hamiltonians e.g. Bose-Hubbard, Fermi-Hubbard ( parameters given by the user )
- Building molecular ab initio Hamiltonians (needs psi4 to provide the electronic integrals)
- ...
To illustrate how to use this package, several example codes and tutorials have been implemented to help the new users (see the ''Tutorials'' folder). Particularly, we show how to employ the tools already implemented to develop and implement famous many-body methods such as :
- FCI : Full Configuration Interaction (for bosonic and fermionic systems)
- CAS-CI : Complete Active Space CI (for fermionic systems)
- SA-CASSCF : State-Averaged CAS Self-Consistent Field with orbital optimization (for fermionic systems)
- ...
Installing the package (in development mode)
To install the latest version of QuantNBody in a quick and easy way:
git clone https://github.com/SYalouz/QuantNBody.git
cd QuantNBody
python -m pip install -e .
Note that you'll need to install the Psi4 package before installing QuantNBody. For this we redirect the user to the following link:
- Psi4 installations : Using conda, see also the following link
Once the package is fully installed, you can run some tests to check if everything was correctly done. For this, go the the testing folder and run the following line in your terminal:
python TESTS.py
Tutorials
Different examples and tutorials are furnished in the Tutorials repository under the form of Jupyter notebooks or python scripts.
How to contribute
We'd love to accept your contributions and patches to QuantNBody. There are a few small guidelines you need to follow.
All submissions require review. We use GitHub pull requests for this purpose. Consult GitHub Help for more information on using pull requests. Furthermore, please make sure your new code comes with documentation.
Support
If you are having issues, please let us know by posting the issue on our Github issue tracker.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file quantnbody-1.1.1.tar.gz.
File metadata
- Download URL: quantnbody-1.1.1.tar.gz
- Upload date:
- Size: 36.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.11.3 pkginfo/1.8.3 requests/2.28.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3bcca494f82054d1230a91556d56a2ffadf34a438db7c70074f649af12304300
|
|
| MD5 |
fc916e3950b4d0268e29c0bc2e4cc39e
|
|
| BLAKE2b-256 |
a200075a925e5ce38a0df0c753feb0573ed2574485abe855fd94076c5fe7af1b
|
File details
Details for the file quantnbody-1.1.1-py3-none-any.whl.
File metadata
- Download URL: quantnbody-1.1.1-py3-none-any.whl
- Upload date:
- Size: 38.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.11.3 pkginfo/1.8.3 requests/2.28.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4e5f73c70874fd0e6ce1f64a11136f34993197e19fd71b87ca9b7cf22f3178fa
|
|
| MD5 |
f8eed908ecbd12b61a1e3f02552c79a8
|
|
| BLAKE2b-256 |
d6e1b9f6157f811aed605b3eb6fff403d57c342baa1d9e18d580e108c9d95080
|