Skip to main content

Adaptive Pole Fitting for Quantum Many-Body Physics

Project description

adapol: Adaptive Pole Fitting for Quantum Many-Body Physics

adapol (pronounced "add a pole") is a python package for fitting Matsubara functions with the following form:

G(\mathrm i \omega_k) = \sum_l \frac{V_lV_l^{\dagger}}{\mathrm i\omega_k - E_l}.

Current applications include (1) hybridization fitting, (2) analytic continuation.

We also provide a TRIQS interface if the Matsubara functions are stored in triqs Green's function container.

Installation

adapol has numpy and scipy as its prerequisites. cvxpy is also required for hybridization fitting of matrix-valued (instead of scalar-valued) Matsubara functions.

To install adapol, run

pip install adapol

Documentation

See the detailed documentation for physical background, algorithms and user manual.

Adapol is a stand-alone package. For TRIQS users, we also provide a TRIQS interface. See user manual for details.

Examples

In the tutorial page, we provide two examples discrete.ipynb and semicircle.ipynb, showcasing how to use adapol for both discrete spectrum and continuous spectrum.

In these notebooks, we also demonstrate how to use our code through the triqs interface.

References

To cite this work, please include a reference to this GitHub repository, and cite the following references:

  1. Huang, Zhen, Emanuel Gull, and Lin Lin. "Robust analytic continuation of Green's functions via projection, pole estimation, and semidefinite relaxation." Physical Review B 107.7 (2023): 075151.
  2. Mejuto-Zaera, Carlos, et al. "Efficient hybridization fitting for dynamical mean-field theory via semi-definite relaxation." Physical Review B 101.3 (2020): 035143.
  3. Nakatsukasa, Yuji, Olivier Sète, and Lloyd N. Trefethen. "The AAA algorithm for rational approximation." SIAM Journal on Scientific Computing 40.3 (2018): A1494-A1522.

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

adapol-0.1.0.tar.gz (10.5 kB view hashes)

Uploaded Source

Built Distribution

adapol-0.1.0-py3-none-any.whl (11.0 kB view hashes)

Uploaded Python 3

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