tkwant.manybody.lead_occupation¶
-
tkwant.manybody.
lead_occupation
(chemical_potential=0, temperature=0, bands=None, occupation_type=<class 'tkwant.manybody.Occupation'>)[source]¶ Set the occupation (\(T, \mu, f(E)\)) for one lead.
Routine to obtain the fermi function f(E) and the upper energy cutoff for a single lead, in order to calculate integrals of the form \(I = \int d E \, f(E) \ldots\). Energy cutoffs are estimated from the temperature and the chemical potential only, without knowledge of the band structure.
Fermi dirac distribution \(f(E) = (1 + \exp((E - \mu)/T))^{-1}\)
For T = 0: \(f(E) = \theta(\mu - E)\) the chemical potential (Fermi energy) is a sharp upper cutoff, \(I = \int_{-\infty}^\mu d E \, \ldots\).
For T > 0 we estimate an effective upper cutoff Eeff, such that \(f(E) \leq \varepsilon\) for \(E \geq Eeff\), \(I = \int_{-\infty}^{Eeff} d E \, f(E) \ldots\).
- Parameters
chemical_potential (float or sequence of floats, optional) – chemical potential \(\mu\), zero by default If a sequence, it must have the same number of elements as bands per lead and acts as a cutoff per band. Setting
chemical_potential
to None is equivalent to + infinity.temperature (float, optional) – temperature \(T\), default: zero temperature
bands (int or list of int, optional) – If present, only bands with band indices (n) present in the list are taken into account. By default, all bands are considered.
occupation_type (
dataclass
, optional) – Data format of the returndedoccupation
object to store the lead occupation. Default:tkwant.manybody.Occupation
.
- Returns
occupation – Lead occupation. Attributes of
occupation
that are modified by this routine:distribution : callable, distribution function f(E), calling signature (energy)
energy_range : sequence, energy cutoffs
bands : list of int, bands to be considered
multivariate : bool, multivariate distribution function
- Return type
occupation_type