Skip to content

Document the DLR formulas for RegularizedBoseKernel #4

@shinaoka

Description

@shinaoka

The current DLR page only documents the bosonic DLR based on the logistic regularization,

$$ G(\tau) = - \sum_{p=1}^L K^\mathrm{L}(\tau, \bar{\omega}_p) c_p, $$

and

$$ G(\mathrm{i}\nu_n)=\sum_{p=1}^L \frac{c_p , \tanh(\beta\bar{\omega}_p/2)}{\mathrm{i}\nu_n-\bar{\omega}_p}, $$

and it also says that the imaginary-time basis functions are common for fermions and bosons.

That is correct for the bosonic DLR associated with the logistic kernel
(K^\mathrm{L}) and the modified spectral function
(\rho(\omega)=A(\omega)/\tanh(\beta\omega/2)), but it leaves out the corresponding formulas when the IR basis is built from the regularized Bose kernel discussed in src/greens_function.md:

$$ K^\mathrm{reg}(\tau,\omega)=\omega,\frac{e^{-\tau\omega}}{1-e^{-\beta\omega}}, \qquad \rho'(\omega)=\frac{A(\omega)}{\omega}. $$

Since

$$
K^\mathrm{reg}(\tau,\omega)

K^\mathrm{L}(\tau,\omega),\frac{\omega}{\tanh(\beta\omega/2)},
$$

the logistic-boson DLR formulas cannot be reused verbatim in this case.

Could we add a short subsection (or at least a note) clarifying the DLR expressions for RegularizedBoseKernel?

One natural way to write them is:

$$ \rho'(\omega)=\sum_{p=1}^L d_p , \delta(\omega-\bar{\omega}_p), $$

$$ G(\tau)= -\sum_{p=1}^L d_p , K^\mathrm{reg}(\tau,\bar{\omega}_p) = -\sum_{p=1}^L d_p,\bar{\omega}_p,\frac{e^{-\tau\bar{\omega}_p}}{1-e^{-\beta\bar{\omega}_p}}, $$

$$ G(\mathrm{i}\nu_n)=\sum_{p=1}^L \frac{d_p,\bar{\omega}_p}{\mathrm{i}\nu_n-\bar{\omega}_p}. $$

If you want the formulas to match the current sparse-ir-rs coefficient convention more literally, the coefficients returned by the DLR/IR transform for RegularizedBoseKernel differ by a factor of (\omega_\mathrm{max}^2):

$$ c_p = \omega_\mathrm{max}^2 d_p, $$

so the implementation-level basis functions are

$$ U_p(\tau)= -\frac{\bar{\omega}_p}{\omega_\mathrm{max}^2}\frac{e^{-\tau\bar{\omega}_p}}{1-e^{-\beta\bar{\omega}_p}}, \qquad \hat U_p(\mathrm{i}\nu_n)= \frac{\bar{\omega}_p/\omega_\mathrm{max}^2}{\mathrm{i}\nu_n-\bar{\omega}_p}. $$

I think even a short note such as

the formulas above are for the logistic-kernel bosonic DLR; for RegularizedBoseKernel, replace the bosonic regularizer (\tanh(\beta\omega/2)) with (\omega) (up to the coefficient normalization convention)

would already prevent confusion.

Motivation: this came up while debugging SpM-lab/sparse-ir-rs#174.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions