PAOFLOW.transport.hamiltonian.gzero_maker#
Functions#
|
Compute the non-interacting Green's function or its inverse using smearing. |
Module Contents#
- PAOFLOW.transport.hamiltonian.gzero_maker.compute_non_interacting_gf(blc_00C, smearing_type='lorentzian', delta=1e-05, delta_ratio=0.005, g_smear=None, xgrid=None, calc='inverse')[source]#
Compute the non-interacting Green’s function or its inverse using smearing.
- Parameters:
energy (float) – Real energy value at which to evaluate the Green’s function.
smearing_type (str) – Smearing method: ‘lorentzian’, ‘none’, or ‘numerical’.
delta (float) – Smearing parameter for imaginary broadening.
delta_ratio (float) – Used for ‘none’ smearing: delta_eff = delta * delta_ratio.
g_smear (np.ndarray, optional) – Precomputed smeared Green’s function values on xgrid (for numerical smearing).
xgrid (np.ndarray, optional) – Energy grid corresponding to g_smear.
calc ({'direct', 'inverse'}) – Whether to return G or G⁻¹.
- Returns:
`gzero` – The resulting Green’s function or its inverse.
- Return type:
np.ndarray
Notes
The function evaluates one of the following:
- For ‘lorentzian’:
G = [ (E + i·δ)·S - H ]⁻¹
- For ‘none’:
G = [ (E + i·δ·δ_ratio)·S - H ]⁻¹
- For ‘numerical’:
Diagonalize A = E·S - H, interpolate on xgrid, and reconstruct G.
Smearing ensures convergence and causality in retarded Green’s functions.