SciPost logo

SciPost Submission Page

MatsubaraFunctions.jl: An equilibrium Green's function library in the Julia programming language

by Dominik Kiese, Anxiang Ge, Nepomuk Ritz, Jan von Delft, Nils Wentzell

Submission summary

Authors (as registered SciPost users): Dominik Kiese
Submission information
Preprint Link:  (pdf)
Code repository:
Data repository:
Date accepted: 2023-12-20
Date submitted: 2023-11-29 14:53
Submitted by: Kiese, Dominik
Submitted to: SciPost Physics Codebases
Ontological classification
Academic field: Physics
  • Condensed Matter Physics - Computational
  • Quantum Physics
  • Statistical and Soft Matter Physics
Approaches: Theoretical, Computational


The Matsubara Green's function formalism stands as a powerful technique for computing the thermodynamic characteristics of interacting quantum many-particle systems at finite temperatures. In this manuscript, our focus centers on introducing MatsubaraFunctions.jl, a Julia library that implements data structures for generalized n-point Green's functions on Matsubara frequency grids. The package's architecture prioritizes user-friendliness without compromising the development of efficient solvers for quantum field theories in equilibrium. Following a comprehensive introduction of the fundamental types, we delve into a thorough examination of key facets of the interface. This encompasses avenues for accessing Green's functions, techniques for extrapolation and interpolation, as well as the incorporation of symmetries and a variety of parallelization strategies. Examples of increasing complexity serve to demonstrate the practical utility of the library, supplemented by discussions on strategies for sidestepping impediments to optimal performance.

Published as SciPost Phys. Codebases 24 (2024) , SciPost Phys. Codebases 24-r0.1 (2024)

List of changes

Added to Section 4.3.3: "Our motivation for this comparison is twofold: Firstly, we want to verify the overall correctness of both implementations and, secondly, we want to test how robust the multiboson formalism is to implementation details. This regards, for example, the treatment of correlation functions at the boundaries of their respective frequency grids. While the Julia code relies on (polynomial or constant) extrapolation, the C++ code replaces correlators with their asymptotic value instead. Ideally, these details should be irrelevant, except in the most difficult parameter regimes."

Changed in Section 4.3.3: "We would like to note that this is most likely not due to a fundamental performance advantage of Julia over C++, but simply the result of several optimizations (such as those presented in Sec. 4.3.2) that were more easy to implement using MatsubaraFunctions.jl."

Added to Section 3: "A full documentation of the package is available from the github repository."

Added to Section 5: "Note, however, that calculations in momentum or real space are already feasible with the current state of the package, if a suitable mapping from, say, wavevectors to indices is provided."

Reports on this Submission

Anonymous Report 2 on 2023-12-17 (Invited Report)


The authors made the requested changes. I think the paper is not fit for publication.

Requested changes


  • validity: -
  • significance: -
  • originality: -
  • clarity: -
  • formatting: -
  • grammar: -

Anonymous Report 1 on 2023-12-1 (Invited Report)


I thank the authors for addressing my comments and questions. In my opinion, the paper is now ready for publication.

Concerning the minor issue with Eq. (26): This equation is referenced many times in the text, for example in the footnote on page 20. However, when I click on the link behind the citation of Eq. (26), I don't end up on page 19, where the equations 26 are shown, but on page 12. This occurs for various pdf viewers which I tried.

  • validity: high
  • significance: high
  • originality: high
  • clarity: high
  • formatting: excellent
  • grammar: excellent

Login to report or comment