PAOFLOW.transport.smearing.smearing_T#
Classes#
Encapsulates smearing grid data and computes its memory usage. |
Functions#
|
Initialize the numerical smearing grid and compute g_smear values using FFT-based convolution. |
Module Contents#
- PAOFLOW.transport.smearing.smearing_T.initialize_smearing_grid(smearing_type, delta, delta_ratio, xmax, *, smearing_func)[source]#
Initialize the numerical smearing grid and compute g_smear values using FFT-based convolution.
- Parameters:
smearing_func (callable) – A function f(x, type) returning the smearing function evaluated at x for a given type.
smearing_type (str) – Type of smearing function, e.g., ‘lorentzian’, ‘gaussian’, etc.
delta (float) – Broadening parameter used in FFT smearing.
delta_ratio (float) – Ratio to determine resolution of numerical grid.
xmax (float) – Half-width of the energy window.
- Returns:
`xgrid` (np.ndarray) – Energy grid points.
`g_smear` (np.ndarray) – Smeared Green’s function values over the grid.
Notes
This function constructs a numerically smeared Green’s function g_smear(x) over an energy grid xgrid using FFT-based convolution:
g_smear(x) = [1 / (x + i·δ_ratio)] ⋆ f_smear(x / δ)
where: - f_smear is the chosen smearing function (e.g. Lorentzian, Gaussian) - ⋆ denotes convolution (implemented via FFT) - delta determines the width of the smearing function - delta_ratio controls the pole width for the convolution kernel - The final result is stored on an energy grid xgrid ∈ [−xmax, xmax]
This is used only in the ‘numerical’ smearing mode for computing Green’s functions.
- class PAOFLOW.transport.smearing.smearing_T.SmearingData(smearing_func)[source]#
Encapsulates smearing grid data and computes its memory usage.
- xgrid: numpy.ndarray | None = None[source]#
- g_smear: numpy.ndarray | None = None[source]#