We introduce libdlr, a library implementing the recently introduced discrete Lehmann representation (DLR) of imaginary time Green's functions. The DLR basis consists of a collection of exponentials chosen by the interpolative decomposition to ensure stable and efficient recovery of Green's functions from imaginary time or Matsbuara frequency samples. The library provides subroutines to build the DLR basis and grids, and to carry out various standard operations. The simplicity of the DLR makes it straightforward to incorporate into existing codes as a replacement for less efficient representations of imaginary time Green's functions, and libdlr is intended to facilitate this process. libdlr is written in Fortran, provides a C header interface, and contains a Python module pydlr. We also introduce a stand-alone Julia implementation, Lehmann.jl.
翻译:我们引入了 libdlr, 这个图书馆可以实施最近引入的离散 Lehmann 代表( DLR) 的 Green 想象时间的功能 。 DLR 基础包括一系列由集成的指数, 这些指数是由中间分解所选择的, 以确保从想象时间或Matsbuara 频率样本中稳定有效地恢复 Green 的功能 。 该图书馆提供了建立 DLR 基础和 网格以及执行各种标准操作的子例程 。 DLR 的简单化使得可以直接地将现有代码纳入到现有代码中, 以取代不高效的想象时间显示 Green 的功能, libddlr 意在促进这一过程。 libddlr 在 Fortran 中写, 提供了 C 头界面, 包含一个 Python 模块 pydlr 。 我们还引入了独立执行 Julia, Lehmann.jl 。