Source code for tidy3d.components.tcad.bandgap_energy
from __future__ import annotations
import pydantic.v1 as pd
from tidy3d.components.base import Tidy3dBaseModel
from tidy3d.constants import ELECTRON_VOLT
[docs]
class ConstantEnergyBandGap(Tidy3dBaseModel):
"""Constant Energy band gap"""
eg: pd.PositiveFloat = pd.Field(
title="Band Gap",
description="Energy band gap",
units=ELECTRON_VOLT,
)
[docs]
class VarshniEnergyBandGap(Tidy3dBaseModel):
"""
Models the temperature dependence of the energy band gap (Eg)
using the Varshni formula.
Notes
-----
The model implements the following formula:
.. math::
E_g(T) = E_g(0) - \\frac{\\alpha T^2}{T + \\beta}
Example
-------
>>> # Parameters for Silicon (Si)
>>> si_model = VarshniEnergyBandGap(
... eg_0=1.17,
... alpha=4.73e-4,
... beta=636.0,
... )
References
-------
Varshni, Y. P. (1967). Temperature dependence of the energy gap in semiconductors. Physica, 34(1), 149-154.
"""
eg_0: pd.PositiveFloat = pd.Field(
...,
title="Band Gap at 0 K",
description="Energy band gap at absolute zero (0 Kelvin).",
units=ELECTRON_VOLT,
)
alpha: pd.PositiveFloat = pd.Field(
...,
title="Varshni Alpha Coefficient",
description="Empirical Varshni coefficient (Ξ±).",
units="eV/K",
)
beta: pd.PositiveFloat = pd.Field(
...,
title="Varshni Beta Coefficient",
description="Empirical Varshni coefficient (Ξ²), related to the Debye temperature.",
units="K",
)