Collection of tools for quantum many-body simulation using Green Software Package
Project description
█▀▀█ █▀▀█ █▀▀ █▀▀ █▀▀▄
█ ▄▄ █▄▄▀ █▀▀ █▀▀ █ █
█▄▄█ ▀ ▀▀ ▀▀▀ ▀▀▀ ▀ ▀
█▀▄▀█ █▀▀█ █▀▀▄ █ █ █▀▀█ █▀▀█ █▀▀▄ █ █ ▀▀█▀▀ █▀▀█ █▀▀█ █ █▀▀
█ █ █ █▄▄█ █ █ █▄▄█ ▀▀ █▀▀▄ █ █ █ █ █▄▄█ █ █ █ █ █ █ ▀▀█
█ █ ▀ ▀ ▀ ▀ ▄▄▄█ █▄▄█ ▀▀▀▀ ▀▀▀ ▄▄▄█ █ ▀▀▀▀ ▀▀▀▀ ▀▀▀ ▀▀▀
===================
Python Tool Suite for Green's-function-based many-body calculations using Green Software Package.
Package contains two main modules:
- mint (Mean-feald INput generation Toolkit): generates input files for Green/WeakCoupling using PySCF, ASE and SPGLib
- pesto (Post-processing Evaluation Software TOols): provides access to various post-processing tools such as analytical continuation, and Mulliken analysis.
Installation
- To install the
green-mbtools
binary package simply execute:
pip install green-mbtools
-
To build from sources download the source code either from github or from PyPI and run
python -m build
This will automatically build the Nevanlinna and Caratheodory extensions, which are written in C++.
Dependencies:
- Python packages:
numpy
,scipy
,h5py
,pyscf
,ase
,spglib
,irbasis
,cvxpy
, andbaryrat
. - C++ libraries:
Eigen
,GMP
,MPFR
pytest
for testing- Maxent external C++ librar needs to be built separately to run analytic continuation tasks using the maxent method.
Features
- Generate input for Green/WeakCoupling.
- Compute molecular/natural orbitals.
- Mulliken analyasis based on symmetrical atomic orbitals.
- Fourier transformation between real and reciprocal space.
- Fourier transformation between imaginary-time and Matsuabara frequency domain on IR grids.
- Wannier interpolation
- Maxent analytical continuation (External C++ library required: https://github.com/CQMP/Maxent)
- Nevanlinna analytical continuation, based on Fei et.al. Phys. Rev. Lett. 126, 056402 (2021).
- PES analytical continuation, based on Phys. Rev. B 107, 075151 (2023).
- Caratheodory analytical continuation for complex valued matrices (External C++ library in
Caratheodory
, authored by Fei et.al. Phys. Rev. B 104, 165111 (2021).
To-Do-List
- Migrate to newer IR grid format
- Improved README and documentation on where to find examples (perhaps a sub-README in the examples folder),
- (for current implementation of Nevanlinna) re-integrate Hardy optimization
- Fix
examples/winter*.py
: The original example for Silicon has been modified to Hydrogen (for which test data is available). The high-symmetry points in the interpolation need to be readjusted accordingly.
Contirbutions to the code
- Most of the source code was written by @cnyeh
- Nevanlinna analytic continuation was implemented by @jianiOnly
- Clean up and packaging of the code and extension modules, including Nevanlinna and Caratheodory, was performed by by @gauravharsha
- ES analytic continuation implemented by @gauravharsha
- Example for spaghetti diagrams for occupation numbers added by @pavel-po
- C++ wrapper to GMP and MPFR float numbers and packaging @iskakoff
- Green/WeakCoupling input generation @cnyeh and @iskakoff
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
green_mbtools-0.2.3b0.tar.gz
(55.3 kB
view hashes)
Built Distributions
Close
Hashes for green_mbtools-0.2.3b0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9b37ea62592ba4e176c0e861a00c2896931cdd7e501d2e5bed9738e887676c6a |
|
MD5 | d7f2c9faf58fec7bfabcbf0a2ce68187 |
|
BLAKE2b-256 | 0e39a5f667676a67ccfea8a80887972d6f8b29453dcd5bfc7969febeb5e0c533 |
Close
Hashes for green_mbtools-0.2.3b0-cp312-cp312-macosx_14_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b7c07d6da186f5cc5fa804ed0e65157f6f6ddcf33590adce973ae567c5e2c127 |
|
MD5 | 9a6cc12c4e56eca529c98b9b81ba4aee |
|
BLAKE2b-256 | c166119073c9813d26d2ccb4f1fa90cab75119b4e7700aa3634303948e4777f5 |
Close
Hashes for green_mbtools-0.2.3b0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fa8d8e7bcce412706c49a36c19d92a89968a68dccbbfd4a2ecf0ba1b4bde044b |
|
MD5 | 24df5e67c674b893219c22facc1f733c |
|
BLAKE2b-256 | b2e97504184c147711e6c2e71682eb3e9a3bbcd51f724960cb674b5f02bf9ef0 |
Close
Hashes for green_mbtools-0.2.3b0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c7f7ecf1c993f38fc85a6cf739dce70093e2c51d1c27c60bc310f8f5bee2703d |
|
MD5 | cbe37db2d27ae505fefab50e472c43a0 |
|
BLAKE2b-256 | 50ce74ec7b52e77d3b954abcebc770aea03836fd4e92821de2a140f27cd07960 |
Close
Hashes for green_mbtools-0.2.3b0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 871e9e334a08721b3a4cc22b2a21a66c393a330e0fc13a9989771fb5c1e4d3eb |
|
MD5 | 43d1860ade6f8091673db7d099a33f05 |
|
BLAKE2b-256 | 546bdd51c5fb1056a75bd7993818ff7d4fb2392a8d05cdfdc20d516288442bed |
Close
Hashes for green_mbtools-0.2.3b0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b63251bab2129419140ef74db7ab51f617bbe0095ab04fa14fe04ebf847a7077 |
|
MD5 | 7fc3171c697d10ecc1498890f0b5554d |
|
BLAKE2b-256 | 42eecccf9eeafb67e0c9f82bed1d569150aadaf19814c599d9c9f31166e857f4 |