Skip to main content

Collection of Python tools for quantum many-body simulation using Green Software Package

Project description

Python application GitHub license


 █▀▀█ █▀▀█ █▀▀ █▀▀ █▀▀▄
 █ ▄▄ █▄▄▀ █▀▀ █▀▀ █  █
 █▄▄█ ▀ ▀▀ ▀▀▀ ▀▀▀ ▀  ▀

 █▀▄▀█ █▀▀█ █▀▀▄ █  █     █▀▀█ █▀▀█ █▀▀▄ █  █   ▀▀█▀▀ █▀▀█ █▀▀█ █   █▀▀
 █ █ █ █▄▄█ █  █ █▄▄█ ▀▀  █▀▀▄ █  █ █  █ █▄▄█     █   █  █ █  █ █   ▀▀█
 █   █ ▀  ▀ ▀  ▀ ▄▄▄█     █▄▄█ ▀▀▀▀ ▀▀▀  ▄▄▄█     █   ▀▀▀▀ ▀▀▀▀ ▀▀▀ ▀▀▀

===================

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:

  1. Python packages: numpy, scipy, h5py, green-ac, pyscf, ase, spglib, irbasis, cvxpy, and baryrat.
  2. C++ libraries: Eigen, GMP, MPFR
  3. pytest for testing
  4. 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 pesto 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


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.4b8.tar.gz (52.9 kB view hashes)

Uploaded Source

Built Distributions

green_mbtools-0.2.4b8-cp312-cp312-manylinux_2_28_x86_64.whl (3.9 MB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.28+ x86-64

green_mbtools-0.2.4b8-cp312-cp312-macosx_14_0_arm64.whl (798.7 kB view hashes)

Uploaded CPython 3.12 macOS 14.0+ ARM64

green_mbtools-0.2.4b8-cp312-cp312-macosx_13_0_x86_64.whl (874.4 kB view hashes)

Uploaded CPython 3.12 macOS 13.0+ x86-64

green_mbtools-0.2.4b8-cp311-cp311-manylinux_2_28_x86_64.whl (3.9 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.28+ x86-64

green_mbtools-0.2.4b8-cp311-cp311-macosx_14_0_arm64.whl (798.8 kB view hashes)

Uploaded CPython 3.11 macOS 14.0+ ARM64

green_mbtools-0.2.4b8-cp311-cp311-macosx_13_0_x86_64.whl (874.4 kB view hashes)

Uploaded CPython 3.11 macOS 13.0+ x86-64

green_mbtools-0.2.4b8-cp310-cp310-manylinux_2_28_x86_64.whl (3.9 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.28+ x86-64

green_mbtools-0.2.4b8-cp310-cp310-macosx_14_0_arm64.whl (798.8 kB view hashes)

Uploaded CPython 3.10 macOS 14.0+ ARM64

green_mbtools-0.2.4b8-cp310-cp310-macosx_13_0_x86_64.whl (874.4 kB view hashes)

Uploaded CPython 3.10 macOS 13.0+ x86-64

green_mbtools-0.2.4b8-cp39-cp39-manylinux_2_28_x86_64.whl (3.9 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.28+ x86-64

green_mbtools-0.2.4b8-cp39-cp39-macosx_14_0_arm64.whl (798.7 kB view hashes)

Uploaded CPython 3.9 macOS 14.0+ ARM64

green_mbtools-0.2.4b8-cp39-cp39-macosx_13_0_x86_64.whl (874.4 kB view hashes)

Uploaded CPython 3.9 macOS 13.0+ x86-64

green_mbtools-0.2.4b8-cp38-cp38-manylinux_2_28_x86_64.whl (3.9 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.28+ x86-64

green_mbtools-0.2.4b8-cp38-cp38-macosx_14_0_arm64.whl (798.8 kB view hashes)

Uploaded CPython 3.8 macOS 14.0+ ARM64

green_mbtools-0.2.4b8-cp38-cp38-macosx_13_0_x86_64.whl (874.3 kB view hashes)

Uploaded CPython 3.8 macOS 13.0+ x86-64

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page