Distribution functions¶
Various distributions using different smearing techniques.
|
Create a distribution function, Gaussian, Lorentzian etc. |
|
Gaussian distribution function |
|
Lorentzian distribution function |
|
Fermi-Dirac distribution function |
|
Bose-Einstein distribution function |
|
Cold smearing function, Marzari-Vanderbilt, PRL 82, 16, 1999 |
|
Step function, also known as \(1 - H(x)\) |
|
Heaviside step function |
-
sisl.physics.distribution.
gaussian
(x, sigma=0.1, x0=0.0)[source] Gaussian distribution function
\[G(x,\sigma,x_0) = \frac{1}{\sqrt{2\pi\sigma^2}}\exp\Big[\frac{- (x - x_0)^2}{2\sigma^2}\Big]\]- Parameters
- xarray_like
points at which the Gaussian distribution is calculated
- sigmafloat, optional
spread of the Gaussian
- x0float, optional
maximum position of the Gaussian
- Returns
- numpy.ndarray
the Gaussian distribution, same length as x
-
sisl.physics.distribution.
lorentzian
(x, gamma=0.1, x0=0.0)[source] Lorentzian distribution function
\[L(x,\gamma,x_0) = \frac{1}{\pi}\frac{\gamma}{(x-x_0)^2 + \gamma^2}\]- Parameters
- xarray_like
points at which the Lorentzian distribution is calculated
- gammafloat, optional
spread of the Lorentzian
- x0float, optional
maximum position of the Lorentzian
- Returns
- numpy.ndarray
the Lorentzian distribution, same length as x
-
sisl.physics.distribution.
fermi_dirac
(E, kT=0.1, mu=0.0)[source] Fermi-Dirac distribution function
\[n_F(E,k_BT,\mu) = \frac{1}{\exp\Big[\frac{E - \mu}{k_BT}\Big] + 1}\]- Parameters
- Earray_like
energy evaluation points
- kTfloat, optional
temperature broadening
- mufloat, optional
chemical potential
- Returns
- numpy.ndarray
the Fermi-Dirac distribution, same length as E
-
sisl.physics.distribution.
bose_einstein
(E, kT=0.1, mu=0.0)[source] Bose-Einstein distribution function
\[n_B(E,k_BT,\mu) = \frac{1}{\exp\Big[\frac{E - \mu}{k_BT}\Big] - 1}\]- Parameters
- Earray_like
energy evaluation points
- kTfloat, optional
temperature broadening
- mufloat, optional
chemical potential
- Returns
- numpy.ndarray
the Bose-Einstein distribution, same length as E
-
sisl.physics.distribution.
cold
(E, kT=0.1, mu=0.0)[source] Cold smearing function, Marzari-Vanderbilt, PRL 82, 16, 1999
\[\begin{split}C(E,k_BT,\mu) = \frac12 &+ \mathrm{erf}\Big(-\frac{E-\mu}{k_BT}-\frac1{\sqrt2}\Big) \\ &+ \frac1{\sqrt{2\pi}} \exp\Bigg\{-\Big[\frac{E-\mu}{k_BT}+\frac1{\sqrt2}\Big]^2\Bigg\}\end{split}\]- Parameters
- Earray_like
energy evaluation points
- kTfloat, optional
temperature broadening
- mufloat, optional
chemical potential
- Returns
- numpy.ndarray
the Cold smearing distribution function, same length as E
-
sisl.physics.distribution.
step_function
(x, x0=0.0)[source] Step function, also known as \(1 - H(x)\)
This function equals one minus the Heaviside step function
\begin{align} S(x,x_0) = \left\{\begin{aligned}1&\quad \text{for }x < x_0 \\ 0.5&\quad \text{for }x = x_0 \\ 0&\quad \text{for }x>x_0 \end{aligned}\right. \end{align}- Parameters
- xarray_like
points at which the step distribution is calculated
- x0float, optional
step position
- Returns
- numpy.ndarray
the step function distribution, same length as x
-
sisl.physics.distribution.
heaviside
(x, x0=0.0)[source] Heaviside step function
\begin{align} H(x,x_0) = \left\{\begin{aligned}0&\quad \text{for }x < x_0 \\ 0.5&\quad \text{for }x = x_0 \\ 1&\quad \text{for }x>x_0 \end{aligned}\right. \end{align}- Parameters
- xarray_like
points at which the Heaviside step distribution is calculated
- x0float, optional
step position
- Returns
- numpy.ndarray
the Heaviside step function distribution, same length as x