PAOFLOW.boltzmann.do_tau_models#

Attributes#

Functions#

acoustic_model(temp, eigs, params)

Compute electron lifetimes for acoustic phonon deformation-potential scattering.

optical_model(temp, eigs, params)

Compute electron lifetimes for optical phonon deformation-potential scattering.

polar_acoustic_model(temp, eigs, params)

Compute electron lifetimes for polar acoustic phonon (piezoelectric) scattering.

polar_optical_model(temp, eigs, params)

Compute electron lifetimes for polar optical (Fröhlich) phonon scattering.

impurity_model(temp, eigs, params)

Compute electron lifetimes for ionized impurity scattering.

builtin_tau_model(label, params, weight)

Instantiate a built-in scattering rate model as a TauModel object.

Module Contents#

PAOFLOW.boltzmann.do_tau_models.me = 9.10938e-31[source]#
PAOFLOW.boltzmann.do_tau_models.e = 1.60217662e-19[source]#
PAOFLOW.boltzmann.do_tau_models.ev2j = 1.60217662e-19[source]#
PAOFLOW.boltzmann.do_tau_models.epso = 8.854187817e-12[source]#
PAOFLOW.boltzmann.do_tau_models.acoustic_model(temp, eigs, params)[source]#

Compute electron lifetimes for acoustic phonon deformation-potential scattering.

Parameters:
  • temp (float) – Temperature (K).

  • eigs (np.ndarray) – Band eigenvalues (eV) measured from the band edge.

  • params (dict) –

    Model parameters:

    • 'v' : float — sound velocity (m/s).

    • 'rho' : float — mass density (kg/m³).

    • 'ms' : float — effective mass in units of \(m_e\).

    • 'D_ac' : float — acoustic deformation potential (eV).

Returns:

Electron lifetime \(\tau_{\rm ac}\) (s) for each eigenvalue.

Return type:

np.ndarray

Notes

Formula from Fiorentini et al. applied to Mg₃Sb₂-type materials. The scattering rate scales as \(\tau^{-1} \propto k_BT \sqrt{E}\).

PAOFLOW.boltzmann.do_tau_models.optical_model(temp, eigs, params)[source]#

Compute electron lifetimes for optical phonon deformation-potential scattering.

Parameters:
  • temp (float) – Temperature (K).

  • eigs (np.ndarray) – Band eigenvalues (eV) measured from the band edge.

  • params (dict) –

    Model parameters:

    • 'hwlo' : array_like of float — LO phonon energies (eV).

    • 'rho' : float — mass density (kg/m³).

    • 'D_op' : float — optical deformation potential (eV).

    • 'ms' : float — effective mass in units of \(m_e\).

Returns:

Electron lifetime \(\tau_{\rm op}\) (s) for each eigenvalue.

Return type:

np.ndarray

Notes

Formula from Jacoboni, Theory of Electron Transport in Semiconductors. The emission and absorption channels are weighted by the Bose-Einstein distribution \(N_{\rm op} = [e^{\hbar\omega/k_BT}-1]^{-1}\).

PAOFLOW.boltzmann.do_tau_models.polar_acoustic_model(temp, eigs, params)[source]#

Compute electron lifetimes for polar acoustic phonon (piezoelectric) scattering.

Parameters:
  • temp (float) – Temperature (K).

  • eigs (np.ndarray) – Band eigenvalues (eV) measured from the band edge.

  • params (dict) –

    Model parameters:

    • 'piezo' : float — piezoelectric constant (C/m²).

    • 'doping_conc' : float — doping concentration (cm⁻³).

    • 'eps_0' : float — low-frequency dielectric constant (in units of \(\varepsilon_0\)).

    • 'eps_inf' : float — high-frequency dielectric constant.

    • 'ms' : float — effective mass in units of \(m_e\).

    • 'rho' : float — mass density (kg/m³).

    • 'v' : float — sound velocity (m/s).

Returns:

Electron lifetime \(\tau_{\rm pac}\) (s) for each eigenvalue.

Return type:

np.ndarray

PAOFLOW.boltzmann.do_tau_models.polar_optical_model(temp, eigs, params)[source]#

Compute electron lifetimes for polar optical (Fröhlich) phonon scattering.

Parameters:
  • temp (float) – Temperature (K).

  • eigs (np.ndarray) – Band eigenvalues (eV) measured from the band edge.

  • params (dict) –

    Model parameters:

    • 'Ef' : float — Fermi energy (eV).

    • 'hwlo' : array_like of float — LO phonon energies (eV).

    • 'eps_0' : float — low-frequency dielectric constant.

    • 'eps_inf' : float — high-frequency dielectric constant.

    • 'ms' : float — effective mass in units of \(m_e\).

Returns:

Electron lifetime \(\tau_{\rm pol}\) (s) for each eigenvalue.

Return type:

np.ndarray

Notes

Formula from Fiorentini et al., Phys. Rev. B (Mg₃Sb₂ paper). The coupling involves both phonon emission and absorption weighted by Bose and Fermi-Dirac statistics.

PAOFLOW.boltzmann.do_tau_models.impurity_model(temp, eigs, params)[source]#

Compute electron lifetimes for ionized impurity scattering.

Parameters:
  • temp (float) – Temperature (K).

  • eigs (np.ndarray) – Band eigenvalues (eV) measured from the band edge.

  • params (dict) –

    Model parameters:

    • 'nI' : float — impurity concentration (cm⁻³).

    • 'Zi' : int — charge number of the impurity.

    • 'ms' : float — effective mass in units of \(m_e\).

    • 'eps_0' : float — low-frequency dielectric constant.

    • 'eps_inf' : float — high-frequency dielectric constant.

Returns:

Electron lifetime \(\tau_{\rm imp}\) (s) for each eigenvalue.

Return type:

np.ndarray

Notes

Formula from Fiorentini et al. (Mg₃Sb₂ paper). The Brooks-Herring screened Coulomb potential is used with a Thomas-Fermi screening wave-vector \(q_0 = \sqrt{e^2 n_I / (\varepsilon k_BT)}\).

PAOFLOW.boltzmann.do_tau_models.builtin_tau_model(label, params, weight)[source]#

Instantiate a built-in scattering rate model as a TauModel object.

Parameters:
Returns:

A TauModel instance with .function set to the appropriate callable, or None if label is not recognised.

Return type:

TauModel or None