QuantNBody

QuantNBody: a Python package for quantum chemistry and physics to build and manipulate many-body operators and wave functions. - Published in JOSS (2022)

https://github.com/syalouz/quantnbody

Science Score: 93.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 8 DOI reference(s) in README and JOSS metadata
  • Academic publication links
    Links to: joss.theoj.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
    Published in Journal of Open Source Software

Scientific Fields

Mathematics Computer Science - 40% confidence
Last synced: 6 months ago · JSON representation

Repository

QuantNBody : a python package for quantum chemistry/physics to manipulate many-body operators and wave functions.

Basic Info
  • Host: GitHub
  • Owner: SYalouz
  • License: apache-2.0
  • Language: Jupyter Notebook
  • Default Branch: main
  • Homepage:
  • Size: 14.9 MB
Statistics
  • Stars: 13
  • Watchers: 1
  • Forks: 4
  • Open Issues: 1
  • Releases: 2
Created about 4 years ago · Last pushed 12 months ago
Metadata Files
Readme License

README.md

[](https://quantnbody.readthedocs.io/en/latest/)

DOI License

QuantNBody : a python package for quantum chemistry/physics to manipulate many-body operators and wave functions.

[ ](https://quantnbody.readthedocs.io/en/latest/)

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$, $SZ$, $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:

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.

How to cite

When using QuantNBody for research projects, please cite our reference paper :

Yalouz et al., (2022). QuantNBody: a Python package for quantum chemistry and physics to build and manipulate many-body operators and wave functions.. Journal of Open Source Software, 7(80), 4759, https://doi.org/10.21105/joss.04759

We are happy to include future contributors as authors on later releases.

Owner

  • Name: Saad Yalouz
  • Login: SYalouz
  • Kind: user

I am a quantum physicist/chemist with an expertise in quantum computing, quantum many-body systems and open quantum system theory.

JOSS Publication

QuantNBody: a Python package for quantum chemistry and physics to build and manipulate many-body operators and wave functions.
Published
December 15, 2022
Volume 7, Issue 80, Page 4759
Authors
Saad Yalouz ORCID
Laboratoire de Chimie Quantique, Institut de Chimie, CNRS/Université de Strasbourg, 4 rue Blaise Pascal, 67000 Strasbourg, France
Martin Rafael Gullin
Laboratoire de Chimie Quantique, Institut de Chimie, CNRS/Université de Strasbourg, 4 rue Blaise Pascal, 67000 Strasbourg, France
Sajanthan Sekaran
Laboratoire de Chimie Quantique, Institut de Chimie, CNRS/Université de Strasbourg, 4 rue Blaise Pascal, 67000 Strasbourg, France
Editor
Jarvist Moore Frost ORCID
Tags
quantum physics and chemistry quantum many-body systems exact diagonalization

GitHub Events

Total
  • Watch event: 3
  • Push event: 2
  • Pull request event: 1
  • Create event: 1
Last Year
  • Watch event: 3
  • Push event: 2
  • Pull request event: 1
  • Create event: 1

Committers

Last synced: 7 months ago

All Time
  • Total Commits: 579
  • Total Committers: 10
  • Avg Commits per committer: 57.9
  • Development Distribution Score (DDS): 0.311
Past Year
  • Commits: 9
  • Committers: 3
  • Avg Commits per committer: 3.0
  • Development Distribution Score (DDS): 0.444
Top Committers
Name Email Commits
Saad Yalouz 5****z 399
zenbook m****1@g****m 157
guillaume rouaut r****t@u****r 6
EvenChiari c****n@g****m 5
Pablo-R0 p****o@o****r 3
Lucie Pepe l****e@M****l 3
saadyalouz 5****z 2
Kyle Niemeyer k****r@f****m 2
Quentin Marecat q****t@g****m 1
Lucie Pepe l****e@d****r 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 5
  • Total pull requests: 16
  • Average time to close issues: 30 days
  • Average time to close pull requests: 11 days
  • Total issue authors: 2
  • Total pull request authors: 5
  • Average comments per issue: 2.0
  • Average comments per pull request: 0.0
  • Merged pull requests: 14
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 9
  • Average time to close issues: N/A
  • Average time to close pull requests: about 13 hours
  • Issue authors: 0
  • Pull request authors: 3
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 7
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • wcwitt (4)
  • sangkookchoi (1)
Pull Request Authors
  • grouaut (10)
  • EvenChiari (8)
  • Pablo-R0 (8)
  • Quentin-Marecat (1)
  • kyleniemeyer (1)
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 31 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 1
  • Total versions: 5
  • Total maintainers: 2
pypi.org: quantnbody

A python package for quantum chemistry/physics to manipulate many-body operators and wave functions.

  • Versions: 5
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 31 Last month
Rankings
Dependent packages count: 10.1%
Forks count: 19.1%
Stargazers count: 19.4%
Average: 21.3%
Dependent repos count: 21.5%
Downloads: 36.2%
Maintainers (2)
Last synced: 6 months ago

Dependencies

setup.py pypi
  • numba *
  • numpy *
  • scipy *
docs/source/requirements.txt pypi
  • ipython *
  • nbsphinx *
  • numba *
  • numpy *
  • readthedocs-sphinx-ext *
  • scipy *
  • sphinx *
  • sphinxemoji *