Overview

The green-mbtools is a python tool suite for Green’s-function-based many-body calculations implemented in the Green Software Package.

This package contains two main modules:

  • mint (Mean-field 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, wannier interpolation and Mulliken analysis.

Quickstart

To install the green-mbtools binary package simply execute

pip install green-mbtools

To get started with the post-processing of green-mbpt output, you can initialize the MB_post class using the input, output and Matsubara grid (aka IR grid) files:

from green_mbtools.pesto import mb
import matplotlib.pyplot as plt
import numpy as np

if __name__ == "__main__":
    # path to files
    input_path = "path/to/input.h5"
    output_path = "path/to/sim.h5"
    ir_path = "path/to/ir/grid.h5"

    # initialize the MB_post class
    my_mb = mb.initialize_MB_post(output_path, input_path, ir_path)

    # use my_mb to do other tasks
    # e.g., Nevanlinna analytic continuation to get spectral function on real-axis
    # with frequencies between -5 and 5 a.u. with 1001 grid points
    # and broadening parameter of 0.01
    freqs, Aw = my_mb.AC_nevanlinna(n_real=1001, w_min=-5.0, w_max=5.0, eta=0.01)

    # trace over spin, k-points and orbitals
    Aw_traced = np.einsum('wska -> w', Aw)

    # plot the density of states
    freqs_ev = freqs * 27.211  # convert frequency from a.u. to eV
    plt.plot(freqs_ev, Aw_traced)
    plt.show()

Features

The mbtools package comes with two sub-packages: mint and pesto. The mint sub-package contains utilities for the following tasks:

  • Generate input for Green/WeakCoupling.

  • Compute molecular/natural orbitals.

  • Mulliken analyasis based on symmetrical atomic orbitals.

On the other hand, the pesto sub-package, formerly known as the mbanalysis package, caters to:

Authors

The package is currently maintained by Green-Phys, including @egull and @gauravharsha.

Complete list of contributors is available on the Github page.

Documentation for older versions