diff options
Diffstat (limited to '')
-rw-r--r-- | an2e_zf.pdf | bin | 103450 -> 109609 bytes | |||
-rw-r--r-- | an2e_zf.tex | 199 | ||||
-rw-r--r-- | hsrstud.sty | 395 | ||||
-rw-r--r-- | hsrzf.cls | 236 |
4 files changed, 761 insertions, 69 deletions
diff --git a/an2e_zf.pdf b/an2e_zf.pdf Binary files differindex 483eeaa..dd6b95e 100644 --- a/an2e_zf.pdf +++ b/an2e_zf.pdf diff --git a/an2e_zf.tex b/an2e_zf.tex index a05a68b..50b9aff 100644 --- a/an2e_zf.tex +++ b/an2e_zf.tex @@ -1,8 +1,6 @@ -\documentclass[a4paper, twocolumn]{article} +\documentclass[margin=small, twocolumn]{hsrzf} -\usepackage{amssymb} -\usepackage{amsmath} -\usepackage{bm} +\usepackage{hsrstud} \numberwithin{equation}{subsection} @@ -14,7 +12,6 @@ \usepackage{rotating} \usepackage{enumitem} -\usepackage[margin=2cm, marginpar=0pt]{geometry} \usepackage{graphicx} \usepackage{xcolor} @@ -25,21 +22,6 @@ ]{doclicense} -%\usepackage{showframe} - -%\usepackage{tikz} -%\usepackage{tikz-3dplot} -%\usepackage{pgfplots} -%\pgfplotsset{compat=1.15} - - -\usepackage[colorlinks = true, - linkcolor = red!50!black, - urlcolor = blue, - citecolor = black, - anchorcolor = blue]{hyperref} - - \usepackage{polyglossia} \setdefaultlanguage[variant=swiss]{german} @@ -49,15 +31,12 @@ \date{Fr\"uhlingsstemester 2020} -\newcommand{\dd}[2][]{\ensuremath{~\mathrm{d}^{#1} #2}} -\newcommand{\deriv}[3][]{\ensuremath{\frac{\dd[#1]{#2}}{\dd[]{#3^{#1}}}}} -\newcommand{\pderiv}[3][]{\ensuremath{\frac{\partial^{#1} #2}{\partial^{#1} #3}}} -\renewcommand{\vec}[1]{\ensuremath{\bm{#1}}} - \newcommand{\brpage}[1]{\textcolor{red!70!black}{\small\texttt{S#1}}} \begin{document} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \section{Integration \brpage{493,507}} \subsection{Tricks \brpage{495}} Linearit\"at \brpage{495} @@ -66,15 +45,15 @@ Linearit\"at \brpage{495} \] Partialbruchzerlegung \brpage{15,498} \[ - \int \frac{f(x)}{P_n(x)} \dd{x} = \sum_{k=1}^n \int \frac{A_k}{x-r_k}\dd{x} + \int \frac{f(x)}{P_n(x)} \di{x} = \sum_{k=1}^n \int \frac{A_k}{x-r_k}\di{x} \] Elementartransformation \brpage{496} \[ - \int f(\lambda x + \ell) \dd{x} = \frac{1}{\lambda} F(\lambda x + \ell) + C + \int f(\lambda x + \ell) \di{x} = \frac{1}{\lambda} F(\lambda x + \ell) + C \] Partielle Integration \brpage{497} \[ - \int u \dd{v} = uv - \int v \dd{u} + \int u \di{v} = uv - \int v \di{u} \] Potenzenregel \brpage{496} \[ @@ -87,7 +66,7 @@ Logaritmusregel \brpage{496} Allgemeine Substutution \brpage{497}\\ \(x = g(u)\), und \(\dd{x} = g'(u)\dd{u}\) \[ - \int f(x) \dd{x} = \int (f\circ g) ~ g' \dd{u} = \int \frac{f \circ g}{(g^{-1})'\circ g} \dd{u} + \int f(x) \di{x} = \int (f\circ g) ~ g' \di{u} = \int \frac{f \circ g}{(g^{-1})'\circ g} \di{u} \] Universalsubstitution \brpage{504} \begin{align*} @@ -96,48 +75,50 @@ Universalsubstitution \brpage{504} \end{align*} Womit \[ - \int f(\sin(x), \cos(x), \tan(x)) \dd{x} = \int g(t) \dd{t} + \int f(\sin(x), \cos(x), \tan(x)) \di{x} = \int g(t) \di{t} \] \subsection{Uneigentliches Integral \brpage{520}} \begin{align*} - \int\limits_a^\infty f \dd{x} &= \lim_{B \to \infty} \int\limits_a^B f \dd{x} \\ - \int\limits_{-\infty}^b f \dd{x} &= \lim_{A \to -\infty} \int\limits_A^b f \dd{x} \\ - \int\limits_{-\infty}^\infty f \dd{x} &= \lim_{\substack{A \to +\infty \\ B \to -\infty}} \int\limits_A^B f \dd{x} + \int\limits_a^\infty f \di{x} &= \lim_{B \to \infty} \int\limits_a^B f \di{x} \\ + \int\limits_{-\infty}^b f \di{x} &= \lim_{A \to -\infty} \int\limits_A^b f \di{x} \\ + \int\limits_{-\infty}^\infty f \di{x} &= \lim_{\substack{A \to +\infty \\ B \to -\infty}} \int\limits_A^B f \di{x} \end{align*} Wenn \(f\) im Punkt \(u \in (a,b)\) nicht definiert ist. \begin{equation} \label{eqn:int-with-pole} - \int\limits_a^b f \dd{x} = - \lim_{\epsilon\to +0} \int\limits_a^{u-\epsilon} f \dd{x} - + \lim_{\delta\to +0} \int\limits_{u+\delta}^b f \dd{x} + \int\limits_a^b f \di{x} = + \lim_{\epsilon\to +0} \int\limits_a^{u-\epsilon} f \di{x} + + \lim_{\delta\to +0} \int\limits_{u+\delta}^b f \di{x} \end{equation} \subsection{Cauchy Hauptwert \brpage{523}} Der C.H. (oder PV f\"ur \emph{Principal Value} auf Englisch) eines uneigentlichen Integrals ist der Wert, wenn in einem Integral wie \eqref{eqn:int-with-pole} beide Grenzwerte mit der gleiche Geschwindigkeit gegen 0 streben. \[ - \text{C.H.} \int\limits_a^b f \dd{x} = - \lim_{\epsilon\to +0} \left( \int\limits_a^{u-\epsilon} f \dd{x} - + \int\limits_{u+\epsilon}^b f \dd{x} \right) + \text{C.H.} \int\limits_a^b f \di{x} = + \lim_{\epsilon\to +0} \left( \int\limits_a^{u-\epsilon} f \di{x} + + \int\limits_{u+\epsilon}^b f \di{x} \right) \] Zum Beispiel \(x^{-1}\) ist nicht \"uber \(\mathbb{R}\) integrierbar, wegen des Poles bei 0. Aber intuitiv wie die Symmetrie vorschlagt \[ - \text{C.H.} \int\limits^\infty_{-\infty} \frac{1}{x} \dd{x} = 0 + \text{C.H.} \int\limits^\infty_{-\infty} \frac{1}{x} \di{x} = 0 \] \subsection{Majorant-, Minorantenprinzip und Konvergenzkriterien \brpage{521,473,479,481}} Gilt f\"ur die Funktionen \(0 < f(x) \leq g(x)\) mit \(x \in [a,\infty)\) \[ - \text{konvergiert } \int\limits_a^\infty g \dd{x} - \implies \text{ konvergiert } \int\limits_a^\infty f \dd{x} + \text{konvergiert } \int\limits_a^\infty g \di{x} + \implies \text{ konvergiert } \int\limits_a^\infty f \di{x} \] Die selbe gilt umgekehrt f\"ur Divergenz. Wenn \(0 < h(x) \leq f(x)\) \[ - \text{divergiert } \int\limits_a^\infty h \dd{x} - \implies \text{ divergiert } \int\limits_a^\infty f \dd{x} + \text{divergiert } \int\limits_a^\infty h \di{x} + \implies \text{ divergiert } \int\limits_a^\infty f \di{x} \] \(g\) und \(h\) hei{\ss}en Majorant und Minorant bzw. +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \section{Implizite Ableitung \brpage{448}} \begin{alignat*}{3} (af)' &= af' &\quad&& (u(v(x)))' &= u'(v)v' \\ @@ -153,6 +134,7 @@ Allgemeiner f\"ur die implizite Funktion \(F(x,y) = 0\) \pderiv{F}{x} + \pderiv{F}{y} y' = 0 \] +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Differentialgeometrie} \subsection{Ebene Kurven \brpage{250}} @@ -191,8 +173,8 @@ Wenn \(\dot{\psi} \neq 0\) ist dann \(x = \phi \circ \psi^{-1}(y)\) \subsubsection{Bogenl\"ange \brpage{251,514}} \label{sec:arc-length} Weitere Formeln (z.B. polar) findet man in Tab. \ref{tab:plane-curves-big}. \[ - \ell = \int\limits_a^b \sqrt{1 + (f')^2} \dd{x} - = \int\limits_{t_0}^{t_1} |\vec{\dot{c}}| \dd{t} + \ell = \int\limits_a^b \sqrt{1 + (f')^2} \di{x} + = \int\limits_{t_0}^{t_1} |\dot{\vec{c}}| \di{t} \] \subsubsection{Umparametrisierung nach Bogenl\"ange} @@ -203,14 +185,14 @@ Sei die Kurve \(\vec{\Lambda}(t), t \in I\) mindestens einmal differenzierbar, u Die neue Parametrisierung hat \(\vec{\Lambda}' = 1\) (nach \(s\) differenziert), d.h. die erste Ableitung ist der tangent Einheitsvector! \subsubsection{Tangente und Normalvektor \brpage{251,252}} -F\"ur eine ebene Kurve \(\vec{\Lambda}(t)\) \(\tau, t \in I\), der Vektor \(\vec{\dot\Lambda}(\tau)\) ist immer an \(\vec{\Lambda}(\tau)\) tangent. \(\vec{\ddot{\Lambda}}(\tau)\) ist zur Kurve normal. +F\"ur eine ebene Kurve \(\vec{\Lambda}(t)\) \(\tau, t \in I\), der Vektor \(\dot{\vec\Lambda}(\tau)\) ist immer an \(\vec{\Lambda}(\tau)\) tangent. \(\ddot{\vec{\Lambda}}(\tau)\) ist zur Kurve normal. \begin{align*} - \vec{\dot{\Lambda}} + \dot{\vec{\Lambda}} &= \deriv{y}{x} = \frac{\dot{y}}{\dot{x}} = \frac{r'\sin\varphi + r\cos\varphi}{r'\cos\varphi - r\sin\varphi} \\[.9em] - \vec{\ddot{\Lambda}} + \ddot{\vec{\Lambda}} &= \deriv[2]{y}{x} = \frac{\ddot{y}\dot{x} - \ddot{x}\dot{y}}{\dot{x}^3} \end{align*} @@ -237,7 +219,7 @@ Der Kr\"ummungskreis hat Ma{\ss}zahl \(\rho = 1/|\kappa|\) und Mittelpunkt \(P_c P_c = \begin{pmatrix} x_c \\ y_c \end{pmatrix} = \begin{pmatrix} x \\ y \end{pmatrix} + \frac{1}{\kappa} \vec{\hat{n}} \] -Wobei \(\vec{\hat{n}} = \vec{\ddot{\Lambda}}^0\) ist der Normalvektor. +Wobei \(\uvec{n} = \vec{\ddot{\Lambda}}^0\) ist der Normalvektor. \subsubsection{Konvexit\"at} Sei die Kurve \(\Lambda\) durch \(f \in C^2\) auf \([a,b]\) gegeben. @@ -315,6 +297,8 @@ Der parameter \(\varepsilon\) \"andert die Gestalt folgendermaßen r = a \sqrt{2\cos(2\varphi)} \] +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \section{Reihen} \subsection{Bemerkenswerte Rehien \brpage{19,477}} \paragraph{Arithmetische Reihe} @@ -415,10 +399,11 @@ Somit folgt: \implies \text{konvergiert } s \] -\subsection{Potenzreihen} \label{sec:powerseries} -\[ - P = \sum_{n=0}^\infty a_n x^n = a_0 + a_1 x + a_2 x^2 + \cdots -\] +\subsection{Potenzreihen \brpage{482}} \label{sec:powerseries} +\begin{align*} + P &= \sum_{n=0}^\infty a_n (x - x_0)^n \\ + &= a_0 + a_1 (x - x_0) + a_2 (x - x_0)^2 + \cdots +\end{align*} Sei \(\lim_{n\to\infty} \sqrt{|a_n|} = a \) (Wurzelkriterium) \begin{align*} a = 0 &\implies \text{ abs. konvergent} \\ @@ -429,8 +414,84 @@ Sei \(\lim_{n\to\infty} \sqrt{|a_n|} = a \) (Wurzelkriterium) |x| > 1/a: \text{ divergent} \end{cases} \end{align*} -\subsubsection{Konvergenzradius/bereich} -Sei \(\langle \sqrt{|a_n|}\rangle\) nicht beschr\"ankt, so ist \(P\) nur f\"ur \(x=0\) konvergent. + +\subsubsection{Konvergenzradius/-bereich \brpage{482}} +Sei \(\langle \sqrt{|a_n|}\rangle\) nicht beschr\"ankt (\(a = \infty\)), so ist \(P\) nur f\"ur \(x=x_0\) konvergent (\(r = 1/\infty = 0^+\)). Sonst existiert der \emph{Konvergenzradius} \(r \in\mathbb{R}^+\): +\begin{align*} + r &= \limsup_{n\to\infty} \left| \frac{a_n}{a_{n+1}} \right| & + r &= \left( \limsup_{n\to\infty} \sqrt[n]{| a_n |} \right)^{-1} +\end{align*} +Innerhalb des \emph{Konvergenzbereiches} \(\{ x : |x - x_0| < r\} = (x_0-r; x_0+r)\) ist die Reihe absolut konvergent, ausserhalb dessen ist sie divergent. +Wenn \(r = \infty\) dann ist die Reihe abs. konvergent. + +\subsubsection{Funktion darstellen} + +\subsubsection{Ableitung und Integration} +Sei \(P\) eine Potenzreihe mit dem Konvergenzradius \(r > 0\), die eine Funktion \(f\) darstellt. Innerhalb des Konvergenzradius gilt: +\begin{align*} + f'(x) &= \left(\sum_{n=0}^\infty a_n x^n \right)' + = \sum_{n=1}^\infty n a_n x^{n-1} \\ + \int f \di{x} &= \int \sum_{n=0}^\infty a_n x^n \di{x} + = \sum_{n=0}^\infty \frac{a_n}{n+1} x^{n+1} + C +\end{align*} +H\"ohere Ableitungen: +\[ + f^{(k)}(x) = \left(\sum_{n=0}^\infty a_n x^n \right)^{(k)} + = \sum_{n=k}^\infty \frac{n!}{(n-k)!} a_n x^{n-k} +\] + +\subsubsection{Taylor Polynom und Reihe \brpage{484}} +Der Taylor-Polynom approximiert eine Funktion um einen Entwicklungspunkt \(a\). +\begin{align*} + T_n(x, a) &= \sum_{k=0}^n\frac{f^{(k)}(a)}{k!}(x-a)^k + R_n\\ + &= f(a) + \frac{f'(a)}{1!}(x-a)^1 + \frac{f''(a)}{2!}(x-a)^2 + \cdots +\end{align*} +Die Restgliede sind +\begin{align*} + R_n = \frac{f^{(n+1)}(\xi)}{(n+1)!} (x-a)^{(n+1)} \qquad (\xi \in (x;a)) +\end{align*} +Wenn \(\lim_{n\to\infty}R_n = 0\) dann \(f(x) = T(x,a)\), d.h. die Taylor Rehie zu \(f\) identisch ist (Konvergenzradius \(r = \infty\)). Sonst berechnet man der \emph{worst case} Fehler \(\epsilon \geq |R_n|\) und der dazugeh\"orig \(\hat{\xi} = \underset{\xi}{\arg}\max|R_n|\): +\begin{align*} + \epsilon + = \max |R_n| + = \max \left[\frac{|f^{(n+1)}(\xi)|}{(n+1)!} |x-a|^{(n+1)}\right] +\end{align*} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\section{Differentialgleichungen} +\subsection{Definition} +Eine Funktion \(y = \varphi(x)\) hei{\ss}t L\"osung der \(n\)-te Ordnung Differentialgleichung +\[ + F(x, y, y', y'', \dots, y^{(n)}) = 0 +\] +auf dem Intervall \(I\), wenn +\begin{itemize} + \item \(\varphi\) auf \(I\) \(n\)-mal differenzierbar ist + \item \(\forall x \in I: F(x, \varphi, \varphi', \varphi'', \dots, \varphi^{(n)}) = 0\) +\end{itemize} + +Gegeben seien auch der \emph{Anfangspunkt} +\(x_0\), und +die \emph{Anfangswerte} oder \emph{Anfangsbedingungen} +\(y_0 = y(x_0)\), +\(y_1 = y'(x_0)\), +\dots, +\(y_{n-1} = y^{(n-1)}(x_0) \in \mathbb{R}\). +Dann hat man ein \emph{Anfangswertproblem}, der eine \emph{spezifische} L\"osung ergibt. + +\subsection{DGL 1. Ordnung} +Sei \(y' = f(x, y)\) + +\paragraph{Separation} Wenn die DGL die Form \(y' = g(y) f(x)\) hat, dann l\"asst sie sich mit der Umformung +\begin{gather*} + \frac{y'}{g(y)} = f(x) \implies \int \frac{\dd{y}}{g(y)} = \int f(x) \di{x} \\ + y = k +\end{gather*} + + +\subsection{DGL 2. Ordnung} + \begin{thebibliography}{3} \bibitem{hsr} @@ -487,31 +548,31 @@ Anstieg \brpage{448} & \dot{x}/\dot{y} \\ Fl\"ache \brpage{493} - & \int\limits_a^b |f(x)| \dd{x} - & \frac{1}{2}\int\limits_\alpha^\beta r(\varphi)^2 \dd{\varphi} - & \frac{1}{2}\int\limits_{t_0}^{t_1} x\dot{y} - \dot{x}y \dd{t} = \frac{1}{2}\int\limits_{t_0}^{t_1}\det(\vec{c},\dot{\vec{c}}) \dd{t} + & \int\limits_a^b |f(x)| \di{x} + & \frac{1}{2}\int\limits_\alpha^\beta r(\varphi)^2 \di{\varphi} + & \frac{1}{2}\int\limits_{t_0}^{t_1} x\dot{y} - \dot{x}y \di{t} = \frac{1}{2}\int\limits_{t_0}^{t_1}\det(\vec{c},\dot{\vec{c}}) \di{t} \\ Bogenl\"ange \brpage{251,514} - & \int\limits_a^b \sqrt{1 + (f')^2} \dd{x} - & \int\limits_\alpha^\beta \sqrt{(r')^2 + r^2} \dd{\varphi} - & \int\limits_{t_0}^{t_1} \sqrt{\dot{x}^2 + \dot{y}^2} \dd{t} = \int\limits_{t_0}^{t_1} |\vec{\dot{c}}| \dd{t} + & \int\limits_a^b \sqrt{1 + (f')^2} \di{x} + & \int\limits_\alpha^\beta \sqrt{(r')^2 + r^2} \di{\varphi} + & \int\limits_{t_0}^{t_1} \sqrt{\dot{x}^2 + \dot{y}^2} \di{t} = \int\limits_{t_0}^{t_1} |\dot{\vec{c}}| \di{t} \\ Kr\"ummung \(\kappa\) \brpage{254} & \frac{f''}{\sqrt{1+(f')^2}^3} & \frac{2(r')^2 - r r'' + r^2}{\sqrt{r^2 + (r')^2}^3} & \frac{\ddot{y}\dot{x} - \ddot{x}\dot{y}}{\sqrt{\dot{x}^2 + \dot{y}^2}^3} - = \frac{\det(\vec{\dot{c}},\vec{\ddot{c}})}{|\vec{\dot{c}}|^3} + = \frac{\det(\dot{\vec{c}},\ddot{\vec{c}})}{|\dot{\vec{c}}|^3} \\[1em] \midrule Rotationsvolumen um \(x\) \brpage{516} - & \pi \left|\int\limits_a^b y^2 \dd{x} \right| - & \pi \left|\int\limits_{t_0}^{t_1} y \dot{x} \dd{t} \right| - & \pi \left|\int\limits_\alpha^\beta r^2 \sin^2 \varphi (r'\cos\varphi - r\sin\varphi) \dd{\varphi} \right| + & \pi \left|\int\limits_a^b y^2 \di{x} \right| + & \pi \left|\int\limits_{t_0}^{t_1} y \dot{x} \di{t} \right| + & \pi \left|\int\limits_\alpha^\beta r^2 \sin^2 \varphi (r'\cos\varphi - r\sin\varphi) \di{\varphi} \right| \\ Rotationsoberfl\"ache um \(x\) \brpage{515} - & 2\pi \int\limits_a^b |y| \sqrt{1 + (y')^2} \dd{x} - & 2\pi \int\limits_\alpha^\beta |r\sin(\varphi)| \sqrt{(r')^2 + r^2} \dd{\varphi} - & 2\pi \int\limits_{t_0}^{t_1} |y| \sqrt{\dot{x}^2 + \dot{y}^2} \dd{t} + & 2\pi \int\limits_a^b |y| \sqrt{1 + (y')^2} \di{x} + & 2\pi \int\limits_\alpha^\beta |r\sin(\varphi)| \sqrt{(r')^2 + r^2} \di{\varphi} + & 2\pi \int\limits_{t_0}^{t_1} |y| \sqrt{\dot{x}^2 + \dot{y}^2} \di{t} \\ % Rotationsvolumen um \(y\) \\ % Rotationsoberfl\"ache um \(y\) \\ diff --git a/hsrstud.sty b/hsrstud.sty new file mode 100644 index 0000000..a95150e --- /dev/null +++ b/hsrstud.sty @@ -0,0 +1,395 @@ +%% +%% This is file `hsrstud.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% hsrstud.dtx (with options: `package') +%% This document is part of the HSRStud LaTeX Package +%% +%% THE FOLLOWING WORK IS UNDER THE CC BY-SA 4.0 LICENSE +%% +%% You are free to +%% --------------- +%% * Share -- Copy and redistribute the material in any medium or format +%% * Adapt -- Remix, transform, and build upon the material for any +%% purpose, even commercially +%% +%% The licensor cannot revoke these freedoms as long as you follow the +%% license terms. +%% +%% Under the following terms +%% ------------------------- +%% * Attribution +%% You must give appropriate credit, provide a link to the license, and +%% indicate if changes were made. You may do so in any reasonable +%% manner, but not in any way that suggests the licensor endorses you +%% or your use. +%% +%% * ShareAlike +%% If you remix, transform, or build upon the material you must +%% distribute your contributions under the same license as the +%% original. +%% +%% * No additional restrictions +%% You may not apply legal terms or technological measures that +%% legally restrict others from doing anything the license permits. +%% +%% Notice +%% ------ +%% You do not have to comply with the license for elements of the material +%% in the public domain or where your use is permitted by an applicable +%% exception or limitation. +%% +%% No warranties are given. The license may not give you all of the +%% permissions necessary for your intended use. For example, other rights +%% such as publicity, privacy, or moral rights may limit how you use the +%% material. +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{hsrstud}[2020/04/16 v0.1 HSR-Stud Macros] + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + +%% Dependencies (( +\RequirePackage{amsmath} +\RequirePackage{amssymb} +\RequirePackage{bm} + +\RequirePackage{esint} +\PassOptionsToPackage{b}{esvect} +\RequirePackage{esvect} + +\RequirePackage{xcolor} +\RequirePackage{hyperref} +\RequirePackage{listings} + +\RequirePackage{iftex} +\RequirePackage{kvoptions} +%% )) + +\SetupKeyvalOptions{ + family=hsr, + prefix=hsr@ +} + +%% Enable backwards-compatibility +\DeclareBoolOption[false]{legacy} + +%% Do not renew LaTeX Macros +\DeclareBoolOption[false]{dontrenew} + +%% Vector style +\DeclareBoolOption[false]{arrowvec} +\DeclareComplementaryOption{boldvec}{arrowvec} + +%% Vector derivative style +\DeclareBoolOption[false]{textvecdiff} +\DeclareComplementaryOption{delvecdiff}{textvecdiff} + +%% Process options +\ProcessLocalKeyvalOptions* + +%% TODO: change letters in german +\newcommand{\bookref}[1]{\texttt{\textcolor{hsr-mauve}{P.#1}}} +\newcommand{\notesref}[1]{\texttt{\textcolor{hsr-blue}{S.#1}}} +\newcommand{\lectureref}[1]{\texttt{\textcolor{hsr-lakegreen}{L.#1}}} + +%% Theming for hyperref and listings (( +\hypersetup{ + colorlinks=true, + linkcolor=hsr-black, + citecolor=hsr-mauve, + filecolor=hsr-black, + urlcolor=hsr-blue, +} + +%% Common listings settings +\lstdefinestyle{hsr-base}{ + belowcaptionskip=\baselineskip, + breaklines=true, + frame=none, + inputencoding=utf8, + % margin + xleftmargin=\parindent, + % numbers + numbers=left, + numbersep=5pt, + numberstyle=\ttfamily\footnotesize\color{hsr-black40}, + % background + backgroundcolor=\color{white}, + showstringspaces=false, + % default language + language=[LaTeX]TeX, + % font + basicstyle=\ttfamily\small, + identifierstyle=\color{hsr-black}, + keywordstyle=\color{hsr-blue}, + commentstyle=\color{hsr-black40}, + stringstyle=\color{hsr-mauve80}, +} + +%% Define missing languages / aliases +\lstdefinelanguage{LaTeX}{ + language=[LaTeX]Tex +} + +%% Set style +\lstset{style=hsr-base, escapechar=`} +%%)) + +%% Vector (( +\newcommand{\hsrvecbold}[1]{\mathbf{\boldsymbol{#1}}} +\newcommand{\hsrvecarrow}[1]{\vv{\mathrm{#1}}} % from esvect + +\newcommand{\@hsrvecf}[1]{\hsrvecbold{#1}} +\ifhsr@arrowvec + \renewcommand{\@hsrvecf}[1]{\hsrvecarrow{#1}} +\fi + +\ifhsr@dontrenew + \newcommand{\vc}{\@hsrvecf} +\else + % save previous command + \newcommand{\vaccent}{\v} + \newcommand{\oldvec}{\vec} + % redefine + \renewcommand{\v}[1]{\@hsrvecf{#1}} + \renewcommand{\vec}[1]{\@hsrvecf{#1}} +\fi +%%)) + +%% Unit vector (( +\newcommand{\hsruvecbold}[1]{\vec{\hat{#1}}} +\newcommand{\hsruvecarrow}[1]{\hat{\mathrm{#1}}} +\newcommand{\@hsruvecf}[1]{\hsruvecbold{#1}} +\ifhsr@arrowvec + \renewcommand{\@hsruvecf}[1]{\hsruvecarrow{#1}} +\fi + +\newcommand{\uv}[1]{\@hsruvecf{#1}} +\newcommand{\uvec}[1]{\@hsruvecf{#1}} +%%)) + +%% Products (( +\newcommand{\dotp}{\boldsymbol\cdot} +\newcommand{\crossp}{\boldsymbol\times} +\newcommand{\cross}{\crossp} +%%)) + +\newcommand{\mtx}[1]{\mathrm{#1}} +\newcommand{\ten}[1]{\underline{\mathbf{\boldsymbol{#1}}}} + +\newcommand{\heq}{\stackrel{\hat{\texttt{H}}}{=}} + +\newcommand{\dd}[2][]{\mathrm{d}^{#1} #2} +\newcommand{\di}[2][]{\,\dd[#1]{#2}} + +\newcommand{\deriv}[3][]{\frac{\dd[#1]{#2}}{\dd[]{#3^{#1}}}} +\newcommand{\pderiv}[3][]{\frac{\partial^{#1} #2}{\partial #3^{#1}}} + +%% Gradient (( +\ifhsr@textvecdiff + \newcommand{\grad}{\text{grad }} +\else + \newcommand{\grad}{\nabla}% +\fi +%% )) + +%% Divergence (( +\ifhsr@textvecdiff + \newcommand{\@hsrdivf}{\text{div }} +\else + \newcommand{\@hsrdivf}{\nabla\cdot} +\fi +\ifhsr@dontrenew + \newcommand{\divg}{\@hsrdivf} +\else + \let\divsymb=\div + \renewcommand{\div}{\@hsrdivf} +\fi +%% )) + +%% Curl (( +\ifhsr@textvecdiff + \newcommand{\curl}{\text{curl }} +\else + \newcommand{\curl}{\nabla\times} +\fi +%% )) + +%% laplacian (( +\ifhsr@textvecdiff + \newcommand{\laplace}{\text{div grad }} +\else + \newcommand{\laplace}{\nabla^2} +\fi +%% )) + +\definecolor{hsr-blue}{HTML}{0065A3} +\definecolor{hsr-blue80}{HTML}{3384B5} +\definecolor{hsr-blue60}{HTML}{66A3C8} +\definecolor{hsr-blue40}{HTML}{99C1DA} +\definecolor{hsr-blue20}{HTML}{CCE0ED} + +\definecolor{hsr-mauve}{HTML}{6E1C50} +\definecolor{hsr-mauve80}{HTML}{8B4973} +\definecolor{hsr-mauve60}{HTML}{A87796} +\definecolor{hsr-mauve40}{HTML}{C5A4B9} +\definecolor{hsr-mauve20}{HTML}{E2D2DC} + +\definecolor{hsr-lakegreen}{HTML}{548C86} +\definecolor{hsr-lakegreen80}{HTML}{76A39E} +\definecolor{hsr-lakegreen60}{HTML}{98BAB6} +\definecolor{hsr-lakegreen40}{HTML}{BBD1CF} +\definecolor{hsr-lakegreen20}{HTML}{DDE8E7} + +\definecolor{hsr-reed}{HTML}{7B6951} +\definecolor{hsr-reed80}{HTML}{958774} +\definecolor{hsr-reed60}{HTML}{B0A597} +\definecolor{hsr-reed40}{HTML}{CAC3B9} +\definecolor{hsr-reed20}{HTML}{E5E1DC} + +\definecolor{hsr-petrol}{HTML}{00738D} +\definecolor{hsr-petrol80}{HTML}{338FA4} +\definecolor{hsr-petrol60}{HTML}{66ABBB} +\definecolor{hsr-petrol40}{HTML}{99C7D1} +\definecolor{hsr-petrol20}{HTML}{CCE3E8} + +\definecolor{hsr-basswood}{HTML}{BABD5D} +\definecolor{hsr-basswood80}{HTML}{C8CA7D} +\definecolor{hsr-basswood60}{HTML}{D6D79E} +\definecolor{hsr-basswood40}{HTML}{E3E5BE} +\definecolor{hsr-basswood20}{HTML}{F1F2DF} + +\definecolor{hsr-lightgrey}{HTML}{C6C7C8} +\definecolor{hsr-lightgrey80}{HTML}{D1D2D3} +\definecolor{hsr-lightgrey60}{HTML}{DDDDDE} +\definecolor{hsr-lightgrey40}{HTML}{E8E8E9} +\definecolor{hsr-lightgrey20}{HTML}{F4F4F4} + +\definecolor{hsr-black}{HTML}{1A171B} +\definecolor{hsr-black80}{HTML}{484549} +\definecolor{hsr-black60}{HTML}{767476} +\definecolor{hsr-black40}{HTML}{A4A2A4} +\definecolor{hsr-black20}{HTML}{D1D1D1} + +\ifhsr@legacy +%% Makros für Titel, Autor und Datum (( +%% Dank diesem Makro stehen Titel, Autor und Datum überall im Dokument zur verfügung +%% Date hat zudem den Default-Wert \today +\def\@Title{} +\def\@Author{} +\def\@Date{\today} +\newcommand{\Title}{\@Title} +\newcommand{\Author}{\@Author} +\newcommand{\Date}{\@Date} +\AtBeginDocument{% + \let\@Title\@title + \let\@Author\@author + \let\@Date\@date +} +%% )) + +%% Makros für den Arraystretch (( +%% bei uns meist in Tabellen genutzt, welche Formeln enthalten + +%% Default Value +\def\@ArrayStretchDefault{1} % Entspricht der Voreinstellung von Latex + +%% Setzt einen neuen Wert für den arraystretch +\newcommand{\setArrayStretch}[1]{\renewcommand{\arraystretch}{#1}} + +%% Setzt den arraystretch zurück auf den default wert +\newcommand{\resetArrayStretch}{\renewcommand{\arraystretch}{\@ArrayStretchDefault}} + +%% Makro zum setzten des Default arraystretch. +%% Kann nur in der Präambel verwendet werden. +\newcommand{\setDefaultArrayStretch}[1]{% +\AtBeginDocument{% +\def\@ArrayStretchDefault{#1} +\renewcommand{\arraystretch}{#1} +} +} +%% )) + +%% Command for images in table +\newcommand\tabImg[2][]{% + \raisebox{0pt}[\dimexpr\totalheight+\dp\strutbox\relax][\dp\strutbox]{% + \includegraphics[#1]{#2}% + }% +} + +%% Makros für Verweise auf ein Buch oder Skript (( +\newcommand{\buch}[1]{\texorpdfstring{$_{\textcolor{HSRLakeGreen}{\mbox{\small{#1}}}}$}{}} +\newcommand{\buchSeite}[1]{\texorpdfstring{\ensuremath{_{\textcolor{red}{\mbox{\small{ S#1}}}}}}{}} +\newcommand{\skript}[1]{\texorpdfstring{$_{\textcolor{HSRReed}{\mbox{\small{#1}}}}$}{}} +\newcommand{\formelbuch}[1]{$_{\textcolor{red}{\mbox{\small{S#1}}}}$} +%% )) + +\setlength{\parindent}{0pt} + +%% Todo command +\newcommand{\todo}[1]{\textbf{\color{red}{TO DO: #1}}} + +%% Color names (( +\colorlet{HSRWhite}{white} + +\colorlet{HSRBlue}{hsr-blue} +\colorlet{HSRBlue80}{hsr-blue80} +\colorlet{HSRBlue60}{hsr-blue60} +\colorlet{HSRBlue40}{hsr-blue40} +\colorlet{HSRBlue20}{hsr-blue20} + +\colorlet{HSRLightGray}{hsr-lightgrey} +\colorlet{HSRLightGray80}{hsr-lightgrey80} +\colorlet{HSRLightGray60}{hsr-lightgrey60} +\colorlet{HSRLightGray40}{hsr-lightgrey40} +\colorlet{HSRLightGray20}{hsr-lightgrey20} + +\colorlet{HSRSchwarz}{hsr-black} +\colorlet{HSRSchwarz80}{hsr-black80} +\colorlet{HSRSchwarz60}{hsr-black60} +\colorlet{HSRSchwarz40}{hsr-black40} +\colorlet{HSRSchwarz20}{hsr-black20} + +\colorlet{HSRHematite}{hsr-mauve} +\colorlet{HSRHematite80}{hsr-mauve80} +\colorlet{HSRHematite60}{hsr-mauve60} +\colorlet{HSRHematite40}{hsr-mauve40} +\colorlet{HSRHematite20}{hsr-mauve20} + +\colorlet{HSRLakeGreen}{hsr-lakegreen} +\colorlet{HSRLakeGreen80}{hsr-lakegreen80} +\colorlet{HSRLakeGreen60}{hsr-lakegreen60} +\colorlet{HSRLakeGreen40}{hsr-lakegreen40} +\colorlet{HSRLakeGreen20}{hsr-lakegreen20} + +\colorlet{HSRReed}{hsr-reed} +\colorlet{HSRReed80}{hsr-reed80} +\colorlet{HSRReed60}{hsr-reed60} +\colorlet{HSRReed40}{hsr-reed40} +\colorlet{HSRReed20}{hsr-reed20} + +\colorlet{HSRPetrol}{hsr-petrol} +\colorlet{HSRPetrol80}{hsr-petrol80} +\colorlet{HSRPetrol60}{hsr-petrol60} +\colorlet{HSRPetrol40}{hsr-petrol40} +\colorlet{HSRPetrol20}{hsr-petrol20} + +\colorlet{HSRBasswood}{hsr-basswood} +\colorlet{HSRBasswood80}{hsr-basswood80} +\colorlet{HSRBasswood60}{hsr-basswood60} +\colorlet{HSRBasswood40}{hsr-basswood40} +\colorlet{HSRBasswood20}{hsr-basswood20} +%% )) + +\fi %% ifhsr@legacy + +\endinput +%% +%% End of file `hsrstud.sty'. diff --git a/hsrzf.cls b/hsrzf.cls new file mode 100644 index 0000000..ad9417f --- /dev/null +++ b/hsrzf.cls @@ -0,0 +1,236 @@ +%% +%% This is file `hsrzf.cls', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% hsrstud-classes.dtx (with options: `hsrzf') +%% This document is part of the HSRStud LaTeX Package +%% +%% THE FOLLOWING WORK IS UNDER THE CC BY-SA 4.0 LICENSE +%% +%% You are free to +%% --------------- +%% * Share -- Copy and redistribute the material in any medium or format +%% * Adapt -- Remix, transform, and build upon the material for any +%% purpose, even commercially +%% +%% The licensor cannot revoke these freedoms as long as you follow the +%% license terms. +%% +%% Under the following terms +%% ------------------------- +%% * Attribution +%% You must give appropriate credit, provide a link to the license, and +%% indicate if changes were made. You may do so in any reasonable +%% manner, but not in any way that suggests the licensor endorses you +%% or your use. +%% +%% * ShareAlike +%% If you remix, transform, or build upon the material you must +%% distribute your contributions under the same license as the +%% original. +%% +%% * No additional restrictions +%% You may not apply legal terms or technological measures that +%% legally restrict others from doing anything the license permits. +%% +%% Notice +%% ------ +%% You do not have to comply with the license for elements of the material +%% in the public domain or where your use is permitted by an applicable +%% exception or limitation. +%% +%% No warranties are given. The license may not give you all of the +%% permissions necessary for your intended use. For example, other rights +%% such as publicity, privacy, or moral rights may limit how you use the +%% material. + + +\NeedsTeXFormat{LaTeX2e} +\ProvidesClass{hsrzf}[2020/04/05 v0.1 HSRStud Summary class] + + + +%% Coding Packages (Dependencies) +\RequirePackage{iftex} +\RequirePackage{kvoptions} +\RequirePackage{etoolbox} + +%% Class options +\SetupKeyvalOptions{ + family=hsrzf, + prefix=hsrzf@ +} + +%% Use header and footer +\DeclareBoolOption[false]{header} +\DeclareComplementaryOption{noheader}{header} + +%% Use a sans-serif font +\DeclareBoolOption[false]{sans} +\DeclareBoolOption[false]{concrete} + +%% Configures the geometry package +%% +%% Possible values: +%% - huge (45mm, 40mm) +%% - large (35mm, 35mm) +%% - big (30mm, 30mm) +%% - normal (25mm, 30mm) +%% - small (20mm, 20mm) +%% - tiny (10mm, 20mm) +%% - minimal ( 5mm, 20mm) +\DeclareStringOption{margin}[huge] + +%% Configures the polyglossia package + +%% Pass other options to the class +\DeclareDefaultOption{% + \ifx\CurrentOptionValue\relax + \PackageWarningNoLine{\@currname}{% + Unknown option ``\CurrentOption''\MessageBreak + is passed to class ``article''% + }% + % Pass the option to package color. + % Again it is better to expand \CurrentOption. + \expandafter\PassOptionsToClass + \expandafter{\CurrentOption}{article} + \else + % Package color does not take options with values. + % We provide the standard LaTeX error. + \@unknownoptionerror + \fi +} + +\ProcessKeyvalOptions{hsrzf} + +%% Create new metadata fields + +%% Required fields +\newcommand\course[1]{\gdef\hsr@course{#1}} +\newcommand\hsr@course{\ClassError{hsrzf}{no \noexpand\course given}{}} +\newcommand\thecourse{\hsr@course} + +\newcommand\module[1]{\gdef\hsr@module{#1}} +\newcommand\hsr@module{\ClassError{hsrzf}{no \noexpand\module given}{}} +\newcommand\themodule{\hsr@module} + +\newcommand\semester[1]{\gdef\hsr@semester{#1}} +\newcommand\hsr@semester{\ClassError{hsrzf}{no \noexpand\semester given}{}} +\newcommand\thesemester{\hsr@semester} + +%% Optional fields +\newcommand\institute[1]{\gdef\hsr@institute{#1}} +\newcommand\hsr@institute{\ClassWarning{hsrzf}{no \noexpand\institute given}{}} +\newcommand\theinstitute{\hsr@institute} + +\newcommand\authoremail[1]{\gdef\hsr@authoremail{#1}} +\newcommand\hsr@authoremail{\ClassWarning{hsrzf}{no \noexpand\authoremail given}{}} +\newcommand\theauthoremail{\hsr@authoremail} + +\newcommand\maintainer[1]{\gdef\hsr@maintainer{#1}} +\newcommand\hsr@maintainer{\ClassWarning{hsrzf}{no \noexpand\maintainer given}{}} +\newcommand\themaintainer{\hsr@maintainer} + +\newcommand\contributors[1]{\gdef\hsr@contributors{#1}} +\newcommand\hsr@contributors{\ClassWarning{hsrzf}{no \noexpand\contributors given}{}} +\newcommand\thecontributors{\hsr@contributors} + +\LoadClass[a4paper]{article} + +%% Style deps +\RequirePackage{geometry} +\RequirePackage{fancyhdr} +\RequirePackage{titling} +\RequirePackage{lastpage} +\RequirePackage{array} + +%% Insert metadata in the pdf +\PassOptionsToPackage{plainpages=false, pdfpagelabels, pdfusetitle}{hyperref} +\RequirePackage{hyperref} + + +%% Configure Sans-Serif font +\ifhsrzf@sans +\renewcommand{\familydefault}{\sfdefault} +\fi + +%% Configure concrete font +\ifhsrzf@concrete +\PassOptionsToPackage{T1}{fontenc} +\RequirePackage{fontenc} +\PassOptionsToPackage{boldsans,amssymb}{concmath} +\RequirePackage{concmath} +\fi + +%% configure geometry +%% defaults to big +\newlength{\hsr@hmarginwidth} +\newlength{\hsr@vmarginheight} + +\ifx\hsrzf@margin\@empty + \setlength\hsr@hmarginwidth{30mm} + \setlength\hsr@vmarginheight{30mm} +\else + \expandafter\ifstrequal\expandafter{\hsrzf@margin}{huge}{ + \setlength\hsr@hmarginwidth{45mm} + \setlength\hsr@vmarginheight{40mm}}{} + \expandafter\ifstrequal\expandafter{\hsrzf@margin}{large}{ + \setlength\hsr@hmarginwidth{35mm} + \setlength\hsr@vmarginheight{35mm}}{} + \expandafter\ifstrequal\expandafter{\hsrzf@margin}{big}{ + \setlength\hsr@hmarginwidth{30mm} + \setlength\hsr@vmarginheight{30mm}}{} + \expandafter\ifstrequal\expandafter{\hsrzf@margin}{normal}{ + \setlength\hsr@hmarginwidth{25mm} + \setlength\hsr@vmarginheight{30mm}}{} + \expandafter\ifstrequal\expandafter{\hsrzf@margin}{small}{ + \setlength\hsr@hmarginwidth{20mm} + \setlength\hsr@vmarginheight{20mm}}{} + \expandafter\ifstrequal\expandafter{\hsrzf@margin}{tiny}{ + \setlength\hsr@hmarginwidth{10mm} + \setlength\hsr@vmarginheight{20mm}}{} + \expandafter\ifstrequal\expandafter{\hsrzf@margin}{minimal}{ + \setlength\hsr@hmarginwidth{ 5mm} + \setlength\hsr@vmarginheight{20mm}}{} +\fi + + +%% TODO: change vmarginheight if header is on +\newgeometry{ + hmargin=\hsr@hmarginwidth, + vmargin=\hsr@vmarginheight, + marginparsep=0pt, + marginpar=0pt, +} + +\fancypagestyle{hsrzf}{% + \fancyhf{} % clear + \fancyhead[C]{\thetitle} + \fancyhead[R]{\rightmark} + \fancyhead[L]{\leftmark} + \fancyfoot[R]{\@date} + \fancyfoot[L]{\theauthor} + \renewcommand{\headrulewidth}{.5pt} + \renewcommand{\footrulewidth}{.5pt} +} + +\fancypagestyle{hsrzf-norulers}{% + \fancyhf{} % clear + \fancyhead[C]{\thetitle} + \fancyhead[R]{\rightmark} + \fancyhead[L]{\leftmark} + \fancyfoot[R]{\@date} + \fancyfoot[L]{\theauthor} + \renewcommand{\headrulewidth}{0pt} + \renewcommand{\footrulewidth}{0pt} +} + +\ifhsrzf@header +\pagestyle{hsrzf} +\fi + +\endinput +%% +%% End of file `hsrzf.cls'. |