sc
This commit is contained in:
parent
a4dd8a3d1b
commit
d2738907f8
@ -29,12 +29,12 @@ def dielectric_absorption():
|
||||
|
||||
omegas_THz = omegas / 1e12
|
||||
anno_color = COLORSCHEME["fg2"]
|
||||
axs[0].set_ylabel(r"$\epsreal(\omega)$")
|
||||
axs[0].set_ylabel(r"$\epsReal(\omega)$")
|
||||
axs[0].hlines([eps_real_0], omegas_THz[0], omegas_THz[omegas_THz.shape[0]//3], color=anno_color, linestyle="dotted")
|
||||
axs[0].hlines([eps_real_infty], omegas_THz[omegas_THz.shape[0]*2//3], omegas_THz[-1], color=anno_color, linestyle="dotted")
|
||||
axs[0].text(omegas_THz[-1], eps_real_infty, r"$\epsilon_\txr(\infty)$", ha="right", va="bottom", color=anno_color)
|
||||
axs[0].text(omegas_THz[0], eps_real_0, r"$\epsilon_\txr(0)$", ha="left", va="top", color=anno_color)
|
||||
axs[1].set_ylabel(r"$\epscomplex(\omega)$")
|
||||
axs[1].set_ylabel(r"$\epsImag(\omega)$")
|
||||
vals = [eps_real, eps_imag]
|
||||
for i in range(2):
|
||||
ax = axs[i]
|
||||
|
20
src/appendix.tex
Normal file
20
src/appendix.tex
Normal file
@ -0,0 +1,20 @@
|
||||
\Part{appendix}
|
||||
\desc{Appendix}{}{}
|
||||
\desc[german]{Anhang}{}{}
|
||||
\begin{formula}{world}
|
||||
\desc{World formula}{}{}
|
||||
\desc[german]{Weltformel}{}{}
|
||||
\eq{E = mc^2 +\text{AI}}
|
||||
\end{formula}
|
||||
\Input{quantities}
|
||||
\Input{constants}
|
||||
|
||||
% \listofquantities
|
||||
% \listoffigures
|
||||
% \listoftables
|
||||
\Section{elements}
|
||||
\desc{List of elements}{}{}
|
||||
\desc[german]{Liste der Elemente}{}{}
|
||||
\printAllElements
|
||||
\newpage
|
||||
|
@ -452,12 +452,12 @@
|
||||
%Current through an electrode iof a unimolecular redox reaction with both anodic and cathodic reaction occuring on the same electrode
|
||||
\desc[german]{Butler-Volmer-Gleichung}{Reaktionskinetik in der Nähe des Gleichgewichtspotentials}
|
||||
{$j$ \qtyRef{current_density}, $j_0$ Austauschstromdichte, $\eta$ \fRef{ch:el:kin:overpotential}, \QtyRef{temperature}, $z$ \qtyRef{charge_number}, \ConstRef{faraday}, \ConstRef{universal_gas}, $\alpha_{\txC/\txA}$ Ladungstransferkoeffizient an der Kathode/Anode, $\text{rf}$ \fRef{::roughness_factor}}
|
||||
\newFormulaEntry
|
||||
\begin{gather}
|
||||
j = j_0 \,\rfactor\, \left[ \Exp{\frac{(1-a_\txC) z F \eta}{RT}} - \Exp{-\frac{\alpha_\txC z F \eta}{RT}}\right]
|
||||
\intertext{\GT{with}}
|
||||
\alpha_\txA = 1 - \alpha_\txC
|
||||
\end{gather}
|
||||
\separateEntries
|
||||
\fig{img/ch_butler_volmer.pdf}
|
||||
\end{formula}
|
||||
|
||||
|
@ -42,7 +42,7 @@
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{mean_free_path}
|
||||
\abbrLabel{mfp}
|
||||
\abbrLabel{MFP}
|
||||
\desc{Mean free path}{}{}
|
||||
\desc[german]{Mittlere freie Weglänge}{}{}
|
||||
\eq{\ell = \braket{v} \tau}
|
||||
|
@ -292,3 +292,121 @@
|
||||
|
||||
}
|
||||
\end{formula}
|
||||
|
||||
\Subsection{defect}
|
||||
\desc{Defects}{}{}
|
||||
\desc[german]{Defekte}{}{}
|
||||
\Subsubsection{point}
|
||||
\desc{Point defects}{}{}
|
||||
\desc[german]{Punktdefekte}{}{}
|
||||
\begin{formula}{vacancy}
|
||||
\desc{Vacancy}{}{}
|
||||
\desc[german]{Fehlstelle}{}{}
|
||||
\ttxt{\eng{
|
||||
\begin{itemize}
|
||||
\item Lattice site missing an atom
|
||||
\item Low formation energy
|
||||
\end{itemize}
|
||||
}\ger{
|
||||
\begin{itemize}
|
||||
\item Unbesetzter Gitterpunkt
|
||||
\item Geringe Formationsenergie
|
||||
\end{itemize}
|
||||
}}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{interstitial}
|
||||
\desc{Interstitial}{}{}
|
||||
\desc[german]{}{}{}
|
||||
\ttxt{\eng{
|
||||
\begin{itemize}
|
||||
\item Extranous atom between lattice atoms
|
||||
\item High formation energy
|
||||
\end{itemize}
|
||||
}\ger{
|
||||
\begin{itemize}
|
||||
\item Zusätzliches Atom zwischen Gitteratomen
|
||||
\item Hohe Formationsenergy
|
||||
\end{itemize}
|
||||
}}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{schottky}
|
||||
\desc{Schottky defect}{}{}
|
||||
\desc[german]{Schottky-Defekt}{}{}
|
||||
\ttxt{\eng{
|
||||
Atom type A \fRef{:::vacancy} + atom type B \fRef{:::vacancy}.
|
||||
Only in (partially) ionic materials.
|
||||
}\ger{
|
||||
\fRef{:::vacancy} von Atomsorte A und \fRef{:::vacancy} von Atomsorte B.
|
||||
Tritt nur in ionischen Materialiern auf.
|
||||
}}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{frenkel}
|
||||
\desc{Frenkel defect}{}{}
|
||||
\desc[german]{Frenkel Defekt}{}{}
|
||||
\ttxt{\eng{
|
||||
\fRef{:::vacancy} + \fRef{:::interstitial}
|
||||
}\ger{
|
||||
\fRef{:::vacancy} + \fRef{:::interstitial}
|
||||
}}
|
||||
\end{formula}
|
||||
|
||||
\Subsubsection{line}
|
||||
\desc{Line defects}{}{}
|
||||
\desc[german]{Liniendefekte}{}{}
|
||||
\begin{formula}{edge}
|
||||
\desc{Edge distortion}{}{}
|
||||
\desc[german]{Stufenversetzung}{}{}
|
||||
\ttxt{\eng{
|
||||
Insertion of an extra plane of atoms
|
||||
}\ger{
|
||||
Einschiebung einer zusätzliche Atomebene
|
||||
}}
|
||||
\TODO{images}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{screw}
|
||||
\desc{Screw distortion}{}{}
|
||||
\desc[german]{Schraubenversetzung}{}{}
|
||||
\ttxt{\eng{
|
||||
\TODO{TODO}
|
||||
}\ger{
|
||||
|
||||
}}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{burgers_vector}
|
||||
\desc{Burgers vector}{Magnitude and direction of dislocation}{}
|
||||
\desc[german]{Burgers-Vektor}{Größe und Richtung einer Versetzung}{}
|
||||
\quantity{\vecb}{units}{ievs}
|
||||
\eq{
|
||||
\TODO{TODO}
|
||||
}
|
||||
\end{formula}
|
||||
|
||||
\Subsubsection{area}
|
||||
\desc{Area defects}{}{}
|
||||
\desc[german]{Flächendefekte}{}{}
|
||||
\begin{formula}{grain_boundary}
|
||||
\desc{Grain boundary}{}{}
|
||||
\desc[german]{Korngrenze}{}{}
|
||||
\ttxt{\eng{
|
||||
Lead to
|
||||
\begin{itemize}
|
||||
\item Secondary phases
|
||||
\item Charge carrier trapping, recombination
|
||||
\item High mass diffusion constants
|
||||
\end{itemize}
|
||||
}\ger{
|
||||
Führen zu
|
||||
\begin{itemize}
|
||||
\item Sekundärphasen
|
||||
\item Separierung, Trapping und Streuung von Ladunsträgern
|
||||
\item Hohe Massendiffusionskonstante
|
||||
\end{itemize}
|
||||
}}
|
||||
\end{formula}
|
||||
|
||||
|
||||
|
@ -27,11 +27,11 @@
|
||||
|
||||
|
||||
\Subsubsection{kp}
|
||||
\desc{$k\cdot p$ Method}{
|
||||
\desc{k 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}{
|
||||
\desc[german]{kp 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$.
|
||||
}{}
|
||||
@ -167,7 +167,6 @@
|
||||
% \desc{\GT{misc}}{}{}
|
||||
% \desc[german]{\GT{misc}}{}{}
|
||||
|
||||
|
||||
\begin{formula}{vdw_material}
|
||||
\desc{Van-der-Waals material}{2D materials}{}
|
||||
\desc[german]{Van-der-Waals Material}{2D Materialien}{}
|
||||
@ -178,28 +177,18 @@
|
||||
}}
|
||||
\end{formula}
|
||||
|
||||
|
||||
\begin{formula}{work_function}
|
||||
\desc{Work function}{Lowest energy required to remove an electron into the vacuum}{}
|
||||
\desc[german]{Austrittsarbeit}{eng. "Work function"; minimale Energie um ein Elektron aus dem Festkörper zu lösen}{}
|
||||
\quantity{W}{\eV}{s}
|
||||
\eq{W = \Evac - \EFermi}
|
||||
\quantity{\Phi}{\volt}{s}
|
||||
\eq{e\Phi = \Evac - \EFermi}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{electron_affinity}
|
||||
\desc{Electron affinity}{Energy required to remove one electron from an anion with one negative charge.\\Energy difference between vacuum level and conduction band}{}
|
||||
\desc[german]{Elektronenaffinität}{Energie, die benötigt wird um ein Elektron aus einem einfach-negativ geladenen Anion zu entfernen. Entspricht der Energiedifferenz zwischen Vakuum-Niveau und dem Leitungsband}{}
|
||||
\quantity{\chi}{\eV}{s}
|
||||
\eq{\chi = \left(\Evac - \Econd\right)}
|
||||
\end{formula}
|
||||
|
||||
|
||||
\begin{formula}{laser}
|
||||
\desc{Laser}{Light amplification by stimulated emission of radiation}{}
|
||||
\desc[german]{Laser}{}{}
|
||||
\ttxt{
|
||||
\eng{\textit{Gain medium} is energized \textit{pumping energy} (electric current or light), light of certain wavelength is amplified in the gain medium}
|
||||
}
|
||||
\quantity{\chi}{\volt}{s}
|
||||
\eq{e\chi = \left(\Evac - \Econd\right)}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{vacuum}
|
||||
@ -208,11 +197,16 @@
|
||||
\ttxt{\eng{
|
||||
\begin{itemize}
|
||||
\item \textbf{Rough vacuum}: \SI{1}{\atm} - \SI{10e-2}{\milli\bar} \\ viscous flow
|
||||
\item \textbf{Process vacuum}: \SI{10e-2}{\milli\bar} - \SI{10e-4}{\milli\bar} \\ \abbrRef{mfp} $\le$ chamber size
|
||||
\item \textbf{High vacuum}: \SI{10e-5}{\milli\bar} - \SI{10e-9}{\milli\bar} \\ \abbrRef{mfp} $>$ chamber size, mostly residual \ce{H20} vapor
|
||||
\item \textbf{Ultra-high vacuum}: $<$ \SI{10e-9}{\milli\bar} \\ \abbrRef{mfp} $\gg$ chamber size, mostly residual \ce{H2}
|
||||
\item \textbf{Process vacuum}: \SI{10e-2}{\milli\bar} - \SI{10e-4}{\milli\bar} \\ \abbrRef{mean_free_path} $\le$ chamber size
|
||||
\item \textbf{High vacuum}: \SI{10e-5}{\milli\bar} - \SI{10e-9}{\milli\bar} \\ \abbrRef{mean_free_path} $>$ chamber size, mostly residual \ce{H20} vapor
|
||||
\item \textbf{Ultra-high vacuum}: $<$ \SI{10e-9}{\milli\bar} \\ \abbrRef{mean_free_path} $\gg$ chamber size, mostly residual \ce{H2}
|
||||
\end{itemize}
|
||||
}\ger{
|
||||
\TODO{translate}
|
||||
\begin{itemize}
|
||||
\item \textbf{Grobvakuum}: \SI{1}{\atm} - \SI{10e-2}{\milli\bar} \\ viskoser Fluss
|
||||
\item \textbf{Prozessvakuum}: \SI{10e-2}{\milli\bar} - \SI{10e-4}{\milli\bar} \\ \abbrRef{mean_free_path} $\le$ Kammergröße
|
||||
\item \textbf{Hochvakuum}: \SI{10e-5}{\milli\bar} - \SI{10e-9}{\milli\bar} \\ \abbrRef{mean_free_path} $>$ Kammergröße, hauptsächlich \ce{H2O} Rückstände übrig
|
||||
\item \textbf{Ultrahochvakuum}: $<$ \SI{10e-9}{\milli\bar} \\ \abbrRef{mean_free_path} $\gg$ Kammergröße, hauptsächlich \ce{H2} Rückstände übrig
|
||||
\end{itemize}
|
||||
}}
|
||||
\end{formula}
|
||||
|
@ -2,9 +2,9 @@
|
||||
\desc{Optics}{}{}
|
||||
\desc[german]{Optik}{}{}
|
||||
|
||||
\Subsection{insulator}
|
||||
\desc{Dielectrics and Insulators}{}{}
|
||||
\desc[german]{Dielektrika und Isolatoren}{}{}
|
||||
% \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}}
|
||||
@ -13,12 +13,12 @@
|
||||
\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)}
|
||||
\desc{Drude-Lorentz model}{Dipoles treated as classical harmonic oscillators}{\QtyRef{electric_suseptibility}, $N$ number of oscillators (atoms), $\omega_0$ resonance frequency, Absorption has \absRef[lorentzian shape]{lorentz_distribution}}
|
||||
\desc[german]{Drude-Lorentz-Model}{Dipole werden als klassische harmonische Oszillatoren behandelt}{\QtyRef{electric_suseptibility}, $N$ Anzahl der Oszillatoren (Atome), $\omega_0$ Resonanzfrequenz, Absorption hat Form einer \absRef[Lorentz-Verteilung]{lorentz_distribution}}
|
||||
\eq{\epsilon_\txr(\omega) = 1+\chi_\txe + \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
|
||||
\complex{\epsilon}_\txr(0) &\to 1+\chi_\txe + \frac{Ne^2}{\epsilon_0 m_\txe \omega_0^2} \\
|
||||
\complex{\epsilon}_\txr(\infty) &= \epsilon_\infty = 1+\chi_\txe
|
||||
}
|
||||
\fig{img/cm_optics_absorption_dielectric.pdf}
|
||||
\end{formula}
|
||||
@ -117,7 +117,7 @@
|
||||
\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 \\
|
||||
\alpha &= \frac{\omega}{\nReal c} \epsReal \\
|
||||
\left(\hbar\omega\alpha\right)^2 \propto \hbar\omega-\Egap
|
||||
}
|
||||
\end{formula}
|
||||
@ -130,31 +130,68 @@
|
||||
}
|
||||
\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}
|
||||
\begin{formula}{exciton}
|
||||
\desc{\fRef[Exciton]{cm:sc:exciton} absorption}{}{\QtyRef{band_gap}, $E_\text{binding}$ \fRef{cm:sc:exciton:binding_energy}}
|
||||
\desc[german]{\fRef[Exciton]{cm:sc:exciton} 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}
|
||||
|
||||
|
||||
\Subsubsection{quantum_well}
|
||||
\desc{Quantum wells}{}{}
|
||||
\desc[german]{Quantum Wells}{}{}
|
||||
\begin{formula}{interband}
|
||||
\desc{Interband transitions}{}{}
|
||||
\desc[german]{Interband-Übergänge}{}{}
|
||||
\ttxt{\eng{
|
||||
Selection rules:
|
||||
\begin{itemize}
|
||||
\item $\E \parallel \text{QW}$: allowed for \abbrRef{light_hole}, \abbrRef{heavy_hole}
|
||||
\item $\E \perp \text{QW}$: allowed for \abbrRef{light_hole}, forbidden for \abbrRef{heavy_hole}
|
||||
\item In a symmetric potential: only $\Delta n=0$ transitions allowed
|
||||
\end{itemize}
|
||||
}\ger{
|
||||
Auswahlregeln:
|
||||
\begin{itemize}
|
||||
\item $\E \parallel \text{QW}$: erlaubt für \abbrRef{light_hole}, \abbrRef{heavy_hole}
|
||||
\item $\E \perp \text{QW}$: erlaubt für \abbrRef{light_hole}, verboten für \abbrRef{heavy_hole}
|
||||
\item In einem symmatrischen Potential: nur Übergänge mit $\Delta n=0$ erlaubt
|
||||
\end{itemize}
|
||||
}}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{intersubband}
|
||||
\desc{Inter-subband transitions}{\qtyrange{3}{27}{\micro\m}}{}
|
||||
\desc[german]{Inter-Subband-Übergänge}{}{}
|
||||
\ttxt{\eng{
|
||||
Selection rules:
|
||||
\begin{itemize}
|
||||
\item $\E \parallel \text{QW}$ allowed
|
||||
\item $\E \perp \text{QW}$ forbidden
|
||||
\item Parity of intial and final state must differ
|
||||
\end{itemize}
|
||||
}\ger{
|
||||
Auswahlregeln:
|
||||
\begin{itemize}
|
||||
\item $\E \parallel \text{QW}$ erlaubt
|
||||
\item $\E \perp \text{QW}$ verboten
|
||||
\item Parität von Anfangs- und Endzustand muss unterschiedlich sein
|
||||
\end{itemize}
|
||||
}}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{exciton}
|
||||
\desc{Exciton in a quantum well}{Increased \fRef{::binding_energy} due to larger Coulomb interaction through confinment}{}
|
||||
% \desc[german]{}{}{}
|
||||
\eq{E^\text{2D}_n = \Egap + E_{\txe0} + E_{\txh0} - \frac{R^*}{\left(n-\frac{1}{2}\right)^2}}
|
||||
\end{formula}
|
||||
|
||||
\TODO{dipole approximation}
|
||||
|
||||
|
@ -28,13 +28,13 @@
|
||||
\desc[german]{Definition}{}{}
|
||||
\hiddenQuantity[band_gap]{\Egap}{\electronvolt}{s}
|
||||
\ttxt{\eng{
|
||||
Energy gap between highest occupied (HO) and lowest unoccupied (LU) band/orbital\\
|
||||
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
|
||||
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$
|
||||
@ -49,10 +49,9 @@
|
||||
\ttxt{\eng{
|
||||
$T\uparrow\quad\Rightarrow \Egap\downarrow$
|
||||
\begin{itemize}
|
||||
\item distance of atoms increases with higher temperatures \Rightarrow less wave function overlap
|
||||
\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}
|
||||
@ -117,7 +116,7 @@
|
||||
\end{formulagroup}
|
||||
|
||||
\begin{formula}{band_edge_dos}
|
||||
\desc{Band edge density of states}{}{$\meff$ \qtyRef{effective_mass}, \ConstRef{boltzmann}, \QtyRef{temperature}, \ConstRef{planck2pi}}
|
||||
\desc{Band edge density of states}{}{$\meff$ \qtyRef{effective_mass}, \ConstRef{boltzmann}, \QtyRef{temperature}}
|
||||
\desc[german]{Bandkanten-Zustandsdichte}{}{}
|
||||
\eq{
|
||||
N_\txC &= 2\left(\frac{\meff_\txe\kB T}{2\pi\hbar^2}\right)^{3/2} \\
|
||||
@ -174,17 +173,17 @@
|
||||
\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}}
|
||||
\eq{0 = N_\txd^+ + p - N_\txa^- -n}
|
||||
\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}}
|
||||
\eq{0 = N_\txD^+ + p - N_\txA^- -n}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{ionization_ratio}
|
||||
\desc{Fraction ionized donors/acceptors}{At thermal equilibrium}{$N_{\txd/\txa}^{+/-}$ ionized donor/acceptor density, $N_{\txd/\txa}$ donor/acceptor density, $E_{\txd/\txa}$ donor/acceptor energy level, $g$ spin degeneracy}
|
||||
\desc[german]{Anteil ionisiserter Akzeptoren/Donatoren}{Im thermischen Equilibrium}{$N_{\txd/\txa}^{+/-}$ ionisierte Donor/Akzeptordichte, $N_{\txd/\txa}$ Donor/Akzeptordichte, $E_{\txd/\txa}$ Energie der Donatoren/Akzeptoren, $g$ Spindegenierung}
|
||||
\desc{Fraction ionized donors/acceptors}{At thermal equilibrium}{$N_{\txD/\txA}^{+/-}$ ionized donor/acceptor density, $N_{\txD/\txA}$ donor/acceptor density, $E_{\txD/\txA}$ donor/acceptor energy level, $g$ spin degeneracy}
|
||||
\desc[german]{Anteil ionisiserter Akzeptoren/Donatoren}{Im thermischen Equilibrium}{$N_{\txD/\txA}^{+/-}$ ionisierte Donor/Akzeptordichte, $N_{\txD/\txA}$ Donor/Akzeptordichte, $E_{\txD/\txA}$ Energie der Donatoren/Akzeptoren, $g$ Spindegenierung}
|
||||
\eq{
|
||||
\frac{N_\txd^+}{N_\txd} &= 1- \frac{1}{1+\frac{1}{g}\Exp{\frac{E_\txD-\Efermi}{\kB T}}} \\
|
||||
\frac{N_\txa^-}{N_\txa} &= \frac{1}{1+g\Exp{\frac{E_\txA-\Efermi}{\kB T}}}
|
||||
\frac{N_\txD^+}{N_\txD} &= 1- \frac{1}{1+\frac{1}{g}\Exp{\frac{E_\txD-\Efermi}{\kB T}}} \\
|
||||
\frac{N_\txA^-}{N_\txA} &= \frac{1}{1+g\Exp{\frac{E_\txA-\Efermi}{\kB T}}}
|
||||
}
|
||||
\end{formula}
|
||||
|
||||
@ -218,123 +217,46 @@
|
||||
}}
|
||||
\end{formula}
|
||||
|
||||
\Subsection{defect}
|
||||
\desc{Defects}{}{}
|
||||
\desc[german]{Defekte}{}{}
|
||||
\Subsubsection{point}
|
||||
\desc{Point defects}{}{}
|
||||
\desc[german]{Punktdefekte}{}{}
|
||||
\begin{formula}{vacancy}
|
||||
\desc{Vacancy}{}{}
|
||||
\desc[german]{Fehlstelle}{}{}
|
||||
\ttxt{\eng{
|
||||
\begin{itemize}
|
||||
\item Lattice site missing an atom
|
||||
\item Low formation energy
|
||||
\end{itemize}
|
||||
}\ger{
|
||||
\begin{itemize}
|
||||
\item Unbesetzter Gitterpunkt
|
||||
\item Geringe Formationsenergie
|
||||
\end{itemize}
|
||||
}}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{interstitial}
|
||||
\desc{Interstitial}{}{}
|
||||
\desc[german]{}{}{}
|
||||
\ttxt{\eng{
|
||||
\begin{itemize}
|
||||
\item Extranous atom between lattice atoms
|
||||
\item High formation energy
|
||||
\end{itemize}
|
||||
}\ger{
|
||||
\begin{itemize}
|
||||
\item Zusätzliches Atom zwischen Gitteratomen
|
||||
\item Hohe Formationsenergy
|
||||
\end{itemize}
|
||||
}}
|
||||
\end{formula}
|
||||
\Subsection{Recombination}
|
||||
\desc{Recombination}{}{}
|
||||
\desc[german]{Rekombination}{}{}
|
||||
|
||||
\begin{formula}{schottky}
|
||||
\desc{Schottky defect}{}{}
|
||||
\desc[german]{Schottky-Defekt}{}{}
|
||||
\ttxt{\eng{
|
||||
Atom type A \fRef{:::vacancy} + atom type B \fRef{:::vacancy}.
|
||||
Only in (partially) ionic materials.
|
||||
}\ger{
|
||||
\fRef{:::vacancy} von Atomsorte A und \fRef{:::vacancy} von Atomsorte B.
|
||||
Tritt nur in ionischen Materialiern auf.
|
||||
}}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{frenkel}
|
||||
\desc{Frenkel defect}{}{}
|
||||
\desc[german]{Frenkel Defekt}{}{}
|
||||
\ttxt{\eng{
|
||||
\fRef{:::vacancy} + \fRef{:::interstitial}
|
||||
}\ger{
|
||||
\fRef{:::vacancy} + \fRef{:::interstitial}
|
||||
}}
|
||||
\end{formula}
|
||||
|
||||
\Subsubsection{line}
|
||||
\desc{Line defects}{}{}
|
||||
\desc[german]{Liniendefekte}{}{}
|
||||
\begin{formula}{edge}
|
||||
\desc{Edge distortion}{}{}
|
||||
\desc[german]{Stufenversetzung}{}{}
|
||||
\ttxt{\eng{
|
||||
Insertion of an extra plane of atoms
|
||||
}\ger{
|
||||
Einschiebung einer zusätzliche Atomebene
|
||||
}}
|
||||
\TODO{images}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{screw}
|
||||
\desc{Screw distortion}{}{}
|
||||
\desc[german]{Schraubenversetzung}{}{}
|
||||
\ttxt{\eng{
|
||||
\TODO{TODO}
|
||||
}\ger{
|
||||
|
||||
}}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{burgers_vector}
|
||||
\desc{Burgers vector}{Magnitude and direction of dislocation}{}
|
||||
\desc[german]{Burgers-Vektor}{Größe und Richtung einer Versetzung}{}
|
||||
\quantity{\vecb}{units}{ievs}
|
||||
\eq{
|
||||
\TODO{TODO}
|
||||
}
|
||||
\end{formula}
|
||||
|
||||
\Subsubsection{area}
|
||||
\desc{Area defects}{}{}
|
||||
\desc[german]{Flächendefekte}{}{}
|
||||
\begin{formula}{grain_boundary}
|
||||
\desc{Grain boundary}{}{}
|
||||
\desc[german]{Korngrenze}{}{}
|
||||
\ttxt{\eng{
|
||||
Lead to
|
||||
\begin{itemize}
|
||||
\item Secondary phases
|
||||
\item Charge carrier trapping, recombination
|
||||
\item High mass diffusion constants
|
||||
\end{itemize}
|
||||
}\ger{
|
||||
Führen zu
|
||||
\begin{itemize}
|
||||
\item Sekundärphasen
|
||||
\item Separierung, Trapping und Streuung von Ladunsträgern
|
||||
\item Hohe Massendiffusionskonstante
|
||||
\end{itemize}
|
||||
}}
|
||||
\end{formula}
|
||||
\begin{formula}{shockley-read}
|
||||
\desc{Shockley-Read-Hall recombination}{}{}
|
||||
\desc[german]{Shockley-Read-Hall Rekombination}{}{}
|
||||
\ttxt{\eng{
|
||||
Recombination via defect states in the band gap:
|
||||
Electron capture, electron emission, hole capture, hole emission
|
||||
}\ger{
|
||||
Rekombination über Defektzustände in der Bandlücke:
|
||||
Elektroneneinfang, Elektronenemission, Locherfassung, Locheremission
|
||||
}}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{auger}
|
||||
\desc{Auger recombination}{}{}
|
||||
\desc[german]{Auger Rekombination}{}{}
|
||||
\ttxt{\eng{
|
||||
Non-radiative recombination involving three particles.
|
||||
Recombination energy is transferred to another electron or hole.
|
||||
Important at high carrier densities, high temperatures and small band gaps.
|
||||
}\ger{
|
||||
Nicht-strahlende Rekombination unter Beteiligung von drei Teilchen.
|
||||
Die Rekombinationsenergie wird auf ein anderes Elektron oder Loch übertragen.
|
||||
Wichtig bei hohen Ladungsträgerdichten, hohen Temperaturen und kleinen Bandlücken.
|
||||
}}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{bi-molecular}
|
||||
\desc{Bi-molecular recombination}{}{}
|
||||
\desc[german]{Bimolekulare Rekombination}{}{}
|
||||
\ttxt{\eng{
|
||||
Radiative two-particle process where an electron from conduction and a hole from the valence band recombine.
|
||||
}\ger{
|
||||
Strahlender zwei-Teilchen-Prozess, bei dem ein Elektron aus dem Leitungsband und ein Loch aus dem Valenzband rekombinieren.
|
||||
}}
|
||||
\end{formula}
|
||||
|
||||
\Subsection{devices}
|
||||
\desc{Devices and junctions}{}{}
|
||||
@ -352,11 +274,10 @@
|
||||
\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{
|
||||
|
||||
Bei Kontakt fließen Elektronen vom Halbleiter zum Metall, um die Fermi-Niveaus anzugleichen \Rightarrow es entsteht eine Verarmungszone aus positiv geladenen Donatoren als Barriere
|
||||
}}
|
||||
\end{bigformula}
|
||||
\begin{formula}{full_depletion_approx}
|
||||
@ -412,16 +333,16 @@
|
||||
\end{bigformula}
|
||||
|
||||
\begin{formula}{no_bias}
|
||||
\desc{No bias}{Balance of \fRef[drift]{cm:charge_transport:current_density} and \fRef[diffusion]{cm:charge_transport:misc:diffusion_current} currents}{$n_{n/p}$ \qtyRef[electron density]{charge_carrier_density} in the $n$/$p$ side}
|
||||
\desc[german]{Keine angelegte Spannung}{Gleichgewicht von \fRef[Drift-]{cm:charge_transport:current_density} und \fRef[Diffusions-]{cm:charge_transport:misc:diffusion_current}strömen}{$n_{n/p}$ \qtyRef[Elektronendichte]{charge_carrier_density} in der $n$/$p$ Seite}
|
||||
\eq{U_\text{bias}= \left(\frac{\kB T}{e}\right) \Ln{\frac{n_n}{n_p}}}
|
||||
\desc{No bias}{Balance of \fRef[drift]{cm:charge_transport:current_density} and \fRef[diffusion]{cm:charge_transport:misc:diffusion_current} currents}{$n_{n/p}$ \fRef[equilibrium electron density]{cm:sc:charge_carrier_density:equilibrium} in the $n$/$p$ side}
|
||||
\desc[german]{Keine angelegte Spannung}{Gleichgewicht von \fRef[Drift-]{cm:charge_transport:current_density} und \fRef[Diffusions-]{cm:charge_transport:misc:diffusion_current}strömen}{$n_{0,n/p}$ \qtyRef[Elektronendichte]{charge_carrier_density} in der $n$/$p$ Seite}
|
||||
\eq{U_\text{bias}= \left(\frac{\kB T}{e}\right) \Ln{\frac{n_{0,n}}{n_{0,p}}}}
|
||||
\end{formula}
|
||||
\end{formulagroup}
|
||||
|
||||
\TODO{Forward bias: negativ an n, positiv an p}
|
||||
|
||||
\begin{formulagroup}{2deg}
|
||||
\desc{Heterointerface}{2DEG, \fRef{cm:sc:doping:modulation}}{}
|
||||
\desc{Heterointerface}{2DEG, \fRef{cm:sc:dope:modulation}}{}
|
||||
% \desc[german]{}{}{}
|
||||
\begin{formula}{schematic}
|
||||
\desc{Schematic and band diagram}{}{}
|
||||
@ -486,11 +407,92 @@
|
||||
}
|
||||
\end{formula}
|
||||
|
||||
\Subsubsection{led}
|
||||
\desc{Led emighting diodes (LED)}{Based around forward biased $p^+n$ or $n^+p$ \fRef[junctions]{::sc-sc:pn}}{}
|
||||
\desc[german]{}{Basieren auf $p^+n$ oder $n^+p$ \fRef[Kontakten]{::sc-sc:pn} im forward bias}{}
|
||||
\begin{formula}{principle}
|
||||
\desc{Principle}{}{}
|
||||
\desc[german]{Prinzip}{}{}
|
||||
\ttxt{\eng{
|
||||
Under external bias a net diffusion current flows across the junction. Injected minority carriers recombine in the vicinity of the depletion region and generate light.
|
||||
}\ger{
|
||||
Unter äußerer Spannung fließt ein Nettodiffusionsstrom über den Übergang.
|
||||
Injizierte Minoritätsträger rekombinieren in der Nähe der Verarmungszone und erzeugen Licht.
|
||||
}}
|
||||
\end{formula}
|
||||
\begin{formula}{efficiency}
|
||||
\desc{Power conversion}{}{
|
||||
$\eta_\text{int} = \frac{\frac{P_\text{int}}{\hbar\omega}}{\frac{j}{e}}$ internal quantum efficiency,
|
||||
$\eta_\text{extraction} \approx \SI{3}{\percent}$ light extraction efficiency,
|
||||
$\eta_\text{inj} = \frac{j_n}{j_n + j_p + j_\text{NR}}$ injection efficiency (for $n^+p$ junction)
|
||||
}
|
||||
\desc[german]{Umwandlungseffizienz}{}{}
|
||||
\eq{
|
||||
\eta_\text{ext} = \frac{\frac{P_\text{ext}}{\hbar\omega}}{\frac{j}{e}} = \eta_\text{int} \eta_\text{extraction} \eta_\text{inj}
|
||||
}
|
||||
\end{formula}
|
||||
|
||||
\Subsubsection{laser}
|
||||
\desc{Laser}{Light Amplifictation by Stimulated Emission of Radiation}{}
|
||||
\desc[german]{Laser}{}{}
|
||||
\begin{formula}{laser}
|
||||
\desc{Laser}{}{}
|
||||
\desc[german]{Laser}{}{}
|
||||
\ttxt{\eng{
|
||||
\textit{Gain medium} is energized by \textit{pumping energy} (electric current or light), light of certain wavelength is amplified in the gain medium
|
||||
Components:
|
||||
\begin{itemize}
|
||||
\item Gain medium: amplify light by stimulated emission
|
||||
\item Pump: add energy to the gain medium to keep the gain positive
|
||||
\item Positive feedback
|
||||
\item Output coupler: extract light from the oscillator cavity
|
||||
\end{itemize}
|
||||
}\ger{
|
||||
|
||||
}}
|
||||
\end{formula}
|
||||
|
||||
\begin{formulagroup}{stimulated_emission}
|
||||
\desc{Stimulated emission}{}{$F$ \fRef{cm:egas:fermi-dirac}, $E$ \qtyRef{energy} of the electrons/holes}
|
||||
\desc[german]{Stimulierte Emission}{}{$F$ \fRef{cm:egas:fermi-dirac}, $E$ \qtyRef{energy} der Elektronen/Löcher}
|
||||
\begin{formula}{stimulated_emission}
|
||||
\desc{Stimulated emission}{}{}
|
||||
\desc[german]{Stimulierte Emission}{}{}
|
||||
\ttxt{\eng{
|
||||
Emitted photons are identical: phase coherent, same polarization and optical mode, same propagation direction.\\
|
||||
Requires \textit{population inversion}, where most emitters are in the excited state.
|
||||
}\ger{
|
||||
Emittierte Photonen sind identisch: phasenkohärent, gleiche Polarisation und optischer Modus, gleiche Ausbreitungsrichtung.\\
|
||||
Erfordert \textit{Besetzungsinversion}, bei der sich die meisten Emitter im angeregten Zustand befinden.
|
||||
}}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{coefficient}
|
||||
\desc{Stimulated emission coefficient}{}{}
|
||||
\desc[german]{Koeffizient der stimulierten Emission}{}{}
|
||||
\eq{\alpha(\hbar\omega) \propto \left(1-F_\txe(E_\txe)\right) \left(1-F_\txh(E_\txh)\right)}
|
||||
\end{formula}
|
||||
\begin{formula}{gain_coefficient}
|
||||
\desc{Bernard condition}{Both quasi fermi levels must lie within the bands. If fulfilled, gain coefficient is positive}{$\Efermi$ electron/hole quasi-\qtyRef[fermi level]{fermi_energy}}
|
||||
\desc[german]{Bernard-Bedingung}{Beide quasi-Fermi Level müssen innerhalb der Bänder liegen. Verstärkungskoeffizient ist positiv wenn erfüllt}{$\Efermi$ Elektron/Loch Quasi-\qtyRef[Fermi-Niveau]{fermi_energy}}
|
||||
\eq{
|
||||
E_\txe - E_\txh = E_\text{photon} < \left(\Efermi^\txe - \Efermi^\txh\right)
|
||||
}
|
||||
\end{formula}
|
||||
\begin{formula}{gain_spectrum}
|
||||
\desc{Gain spectrum}{Gain is frequency dependent}{}
|
||||
% \desc[german]{}{}{}
|
||||
\fig[width=0.7\textwidth]{img_static/cm_sc_laser_gain_spectrum.png}
|
||||
\TODO{plot}
|
||||
\end{formula}
|
||||
\end{formulagroup}
|
||||
|
||||
|
||||
\Subsubsection{other}
|
||||
\desc{Other}{}{}
|
||||
\desc[german]{Andere}{}{}
|
||||
\begin{formula}{single_electron_box}
|
||||
\desc{Single electron box}{Allows discrete changes of single electrons}{$C_\txg/V_\txg$ gate \qtyRef{capacity}/\qtyRef{voltage}, T tunnel barrier, $n\in\N_0$ number of electrons}
|
||||
\desc{Single electron box}{Allows discrete changes of single electrons}{$C_\txg/V_\txg$ gate \qtyRef{capacitance}/\qtyRef{voltage}, T tunnel barrier, $n\in\N_0$ number of electrons}
|
||||
\desc[german]{Ein-Elektronen-Box}{}{}
|
||||
\fcenter{
|
||||
\begin{tikzpicture}
|
||||
@ -534,14 +536,14 @@
|
||||
\eng[free_X]{for free Excitons}
|
||||
\ger[free_X]{für freie Exzitons}
|
||||
\begin{formula}{rydbrg}
|
||||
\desc{Exciton Rydberg energy}{\gt{free_X}}{$R_\txH$ \fRef{qm:h:rydberg_energy}}
|
||||
\desc{Exciton Rydberg energy}{\GT{::free_X}}{$R_\txH$ \fRef{qm:h:rydberg_energy}}
|
||||
\desc[german]{}{}{}
|
||||
\eq{
|
||||
E(n) = - \left(\frac{\mu}{m_0\epsilon_r^2}\right) R_\txH \frac{1}{n^2}
|
||||
}
|
||||
\end{formula}
|
||||
\begin{formula}{bohr_radius}
|
||||
\desc{Exciton Bohr radius}{\gt{free_X}. \qtyrange{2}{20}{\nm}}{\QtyRef{relative_permittivity}, \ConstRef{bohr_radius}, \ConstRef{electron_mass}, $\mu$ \GT{reduced_mass}}
|
||||
\desc{Exciton Bohr radius}{\GT{::free_X}. \qtyrange{2}{20}{\nm}}{\QtyRef{relative_permittivity}, \ConstRef{bohr_radius}, \ConstRef{electron_mass}, $\mu$ \GT{reduced_mass}}
|
||||
\desc[german]{Exziton-Bohr Radius}{}{}
|
||||
\eq{
|
||||
r_n = \left(\frac{m_\txe\epsilon_r a_\txB}{\mu}\right) n^2
|
||||
@ -549,7 +551,7 @@
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{binding_energy}
|
||||
\desc{Binding energy}{\gt{free_X}. \qtyrange{0.2}{8}{\meV}}{$R^* = 1\,\text{Ry} \frac{\mu}{\epsilon_\txr^2}$, $\vecK_\text{CM} = \veck_\txe - \veck_\txh$, $\mu$ \TODO{reduced mass, of what?}, $n$ exciton state}
|
||||
\desc{Binding energy}{\GT{::free_X}. \qtyrange{0.2}{8}{\meV}}{$R^* = 1\,\text{Ry} \frac{\mu}{\epsilon_\txr^2}$, $\vecK_\text{CM} = \veck_\txe - \veck_\txh$, $\mu$ \TODO{reduced mass, of what?}, $n$ exciton state}
|
||||
\desc[german]{Bindungsenergie}{}{}
|
||||
\eq{E_{n,K_\text{CM}} = \Egap - \frac{R^*}{n^2} + \frac{\hbar^2}{2 \left(\meff_\txe + \meff_\txh\right)} K^2_\text{CM}}
|
||||
\end{formula}
|
||||
@ -560,10 +562,4 @@
|
||||
\eq{\abs{\E_\text{ion}} \approx \frac{2R^*}{e a_\txX}}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{quantum_well}
|
||||
\desc{Exciton in a quantum well}{Increased \fRef{::binding_energy} due to larger Coulomb interaction through confinment}{}
|
||||
% \desc[german]{}{}{}
|
||||
\eq{E^\text{2D}_n = \Egap + E_{\txe0} + E_{\txh0} - \frac{R^*}{\left(n-\frac{1}{2}\right)^2}}
|
||||
\end{formula}
|
||||
|
||||
\TODO{stark effect/shift, adv sc. slide 502}
|
||||
|
@ -232,11 +232,11 @@
|
||||
\begin{formula}{range-separated-hybrid}
|
||||
\desc{Range separated hyrid functionals (RSH)}{Here HSE as example}{$\alpha$ mixing paramter, $E_\txX$ exchange energy, $E_\txC$ correlation energy}
|
||||
% \desc[german]{}{}{}
|
||||
\newFormulaEntry
|
||||
\begin{gather}
|
||||
\frac{1}{r} = \frac{\erf(\omega r)}{r} + \frac{\erfc{\omega r}}{r} \\
|
||||
E_\text{XC}^\text{HSE} = \alpha E_\text{X,SR}^\text{HF}(\omega) + (1-\alpha)E_\text{X,SR}^\text{GGA}(\omega) + E_\text{X,LR}^\text{GGA}(\omega) + E_\txC^\text{GGA}
|
||||
\end{gather}
|
||||
\separateEntries
|
||||
\ttxt{\eng{
|
||||
Use \abbrRef{gga} and \fRef[Fock]{comp:est:dft:hf:potential} exchange for short ranges (SR) and only \abbrRef{GGA} for long ranges (LR).
|
||||
\abbrRef{GGA} correlation is always used. Useful when dielectric screening reduces long range interactions, saves computational cost.
|
||||
|
@ -6,9 +6,9 @@
|
||||
\desc{Dipole moment}{}{}
|
||||
\desc[german]{Dipolmoment}{}{}
|
||||
|
||||
\begin{formula}{definition}
|
||||
\desc{Defintion}{}{$q$ \qtyRef{charge}, $l$ distance between charges}
|
||||
\desc[german]{Defintion}{}{}
|
||||
\begin{formula}{dipole_moment}
|
||||
\desc{Dipole moment}{}{$q$ \qtyRef{charge}, $l$ distance between charges}
|
||||
\desc[german]{Dipolmoment}{}{}
|
||||
\quantity[dipole_moment]{\vecp}{\coulomb\meter}{v}
|
||||
\eq{\vecp &= ql\vece_l}
|
||||
\end{formula}
|
||||
@ -42,13 +42,13 @@
|
||||
\desc{misc}{}{}
|
||||
\desc[german]{misc}{}{}
|
||||
\begin{formula}{impedance_r}
|
||||
\desc{Impedance of an ohmic rejkjksistor}{}{\QtyRef{resistance}}
|
||||
\desc{Impedance of an ohmic resistor}{}{\QtyRef{resistance}}
|
||||
\desc[german]{Impedanz eines Ohmschen Widerstands}{}{}
|
||||
\eq{Z_{R} = R}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{impedance_c}
|
||||
\desc{Impedance of a capacitor}{}{\QtyRef{capacity}, \QtyRef{angular_velocity}}
|
||||
\desc{Impedance of a capacitor}{}{\QtyRef{capacitance}, \QtyRef{angular_velocity}}
|
||||
\desc[german]{Impedanz eines Kondensators}{}{}
|
||||
\eq{Z_{C} = \frac{1}{\I\omega C}}
|
||||
\end{formula}
|
||||
@ -77,7 +77,7 @@
|
||||
\desc{Capacitor}{}
|
||||
\desc[german]{Kondensator}
|
||||
|
||||
\begin{formula}{capacity}
|
||||
\begin{formula}{capacitance}
|
||||
\desc{Parallel plate capacitor}{}{\ConstRef{vacuum_permittivity}, \QtyRef{relative_permittivity}, \QtyRef{area}, $d$ \qtyRef{length}}
|
||||
\desc[german]{Plattenkondensator}{}{}
|
||||
\eq{C = \epsilon_0 \epsilon_\txr \frac{A}{d}}
|
||||
|
@ -6,32 +6,32 @@
|
||||
|
||||
|
||||
\begin{formulagroup}{refraction_index}
|
||||
\desc{Refraction index}{Macroscopic}{\QtyRef{relative_permittivity}, \QtyRef{relative_permeability}, \ConstRef{vacuum_speed_of_light}, \QtyRef{phase_velocity}}
|
||||
\desc{Refraction index}{Macroscopic}{\QtyRef{relative_permittivity}, \QtyRef{relative_permeability}, $c_0$ \constRef{vacuum_speed_of_light}, $c_\txM$ \qtyRef{phase_velocity}}
|
||||
\desc[german]{Brechungsindex}{Macroscopisch}{}
|
||||
\begin{formula}{definition}
|
||||
\desc{Definition}{}{}
|
||||
\desc[german]{Definition}{}{}
|
||||
\desc{Refraction index}{}{}
|
||||
\desc[german]{Brechungsindex}{}{}
|
||||
\quantity{\complex{n}}{}{s}
|
||||
\eq{
|
||||
\complex{n} = \nreal + i\ncomplex
|
||||
\complex{n} = \nReal + i\nImag
|
||||
}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{real}
|
||||
\desc{Real part}{}{}
|
||||
\desc[german]{Reller Teil}{}{}
|
||||
\quantity[refraction_index_real]{\nreal}{}{s}
|
||||
\desc{Real part of the refraction index}{}{}
|
||||
\desc[german]{Reller Teil des Brechungsindex}{}{}
|
||||
\quantity[refraction_index_real]{\nReal}{}{s}
|
||||
\eq{
|
||||
n = \sqrt{\epsilon_\txr \mu_\txr}
|
||||
\nReal = \sqrt{\epsilon_\txr \mu_\txr}
|
||||
}
|
||||
\eq{
|
||||
n = \frac{c_0}{c_\txM}
|
||||
\nReal = \frac{c_0}{c_\txM}
|
||||
}
|
||||
\end{formula}
|
||||
\begin{formula}{complex}
|
||||
\desc{Extinction coefficient}{Complex part of the refraction index. Describes absorption in a medium}{\GT{sometimes} $\kappa$}
|
||||
\desc[german]{Auslöschungskoeffizient}{Komplexer Teil des Brechungsindex. Beschreibt Absorption im Medium}{}
|
||||
\quantity[refraction_index_complex]{\ncomplex}{}{s}
|
||||
\quantity[refraction_index_complex]{\nImag}{}{s}
|
||||
\end{formula}
|
||||
\end{formulagroup}
|
||||
|
||||
@ -44,9 +44,9 @@
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{snell}
|
||||
\desc{Snell's law}{}{$\nreal_i$ \qtyRef{refraction_index_real}, $\theta_i$ incidence angle (normal to the surface)}
|
||||
\desc{Snell's law}{}{$\nReal_i$ \qtyRef{refraction_index_real}, $\theta_i$ incidence angle (normal to the surface)}
|
||||
\desc[german]{Snelliussches Brechungsgesetz}{}{$n_i$ \qtyRef{refraction_index}, $\theta_i$ Einfallswinkel (normal zur Fläche)}
|
||||
\eq{\nreal_1 \sin\theta_1 = \nreal_2\sin\theta_2}
|
||||
\eq{\nReal_1 \sin\theta_1 = \nReal_2\sin\theta_2}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{group_velocity}
|
||||
@ -70,7 +70,7 @@
|
||||
\desc[german]{Absoprtionskoeffizient}{Intensitätsverringerung beim Druchgang eines Mediums, nicht zwingend durch Energieabgabe an Medium}{}
|
||||
\quantity{\alpha}{\per\cm}{s}
|
||||
\eq{
|
||||
\alpha &= 2\ncomplex \frac{\omega}{c}
|
||||
\alpha &= 2\nImag \frac{\omega}{c}
|
||||
}
|
||||
\TODO{Is this equation really true in general?}
|
||||
\end{formula}
|
||||
@ -102,23 +102,23 @@
|
||||
\begin{formulagroup}{permittivity_complex}
|
||||
\desc{Complex relative \qtyRef[permittivity]{permittivity}}{Complex dielectric function\\Microscopic, response of a single atom to an EM wave}{\QtyRef{refraction_index_real}, \QtyRef{refraction_index_complex}}
|
||||
\desc[german]{Komplexe relative \qtyRef{permittivity}}{Komplexe dielektrische Funktion\\Mikroskopisch, Verhalten eines Atoms gegen eine EM-Welle}{}
|
||||
\begin{formula}{definition}
|
||||
\desc{Definition}{}{}
|
||||
\desc[german]{Definition}{}{}
|
||||
\eq{\epsilon_\txr &= \epsreal + i\epscomplex}
|
||||
\begin{formula}{permittivity_complex}
|
||||
\desc{Complex relative permittivity}{}{}
|
||||
\desc[german]{Komplexe relative Permittivität}{}{}
|
||||
\eq{\epsilon_\txr &= \epsReal + i\epsImag}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{real}
|
||||
\desc{Real part}{}{}
|
||||
\desc[german]{Realteil}{}{}
|
||||
\eq{\epsreal &= {\nreal}^2 - {\ncomplex}^2}
|
||||
\hiddenQuantity[permittivity_real]{\epsreal}{}{}
|
||||
\eq{\epsReal &= {\nReal}^2 - {\nImag}^2}
|
||||
\hiddenQuantity[permittivity_real]{\epsReal}{}{}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{complex}
|
||||
\desc{Complex part}{}{}
|
||||
\desc[german]{Komplexer Teil}{}{}
|
||||
\eq{\epscomplex &= 2\nreal \ncomplex}
|
||||
\hiddenQuantity[permittivity_complex]{\epscomplex}{}{}
|
||||
\eq{\epsImag &= 2\nReal \nImag}
|
||||
\hiddenQuantity[permittivity_complex]{\epsImag}{}{}
|
||||
\end{formula}
|
||||
\end{formulagroup}
|
||||
|
@ -45,6 +45,6 @@
|
||||
\drawDArrow{\tkRx+\tkRW*3/4}{\tkREf}{\tkREV}{$e\Phi_\txS$}
|
||||
\drawDArrow{\tkRx+\tkRW*2/4}{\tkREc}{\tkREV}{$e\chi$}
|
||||
% barrier height
|
||||
\drawDArrow{\tkRx+\tkRBendW}{\tkREc}{\tkREc-\tkRBendH}{$eU_\text{Bias}$}
|
||||
\drawDArrow{\tkRx+\tkRBendW}{\tkREc}{\tkREc+\tkRBendH}{$eU_\text{Bias}$}
|
||||
|
||||
\end{tikzpicture}
|
||||
|
Binary file not shown.
Before Width: | Height: | Size: 243 KiB |
47
src/main.tex
47
src/main.tex
@ -48,8 +48,13 @@
|
||||
% \tikzexternalize[prefix=tikz_figures]
|
||||
% \tikzexternalize
|
||||
\usepackage{circuitikz} % electrical circuits with tikz
|
||||
\input{circuit.tex} % custom circuits TODO: move to util
|
||||
% SCIENCE PACKAGES
|
||||
\usepackage{mathtools}
|
||||
\usepackage{unicode-math} % all sorts of math symbols, requires lualatex
|
||||
% \setmathfont{STIX Math Two}
|
||||
% \setmathfont{Latin Modern Math}
|
||||
% \setmathfont{Fira Math}
|
||||
% set display math skips
|
||||
\AtBeginDocument{
|
||||
\abovedisplayskip=0pt
|
||||
@ -57,14 +62,14 @@
|
||||
\belowdisplayskip=0pt
|
||||
\belowdisplayshortskip=0pt
|
||||
}
|
||||
\usepackage{MnSymbol} % for >>> \ggg sign
|
||||
% \usepackage{MnSymbol} % for >>> \ggg sign
|
||||
\usepackage[version=4,arrows=pgf-filled]{mhchem}
|
||||
\usepackage{upgreek} % upright greek letters for chemmacros
|
||||
% \usepackage{upgreek} % upright greek letters for chemmacros -> unicode-math
|
||||
\usepackage{chemmacros} % for orbitals images
|
||||
% \usepackage{esdiff} % derivatives
|
||||
% esdiff breaks when taking \dot{q} has argument
|
||||
\usepackage{derivative} % \odv, \pdv
|
||||
\usepackage{bbold} % \mathbb font
|
||||
% \usepackage{bbold} % \mathbb font -> unicode-math
|
||||
\usepackage{braket} % <bra|ket>
|
||||
\usepackage{siunitx} % \si \SI units
|
||||
\sisetup{output-decimal-marker = {,}}
|
||||
@ -72,10 +77,11 @@
|
||||
\sisetup{per-mode = power}
|
||||
\sisetup{exponent-product=\ensuremath{\cdot}}
|
||||
|
||||
\usepackage{emoji}
|
||||
|
||||
% DEBUG
|
||||
% \usepackage{lua-visual-debug}
|
||||
% DUMB STUFF
|
||||
% \usepackage{emoji}
|
||||
% \newcommand\temoji[1]{\text{\emoji{#1}}}
|
||||
% \def\sigma{\temoji{shark}}
|
||||
% \def\lambda{\temoji{sheep}}
|
||||
@ -86,16 +92,16 @@
|
||||
% \def\nu{\temoji{unicorn}}
|
||||
% \def\mu{\temoji{mouse}}
|
||||
|
||||
\newcommand{\TODO}[1]{{\color{fg-red}TODO:#1}}
|
||||
\newcommand{\TODO}[1]{{\color{fg-red}TODO:#1}} % debug mode
|
||||
\renewcommand{\TODO}[1]{} % release mode
|
||||
\newcommand{\ts}{\textsuperscript}
|
||||
|
||||
\input{circuit.tex}
|
||||
\input{util/macros.tex}
|
||||
\input{util/math-macros.tex}
|
||||
\input{util/environments.tex} % requires util/translation.tex to be loaded first
|
||||
\usepackage{mqlua}
|
||||
\usepackage{mqfqname}
|
||||
\usepackage{mqsections}
|
||||
\usepackage{mqref}
|
||||
\input{util/macros.tex} % requires mqfqname
|
||||
\input{util/math-macros.tex}
|
||||
% TRANSLATION
|
||||
% \usepackage{translations}
|
||||
\usepackage{mqtranslation}
|
||||
@ -107,6 +113,7 @@
|
||||
\usepackage{mqformula}
|
||||
\usepackage{mqperiodictable}
|
||||
|
||||
\input{util/environments.tex} % requires util/translation.tex to be loaded first
|
||||
|
||||
\title{Formelsammlung}
|
||||
\author{Matthias Quintern}
|
||||
@ -123,7 +130,7 @@
|
||||
\input{util/translations.tex}
|
||||
|
||||
% \InputOnly{cm}
|
||||
% \InputOnly{test}
|
||||
\InputOnly{test}
|
||||
|
||||
\Input{math/math}
|
||||
\Input{math/linalg}
|
||||
@ -172,26 +179,8 @@
|
||||
\Input{ch/el}
|
||||
\Input{ch/misc}
|
||||
|
||||
\newpage
|
||||
\Part{appendix}
|
||||
\desc{Appendix}{}{}
|
||||
\desc[german]{Anhang}{}{}
|
||||
\begin{formula}{world}
|
||||
\desc{World formula}{}{}
|
||||
\desc[german]{Weltformel}{}{}
|
||||
\eq{E = mc^2 +\text{AI}}
|
||||
\end{formula}
|
||||
\Input{quantities}
|
||||
\Input{constants}
|
||||
\Input{appendix}
|
||||
|
||||
% \listofquantities
|
||||
\listoffigures
|
||||
\listoftables
|
||||
\Section{elements}
|
||||
\desc{List of elements}{}{}
|
||||
\desc[german]{Liste der Elemente}{}{}
|
||||
\printAllElements
|
||||
\newpage
|
||||
\Input{test}
|
||||
|
||||
% \bibliographystyle{plain}
|
||||
|
@ -102,7 +102,7 @@
|
||||
\eq{
|
||||
\mat{\theta} = (\mat{X}^\T \mat{X})^{-1} \mat{X}^\T \vec{y}
|
||||
}
|
||||
\end{formula}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{woodbury_matrix_identity}
|
||||
\desc{Woodbury matrix identity}{Inverse of a rank-$k$ correction}{$\matA\,n\times n$, $\matU\,n\times k$, $\matC\,k\times k$, $\matV \, k\times n$}
|
||||
|
@ -41,18 +41,21 @@
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{pdf}
|
||||
\abbrLabel{PDF}
|
||||
\desc{Probability density function}{Random variable has density $f$. The integral gives the probability of $X$ taking a value $x\in[a,b]$.}{$f$ normalized: $\int_{-\infty}^\infty f(x) \d x= 1$}
|
||||
\desc[german]{Wahrscheinlichkeitsdichtefunktion}{Zufallsvariable hat Dichte $f$. Das Integral gibt Wahrscheinlichkeit an, dass $X$ einen Wert $x\in[a,b]$ annimmt}{$f$ normalisiert $\int_{-\infty}^\infty f(x) \d x= 1$}
|
||||
\eq{P([a,b]) := \int_a^b f(x) \d x}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{cdf}
|
||||
\abbrLabel{CDF}
|
||||
\desc{Cumulative distribution function}{}{$f$ probability density function}
|
||||
\desc[german]{Kumulative Verteilungsfunktion}{}{$f$ Wahrscheinlichkeitsdichtefunktion}
|
||||
\eq{F(x) = \int_{-\infty}^x f(t) \d t}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{pmf}
|
||||
\abbrLabel{PMF}
|
||||
\desc{Probability mass function}{Probability $p$ that \textbf{discrete} random variable $X$ has exact value $x$}{$P$ probability measure}
|
||||
\desc[german]{Wahrscheinlichkeitsfunktion / Zählfunktion}{Wahrscheinlichkeit $p$ dass eine \textbf{diskrete} Zufallsvariable $X$ einen exakten Wert $x$ annimmt}{}
|
||||
\eq{p_X(x) = P(X = x)}
|
||||
|
@ -1,13 +1,13 @@
|
||||
\ProvidesPackage{mqformula}
|
||||
|
||||
|
||||
\RequirePackage{framed} % for leftbar
|
||||
\RequirePackage{mqfqname}
|
||||
\RequirePackage{mqsections}
|
||||
\RequirePackage{mqconstant}
|
||||
\RequirePackage{mqquantity}
|
||||
\RequirePackage{framed} % for leftbar
|
||||
|
||||
\newlength\mqformula@formulaBoxWidth
|
||||
\setlength\mqformula@formulaBoxWidth{\the\dimexpr\textwidth * 65/100\relax}
|
||||
\setlength\mqformula@formulaBoxWidth{\the\dimexpr\textwidth * 68/100\relax}
|
||||
\newlength\mqformula@formulaBoxLeftMargin
|
||||
\setlength\mqformula@formulaBoxLeftMargin{1cm}
|
||||
\newlength\mqformula@ruleWidth
|
||||
@ -23,7 +23,16 @@
|
||||
\def\descwidth{\the\dimexpr\linewidth-\mqformula@formulaBoxWidth - \mqformula@formulaBoxLeftMargin\relax}
|
||||
% \def\descwidth{0.2\textwidth}
|
||||
|
||||
\def\Newcommand#1{\let#1\undefined\newcommand#1}
|
||||
% STYLING
|
||||
% apply some transformation on the formula name/description/definitions, eg bold, color...
|
||||
\newcommand\mqformula@nameTransform[1]{#1}
|
||||
% \newcommand\mqformula@nameTransform[1]{\textbf{#1}}
|
||||
% \newcommand\mqformula@nameTransform[1]{{\color{fg-blue}#1}}
|
||||
\newcommand\mqformula@groupNameTransform[1]{\textbf{#1}}
|
||||
% \newcommand\mqformula@groupNameTransform[1]{{\color{fg-blue}\textbf{#1}}}
|
||||
|
||||
\newcommand\mqformula@descTransform[1]{{\color{fg2}#1}}
|
||||
\newcommand\mqformula@defsTransform[1]{{\color{fg2}#1}}
|
||||
|
||||
%
|
||||
% FORMULA ENVIRONMENT
|
||||
@ -35,13 +44,15 @@
|
||||
% 2: fqname of name
|
||||
% 3: fqname of a translation that holds the explanation
|
||||
\newcommand{\NameWithDescription}[3][\descwidth]{%
|
||||
\makeatletter%
|
||||
\begin{minipage}{#1}
|
||||
% {\color{red}\hrule}
|
||||
\raggedright\GT{#2}%
|
||||
\raggedright\mqformula@nameTransform{\GT{#2}}%
|
||||
\IfTranslationExists{#3}{%
|
||||
\\ {\color{fg1} \GT{#3}}%
|
||||
\\ \mqformula@defsTransform{\GT{#3}}%
|
||||
}{}
|
||||
\end{minipage}%
|
||||
\makeatother%
|
||||
}
|
||||
|
||||
|
||||
@ -54,39 +65,48 @@
|
||||
\begin{lrbox}{\contentBoxBox}%
|
||||
\begin{minipage}{#1}
|
||||
}{
|
||||
\makeatletter%
|
||||
\IfTranslationExists{\ContentFqName}{%
|
||||
\smartnewline%
|
||||
\noindent%
|
||||
\begingroup%
|
||||
\color{fg1}%
|
||||
\raggedright%
|
||||
\GT{\ContentFqName}%
|
||||
\endgroup%
|
||||
}{}
|
||||
\smartnewline\noindent\raggedright%
|
||||
\mqformula@descTransform{\GT{\ContentFqName}}%
|
||||
}{}%
|
||||
\makeatother%
|
||||
\end{minipage}
|
||||
\end{lrbox}%
|
||||
\fbox{\usebox{\contentBoxBox}}%
|
||||
}
|
||||
|
||||
|
||||
% Class defining commands shared by all formula environments
|
||||
% defines commands that may be used in formulas and formulagroups
|
||||
% None of these commands may output anything
|
||||
% 1: key
|
||||
\newenvironment{formulainternal}[1]{
|
||||
\mqfqname@enter{#1}
|
||||
\directlua{n_formulaEntries = 0}
|
||||
|
||||
\newenvironment{mqformulaInvisibleCommands}[1]{
|
||||
% makes this formula referencable with \abbrRef{<name>}
|
||||
% [1]: label to use
|
||||
% [1]: label to use, defaults to formula key
|
||||
% 2: Abbreviation to use for references
|
||||
\Newcommand{\abbrLabel}[2][#1]{
|
||||
\forceNewCommand{\abbrLabel}[2][#1]{
|
||||
\abbrLink[\fqname]{##1}{##2}
|
||||
}
|
||||
% makes this formula referencable with \absRef{<name>}
|
||||
% [1]: <name> to use, defaults to formula key
|
||||
\Newcommand{\absLabel}[1][#1]{
|
||||
\forceNewCommand{\absLabel}[1][#1]{
|
||||
\absLink[\fqname]{\fqname}{##1}
|
||||
}
|
||||
|
||||
% [1]: key, defaults to formula key
|
||||
% 2: symbol
|
||||
% 3: units
|
||||
% 4: comment key to translation
|
||||
\forceNewCommand{\hiddenQuantity}[4][#1]{%
|
||||
\quantity@new[\fqname]{##1}{##2}{##3}{##4}
|
||||
}
|
||||
}{}
|
||||
|
||||
% Class defining commands shared by all formula environments
|
||||
% 1: key
|
||||
\newenvironment{mqformulaCommands}[1]{
|
||||
\begin{mqformulaInvisibleCommands}{#1}
|
||||
\directlua{n_formulaEntries = 0}
|
||||
|
||||
\newcommand{\newFormulaEntry}{
|
||||
\directlua{
|
||||
if n_formulaEntries > 0 then
|
||||
@ -136,9 +156,6 @@
|
||||
\newFormulaEntry
|
||||
\quantity@print{##1}
|
||||
}
|
||||
\newcommand{\hiddenQuantity}[4][#1]{%
|
||||
\quantity@new[\fqname]{##1}{##2}{##3}{##4}
|
||||
}
|
||||
|
||||
% must be used only in third argument of "constant" command
|
||||
% 1: value
|
||||
@ -176,121 +193,95 @@
|
||||
##1%
|
||||
}
|
||||
}{
|
||||
\mqfqname@leave
|
||||
\end{mqformulaInvisibleCommands}
|
||||
}
|
||||
|
||||
\newenvironment{formula}[1]{
|
||||
\begin{formulainternal}{#1}
|
||||
|
||||
\begingroup
|
||||
\mqfqname@label
|
||||
\par\noindent\ignorespaces
|
||||
% \textcolor{gray}{\hrule}
|
||||
% \vspace{0.5\baselineskip}
|
||||
% {\color{red}\hrule}
|
||||
\NameWithDescription[\descwidth]{\fqname}{\fqname:desc}
|
||||
\hfill
|
||||
\begin{ContentBoxWithExplanation}{\fqname:defs}
|
||||
\begin{sectionEntry}{#1}
|
||||
\begin{mqformulaCommands}{#1}
|
||||
\par\noindent\ignorespaces
|
||||
% {\color{red}\hrule}
|
||||
\NameWithDescription[\descwidth]{\fqname}{\fqname:desc}
|
||||
\hfill
|
||||
\begin{ContentBoxWithExplanation}{\fqname:defs}
|
||||
}{
|
||||
\end{ContentBoxWithExplanation}
|
||||
\endgroup
|
||||
\separateEntries
|
||||
% \textcolor{fg3}{\hrule}
|
||||
% \vspace{0.5\baselineskip}
|
||||
\ignorespacesafterend
|
||||
\end{formulainternal}
|
||||
\end{ContentBoxWithExplanation}
|
||||
\end{mqformulaCommands}
|
||||
\end{sectionEntry}
|
||||
}
|
||||
|
||||
|
||||
% BIG FORMULA
|
||||
\newenvironment{bigformula}[1]{
|
||||
\begin{formulainternal}{#1}
|
||||
|
||||
\par\noindent
|
||||
\begin{minipage}{\textwidth} % using a minipage to now allow line breaks within the bigformula
|
||||
\mqfqname@label
|
||||
\par\noindent\ignorespaces
|
||||
% \textcolor{gray}{\hrule}
|
||||
% \vspace{0.5\baselineskip}
|
||||
\raggedright\GT{\fqname}\ignorespaces%
|
||||
\IfTranslationExists{\fqname:desc}{\ignorespaces%
|
||||
: {\color{fg1} \GT{\fqname:desc}}
|
||||
}{}
|
||||
\hfill
|
||||
\par
|
||||
\begin{sectionEntry}{#1}
|
||||
\begin{mqformulaCommands}{#1}
|
||||
\makeatletter%
|
||||
\par\noindent
|
||||
\begin{minipage}{\textwidth} % using a minipage to now allow line breaks within the bigformula
|
||||
\par\noindent\ignorespaces
|
||||
% name
|
||||
\raggedright\mqformula@nameTransform{\GT{\fqname}}\ignorespaces%
|
||||
% description
|
||||
\IfTranslationExists{\fqname:desc}{\ignorespaces%
|
||||
: \mqformula@descTransform{\GT{\fqname:desc}}
|
||||
}{}
|
||||
\hfill
|
||||
\par
|
||||
}{
|
||||
\IfTranslationExists{\fqname:defs}{%
|
||||
\smartnewline
|
||||
\noindent
|
||||
\begingroup
|
||||
\color{fg1}
|
||||
\GT{\fqname:defs}
|
||||
% \edef\temp{\GT{#1_defs}}
|
||||
% \expandafter\StrSubstitute\expandafter{\temp}{:}{\\}
|
||||
\endgroup
|
||||
}{}
|
||||
\end{minipage}
|
||||
\separateEntries
|
||||
% \textcolor{fg3}{\hrule}
|
||||
% \vspace{0.5\baselineskip}
|
||||
\ignorespacesafterend
|
||||
\end{formulainternal}
|
||||
\IfTranslationExists{\fqname:defs}{%
|
||||
\smartnewline
|
||||
\noindent
|
||||
\mqformula@defsTransform{\GT{\fqname:defs}}
|
||||
}{}
|
||||
\end{minipage}
|
||||
\makeatother%
|
||||
\end{mqformulaCommands}
|
||||
\end{sectionEntry}
|
||||
}
|
||||
|
||||
% GROUP
|
||||
\newenvironment{formulagroup}[1]{
|
||||
\mqfqname@enter{#1}
|
||||
\begin{mqformulaInvisibleCommands}{#1}
|
||||
\begin{sectionEntry}{#1}
|
||||
% set nEntry to zero to prevent additional separations within the group
|
||||
\def\oldNEntry{\value{nEntry}}
|
||||
\setcounter{nEntry}{0}
|
||||
|
||||
% makes this formula referencable with \abbrRef{<name>}
|
||||
% [1]: label to use
|
||||
% 2: Abbreviation to use for references
|
||||
\Newcommand{\abbrLabel}[2][#1]{
|
||||
\abbrLink[\fqname]{##1}{##2}
|
||||
}
|
||||
% makes this formula referencable with \absRef{<name>}
|
||||
% [1]: <name> 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}%
|
||||
|
||||
% 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-\mqformula@groupBarWidth}
|
||||
\mqfqname@label
|
||||
\par\noindent\ignorespaces
|
||||
% \textcolor{gray}{\hrule}
|
||||
% \vspace{0.5\baselineskip}
|
||||
\raggedright\textbf{\GT{\fqname}}\ignorespaces%
|
||||
\IfTranslationExists{\fqname:desc}{%
|
||||
: {\color{fg1} \GT{\fqname:desc}}
|
||||
}{}%
|
||||
\hfill
|
||||
\par
|
||||
\makeatletter%
|
||||
\par\noindent
|
||||
\begin{minipage}{\textwidth-\mqformula@groupBarWidth}
|
||||
\mqfqname@label
|
||||
\par\noindent\ignorespaces
|
||||
% \textcolor{gray}{\hrule}
|
||||
% \vspace{0.5\baselineskip}
|
||||
% name
|
||||
\raggedright\mqformula@groupNameTransform{\GT{\fqname}}\ignorespaces%
|
||||
\IfTranslationExists{\fqname:desc}{%
|
||||
: \mqformula@defsTransform{\GT{\fqname:desc}}
|
||||
}{}%
|
||||
\hfill
|
||||
\par
|
||||
}{
|
||||
\IfTranslationExists{\fqname:defs}{%
|
||||
\smartnewline
|
||||
\noindent
|
||||
\begingroup
|
||||
\color{fg1}
|
||||
\GT{\fqname:defs}
|
||||
% \edef\temp{\GT{#1_defs}}
|
||||
% \expandafter\StrSubstitute\expandafter{\temp}{:}{\\}
|
||||
\endgroup
|
||||
}{}
|
||||
\end{minipage}
|
||||
\endMakeFramed
|
||||
\separateEntries
|
||||
% \textcolor{fg3}{\hrule}
|
||||
% \vspace{0.5\baselineskip}
|
||||
\ignorespacesafterend
|
||||
\mqfqname@leave
|
||||
\vspace{0.5\baselineskip}
|
||||
\IfTranslationExists{\fqname:defs}{%
|
||||
\smartnewline\noindent\raggedright%
|
||||
\mqformula@defsTransform{\GT{\fqname:defs}}%
|
||||
}{}
|
||||
\end{minipage}
|
||||
\makeatother%
|
||||
\endMakeFramed
|
||||
\setcounter{nEntry}{\oldNEntry}
|
||||
\end{sectionEntry}
|
||||
\end{mqformulaInvisibleCommands}
|
||||
}
|
||||
|
||||
\newenvironment{hiddenformula}[1]{
|
||||
\begin{formulainternal}{#1}
|
||||
\begin{mqformulaCommands}{#1}
|
||||
\mqfqname@enter{#1}
|
||||
\renewcommand{\eq}[1]{}
|
||||
\renewcommand{\eqFLAlign}[2]{}
|
||||
\renewcommand{\fig}[2][]{}
|
||||
@ -313,6 +304,7 @@
|
||||
\endgroup
|
||||
}
|
||||
}{
|
||||
\end{formulainternal}
|
||||
\mqfqname@leave
|
||||
\end{mqformulaCommands}
|
||||
}
|
||||
|
||||
|
@ -3,6 +3,9 @@
|
||||
\RequirePackage{mqlua}
|
||||
\RequirePackage{etoolbox}
|
||||
|
||||
% make newcommand work on already defined commands
|
||||
\def\forceNewCommand#1{\let#1\undefined\newcommand#1}
|
||||
|
||||
\begin{luacode}
|
||||
sections = sections or {}
|
||||
|
||||
@ -56,7 +59,7 @@
|
||||
local relN = 0
|
||||
|
||||
local relTarget = ""
|
||||
warning('translateRelativeFqname', '(target=' .. target .. ') ');
|
||||
-- warning('translateRelativeFqname', '(target=' .. target .. ') ');
|
||||
for i = 1, #target do
|
||||
local c = target:sub(i,i)
|
||||
if c == ":" then
|
||||
@ -72,7 +75,7 @@
|
||||
|
||||
local N = fqnameGetDepth()
|
||||
local newtarget = fqnameGetN(N - relN + 1) .. ":" .. relTarget
|
||||
warning('translateRelativeFqname', '(relN=' .. relN .. ') ' .. newtarget);
|
||||
-- warning('translateRelativeFqname', '(relN=' .. relN .. ') ' .. newtarget);
|
||||
return newtarget
|
||||
end
|
||||
\end{luacode*}
|
||||
@ -94,56 +97,4 @@
|
||||
}
|
||||
|
||||
|
||||
% Define translations for the current fqname
|
||||
% [1]: language
|
||||
% 2: name
|
||||
% 3: description -> :desc
|
||||
% 4: definitions/links -> :defs
|
||||
\newcommand{\desc}[4][english]{
|
||||
% language, name, description, definitions
|
||||
\ifblank{#2}{}{\dt{#1}{#2}}
|
||||
\ifblank{#3}{}{\dt[desc]{#1}{#3}}
|
||||
\ifblank{#4}{}{\dt[defs]{#1}{#4}}
|
||||
}
|
||||
|
||||
% SECTIONING
|
||||
% start <section>, get heading from translation, set label
|
||||
% fqname is the fully qualified name of all sections and formulas, the keys of all previous sections joined with a ':'
|
||||
% fqname is secFqname:<key> where <key> is the key/id of some environment, like formula
|
||||
% [1]: code to run after setting \fqname, but before the \part, \section etc
|
||||
% 2: key
|
||||
|
||||
% 1: depth
|
||||
% 2: key
|
||||
% 3: Latex section command
|
||||
\newcommand\mqfqname@section[3]{
|
||||
\mqfqname@leaveOnlyFirstN{#1}
|
||||
\mqfqname@enter{#2}
|
||||
% this is necessary so that \part/\section... takes the fully expanded string. Otherwise the pdf toc will have just the fqname
|
||||
\edef\fqnameText{\GT{\fqname}}
|
||||
#3{\fqnameText}
|
||||
\mqfqname@label
|
||||
\IfTranslationExists{\fqname:desc}{
|
||||
{\color{fg1} \GT{\fqname:desc}}
|
||||
}{}
|
||||
}
|
||||
|
||||
|
||||
\newcommand{\Part}[1]{
|
||||
\newpage
|
||||
\mqfqname@section{0}{#1}{\part}
|
||||
}
|
||||
\newcommand{\Section}[1]{
|
||||
\mqfqname@section{1}{#1}{\section}
|
||||
}
|
||||
\newcommand{\Subsection}[1]{
|
||||
\mqfqname@section{2}{#1}{\subsection}
|
||||
}
|
||||
\newcommand{\Subsubsection}[1]{
|
||||
\mqfqname@section{3}{#1}{\subsubsection}
|
||||
}
|
||||
\newcommand{\Paragraph}[1]{
|
||||
\mqfqname@section{4}{#1}{\paragraph}
|
||||
}
|
||||
|
||||
\newcommand\printFqName{\expandafter\detokenize\expandafter{\fqname}}
|
||||
|
@ -113,10 +113,11 @@
|
||||
|
||||
|
||||
% Equations/Formulas
|
||||
% Deprecated use fRef, absRef
|
||||
% \newrobustcmd{\fqEqRef}[1]{%
|
||||
\newrobustcmd{\fAbsRef}[2][]{%
|
||||
\directlua{hyperref(\luastring{#2}, \luastring{#1})}%
|
||||
}
|
||||
% \newrobustcmd{\fAbsRef}[2][]{%
|
||||
% \directlua{hyperref(\luastring{#2}, \luastring{#1})}%
|
||||
% }
|
||||
|
||||
% [1]: link text
|
||||
% 2: link target (fqname)
|
||||
@ -126,30 +127,29 @@
|
||||
% 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
|
||||
\newcommand{\mqfqname@fRelRef}[3][1]{
|
||||
\directlua{
|
||||
local N = fqnameGetDepth()
|
||||
luatexbase.module_warning('fRelRef', '(N=' .. N .. ') #2');
|
||||
if N > #2 then
|
||||
local upfqname = fqnameGetN(N-#2)
|
||||
hyperref(upfqname .. \luastring{:#3}, \luastring{#1})
|
||||
else
|
||||
luatexbase.module_warning('fUpRef', 'fqname depth (N=' .. N .. ') too low for fUpRef if #1');
|
||||
end
|
||||
}
|
||||
}
|
||||
\newcommand{\fThisRef}[2][]{\mqfqname@fRelRef[#1]{0}{#2}}
|
||||
\newcommand{\fUpRef}[2][]{\mqfqname@fRelRef[#1]{1}{#2}}
|
||||
\newcommand{\fUppRef}[2][]{\mqfqname@fRelRef[#1]{2}{#2}}
|
||||
% Deprecated: use :: with fRef
|
||||
% % [1]: link text
|
||||
% % 2: number of steps to take up
|
||||
% % 3: link target relative to the previous fqname section
|
||||
% \newcommand{\mqfqname@fRelRef}[3][1]{
|
||||
% \directlua{
|
||||
% local N = fqnameGetDepth()
|
||||
% luatexbase.module_warning('fRelRef', '(N=' .. N .. ') #2');
|
||||
% if N > #2 then
|
||||
% local upfqname = fqnameGetN(N-#2)
|
||||
% hyperref(upfqname .. \luastring{:#3}, \luastring{#1})
|
||||
% else
|
||||
% luatexbase.module_warning('fUpRef', 'fqname depth (N=' .. N .. ') too low for fUpRef if #1');
|
||||
% end
|
||||
% }
|
||||
% }
|
||||
% \newcommand{\fThisRef}[2][]{\mqfqname@fRelRef[#1]{0}{#2}}
|
||||
% \newcommand{\fUpRef}[2][]{\mqfqname@fRelRef[#1]{1}{#2}}
|
||||
% \newcommand{\fUppRef}[2][]{\mqfqname@fRelRef[#1]{2}{#2}}
|
||||
|
||||
% Quantities
|
||||
% <symbol>
|
||||
\newrobustcmd{\qtyRef}[2][]{%
|
||||
% \edef\tempname{\luaDoubleFieldValue{quantities}{"#1"}{"fqname"}}%
|
||||
% \hyperref[qty:#1]{\GT{\tempname}}%
|
||||
\directlua{hyperref(quantityGetFqname(\luastring{#2}), \luastring{#1})}%
|
||||
}
|
||||
% <symbol> <name>
|
||||
@ -159,8 +159,6 @@
|
||||
% Constants
|
||||
% <name>
|
||||
\newrobustcmd{\constRef}[2][]{%
|
||||
% \edef\tempname{\luaDoubleFieldValue{constants}{"#1"}{"linkto"}}%
|
||||
% \hyperref[const:#1]{\GT{\tempname}}%
|
||||
\directlua{hyperref(constantGetFqname(\luastring{#2}), \luastring{#1})}%
|
||||
}
|
||||
% <symbol> <name>
|
||||
@ -209,6 +207,10 @@ function absLabelGetTranslationKey(key)
|
||||
end
|
||||
end
|
||||
|
||||
function absRef(key, text)
|
||||
hyperref(absLabelGetTarget(key), text)
|
||||
end
|
||||
|
||||
|
||||
function abbrLabelAdd(key, target, label)
|
||||
abbrLabels[key] = {
|
||||
@ -232,6 +234,10 @@ function abbrLabelGetAbbr(key)
|
||||
return ""
|
||||
end
|
||||
end
|
||||
|
||||
function abbrRef(key)
|
||||
hyperref(abbrLabelGetTarget(key), abbrLabelGetAbbr(key))
|
||||
end
|
||||
\end{luacode}
|
||||
|
||||
% [1]: translation key, if different from target
|
||||
@ -257,24 +263,9 @@ 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{
|
||||
hyperref(absLabelGetTarget(\luastring{#2}), \luastring{#1})
|
||||
}
|
||||
\directlua{absRef(\luastring{#2}, \luastring{#1})}%
|
||||
}
|
||||
% 1: key
|
||||
\newrobustcmd{\abbrRef}[1]{%
|
||||
\directlua{hyperref(abbrLabelGetTarget(\luastring{#1}), abbrLabelGetAbbr(\luastring{#1}))}
|
||||
% if abbrLabels["#1"] == nil then
|
||||
% tex.sprint(string.sanitize(\luastring{#1}) .. "???")
|
||||
% else
|
||||
% tex.sprint("\\hyperref[" .. abbrLabels["#1"]["fqname"] .. "]{" .. abbrLabels["#1"]["abbr"] .. "}")
|
||||
% end
|
||||
% }
|
||||
\directlua{abbrRef(\luastring{#1})}%
|
||||
}
|
||||
|
84
src/pkg/mqsections.sty
Normal file
84
src/pkg/mqsections.sty
Normal file
@ -0,0 +1,84 @@
|
||||
\ProvidesPackage{mqsections}
|
||||
|
||||
\RequirePackage{mqfqname}
|
||||
\RequirePackage{mqtranslation}
|
||||
|
||||
% SECTIONING
|
||||
% start <section>, get heading from translation, set label
|
||||
% fqname is the fully qualified name of all sections and formulas, the keys of all previous sections joined with a ':'
|
||||
% fqname is secFqname:<key> where <key> is the key/id of some environment, like formula
|
||||
% [1]: code to run after setting \fqname, but before the \part, \section etc
|
||||
% 2: key
|
||||
|
||||
% 1: depth
|
||||
% 2: key
|
||||
% 3: Latex section command
|
||||
\newcommand\mqfqname@section[3]{
|
||||
\par
|
||||
\mqfqname@leaveOnlyFirstN{#1}
|
||||
\mqfqname@enter{#2}
|
||||
% this is necessary so that \part/\section... takes the fully expanded string. Otherwise the pdf toc will have just the fqname
|
||||
\edef\fqnameText{\GT{\fqname}}
|
||||
#3{\fqnameText}
|
||||
\mqfqname@label
|
||||
\IfTranslationExists{\fqname:desc}{
|
||||
{\color{fg1} \GT{\fqname:desc}}
|
||||
}{}
|
||||
\setcounter{nEntry}{0}
|
||||
}
|
||||
|
||||
|
||||
\newcommand{\Part}[1]{
|
||||
\newpage
|
||||
\mqfqname@section{0}{#1}{\part}
|
||||
}
|
||||
\newcommand{\Section}[1]{
|
||||
\mqfqname@section{1}{#1}{\section}
|
||||
}
|
||||
\newcommand{\Subsection}[1]{
|
||||
\mqfqname@section{2}{#1}{\subsection}
|
||||
}
|
||||
\newcommand{\Subsubsection}[1]{
|
||||
\mqfqname@section{3}{#1}{\subsubsection}
|
||||
}
|
||||
\newcommand{\Paragraph}[1]{
|
||||
\mqfqname@section{4}{#1}{\paragraph}
|
||||
}
|
||||
|
||||
\newcommand\printFqName{\expandafter\detokenize\expandafter{\fqname}}
|
||||
|
||||
\newcounter{nEntry}
|
||||
\setcounter{nEntry}{0}
|
||||
|
||||
% Separate elements with a horizontal rule
|
||||
% Rule only printed of its not the first entry within the section
|
||||
\newcommand\startEntry{
|
||||
\par
|
||||
\ifnum\value{nEntry}>0
|
||||
\vspace{0.5\baselineskip}
|
||||
\textcolor{fg3}{\hrule}
|
||||
\vspace{0.5\baselineskip}
|
||||
\fi
|
||||
\addtocounter{nEntry}{1}
|
||||
}
|
||||
|
||||
\newcommand\stopEntry{
|
||||
% \ifnum\value{nEntry}>0
|
||||
% \vspace{0.5\baselineskip}
|
||||
% \textcolor{fg3}{\hrule}
|
||||
% \vspace{0.5\baselineskip}
|
||||
% \fi
|
||||
% \addtocounter{nEntry}{1}
|
||||
\ignorespacesafterend\par
|
||||
}
|
||||
|
||||
\newenvironment{sectionEntry}[1]{
|
||||
\startEntry
|
||||
\mqfqname@enter{#1}
|
||||
\begingroup
|
||||
\mqfqname@label
|
||||
}{
|
||||
\endgroup
|
||||
\mqfqname@leave
|
||||
\stopEntry
|
||||
}
|
@ -113,7 +113,7 @@
|
||||
% For ease of use in the ttext environment and the optional argument of the \Part, \Section, ... commands,
|
||||
% all "define translation" commands use \fqname as default key
|
||||
|
||||
% Get a translation
|
||||
% GETTING TRANSLATIONS
|
||||
% expandafter required because the translation commands dont expand anything
|
||||
% shortcuts for translations
|
||||
% 1: key
|
||||
@ -125,6 +125,8 @@
|
||||
\newcommand{\tgt}[1]{\text{\gt{#1}}}
|
||||
\newcommand{\tGT}[1]{\text{\GT{#1}}}
|
||||
|
||||
|
||||
% PROVIDING TRANSLATIONS
|
||||
% Define a new translation
|
||||
% [1]: key, 2: lang, 3: translation
|
||||
\newcommand{\dt}[3][\fqname]{%
|
||||
@ -155,6 +157,7 @@
|
||||
\newcommand{\Ger}[2][\fqname]{\DT[#1]{german}{#2}}
|
||||
\newcommand{\Eng}[2][\fqname]{\DT[#1]{english}{#2}}
|
||||
|
||||
% UTLITY
|
||||
\newcommand{\IfTranslationExists}[3]{%
|
||||
\directlua{
|
||||
if tlExistsFallback(language, \luastring{#1}) then
|
||||
@ -177,3 +180,15 @@
|
||||
\GT{\fqname}%
|
||||
\mqfqname@leave%
|
||||
}
|
||||
|
||||
% Define translations for the current fqname
|
||||
% [1]: language
|
||||
% 2: name
|
||||
% 3: description -> :desc
|
||||
% 4: definitions/links -> :defs
|
||||
\newcommand{\desc}[4][english]{
|
||||
% language, name, description, definitions
|
||||
\ifblank{#2}{}{\dt{#1}{#2}}
|
||||
\ifblank{#3}{}{\dt[desc]{#1}{#3}}
|
||||
\ifblank{#4}{}{\dt[defs]{#1}{#4}}
|
||||
}
|
||||
|
@ -285,7 +285,7 @@
|
||||
\end{formula}
|
||||
|
||||
\Subsubsection{ehrenfest_theorem}
|
||||
\desc{Ehrenfest theorem}{\GT{see_also} \fRef{qm:se:time:ehrenfest_theorem:correspondence_principle}}{}
|
||||
\desc{Ehrenfest theorem}{\GT{see_also} \fRef{qm:basics:correspondence_principle}}{}
|
||||
\desc[german]{Ehrenfest-Theorem}{}{}
|
||||
\absLink{}{ehrenfest_theorem}
|
||||
|
||||
|
@ -186,6 +186,19 @@
|
||||
\quantity{L}{\henry=\kg\m^2\per\s^2\ampere^2=\weber\per\ampere=\volt\s\per\ampere=\ohm\s}{s}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{voltage}
|
||||
\desc{Voltage}{Potential difference}{$\phi$ \qtyRef{electric_scalar_potential}}
|
||||
\desc[german]{Spannung}{}{}
|
||||
\eq{U = \phi_2 - \phi_1}
|
||||
\quantity{U}{\volt=\kg\m^2\per\s^3\ampere}{s}
|
||||
\end{formula}
|
||||
|
||||
\begin{formula}{capacitance}
|
||||
\desc{Capacitance}{Amount of charge stored per voltage}{}
|
||||
\desc[german]{Kapazität}{Gespeicherte Ladungsmenge pro Spannung}{}
|
||||
\quantity{C}{\farad=\coulomb\per\volt}{s}
|
||||
\end{formula}
|
||||
|
||||
\Subsection{other}
|
||||
\desc{Others}{}{}
|
||||
\desc[german]{Sonstige}{}{}
|
||||
|
@ -536,11 +536,11 @@
|
||||
\eq{\braket{v^2} = \int_0^\infty \d v\,v^2 w(v) = \frac{3\kB T}{m}}
|
||||
\end{formula}
|
||||
|
||||
\Subsubsection{molecule_gas}
|
||||
\Subsection{molecule_gas}
|
||||
\desc{Molecule gas}{}{}
|
||||
\desc[german]{Molekülgas}{}{}
|
||||
|
||||
\begin{formula}{desc}
|
||||
\begin{formula}{molecule_gas}
|
||||
\desc{Molecule gas}{2 particles of mass $M$ connected by a ``spring'' with distance $L$}{}
|
||||
\desc[german]{Molekülgas}{2 Teilchen der Masse $M$ sind verbunden durch eine ``Feder'' mit Länge $L$}{}
|
||||
% \begin{figure}[h]
|
||||
|
210
src/test.tex
210
src/test.tex
@ -1,4 +1,5 @@
|
||||
\part{Testing}
|
||||
\Part{Testing}
|
||||
\desc{Testing}{Very important}{}
|
||||
|
||||
\makeatletter
|
||||
Sizes:
|
||||
@ -24,92 +25,108 @@ Sizes:
|
||||
% Translations Aux loaded? \translationsAuxLoaded\\
|
||||
Input only: \inputOnlyFile
|
||||
|
||||
\paragraph{Testing GT, GetTranslation, IfTranslationExists, IfTranslation}
|
||||
\addtranslation{english}{ttest}{This is the english translation of \texttt{ttest}}
|
||||
\noindent
|
||||
GT: ttest = \GT{ttest}\\
|
||||
% GetTranslation: ttest = \GetTranslation{ttest}\\
|
||||
% Is english? = \IfTranslation{english}{ttest}{yes}{no} \\
|
||||
% Is german? = \IfTranslation{german}{ttest}{yes}{no} \\
|
||||
Is defined = \IfTranslationExists{ttest}{yes}{no} \\
|
||||
\Section{translation}
|
||||
\desc{Translations}{}{}
|
||||
\desc[german]{Übersetzungen}{}{}
|
||||
|
||||
\paragraph{Testing translation keys containing macros}
|
||||
\def\ttest{NAME}
|
||||
% \addtranslation{english}{\ttest:name}{With variable}
|
||||
% \addtranslation{german}{\ttest:name}{Mit Variable}
|
||||
% \addtranslation{english}{NAME:name}{Without variable}
|
||||
% \addtranslation{german}{NAME:name}{Without Variable}
|
||||
\DT[\ttest:name]{english}{DT With variable}
|
||||
\DT[\ttest:name]{german}{DT Mit Variable}
|
||||
\noindent
|
||||
GT: {\textbackslash}ttest:name = \GT{\ttest:name}\\
|
||||
% GetTranslation: {\textbackslash}ttest:name = \GetTranslation{\ttest:name}\\
|
||||
% Is english? = \IfTranslation{english}{\ttest:name}{yes}{no} \\
|
||||
% Is german? = \IfTranslation{german}{\ttest:name}{yes}{no} \\
|
||||
% Is defined? = \IfTranslationExists{\ttest:name}{yes}{no} \\
|
||||
% Is defined? = \expandafter\IfTranslationExists\expandafter{\ttest:name}{yes}{no}
|
||||
\paragraph{Testing GT, GetTranslation, IfTranslationExists, IfTranslation}
|
||||
\addtranslation{english}{ttest}{This is the english translation of \texttt{ttest}}
|
||||
\noindent
|
||||
GT: ttest = \GT{ttest}\\
|
||||
% GetTranslation: ttest = \GetTranslation{ttest}\\
|
||||
% Is english? = \IfTranslation{english}{ttest}{yes}{no} \\
|
||||
% Is german? = \IfTranslation{german}{ttest}{yes}{no} \\
|
||||
Is defined = \IfTranslationExists{ttest}{yes}{no} \\
|
||||
|
||||
\paragraph{Testing relative translations}
|
||||
\begingroup
|
||||
\edef\prevFqname{\fqname}
|
||||
\edef\fqname{\prevFqname:test}
|
||||
\eng{English, relative}
|
||||
\ger{Deutsch, relativ}
|
||||
\endgroup
|
||||
\dt[testkey]{english}{Testkey}
|
||||
{\textbackslash}gt\{test\}: \gt{test}\\
|
||||
{\textbackslash}gt\{test\}: \gt{testkey}
|
||||
\paragraph{Testing translation keys containing macros}
|
||||
\def\ttest{NAME}
|
||||
% \addtranslation{english}{\ttest:name}{With variable}
|
||||
% \addtranslation{german}{\ttest:name}{Mit Variable}
|
||||
% \addtranslation{english}{NAME:name}{Without variable}
|
||||
% \addtranslation{german}{NAME:name}{Without Variable}
|
||||
\DT[\ttest:name]{english}{DT With variable}
|
||||
\DT[\ttest:name]{german}{DT Mit Variable}
|
||||
\noindent
|
||||
GT: {\textbackslash}ttest:name = \GT{\ttest:name}\\
|
||||
% GetTranslation: {\textbackslash}ttest:name = \GetTranslation{\ttest:name}\\
|
||||
% Is english? = \IfTranslation{english}{\ttest:name}{yes}{no} \\
|
||||
% Is german? = \IfTranslation{german}{\ttest:name}{yes}{no} \\
|
||||
% Is defined? = \IfTranslationExists{\ttest:name}{yes}{no} \\
|
||||
% Is defined? = \expandafter\IfTranslationExists\expandafter{\ttest:name}{yes}{no}
|
||||
|
||||
% \DT[qty:test]{english}{HAHA}
|
||||
\paragraph{Testing relative translations}
|
||||
\begingroup
|
||||
\edef\prevFqname{\fqname}
|
||||
\edef\fqname{\prevFqname:test}
|
||||
\eng{English, relative}
|
||||
\ger{Deutsch, relativ}
|
||||
\endgroup
|
||||
\dt[testkey]{english}{Testkey}
|
||||
{\textbackslash}gt\{test\}: \gt{test}\\
|
||||
{\textbackslash}gt\{test\}: \gt{testkey}
|
||||
|
||||
\paragraph{Testing hyperrefs}
|
||||
\noindent{This text is labeled with "test" \label{test}}\\
|
||||
\fRef[This should refer to the line above]{test}\\
|
||||
Link to quantity which is defined after the reference: \qtyRef{test}\\
|
||||
\DT[eq:test]{english}{If you read this, then the translation for eq:test was expandend!}
|
||||
Link to defined quantity: \qtyRef{mass}
|
||||
\\ Link to element with name: \ElRef{H}
|
||||
\begin{equation}
|
||||
\label{eq:test}
|
||||
E = mc^2
|
||||
\end{equation}
|
||||
% \DT[qty:test]{english}{HAHA}
|
||||
|
||||
\paragraph{Testing translation keys with token symbols like undescores}
|
||||
\noindent
|
||||
\GT{absolute_undefined_translation_with_underscors}\\
|
||||
\gt{relative_undefined_translation_with_underscors}\\
|
||||
\GT{absolute_undefined_translation_with_&ersand}
|
||||
|
||||
|
||||
\paragraph{Testing formula2}
|
||||
\begin{formula}{test}
|
||||
\desc{Test}{Test Description}{Defs}
|
||||
\desc[german]{Test (DE)}{Beschreibung}{Defs (DE)}
|
||||
\eq{
|
||||
\text{equationwith}_{\alpha} \delta \E \left[yo\right]
|
||||
}
|
||||
\quantity{\tau}{\m\per\s}{iv}
|
||||
\end{formula}
|
||||
\begin{formula}{test2}
|
||||
\desc{Test2}{Test Description}{Defs}
|
||||
\desc[german]{Test2 (DE)}{Beschreibung}{Defs (DE)}
|
||||
\ttxt{
|
||||
\eng{This text is english}
|
||||
\ger{Dieser Text ist deutsch}
|
||||
}
|
||||
\ttxt[moretext]{
|
||||
\eng{This text is english, again}
|
||||
\ger{Dieser Text ist wieder deutsch}
|
||||
}
|
||||
\paragraph{Testing hyperrefs}
|
||||
\noindent{This text is labeled with "test" \label{test}}\\
|
||||
\fRef[This should refer to the line above]{test}\\
|
||||
Link to quantity which is defined after the reference: \qtyRef{test}\\
|
||||
\DT[eq:test]{english}{If you read this, then the translation for eq:test was expandend!}
|
||||
Link to defined quantity: \qtyRef{mass}
|
||||
\\ Link to element with name: \ElRef{H}
|
||||
\begin{equation}
|
||||
M\omega\rho\epsilon
|
||||
\label{eq:test}
|
||||
E = mc^2
|
||||
\end{equation}
|
||||
\end{formula}
|
||||
\begin{formula}{test3}
|
||||
\desc{Test2}{Test Description}{Defs}
|
||||
\desc[german]{Test2 (DE)}{Beschreibung}{Defs (DE)}
|
||||
Formula with just plain text.
|
||||
\end{formula}
|
||||
|
||||
\paragraph{Testing translation keys with token symbols like undescores}
|
||||
\noindent
|
||||
\GT{absolute_undefined_translation_with_underscors}\\
|
||||
\gt{relative_undefined_translation_with_underscors}\\
|
||||
\GT{absolute_undefined_translation_with_&ersand}
|
||||
|
||||
|
||||
\Section{formula}
|
||||
\desc{Formula and Maths}{}{}
|
||||
\desc[german]{Formula und Mathe}{}{}
|
||||
\begin{formula}{test}
|
||||
\desc{Test}{Test Description}{Defs}
|
||||
\desc[german]{Test (DE)}{Beschreibung}{Defs (DE)}
|
||||
\eq{
|
||||
\text{equationwith}_{\alpha} \delta \E \left[yo\right]
|
||||
}
|
||||
\quantity{\tau}{\m\per\s}{iv}
|
||||
% \quantity{tau}{mpers}{iv}
|
||||
\constant{\mu}{exp}{
|
||||
\val{1023}{\m\per\s}
|
||||
}
|
||||
\newFormulaEntry
|
||||
\begin{gather}
|
||||
\vec{XX} = \vecA_\vecB \otimes C^\vecD \\
|
||||
\mat{XX} = \matA_\matB \otimes C^\matD \\
|
||||
\ten{XX} = \tenA_\tenB \otimes C^\tenD
|
||||
\end{gather}
|
||||
\end{formula}
|
||||
\begin{formula}{test2}
|
||||
\desc{Test2}{Test Description}{Defs}
|
||||
\desc[german]{Test2 (DE)}{Beschreibung}{Defs (DE)}
|
||||
\ttxt{
|
||||
\eng{This text is english}
|
||||
\ger{Dieser Text ist deutsch}
|
||||
}
|
||||
\ttxt[moretext]{
|
||||
\eng{This text is english, again}
|
||||
\ger{Dieser Text ist wieder deutsch}
|
||||
}
|
||||
\begin{equation}
|
||||
M\omega\rho\epsilon
|
||||
\end{equation}
|
||||
\end{formula}
|
||||
\begin{formula}{test3}
|
||||
\desc{Test2}{Test Description}{Defs}
|
||||
\desc[german]{Test2 (DE)}{Beschreibung}{Defs (DE)}
|
||||
Formula with just plain text.
|
||||
\end{formula}
|
||||
|
||||
|
||||
|
||||
@ -118,22 +135,14 @@ Link to defined quantity: \qtyRef{mass}
|
||||
\desc{Layout Test}{}{}
|
||||
\desc[german]{}{}{}
|
||||
|
||||
\begin{formula}{tt1}
|
||||
\desc{Formula}{Desc}{Defs}
|
||||
\eq{E=mc^2}
|
||||
\end{formula}
|
||||
|
||||
\begin{bigformula}{tt2}
|
||||
\desc{Big formula}{Desc}{Defs}
|
||||
\eq{E=mc^3}
|
||||
\end{bigformula}
|
||||
|
||||
|
||||
\begin{formulagroup}{tt3}
|
||||
\desc{Formula group}{Desc}{Defs}
|
||||
\begin{formula}{tt1}
|
||||
\desc{Formula}{Desc}{Defs}
|
||||
\eq{E=mc^2}
|
||||
\ttxt{\eng{
|
||||
Translated text via ttxt.
|
||||
}\ger{
|
||||
Übersetzter text mit ttxt.
|
||||
}}
|
||||
\end{formula}
|
||||
|
||||
\begin{bigformula}{tt2}
|
||||
@ -141,4 +150,17 @@ Link to defined quantity: \qtyRef{mass}
|
||||
\eq{E=mc^3}
|
||||
\end{bigformula}
|
||||
|
||||
\end{formulagroup}
|
||||
|
||||
\begin{formulagroup}{tt3}
|
||||
\desc{Formula group}{Desc}{Defs}
|
||||
\begin{formula}{tt1}
|
||||
\desc{Formula}{Desc}{Defs}
|
||||
\eq{E=mc^2}
|
||||
\end{formula}
|
||||
|
||||
\begin{bigformula}{tt2}
|
||||
\desc{Big formula}{Desc}{Defs}
|
||||
\eq{E=mc^3}
|
||||
\end{bigformula}
|
||||
|
||||
\end{formulagroup}
|
||||
|
@ -1,12 +1,3 @@
|
||||
|
||||
\newcommand\separateEntries{
|
||||
\vspace{0.5\baselineskip}
|
||||
\textcolor{fg3}{\hrule}
|
||||
\vspace{0.5\baselineskip}
|
||||
}
|
||||
|
||||
|
||||
|
||||
% Custon environment with table of contents, requires etoolbox?
|
||||
% Define a custom list
|
||||
\newcommand{\listofmyenv}{%
|
||||
@ -32,6 +23,18 @@
|
||||
\def\distrightwidth{0.45}
|
||||
\def\distleftwidth{0.45}
|
||||
|
||||
\begin{luacode}
|
||||
distRefs = {
|
||||
mean = "math:pt:mean",
|
||||
variance = "math:pt:variance",
|
||||
median = "math:pt:median",
|
||||
}
|
||||
distAbbrRefs = {
|
||||
pdf = "pdf",
|
||||
pmf = "pmf",
|
||||
cdf = "cdf",
|
||||
}
|
||||
\end{luacode}
|
||||
% Table for distributions
|
||||
% create entries for parameters using \disteq
|
||||
\newenvironment{distribution}{
|
||||
@ -39,21 +42,15 @@
|
||||
% 2: math
|
||||
\newcommand{\disteq}[2]{
|
||||
% add links to some names
|
||||
\directlua{
|
||||
local cases = {
|
||||
pdf = "math:pt:pdf",
|
||||
pmf = "math:pt:pmf",
|
||||
cdf = "math:pt:cdf",
|
||||
mean = "math:pt:mean",
|
||||
variance = "math:pt:variance",
|
||||
median = "math:pt:median",
|
||||
}
|
||||
if cases[\luastring{##1}] \string~= nil then
|
||||
tex.sprint("\\fRef{"..cases[\luastring{##1}].."}")
|
||||
else
|
||||
tex.sprint("\\GT{##1}")
|
||||
end
|
||||
}
|
||||
\luaexec{
|
||||
if distRefs[\luastring{##1}] ~= nil then
|
||||
hyperref(distRefs[\luastring{##1}])
|
||||
elseif distAbbrRefs[\luastring{##1}] ~= nil then
|
||||
abbrRef(distAbbrRefs[\luastring{##1}])
|
||||
else
|
||||
tex.sprint(tlGetFallbackCurrent(translateRelativeFqname(\luastring{##1})))
|
||||
end
|
||||
}%
|
||||
& ##2 \\ \hline
|
||||
}
|
||||
\hfill
|
||||
|
@ -3,6 +3,15 @@
|
||||
\newcommand\gooditem{\item[{$\color{fg-green}\bullet$}]}
|
||||
\newcommand\baditem{\item[{$\color{fg-red}\bullet$}]}
|
||||
|
||||
\AtBeginDocument{
|
||||
\newcommand\blacksquare{\mdblksquare}
|
||||
|
||||
% \forceNewCommand\checkmark{\emoji{check-mark}}
|
||||
\newcommand\symForbidden{\emoji{cross-mark}}
|
||||
\newcommand\symAllowed{\emoji{check-mark}}
|
||||
% \forceNewCommand\crossmark{$\times$}
|
||||
}
|
||||
|
||||
% INPUT
|
||||
% 1: starting pattern of files to input using the Input command. All other files are ignored
|
||||
\newcommand\InputOnly[1]{\edef\inputOnlyFile{#1}}
|
||||
|
@ -1,3 +1,6 @@
|
||||
% This file is also sourced by matplotlib,
|
||||
% it must thus not contain dependencies except those
|
||||
% specified in the preamble in scripts/formulary.py
|
||||
|
||||
% Functions with (optional) paranthesis
|
||||
% 1: The function (like \exp, \sin etc.)
|
||||
@ -18,6 +21,21 @@
|
||||
}
|
||||
}
|
||||
|
||||
% VECTOR, MATRIX and TENSOR
|
||||
\AtBeginDocument{ % unicode-math defines them at begin document, need to overwrite vec there
|
||||
% use vecAr to force an arrow
|
||||
\NewCommandCopy{\vecAr}{\vec}
|
||||
% extra {} assure they can b directly used after _
|
||||
%% arrow/underline
|
||||
\newcommand\mat[1]{{\ensuremath{\underline{#1}}}}
|
||||
\renewcommand\vec[1]{{\ensuremath{\vecAr{#1}}}}
|
||||
\newcommand\ten[1]{{\ensuremath{[#1]}}}
|
||||
\newcommand\complex[1]{{\ensuremath{\tilde{#1}}}}
|
||||
}
|
||||
%% bold
|
||||
% \newcommand\mat[1]{{\ensuremath{\bm{#1}}}}
|
||||
% \renewcommand\vec[1]{{\ensuremath{\bm{#1}}}}
|
||||
|
||||
|
||||
% COMMON SYMBOLS WITH SUPER/SUBSCRIPTS, VECTOR ARROWS ETC.
|
||||
% \def\laplace{\Delta} % Laplace operator
|
||||
@ -49,10 +67,10 @@
|
||||
% \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\epsreal{\epsilon^{\prime}} % permittivity real part
|
||||
\newcommand\epscomplex{\epsilon^{\prime\prime}} % permittivity complex part
|
||||
\newcommand\nReal{n^{\prime}} % refraction real part
|
||||
\newcommand\nImag{n^{\prime\prime}} % refraction index complex part
|
||||
\newcommand\epsReal{\epsilon^{\prime}} % permittivity real part
|
||||
\newcommand\epsImag{\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
|
||||
@ -186,15 +204,3 @@
|
||||
\newcommand\Log[1]{\CmdWithParenthesis{\log}{#1}}
|
||||
\newcommand\Order[1]{\CmdWithParenthesis{\mathcal{O}}{#1}}
|
||||
|
||||
% VECTOR, MATRIX and TENSOR
|
||||
% use vecAr to force an arrow
|
||||
\NewCommandCopy{\vecAr}{\vec}
|
||||
% extra {} assure they can b directly used after _
|
||||
%% arrow/underline
|
||||
\newcommand\mat[1]{{\ensuremath{\underline{#1}}}}
|
||||
\renewcommand\vec[1]{{\ensuremath{\vecAr{#1}}}}
|
||||
\newcommand\ten[1]{{\ensuremath{[#1]}}}
|
||||
\newcommand\complex[1]{{\ensuremath{\tilde{#1}}}}
|
||||
%% bold
|
||||
% \newcommand\mat[1]{{\ensuremath{\bm{#1}}}}
|
||||
% \renewcommand\vec[1]{{\ensuremath{\bm{#1}}}}
|
||||
|
@ -31,10 +31,10 @@
|
||||
\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[conduction band]{conduction band}
|
||||
\Ger[conduction band]{Leitungsband}
|
||||
\Eng[valence band]{valance band}
|
||||
\Ger[valence band]{Valenzband}
|
||||
|
||||
|
||||
\Eng[creation_annihilation_ops]{Creation / Annihilation operators}
|
||||
|
Loading…
x
Reference in New Issue
Block a user