triqs.gfs.tools.dyson

triqs.gfs.tools.dyson(**kwargs)[source]

Solve Dyson’s equation for the missing quantity.

Given exactly two of \(G_0\), \(G\) and \(\Sigma\), return the third using

\[G^{-1} = G_0^{-1} - \Sigma.\]
Parameters:
G0_iwGf or BlockGf, optional

Non-interacting Green’s function.

G_iwGf or BlockGf, optional

Interacting Green’s function.

Sigma_iwGf or BlockGf, optional

Self-energy.

Returns:
Gf or BlockGf

The remaining quantity, of the same type as the inputs.

Raises:
ValueError

If fewer or more than two of the three keyword arguments are provided.

Examples

>>> from triqs.gfs import dyson
>>> Sigma_iw = dyson(G0_iw=G0_iw, G_iw=G_iw)
>>> G_iw    = dyson(G0_iw=G0_iw, Sigma_iw=Sigma_iw)