The sparse-ir ecosystem#
sparse-ir is a family of libraries for compact representations of imaginary-time Green’s functions: the intermediate representation (IR), the discrete Lehmann representation (DLR), sparse sampling, and minimal pole representations (MiniPole). This site is the entry point for all of them: the theory, the history, the notation they share, and where to find each library’s documentation.
The libraries are maintained by SpM-lab, which also develops tools for analytic continuation.
Where to go#
If you want to … |
Go to |
|---|---|
know what IR, DLR and MiniPole are, where they came from, and which to use |
|
check a symbol or a sign convention, or find the matching name in a library |
|
learn the basics step by step |
Basic theory: Green’s functions, IR, sparse sampling, DLR |
pick a library and find its installation guide, API reference and examples |
|
run worked examples (GW, DMFT, FLEX, TPSC, Eliashberg, analytic continuation) |
The libraries at a glance#
Language |
Library |
Documentation |
|---|---|---|
Python |
sparse-ir ( |
|
Julia |
SparseIR.jl ( |
|
Rust, C, Fortran |
sparse-ir-rs (crates |
sparse-ir-rs is the shared backend: the Python and Julia libraries call its C API (libsparseir), and it ships the Fortran bindings. New features land there first.
Citing#
If you use these libraries, please cite M. Wallerberger et al., sparse-ir: Optimal compression and sparse sampling of many-body propagators, SoftwareX 21, 101266 (2023), and the papers on the methods you use, listed in history and comparison.