diff --git a/scripts/cm_crystal_structures.py b/scripts/cm_crystal_structures.py index 698bcea..419eaf7 100644 --- a/scripts/cm_crystal_structures.py +++ b/scripts/cm_crystal_structures.py @@ -45,7 +45,7 @@ if __name__ == "__main__": export_atoms(nacl(), "cm_crystal_NaCl", size_formula_half_quadratic) export_atoms(wurtzite(), "cm_crystal_wurtzite", size_formula_half_quadratic, rotation="70x,20y,174z") export_atoms(zincblende(), "cm_crystal_zincblende", size_formula_half_quadratic, rotation="-155x,70y,24z") - w = wurtzite() - from ase.visualize import view - view(w) + # w = wurtzite() + # from ase.visualize import view + # view(w) diff --git a/scripts/cm_scattering.py b/scripts/cm_scattering.py new file mode 100644 index 0000000..dbed72e --- /dev/null +++ b/scripts/cm_scattering.py @@ -0,0 +1,48 @@ +#!/usr/bin env python3 +from formulary import * + +# recreating a plot from adv. sc physics ex7/2 +# showing different scattering mechanisms + +def fionized(T): + return 10**4 * T**(3/2) + +@np.vectorize +def fpolar_optic(T, TDebye): + return np.exp(TDebye/T) if T < TDebye else np.nan + +def fpiezoelectric(T): + return 0.8 * 10**7 * T**(-1/2) + +def facoustic(T): + return 10**9 * T**(-3/2) + + +def scattering(): + fig, ax = plt.subplots(1, 1, figsize=size_formula_normal_default) + Ts = np.power(10, np.linspace(0, 3, 100)) + + TDebye = 10**3 + mu_ionized = fionized(Ts) + mu_polar_optic = fpolar_optic(Ts, TDebye) + mu_piezoelectric = fpiezoelectric(Ts) + mu_acoustic = facoustic(Ts) + + mu_sum = 1/(1/mu_ionized + 1/mu_polar_optic + 1/mu_piezoelectric + 1/mu_acoustic) + ax.plot(Ts, mu_ionized, label="Ionized") + ax.plot(Ts, mu_polar_optic, label="Polar-optic") + ax.plot(Ts, mu_piezoelectric, label="Piezoelectric") + ax.plot(Ts, mu_acoustic, label="Acoustic") + ax.plot(Ts, mu_sum, label="Total", color="black", linestyle="dashed") + ax.set_xscale("log") + ax.set_yscale("log") + ax.set_xlabel("$T$") + ax.set_ylabel("$\\mu$") + ax.legend() + ax.set_ylim(1e4, 1e7) + return fig + + +if __name__ == '__main__': + export(scattering(), "cm_scattering") + diff --git a/scripts/cm_semiconductors.py b/scripts/cm_semiconductors.py new file mode 100644 index 0000000..d8be8b0 --- /dev/null +++ b/scripts/cm_semiconductors.py @@ -0,0 +1,211 @@ +#!/usr/bin env python3 +from formulary import * +from scipy.constants import Boltzmann as kB, hbar, electron_volt + + +# DEVICES +# metal sc: schottky barrier +def schottky_barrier(): + fig, axs = plt.subplots(1, 3, figsize=(width_formula, height_default*0.6)) + WD = 5 + q = 1 + ND = 1 + eps = 11 + dx = WD/10 + xs = np.linspace(-WD/5, 6/5*WD, 300) + rho_S = q*ND + Q = rho_S * WD + rho_M = -Q/dx + @np.vectorize + def rho_approx(x): + if x < -dx: return 0.0 + if x < 0: return rho_M + if x < WD: return rho_S + return 0.0 + rhos_approx = rho_approx(xs) + + @np.vectorize + def E(x): + if x < -dx: return 0.0 + if x < 0: return -rho_M/eps * (-dx-x) + if x < WD: return -rho_S/eps * (WD-x) + return 0.0 + Es = E(xs) + + @np.vectorize + def phi(x): + # if x < -dx: return 0.0 + # if x < 0: return -rho_M/(2*eps) * (dx**2-(dx-x)**2) + if x < 0: return 0.0 + if x < WD: return rho_S/(2*eps) * (WD**2-(WD-x)**2) + return q*ND/(2*eps) * WD**2 + phis = phi(xs) + + for ax in axs: + ax.set_xlabel("$x$") + ax.set_xticks([0,WD]) + ax.set_xticklabels(["0", r"$W_\text{D}$"]) + ax.set_yticks([0]) + ax.set_yticklabels(["0"]) + axs[0].plot(xs, rhos_approx) + axs[0].set_ylabel(r"$\rho(x)$") + axs[1].plot(xs, Es) + axs[1].set_ylabel(r"$\mathcal{E}(x)$") + + axs[2].plot(xs, phis) + axs[2].set_ylabel(r"$\phi(x)$") + + return fig + + + + + +# Charge carrier density +def fn_i(T, NV, NC, Egap): + return np.sqrt(NV*NC) * np.exp(-Egap*electron_volt/(2*kB*T)) + +def fn_freeze(T, NV, NC, Egap): + return np.sqrt(NV*NC) * np.exp(-0.07*Egap*electron_volt/(2*kB*T)) + +def charge_carrier_density(): + fig, ax = plt.subplots(1, 1, figsize=size_formula_normal_default) + # Ts = np.power(10, np.linspace(-4, 0, 100)) + N = 500 + ts = np.linspace(0.01, 20, N) + Ts = 1000/ts + # Ts = np.linspace(2000, 50, N) + # ts = 1000/Ts + # ts = 1/Ts + + NV = 1e23 + NC = 1e21 + Egap = 2.4 + + n_is = fn_i(Ts, NV, NC, Egap) + + n_sat = np.empty(Ts.shape) + n_sat.fill(1e15) + + + idx1 = np.argmin(np.abs(n_is-n_sat)) + print(idx1, N) + # TODO make quadratic simple + n_total = blend_arrays(n_is, n_sat, idx1, idx1+10, "linear") + + n_freeze = fn_freeze(Ts, NV, NC, Egap) + idx2 = np.argmin(np.abs(n_freeze-n_sat)) + + print(idx1, idx2, N) + n_total = blend_arrays(n_total, n_freeze, idx2-10, idx2+10, "quadratic_simple") + + # ax.plot(ts, n_is, label="Intrinsic") + # ax.plot(ts, n_sat, label="Saturation") + # ax.plot(ts, n_freeze, label="Freeze-out") + # ax.plot(ts, n_total, label="Total", linestyle="dashed", color="black") + n_total2 = n_is.copy() + n_total2[idx1:idx2] = n_sat[idx1:idx2] + n_total2[idx2:] = n_freeze[idx2:] + ax.plot(ts, n_is, label="Intrinsic", linestyle="dashed") + ax.plot(ts, n_total2, label="Total", color="black") + ax.set_yscale("log") + ax.set_ylim(1e13, 1e17) + + idx = int(N*0.9) + ax.text(ts[idx], n_freeze[idx], "Freeze-out", ha="right", va="top") + idx = int(N*0.5) + ax.text(ts[idx], n_sat[idx], "Saturation", ha="center", va="bottom") + idx = np.argmin(np.abs(n_is-3e16)) + ax.text(ts[idx+10], n_is[idx], "Intrinsic", ha="left", va="bottom") + # ax.set_xlim(ts[0], ts[idx1+N//6]) + # ax.legend() + ax.set_xlabel(r"$1000/T\,[\si{\per\kelvin}]$") + ax.set_ylabel(r"$n\,[\si{\per\cm^3}]$") + + + return fig + + +def test(): + fig, ax = plt.subplots() + N = 100 + left = np.empty(N) + left.fill(4.0) + left = np.linspace(5.0, 0.0, N) + right = np.empty(N) + right.fill(2.5) + right = np.linspace(3.0, 2.0, N) + ax.plot(left, label="l",linestyle="dashed") + ax.plot(right, label="r",linestyle="dashed") + + total_lin = blend_arrays(left, right, 40, 60, "linear") + ax.plot(total_lin, label="lin") + # total_tanh = blend_arrays(left, right, 40, 60, "tanh") + # ax.plot(total_tanh) + total_q = blend_arrays(left, right, 40, 60, "quadratic_simple") + ax.plot(total_q, label="q") + ax.legend() + return fig + + + +# OPTICS + +@np.vectorize +def fn(omega: float, omega_p:float, eps_infty:float, tau:float): + eps_real = eps_infty * (1-(omega_p**2 * tau**2)/(1+omega**2 * tau**2)) + eps_imag = eps_infty * omega_p**2 * tau/(omega*(1+omega**2 * tau**2)) + eps_complex = (eps_real + 1j*eps_imag) + n_complex: complex = np.sqrt(eps_complex) + # n_real = n_complex.real + # n_imag = n_complex.imag + # return n_real, n_imag + return n_complex + +def free_electrons_absorption(): + # values taken from adv. sc. physics ex 10/1 + fig, axs = plt.subplots(2, 2, figsize=size_formula_fill_default, sharex=True) + omega_p = 30e12 # 30 THz + eps_infty = 11.7 + tau = 1e-6 + omegas = omega_p * np.logspace(-1, 3, 1000, base=10, dtype=float) + # omegas = omega_p * np.linspace(1e-1, 1e3, 1000) + # print(omegas) + n_complex = fn(omegas, omega_p, eps_infty, tau) + n_real = n_complex.copy().real + n_imag = n_complex.copy().imag + R = np.abs((n_complex-1)/(n_complex+1)) + alpha = 2*omegas*n_imag/3e8 + for ax in axs[1,:]: + ax.set_xlabel(r"$\omega/\omega_\text{p}$") + ax.set_xscale("log") + ax.set_xticks([1e-1,1e0,1e1,1e2,1e3]) + ax.set_xticklabels([0.1, 1, 10, 100, 1000]) + + omegas_rel = omegas/omega_p + axs[0,0].plot(omegas_rel, n_real) + axs[0,0].set_yticks([0,1,2,np.sqrt(eps_infty)]) + axs[0,0].set_yticklabels([0,1,2,r"$\epsilon_\infty$"]) + axs[0,0].set_ylim(-0.2,0.2+np.sqrt(eps_infty)) + axs[0,0].set_ylabel(r"$n^\prime(\omega)$") + + axs[1,0].plot(omegas_rel, n_imag) + axs[1,0].set_ylabel(r"$n^{\prime\prime}(\omega)$") + axs[1,0].set_yscale("log") + + axs[0,1].plot(omegas_rel, R) + axs[0,1].set_ylabel(r"$R(\omega)$") + + axs[1,1].plot(omegas_rel, alpha) + axs[1,1].set_ylabel(r"$\alpha(\omega)$") + axs[1,1].set_yscale("log") + return fig + + + +if __name__ == '__main__': + # export(test(), "cm_sc_charge_carrier_density") + export(schottky_barrier(), "cm_sc_devices_metal-n-sc_schottky") + # export(charge_carrier_density(), "cm_sc_charge_carrier_density") + # export(free_electrons_absorption(), "cm_sc_optics_free_electrons") + diff --git a/scripts/formulary.py b/scripts/formulary.py index 14da93e..820cce9 100644 --- a/scripts/formulary.py +++ b/scripts/formulary.py @@ -24,9 +24,9 @@ import util.colorschemes as cs from util.gen_tex_colorscheme import generate_latex_colorscheme # SET THE COLORSCHEME # hard white and black -cs.p_gruvbox["fg0-hard"] = "#000000" -cs.p_gruvbox["bg0-hard"] = "#ffffff" -COLORSCHEME = cs.gruvbox_light() +# cs.p_gruvbox["fg0-hard"] = "#000000" +# cs.p_gruvbox["bg0-hard"] = "#ffffff" +COLORSCHEME = cs.gruvbox_light_no_beige() # COLORSCHEME = cs.gruvbox_dark() # cs.p_tum["fg0"] = cs.p_tum["alt-blue"] # COLORSCHEME = cs.tum() @@ -111,6 +111,65 @@ def smooth_step(x: float, left_edge: float, right_edge: float): elif x >= 1: return 1. else: return 3*(x*2) - 2*(x**3) +def blend_arrays(a_left, a_right, idx_left, idx_right, mode="linear"): + """ + Return a new array thats an overlap two arrays a_left and a_right. + Left of idx_left = a_left + Right of idx_right = a_right + Between: Smooth connection of both + """ + assert(a_left.shape == a_right.shape) + assert(idx_left < idx_right) + assert(idx_left > 0) + assert(idx_right < a_left.shape[0]-1) + ret = np.empty(a_left.shape) + ret[:idx_left] = a_left[:idx_left] + ret[idx_right:] = a_right[idx_right:] + n = idx_right - idx_left + left = a_left[idx_left] + right = a_right[idx_right] + for i in range(idx_left, idx_right): + j = i-idx_left # 0-based + if mode == "linear": + val = left * (n-j)/n + right * (j)/n + # connect with a single quadratic function + elif mode == "quadratic_simple": + slope_left = a_left[idx_left] - a_left[idx_left-1] + slope_right = a_right[idx_right+1] - a_right[idx_right] + b = slope_left + a = (slope_right-b)/(2*n) + c = left + # val = (left + slope_left * (j/n))*(j/n) + (right+slope_right*(1-j/n))*(1-j/n) + val = a*(j**2) + b*j +c + print(a,b,c) + # connect with two quadratic functions + # TODO: fix + elif mode == "quadratic": + slope_left = a_left[idx_left] - a_left[idx_left-1] + slope_right = a_right[idx_right+1] - a_right[idx_right] + c1 = left + b1 = slope_left + b2 = 2*slope_right - b1 + a1 = (b2-b1)/4 + a2 = -a1 + c2 = right - a2*n**2-b2*n + m = 2 * (c2-c1)/(b1-b2) + print(m, a1, b1, c1) + print(m, a2, b2, c2) + + if j < m: + val = a1*(j**2) + b1*j +c1 + else: + val = a2*(j**2) + b2*j +c2 + elif mode == "tanh": + TANH_FULL = 2 # x value where tanh is assumed to be 1/-1 + x = (2 * j / n - 1) * TANH_FULL + tanh_error = 1-np.tanh(TANH_FULL) + amplitude = 0.5*(right-left) + val = amplitude * (1+tanh_error) * np.tanh(x) + (left+amplitude) + else: raise ValueError(f"Invalid mode: {mode}") + ret[i] = val + return ret # run even when imported set_mpl_colorscheme(COLORSCHEME) diff --git a/scripts/util/colorschemes.py b/scripts/util/colorschemes.py index f9be34e..9821b7d 100644 --- a/scripts/util/colorschemes.py +++ b/scripts/util/colorschemes.py @@ -101,6 +101,14 @@ def gruvbox_dark(): | {f"bg-{n}": p_gruvbox[f"dark-{n}"] for n in colors} return GRUVBOX_DARK +def gruvbox_light_no_beige(): + GRUVBOX_NO_BEIGE = \ + { f"fg{n}": brightness("#999999", n/5) for n in range(5)} \ + | { f"bg{n}": brightness("#FFFFFF", 1-n/8) for n in range(5)} \ + | {f"fg-{n}": p_gruvbox[f"alt-{n}"] for n in colors} \ + | {f"bg-{n}": p_gruvbox[f"light-{n}"] for n in colors} + return GRUVBOX_NO_BEIGE + # # LEGACY # diff --git a/src/cm/charge_transport.tex b/src/cm/charge_transport.tex index f3cf2b3..b3eff8c 100644 --- a/src/cm/charge_transport.tex +++ b/src/cm/charge_transport.tex @@ -3,39 +3,26 @@ \desc[german]{Ladungstransport}{}{} \Subsection{drude} - \desc{Drude model}{}{} - \desc[german]{Drude-Modell}{}{} - \begin{formula}{description} - \desc{Description}{}{} - \desc[german]{Beschreibung}{}{} - \ttxt{\eng{ + \desc{Drude model}{ Classical model describing the transport properties of electrons in materials (metals): The material is assumed to be an ion lattice and with freely moving electrons (electron gas). The electrons are accelerated by an electric field and decelerated through collisions with the lattice ions. The model disregards the Fermi-Dirac partition of the conducting electrons. - }\ger{ + }{} + \desc[german]{Drude-Modell}{ Ein klassisches Model zur Beschreibung der Transporteigenschaften von Elektronen in (v.a.) Metallen: Der Festkörper wird als Ionenkristall mit frei beweglichen Elektronen (Elektronengas). Die Elektronen werden durch ein Elektrisches Feld $E$ beschleunigt und durch Stöße mit den Gitterionen gebremst. Das Modell vernachlässigt die Fermi-Dirac Verteilung der Leitungselektronen. - }} - \end{formula} + }{} \begin{formula}{eom} \desc{Equation of motion}{}{$v$ electron speed, $\vec{v}_\text{D}$ drift velocity, \QtyRef{scattering_time}} \desc[german]{Bewegungsgleichung}{}{$v$ Elektronengeschwindigkeit, $\vec{v}_\text{D}$ Driftgeschwindigkeit, \QtyRef{scattering_time}} \eq{\masse \odv{\vec{v}}{t} + \frac{\masse}{\tau} \vec{v}_\text{D} = -e \vec{\E}} \end{formula} - \begin{formula}{scattering_time} - \desc{Scattering time}{Momentum relaxation time}{} - \desc[german]{Streuzeit}{}{} - \quantity{\tau}{\s}{s} - \ttxt{ - \eng{The average time between scattering events weighted by the characteristic momentum change cause by the scattering process.} - } - \end{formula} \begin{formula}{current_density} - \desc{Current density}{Ohm's law}{\QtyRef{charge_carrier_density}, \ConstRef{charge}, \QtyRef{drift_velocity}, \QtyRef{mobility}, \QtyRef{electric_field}} - \desc[german]{Stromdichte}{Ohmsches Gesetz}{} + \desc{(Drift) Current density}{Ohm's law}{\QtyRef{charge_carrier_density}, \ConstRef{charge}, \QtyRef{drift_velocity}, \QtyRef{mobility}, \QtyRef{electric_field}} + \desc[german]{(Drift-) Stromdichte}{Ohmsches Gesetz}{} \quantity{\vec{j}}{\ampere\per\m^2}{v} \eq{\vec{j} = -ne\vec{v}_\text{D} = ne\mu \vec{\E}} \end{formula} @@ -47,17 +34,30 @@ \eq{\sigma = \frac{\vec{j}}{\vec{\E}} = \frac{n e^2 \tau}{\masse} = n e \mu} \end{formula} -\Subsection{sommerfeld} - \desc{Sommerfeld model}{}{} - \desc[german]{Sommerfeld-Modell}{}{} - \begin{formula}{description} - \desc{Description}{}{} - \desc[german]{Beschreibung}{}{} - \ttxt{ - \eng{Assumes a gas of free fermions underlying the pauli-exclusion principle. Only electrons in an energy range of $\kB T$ around the Fermi energy $\EFermi$ participate in scattering processes. The \qtyRef{conductivity} is the same as in \fRef{::::drude}} - \ger{Annahme eines freien Fermionengases, welches dem Pauli-Prinzip unterliegt. Nur Elektronen in einem Energiebereich von $\kB T$ um die Fermi Energe $\EFermi$ nehmen an Streuprozessen teil. Die \qtyRef{conductivity} ist die selbe wie im \fRef{::::drude}} - } + \begin{formula}{drift_velocity} + \desc{Drift velocity}{Velocity component induced by an external force (eg. electric field)}{$v_\text{th}$ thermal velocity} + \desc[german]{Driftgeschwindgkeit}{Geschwindigkeitskomponente durch eine externe Kraft (z.B. ein elektrisches Feld)}{$v_\text{th}$ thermische Geschwindigkeit} + \hiddenQuantity{\vecv_\txD}{\m\per\s}{v} + \eq{\vec{v}_\text{D} = \vec{v} - \vec{v}_\text{th}} \end{formula} + + \begin{formula}{mean_free_path} + \abbrLabel{mfp} + \desc{Mean free path}{}{} + \desc[german]{Mittlere freie Weglänge}{}{} + \eq{\ell = \braket{v} \tau} + \end{formula} + + \begin{formula}{mobility} + \desc{Electrical mobility}{How quickly a particle moves through a material when moved by an electric field}{$q$ \qtyRef{charge}, $m$ \qtyRef{mass}, $\tau$ \qtyRef{scattering_time}} + \desc[german]{Elektrische Mobilität / Beweglichkeit}{Leichtigkeit mit der sich durch ein Elektrisches Feld beeinflusstes Teilchen im Material bewegt}{} + \quantity{\mu}{\centi\m^2\per\volt\s}{s} + \eq{\mu = \frac{q \tau}{m}} + \end{formula} + +\Subsection{sommerfeld} + \desc{Sommerfeld model}{Assumes a gas of free fermions underlying the pauli-exclusion principle. Only electrons in an energy range of $\kB T$ around the Fermi energy $\EFermi$ participate in scattering processes. The \qtyRef{conductivity} is the same as in \fRef{::drude}}{} + \desc[german]{Sommerfeld-Modell}{Annahme eines freien Fermionengases, welches dem Pauli-Prinzip unterliegt. Nur Elektronen in einem Energiebereich von $\kB T$ um die Fermi Energe $\EFermi$ nehmen an Streuprozessen teil. Die \qtyRef{conductivity} ist die selbe wie im \fRef{::drude}}{} \begin{formula}{current_density} \desc{Electrical current density}{}{} \desc[german]{Elektrische Stromdichte}{}{} @@ -65,12 +65,8 @@ \end{formula} \Subsection{boltzmann} - \desc{Boltzmann-transport}{}{} - \desc[german]{Boltzmann-Transport}{}{} - \begin{ttext} - \eng{Semiclassical description using a probability distribution (\fRef{cm:sc:fermi_dirac}) to describe the particles.} - \ger{Semiklassische Beschreibung, benutzt eine Wahrscheinlichkeitsverteilung (\fRef{cm:sc:fermi_dirac}).} - \end{ttext} + \desc{Boltzmann-transport}{Semiclassical description using a probability distribution (\fRef{cm:sc:fermi_dirac}) to describe the particles.}{} + \desc[german]{Boltzmann-Transport}{Semiklassische Beschreibung, benutzt eine Wahrscheinlichkeitsverteilung (\fRef{cm:sc:fermi_dirac}).}{} \begin{formula}{boltzmann_transport} \desc{Boltzmann Transport equation}{for charge transport}{$f$ \fRef{cm:sc:fermi_dirac}} \desc[german]{Boltzmann-Transportgleichung}{für Ladungstransport}{} @@ -116,7 +112,7 @@ \end{formula} \begin{formula}{resistivity} - \desc{Resistivity}{}{} + \desc{Resistivity}{}{\QtyRef{momentum_relaxation_time}, \QtyRef{magnetic_flux_density}, $n$ \qtyRef{charge_carrier_density}, \ConstRef{charge}} \desc[german]{Spezifischer Widerstand}{}{} \eq{\rho_{xx} &= \frac{\masse}{ne^2\tau} \\ \rho_{xy} &= \frac{B}{ne}} \end{formula} @@ -180,6 +176,72 @@ \eq{\nu = \frac{1}{3},\frac{2}{5},\frac{3}{7},\frac{2}{3}...} \end{formula} +\Subsection{scatter} +\desc{Scattering processes}{Limits the \qtyRef{drift_velocity}}{} +\desc[german]{Streuprozesse}{Begrenzt die \qtyRef{drift_velocity}}{} + \Eng[elastic]{elastic} + \Ger[elastic]{elastisch} + \Eng[inelastic]{inelastic} + \Ger[inelastic]{inelastisch} + \begin{formula}{types} + \desc{Types}{}{} + \desc[german]{Arten}{}{} + \ttxt{\eng{ + \textbf{Elastic}: constant $\abs{\veck}$ and $E$, direction of $\veck$ changes + \\ \textbf{Inelastic}: $\abs{\veck}$, $E$ and direction of $\veck$ change + }\ger{ + \textbf{Elastisch}: $\abs{\veck}$ und $E$ konstant, Richtung von $\veck$ ändert sich + \\ \textbf{Inelastisch}: $\abs{\veck}$, $E$ und Richtung von $\veck$ ändern sich + }} + \end{formula} + + \begin{formula}{scattering_time} + \desc{Momentum relaxation time}{Scattering time}{} + \desc[german]{}{Streuzeit}{} + \quantity{\tau}{\s}{s} + \hiddenQuantity[momentum_relaxation_time]{\tau}{\s}{s} + \ttxt{ + \eng{The average time between scattering events weighted by the characteristic momentum change cause by the scattering process (If the momentum and momentum direction do not change, the scattering event is irrelevant for the resistance).} + \ger{Die durschnittliche Zeit zwischen Streuprozessen, gewichtet durch die verursachte Impulsänderung (Wenn sich der Impuls und die Richtung nicht ändern ist das Streuevent irrelevant für den Widerstand)} + } + \end{formula} + + \begin{formula}{matthiessen} + \desc{Matthiessen's rule}{Approximation, only holds if the processes are independent of each other}{\QtyRef{mobility}, \QtyRef{scattering_time}} + \desc[german]{Matthiessensche Regel}{Näherung, nur gültig wenn die einzelnen Streuprozesse von einander unabhängig sind}{} + \eq{ + \frac{1}{\mu} &= \sum_{i = \textrm{\GT{:::scatter}}} \frac{1}{\mu_i} \\ + \frac{1}{\tau} &= \sum_{i = \textrm{\GT{:::scatter}}} \frac{1}{\tau_i} + } + \end{formula} + + \begin{formula}{processes} + \desc{Scattering processes}{}{$\theta_\txD$ \qtyRef{debye_temperature}, \QtyRef{temperature}, \QtyRef{mobility}} + \desc[german]{Streuprozesse}{}{} + \newFormulaEntry + \centering + \begin{tabular}{c|C|c} + Process & \mu\propto T\\ \hline + Acoustic phonons & \mu\propto T^{-3/2} & \string~ \GT{elastic}\\ + Ionized impurities & \mu\propto T^{3/2} & \GT{elastic} \\ + Piezoelectric & \mu\propto T^{-1/2} & \GT{elastic} \\ + Polar optical phonons & \mu\propto \Exp{\theta_\txD/T} \text{ for } T < \theta_\txD & \GT{inelastic} + \end{tabular} + \fig{img/cm_scattering.pdf} + \TODO{Impurities at low T, phonon scattering at high T (>100K), maybe plot at slide 317 combined notes adv. sc} + \end{formula} + + \begin{formula}{gunn_effect} + \desc{Gunn effect}{through Intervalley scattering}{} + \desc[german]{Gunn-Effekt}{durch Intervalley Streuung}{} + \ttxt{\eng{ + If the carrier energies are high enough, they can scatter into a neighboring band minimum, where they have a higher \qtyRef{effective_mass} and lower \qtyRef{mobility}. + \Rightarrow current decreases again (negative differential resistivity) + }\ger{ + Bei ausreichend hoher Energie der Ladungsträger können diese in ein benachbartes Minimum streuen. + Da sie dort eine höhere \qtyRef{effective_mass} und dadurch niedrigere \qty-ref{mobility} haben, verringert sich der Strom wieder (negative Resistivität) + }} + \end{formula} \Subsection{misc} \desc{misc}{}{} @@ -205,3 +267,4 @@ \pdv{\rho}{t} = - \nabla \vec{j} } \end{formula} + diff --git a/src/cm/cm.tex b/src/cm/cm.tex index e74964b..298faef 100644 --- a/src/cm/cm.tex +++ b/src/cm/cm.tex @@ -4,12 +4,6 @@ \TODO{van hove singularities} - \begin{formula}{dos} - \desc{Density of states (DOS)}{}{\QtyRef{volume}, $N$ number of energy levels, \QtyRef{energy}} - \desc[german]{Zustandsdichte (DOS)}{}{\QtyRef{volume}, $N$ Anzahl der Energieniveaus, \QtyRef{energy}} - \quantity{D}{\per\m^3}{s} - \eq{D(E) = \frac{1}{V}\sum_{i=1}^{N} \delta(E-E(\vec{k_i}))} - \end{formula} \Section{bond} \desc{Bonds}{}{} diff --git a/src/cm/crystal.tex b/src/cm/crystal.tex index 2845502..670a74b 100644 --- a/src/cm/crystal.tex +++ b/src/cm/crystal.tex @@ -217,17 +217,6 @@ \eq{\vec{G}_{{hkl}} = h \vec{b_1} + k \vec{b_2} + l \vec{b_3}} \end{formula} - \Subsection{scatter} - \desc{Scattering processes}{}{} - \desc[german]{Streuprozesse}{}{} - \begin{formula}{matthiessen} - \desc{Matthiessen's rule}{Approximation, only holds if the processes are independent of each other}{\QtyRef{mobility}, \QtyRef{scattering_time}} - \desc[german]{Matthiessensche Regel}{Näherung, nur gültig wenn die einzelnen Streuprozesse von einander unabhängig sind}{} - \eq{ - \frac{1}{\mu} &= \sum_{i = \textrm{\GT{:::scatter}}} \frac{1}{\mu_i} \\ - \frac{1}{\tau} &= \sum_{i = \textrm{\GT{:::scatter}}} \frac{1}{\tau_i} - } - \end{formula} \Subsection{lat} \desc{Lattices}{}{} diff --git a/src/cm/egas.tex b/src/cm/egas.tex index 53fbfce..8c31412 100644 --- a/src/cm/egas.tex +++ b/src/cm/egas.tex @@ -1,34 +1,31 @@ \Section{egas} - \desc{Free electron gas}{}{} - \desc[german]{Freies Elektronengase}{}{} + \desc{Free electron gas}{Assumptions: electrons can move freely and independent of each other. \GT{see_also}: \fRef{td:id_qgas}}{} + \desc[german]{Freies Elektronengase}{Annahmen: Elektronen bewegen sich frei und unabhänig voneinander. \GT{see_also}: \fRef{td:id_qgas}}{} -\begin{formula}{desc} - \desc{Description}{\GT{see_also}: \fRef{td:id_qgas}}{} - \desc[german]{Beschreibung}{}{} - \ttxt{ - \eng{Assumptions: electrons can move freely and independent of each other.} - \ger{Annahmen: Elektronen bewegen sich frei und unabhänig voneinander.} +\TODO{merge with stat mech egas?} + +\begin{formula}{density_of_states} + \abbrLabel{DOS} + \desc{Density of states (DOS)}{}{\QtyRef{volume}, $N$ number of energy levels, \QtyRef{energy}} + \desc[german]{Zustandsdichte (DOS)}{}{\QtyRef{volume}, $N$ Anzahl der Energieniveaus, \QtyRef{energy}} + \quantity{D,g}{\per\m^3}{s} + \eq{D(E) = \frac{1}{V}\sum_{i=1}^{N} \delta(E-E(\vec{k_i}))} +\end{formula} + +\begin{formula}{fermi-dirac} + \desc{Fermi-Dirac distribution}{For electrons and holes}{} + \desc[german]{Fermi-Dirac Verteilung}{Für Elektronen und Löcher}{} + \eq{ + f_\txe(E) &= \frac{1}{\Exp{\frac{E-\EFermi}{\kB T}+1}}\\ + f_\txh(E) &= 1-f_\txe(E) } \end{formula} -\begin{formula}{drift_velocity} - \desc{Drift velocity}{Velocity component induced by an external force (eg. electric field)}{$v_\text{th}$ thermal velocity} - \desc[german]{Driftgeschwindgkeit}{Geschwindigkeitskomponente durch eine externe Kraft (z.B. ein elektrisches Feld)}{$v_\text{th}$ thermische Geschwindigkeit} - \eq{\vec{v}_\text{D} = \vec{v} - \vec{v}_\text{th}} -\end{formula} - -\begin{formula}{mean_free_path} - \abbrLabel{mfp} - \desc{Mean free path}{}{} - \desc[german]{Mittlere freie Weglänge}{}{} - \eq{\ell = \braket{v} \tau} -\end{formula} - -\begin{formula}{mobility} - \desc{Electrical mobility}{How quickly a particle moves through a material when moved by an electric field}{$q$ \qtyRef{charge}, $m$ \qtyRef{mass}, $\tau$ \qtyRef{scattering_time}} - \desc[german]{Elektrische Mobilität / Beweglichkeit}{Leichtigkeit mit der sich durch ein Elektrisches Feld beeinflusstes Teilchen im Material bewegt}{} - \quantity{\mu}{\centi\m^2\per\volt\s}{s} - \eq{\mu = \frac{q \tau}{m}} +\begin{formula}{charge_carrier_density} + \desc{Charge carrier density}{Number of charge carriers per volume}{$N$ number of charge carriers, \QtyRef{volume}, $D$ \qtyRef{density_of_states}, $f$ \fRef{::fermi-dirac}, \QtyRef{energy}, \QtyRef{fermi_energy}} + \desc[german]{Ladungsträgerdichte}{Anzahl der Ladungsträger pro Volumen}{} + \quantity{n}{\per\m^3}{s} + \eq{n = \frac{N}{V} = \int_0^\infty D(E) f(E,T=0) \d E = \int_0^{\Efermi} D(E) \d E} \end{formula} \Subsection{3deg} @@ -40,19 +37,19 @@ \eq{D_\text{3D}(E) = \frac{1}{2\pi^2} \left(\frac{2m}{\hbar^2}\right)^{3/2} \sqrt{E}} \end{formula} + \begin{formula}{fermi_energy} + \desc{\qtyRef{fermi_energy}}{}{$n$ \qtyRef{charge_carrier_density}, $m$ \qtyRef{mass}} + \desc[german]{\qtyRef{fermi_energy}}{}{} + \eq{\EFermi = \frac{\hbar^2}{2m} \left(3\pi^2n\right)^{2/3}} + \end{formula} + \Subsection{2deg} - \desc{2D electron gas}{}{} - \desc[german]{2D Elektronengas}{}{} - \begin{ttext} - \eng{Lower dimension gases can be obtained by restricting a 3D gas with infinetly high potential walls on a narrow area with the width $L$.} - \ger{ - Niederdimensionale Elektronengase erhält man, wenn ein 3D Gas durch unendlich hohe Potentialwände auf einem schmalen Bereich mit Breite $L$ eingeschränkt wird. - } - \end{ttext} + \desc{2D electron gas / Quantum well}{Lower dimension gases can be obtained by restricting a 3D gas with infinetly high potential walls on a narrow area with the width $L$.}{} + \desc[german]{2D Elektronengas / Quantum well}{Niederdimensionale Elektronengase erhält man, wenn ein 3D Gas durch unendlich hohe Potentialwände auf einem schmalen Bereich mit Breite $L$ eingeschränkt wird.}{} \begin{formula}{confinement_energy} \desc{Confinement energy}{Raises ground state energy}{} \desc[german]{Confinement Energie}{Erhöht die Grundzustandsenergie}{} - \eq{\Delta E = \frac{\hbar^2 \pi^2}{2\masse L^2}} + \eq{\Delta E = \frac{\hbar^2 \pi^2}{2\meff L^2}} \end{formula} \Eng[plain_wave]{plain wave} @@ -60,7 +57,40 @@ \begin{formula}{energy} \desc{Energy}{}{} \desc[german]{Energie}{}{} - \eq{E_n = \underbrace{\frac{\hbar^2 k_\parallel^2}{2\masse}}_\text{$x$-$y$: \GT{plain_wave}} + \underbrace{\frac{\hbar^2 \pi^2}{2\masse L^2} n^2}_\text{$z$}} + \eq{E_{n,k_x,k_y} = \underbrace{\frac{\hbar^2 k_\parallel^2}{2\meff}}_\text{$x$-$y$: \GT{plain_wave}} + \underbrace{\frac{\hbar^2 \pi^2}{2\meff L^2} n^2}_\text{$z$}} + \end{formula} + + \begin{formula}{wavefunction} + \desc{Wavefunction}{}{$\chi$ envelope function} + \desc[german]{Wellenfunktion}{}{$\chi$ Einhüllende Funktion} + \eq{\Psi(\vecr) = \e^{\I \veck_\parallel\cdot\vecr_\parallel} \underbrace{\chi(z)}_{\text{quantized motion}}} + \end{formula} + + \begin{formula}{se} + \desc{Ben-Daniel-Duke Schrödinger equation}{}{\QtyRef{effective_mass}, $V$ \fRef{::effective_potential}, $\chi_n$ envelope functions, $E$ \qtyRef{energy}} + \desc[german]{Ben-Daniel-Duke Schrödingergleichung}{}{} + \eq{\left(-\frac{\hbar^2}{2} \pdv{}{z} \frac{1}{\meff_z(z)} \pdv{}{z} + V(z)\right) \chi_n(z) = E_{n,k_x,k_y} \chi_n(z)} + \end{formula} + + \begin{formula}{effective_potential} + \eng[elstat]{Electrostatic} + \ger[elstat]{Electrostatisch} + \eng[bandedge_modulation]{bandedge modulation} + \ger[bandedge_modulation]{Bandkantenmodulierung} + \eng[xc]{exchange correlation} + % \ger[xc]{} + \eng[image_charges]{image charges} + \ger[image_charges]{Bildladungen} + \desc{Effective Potential}{Often self-consistent solution of \fRef[SG]{::se} and \absRef{poisson_equation} required}{ + $V_\text{bm}(z)$ \gt{bandedge_modulation} + $V_\txe(z)$ \gt{elstat} + $V_\text{XC}(z)$ \gt{xc} + $V_\text{img}$ \gt{image_charges} + } + \desc[german]{Effekives Potential}{}{} + \eq{ V(z) = V_\text{bm}(z) - V_\txe(z) \pm V_\text{XC}(z) + V_\text{img} + } + \TODO{in real heterostructure, move to sc section} \end{formula} \begin{formula}{dos} @@ -68,15 +98,16 @@ \desc[german]{Zustandsdichte}{}{} \eq{D_\text{2D}(E) = \frac{m}{\pi\hbar^2}} \end{formula} + \TODO{plot band structure+dos? adv sc. slide 170} \Subsection{1deg} - \desc{1D electron gas / quantum wire}{}{} + \desc{1D electron gas / Quantum wire}{}{} \desc[german]{1D Eleltronengas / Quantendraht}{}{} \begin{formula}{energy} \desc{Energy}{}{} \desc[german]{Energie}{}{} - \eq{E_n = \frac{\hbar^2 k_x^2}{2\masse} + \frac{\hbar^2 \pi^2}{2\masse L_z^2} n_1^2 + \frac{\hbar^2 \pi^2}{2\masse L_y^2} n_2^2} + \eq{E_{nm,k_z} = \frac{\hbar^2 k_z^2}{2\meff_z} + \frac{\hbar^2 \pi^2}{2} \left(\frac{n^2}{\meff_xL_x^2} + \frac{m^2}{\meff_yL_y^2}\right)} \end{formula} \begin{formula}{dos} @@ -85,11 +116,22 @@ \eq{D_\text{1D}(E) = \frac{1}{\pi\hbar} \sqrt{\frac{m}{2}} \frac{1}{\sqrt{E}}} \end{formula} - \TODO{condunctance} + \begin{formula}{conductance} + \desc{Quantized conductance}{per 1D subband}{$T(E)$ transmission probability} + \desc[german]{Quantisierte Leitfähigkeit}{pro 1D Subband}{} + \eq{G = \frac{2e^2}{h} T(E) = \frac{2}{R_\txK} T(E)} + \end{formula} \Subsection{0deg} - \desc{0D electron gas / quantum dot}{}{} + \desc{0D electron gas / Quantum dot}{}{} \desc[german]{0D Elektronengase / Quantenpunkt}{}{} + + \begin{formula}{energy} + \desc{Energy}{}{} + \desc[german]{Energie}{}{} + \eq{E_{nml} = \left(\frac{\hbar^2\pi^2}{2m_\perp^*}\right) \left[ \left(\frac{n}{L_x}\right)^2 + \left(\frac{m}{L_y}\right)^2 + \left(\frac{l}{L_z}\right)^2\right]} + \end{formula} + \begin{formula}{dos} \desc{Density of states}{}{} \desc[german]{Zustandsdichte}{}{} diff --git a/src/cm/misc.tex b/src/cm/misc.tex index 620dd1c..11db919 100644 --- a/src/cm/misc.tex +++ b/src/cm/misc.tex @@ -2,6 +2,83 @@ \desc{Band theory}{}{} \desc[german]{Bändermodell}{}{} + \begin{formula}{strain} + \desc{Influence of strain}{}{} + \desc[german]{Einfluss von Dehnung}{}{} + \ttxt{\eng{ + \textbf{Hydrostatic strain (I)}: widens band gap, preserves symmetries \\ + \textbf{Biaxial strain (B)}: alters symmetry \Rightarrow lifts band degeneracies + }\ger{ + \textbf{Hydrostatische Dehnung}: vergrößert die Bandlücke, erhält Symmetrien \\ + \textbf{Biaxiale Dehnung}: verändert die Symmetrie \Rightarrow hebt Entartung der Bänder auf + }} + \end{formula} + + \Subsection{effective_mass} + \desc{Effective mass approximation}{Approximation leading to parabolic band dispersion. The higher the effective mass, the stronger the band is curved.}{} + \desc[german]{Effektive Masse - Näherung}{Näherung mit parabolischer Dispersion (Bändern). Je höher die effeltive Masse, desto stärker die Krümmung des Bandes.}{} + + \begin{formula}{effective_mass} + \desc{Effective mass}{}{Usually stated in terms of \ConstRef{electron_mass}} + \desc[german]{Effektive Masse}{}{Meistens als Vielfaches der \ConstRef{electron_mass} angegeben} + \quantity{\ten{\meff}}{\kg}{t} + \eq{\left(\frac{1}{\meff}\right)_{ij} = \frac{1}{\hbar^2} \pdv{E}{k_i,k_j}} + \end{formula} + + + \Subsubsection{kp} + \desc{$k\cdot p$ Method}{ + \fRef[Pertubative]{qm:qm_pertubation} method for calculating the effective mass of a band. + Treats the $\veck\cdot\vecp$ term in the Bloch Hamiltonian as second-order pertubation near an extrmum, usually at $k=0$. + }{} + \desc[german]{$k\cdot p$ Methode}{ + \fRef[Störungstheoretische]{qm:qm_pertubation} Methode zur Berechnung der effektiver Massen von Bändern. + Betrachtung des Terms $\veck\cdot\vecp$ im Bloch-Hamiltonian als Störung zweiter Ordnung um ein Extremum, meistens bei $k=0$. + }{} + \begin{formula}{dispersion} + \desc{Parabolic dispersion}{}{$n$ band, $\veck$ \qtyRef{wavevector}, \QtyRef{effective_mass}} + \desc[german]{Parabolische Dispersion}{}{} + \eq{E_{n,k} = E_{n,0} + \frac{\hbar^2k^2}{2\meff}} + \end{formula} + + \begin{formula}{effective_mass} + \desc{Effective mass}{for non-degenerate Bands}{$u_{n,\veck}$ \absRef{bloch_function} of band $n$ at $\veck$, $\veck$ \fRef{wavevector}, $\vecp$ \absRef{momentum_operator}} + \desc[german]{Effektive Masse}{für nicht-entartete Bänder}{} + \eq{ + \frac{1}{\meff} = \frac{1}{m_0} + \frac{2}{m_0^2k^2} \sum_{m\neq n} \frac{\abs{\Braket{u_{n,0}|\veck\cdot\vecp|u_{m,0}}}}{E_{n,0} - E_{m,0}} + } + \ttxt{\eng{ + \begin{itemize} + \item[\Rightarrow] Energy separation of bands $n$ and $m$ determines importance of $m$ on the effective mass of $n$ + \item[\Rightarrow] Coupling between $n$ and $m$ only if $\Braket{u_{m,0}|\vecp|u_{n,p}} \neq 0$ (matrix element from group theory) + \end{itemize} + }\ger{ + \begin{itemize} + \item[\Rightarrow] Energieabstand der Bänder $n$ und $m$ bestimmt den Einfluss von $m$ auf die effektive Masse von $n$ + \item[\Rightarrow] Kopplung zwischen $n$ und $m$ nur wenn $\Braket{u_{m,0}|\vecp|u_{n,p}} \neq 0$ (Matrixelement aus der Gruppentheorie) + \end{itemize} + }} + \end{formula} + + \begin{formula}{conduction_band_mass} + \desc{Effective mass of the conduction band}{in most group IV,III-V and II-VI semiconductors}{$P^2$ matrix element, $\Egap$ \absRef{bandgap}} + \desc[german]{Effektive Masse des Leitungsbands}{für die meisten IV, III-V und II-VI Halbleiter}{} + \eq{\frac{m}{\meff_\txC} \approx 1 + \frac{1}{\Egap} \frac{2P^2}{m} = 1 + \frac{\SI{20}{\electronvolt}}{\Egap}} + \end{formula} + + \begin{bigformula}{splitting} + \eng[binding]{binding} + \eng[antibinding]{anti-binding} + \ger[binding]{bindend} + \ger[antibinding]{anti-bindend} + + \desc{Band splitting}{}{} + \desc[german]{Band Aufteilung}{}{} + \fcenter{ + \input{img_static/cm/bands_schematic.tex} + } + \end{bigformula} + \Subsection{hybrid_orbitals} \desc{Hybrid orbitals}{Hybrid orbitals are linear combinations of other atomic orbitals.}{} \desc[german]{Hybridorbitale}{Hybridorbitale werden durch Linearkombinationen von anderen atomorbitalen gebildet.}{} @@ -46,6 +123,7 @@ + \Section{diffusion} \desc{Diffusion}{}{} \desc[german]{Diffusion}{}{} @@ -62,7 +140,7 @@ \end{formula} \begin{formula}{einstein_relation} - \desc{Einstein relation}{Classical}{\QtyRef{diffusion_coefficient}, \mu \qtyRef{mobility}, \QtyRef{temperature}, $q$ \qtyRef{charge}} + \desc{Einstein relation}{Classical}{\QtyRef{diffusion_coefficient}, \QtyRef{mobility}, \QtyRef{temperature}, $q$ \qtyRef{charge}} \desc[german]{Einsteinrelation}{Klassisch}{} \eq{D = \frac{\mu \kB T}{q}} \end{formula} @@ -76,7 +154,7 @@ \begin{formula}{fick_law_1} \desc{Fick's first law}{Particle movement is proportional to concentration gradient}{\QtyRef{particle_current_density}, \QtyRef{diffusion_coefficient}, \QtyRef{concentration}} \desc[german]{Erstes Ficksches Gesetz}{Teilchenbewegung ist proportional zum Konzentrationsgradienten}{} - \eq{J = -D\frac{c}{x}} + \eq{J = -D\pdv{c}{x}} \end{formula} \begin{formula}{fick_law_2} diff --git a/src/cm/optics.tex b/src/cm/optics.tex new file mode 100644 index 0000000..73abb18 --- /dev/null +++ b/src/cm/optics.tex @@ -0,0 +1,161 @@ +\Section{optics} + \desc{Optics}{}{} + \desc[german]{Optik}{}{} + + \Subsection{insulator} + \desc{Dielectrics and Insulators}{}{} + \desc[german]{Dielektrika und Isolatoren}{}{} + + \begin{formula}{eom} + \desc{Equation of motion}{Nuclei remain quasi static, electrons respond to field}{$u$ \GT{dislocation}, $\gamma = \frac{1}{\tau}$ \GT{dampening}, \QtyRef{momentum_relaxation_time}, \QtyRef{electric_field}, \ConstRef{charge}, $\omega_0$ \GT{resonance_frequency}, \ConstRef{electron_mass}} + \desc[german]{Bewegungsgleichung}{Kerne bleiben quasi-statisch, Elektronen beeinflusst durch äußeres Feld}{} + \eq{m_\txe \odv{u}{t^2} = -e\E - m_\txe \gamma \pdv{u}{t} - m_\txe\omega_0^2 u} + \end{formula} + + \begin{formula}{lorentz} + \desc{Drude-Lorentz model}{Dipoles treated as classical harmonic oscillators}{$N$ number of oscillators (atoms), $\omega_0$ resonance frequency } + \desc[german]{Drude-Lorentz-Model}{Dipole werden als klassische harmonische Oszillatoren behandelt}{} + \eq{\epsilon_\txr(\omega) = 1+\chi + \frac{Ne^2}{\epsilon_0 m_\txe} \left(\frac{1}{\omega^2-\omega^2-i\gamma\omega}\right)} + \eq{ + \complex{\epsilon}_\txr(0) &\to 1+\chi + \frac{Ne^2}{\epsilon_0 m_\txe \omega_0^2} \\ + \complex{\epsilon}_\txr(\infty) &= \epsilon_\infty = 1+\chi + } + \TODO{plot} + \end{formula} + + \begin{formula}{clausius-mosotti} + \desc{Clausius-Mosotti relation}{for dense optical media: local field from external contribution + field from other dipoles}{$\chi_\txA$ \qtyRef[susecptibility]{susecptibility} of one atom, \QtyRef{relative_permittivity}, $N$ number of dipoles (atoms)} + \desc[german]{Clausius-Mosotti Beziehung}{}{} + \eq{\frac{(\epsilon_\txr - 1)}{\epsilon_\txr + 2} = \frac{N\chi_\txA}{3}} + \end{formula} + + + \Subsection{metal} + \desc{Metals and doped semiconductors}{}{} + \desc[german]{Metalle und gedopte Halbleiter}{}{} + + \begin{formula}{plasma_frequency} + \desc{Plasma frequency}{For metals and doped semiconductors.}{$\epsilon_\infty$ high frequency \qtyRef[permittivity]{permittivity}, \ConstRef{vacuum_permittivity}, \QtyRef{effetive_mass}, \ConstRef{charge}, $n$ \qtyRef{charge_carrier_density}} + \desc[german]{Plasmafrequenz}{In Metallen dotierten Halbleitern}{$\epsilon_\infty$ Hochfrequenz-\qtyRef{permittivity}, \ConstRef{vacuum_permittivity}, \QtyRef{effetive_mass}, \ConstRef{charge}, $n$ \qtyRef{charge_carrier_density}} + \eq{\omega_\txp = \left(\frac{en^2}{\epsilon_0 \epsilon_\infty \meff}\right)^{1/2}} + \ttxt{\eng{ + Characteristic frequency for collective motion in external field.\\ + For free charge carriers: perfect screening (reflection) of the external field for $\omega < \omega_\txp$. + }\ger{ + Charakteristische Frequenz der kollektiven Bewegung im externen Feld.\\ + Für freie Ladungsträger: perfekte Abschirmung (Reflektion) des äußeren Feldes bei $\omega<\omega_\txp$ + }} + \end{formula} + + \begin{formula}{dielectric_function} + \desc{\qtyRef{complex_dielectric_function}}{for a free electon plasma}{$\omega_\txp$ \fRef{::plasma_frequency}, $\omega_0$ \GT{resonance_frequency}, $\gamma = \frac{1}{\tau}$ \GT{dampening}, \QtyRef{momentum_relaxation_time}} + \desc[german]{}{für ein Plasma aus freien Elektronen}{} + \eq{ + \complex{\epsilon}_\txr(\omega) = 1 - \frac{\omega_\txp}{\omega_0^2 + i\gamma\omega} \\ + } + \end{formula} + + + \begin{formula}{absorption} + \desc{Free charge carrier absorption}{Exemplary values}{$\omega_\txp$ \fRef{::plasma_frequency}, \QtyRef{refraction_index_real}, \QtyRef{refraction_index_complex}, \QtyRef{absorption_coefficient}, $R$ \fRef{ed:optics:reflectivity}} + \desc[german]{Freie Ladungsträger}{Beispielwerte}{} + \fig{img/cm_sc_optics_free_electrons.pdf} + \TODO{Include equations? aus adv sc ex 10/1c} + \end{formula} + + \TODO{relation to AC and DC conductivity} + + \Subsubsection{sc_interband} + \desc{Interband transitions in semiconductors}{}{} + % \desc[german] + \begin{formula}{selection} + \desc{Selection rule}{}{} + \desc[german]{Auswahlregel}{}{} + \ttxt{\eng{ + Parity of wave functions must be opposite for the transition to occur + }\ger{ + Die Wellenfunktionen müssen unterschiedliche Parität haben, damit der Übergang möglich ist + }} + \end{formula} + + \begin{formulagroup}{transition_rate} + \desc{Transition rate}{}{} + \desc[german]{Übergangsrate}{}{} + \begin{formula}{absorption} + \desc{Absorption}{}{} + \desc[german]{Absorption}{}{} + \eq{W_{1\to2} = \frac{2\pi}{\hbar} \abs{M_{12}}^2 \delta(E_1-E_2+\hbar\omega)} + \end{formula} + \begin{formula}{emission} + \desc{Absorption}{}{} + \desc[german]{Absorption}{}{} + \eq{W_{2\to1} = \frac{2\pi}{\hbar} \abs{M_{12}}^2 \delta(E_1-E_2-\hbar\omega)} + \end{formula} + \TODO{stimulated vs spontaneous} + \TODO{matrix element stuff, kane energy} + \begin{formula}{possible_matrix_elements} + \desc{Matrix elements}{}{} + \desc[german]{}{}{} + \eq{\Braket{p_x|\hat{p}_x|s} = \Braket{p_y|\hat{p}_y|s} = \Braket{p_z|\hat{p}_z|s} \neq 0} + \TODO{heavy holes, light holes} + \end{formula} + + \end{formulagroup} + + \begin{formula}{jdos} + \desc{Joint density of states}{}{} + % \desc[german]{}{}{} + \ttxt{\eng{ + Desribes the density of states of an optical transition by combining the electron states in the valence band and hole states in the conduction band. + }\ger{ + Beschreibt die Zustandsdichte eines optischen Übergangs durch kombinieren der Elektronenzustände im Valenzband und der Lochzustände im Leitungsband. + }} + \eq{} + \end{formula} + + \begin{formula}{absorption_coefficient_direct} + \desc{\qtyRef{absorption_coefficient}}{For a direct semiconductor}{\QtyRef{angular_frequency}, \QtyRef{refraction_index_real}, \QtyRef{permittivity_complex}} + \desc[german]{}{Für direkte Halbleiter}{} + \eq{ + \alpha &= \frac{\omega}{\nreal c} \epsreal \\ + \left(\hbar\omega\alpha\right)^2 \propto \hbar\omega-\Egap + } + \end{formula} + + \begin{formula}{absorption_coefficient_indirect} + \desc{\qtyRef{absorption_coefficient}}{For an indirect semiconductor}{\QtyRef{angular_frequency}, $E_\txp$ phonon energy, $E_\text{ig}$ indirect gap} + \desc[german]{}{Für indirekte Halbleiter}{\QtyRef{angular_frequency}, $E_\txp$ Phononenergie, $E_\text{ig}$ indirekte Bandlücke} + \eq{ + \sqrt{\hbar\omega\alpha} \propto \hbar\omega \mp E_\txp - E_\text{ig} + } + \end{formula} + + + \begin{formulagroup}{quantum_well} + \desc{Interband absorption in quantum wells}{}{} + \desc[german]{Interbandabsorption in Quantum Wells}{}{} + \TODO{TODO} + \end{formulagroup} + + \begin{formulagroup}{exciton} + \desc{\fRef{cm:sc:exciton} absorption}{}{\QtyRef{band_gap}, $E_\text{binding}$ \fRef{cm:sc:exciton:binding_energy}} + \desc[german]{\fRef{cm:sc:exciton} Absorption}{}{} + \begin{formula}{absorption} + \desc{Absorption}{}{} + \desc[german]{Absorption}{}{} + \ttxt{\eng{ + Due to binding energy, exciton absorption can happen below the \absRef[band gap energy]{band_gap} \Rightarrow Sharp absorption peak below $\Egap$. + At high (room) temperatures, excitons are ionized by collisions with phonons. + }\ger{ + Aufgrund der Bindungsenergie kann die Exzitonenabsorption unterhalb der \absRef[Bandlückenenergie]{band_gap} auftreten \Rightarrow scharfer Absorptionspeak unterhalb von $\Egap$. + Bei hohen (Raum) Temperaturen werden Exzitons durch Kollisionen mit Phononen ionisiert. + }} + \eq{\hbar\omega = \Egap - E_\text{binding}} + \end{formula} + \end{formulagroup} + + + + \TODO{dipole approximation} + + diff --git a/src/cm/semiconductors.tex b/src/cm/semiconductors.tex index 2f88369..8e057f4 100644 --- a/src/cm/semiconductors.tex +++ b/src/cm/semiconductors.tex @@ -1,4 +1,3 @@ -\def\meff{m^{*}} \Section{sc} \desc{Semiconductors}{}{} \desc[german]{Halbleiter}{}{} @@ -19,21 +18,79 @@ } \end{formula} -\begin{formula}{fermi_dirac} - \desc{Fermi-Dirac distribution}{For electrons and holes}{} - \desc[german]{Fermi-Dirac Verteilung}{Für Elektronen und Löcher}{} - \eq{ - f_\txe(E) &= \frac{1}{\Exp{\frac{E-\EFermi}{\kB T}+1}}\\ - f_\txh(E) &= 1-f_\txe(E) - } -\end{formula} +\begin{formulagroup}{band_gap} + \absLabel + \absLabel[bandgap] + \desc{Band gap}{Energy band gap}{} + \desc[german]{Bandlücke}{Energielücke}{} + \begin{formula}{definition} + \desc{Definition}{}{} + \desc[german]{Definition}{}{} + \hiddenQuantity[band_gap]{\Egap}{\electronvolt}{s} + \ttxt{\eng{ + Energy gap between highest occupied (HO) and lowest unoccupied (LU) band/orbital\\ + \begin{itemize} + \item \textbf{direct}: HO and LU at same $\veck$ + \item \textbf{indirect} HO and LU at different $\veck$ + \end{itemize} + }\ger{ + Energielücke zwischen höchstem besetztem (HO) und niedrigsten unbesetzten (LU) Band/Orbital + \begin{itemize} + \item \textbf{direkt}: HO und LU bei gleichem $\veck$ + \item \textbf{indirekt}: HO und LU bei unterschiedlichem $\veck$ + \end{itemize} + }} + \eq{\Egap = \Econd - \Evalence} + \end{formula} + + \begin{formula}{temperature_dependence} + \desc{Temperature Dependence}{}{} + \desc[german]{Temperaturabhängigkeit}{}{} + \ttxt{\eng{ + $T\uparrow\quad\Rightarrow \Egap\downarrow$ + \begin{itemize} + \item distance of atoms increases with higher temperatures \Rightarrow less wave function overlap + \item Low temperature: less phonons avaiable for electron-phonon scattering + \end{itemize} + \TODO{why?} + }\ger{ + $T\uparrow\quad\Rightarrow \Egap\downarrow$ + \begin{itemize} + \item Atomabstand nimmt bei steigender Temperatur zu \Rightarrow kleiner Überlapp der Wellenfunktionen + \item Geringe Temperatur: weniger Phonon zur Elektron-Phonon-Streuung zur Vefügung + \end{itemize} + }} + \end{formula} + + \begin{formula}{vashni} + \desc{Vashni formula}{Empirical temperature dependence of the band gap}{} + \desc[german]{Vashni-Gleichung}{Empirische Temperaturabhängigket der Bandlücke}{} + \eq{\Egap(T) = \Egap(\SI{0}{\kelvin}) - \frac{\alpha T^2}{T + \beta}} + \end{formula} + + \begin{formula}{bandgaps} + \desc{Bandgaps of common semiconductors}{}{} + \desc[german]{Bandlücken wichtiger Halbleiter}{}{} + \begin{tabular}{l|CCc} + & \Egap(\SI{0}{\kelvin}) [\si{\eV}] & \Egap(\SI{300}{\kelvin}) [\si{\eV}] & \\ \hline + \GT{diamond} & 5,48 & 5,47 & \GT{indirect} \\ + Si & 1,17 & 1,12 & \GT{indirect} \\ + Ge & 0,75 & 0,66 & \GT{indirect} \\ + GaP & 2,32 & 2,26 & \GT{indirect} \\ + GaAs & 1,52 & 1,43 & \GT{direct} \\ + InSb & 0,24 & 0,18 & \GT{direct} \\ + InP & 1,42 & 1,35 & \GT{direct} \\ + CdS & 2.58 & 2.42 & \GT{direct} + \end{tabular} + \end{formula} +\end{formulagroup} \begin{formulagroup}{charge_carrier_density} \desc{Charge carrier density}{}{} \desc[german]{Ladungsträgerichte}{}{} \begin{formula}{general} - \desc{Charge carrier density}{General form}{$D$ \qtyRef{dos}, $f$ \fRef{:::fermi_dirac}} + \desc{Charge carrier density}{General form}{$D$ \qtyRef{dos}, $f$ \fRef{cm:egas:fermi-dirac}, \GT{see_also} \fRef{cm:egas:charge_carrier_density}} \desc[german]{Ladungsträgerdichte}{Allgemeine Form}{} \eq{ n &= \int_{\Econd}^\infty D_\txe f_\txe(E)\d E\\ @@ -71,42 +128,9 @@ \begin{formula}{mass_action} \desc{Mass action law}{Charge densities at thermal equilibrium, independent of doping}{$n_0/p_0$ \fRef{::charge_carrier_density:equilibrium}, $n_i/p_i$ \fRef{::charge_carrier_density:intrinsic}} \desc[german]{Massenwirkungsgesetz}{Ladungsträgerdichten im Equilibrium, unabhängig der Dotierung }{} - \eq{n_0p_0 = n_i^2 = p_i^2 \text{\TODO{check if ni=pi}}} + \eq{n_0p_0 = n_i^2 = p_i^2 } \end{formula} -\begin{formula}{bandgap} - \desc{Bandgap}{}{} - \desc[german]{Bandlücke}{}{} - \ttxt{\eng{ - Energy gap between highest occupied (HO) and lowest unoccupied (LU) band/orbital\\ - \begin{itemize} - \item \textbf{direct}: HO and LU at same $\veck$ - \item \textbf{indirect} HO and LU at different $\veck$ - \end{itemize} - }\ger{ - Energielücke zwischen höchstem besetztem (HO) und niedrigsten unbesetzten (LU) Band/Orbital - \begin{itemize} - \item \textbf{direkt}: HO und LU bei gleichem $\veck$ - \item \textbf{indirekt}: HO und LU bei unterschiedlichem $\veck$ - \end{itemize} - }} -\end{formula} - -\begin{formula}{bandgaps} - \desc{Bandgaps of common semiconductors}{}{} - \desc[german]{Bandlücken wichtiger Halbleiter}{}{} - \begin{tabular}{l|CCc} - & \Egap(\SI{0}{\kelvin}) [\si{\eV}] & \Egap(\SI{300}{\kelvin}) [\si{\eV}] & \\ \hline - \GT{diamond} & 5,48 & 5,47 & \GT{indirect} \\ - Si & 1,17 & 1,12 & \GT{indirect} \\ - Ge & 0,75 & 0,66 & \GT{indirect} \\ - GaP & 2,32 & 2,26 & \GT{indirect} \\ - GaAs & 1,52 & 1,43 & \GT{direct} \\ - InSb & 0,24 & 0,18 & \GT{direct} \\ - InP & 1,42 & 1,35 & \GT{direct} \\ - CdS & 2.58 & 2.42 & \GT{direct} - \end{tabular} -\end{formula} \begin{formula}{min_maj} @@ -124,17 +148,6 @@ } \end{formula} -\begin{formula}{effective_mass} - \desc{Effective mass}{}{} - \desc[german]{Effektive Masse}{}{} - \quantity{\ten{\meff}}{\kg}{t} - \eq{\left(\frac{1}{\meff}\right)_{ij} = \frac{1}{\hbar^2} \pdv{E}{k_i,k_j}} - \ttxt{\eng{ - Approximate effects using a effective mass. \TODO{more detail} - } - } -\end{formula} -\TODO{effective mass approx} \Subsection{dope} \desc{Doping}{}{} @@ -159,6 +172,7 @@ \end{itemize} }} \end{formula} + \begin{formula}{charge_neutrality} \desc{Charge neutrality}{Fermi level must adjust so that charge neutrality is preserved}{$N_{\txd/\txa}^{+/-}$ ionized donor/acceptor density, $n,p$ \fRef{cm:sc:charge_carrier_density}} \desc[german]{Ladungsneutralität}{Fermi-Level muss sich so anpassen, dass Ladungsneutralität erhalten ist}{$N_{\txd/\txa}^{+/-}$ Dichte der ionisierten Donatoren/Akzeptoren , $n,p$ \fRef{cm:sc:charge_carrier_density}} @@ -175,12 +189,35 @@ \end{formula} \begin{formula}{electron_density} - \desc{Charge carrier density}{In a doped semiconductor}{} - \desc[german]{Ladungsträgeridchte}{In einem dotierten Halbleiter}{} - \fig[width=0.5\textwidth]{img_static/cm_sc_doped_TODO.png} - \TODO{plot} + \desc{Charge carrier density}{In a doped semiconductor}{Here: n-type (with donors), $N_\txD$ donor density, $E_\txD$ donor energy level} + \desc[german]{Ladungsträgeridchte}{In einem dotierten Halbleiter}{Hier: n-Typ (mit Donatoren), $N_\txD$ Donatorendichte, $E_\txD$ Energieniveau der Donatoren} + \fig{img/cm_sc_charge_carrier_density.pdf} + \ttxt{\eng{ + \begin{itemize} + \item Instrinsic: $\ln(n) \propto -\frac{\Econd-\Evalence}{2\kB T}$ + \item Saturation: $n = N_\txD$ all donors are ionized + \item Freeze-out: Some donors retrap electrons, $\ln(n) \propto -\frac{\Econd-E_\txD}{2\kB T}$ + \end{itemize} + + }\ger{ + \begin{itemize} + \item Intrinsisch $\ln(n) \propto -\frac{\Econd-\Evalence}{2\kB T}$ + \item Sättigung $n = N_\txD$ alle Donatoren sind ionisiert + \item Freeze-out: Donatoren binden Elektronen wieder, $\ln(n) \propto -\frac{\Econd-E_\txD}{2\kB T}$ + \end{itemize} + }} \end{formula} + \begin{formula}{modulation} + \desc{Modulation doping}{}{} + % \desc[german]{}{}{} + \ttxt{\eng{ + Free charge carriers and donors are spatially separated \Rightarrow no scattering at donors \Rightarrow very high \qtyRef[carrier mobilities]{mobility} + }\ger{ + Freie Ladungsträger räumlich von den Dotieratomen getrennt \Rightarrow keine Streuung an Dotieratomen \Rightarrow sehr hohe \qtyRef[Mobilität der Ladungsträger]{mobility} + }} + \end{formula} + \Subsection{defect} \desc{Defects}{}{} \desc[german]{Defekte}{}{} @@ -297,65 +334,196 @@ }} \end{formula} -\Subsection{junctions} + + +\Subsection{devices} \desc{Devices and junctions}{}{} \desc[german]{Bauelemente und Kontakte}{}{} - \begin{formula}{metal-sc} - \desc{Metal-semiconductor junction}{}{} - \desc[german]{Metall-Halbleiter Kontakt}{}{} - % \ttxt{ - % \eng{ + \Subsubsection{metal-sc} + \desc{Metal-semiconductor junction}{Here: with n-type}{} + \desc[german]{Metall-Halbleiter Kontakt}{Hier: mit n-Typ}{} + \begin{formulagroup}{schottky_barrier} + \desc{Schottky barrier}{Tunnel contact, for $\Phi_\txM > \Phi_\txS$, Rectifying \fRef{cm:sc:junctions:metal-sc}}{} + % \desc[german]{}{}{} + \begin{bigformula}{band_diagram} + \desc{Band diagram}{}{} + \desc[german]{Banddiagramm}{}{} + \fcenter{ + \resizebox{0.49\textwidth}{!}{\input{img_static/cm/sc_junction_metal_n_sc_separate.tex}} + \resizebox{0.49\textwidth}{!}{\input{img_static/cm/sc_junction_metal_n_sc.tex}} + } + \TODO{Work function electron affinity sind doch Energien und keine Potentiale, warum wird also immer $q$ davor geschrieben?} + \ttxt{\eng{ + Upon contact, electrons flow from the semicondctor to the metal to align the Fermi levels \Rightarrow leaves depletion region of positively charged donors as barrier + }\ger{ + + }} + \end{bigformula} + \begin{formula}{full_depletion_approx} + \desc{Full depletion approximation}{Assume full depletion area with width $W_\txD$}{$N_\txD$ doping concentration} + % \desc[german]{}{}{} + \eq{\rho(x) = \left\{ \begin{array}{ll} qN_\txD & 0] (\xxmid-0.5,#3) -- (\xxmid+0.5,#3); + } + \midwayArrow{\atmx}{\molx}{\textY} + \midwayArrow{\molx}{\cstx}{\textY} + +\end{tikzpicture} + + +\end{document} diff --git a/src/img/cm_crystal_NaCl.png b/src/img/cm_crystal_NaCl.png index 76eb20b..c7df230 100644 Binary files a/src/img/cm_crystal_NaCl.png and b/src/img/cm_crystal_NaCl.png differ diff --git a/src/img/cm_crystal_wurtzite.png b/src/img/cm_crystal_wurtzite.png index 402ee89..4391631 100644 Binary files a/src/img/cm_crystal_wurtzite.png and b/src/img/cm_crystal_wurtzite.png differ diff --git a/src/img/cm_crystal_zincblende.png b/src/img/cm_crystal_zincblende.png index 11a56d7..b16afc1 100644 Binary files a/src/img/cm_crystal_zincblende.png and b/src/img/cm_crystal_zincblende.png differ diff --git a/src/img_static/cm/bands_schematic.tex b/src/img_static/cm/bands_schematic.tex new file mode 100644 index 0000000..442c0aa --- /dev/null +++ b/src/img_static/cm/bands_schematic.tex @@ -0,0 +1,87 @@ +\begin{tikzpicture} + \pgfmathsetmacro{\lvlW}{1} % width + \pgfmathsetmacro{\lvlDst}{\lvlW*0.1} % line distance + \pgfmathsetmacro{\atmx}{0} + \pgfmathsetmacro{\molx}{3} + \pgfmathsetmacro{\cstx}{7} + \pgfmathsetmacro{\asy}{0} + \pgfmathsetmacro{\apy}{\asy+1.5} + \pgfmathsetmacro{\mss}{2.2} % s splitting + \pgfmathsetmacro{\mps}{2.2} % p splitting + \pgfmathsetmacro{\msby}{\asy-0.5*\mss} % molecule s bonding y + \pgfmathsetmacro{\msay}{\asy+0.5*\mss} % molecule s antibonding y + \pgfmathsetmacro{\mpby}{\apy-0.5*\mps} + \pgfmathsetmacro{\mpay}{\apy+0.5*\mps} + \pgfmathsetmacro{\textY}{\msby-1} + + \tikzset{ + atom/.style={fill=fg1,circle,minimum size=0.2cm,inner sep=0}, + } + % 1: name + % 2: center pos + % 3: n lines + % 4: n atoms + \newcommand\drawLevel[4]{ + % atoms + \foreach \i in {1,...,#3} { + \pgfmathsetmacro{\yy}{-\lvlDst*(#3+1)/2 + \i*\lvlDst } + % \pgfmathsetmacro{\yy}{0} + \draw ($#2 - (\lvlW/2,0) + (0,\yy)$) -- ($#2 + (\lvlW/2,0) + (0,\yy)$); + } + \path ($#2 - (\lvlW/2,0)$) coordinate (#1 left); + \path ($#2 + (\lvlW/2,0)$) coordinate (#1 right); + % \draw[color=red] ($#2 - (\lvlW/2,0)$) -- ($#2 + (\lvlW/2,0)$); + % atoms + \foreach \i in {1,...,#4} { + \ifnum #4=0 + \else + \pgfmathsetmacro{\xx}{-\lvlW/2+\i*\lvlW/(#4+1)} + % \pgfmathsetmacro{\yy}{0} + \node[atom] at ($#2 + (\xx,0)$) {}; + \fi + } + } + + % 1:name + % 2: center pos + % 3: height + % 4: fill options + \newcommand\drawLevelFill[4]{ + \path ($#2 - (\lvlW/2,0)$) coordinate (#1 left); + \path ($#2 + (\lvlW/2,0)$) coordinate (#1 right); + \draw[#4] ($(#1 left) + (0, #3/2)$) rectangle ($(#1 right) - (0, #3/2)$); + } + + % atom + \drawLevel{as}{(\atmx,\asy)}{2}{2} \node[anchor=east] at (as left) {$s$}; + \drawLevel{ap}{(\atmx,\apy)}{6}{3} \node[anchor=east] at (ap left) {$p$}; + \node at (\atmx,\textY) {\GT{atom}}; + + % molecule + \drawLevel{msb}{(\molx,\msby)}{1}{1} \node[anchor=west] at (msb right) {$s$ \gt{binding}}; + \drawLevel{msa}{(\molx,\msay)}{1}{0} \node[anchor=west] at (msa right) {$s$ \gt{antibinding}}; + \drawLevel{mpb}{(\molx,\mpby)}{3}{3} \node[anchor=west] at (mpb right) {$p$ \gt{binding}}; + \drawLevel{mpa}{(\molx,\mpay)}{3}{0} \node[anchor=west] at (mpa right) {$p$ \gt{antibinding}}; + \node at (\molx,\textY) {\GT{molecule}}; + + \draw[dashed] (as right) -- (msb left); + \draw[dashed] (as right) -- (msa left); + \draw[dashed] (ap right) -- (mpb left); + \draw[dashed] (ap right) -- (mpa left); + + \node at (\cstx,\textY) {\GT{crystal}}; + \drawLevelFill{cv1}{(\cstx,\msby)}{0.3}{sc occupied,draw} + \drawLevelFill{cv2}{(\cstx,\mpby)}{0.5}{sc occupied,draw} \node[anchor=west] at (cv2 right) {\GT{valence band}}; + \drawLevelFill{cc1}{(\cstx,\msay)}{0.3}{} \node[anchor=west] at (cc1 right) {\GT{conduction band}}; + \drawLevelFill{cc2}{(\cstx,\mpay)}{0.5}{} + + % 1: x1, 2: x2, 3: y + \newcommand\midwayArrow[3]{ + \pgfmathsetmacro{\xxmid}{#1+(#2-#1)/2} + \draw[->] (\xxmid-0.5,#3) -- (\xxmid+0.5,#3); + } + \midwayArrow{\atmx}{\molx}{\textY} + \midwayArrow{\molx}{\cstx}{\textY} + +\end{tikzpicture} + diff --git a/src/img_static/cm/sc_2deg_device.tex b/src/img_static/cm/sc_2deg_device.tex new file mode 100644 index 0000000..6ac5bab --- /dev/null +++ b/src/img_static/cm/sc_2deg_device.tex @@ -0,0 +1,32 @@ +\pgfmathsetmacro{\EgapH}{1.4} +\pgfmathsetmacro{\EfermiY}{0} +\pgfmathsetmacro{\EcondY}{\EfermiY+0.5*\EgapH} +\pgfmathsetmacro{\EvalY}{\EfermiY-0.5*\EgapH} +\pgfmathsetmacro{\DegDepth}{0.5} +\pgfmathsetmacro{\GaAsW}{3} +\pgfmathsetmacro{\SpacerW}{0.4} +\pgfmathsetmacro{\AlGaAsW}{3} +% calc +\pgfmathsetmacro{\bendLW}{\SpacerW+\AlGaAsW} +\pgfmathsetmacro{\bendLH}{0.8} +\newcommand\lineBendL{ + ..controls ++(-0.25*\bendLW,-1.7*\bendLH) and ++(0.5*\bendLW,-1.7*\bendLH) .. ++(-\bendLW,\bendLH) +} +\pgfmathsetmacro{\bendRW}{\GaAsW-\DegDepth} +\pgfmathsetmacro{\bendRH}{0.5*\EgapH} +\pgfmathsetmacro{\DegBottomY}{\EfermiY-\DegDepth} +\newcommand\lineBendR{ + ..controls ++(\DegDepth,\DegDepth) and ++(-0.25*\bendRW,0) .. ++(\bendRW,\bendRH) +} +\pgfmathsetmacro{\rightX}{0+\DegDepth+\bendRW} +\pgfmathsetmacro{\leftX}{0-\bendLW} +\begin{tikzpicture} + \fill[color=bg-blue] (0,\DegBottomY) coordinate(2deg bot) -- ++(0,\DegDepth) -- ++(\DegDepth,0) -- cycle; + \draw[sc band con] (2deg bot) -- ++(\DegDepth,\DegDepth) \lineBendR node[anchor=west] {$\Econd$}; + \draw[sc band con] (2deg bot) -- ++(0,2) \lineBendL; + \draw[sc band val] ($(2deg bot)-(0,\EgapH)$) -- ++(0,-1) \lineBendL; + \draw[sc band val] ($(2deg bot)-(0,\EgapH)$) -- ++(\DegDepth,\DegDepth) \lineBendR node[anchor=west] {$\Evalence$}; + \draw[sc fermi level] (\leftX, \EfermiY) -- (\rightX, \EfermiY) node[anchor=west] {$\Efermi$}; + % \draw[thick] (0,-\EgapH) coordinate (EV) node[anchor=west] {$\Evalence$} \lineBendR -- ++(-\bendRW,-\bendRH) coordinate (2deg v) -- ++(0,-0.5) \lineBendL; + % \draw[thick] (EV) \lineBendL coordinate (middletop) -- ++(0,0.5) -- ++(\bendRW,\bendRH) \lineBendR coordinate (EV) node[anchor=west] {$\Evalence$}; +\end{tikzpicture} diff --git a/src/img_static/cm/sc_junction_metal_n_sc.tex b/src/img_static/cm/sc_junction_metal_n_sc.tex index f84069c..6a9c71b 100644 --- a/src/img_static/cm/sc_junction_metal_n_sc.tex +++ b/src/img_static/cm/sc_junction_metal_n_sc.tex @@ -31,6 +31,8 @@ % axes \draw[->] (0,0) -- (\tkW+0.2,0) node[anchor=north] {$x$}; \draw[->] (0,0) -- (0,\tkH+0.2) node[anchor=east] {$E$}; +\tkXTick{\tkRx}{$0$} +\tkXTick{\tkRx+\tkRBendW}{$W_\txD$} % right bands \path[sc occupied] (\tkRx, 0) -- \rightBandUp{}{\tkREv} -- (\tkW, 0) -- cycle; diff --git a/src/img_static/cm/sc_junction_ohmic.tex b/src/img_static/cm/sc_junction_ohmic.tex index 85900be..c57ac4d 100644 --- a/src/img_static/cm/sc_junction_ohmic.tex +++ b/src/img_static/cm/sc_junction_ohmic.tex @@ -48,4 +48,3 @@ \drawDArrow{\tkRx+\tkRBendW}{\tkREc}{\tkREc-\tkRBendH}{$eU_\text{Bias}$} \end{tikzpicture} - diff --git a/src/img_static/cm_sc_doped_TODO.png b/src/img_static/cm_sc_doped_TODO.png new file mode 100644 index 0000000..aa2828a Binary files /dev/null and b/src/img_static/cm_sc_doped_TODO.png differ diff --git a/src/main.tex b/src/main.tex index c39aca0..f54694a 100644 --- a/src/main.tex +++ b/src/main.tex @@ -122,6 +122,7 @@ \input{util/translations.tex} +% \InputOnly{cm} % \InputOnly{test} \Input{math/math} @@ -145,10 +146,11 @@ \Input{cm/cm} \Input{cm/crystal} +\Input{cm/vib} \Input{cm/egas} \Input{cm/charge_transport} -\Input{cm/vib} \Input{cm/semiconductors} +\Input{cm/optics} \Input{cm/misc} \Input{cm/techniques} \Input{cm/topo} diff --git a/src/math/calculus.tex b/src/math/calculus.tex index 6ff25f4..9e2bd84 100644 --- a/src/math/calculus.tex +++ b/src/math/calculus.tex @@ -176,10 +176,22 @@ \desc{Vector calculus}{}{} \desc[german]{Vektor Analysis}{}{} \begin{formula}{laplace} + \absLabel[laplace_operator] \desc{Laplace operator}{}{} \desc[german]{Laplace-Operator}{}{} \eq{\laplace = \Grad^2 = \pdv[2]{}{x} + \pdv[2]{}{y} + \pdv[2]{}{z}} \end{formula} + + \begin{formula}{double_cross_product} + \desc{Double cross product}{}{} + \desc[german]{Zweifaches Kreuzproduct}{}{} + \eq{ + \veca \times (\vecb \times \vecc) &= \vecb(\veca\cdot\vecc) - \vecc(\veca\cdot\vecb) \\ + (\veca \times \vecb) \times \vecc &= \vecb(\vecc\cdot\veca) - \veca(\vecb\cdot\vecc) + } + \end{formula} + + \Subsubsection{sphere} \desc{Spherical symmetry}{}{} \desc[german]{Kugelsymmetrie}{}{} diff --git a/src/pkg/mqformula.sty b/src/pkg/mqformula.sty index f37d927..929e7c8 100644 --- a/src/pkg/mqformula.sty +++ b/src/pkg/mqformula.sty @@ -1,12 +1,30 @@ \ProvidesPackage{mqformula} -\def\descwidth{0.3\textwidth} -\def\eqwidth{0.65\textwidth} +\RequirePackage{framed} % for leftbar \RequirePackage{mqfqname} \RequirePackage{mqconstant} \RequirePackage{mqquantity} +\newlength\mqformula@formulaBoxWidth +\setlength\mqformula@formulaBoxWidth{\the\dimexpr\textwidth * 65/100\relax} +\newlength\mqformula@formulaBoxLeftMargin +\setlength\mqformula@formulaBoxLeftMargin{1cm} +\newlength\mqformula@ruleWidth +\setlength\mqformula@ruleWidth{0.5pt} +\newlength\mqformula@ruleHMargin +\setlength\mqformula@ruleHMargin{0.8pt} +\newlength\mqformula@groupBarWidth +\setlength\mqformula@groupBarWidth{\mqformula@ruleWidth+\mqformula@ruleHMargin} +\newlength\mqformala@descriptionWidth + +% The box should have a constant width, so the description width has to adapt +% For example, it is smaller in a formulagroup because of the left bar +\def\descwidth{\the\dimexpr\linewidth-\mqformula@formulaBoxWidth - \mqformula@formulaBoxLeftMargin\relax} +% \def\descwidth{0.2\textwidth} + +\def\Newcommand#1{\let#1\undefined\newcommand#1} + % % FORMULA ENVIRONMENT % The following commands are meant to be used with the formula environment @@ -18,11 +36,12 @@ % 3: fqname of a translation that holds the explanation \newcommand{\NameWithDescription}[3][\descwidth]{% \begin{minipage}{#1} + % {\color{red}\hrule} \raggedright\GT{#2}% \IfTranslationExists{#3}{% \\ {\color{fg1} \GT{#3}}% }{} - \end{minipage} + \end{minipage}% } @@ -30,9 +49,9 @@ \newsavebox{\contentBoxBox} % [1]: minipage width % 2: fqname of a translation that holds the explanation -\newenvironment{ContentBoxWithExplanation}[2][\eqwidth]{ - \def\ContentFqName{#2} - \begin{lrbox}{\contentBoxBox} +\newenvironment{ContentBoxWithExplanation}[2][\the\mqformula@formulaBoxWidth]{% + \def\ContentFqName{#2}% + \begin{lrbox}{\contentBoxBox}% \begin{minipage}{#1} }{ \IfTranslationExists{\ContentFqName}{% @@ -45,8 +64,8 @@ \endgroup% }{} \end{minipage} - \end{lrbox} - \fbox{\usebox{\contentBoxBox}} + \end{lrbox}% + \fbox{\usebox{\contentBoxBox}}% } @@ -59,12 +78,12 @@ % makes this formula referencable with \abbrRef{} % [1]: label to use % 2: Abbreviation to use for references - \newcommand{\abbrLabel}[2][#1]{ + \Newcommand{\abbrLabel}[2][#1]{ \abbrLink[\fqname]{##1}{##2} } % makes this formula referencable with \absRef{} - % [1]: label to use - \newcommand{\absLabel}[1][#1]{ + % [1]: to use, defaults to formula key + \Newcommand{\absLabel}[1][#1]{ \absLink[\fqname]{\fqname}{##1} } @@ -108,16 +127,17 @@ ##2 \end{ttext} } - % 1: symbol - % 2: units - % 3: comment key to translation - \newcommand{\quantity}[3]{% - \quantity@new[\fqname]{#1}{##1}{##2}{##3} + % [1]: key, defaults to formula key + % 2: symbol + % 3: units + % 4: comment key to translation + \newcommand{\quantity}[4][#1]{% + \quantity@new[\fqname]{##1}{##2}{##3}{##4} \newFormulaEntry - \quantity@print{#1} + \quantity@print{##1} } - \newcommand{\hiddenQuantity}[3]{% - \quantity@new[\fqname]{#1}{##1}{##2}{##3} + \newcommand{\hiddenQuantity}[4][#1]{% + \quantity@new[\fqname]{##1}{##2}{##3}{##4} } % must be used only in third argument of "constant" command @@ -129,16 +149,17 @@ % 1: symbol % 2: either exp or def; experimentally or defined constant % 3: one or more \val{value}{unit} commands - \newcommand{\constant}[3]{ - \constant@new[\fqname]{#1}{##1}{##2} + \newcommand{\constant}[4][#1]{ + \constant@new[\fqname]{##1}{##2}{##3} \begingroup - ##3 + ##4 \endgroup \newFormulaEntry - \constant@print{#1} + \constant@print{##1} } \newcommand{\fsplit}[3][0.5]{ + \newFormulaEntry \begingroup \renewcommand{\newFormulaEntry}{} \begin{minipage}{##1\linewidth} @@ -148,7 +169,11 @@ ##3 \end{minipage} \endgroup - \newFormulaEntry + } + + \newcommand{\fcenter}[1]{% + \newFormulaEntry \centering % + ##1% } }{ \mqfqname@leave @@ -162,6 +187,7 @@ \par\noindent\ignorespaces % \textcolor{gray}{\hrule} % \vspace{0.5\baselineskip} + % {\color{red}\hrule} \NameWithDescription[\descwidth]{\fqname}{\fqname:desc} \hfill \begin{ContentBoxWithExplanation}{\fqname:defs} @@ -186,9 +212,7 @@ \par\noindent\ignorespaces % \textcolor{gray}{\hrule} % \vspace{0.5\baselineskip} - \textbf{% - \raggedright\GT{\fqname}\ignorespaces% - }% + \raggedright\GT{\fqname}\ignorespaces% \IfTranslationExists{\fqname:desc}{\ignorespaces% : {\color{fg1} \GT{\fqname:desc}} }{} @@ -217,19 +241,32 @@ \newenvironment{formulagroup}[1]{ \mqfqname@enter{#1} + % makes this formula referencable with \abbrRef{} + % [1]: label to use + % 2: Abbreviation to use for references + \Newcommand{\abbrLabel}[2][#1]{ + \abbrLink[\fqname]{##1}{##2} + } + % makes this formula referencable with \absRef{} + % [1]: to use, defaults to formula key + \Newcommand{\absLabel}[1][#1]{ + \absLink[\fqname]{\fqname}{##1} + } + + % adapted from framed - leftbar + \def\FrameCommand{{\color{bg4}\vrule width \mqformula@ruleWidth} \hspace{\mqformula@ruleHMargin}}% + \MakeFramed {\advance\hsize-\width \FrameRestore}% + \par\noindent - \begin{minipage}{\textwidth} % using a minipage to now allow line breaks within the bigformula + \begin{minipage}{\textwidth-\mqformula@groupBarWidth} \mqfqname@label \par\noindent\ignorespaces % \textcolor{gray}{\hrule} % \vspace{0.5\baselineskip} - \textbf{ - \raggedright - \GT{\fqname} - } - \IfTranslationExists{\fqname:desc}{ + \raggedright\textbf{\GT{\fqname}}\ignorespaces% + \IfTranslationExists{\fqname:desc}{% : {\color{fg1} \GT{\fqname:desc}} - }{} + }{}% \hfill \par }{ @@ -244,6 +281,7 @@ \endgroup }{} \end{minipage} + \endMakeFramed \separateEntries % \textcolor{fg3}{\hrule} % \vspace{0.5\baselineskip} @@ -257,21 +295,24 @@ \renewcommand{\eqFLAlign}[2]{} \renewcommand{\fig}[2][]{} \renewcommand{\ttxt}[2][#1:desc]{} - % 1: symbol - % 2: units - % 3: comment key to translation - \renewcommand{\quantity}[3]{% - \quantity@new[\fqname]{#1}{##1}{##2}{##3} + % [1]: key + % 2: symbol + % 3: units + % 4: comment key to translation + \renewcommand{\quantity}[4][[#1]]{% + \quantity@new[\fqname]{##1}{##2}{##3}{##4} } - % 1: symbol - % 2: either exp or def; experimentally or defined constant - % 3: one or more \val{value}{unit} commands - \renewcommand{\constant}[3]{ - \constant@new[\fqname]{#1}{##1}{##2} + % [1]: key + % 2: symbol + % 3: either exp or def; experimentally or defined constant + % 4: one or more \val{value}{unit} commands + \renewcommand{\constant}[4][#1]{ + \constant@new[\fqname]{##1}{##2}{##3} \begingroup - ##3 + ##4 \endgroup } }{ \end{formulainternal} } + diff --git a/src/pkg/mqlua.sty b/src/pkg/mqlua.sty index 201c8a7..0fe59c8 100644 --- a/src/pkg/mqlua.sty +++ b/src/pkg/mqlua.sty @@ -33,7 +33,7 @@ warning("TEST") % returns: 1\si{unit1} = 1\si{unit2} = ... \begin{luacode*} function split_and_print_units(units) - if units == nil then + if units == nil or units == "" then tex.sprint("1") return end diff --git a/src/pkg/mqquantity.sty b/src/pkg/mqquantity.sty index 2c400ad..bcc8ebf 100644 --- a/src/pkg/mqquantity.sty +++ b/src/pkg/mqquantity.sty @@ -54,6 +54,6 @@ \newcommand\quantity@print[1]{ \begingroup % for label Symbol: $\luavar{quantityGetSymbol(\luastring{#1})}$ - \hfill Unit: $\directlua{split_and_print_units(quantities["#1"]["units"])}$ % + \hfill Unit: $\directlua{split_and_print_units(quantities[\luastring{#1}]["units"])}$ % \endgroup% } diff --git a/src/pkg/mqref.sty b/src/pkg/mqref.sty index 0a8901f..8ec1a66 100644 --- a/src/pkg/mqref.sty +++ b/src/pkg/mqref.sty @@ -118,9 +118,14 @@ \directlua{hyperref(\luastring{#2}, \luastring{#1})}% } -\newcommand{\fRef}[2][]{ - \directlua{hyperref(translateRelativeFqname(\luastring{#2}), \luastring{#1})}% -} +% [1]: link text +% 2: link target (fqname) +% Can be absolute or relative: +% ::<...> relative to current fqname +% :::<...> relative to section above this one +% etc. +\newcommand{\fRef}[2][]{\directlua{hyperref(translateRelativeFqname(\luastring{#2}), \luastring{#1})}} + % [1]: link text % 2: number of steps to take up % 3: link target relative to the previous fqname section @@ -252,13 +257,17 @@ end % [1]: text % 2: key \newcommand{\absRef}[2][]{% + % \directlua{ + % local text = (\luastring{#1} == "") and absLabelGetTranslationKey(\luastring{#2}) or \luastring{#1} + % if text \string~= "" then + % text = tlGetFallbackCurrent(text) + % end + % hyperref(absLabelGetTarget(\luastring{#2}, text)) + % }% + % TODO: find out if this works too, text shoud be handled by the hyperref function \directlua{ - local text = (\luastring{#1} == "") and absLabelGetTranslationKey(\luastring{#2}) or \luastring{#1} - if text \string~= "" then - text = tlGetFallbackCurrent(text) - end - hyperref(absLabelGetTarget(\luastring{#2}, text)) - }% + hyperref(absLabelGetTarget(\luastring{#2}), \luastring{#1}) + } } \newrobustcmd{\abbrRef}[1]{% \directlua{hyperref(abbrLabelGetTarget(\luastring{#1}), abbrLabelGetAbbr(\luastring{#1}))} diff --git a/src/qm/atom.tex b/src/qm/atom.tex index 3ddf88a..988cbe8 100644 --- a/src/qm/atom.tex +++ b/src/qm/atom.tex @@ -1,6 +1,7 @@ \def\vecr{{\vec{r}}} \def\abohr{a_\textrm{B}} + \Section{h} \desc{Hydrogen Atom}{}{} \desc[german]{Wasserstoffatom}{}{} @@ -12,8 +13,8 @@ \end{formula} \begin{formula}{potential} - \desc{Coulumb potential}{For a single electron atom}{$Z$ atomic number} - \desc[german]{Coulumb potential}{Für ein Einelektronenatom}{$Z$ Ordnungszahl/Kernladungszahl} + \desc{Coulomb potential}{For a single electron atom}{\QtyRef{atomic_number}} + \desc[german]{Coulomb potential}{Für ein Einelektronenatom}{} \eq{V(\vecr) = \frac{Z\,e^2}{4\pi\epsilon_0 r}} \end{formula} \begin{formula}{hamiltonian} @@ -43,9 +44,9 @@ \end{formula} \begin{formula}{energy} - \desc{Energy eigenvalues}{}{} + \desc{Energy eigenvalues}{}{\QtyRef{atomic_number}, $\mu$ \fRef{::reduced_mass}, \ConstRef{charge}, \ConstRef{vacuum_permittivity}, \ConstRef{planck2pi}, \ConstRef{bohr_radius}, \ConstRef{electron_mass}, \ConstRef{rydberg_energy}} \desc[german]{Energieeigenwerte}{}{} - \eq{E_n &= \frac{Z^2\mu e^4}{n^2(4\pi\epsilon_0)^2 2\hbar^2} = -E_\textrm{H}\frac{Z^2}{n^2}} + \eq{E_n &= \frac{Z^2\mu e^4}{n^2(4\pi\epsilon_0)^2 2\hbar^2} = 1 \text{Ry} \frac{\mu}{m_\txe} \frac{Z^2}{n^2}} \end{formula} \begin{formula}{rydberg_constant_heavy} @@ -66,9 +67,12 @@ \end{formula} \begin{formula}{rydberg_energy} - \desc{Rydberg energy}{Energy unit}{\ConstRef{rydberg_constant_heavy}, \ConstRef{planck}, \ConstRef{vacuum_speed_of_light}} + \desc{Rydberg energy}{Energy unit}{\ConstRef{rydberg_constant_heavy}, \ConstRef{planck}, \ConstRef{vacuum_speed_of_light}, \ConstRef{bohr_radius}} \desc[german]{Rydberg-Energy}{Energie Einheit}{} - \eq{1\,\text{Ry} = hc\,R_\infty} + \eq{1\,\text{Ry} = hc\,R_\infty = -\frac{\hbar^2}{2m_\txe a_0^2}} + \constant{\text{Ry}}{exp}{ + \val{13.605693122990(15)}{\electronvolt} + } \end{formula} \begin{formula}{bohr_radius} diff --git a/src/qm/qm.tex b/src/qm/qm.tex index 9b9aad3..f371b1f 100644 --- a/src/qm/qm.tex +++ b/src/qm/qm.tex @@ -19,6 +19,13 @@ \eng{The equations of motion of classical mechanics can be derived from quantum mechanics in the limit of large quantum numbers.} } \end{formula} + + \begin{formula}{heisenberg_uncertainty} + \desc{Heisenberg uncertainty principle}{}{\QtyRef{energy}, \QtyRef{time}, \ConstRef{planck2pi}} + \desc[german]{Heisenbergsche Unschärferelation}{}{} + \eq{\Delta E \Delta t \ge \frac{h}{4\pi}} + \end{formula} + \Subsection{op} \desc{Operators}{}{} \desc[german]{Operatoren}{}{} @@ -241,8 +248,8 @@ \end{formula} \begin{formula}{lindblad} - \desc{Lindblad master equation}{Generalization of von-Neummann equation for open quantum systems}{$h$ positive semidifnite matrix, $\hat{A}$ arbitrary operator} - \desc[german]{Lindblad-Mastergleichung}{Verallgemeinerung der von-Neumman Gleichung für offene Quantensysteme}{$h$ positiv-semifinite Matrix, $\hat{A}$ beliebiger Operator} + \desc{Lindblad master equation}{Generalization of von-Neummann equation for open quantum systems}{$h$ positive semidefinite matrix, $\hat{A}$ arbitrary operator} + \desc[german]{Lindblad-Mastergleichung}{Verallgemeinerung der von-Neumman Gleichung für offene Quantensysteme}{$h$ positiv-semidefinite Matrix, $\hat{A}$ beliebiger Operator} \eq{\dot{\rho} = \underbrace{-\frac{i}{\hbar} [\hat{H}, \rho]}_\text{reversible} + \underbrace{\sum_{n.m} h_{nm} \left(\hat{A}_n\rho \hat{A}_{m^\dagger} - \frac{1}{2}\left\{\hat{A}_m^\dagger \hat{A}_n,\rho \right\}\right)}_\text{irreversible}} \end{formula} diff --git a/src/quantities.tex b/src/quantities.tex index 4c822b0..f5f31dc 100644 --- a/src/quantities.tex +++ b/src/quantities.tex @@ -126,12 +126,6 @@ \quantity{\rho}{\coulomb\per\m^3}{s} \end{formula} - \begin{formula}{charge_carrier_density} - \desc{Charge carrier density}{Number of charge carriers per volume}{} - \desc[german]{Ladungsträgerdichte}{Anzahl der Ladungsträger pro Volumen}{} - \quantity{n}{\per\m^3}{s} - \end{formula} - \begin{formula}{frequency} \desc{Frequency}{}{} \desc[german]{Frequenz}{}{} @@ -200,3 +194,9 @@ \desc[german]{Fläche}{}{} \quantity{A}{m^2}{v} \end{formula} + + \begin{formula}{atomic_number} + \desc{Atomic number}{}{} + \desc[german]{Ordnungszahl}{Kernladungszahl}{} + \quantity{Z}{}{} + \end{formula} diff --git a/src/statistical_mechanics.tex b/src/statistical_mechanics.tex index 00b2f76..1f63fed 100644 --- a/src/statistical_mechanics.tex +++ b/src/statistical_mechanics.tex @@ -3,16 +3,17 @@ \desc[german]{Statistische Mechanik}{}{} -\begin{ttext} - \eng{ +\begin{formula}{quantities} + \desc{Quantities}{}{} + \desc[german]{Größen}{}{} + \ttxt{\eng{ \textbf{Extensive quantities:} Additive for subsystems (system size dependent): $S(\lambda E, \lambda V, \lambda N) = \lambda S(E, V, N)$\\ \textbf{Intensive quantities:} Independent of system size, ratio of two extensive quantities - } - \ger{ + }\ger{ \textbf{Extensive Größen:} Additiv für Subsysteme (Systemgrößenabhänig): $S(\lambda E, \lambda V, \lambda N) = \lambda S(E, V, N)$\\ \textbf{Intensive Größen:} Unabhängig der Systemgröße, Verhältnis zweier extensiver Größen - } -\end{ttext} + }} +\end{formula} \begin{formula}{liouville} \desc{Liouville equation}{}{$\{\}$ poisson bracket} @@ -616,12 +617,8 @@ \end{formula} \Subsection{vdw} - \desc{Van der Waals equation}{}{} - \desc[german]{Van der Waals Gleichung}{}{} - \begin{ttext} - \eng{Assumes a hard-core potential with a weak attraction.} - \ger{Annahme eines Harte-Kugeln Potentials mit einer schwachen Anziehung} - \end{ttext} + \desc{Van der Waals equation}{Assumes a hard-core potential with a weak attraction.}{} + \desc[german]{Van der Waals Gleichung}{Annahme eines Harte-Kugeln Potentials mit einer schwachen Anziehung}{} \begin{formula}{partition_sum} \desc{Partition sum}{}{$a$ internal pressure} \desc[german]{Zustandssumme}{}{$a$ Kohäsionsdruck} @@ -771,14 +768,16 @@ \end{formula} \begin{formula}{fermi_energy} - \desc{Fermi energy}{}{} - \desc[german]{Fermienergie}{}{} - \eq{\epsilon_\text{F} \coloneq \mu(T = 0)} + \desc{Fermi energy}{Energy up to which all states are occupied}{\QtyRef{chemical_potential}} + \desc[german]{Fermienergie}{Energie, bis zu der alle Zustände besetzt sind}{} + \eq{\Efermi = \mu(T = 0)} + \hiddenQuantity{\Efermi}{\electronvolt}{s} \end{formula} + \begin{formula}{fermi_temperature} \desc{Fermi temperature}{}{} \desc[german]{Fermi Temperatur}{}{} - \eq{T_\text{F} \coloneq \frac{\epsilon_\text{F}}{\kB}} + % \eq{T_\txF \coloneq \frac{\Efermi}{\kB}} \end{formula} \begin{formula}{fermi_impulse} diff --git a/src/test.tex b/src/test.tex index 6669d6b..a528eac 100644 --- a/src/test.tex +++ b/src/test.tex @@ -1,7 +1,16 @@ \part{Testing} -Textwidth: \the\textwidth -\\Linewidth: \the\linewidth +\makeatletter +Sizes: +\begin{itemize} + \item Textwidth: \the\textwidth + \item Linewidth: \the\linewidth + \item Formula Box: \the\mqformula@formulaBoxWidth + \item Formula Description: \descwidth + \item Linewidth: \the\linewidth + \item Linewidth: \the\linewidth +\end{itemize} +\makeatother % \directlua{tex.sprint("Compiled in directory: \\detokenize{" .. lfs.currentdir() .. "}")} \\ % \directlua{tex.sprint("Jobname: " .. tex.jobname)} \\ diff --git a/src/util/colorscheme.tex b/src/util/colorscheme.tex index 36ed1bf..827290c 100644 --- a/src/util/colorscheme.tex +++ b/src/util/colorscheme.tex @@ -1,15 +1,15 @@ % This file was generated by scripts/formulary.py % Do not edit it directly, changes will be overwritten \definecolor{fg0}{HTML}{000000} +\definecolor{fg1}{HTML}{1f1f1f} +\definecolor{fg2}{HTML}{3d3d3d} +\definecolor{fg3}{HTML}{5c5c5c} +\definecolor{fg4}{HTML}{7a7a7a} \definecolor{bg0}{HTML}{ffffff} -\definecolor{fg1}{HTML}{3c3836} -\definecolor{fg2}{HTML}{504945} -\definecolor{fg3}{HTML}{665c54} -\definecolor{fg4}{HTML}{7c6f64} -\definecolor{bg1}{HTML}{ebdbb2} -\definecolor{bg2}{HTML}{d5c4a1} -\definecolor{bg3}{HTML}{bdae93} -\definecolor{bg4}{HTML}{a89984} +\definecolor{bg1}{HTML}{dfdfdf} +\definecolor{bg2}{HTML}{bfbfbf} +\definecolor{bg3}{HTML}{9f9f9f} +\definecolor{bg4}{HTML}{808080} \definecolor{fg-red}{HTML}{9d0006} \definecolor{fg-orange}{HTML}{af3a03} \definecolor{fg-yellow}{HTML}{b57614} diff --git a/src/util/environments.tex b/src/util/environments.tex index 7fc46e5..34ebc85 100644 --- a/src/util/environments.tex +++ b/src/util/environments.tex @@ -48,8 +48,8 @@ variance = "math:pt:variance", median = "math:pt:median", } - if cases["\luaescapestring{##1}"] \string~= nil then - tex.sprint("\\hyperref["..cases["\luaescapestring{##1}"].."]{\\GT{##1}}") + if cases[\luastring{##1}] \string~= nil then + tex.sprint("\\fRef{"..cases[\luastring{##1}].."}") else tex.sprint("\\GT{##1}") end diff --git a/src/util/math-macros.tex b/src/util/math-macros.tex index c8706ca..d92d6b0 100644 --- a/src/util/math-macros.tex +++ b/src/util/math-macros.tex @@ -43,13 +43,16 @@ \newcommand\Egap{E_\text{gap}} % band gap energy \newcommand\Evac{E_\text{vac}} % vacuum energy \newcommand\masse{m_\text{e}} % electron mass +\newcommand\meff{m^{*}} \newcommand\Four{\mathcal{F}} % Fourier transform \newcommand\Lebesgue{\mathcal{L}} % Lebesgue % \newcommand\O{\mathcal{O}} % order \newcommand\PhiB{\Phi_\text{B}} % mag. flux \newcommand\PhiE{\Phi_\text{E}} % electric flux -\newcommand\nreal{n^{\prime}} % refraction real part -\newcommand\ncomplex{n^{\prime\prime}} % refraction index complex part +\newcommand\nreal{n^{\prime}} % refraction real part +\newcommand\ncomplex{n^{\prime\prime}} % refraction index complex part +\newcommand\epsreal{\epsilon^{\prime}} % permittivity real part +\newcommand\epscomplex{\epsilon^{\prime\prime}} % permittivity complex part \newcommand\I{i} % complex/imaginary unit \newcommand\crit{\text{crit}} % crit (for subscripts) \newcommand\muecp{\overline{\mu}} % electrochemical potential diff --git a/src/util/tikz_macros.tex b/src/util/tikz_macros.tex index 14e0c7b..9c020bb 100644 --- a/src/util/tikz_macros.tex +++ b/src/util/tikz_macros.tex @@ -22,6 +22,7 @@ miller plane/.style={fill=bg-purple,fill opacity=0.6,draw=fg-purple,color=fg-purple}, } +% annoteaded double ended arrow \newcommand\drawDArrow[4]{ \draw[<->] (#1,#2) -- (#1,#3) node[midway,right] () {#4}; } diff --git a/src/util/translations.tex b/src/util/translations.tex index ed2e682..ec299b1 100644 --- a/src/util/translations.tex +++ b/src/util/translations.tex @@ -31,6 +31,11 @@ \Eng[semiconductor]{Semiconductor} \Ger[semiconductor]{Halbleiter} +\Eng{conduction band}{conduction band} +\Ger{conduction band}{Leitungsband} +\Eng{valence band}{valance band} +\Ger{valence band}{Valenzband} + \Eng[creation_annihilation_ops]{Creation / Annihilation operators} \Ger[creation_annihilation_ops]{Erzeugungs / Vernichtungs-Operatoren}