triqs.gfs.gf.Gf.fit_hermitian_tail

Gf.fit_hermitian_tail(*args, **kw)

Dispatched C++ function(s).

[1] (g: Gf[MeshImFreq, 2],
     known_moments: ndarray[complex, 3] = [])
  -> tuple[ndarray[complex, 3], float]

[2] (g: Gf[MeshImFreq, 0],
     known_moments: ndarray[complex, 1] = [])
  -> tuple[ndarray[complex, 1], float]

[3] (bg: BlockGf[MeshImFreq, 2],
     known_moments: [ndarray[complex, 3]] = <unprintable>)
  -> tuple[[ndarray[complex, 3]], float]

[4] (bg: BlockGf[MeshImFreq, 0],
     known_moments: [ndarray[complex, 1]] = <unprintable>)
  -> tuple[[ndarray[complex, 1]], float]

[1, 2] Fit the high-frequency tail of a Green’s function, imposing hermitian symmetry on the fitted moments.

The symmetry constraint is \(G_{i,j}(i\omega) = G_{j,i}^*(-i\omega)\).


[3, 4] Fit the high-frequency tail of a block Green’s function, imposing hermitian symmetry block by block.

The symmetry constraint is \(G_{i,j}(i\omega) = G_{j,i}^*(-i\omega)\).

Each block is fitted independently with the same symmetry constraint. The returned error is the maximum across blocks.


Parameters:
gGf[MeshImFreq, 2], Gf[MeshImFreq, 0]

The Green’s function whose tail is to be fitted.

known_momentsndarray[complex, 3], ndarray[complex, 1]

Array of known high-frequency moments to constrain the fit.

bgBlockGf[MeshImFreq, 2], BlockGf[MeshImFreq, 0]

The block Green’s function whose tail is to be fitted.

Returns:
[1]tuple[ndarray[complex, 3], float]

A pair containing the fitted tail moments and the fitting error.

[2]tuple[ndarray[complex, 1], float]

A pair containing the fitted tail moments and the fitting error.

[3]tuple[[ndarray[complex, 3]], float]

A pair containing the per-block fitted tail moments and the worst-block fitting error.

[4]tuple[[ndarray[complex, 1]], float]

A pair containing the per-block fitted tail moments and the worst-block fitting error.