From 8b5a486a6a2cd7b5c9b07053fe9857e399e65f63 Mon Sep 17 00:00:00 2001 From: Joshua Baer Date: Wed, 6 Apr 2022 20:32:40 +0200 Subject: FIrst Commit Name added --- buch/papers/fm/main.tex | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/buch/papers/fm/main.tex b/buch/papers/fm/main.tex index 1e75235..de3e10a 100644 --- a/buch/papers/fm/main.tex +++ b/buch/papers/fm/main.tex @@ -3,10 +3,13 @@ % % (c) 2020 Hochschule Rapperswil % +% !TeX root = /.../...buch.tex +%\begin {document} \chapter{Thema\label{chapter:fm}} \lhead{Thema} \begin{refsection} -\chapterauthor{Hans Muster} + +\chapterauthor{Joshua Bär} Ein paar Hinweise für die korrekte Formatierung des Textes \begin{itemize} @@ -34,3 +37,5 @@ Bilden Sie auch für Formeln kurze Zeilen, einerseits der besseren \printbibliography[heading=subbibliography] \end{refsection} + +%\end {document} -- cgit v1.2.1 From a28b0e8a16564e78aaecc299526fa8bb96964e0e Mon Sep 17 00:00:00 2001 From: runterer Date: Sat, 14 May 2022 18:21:13 +0200 Subject: corrections to zeta_gamma --- buch/papers/zeta/zeta_gamma.tex | 53 ++++++++++++++++++++++++----------------- 1 file changed, 31 insertions(+), 22 deletions(-) diff --git a/buch/papers/zeta/zeta_gamma.tex b/buch/papers/zeta/zeta_gamma.tex index 59c8744..bed4262 100644 --- a/buch/papers/zeta/zeta_gamma.tex +++ b/buch/papers/zeta/zeta_gamma.tex @@ -1,38 +1,47 @@ -\section{Zusammenhang mit Gammafunktion} \label{zeta:section:zusammenhang_mit_gammafunktion} -\rhead{Zusammenhang mit Gammafunktion} +\section{Zusammenhang mit der Gammafunktion} \label{zeta:section:zusammenhang_mit_gammafunktion} +\rhead{Zusammenhang mit der Gammafunktion} -Dieser Abschnitt stellt die Verbindung zwischen der Gamma- und der Zetafunktion her. +In diesem Abschnitt wird gezeigt, wie sich die Zetafunktion durch die Gammafunktion $\Gamma(s)$ ausdrücken lässt. +Dieser Zusammenhang der Art $\zeta(s) = f(\Gamma(s))$ wird später für die Herleitung der analytischen Fortsetzung gebraucht. %TODO ref Gamma -Wenn in der Gammafunkion die Integrationsvariable $t$ substituieren mit $t = nu$ und $dt = n du$, dann können wir die Gleichung umstellen und erhalten den Zusammenhang mit der Zetafunktion -\begin{align} +Wir erinnern uns an die Definition der Gammafunktion in \ref{buch:rekursion:gamma:integralbeweis} +\begin{equation*} + \Gamma(s) + = + \int_0^{\infty} t^{s-1} e^{-t} \,dt, +\end{equation*} +wobei die Notation an die Zetafunktion angepasst ist. +Durch die Substitution von $t$ mit $t = nu$ und $dt = n\,du$ wird daraus +\begin{align*} \Gamma(s) &= - \int_0^{\infty} t^{s-1} e^{-t} dt - \\ + \int_0^{\infty} n^{s-1}u^{s-1} e^{-nu} n \,du \\ &= - \int_0^{\infty} n^{s\cancel{-1}}u^{s-1} e^{-nu} \cancel{n}du - && - \text{Division durch }n^s - \\ + \int_0^{\infty} n^s u^{s-1} e^{-nu} \,du. +\end{align*} +Durch Division mit durch $n^s$ ergibt sich die Quotienten +\begin{equation*} \frac{\Gamma(s)}{n^s} - &= - \int_0^{\infty} u^{s-1} e^{-nu}du - && - \text{Zeta durch Summenbildung } \sum_{n=1}^{\infty} - \\ + = + \int_0^{\infty} u^{s-1} e^{-nu} \,du, +\end{equation*} +welche sich zur Zetafunktion summieren +\begin{equation} + \sum_{n=1}^{\infty} \frac{\Gamma(s)}{n^s} + = \Gamma(s) \zeta(s) - &= + = \int_0^{\infty} u^{s-1} \sum_{n=1}^{\infty}e^{-nu} - du. + \,du. \label{zeta:equation:zeta_gamma1} -\end{align} +\end{equation} Die Summe über $e^{-nu}$ können wir als geometrische Reihe schreiben und erhalten \begin{align} - \sum_{n=1}^{\infty}e^{-u^n} + \sum_{n=1}^{\infty}\left(e^{-u}\right)^n &= - \sum_{n=0}^{\infty}e^{-u^n} + \sum_{n=0}^{\infty}\left(e^{-u}\right)^n - 1 \\ @@ -42,7 +51,7 @@ Die Summe über $e^{-nu}$ können wir als geometrische Reihe schreiben und erhal &= \frac{1}{e^u - 1}. \end{align} -Wenn wir dieses Resultat einsetzen in \eqref{zeta:equation:zeta_gamma1} und durch $\Gamma(s)$ teilen, erhalten wir +Wenn wir dieses Resultat einsetzen in \eqref{zeta:equation:zeta_gamma1} und durch $\Gamma(s)$ teilen, erhalten wir %TODO formulieren als Satz \begin{equation}\label{zeta:equation:zeta_gamma_final} \zeta(s) = -- cgit v1.2.1 From 8f643765aa134d48da27f161890f07038d2223f3 Mon Sep 17 00:00:00 2001 From: runterer Date: Sat, 14 May 2022 22:17:18 +0200 Subject: Alle einfachen Korrekturen umgesetzt --- buch/papers/zeta/analytic_continuation.tex | 108 ++++++++++++++++++----------- buch/papers/zeta/zeta_gamma.tex | 2 +- 2 files changed, 68 insertions(+), 42 deletions(-) diff --git a/buch/papers/zeta/analytic_continuation.tex b/buch/papers/zeta/analytic_continuation.tex index bb95b92..5e09e42 100644 --- a/buch/papers/zeta/analytic_continuation.tex +++ b/buch/papers/zeta/analytic_continuation.tex @@ -14,8 +14,8 @@ Zuerst definieren die Dirichletsche Etafunktion als wobei die Reihe bis auf die alternierenden Vorzeichen die selbe wie in der Zetafunktion ist. Diese Etafunktion konvergiert gemäss dem Leibnitz-Kriterium im Bereich $\Re(s) > 0$, da dann die einzelnen Glieder monoton fallend sind. -Wenn wir es nun schaffen, die sehr ähnliche Zetafunktion mit der Etafunktion auszudrücken, dann haben die gesuchte Fortsetzung. -Die folgenden Schritte zeigen, wie man dazu kommt: +Wenn wir es nun schaffen, die sehr ähnliche Zetafunktion durch die Etafunktion auszudrücken, dann haben die gesuchte Fortsetzung. +Zuerst wiederholen wir zweimal die Definition der Zetafunktion \eqref{zeta:equation1}, wobei wir sie einmal durch $2^{s-1}$ teilen \begin{align} \zeta(s) &= @@ -26,8 +26,10 @@ Die folgenden Schritte zeigen, wie man dazu kommt: \zeta(s) &= \sum_{n=1}^{\infty} - \frac{2}{(2n)^s} \label{zeta:align2} - \\ + \frac{2}{(2n)^s}. \label{zeta:align2} +\end{align} +Durch Subtraktion der beiden Gleichungen \eqref{zeta:align1} minus \eqref{zeta:align2}, ergibt sich +\begin{align} \left(1 - \frac{1}{2^{s-1}} \right) \zeta(s) &= @@ -36,14 +38,15 @@ Die folgenden Schritte zeigen, wie man dazu kommt: + \frac{1}{3^s} \underbrace{-\frac{2}{4^s} + \frac{1}{4^s}}_{-\frac{1}{4^s}} \ldots - && \text{\eqref{zeta:align1}} - \text{\eqref{zeta:align2}} - \\ - &= \eta(s) \\ + &= \eta(s). +\end{align} +Dies ist die Fortsetzung auf den noch unbekannten Bereich $0 < \Re(s) < 1$ +\begin{equation} \zeta(s) - &= + := \left(1 - \frac{1}{2^{s-1}} \right)^{-1} \eta(s). -\end{align} +\end{equation} \subsection{Fortsetzung auf ganz $\mathbb{C}$} \label{zeta:subsection:auf_ganz} Für die Fortsetzung auf den Rest von $\mathbb{C}$, verwenden wir den Zusammenhang von Gamma- und Zetafunktion aus \ref{zeta:section:zusammenhang_mit_gammafunktion}. @@ -61,7 +64,7 @@ Nun substituieren wir $t$ mit $t = \pi n^2 x$ und $dt=\pi n^2 dx$ und erhalten (\pi n^2)^{\frac{s}{2}} x^{\frac{s}{2}-1} e^{-\pi n^2 x} - dx + \,dx && \text{Division durch } (\pi n^2)^{\frac{s}{2}} \\ \frac{\Gamma \left( \frac{s}{2} \right)}{\pi^{\frac{s}{2}} n^s} @@ -69,7 +72,7 @@ Nun substituieren wir $t$ mit $t = \pi n^2 x$ und $dt=\pi n^2 dx$ und erhalten \int_0^{\infty} x^{\frac{s}{2}-1} e^{-\pi n^2 x} - dx + \,dx && \text{Zeta durch Summenbildung } \sum_{n=1}^{\infty} \\ \frac{\Gamma \left( \frac{s}{2} \right)}{\pi^{\frac{s}{2}}} @@ -79,7 +82,7 @@ Nun substituieren wir $t$ mit $t = \pi n^2 x$ und $dt=\pi n^2 dx$ und erhalten x^{\frac{s}{2}-1} \sum_{n=1}^{\infty} e^{-\pi n^2 x} - dx. \label{zeta:equation:integral1} + \,dx. \label{zeta:equation:integral1} \end{align} Die Summe kürzen wir ab als $\psi(x) = \sum_{n=1}^{\infty} e^{-\pi n^2 x}$. %TODO Wieso folgendes -> aus Fourier Signal @@ -97,82 +100,103 @@ Zunächst teilen wir nun das Integral aus \eqref{zeta:equation:integral1} auf al \int_0^{\infty} x^{\frac{s}{2}-1} \psi(x) - dx + \,dx = + \underbrace{ \int_0^{1} x^{\frac{s}{2}-1} \psi(x) - dx + \,dx + }_{I_1} + + \underbrace{ \int_1^{\infty} x^{\frac{s}{2}-1} \psi(x) - dx, + \,dx + }_{I_2} + = + I_1 + I_2, \end{equation} -wobei wir uns nun auf den ersten Teil konzentrieren werden. -Dabei setzen wir das Wissen aus \eqref{zeta:equation:psi} ein und erhalten +wobei wir uns nun auf den ersten Teil $I_1$ konzentrieren werden. +Dabei setzen wir die Definition von $\psi(x)$ aus \eqref{zeta:equation:psi} ein und erhalten \begin{align} + I_1 + = \int_0^{1} x^{\frac{s}{2}-1} \psi(x) - dx + \,dx &= \int_0^{1} x^{\frac{s}{2}-1} \left( - \frac{1}{2} + \frac{\psi\left(\frac{1}{x} \right)}{\sqrt{x}} - + \frac{1}{2 \sqrt{x}}. + + \frac{1}{2 \sqrt{x}} \right) - dx + \,dx \\ &= \int_0^{1} x^{\frac{s}{2}-\frac{3}{2}} \psi \left( \frac{1}{x} \right) + \frac{1}{2} - \left( + \biggl( x^{\frac{s}{2}-\frac{3}{2}} - x^{\frac{s}{2}-1} - \right) - dx + \biggl) + \,dx \\ &= + \underbrace{ \int_0^{1} x^{\frac{s}{2}-\frac{3}{2}} \psi \left( \frac{1}{x} \right) - dx - + \frac{1}{2} + \,dx + }_{I_3} + + + \underbrace{ + \frac{1}{2} \int_0^1 x^{\frac{s}{2}-\frac{3}{2}} - x^{\frac{s}{2}-1} - dx. \label{zeta:equation:integral3} + \,dx + }_{I_4}. \label{zeta:equation:integral3} \end{align} -Dabei kann das zweite Integral gelöst werden als +Dabei kann das zweite Integral $I_4$ gelöst werden als \begin{equation} + I_4 + = \frac{1}{2} \int_0^1 x^{\frac{s}{2}-\frac{3}{2}} - x^{\frac{s}{2}-1} - dx + \,dx = \frac{1}{s(s-1)}. \end{equation} -Das erste Integral aus \eqref{zeta:equation:integral3} mit $\psi \left(\frac{1}{x} \right)$ ist nicht lösbar in dieser Form. +Das erste Integral $I_3$ aus \eqref{zeta:equation:integral3} mit $\psi \left(\frac{1}{x} \right)$ ist nicht lösbar in dieser Form. Deshalb substituieren wir $x = \frac{1}{u}$ und $dx = -\frac{1}{u^2}du$. Die untere Integralgrenze wechselt ebenfalls zu $x_0 = 0 \rightarrow u_0 = \infty$. Dies ergibt \begin{align} + I_3 + = \int_{\infty}^{1} - {\frac{1}{u}}^{\frac{s}{2}-\frac{3}{2}} + \left( + \frac{1}{u} + \right)^{\frac{s}{2}-\frac{3}{2}} \psi(u) \frac{-du}{u^2} &= \int_{1}^{\infty} - {\frac{1}{u}}^{\frac{s}{2}-\frac{3}{2}} + \left( + \frac{1}{u} + \right)^{\frac{s}{2}-\frac{3}{2}} \psi(u) \frac{du}{u^2} \\ @@ -180,21 +204,23 @@ Dies ergibt \int_{1}^{\infty} x^{(-1) \left(\frac{s}{2}+\frac{1}{2}\right)} \psi(x) - dx, + \,dx, \end{align} wobei wir durch Multiplikation mit $(-1)$ die Integralgrenzen tauschen dürfen. Es ist zu beachten das diese Grenzen nun identisch mit den Grenzen des zweiten Integrals von \eqref{zeta:equation:integral2} sind. Wir setzen beide Lösungen ein in Gleichung \eqref{zeta:equation:integral3} und erhalten \begin{equation} + I_1 + = \int_0^{1} x^{\frac{s}{2}-1} \psi(x) - dx + \,dx = \int_{1}^{\infty} x^{(-1) \left(\frac{s}{2}+\frac{1}{2}\right)} \psi(x) - dx + \,dx + \frac{1}{s(s-1)}. \end{equation} @@ -206,12 +232,12 @@ Dieses Resultat setzen wir wiederum ein in \eqref{zeta:equation:integral2}, um s \int_0^{1} x^{\frac{s}{2}-1} \psi(x) - dx + \,dx + \int_1^{\infty} x^{\frac{s}{2}-1} \psi(x) - dx + \,dx \nonumber \\ &= @@ -220,12 +246,12 @@ Dieses Resultat setzen wir wiederum ein in \eqref{zeta:equation:integral2}, um s \int_{1}^{\infty} x^{(-1) \left(\frac{s}{2}+\frac{1}{2}\right)} \psi(x) - dx + \,dx + \int_1^{\infty} x^{\frac{s}{2}-1} \psi(x) - dx + \,dx \\ &= \frac{1}{s(s-1)} @@ -237,7 +263,7 @@ Dieses Resultat setzen wir wiederum ein in \eqref{zeta:equation:integral2}, um s x^{\frac{s}{2}-1} \right) \psi(x) - dx + \,dx \\ &= \frac{-1}{s(1-s)} @@ -249,7 +275,7 @@ Dieses Resultat setzen wir wiederum ein in \eqref{zeta:equation:integral2}, um s x^{\frac{s}{2}} \right) \frac{\psi(x)}{x} - dx, + \,dx, \end{align} zu erhalten. Wenn wir dieses Resultat genau anschauen, erkennen wir dass sich nichts verändert wenn $s$ mit $1-s$ ersetzt wird. @@ -261,4 +287,4 @@ Somit haben wir die analytische Fortsetzung gefunden als \frac{\Gamma \left( \frac{1-s}{2} \right)}{\pi^{\frac{1-s}{2}}} \zeta(1-s). \end{equation} - +%TODO Definitionen und Gleichungen klarer unterscheiden diff --git a/buch/papers/zeta/zeta_gamma.tex b/buch/papers/zeta/zeta_gamma.tex index bed4262..49fea74 100644 --- a/buch/papers/zeta/zeta_gamma.tex +++ b/buch/papers/zeta/zeta_gamma.tex @@ -5,7 +5,7 @@ In diesem Abschnitt wird gezeigt, wie sich die Zetafunktion durch die Gammafunkt Dieser Zusammenhang der Art $\zeta(s) = f(\Gamma(s))$ wird später für die Herleitung der analytischen Fortsetzung gebraucht. %TODO ref Gamma -Wir erinnern uns an die Definition der Gammafunktion in \ref{buch:rekursion:gamma:integralbeweis} +Wir erinnern uns an die Definition der Gammafunktion in \eqref{buch:rekursion:gamma:integralbeweis} \begin{equation*} \Gamma(s) = -- cgit v1.2.1 From 2bba3b1d52604c9f671763927ec592a72b09088e Mon Sep 17 00:00:00 2001 From: Joshua Baer Date: Sun, 15 May 2022 15:36:08 +0200 Subject: a few animations --- buch/papers/fm/Python animation/Bessel-FM.ipynb | 193 ++++++++++++++++++++++++ buch/papers/fm/Python animation/Bessel-FM.py | 42 ++++++ buch/papers/fm/RS presentation/RS.tex | 162 ++++++++++++++++++++ 3 files changed, 397 insertions(+) create mode 100644 buch/papers/fm/Python animation/Bessel-FM.ipynb create mode 100644 buch/papers/fm/Python animation/Bessel-FM.py create mode 100644 buch/papers/fm/RS presentation/RS.tex diff --git a/buch/papers/fm/Python animation/Bessel-FM.ipynb b/buch/papers/fm/Python animation/Bessel-FM.ipynb new file mode 100644 index 0000000..9d0835a --- /dev/null +++ b/buch/papers/fm/Python animation/Bessel-FM.ipynb @@ -0,0 +1,193 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 74, + "metadata": {}, + "outputs": [ + { + "ename": "ValueError", + "evalue": "operands could not be broadcast together with shapes (3,) (600,) ", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mValueError\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m/home/joshua/Documents/SeminarSpezielleFunktionen/buch/papers/fm/Python animation/Bessel-FM.ipynb Cell 1'\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 13\u001b[0m x \u001b[39m=\u001b[39m np\u001b[39m.\u001b[39mlinspace(\u001b[39m0.01\u001b[39m, N\u001b[39m*\u001b[39mT, N)\n\u001b[1;32m 14\u001b[0m beta \u001b[39m=\u001b[39m np\u001b[39m.\u001b[39mlinspace(\u001b[39m0.1\u001b[39m,\u001b[39m10\u001b[39m, \u001b[39m3\u001b[39m)\n\u001b[0;32m---> 15\u001b[0m y_old \u001b[39m=\u001b[39m np\u001b[39m.\u001b[39msin(\u001b[39m100.0\u001b[39m \u001b[39m*\u001b[39m \u001b[39m2.0\u001b[39m\u001b[39m*\u001b[39mnp\u001b[39m.\u001b[39mpi\u001b[39m*\u001b[39mx\u001b[39m+\u001b[39mbeta\u001b[39m*\u001b[39;49mnp\u001b[39m.\u001b[39;49msin(\u001b[39m50.0\u001b[39;49m \u001b[39m*\u001b[39;49m \u001b[39m2.0\u001b[39;49m\u001b[39m*\u001b[39;49mnp\u001b[39m.\u001b[39;49mpi\u001b[39m*\u001b[39;49mx))\n\u001b[1;32m 16\u001b[0m y \u001b[39m=\u001b[39m \u001b[39m0\u001b[39m\u001b[39m*\u001b[39mx;\n\u001b[1;32m 17\u001b[0m xf \u001b[39m=\u001b[39m fftfreq(N, \u001b[39m1\u001b[39m \u001b[39m/\u001b[39m \u001b[39m400\u001b[39m)\n", + "\u001b[0;31mValueError\u001b[0m: operands could not be broadcast together with shapes (3,) (600,) " + ] + } + ], + "source": [ + "import numpy as np\n", + "from scipy import signal\n", + "from scipy.fft import fft, ifft, fftfreq\n", + "import scipy.special as sc\n", + "import scipy.fftpack\n", + "import matplotlib.pyplot as plt\n", + "from matplotlib.widgets import Slider\n", + "\n", + "# Number of samplepoints\n", + "N = 600\n", + "# sample spacing\n", + "T = 1.0 / 800.0\n", + "x = np.linspace(0.01, N*T, N)\n", + "beta = 1.0\n", + "y_old = np.sin(100.0 * 2.0*np.pi*x+beta*np.sin(50.0 * 2.0*np.pi*x))\n", + "y = 0*x;\n", + "xf = fftfreq(N, 1 / 400)\n", + "for k in range (-5, 5):\n", + " y = sc.jv(k,beta)*np.sin((100.0+k*50) * 2.0*np.pi*x)\n", + " yf = fft(y)\n", + " plt.plot(xf, np.abs(yf))\n", + "\n", + "axamp = plt.axes(np.linspace(0.1, 3, 10))\n", + "beta_slider = Slider(\n", + "ax=axamp,\n", + "label=\"Amplitude\",\n", + "valmin=0,\n", + "valmax=10,\n", + "valinit=beta,\n", + "orientation=\"vertical\"\n", + ")\n", + "plt.show()\n", + "\n", + "yf_old = fft(y_old)\n", + "plt.plot(xf, np.abs(yf_old))\n", + "plt.show()\n" + ] + }, + { + "cell_type": "code", + "execution_count": 72, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "\n", + "# Number of samplepoints\n", + "N = 600\n", + "# sample spacing\n", + "T = 1.0 / 800.0\n", + "x = np.linspace(0.0, N*T, N)\n", + "y = sc.jv(3,x)#np.sin(50.0 * 2.0*np.pi*x) + 0.5*np.sin(80.0 * 2.0*np.pi*x)\n", + "yf = scipy.fftpack.fft(y)\n", + "xf = np.linspace(0.0, 1.0/(2.0*T), N//2)\n", + "\n", + "fig, ax = plt.subplots()\n", + "ax.plot(xf, 2.0/N * np.abs(yf[:N//2]))\n", + "ax.set(\n", + " xlim=(0, 100)\n", + ")\n", + "plt.show()\n" + ] + }, + { + "cell_type": "code", + "execution_count": 73, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "\n", + "for n in range (5):\n", + " x = np.linspace(0,15,1000)\n", + " y = sc.jv(n,x)\n", + " plt.plot(x, y, '-')\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "from scipy import special\n", + "\n", + "def drumhead_height(n, k, distance, angle, t):\n", + " kth_zero = special.jn_zeros(n, k)[-1]\n", + " return np.cos(t) * np.cos(n*angle) * special.jn(n, distance*kth_zero)\n", + "\n", + "theta = np.r_[0:2*np.pi:50j]\n", + "radius = np.r_[0:1:50j]\n", + "x = np.array([r * np.cos(theta) for r in radius])\n", + "y = np.array([r * np.sin(theta) for r in radius])\n", + "z = np.array([drumhead_height(1, 1, r, theta, 0.5) for r in radius])\n", + "\n", + "import matplotlib.pyplot as plt\n", + "fig = plt.figure()\n", + "ax = fig.add_axes(rect=(0, 0.05, 0.95, 0.95), projection='3d')\n", + "ax.plot_surface(x, y, z, rstride=1, cstride=1, cmap='RdBu_r', vmin=-0.5, vmax=0.5)\n", + "ax.set_xlabel('X')\n", + "ax.set_ylabel('Y')\n", + "ax.set_xticks(np.arange(-1, 1.1, 0.5))\n", + "ax.set_yticks(np.arange(-1, 1.1, 0.5))\n", + "ax.set_zlabel('Z')\n", + "\n", + "plt.show()" + ] + } + ], + "metadata": { + "interpreter": { + "hash": "916dbcbb3f70747c44a77c7bcd40155683ae19c65e1c03b4aa3499c5328201f1" + }, + "kernelspec": { + "display_name": "Python 3.8.10 64-bit", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.10" + }, + "orig_nbformat": 4 + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/buch/papers/fm/Python animation/Bessel-FM.py b/buch/papers/fm/Python animation/Bessel-FM.py new file mode 100644 index 0000000..cf30e16 --- /dev/null +++ b/buch/papers/fm/Python animation/Bessel-FM.py @@ -0,0 +1,42 @@ +import numpy as np +from scipy import signal +from scipy.fft import fft, ifft, fftfreq +import scipy.special as sc +import scipy.fftpack +import matplotlib.pyplot as plt +from matplotlib.widgets import Slider + +# Number of samplepoints +N = 600 +# sample spacing +T = 1.0 / 800.0 +x = np.linspace(0.01, N*T, N) +beta = 1.0 +y_old = np.sin(100.0 * 2.0*np.pi*x+beta*np.sin(50.0 * 2.0*np.pi*x)) +y = 0*x; +xf = fftfreq(N, 1 / 400) +for k in range (-5, 5): + y = sc.jv(k,beta)*np.sin((100.0+k*50) * 2.0*np.pi*x) + yf = fft(y) + plt.plot(xf, np.abs(yf)) + +axbeta =plt.axes([0.25, 0.1, 0.65, 0.03]) +beta_slider = Slider( +ax=axbeta, +label="Beta", +valmin=0.1, +valmax=3, +valinit=beta, +) + +def update(val): + line.set_ydata(fm(beta_slider.val)) + fig.canvas.draw_idle() + + +beta_slider.on_changed(update) +plt.show() + +yf_old = fft(y_old) +plt.plot(xf, np.abs(yf_old)) +plt.show() \ No newline at end of file diff --git a/buch/papers/fm/RS presentation/RS.tex b/buch/papers/fm/RS presentation/RS.tex new file mode 100644 index 0000000..8e3de17 --- /dev/null +++ b/buch/papers/fm/RS presentation/RS.tex @@ -0,0 +1,162 @@ +\documentclass[11pt,aspectratio=169]{beamer} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{lmodern} +\usepackage[ngerman]{babel} +\usepackage{tikz} +\usetheme{Hannover} + +\begin{document} + \author{Joshua Bär} + \title{FM - Bessel} + \subtitle{} + \logo{} + \institute{OST Ostschweizer Fachhochschule} + \date{16.5.2022} + \subject{Mathematisches Seminar} + %\setbeamercovered{transparent} + \setbeamercovered{invisible} + \setbeamertemplate{navigation symbols}{} + \begin{frame}[plain] + \maketitle + \end{frame} +%------------------------------------------------------------------------------- +\section{Einführung} + \begin{frame} + \frametitle{Frequenzmodulation} + \begin{itemize} + \visible<1->{\item Für Übertragung von Daten} + \visible<2->{\item Amplituden unabhängig} + \end{itemize} + \end{frame} +%------------------------------------------------------------------------------- + \begin{frame} + \frametitle{Parameter} + \begin{center} + \begin{tabular}{ c c c } + \hline + Nutzlas & Fehler & Versenden \\ + \hline + 3 & 2 & 7 Werte eines Polynoms vom Grad 2 \\ + 4 & 2 & 8 Werte eines Polynoms vom Grad 3 \\ +\visible<1->{3}& +\visible<1->{3}& +\visible<1->{9 Werte eines Polynoms vom Grad 2} \\ + &&\\ +\visible<1->{$k$} & +\visible<1->{$t$} & +\visible<1->{$k+2t$ Werte eines Polynoms vom Grad $k-1$} \\ + \hline + &&\\ + &&\\ + \multicolumn{3}{l} { + \visible<1>{Ausserdem können bis zu $2t$ Fehler erkannt werden!} + } + \end{tabular} + \end{center} + \end{frame} + +%------------------------------------------------------------------------------- + +\section{Diskrete Fourier Transformation} + \begin{frame} + \frametitle{Idee} + \begin{itemize} + \item Fourier-transformieren + \item Übertragung + \item Rücktransformieren + \end{itemize} + \end{frame} +%------------------------------------------------------------------------------- + \begin{frame} + \begin{figure} + \only<1>{ + \includegraphics[width=0.9\linewidth]{images/fig1.pdf} + } + \only<2>{ + \includegraphics[width=0.9\linewidth]{images/fig2.pdf} + } + \only<3>{ + \includegraphics[width=0.9\linewidth]{images/fig3.pdf} + } + \only<4>{ + \includegraphics[width=0.9\linewidth]{images/fig4.pdf} + } + \only<5>{ + \includegraphics[width=0.9\linewidth]{images/fig5.pdf} + } + \only<6>{ + \includegraphics[width=0.9\linewidth]{images/fig6.pdf} + } + \only<7>{ + \includegraphics[width=0.9\linewidth]{images/fig7.pdf} + } + \end{figure} + \end{frame} +%------------------------------------------------------------------------------- + \begin{frame} + \frametitle{Diskrete Fourier Transformation} + \begin{itemize} + \item Diskrete Fourier-Transformation gegeben durch: + \visible<1->{ + \[ + \label{ft_discrete} + \hat{c}_{k} + = \frac{1}{N} \sum_{n=0}^{N-1} + {f}_n \cdot e^{-\frac{2\pi j}{N} \cdot kn} + \]} + \visible<2->{ + \item Ersetzte + \[ + w = e^{-\frac{2\pi j}{N} k} + \]} + \visible<3->{ + \item Wenn $N$ konstant: + \[ + \hat{c}_{k}=\frac{1}{N}( {f}_0 w^0 + {f}_1 w^1 + {f}_2 w^2 + \dots + {f}_{N-1} w^N) + \]} + \end{itemize} + \end{frame} + +%------------------------------------------------------------------------------- + +%------------------------------------------------------------------------------- + \begin{frame} + \frametitle{Ein Beispiel} + + \begin{itemize} + + \onslide<1->{\item endlicher Körper $q = 11$} + + \onslide<2->{ist eine Primzahl} + + \onslide<3->{beinhaltet die Zahlen $\mathbb{F}_{11} = \{0,1,2,3,4,5,6,7,8,9,10\}$} + + \vspace{10pt} + + \onslide<4->{\item Nachrichtenblock $=$ Nutzlast $+$ Fehlerkorrekturstellen} + + \onslide<5->{$n = q - 1 = 10$ Zahlen} + + \vspace{10pt} + + \onslide<6->{\item Max.~Fehler $t = 2$} + + \onslide<7->{maximale Anzahl von Fehler, die wir noch korrigieren können} + + \vspace{10pt} + + \onslide<8->{\item Nutzlast $k = n -2t = 6$ Zahlen} + + \onslide<9->{Fehlerkorrkturstellen $2t = 4$ Zahlen} + + \onslide<10->{Nachricht $m = [0,0,0,0,4,7,2,5,8,1]$} + + \onslide<11->{als Polynom $m(X) = 4X^5 + 7X^4 + 2X^3 + 5X^2 + 8X + 1$} + + \end{itemize} + + \end{frame} + + +\end{document} -- cgit v1.2.1 From 4fd4422b52f6377a82696ea67da9beb13d93e581 Mon Sep 17 00:00:00 2001 From: Nicolas Tobler Date: Sun, 15 May 2022 23:15:36 +0200 Subject: draft --- buch/papers/ellfilter/main.tex | 370 ++++++++++++++++++++++++++-- buch/papers/ellfilter/packages.tex | 3 + buch/papers/ellfilter/python/chebychef.py | 65 +++++ buch/papers/ellfilter/python/elliptic.py | 316 ++++++++++++++++++++++++ buch/papers/ellfilter/python/elliptic2.py | 78 ++++++ buch/papers/ellfilter/references.bib | 32 +-- buch/papers/ellfilter/teil0.tex | 28 +-- buch/papers/ellfilter/teil1.tex | 90 +++---- buch/papers/ellfilter/teil2.tex | 64 ++--- buch/papers/ellfilter/teil3.tex | 64 ++--- buch/papers/ellfilter/tikz/arccos.tikz.tex | 97 ++++++++ buch/papers/ellfilter/tikz/arccos2.tikz.tex | 46 ++++ 12 files changed, 1084 insertions(+), 169 deletions(-) create mode 100644 buch/papers/ellfilter/python/chebychef.py create mode 100644 buch/papers/ellfilter/python/elliptic.py create mode 100644 buch/papers/ellfilter/python/elliptic2.py create mode 100644 buch/papers/ellfilter/tikz/arccos.tikz.tex create mode 100644 buch/papers/ellfilter/tikz/arccos2.tikz.tex diff --git a/buch/papers/ellfilter/main.tex b/buch/papers/ellfilter/main.tex index 26aaec1..29ebf7a 100644 --- a/buch/papers/ellfilter/main.tex +++ b/buch/papers/ellfilter/main.tex @@ -8,29 +8,361 @@ \begin{refsection} \chapterauthor{Nicolas Tobler} -Ein paar Hinweise für die korrekte Formatierung des Textes -\begin{itemize} -\item -Absätze werden gebildet, indem man eine Leerzeile einfügt. -Die Verwendung von \verb+\\+ ist nur in Tabellen und Arrays gestattet. -\item -Die explizite Platzierung von Bildern ist nicht erlaubt, entsprechende -Optionen werden gelöscht. -Verwenden Sie Labels und Verweise, um auf Bilder hinzuweisen. -\item -Beginnen Sie jeden Satz auf einer neuen Zeile. -Damit ermöglichen Sie dem Versionsverwaltungssysteme, Änderungen -in verschiedenen Sätzen von verschiedenen Autoren ohne Konflikt -anzuwenden. -\item -Bilden Sie auch für Formeln kurze Zeilen, einerseits der besseren -Übersicht wegen, aber auch um GIT die Arbeit zu erleichtern. -\end{itemize} + +\section{Einleitung} + +Lineare filter + +Filter, Signalverarbeitung + + +Der womöglich wichtigste Filtertyp ist das Tiefpassfilter. +Dieses soll im Durchlassbereich unter der Grenzfrequenz $\Omega_p$ unverstärkt durchlassen und alle anderen Frequenzen vollständig auslöschen. + +Bei der Implementierung von Filtern + + +In der Elektrotechnik führen Schaltungen mit linearen Bauelementen wie Kondensatoren, Spulen und Widerständen immer zu linearen zeitinvarianten Systemen (LTI-System von englich \textit{time-invariant system}). +Die Übertragungsfunktion im Frequenzbereich $|H(\Omega)|$ eines solchen Systems ist dabei immer eine rationale Funktion, also eine Division von zwei Polynomen. +Die Polynome habe dabei immer reelle oder komplex-konjugierte Nullstellen. + + +\begin{equation} \label{ellfilter:eq:h_omega} + | H(\Omega)|^2 = \frac{1}{1 + \varepsilon_p^2 F_N^2(w)}, \quad w=\frac{\Omega}{\Omega_p} +\end{equation} + +$\Omega = 2 \pi f$ ist die analoge Frequenz + + +% Linear filter +Damit das Filter implementierbar und stabil ist, muss $H(\Omega)^2$ eine rationale Funktion sein, deren Nullstellen und Pole auf der linken Halbebene liegen. + +$N \in \mathbb{N} $ gibt dabei die Ordnung des Filters vor, also die maximale Anzahl Pole oder Nullstellen. + +% In \eqref{ellfilter:eq:h_omega} wird $F_N(w)$ so verzogen, dass $F_N(w) \forall |w| < 1$ + + +Damit ein Filter die Passband Kondition erfüllt muss $|F_N(w)| \leq 1 \forall |w| \leq 1$ und für $|w| \geq 1$ sollte die Funktion möglichst schnell divergieren. +Eine einfaches Polynom, dass das erfüllt, erhalten wir wenn $F_N(w) = w^N$. +Tatsächlich erhalten wir damit das Butterworth Filter, wie in Abbildung \ref{ellfilter:fig:butterworth} ersichtlich. +\begin{figure} + \centering + \includegraphics[scale=1]{papers/ellfilter/python/F_N_butterworth.pdf} + \caption{$F_N$ für Butterworth filter. Der grüne Bereich definiert die erlaubten Werte für alle $F_N$-Funktionen.} + \label{ellfilter:fig:butterworth} +\end{figure} + +wenn $F_N(w)$ eine rationale Funktion ist, ist auch $H(\Omega)$ eine rationale Funktion und daher ein lineares Filter. %proof? + +\begin{align} + F_N(w) & = + \begin{cases} + w^N & \text{Butterworth} \\ + T_N(w) & \text{Tschebyscheff, Typ 1} \\ + [k_1 T_N (k^{-1} w^{-1})]^{-1} & \text{Tschebyscheff, Typ 2} \\ + R_N(w) & \text{Elliptisch (Cauer)} \\ + \end{cases} +\end{align} + +Mit der Ausnahme vom Butterworth filter sind alle Filter nach speziellen Funktionen benannt. +Alle diese Filter sind optimal für unterschiedliche Anwendungsgebiete. +Das Butterworth-Filter, zum Beispiel, ist maximal flach im Durchlassbereich. +Das Tschebyscheff-1 Filter sind maximal steil für eine definierte Welligkeit im Durchlassbereich, währendem es im Sperrbereich monoton abfallend ist. +Es scheint so als sind gewisse Eigenschaften dieser speziellen Funktionen verantwortlich für die Optimalität dieser Filter. + +\section{Tschebyscheff-Filter} + +Als Einstieg betrachent Wir das Tschebyscheff-Filter, welches sehr verwand ist mit dem elliptischen Filter. +Genauer ausgedrückt sind die Tschebyscheff-1 und -2 Fitler ein Spezialfall davon. + +Der Name des Filters deutet schon an, dass die Tschebyschff-Polynome $T_N$ relevant sind für das Filter: +\begin{align} + T_{0}(x)&=1\\ + T_{1}(x)&=x\\ + T_{2}(x)&=2x^{2}-1\\ + T_{3}(x)&=4x^{3}-3x\\ + T_{n+1}(x)&=2x~T_{n}(x)-T_{n-1}(x). +\end{align} +Bemerkenswert ist, dass die Polynome im Intervall $[-1, 1]$ mit der Trigonometrischen Funktion +\begin{equation} \label{ellfilter:eq:chebychef_polynomials} + T_N(w) = \cos \left( N \cos^{-1}(w) \right) +\end{equation} +übereinstimmt. +Abbildung \ref{ellfilter:fig:chebychef_polynomials} zeigt einige Tschebyscheff-Polynome. +\begin{figure} + \centering + \includegraphics[scale=1]{papers/ellfilter/python/F_N_chebychev2.pdf} + \caption{Die Tschebyscheff-Polynome $C_N$.} + \label{ellfilter:fig:chebychef_polynomials} +\end{figure} +Da der Kosinus begrenzt zwischen $-1$ und $1$ ist, sind auch die Tschebyscheff-Polynome begrenzt. +Geht man aber über das Intervall $[-1, 1]$ hinaus, divergieren die Funktionen mit zunehmender Ordnung immer steiler gegen $\pm \infty$. +Diese Eigenschaft ist sehr nützlich für ein Filter. +Wenn wir die Tschebyscheff-Polynome quadrieren, passen sie perfekt in die Voraussetzungen für Filterfunktionen, wie es Abbildung \ref{ellfiter:fig:chebychef} demonstriert. +\begin{figure} + \centering + \includegraphics[scale=1]{papers/ellfilter/python/F_N_chebychev.pdf} + \caption{Die Tschebyscheff-Polynome füllen den erlaubten Bereich besser, und erhalten dadurch eine steilere Flanke im Sperrbereich.} + \label{ellfiter:fig:chebychef} +\end{figure} + + +Die analytische Fortsetzung von \eqref{ellfilter:eq:chebychef_polynomials} über das Intervall $[-1,1]$ hinaus stimmt mit den Polynomen überein, wie es zu erwarten ist. +Die genauere Betrachtung wird uns dann helfen die elliptischen Filter zu verstehen. + +\begin{equation} + \cos^{-1}(x) + = + \int_{0}^{x} + \frac{ + dz + }{ + \sqrt{ + 1-z^2 + } + } +\end{equation} %TOdO is it minus dz? + +\begin{equation} + \frac{ + 1 + }{ + \sqrt{ + 1-z^2 + } + } + \in \mathbb{R} + \quad + \forall + \quad + -1 \leq z \leq 1 +\end{equation} +Wenn $|z|$ über 1 hinausgeht, wird der Term unter der Wurzel negativ. +Durch die Quadratwurzel entstehen zwei Reinkomplexe Lösungen +\begin{equation} + \frac{ + 1 + }{ + \sqrt{ + 1-z^2 + } + } + = i \xi \quad | \quad \xi \in \mathbb{R} + \quad + \forall + \quad + z \leq -1 \cup z \geq 1 +\end{equation} + +\begin{figure} + \centering + \input{papers/ellfilter/tikz/arccos.tikz.tex} + \caption{Die Funktion $z = \cos^{-1}(w)$ dargestellt in der komplexen ebene.} + \label{ellfilter:fig:arccos} +\end{figure} + + + +\begin{figure} + \centering + \input{papers/ellfilter/tikz/arccos2.tikz.tex} + \caption{ + $z$-Ebene der Tschebyscheff-Funktion. + Je grösser die Ordnung $N$ gewählt wird, desto mehr Nullstellen werden hat das Tschebyscheff-Polynom. + } + % \label{ellfilter:fig:arccos} +\end{figure} + + + + + +% Analytische Fortsetzung + + + +\section{Jacobische elliptische Funktionen} + + +Für das elliptische Filter, wird statt der für das Tschebyscheff-Filter benutzen Kreis-Trigonometrie die elliptischen Funktionen gebraucht. +Der begriff elliptische Funktion wird für sehr viele Funktionen gebraucht, daher ist es hier wichtig zu erwähnen, dass es ausschliesslich um die Jacobischen elliptischen Funktionen geht. + +Im Wesentlichen erweitern die Jacobi elliptischen Funktionen die trigonometrische Funktionen für Ellipsen. + +%TODO $z$ or $u$ for parameter? + +neu zwei parameter +$sn(z, k)$ +$z$ ist das winkelargument +Im Kreis ist der Radius für alle Winkel konstant, bei Ellipsen ändert sich das. +Dies hat zur Folge, dass bei einer Ellipse die Kreisbodenstrecke nicht linear zum Winkel verläuft. +Darum kann hier nicht der gewohnte Winkel verwendet werden. +An deren stelle kommt der parameter $k$ zum Einsatz, welcher durch das elliptische Integral erster Art +\begin{equation} + z + = + F(\phi, k) + = + \int_{0}^{\phi} + \frac{ + d\theta + }{ + \sqrt{ + 1-k^2 \sin^2 \theta + } + } +\end{equation} +mit dem Winkel $\phi$ in Verbindung liegt. + + + + +Dabei wird das vollständige und unvollständige Elliptische integral unterschieden. +Beim vollständigen Integral +\begin{equation} + K(k) + = + \int_{0}^{\pi / 2} + \frac{ + d\theta + }{ + \sqrt{ + 1-k^2 \sin^2 \theta + } + } +\end{equation} +wird über ein viertel Ellipsenbogen integriert also bis $\phi=\pi/2$. + +Die Jacobischen elliptischen Funktionen können mit der inversen Funktion +\begin{equation} + \phi = F^{-1}(z, k) +\end{equation} +definiert werden. Dabei ist zu beachten dass nur das $z$ Argument der Funktion invertiert wird also +\begin{equation} + z = F(\phi, k) + \Leftrightarrow + \phi = F^{-1}(z, k). +\end{equation} +Mithilfe von $F^{-1}$ kann $sn^{-1}$ mit dem Elliptischen integral dargestellt werden: +\begin{equation} + \sin(\phi) + = + \sin \left( F^{-1}(z, k) \right) + = + \sn(u, k) +\end{equation} + +\begin{align} + \sn^{-1}(w, k) + & = + \int_{0}^{\phi} + \frac{ + d\theta + }{ + \sqrt{ + 1-k^2 \sin^2 \theta + } + }, + \quad + \phi = \sin^{-1}(w) + \\ + & = + \int_{0}^{w} + \frac{ + dt + }{ + \sqrt{ + (1-t^2)(1-k^2 t^2) + } + } +\end{align} + +Beim $\cos^{-1}(x)$ haben wir gesehen, dass die analytische Fortsetzung bei $x < -1$ und $x > 1$ rechtwinklig in die Komplexen zahlen wandert. +Wenn man das gleiche mit $\sn^{-1}(w, k)$ macht, erkennt man zwei interessante Stellen. +Die erste ist die gleiche wie beim $\cos^{-1}(x)$ nämlich bei $t = \pm 1$. +Der erste Term unter der Wurzel wird dann negativ, während der zweite noch positiv ist, da $k \leq 1$. +\begin{equation} + \frac{ + 1 + }{ + \sqrt{ + (1-t^2)(1-k^2 t^2) + } + } + \in \mathbb{R} + \quad \forall \quad + -1 \leq t \leq 1 +\end{equation} +Die zweite stelle passiert wenn beide Faktoren unter der Wurzel negativ werden, was bei $t = 1/k$ der Fall ist. + + + + +Funktion in relle und komplexe Richtung periodisch + +In der reellen Richtung ist sie $4K(k)$-periodisch und in der imaginären Richtung $4K^\prime(k)$-periodisch. + + + +%TODO sn^{-1} grafik + + +\section{Elliptische rationale Funktionen} + + +\begin{equation} + R_N(\xi, w) = \cd \left(N~f_1(\xi)~\cd^{-1}(w, 1/\xi), f_2(\xi)\right) +\end{equation} +\begin{equation} + R_N(\xi, w) = \cd (N~u K_1, k_1), \quad w= \cd(uK, k) +\end{equation} + + +sieht ähnlich aus wie die trigonometrische darstellung der Tschebyschef-Polynome + +der Ordnungszahl $N$ kommt auch als Faktor for + +%TODO cd^{-1} grafik mit + + +\subsection{Degree Equation} + +Der $cd^{-1}$ Term muss so verzogen werden, dass die umgebene $cd$ funktion die nullstellen und pole trifft. +Dies trifft ein wenn die Degree Equation erfüllt ist. + +\begin{equation} + N \frac{K^\prime}{K} = \frac{K^\prime_1}{K_1} +\end{equation} + + +Leider ist das lösen dieser Gleichung nicht trivial. +Die Rechnung wird in \ref{ellfilter:bib:orfanidis} im Detail angeschaut. + + +\subsection{Polynome?} + +Bei den Tschebyscheff-Polynomen haben wir gesehen, dass die Trigonometrische Formel zu einfachen Polynomen umgewandelt werden kann. +Im gegensatz zum $\cos^{-1}$ hat der $\cd^{-1}$ nicht nur Nullstellen sondern auch Pole. +Somit entstehen bei den elliptischen rationalen Funktionen, wie es der name auch deutet, rationale Funktionen, also ein Bruch von zwei Polynomen. + + + + +\begin{figure} + \centering + \includegraphics[scale=1]{papers/ellfilter/python/F_N_elliptic.pdf} + \caption{$F_N$ für ein elliptischs filter.} + \label{ellfilter:fig:elliptic} +\end{figure} + + + + \input{papers/ellfilter/teil0.tex} \input{papers/ellfilter/teil1.tex} \input{papers/ellfilter/teil2.tex} \input{papers/ellfilter/teil3.tex} -\printbibliography[heading=subbibliography] +% \printbibliography[heading=subbibliography] \end{refsection} diff --git a/buch/papers/ellfilter/packages.tex b/buch/papers/ellfilter/packages.tex index c94db34..8045a1a 100644 --- a/buch/papers/ellfilter/packages.tex +++ b/buch/papers/ellfilter/packages.tex @@ -8,3 +8,6 @@ % following example %\usepackage{packagename} + +\DeclareMathOperator{\sn}{\text{sn}} +\DeclareMathOperator{\cd}{\text{cd}} diff --git a/buch/papers/ellfilter/python/chebychef.py b/buch/papers/ellfilter/python/chebychef.py new file mode 100644 index 0000000..a278989 --- /dev/null +++ b/buch/papers/ellfilter/python/chebychef.py @@ -0,0 +1,65 @@ +# %% + +import matplotlib.pyplot as plt +import scipy.signal +import numpy as np + + +order = 5 +passband_ripple_db = 1 +omega_c = 1000 + +a, b = scipy.signal.cheby1( + order, + passband_ripple_db, + omega_c, + btype='low', + analog=True, + output='ba', + fs=None, +) + +w, mag, phase = scipy.signal.bode((a, b), w=np.linspace(0,2000,256)) +f, axs = plt.subplots(2,1, sharex=True) +axs[0].plot(w, 10**(mag/20)) +axs[0].set_ylabel("$|H(\omega)| /$ db") +axs[0].grid(True, "both") +axs[1].plot(w, phase) +axs[1].set_ylabel(r"$arg H (\omega) / $ deg") +axs[1].grid(True, "both") +axs[1].set_xlim([0, 2000]) +axs[1].set_xlabel("$\omega$") +plt.show() + + +# %% Cheychev filter F_N plot + +w = np.linspace(-1.1,1.1, 1000) +plt.figure(figsize=(5.5,2)) +for N in [3,6,11]: + # F_N = np.cos(N * np.arccos(w)) + F_N = scipy.special.eval_chebyt(N, w) + plt.plot(w, F_N, label=f"$N={N}$") +plt.xlim([-1.2,1.2]) +plt.ylim([-2,2]) +plt.grid() +plt.xlabel("$w$") +plt.ylabel("$C_N(w)$") +plt.legend() +plt.savefig("F_N_chebychev2.pdf") +plt.show() + +# %% Build Chebychev polynomials + +N = 11 + +zeros = (np.arange(N)+0.5) * np.pi +zeros = np.cos(zeros/N) + +x = np.linspace(-1.2,1.2,1000) +y = np.prod(x[:, None] - zeros[None, :], axis=-1)*2**(N-1) + +plt.plot(x, y) +plt.ylim([-1,1]) +plt.grid() +plt.show() diff --git a/buch/papers/ellfilter/python/elliptic.py b/buch/papers/ellfilter/python/elliptic.py new file mode 100644 index 0000000..9f209e9 --- /dev/null +++ b/buch/papers/ellfilter/python/elliptic.py @@ -0,0 +1,316 @@ + +# %% + +import scipy.special +import scipyx as spx +import numpy as np +import matplotlib.pyplot as plt +import matplotlib +from matplotlib.patches import Rectangle + +matplotlib.rcParams.update({ + "pgf.texsystem": "pdflatex", + 'font.family': 'serif', + 'font.size': 9, + 'text.usetex': True, + 'pgf.rcfonts': False, +}) + +def last_color(): + plt.gca().lines[-1].get_color() + +# %% Buttwerworth filter F_N plot + +w = np.linspace(0,1.5, 100) +plt.figure(figsize=(4,2.5)) + +for N in range(1,5): + F_N = w**N + plt.plot(w, F_N**2, label=f"$N={N}$") +plt.gca().add_patch(Rectangle( + (0, 0), + 1, 1, + fc ='green', + alpha=0.2, + lw = 10, +)) +plt.gca().add_patch(Rectangle( + (1, 1), + 0.5, 1, + fc ='green', + alpha=0.2, + lw = 10, +)) +plt.xlim([0,1.5]) +plt.ylim([0,2]) +plt.grid() +plt.xlabel("$w$") +plt.ylabel("$F^2_N(w)$") +plt.legend() +plt.savefig("F_N_butterworth.pdf") +plt.show() + +# %% Cheychev filter F_N plot + +w = np.linspace(0,1.5, 100) + +plt.figure(figsize=(4,2.5)) +for N in range(1,5): + # F_N = np.cos(N * np.arccos(w)) + F_N = scipy.special.eval_chebyt(N, w) + plt.plot(w, F_N**2, label=f"$N={N}$") +plt.gca().add_patch(Rectangle( + (0, 0), + 1, 1, + fc ='green', + alpha=0.2, + lw = 10, +)) +plt.gca().add_patch(Rectangle( + (1, 1), + 0.5, 1, + fc ='green', + alpha=0.2, + lw = 10, +)) +plt.xlim([0,1.5]) +plt.ylim([0,2]) +plt.grid() +plt.xlabel("$w$") +plt.ylabel("$F^2_N(w)$") +plt.legend() +plt.savefig("F_N_chebychev.pdf") +plt.show() + +# %% define elliptic functions + +def ell_int(k): + """ Calculate K(k) """ + m = k**2 + return scipy.special.ellipk(m) + +def sn(z, k): + return spx.ellipj(z, k**2)[0] + +def cn(z, k): + return spx.ellipj(z, k**2)[1] + +def dn(z, k): + return spx.ellipj(z, k**2)[2] + +def cd(z, k): + sn, cn, dn, ph = spx.ellipj(z, k**2) + return cn / dn + +# https://mathworld.wolfram.com/JacobiEllipticFunctions.html eq 3-8 + +def sn_inv(z, k): + m = k**2 + return scipy.special.ellipkinc(np.arcsin(z), m) + +def cn_inv(z, k): + m = k**2 + return scipy.special.ellipkinc(np.arccos(z), m) + +def dn_inv(z, k): + m = k**2 + x = np.sqrt((1-z**2) / k**2) + return scipy.special.ellipkinc(np.arcsin(x), m) + +def cd_inv(z, k): + m = k**2 + x = np.sqrt(((m - 1) * z**2) / (m*z**2 - 1)) + return scipy.special.ellipkinc(np.arccos(x), m) + + +k = 0.8 +z = 0.5 + +assert np.allclose(sn_inv(sn(z ,k), k), z) +assert np.allclose(cn_inv(cn(z ,k), k), z) +assert np.allclose(dn_inv(dn(z ,k), k), z) +assert np.allclose(cd_inv(cd(z ,k), k), z) + +# %% plot arcsin + +def lattice(a1, b1, c1, a2, b2, c2): + r1 = np.logspace(a1, b1, c1) + x1 = np.concatenate((-np.flip(r1), [0], r1), axis=0) + x1 = x1.astype(np.complex128) + r2 = np.logspace(a2, b2, c2) + x2 = np.concatenate((-np.flip(r2), [0], r2), axis=0) + x2 = x2.astype(np.complex128) + x = (x1[:, None] + (x2[None, :] * 1j)) + return x + +plt.figure(figsize=(12,12)) +y = np.arcsin(lattice(-1,6,1000, -1,5,10)) +plt.plot(np.real(y), np.imag(y), "-", color="red", lw=0.5) +y = np.arcsin(lattice(-1,6,10, -1,5,100)).T +plt.plot(np.real(y), np.imag(y), "-", color="red", lw=0.5) +y = np.arcsin(lattice(-1,6,10, -1,5,10)) +plt.plot(np.real(y), np.imag(y), ".", color="red", lw=0.5) +plt.show() + +# %% plot cd^-1 TODO complex cd^-1 missing + + +r = np.logspace(-1,8, 50) + + + +x = np.concatenate((-np.flip(r), [0], r), axis=0) +y = cd_inv(x, 0.99) + +plt.figure(figsize=(12,12)) +plt.plot(np.real(y), np.imag(y), "-") +plt.show() + +# %%plot cd +plt.figure(figsize=(10,6)) +z = np.linspace(-4,4, 500) +for k in [0, 0.9, 0.99, 0.999, 0.99999]: + w = cd(z*ell_int(k), k) + plt.plot(z, w, label=f"$k={k}$") +plt.grid() +plt.legend() +# plt.xlim([-4,4]) +plt.xlabel("$u$") +plt.ylabel("$cd(uK, k)$") +plt.show() + +# %% Test ???? + +N = 5 +k = 0.9 +k1 = k**N + +assert np.allclose(k**(-N), k1**(-1)) + +K = ell_int(k) +Kp = ell_int(np.sqrt(1-k**2)) + +K1 = ell_int(k1) +Kp1 = ell_int(np.sqrt(1-k1**2)) + +print(Kp * (K1 / K) * N, Kp1) + + +# %% + + +k = 0.9 +k_prim = np.sqrt(1 - k**2) +K = ell_int(k) +Kp = ell_int(k_prim) + +print(K, Kp) + +zs = [ + 0 + (K + 0j) * np.linspace(0,1,25), + K + (Kp*1j) * np.linspace(0,1,25), + (K + Kp*1j) + (-K) * np.linspace(0,1,25), +] + + +for z in zs: + plt.plot(np.real(z), np.imag(z)) +plt.show() + + + +for z in zs: + w = cd(z, k) + plt.plot(np.real(w), np.imag(w)) +plt.show() + + + + + +# %% + +for i in range(10): + x = np.linspace(i*1,i*1+1,10, dtype=np.complex64) + w = np.arccos(x) + + x2 = np.cos(w) + x4 = np.cos(w+ 2*np.pi) + x3 = np.cos(np.conj(w)) + + assert np.allclose(x2, x4, rtol=0.001, atol=1e-5) + + assert np.allclose(x2, x3) + assert np.allclose(x2, x, rtol=0.001, atol=1e-5) + + plt.plot(np.real(w), np.imag(w), ".-") + +for i in range(10): + x = -np.linspace(i*1,i*1+1,100, dtype=np.complex64) + w = np.arccos(x) + plt.plot(np.real(w), np.imag(w), ".-") + +plt.grid() +plt.show() + + + + +# %% + +plt.plot(omega, np.abs(G)) +plt.show() + + +def cd_inv(u, m): + return K(1/2) - F(np.arcsin()) + +def K(m): + return scipy.special.ellipk(m) + +def L(n, xi): + return 1 #TODO + +def R(n, xi, x): + cn(n*K(1/L(n, xi))/K(1/xi) * cd_inv(x, 1/xi, 1/L(n, xi))) + +epsilon = 0.1 +n = 3 +omega = np.linspace(0, np.pi, 1000) +omega_0 = 1 +xi = 1.1 + +G = 1 / np.sqrt(1 + epsilon**2 * R(n, xi, omega/omega_0)**2) + + +plt.plot(omega, np.abs(G)) +plt.show() + + + +# %% Chebychef + +epsilon = 0.5 +omega = np.linspace(0, np.pi, 1000) +omega_0 = 1 +n = 4 + +def chebychef_poly(n, x): + x = x.astype(np.complex64) + y = np.cos(n* np.arccos(x)) + return np.real(y) + +F_omega = chebychef_poly + +for n in (1,2,3,4): + plt.plot(omega, F_omega(n, omega/omega_0)**2) +plt.ylim([0,5]) +plt.xlim([0,1.5]) +plt.grid() +plt.show() + +for n in (1,2,3,4): + G = 1 / np.sqrt(1 + epsilon**2 * F_omega(n, omega/omega_0)**2) + plt.plot(omega, np.abs(G)) +plt.grid() +plt.show() diff --git a/buch/papers/ellfilter/python/elliptic2.py b/buch/papers/ellfilter/python/elliptic2.py new file mode 100644 index 0000000..92fefd9 --- /dev/null +++ b/buch/papers/ellfilter/python/elliptic2.py @@ -0,0 +1,78 @@ +# %% + +import matplotlib.pyplot as plt +import scipy.signal +import numpy as np +import matplotlib +from matplotlib.patches import Rectangle + + +def ellip_filter(N): + + order = N + passband_ripple_db = 3 + stopband_attenuation_db = 20 + omega_c = 1000 + + a, b = scipy.signal.ellip( + order, + passband_ripple_db, + stopband_attenuation_db, + omega_c, + btype='low', + analog=True, + output='ba', + fs=None + ) + + w, mag_db, phase = scipy.signal.bode((a, b), w=np.linspace(0*omega_c,2*omega_c, 4000)) + + mag = 10**(mag_db/20) + + passband_ripple = 10**(-passband_ripple_db/20) + epsilon2 = (1/passband_ripple)**2 - 1 + + FN2 = ((1/mag**2) - 1) + + return w/omega_c, FN2 / epsilon2 + + +plt.figure(figsize=(4,2.5)) + +for N in [5]: + w, FN2 = ellip_filter(N) + plt.semilogy(w, FN2, label=f"$N={N}$") + +plt.gca().add_patch(Rectangle( + (0, 0), + 1, 1, + fc ='green', + alpha=0.2, + lw = 10, +)) +plt.gca().add_patch(Rectangle( + (1, 1), + 0.01, 1e2-1, + fc ='green', + alpha=0.2, + lw = 10, +)) + +plt.gca().add_patch(Rectangle( + (1.01, 100), + 1, 1e6, + fc ='green', + alpha=0.2, + lw = 10, +)) +plt.xlim([0,2]) +plt.ylim([1e-4,1e6]) +plt.grid() +plt.xlabel("$w$") +plt.ylabel("$F^2_N(w)$") +plt.legend() +plt.savefig("F_N_elliptic.pdf") +plt.show() + + + diff --git a/buch/papers/ellfilter/references.bib b/buch/papers/ellfilter/references.bib index 81b3577..2b873af 100644 --- a/buch/papers/ellfilter/references.bib +++ b/buch/papers/ellfilter/references.bib @@ -4,32 +4,10 @@ % (c) 2020 Autor, Hochschule Rapperswil % -@online{ellfilter:bibtex, - title = {BibTeX}, - url = {https://de.wikipedia.org/wiki/BibTeX}, - date = {2020-02-06}, - year = {2020}, - month = {2}, - day = {6} -} - -@book{ellfilter:numerical-analysis, - title = {Numerical Analysis}, - author = {David Kincaid and Ward Cheney}, - publisher = {American Mathematical Society}, - year = {2002}, - isbn = {978-8-8218-4788-6}, - inseries = {Pure and applied undegraduate texts}, - volume = {2} -} - -@article{ellfilter:mendezmueller, - author = { Tabea Méndez and Andreas Müller }, - title = { Noncommutative harmonic analysis and image registration }, - journal = { Appl. Comput. Harmon. Anal.}, - year = 2019, - volume = 47, - pages = {607--627}, - url = {https://doi.org/10.1016/j.acha.2017.11.004} +@online{ellfilter:bib:orfanidis, + author = { Sophocles J. Orfanidis}, + title = { LECTURE NOTES ON ELLIPTIC FILTER DESIGN }, + year = 2006, + url = {https://www.ece.rutgers.edu/~orfanidi/ece521/notes.pdf} } diff --git a/buch/papers/ellfilter/teil0.tex b/buch/papers/ellfilter/teil0.tex index fd04ba9..6204bc0 100644 --- a/buch/papers/ellfilter/teil0.tex +++ b/buch/papers/ellfilter/teil0.tex @@ -3,20 +3,20 @@ % % (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil % -\section{Teil 0\label{ellfilter:section:teil0}} -\rhead{Teil 0} -Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam -nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam -erat, sed diam voluptua \cite{ellfilter:bibtex}. -At vero eos et accusam et justo duo dolores et ea rebum. -Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum -dolor sit amet. +% \section{Teil 0\label{ellfilter:section:teil0}} +% \rhead{Teil 0} +% Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam +% nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam +% erat, sed diam voluptua \cite{ellfilter:bibtex}. +% At vero eos et accusam et justo duo dolores et ea rebum. +% Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum +% dolor sit amet. -Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam -nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam -erat, sed diam voluptua. -At vero eos et accusam et justo duo dolores et ea rebum. Stet clita -kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit -amet. +% Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam +% nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam +% erat, sed diam voluptua. +% At vero eos et accusam et justo duo dolores et ea rebum. Stet clita +% kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit +% amet. diff --git a/buch/papers/ellfilter/teil1.tex b/buch/papers/ellfilter/teil1.tex index 7e62a2f..4760473 100644 --- a/buch/papers/ellfilter/teil1.tex +++ b/buch/papers/ellfilter/teil1.tex @@ -3,53 +3,53 @@ % % (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil % -\section{Teil 1 -\label{ellfilter:section:teil1}} -\rhead{Problemstellung} -Sed ut perspiciatis unde omnis iste natus error sit voluptatem -accusantium doloremque laudantium, totam rem aperiam, eaque ipsa -quae ab illo inventore veritatis et quasi architecto beatae vitae -dicta sunt explicabo. -Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit -aut fugit, sed quia consequuntur magni dolores eos qui ratione -voluptatem sequi nesciunt -\begin{equation} -\int_a^b x^2\, dx -= -\left[ \frac13 x^3 \right]_a^b -= -\frac{b^3-a^3}3. -\label{ellfilter:equation1} -\end{equation} -Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, -consectetur, adipisci velit, sed quia non numquam eius modi tempora -incidunt ut labore et dolore magnam aliquam quaerat voluptatem. +% \section{Teil 1 +% \label{ellfilter:section:teil1}} +% \rhead{Problemstellung} +% Sed ut perspiciatis unde omnis iste natus error sit voluptatem +% accusantium doloremque laudantium, totam rem aperiam, eaque ipsa +% quae ab illo inventore veritatis et quasi architecto beatae vitae +% dicta sunt explicabo. +% Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit +% aut fugit, sed quia consequuntur magni dolores eos qui ratione +% voluptatem sequi nesciunt +% \begin{equation} +% \int_a^b x^2\, dx +% = +% \left[ \frac13 x^3 \right]_a^b +% = +% \frac{b^3-a^3}3. +% \label{ellfilter:equation1} +% \end{equation} +% Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, +% consectetur, adipisci velit, sed quia non numquam eius modi tempora +% incidunt ut labore et dolore magnam aliquam quaerat voluptatem. -Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis -suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? -Quis autem vel eum iure reprehenderit qui in ea voluptate velit -esse quam nihil molestiae consequatur, vel illum qui dolorem eum -fugiat quo voluptas nulla pariatur? +% Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis +% suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? +% Quis autem vel eum iure reprehenderit qui in ea voluptate velit +% esse quam nihil molestiae consequatur, vel illum qui dolorem eum +% fugiat quo voluptas nulla pariatur? -\subsection{De finibus bonorum et malorum -\label{ellfilter:subsection:finibus}} -At vero eos et accusamus et iusto odio dignissimos ducimus qui -blanditiis praesentium voluptatum deleniti atque corrupti quos -dolores et quas molestias excepturi sint occaecati cupiditate non -provident, similique sunt in culpa qui officia deserunt mollitia -animi, id est laborum et dolorum fuga \eqref{000tempmlate:equation1}. +% \subsection{De finibus bonorum et malorum +% \label{ellfilter:subsection:finibus}} +% At vero eos et accusamus et iusto odio dignissimos ducimus qui +% blanditiis praesentium voluptatum deleniti atque corrupti quos +% dolores et quas molestias excepturi sint occaecati cupiditate non +% provident, similique sunt in culpa qui officia deserunt mollitia +% animi, id est laborum et dolorum fuga \eqref{000tempmlate:equation1}. -Et harum quidem rerum facilis est et expedita distinctio -\ref{ellfilter:section:loesung}. -Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil -impedit quo minus id quod maxime placeat facere possimus, omnis -voluptas assumenda est, omnis dolor repellendus -\ref{ellfilter:section:folgerung}. -Temporibus autem quibusdam et aut officiis debitis aut rerum -necessitatibus saepe eveniet ut et voluptates repudiandae sint et -molestiae non recusandae. -Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis -voluptatibus maiores alias consequatur aut perferendis doloribus -asperiores repellat. +% Et harum quidem rerum facilis est et expedita distinctio +% \ref{ellfilter:section:loesung}. +% Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil +% impedit quo minus id quod maxime placeat facere possimus, omnis +% voluptas assumenda est, omnis dolor repellendus +% \ref{ellfilter:section:folgerung}. +% Temporibus autem quibusdam et aut officiis debitis aut rerum +% necessitatibus saepe eveniet ut et voluptates repudiandae sint et +% molestiae non recusandae. +% Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis +% voluptatibus maiores alias consequatur aut perferendis doloribus +% asperiores repellat. diff --git a/buch/papers/ellfilter/teil2.tex b/buch/papers/ellfilter/teil2.tex index 71fdc6d..39dd5d7 100644 --- a/buch/papers/ellfilter/teil2.tex +++ b/buch/papers/ellfilter/teil2.tex @@ -3,38 +3,38 @@ % % (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil % -\section{Teil 2 -\label{ellfilter:section:teil2}} -\rhead{Teil 2} -Sed ut perspiciatis unde omnis iste natus error sit voluptatem -accusantium doloremque laudantium, totam rem aperiam, eaque ipsa -quae ab illo inventore veritatis et quasi architecto beatae vitae -dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit -aspernatur aut odit aut fugit, sed quia consequuntur magni dolores -eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam -est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci -velit, sed quia non numquam eius modi tempora incidunt ut labore -et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima -veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, -nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure -reprehenderit qui in ea voluptate velit esse quam nihil molestiae -consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla -pariatur? +% \section{Teil 2 +% \label{ellfilter:section:teil2}} +% \rhead{Teil 2} +% Sed ut perspiciatis unde omnis iste natus error sit voluptatem +% accusantium doloremque laudantium, totam rem aperiam, eaque ipsa +% quae ab illo inventore veritatis et quasi architecto beatae vitae +% dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit +% aspernatur aut odit aut fugit, sed quia consequuntur magni dolores +% eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam +% est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci +% velit, sed quia non numquam eius modi tempora incidunt ut labore +% et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima +% veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, +% nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure +% reprehenderit qui in ea voluptate velit esse quam nihil molestiae +% consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla +% pariatur? -\subsection{De finibus bonorum et malorum -\label{ellfilter:subsection:bonorum}} -At vero eos et accusamus et iusto odio dignissimos ducimus qui -blanditiis praesentium voluptatum deleniti atque corrupti quos -dolores et quas molestias excepturi sint occaecati cupiditate non -provident, similique sunt in culpa qui officia deserunt mollitia -animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis -est et expedita distinctio. Nam libero tempore, cum soluta nobis -est eligendi optio cumque nihil impedit quo minus id quod maxime -placeat facere possimus, omnis voluptas assumenda est, omnis dolor -repellendus. Temporibus autem quibusdam et aut officiis debitis aut -rerum necessitatibus saepe eveniet ut et voluptates repudiandae -sint et molestiae non recusandae. Itaque earum rerum hic tenetur a -sapiente delectus, ut aut reiciendis voluptatibus maiores alias -consequatur aut perferendis doloribus asperiores repellat. +% \subsection{De finibus bonorum et malorum +% \label{ellfilter:subsection:bonorum}} +% At vero eos et accusamus et iusto odio dignissimos ducimus qui +% blanditiis praesentium voluptatum deleniti atque corrupti quos +% dolores et quas molestias excepturi sint occaecati cupiditate non +% provident, similique sunt in culpa qui officia deserunt mollitia +% animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis +% est et expedita distinctio. Nam libero tempore, cum soluta nobis +% est eligendi optio cumque nihil impedit quo minus id quod maxime +% placeat facere possimus, omnis voluptas assumenda est, omnis dolor +% repellendus. Temporibus autem quibusdam et aut officiis debitis aut +% rerum necessitatibus saepe eveniet ut et voluptates repudiandae +% sint et molestiae non recusandae. Itaque earum rerum hic tenetur a +% sapiente delectus, ut aut reiciendis voluptatibus maiores alias +% consequatur aut perferendis doloribus asperiores repellat. diff --git a/buch/papers/ellfilter/teil3.tex b/buch/papers/ellfilter/teil3.tex index 79a5f3d..dad96ad 100644 --- a/buch/papers/ellfilter/teil3.tex +++ b/buch/papers/ellfilter/teil3.tex @@ -3,38 +3,38 @@ % % (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil % -\section{Teil 3 -\label{ellfilter:section:teil3}} -\rhead{Teil 3} -Sed ut perspiciatis unde omnis iste natus error sit voluptatem -accusantium doloremque laudantium, totam rem aperiam, eaque ipsa -quae ab illo inventore veritatis et quasi architecto beatae vitae -dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit -aspernatur aut odit aut fugit, sed quia consequuntur magni dolores -eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam -est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci -velit, sed quia non numquam eius modi tempora incidunt ut labore -et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima -veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, -nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure -reprehenderit qui in ea voluptate velit esse quam nihil molestiae -consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla -pariatur? +% \section{Teil 3 +% \label{ellfilter:section:teil3}} +% \rhead{Teil 3} +% Sed ut perspiciatis unde omnis iste natus error sit voluptatem +% accusantium doloremque laudantium, totam rem aperiam, eaque ipsa +% quae ab illo inventore veritatis et quasi architecto beatae vitae +% dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit +% aspernatur aut odit aut fugit, sed quia consequuntur magni dolores +% eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam +% est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci +% velit, sed quia non numquam eius modi tempora incidunt ut labore +% et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima +% veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, +% nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure +% reprehenderit qui in ea voluptate velit esse quam nihil molestiae +% consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla +% pariatur? -\subsection{De finibus bonorum et malorum -\label{ellfilter:subsection:malorum}} -At vero eos et accusamus et iusto odio dignissimos ducimus qui -blanditiis praesentium voluptatum deleniti atque corrupti quos -dolores et quas molestias excepturi sint occaecati cupiditate non -provident, similique sunt in culpa qui officia deserunt mollitia -animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis -est et expedita distinctio. Nam libero tempore, cum soluta nobis -est eligendi optio cumque nihil impedit quo minus id quod maxime -placeat facere possimus, omnis voluptas assumenda est, omnis dolor -repellendus. Temporibus autem quibusdam et aut officiis debitis aut -rerum necessitatibus saepe eveniet ut et voluptates repudiandae -sint et molestiae non recusandae. Itaque earum rerum hic tenetur a -sapiente delectus, ut aut reiciendis voluptatibus maiores alias -consequatur aut perferendis doloribus asperiores repellat. +% \subsection{De finibus bonorum et malorum +% \label{ellfilter:subsection:malorum}} +% At vero eos et accusamus et iusto odio dignissimos ducimus qui +% blanditiis praesentium voluptatum deleniti atque corrupti quos +% dolores et quas molestias excepturi sint occaecati cupiditate non +% provident, similique sunt in culpa qui officia deserunt mollitia +% animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis +% est et expedita distinctio. Nam libero tempore, cum soluta nobis +% est eligendi optio cumque nihil impedit quo minus id quod maxime +% placeat facere possimus, omnis voluptas assumenda est, omnis dolor +% repellendus. Temporibus autem quibusdam et aut officiis debitis aut +% rerum necessitatibus saepe eveniet ut et voluptates repudiandae +% sint et molestiae non recusandae. Itaque earum rerum hic tenetur a +% sapiente delectus, ut aut reiciendis voluptatibus maiores alias +% consequatur aut perferendis doloribus asperiores repellat. diff --git a/buch/papers/ellfilter/tikz/arccos.tikz.tex b/buch/papers/ellfilter/tikz/arccos.tikz.tex new file mode 100644 index 0000000..2bdcc2d --- /dev/null +++ b/buch/papers/ellfilter/tikz/arccos.tikz.tex @@ -0,0 +1,97 @@ +\begin{tikzpicture}[>=stealth', auto, node distance=2cm, scale=1.2] + + + \draw[gray, ->] (0,-2) -- (0,2) node[anchor=south]{Im $z$}; + \draw[gray, ->] (-5,0) -- (5,0) node[anchor=west]{Re $z$}; + + \begin{scope} + \draw[thick, ->, orange] (-1, 0) -- (0,0); + \draw[thick, ->, darkgreen] (0, 0) -- (0,1.5); + \draw[thick, ->, darkgreen] (0, 0) -- (0,-1.5); + \draw[thick, ->, orange] (1, 0) -- (0,0); + \draw[thick, ->, red] (2, 0) -- (1,0); + \draw[thick, ->, blue] (2,1.5) -- (2, 0); + \draw[thick, ->, blue] (2,-1.5) -- (2, 0); + \draw[thick, ->, red] (2, 0) -- (3,0); + + \node[anchor=south west] at (0,1.5) {$\infty$}; + \node[anchor=south west] at (0,-1.5) {$\infty$}; + \node[anchor=south west] at (0,0) {$1$}; + \node[anchor=south] at (1,0) {$0$}; + \node[anchor=south west] at (2,0) {$-1$}; + \node[anchor=south west] at (2,1.5) {$-\infty$}; + \node[anchor=south west] at (2,-1.5) {$-\infty$}; + \node[anchor=south west] at (3,0) {$0$}; + \end{scope} + + \begin{scope}[xshift=4cm] + \draw[thick, ->, orange] (-1, 0) -- (0,0); + \draw[thick, ->, darkgreen] (0, 0) -- (0,1.5); + \draw[thick, ->, darkgreen] (0, 0) -- (0,-1.5); + % \draw[thick, ->, orange] (1, 0) -- (0,0); + % \draw[thick, ->, red] (2, 0) -- (1,0); + % \draw[thick, ->, blue] (2,1.5) -- (2, 0); + % \draw[thick, ->, blue] (2,-1.5) -- (2, 0); + % \draw[thick, ->, red] (2, 0) -- (3,0); + + \node[anchor=south west] at (0,1.5) {$\infty$}; + \node[anchor=south west] at (0,-1.5) {$\infty$}; + \node[anchor=south west] at (0,0) {$1$}; + % \node[anchor=south] at (1,0) {$0$}; + % \node[anchor=south west] at (2,0) {$-1$}; + % \node[anchor=south west] at (2,1.5) {$-\infty$}; + % \node[anchor=south west] at (2,-1.5) {$-\infty$}; + % \node[anchor=south west] at (3,0) {$0$}; + \end{scope} + + \begin{scope}[xshift=-4cm] + % \draw[thick, ->, orange] (-1, 0) -- (0,0); + \draw[thick, ->, darkgreen] (0, 0) -- (0,1.5); + \draw[thick, ->, darkgreen] (0, 0) -- (0,-1.5); + \draw[thick, ->, orange] (1, 0) -- (0,0); + \draw[thick, ->, red] (2, 0) -- (1,0); + \draw[thick, ->, blue] (2,1.5) -- (2, 0); + \draw[thick, ->, blue] (2,-1.5) -- (2, 0); + \draw[thick, ->, red] (2, 0) -- (3,0); + + \node[anchor=south west] at (0,1.5) {$\infty$}; + \node[anchor=south west] at (0,-1.5) {$\infty$}; + \node[anchor=south west] at (0,0) {$1$}; + \node[anchor=south] at (1,0) {$0$}; + \node[anchor=south west] at (2,0) {$-1$}; + \node[anchor=south west] at (2,1.5) {$-\infty$}; + \node[anchor=south west] at (2,-1.5) {$-\infty$}; + \node[anchor=south west] at (3,0) {$0$}; + \end{scope} + + \node[gray, anchor=north west] at (-4,0) {$-2\pi$}; + \node[gray, anchor=north west] at (-2,0) {$-\pi$}; + \node[gray, anchor=north west] at (0,0) {$0$}; + \node[gray, anchor=north west] at (2,0) {$\pi$}; + \node[gray, anchor=north west] at (4,0) {$2\pi$}; + + + \node[gray, anchor=south east] at (0,-1.5) {$-\infty$}; + \node[gray, anchor=south east] at (0, 0) {$0$}; + \node[gray, anchor=south east] at (0, 1.5) {$\infty$}; + + + + \begin{scope}[yshift=-2.5cm] + + \draw[gray, ->] (-5,0) -- (5,0) node[anchor=west]{$w$}; + + \draw[thick, ->, blue] (-4, 0) -- (-2, 0); + \draw[thick, ->, red] (-2, 0) -- (0, 0); + \draw[thick, ->, orange] (0, 0) -- (2, 0); + \draw[thick, ->, darkgreen] (2, 0) -- (4, 0); + + \node[anchor=south] at (-4,0) {$-\infty$}; + \node[anchor=south] at (-2,0) {$-1$}; + \node[anchor=south] at (0,0) {$0$}; + \node[anchor=south] at (2,0) {$1$}; + \node[anchor=south] at (4,0) {$\infty$}; + + \end{scope} + +\end{tikzpicture} \ No newline at end of file diff --git a/buch/papers/ellfilter/tikz/arccos2.tikz.tex b/buch/papers/ellfilter/tikz/arccos2.tikz.tex new file mode 100644 index 0000000..dcf02fd --- /dev/null +++ b/buch/papers/ellfilter/tikz/arccos2.tikz.tex @@ -0,0 +1,46 @@ +\begin{tikzpicture}[>=stealth', auto, node distance=2cm, scale=1.2] + + \tikzstyle{zero} = [draw, circle, inner sep =0, minimum height=0.15cm] + + \tikzset{pole/.style={cross out, draw=black, minimum size=(0.15cm-\pgflinewidth), inner sep=0pt, outer sep=0pt}} + + \begin{scope}[xscale=0.5] + + \draw[gray, ->] (0,-2) -- (0,2) node[anchor=south]{Im $z$}; + \draw[gray, ->] (-10,0) -- (10,0) node[anchor=west]{Re $z$}; + + \begin{scope} + + \draw[>->, line width=0.05, thick, blue] (2, 1.5) -- (2,0.05) -- node[anchor=south, pos=0.5]{$N=1$} (0.1,0.05) -- (0.1,1.5); + \draw[>->, line width=0.05, thick, orange] (4, 1.5) -- (4,0) -- node[anchor=south, pos=0.25]{$N=2$} (0,0) -- (0,1.5); + \draw[>->, line width=0.05, thick, red] (6, 1.5) -- (6,-0.05) -- node[anchor=south, pos=0.1666]{$N=3$} (-0.1,-0.05) -- (-0.1,1.5); + + + \node[zero] at (-7,0) {}; + \node[zero] at (-5,0) {}; + \node[zero] at (-3,0) {}; + \node[zero] at (-1,0) {}; + \node[zero] at (1,0) {}; + \node[zero] at (3,0) {}; + \node[zero] at (5,0) {}; + \node[zero] at (7,0) {}; + + + \end{scope} + + \node[gray, anchor=north] at (-8,0) {$-4\pi$}; + \node[gray, anchor=north] at (-6,0) {$-3\pi$}; + \node[gray, anchor=north] at (-4,0) {$-2\pi$}; + \node[gray, anchor=north] at (-2,0) {$-\pi$}; + \node[gray, anchor=north] at (2,0) {$\pi$}; + \node[gray, anchor=north] at (4,0) {$2\pi$}; + \node[gray, anchor=north] at (6,0) {$3\pi$}; + \node[gray, anchor=north] at (8,0) {$4\pi$}; + + + \node[gray, anchor=east] at (0,-1.5) {$-\infty$}; + \node[gray, anchor=east] at (0, 1.5) {$\infty$}; + + \end{scope} + +\end{tikzpicture} \ No newline at end of file -- cgit v1.2.1 From 5fa246097347d82af591aa186f1b7fe32fbd1cf3 Mon Sep 17 00:00:00 2001 From: Runterer <37069007+Runterer@users.noreply.github.com> Date: Mon, 16 May 2022 15:35:30 +0200 Subject: added tikz -> kudos nic --- buch/papers/zeta/continuation_overview.tikz.tex | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 buch/papers/zeta/continuation_overview.tikz.tex diff --git a/buch/papers/zeta/continuation_overview.tikz.tex b/buch/papers/zeta/continuation_overview.tikz.tex new file mode 100644 index 0000000..03224ff --- /dev/null +++ b/buch/papers/zeta/continuation_overview.tikz.tex @@ -0,0 +1,17 @@ +\begin{tikzpicture}[>=stealth', auto, node distance=0.9cm, scale=2, + dot/.style={fill, circle, inner sep=0, minimum size=0.1cm}] + + \draw[->] (-2,0) -- (-1,0) node[dot]{} node[anchor=north]{$-1$} -- (0,0) node[anchor=north west]{$0$} -- (1,0) node[anchor=north west]{$1$} -- (2,0) node[anchor=west]{Re$(s)$}; + + \draw[->] (0,-1.2) -- (0,1.2) node[anchor=south]{Im$(s)$}; + \begin{scope}[yscale=0.1] + \draw[] (1,-1) -- (1,1); + \end{scope} + + \begin{scope}[] + \fill[opacity=0.2, red] (-1.8,1) rectangle (0, -1); + \fill[opacity=0.2, blue] (0,1) rectangle (1, -1); + \fill[opacity=0.2, green] (1,1) rectangle (1.8, -1); + \end{scope} + +\end{tikzpicture} \ No newline at end of file -- cgit v1.2.1 From d7bff7e403a0e54880cb04b350a91a2f664b2708 Mon Sep 17 00:00:00 2001 From: "ENEZ-PC\\erdem" Date: Mon, 16 May 2022 20:30:44 +0200 Subject: =?UTF-8?q?Ich=20habe=20nun=20alle=20Kapitel=20als=20Textfile=20se?= =?UTF-8?q?perat=20eingef=C3=BCgt,=20einen=20zus=C3=A4tzlichen=20unterordn?= =?UTF-8?q?er=20gemacht=20f=C3=BCr=20die=20bilder,=20dann=20im=20main.tex?= =?UTF-8?q?=20die=20input=20befehle=20angepasst=20und=20committe=20nun.=20?= =?UTF-8?q?Bemerkung:=20Wir=20werden=20diese=20Woche=20noch=20das=202D=20-?= =?UTF-8?q?=20Dreieck=20mit=20einem=20Kugeldreieck=20ersetzen!=20Sonst=20w?= =?UTF-8?q?=C3=A4re=20unsere=20Arbeit=20(=20Bis=20auf=20finishing=20wie=20?= =?UTF-8?q?Rechtschreibung=20und=20Formatierung)=20eigentlich=20fertig.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- buch/papers/nav/bilder/dreieck.png | Bin 0 -> 91703 bytes buch/papers/nav/bilder/kugel1.png | Bin 0 -> 9051 bytes buch/papers/nav/bilder/kugel2.png | Bin 0 -> 9103 bytes buch/papers/nav/bilder/kugel3.png | Bin 0 -> 215188 bytes buch/papers/nav/bilder/projektion.png | Bin 0 -> 41289 bytes buch/papers/nav/einleitung.tex | 17 +++ buch/papers/nav/flatearth.tex | 31 ++++++ buch/papers/nav/geschichte.tex | 22 ++++ buch/papers/nav/main.log | 109 +++++++++++++++++++ buch/papers/nav/main.tex | 29 ++---- buch/papers/nav/nautischesdreieck.tex | 190 ++++++++++++++++++++++++++++++++++ buch/papers/nav/packages.tex | 6 ++ buch/papers/nav/trigo.tex | 51 +++++++++ 13 files changed, 433 insertions(+), 22 deletions(-) create mode 100644 buch/papers/nav/bilder/dreieck.png create mode 100644 buch/papers/nav/bilder/kugel1.png create mode 100644 buch/papers/nav/bilder/kugel2.png create mode 100644 buch/papers/nav/bilder/kugel3.png create mode 100644 buch/papers/nav/bilder/projektion.png create mode 100644 buch/papers/nav/einleitung.tex create mode 100644 buch/papers/nav/flatearth.tex create mode 100644 buch/papers/nav/geschichte.tex create mode 100644 buch/papers/nav/main.log create mode 100644 buch/papers/nav/nautischesdreieck.tex create mode 100644 buch/papers/nav/trigo.tex diff --git a/buch/papers/nav/bilder/dreieck.png b/buch/papers/nav/bilder/dreieck.png new file mode 100644 index 0000000..2b02105 Binary files /dev/null and b/buch/papers/nav/bilder/dreieck.png differ diff --git a/buch/papers/nav/bilder/kugel1.png b/buch/papers/nav/bilder/kugel1.png new file mode 100644 index 0000000..b3188b7 Binary files /dev/null and b/buch/papers/nav/bilder/kugel1.png differ diff --git a/buch/papers/nav/bilder/kugel2.png b/buch/papers/nav/bilder/kugel2.png new file mode 100644 index 0000000..057740f Binary files /dev/null and b/buch/papers/nav/bilder/kugel2.png differ diff --git a/buch/papers/nav/bilder/kugel3.png b/buch/papers/nav/bilder/kugel3.png new file mode 100644 index 0000000..97066a2 Binary files /dev/null and b/buch/papers/nav/bilder/kugel3.png differ diff --git a/buch/papers/nav/bilder/projektion.png b/buch/papers/nav/bilder/projektion.png new file mode 100644 index 0000000..5dcc0c8 Binary files /dev/null and b/buch/papers/nav/bilder/projektion.png differ diff --git a/buch/papers/nav/einleitung.tex b/buch/papers/nav/einleitung.tex new file mode 100644 index 0000000..42f4b6c --- /dev/null +++ b/buch/papers/nav/einleitung.tex @@ -0,0 +1,17 @@ +\documentclass[12pt]{scrartcl} +\usepackage{ucs} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{graphicx} + +\begin{document} +\section{Einleitung} +Heut zu Tage ist die Navigation ein Teil des Lebens. +Man versendet dem Kollegen seinen Standort, um sich das ewige Erklären zu sparen oder gibt die Adresse des Ziels ein um sich die Sucherei zu schenken. +Dies wird durch Technologien wie Funknavigation, welches ein auf Langzeitmessung beruhendes Hyperbelverfahren mit Langwellen ist oder die verbreitete Satellitennavigation, welche vier Satelliten für eine Messung zur Standortbestimmung nutzt. +Vor all diesen technologischen Fortschritten gab es lediglich die Astronavigation, welche heute noch auf kleineren Schiffen benötigt wird im Falle eines Stromausfalls. +Aber wie funktioniert die Navigation mit den Sternen? Welche Hilfsmittel benötigt man, welche Rolle spielt die Mathematik und weshalb kann die Erde nicht flach sein? +In diesem Kapitel werden genau diese Fragen mithilfe des Nautischen Dreiecks, der Sphärischen Trigonometrie und einigen Hilfsmitteln und Messgeräten beantwortet. + + +\end{document} \ No newline at end of file diff --git a/buch/papers/nav/flatearth.tex b/buch/papers/nav/flatearth.tex new file mode 100644 index 0000000..b14dd4b --- /dev/null +++ b/buch/papers/nav/flatearth.tex @@ -0,0 +1,31 @@ +\documentclass[12pt]{scrartcl} +\usepackage{ucs} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{graphicx} + +\begin{document} + \section{Warum ist die Erde nicht flach?} + + \begin{figure}[h] + \begin{center} + \includegraphics[width=10cm]{bilder/projektion.png} + \caption{Mercator Projektion} + \end{center} + \end{figure} + +Es gibt heut zu Tage viele Beweise dafür, dass die Erde eine Kugel ist. +Die Fotos von unserem Planeten oder die Berichte der Astronauten. + Aber schon vor ca. 2300 Jahren hat Aristotoles bemerkt, dass Schiffe im Horizont verschwinden und die einzige Erklärung dafür die Kugelgestalt der Erde ist oder der Erdschatten bei einer Mondfinsternis immer rund ist. + Eratosthenes konnte etwa 100 Jahre später den Erdumfang berechnen. + Er beobachtete, dass die Sonne in Syene mittags im Zenit steht und gleichzeitig in Alexandria unter einem Winkel einfällt. + Mithilfe der Geometrie konnte er mit dem Abstand der Städte und dem Einfallswinkel den Umfang berechnen. + Auch in der Navigation würden grobe Fehler passieren, wenn man davon ausgeht, dass die Erde eine Scheibe ist. +Man sieht es zum Beispiel sehr gut, wenn man die Anwendung Google Earth und eine Weltkarte vergleicht. Grönland ist auf der Weltkarte so gross wie Afrika. +In der Anwendung Google Earth jedoch ist Grönland etwa so gross wie Algerien. +Das liegt daran, das man die 3D – Weltkarte nicht einfach auslegen kann. +Der Kartograph Gerhard Mercator projizierte die Erdkugel auf ein Papier und erstellte so eine winkeltreue Karte. Jedoch wurden die Länder, die einen grösseren Abstand zum Äquator haben vergrössert, damit die Winkel stimmen können. +Wurde man also nun davon ausgehen, dass die Erde flach ist so würden wir nie dort ankommen wo wir es wollen. + + +\end{document} \ No newline at end of file diff --git a/buch/papers/nav/geschichte.tex b/buch/papers/nav/geschichte.tex new file mode 100644 index 0000000..a20eb6d --- /dev/null +++ b/buch/papers/nav/geschichte.tex @@ -0,0 +1,22 @@ +\documentclass[12pt]{scrartcl} +\usepackage{ucs} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{graphicx} + +\begin{document} +\section{Geschichte der sphärischen Navigation} +Die Orientierung mit Hilfe der Sterne und der sphärischen Trigonometrie bewegt die Menschheit schon seit mehreren tausend Jahren. +Nach Hinweisen und Schätzungen von Forscher haben schon vor 4000 Jahren die Ägypter und Gelehrten aus Babylon mit Hilfe der Astronomie den Lauf der Gestirne (Himmelskörper) zu berechnen versucht, jedoch ohne Erfolg. +Etwa 350 vor Christus waren es die Griechen, welche den damaligen Astronomen Hilfestellungen mittels Kugel-Geometrien leisten konnten. +Aus diesen Geometrien wurden erste mathematische Sätze aufgestellt und ein paar Jahrhunderte später kamen zu diesem Thema auch Berechnungen dazu. +Ebenso wurden Kartenmaterial mit Sternenbilder angefertigt. +Die Sinusfunktion war noch nicht bekannt, jedoch kamen zu dieser Zeit die ersten Ansätze der Cosinusfunktion aus Indien. +Von diesen Hilfen darauf aufbauend konnte um 900 die Araber der Sinussatz entwickeln. +Doch ein paar weitere Jahrhunderte vergingen bis zu diesem Thema wieder verstärkt Forschung betrieben wurde. +Dies aus dem Grund, da im 15. Jahrhundert grosse Entdeckungsreisen, hauptsächlich per Schiff, erfolgten und die Orientierung vermehrt an Wichtigkeit gewann. +Auch die Verwendung der Tangens- und Sinusfunktion sowie der neu entwickelte Seitencosinussatz trugen zu einer Verbesserung der Orientierung herbei. +Im 16. Jahrhundert wurde dann ein weiterer trigonometrischer Satz, der Winkelcosinussatz hergeleitet. Stück für Stück wurden infolge der Entdeckung des Logarithmus im 17. Jahrhundert viele neue Methoden entwickelt. +Auch eine Verbesserung der kartographischen Verwendung der Kugelgeometrie wurde vorgenommen. +Es folgten weitere Entwicklungen in nicht euklidische Geometrien und im 19. Jahrhundert sowie auch im 20. Jahrhundert wurde zudem für die Relativitätstheorie auch die sphärische Trigonometrie beigezogen. +\end{document} \ No newline at end of file diff --git a/buch/papers/nav/main.log b/buch/papers/nav/main.log new file mode 100644 index 0000000..d7aa0a9 --- /dev/null +++ b/buch/papers/nav/main.log @@ -0,0 +1,109 @@ +This is pdfTeX, Version 3.141592653-2.6-1.40.24 (MiKTeX 22.3) (preloaded format=pdflatex 2022.4.16) 16 MAY 2022 20:27 +entering extended mode + restricted \write18 enabled. + %&-line parsing enabled. +**./main.tex +(main.tex +LaTeX2e <2021-11-15> patch level 1 +L3 programming layer <2022-02-24> +! Undefined control sequence. +l.6 \chapter + {Thema\label{chapter:nav}} +The control sequence at the end of the top line +of your error message was never \def'ed. If you have +misspelled it (e.g., `\hobx'), type `I' and the correct +spelling (e.g., `I\hbox'). Otherwise just continue, +and I'll forget about whatever was undefined. + + +! LaTeX Error: Missing \begin{document}. + +See the LaTeX manual or LaTeX Companion for explanation. +Type H for immediate help. + ... + +l.6 \chapter{T + hema\label{chapter:nav}} +You're in trouble here. Try typing to proceed. +If that doesn't work, type X to quit. + +Missing character: There is no T in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no a in font nullfont! +! Undefined control sequence. +l.7 \lhead + {Thema} +The control sequence at the end of the top line +of your error message was never \def'ed. If you have +misspelled it (e.g., `\hobx'), type `I' and the correct +spelling (e.g., `I\hbox'). Otherwise just continue, +and I'll forget about whatever was undefined. + +Missing character: There is no T in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no a in font nullfont! + +! LaTeX Error: Environment refsection undefined. + +See the LaTeX manual or LaTeX Companion for explanation. +Type H for immediate help. + ... + +l.8 \begin{refsection} + +Your command was ignored. +Type I to replace it with another command, +or to continue without it. + +! Undefined control sequence. +l.9 \chapterauthor + {Hans Muster} +The control sequence at the end of the top line +of your error message was never \def'ed. If you have +misspelled it (e.g., `\hobx'), type `I' and the correct +spelling (e.g., `I\hbox'). Otherwise just continue, +and I'll forget about whatever was undefined. + +Missing character: There is no H in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no M in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no r in font nullfont! + +Overfull \hbox (20.0pt too wide) in paragraph at lines 6--10 +[][] + [] + + +! LaTeX Error: File `papers/nav/einleitung.tex' not found. + +Type X to quit or to proceed, +or enter new name. (Default extension: tex) + +Enter file name: +! Emergency stop. + + +l.13 \input{papers/nav/einleitung.tex} + ^^M +*** (cannot \read from terminal in nonstop modes) + + +Here is how much of TeX's memory you used: + 22 strings out of 478582 + 530 string characters out of 2856069 + 288951 words of memory out of 3000000 + 18307 multiletter control sequences out of 15000+600000 + 469259 words of font info for 28 fonts, out of 8000000 for 9000 + 1141 hyphenation exceptions out of 8191 + 16i,0n,26p,84b,28s stack positions out of 10000i,1000n,20000p,200000b,80000s +! ==> Fatal error occurred, no output PDF file produced! diff --git a/buch/papers/nav/main.tex b/buch/papers/nav/main.tex index e11e2c0..1ad16da 100644 --- a/buch/papers/nav/main.tex +++ b/buch/papers/nav/main.tex @@ -8,29 +8,14 @@ \begin{refsection} \chapterauthor{Hans Muster} -Ein paar Hinweise für die korrekte Formatierung des Textes -\begin{itemize} -\item -Absätze werden gebildet, indem man eine Leerzeile einfügt. -Die Verwendung von \verb+\\+ ist nur in Tabellen und Arrays gestattet. -\item -Die explizite Platzierung von Bildern ist nicht erlaubt, entsprechende -Optionen werden gelöscht. -Verwenden Sie Labels und Verweise, um auf Bilder hinzuweisen. -\item -Beginnen Sie jeden Satz auf einer neuen Zeile. -Damit ermöglichen Sie dem Versionsverwaltungssysteme, Änderungen -in verschiedenen Sätzen von verschiedenen Autoren ohne Konflikt -anzuwenden. -\item -Bilden Sie auch für Formeln kurze Zeilen, einerseits der besseren -Übersicht wegen, aber auch um GIT die Arbeit zu erleichtern. -\end{itemize} -\input{papers/nav/teil0.tex} -\input{papers/nav/teil1.tex} -\input{papers/nav/teil2.tex} -\input{papers/nav/teil3.tex} + +\input{papers/nav/einleitung.tex} +\input{papers/nav/geschichte.tex} +\input{papers/nav/flatearth.tex} +\input{papers/nav/trigo.tex} +\input{papers/nav/nautischesdreieck.tex} + \printbibliography[heading=subbibliography] \end{refsection} diff --git a/buch/papers/nav/nautischesdreieck.tex b/buch/papers/nav/nautischesdreieck.tex new file mode 100644 index 0000000..0bb213c --- /dev/null +++ b/buch/papers/nav/nautischesdreieck.tex @@ -0,0 +1,190 @@ +\documentclass[12pt]{scrartcl} +\usepackage{ucs} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{graphicx} + \usepackage{xcolor, soul} + \sethlcolor{yellow} +\begin{document} + \setlength{\parindent}{0em} +\section{Das Nautische Dreieck} +\subsection{Definition des Nautischen Dreiecks} +Ursprünglich ist das nautische Dreieck ein Hilfsmittel der sphärischen Astronomie um die momentane Position eines Fixsterns oder Planeten an der \textbf{Himmelskugel}. +Die Himmelskugel ist eine gedachte Kugel, welche die Erde und dessen Beobachter umgibt und als Rechenfläche für Koordinaten in der Astronomie und Geodäsie dient.\\ +Das Nautische Dreieck definiert sich durch folgende Ecken: +\begin{itemize} + \item Zenit + \item Gestirn + \item Himmelspol +\end{itemize} +Der Zenit ist jener Punkt, der vom Erdmittelpunkt durch denn eigenen Standort an die Himmelskugel verlängert wird. +Ein Gestirn ist ein Planet oder ein Fixstern, zu welchen es diverse Jahrbücher mit allen astronomischen Eigenschaften gibt. +Der Himmelspol ist der Nordpol an die Himmelskugel projeziert. +\\ +Zur Anwendung der Formeln der sphärischen Trigonometrie gelten folgende einfache Zusammenhänge: +\begin{itemize} + \item Seitenlänge Zenit zu Himmelspol $= \frac{\pi}{2} - \phi $ + \item Seitenlänge Himmelspol zu Gestirn $= \frac{\pi}{2} - \delta$ + \item Seitenlänge Zenit zu Gestirn $= \frac{\pi}{2} - h$ + \item Winkel von Zenit zu Himmelsnordpol zu Gestirn$=\pi - \alpha$ + \item Winkel von Himmelsnordpol zu Zenit und Gestirn$= \tau$ +\end{itemize} +Um mit diesen Zusammenhängen zu rechnen benötigt man folgende Legende: + +$\alpha \ \widehat{=} \ Rektaszension $ + +$\delta \ \widehat{=} \ Deklination =$ Breitengrad des Gestirns + +$\theta \ \widehat{=} \ Sternzeit$ + +$\phi \ \widehat{=} \ Geographische \ Breite $ + +$\tau = \theta-\alpha \ \widehat{=} \ Stundenwinkel =$ Längengrad des Gestirns + +$a \ \widehat{=} \ Azimut $ + +$h \ \widehat{=} \ Hoehe$ + + + +\subsection{Zusammenhang des Nautischen Dreiecks und des Kugeldreiecks auf der Erdkugel} + + \begin{center} + \includegraphics[height=5cm,width=5cm]{Bilder/kugel3.png} + \end{center} +Wie man im oberen Bild sieht und auch am Anfang dieses Kapitels bereits erwähnt wurde, liegt das Nautische Dreieck auf der Himmelskugel mit den Ecken Zenit, Gestirn und Himmelsnordpol. +Das selbe Dreieck kann man aber auch auf die Erdkugel projezieren und hat dann die Ecken Standort, Bildpunkt und Nordpol. +Als Bildpunkt wird in der astronomischen Navigation der Punkt bezeichnet, an dem eine gedachte Linie vom Mittelpunkt eines beobachteten Gestirns zum Mittelpunkt der Erde die Erdoberfläche schneidet. + +\subsection{Varianten vom Nautischen Dreieck} +\section{Standortbestimmung ohne elektronische Hilfsmittel} +Um den eigenen Standort herauszufinden, wird in diesem Kapitel die Projektion Nautische Dreieck auf der Erdkugel zur Hilfe genommen. +Mithilfe einiger Hilfsmittel und der Sphärischen Trigonometrie kann man dann die Längen- und Breitengrade des eigenen Standortes bestimmen. + + \begin{center} + \includegraphics[width=6cm]{Bilder/dreieck.png} + \end{center} + + + +\subsection{Ecke P - Unser Standort} +Unser eigener Standort ist der gesuchte Punkt A. + +\subsection{Ecke A - Nordpol} +Der Vorteil ander Idee des Nautischen Dreiecks ist, dass eine Ecke immer der Nordpol (in der Himmelskugel der Himmelsnordpol) ist. +Somit ist diese Ecke immer bekannt und nur deswegen sind die Zusammenhänge von Rektaszension, Sternzeit und Deklination so simpel. + +\subsection{Ecke B und C - Bildpunkt XXX und YYY} +Für die Standortermittlung benötigt man als weiteren Punkt ein Gestirn bzw. seinen Bildpunkt auf der Erdkugel. +Damit das trigonometrische Rechnen einfacher wird, werden hier zwei Gestirne zur Hilfe genommen. +\\ +Es gibt diverse Gestirne, die man nutzen kann. +\begin{itemize} + \item Sonne + \item Mond + \item Die vier Navigationsplaneten Venus, Mars, Jupiter und Saturn +\end{itemize} + +Zu all diesen Gestirnen gibt es Ephemeriden (Jahrbücher). +Dort findet man unter Anderem die Rektaszension und Deklination, welche für jeden Tag und Stunde beschrieben ist. Für Minuten genaue Angaben muss man dann zwischen den Stunden interpolieren. +Mithilfe dieser beiden Angaben kann man die Längen- und Breitengrade diverser Gestirne berechnen. + +\subsubsection{Sternzeit und Rektaszension} +Die Rektaszension $\alpha$ gibt an, in welchem Winkel das Gestirn zum Frühlingspunkt steht. +Der Frühlungspunkt ist der Nullpunkt auf dem Himmelsäquator. +Die Tatsache, dass sich die Himmelskugel ca. vier Minuten schneller um die eigene Achse dreht als die Erdkugel, stellt hier ein kleines Problem dar. +Die Lösung ist die Sternzeit. +Am Frühlingspunkt (21. März) 12:00 Uhr ist die Sternzeit +$\theta = 0$. + +Die Sternzeit geht vom Frühlungspunkt aus, an welchem die Sonne den Himmelsäquator schneidet. +Für die Standortermittlung auf der Erdkugel ist es am einfachsten, wenn man die Sternzeit von Greenwich berechnet. +Für die Sternzeit von Greenwich braucht man als erstes das Julianische Datum vom aktuellen Tag, welches sich leicht recherchieren oder berechnen lässt: \hl{$JD=....$} + +Nun berechnet man $T=\frac{JD-2451545}{36525}$ und damit die mittlere Sternzeit von Greenwich + + $T_{Greenwich} = 6^h 41^m 50^s,54841 + 8640184^s,812866 * T + 0^s,093104*T^2 - 0^s,0000062 * T^3$. + + Wenn mann die Sternzeit von Greenwich ausgerechnet hat, kann man den Längengrad des Gestirns $\lambda = \theta - \alpha$ mithilfe der Rektaszension und Sternzeit bestimmen. + Dies gilt analog auch für das zweite Gestirn. + + \subsubsection{Deklination} + Die Deklination $\delta$ beschreibt den Winkel zwischen dem Himmelsäquator und Gestirn und ergibt schlussendlich den Breitengrad $\psi = \delta$. + + + +\subsection{Bestimmung des eigenen Standortes P} +Nun hat man die Koordinaten der beiden Gestirne und man weiss die Koordinaten des Nordpols. +Somit können wir ein erstes Kugeldreieck auf der Erde aufspannen. + + + \begin{center} + \includegraphics[width=5cm]{Bilder/dreieck.png} + \end{center} + + +\subsubsection{Bestimmung des ersten Dreiecks} + Mithilfe des sphärischen Trigonometrie und den darausfolgenden Zusammenhängen des Nautischen Dreiecks können wir nun alle Seiten des Dreiecks $ABC$ berechnen. + + Die Seitenlänge der Seite "Nordpol zum Bildpunkt XXX" sei $c$. + Dann ist $c = \frac{\pi}{2} - \delta_1$. + + Die Seitenlänge der Seite "Nordpol zum Bildpunkt YYY" sei $b$. + Dann ist $b = \frac{\pi}{2} - \delta_2$. + + Der Innenwinkel beim der Ecke "Nordpol" sei $\alpha$. + Dann ist $ \alpha = |\lambda_1 - \lambda_2|$. + +mit + + $\delta_1 =$ Deklination Bildpunkt XXX + +$\delta_2 =$ Deklination Bildpunk YYY + +$\lambda_1 =$ Längengrad Bildpunkt XXX + +$\lambda_2 =$ Längengrad Bildpunkt YYY + + Wichtig ist: Die Differenz der Längengrade ist gleich der Innenwinkel Alpha, deswegen der Betrag! + +Nun haben wir die beiden Seiten $c\ und\ b$ und den Winkel $\alpha$, der sich zwischen diesen Seiten befindet. +Mithilfe des Seiten-Kosinussatzes $cos(a) = cos(b)*cos(c) + sin(b) * sin(c)*cos(\alpha)$ können wir nun die dritte Seitenlänge bestimmen. +Es ist darauf zu achten, dass hier natürlich die Seitenlängen in Bogenmass sind und dementsprechend der Kosinus und Sinus verwendet wird. +Jetzt fehlen noch die beiden anderen Innenwinkel $\beta \ und\ \gamma$. + +Dieser bestimmen wir mithilfe des Sinussatzes $\frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)}$. +Hier muss man aufpassen, dass man Seite von Winkel unterscheiden kann. Im Zähler sind die Seiten, im Nenner die Winkel. Somit ist $sin(\beta) = sin(b) * \frac{sin(\alpha)}{sin(a)} $. + +Schlussendlich haben wir die Seiten $a,b\ und \ c$, die Ecken A,B und C und die Winkel $\alpha, \beta \ und \ \gamma$ bestimmt und somit das ganze erste Kugeldreieck berechnet. + +\subsubsection{Bestimmung des zweiten Dreiecks} +Wir bilden nun ein zweites Dreieck, welches die Ecken B und C des ersten Dreiecks besitzt. +Die dritte Ecke ist der eigene Standort P. +Unser Standort definiere sich aus einer geographischen Breite $\delta$ und einer geographischen Länge $\lambda$. + +Die Seite von P zu B sei $pb$ und die Seite von P zu C sei $pc$. +Die beiden Seitenlängen kann man mit dem Sextant messen und durch eine einfache Formel bestimmen, nämlich $pb=\frac{\pi}{2} - h_{B}$ und $pc=\frac{\pi}{2} - h_{C}$ + +mit $h_B=$ Höhe von Gestirn in B und $h_C=$ Höhe von Gestirn in C mit Sextant gemessen. +\\ + +Nun muss man eine Verbindungslinie ziehen zwischen P und A. Die Länge $l$ dieser Linie entspricht der gesuchten geographischen Breite $\delta$. Diese lässt sich mithilfe des Dreiecks $ABP$ mit den bekannten Seiten $c\ und \ pb$ und des Seiten-Kosinussatzes + +$cos(l) = cos(c)*cos(pb) + sin(c) * sin(pb)*cos(\beta)$ berechnen. + +Es fehlt uns noch $\beta1$. +Da wir aber $pc$, $pb$ und $a$ kennen, kann man mit dem Seiten-Kosinussatz den Winkel $\beta1$ berechnen +\\ + +Somit ist $\delta = cos(l) = cos(c)*cos(pb) + sin(c) * sin(pb)*cos(\beta)$. +\\ + +Für die Geographische Länge $\lambda$ des eigenen Standortes muss man den Winkel $\omega$, welcher sich im Dreieck $ABP$ în der Ecke bei $A$ befindet mithilfe des Sinussatzes $\frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)}$ bestimmen. +\\ + +Somit ist $\omega=sin(pb)*\frac{sin(\beta)}{sin(l)}$ und unsere gesuchte geographische Länge schlussendlich +$\lambda=\lambda_1 - \omega$ + + + +\end{document} \ No newline at end of file diff --git a/buch/papers/nav/packages.tex b/buch/papers/nav/packages.tex index 9faa48d..15c7fdc 100644 --- a/buch/papers/nav/packages.tex +++ b/buch/papers/nav/packages.tex @@ -8,3 +8,9 @@ % following example %\usepackage{packagename} +\documentclass[12pt]{scrartcl} +\usepackage{ucs} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{graphicx} +\usepackage{xcolor, soul} diff --git a/buch/papers/nav/trigo.tex b/buch/papers/nav/trigo.tex new file mode 100644 index 0000000..0dbd7a1 --- /dev/null +++ b/buch/papers/nav/trigo.tex @@ -0,0 +1,51 @@ +\documentclass[12pt]{scrartcl} +\usepackage{ucs} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{graphicx} + + +\begin{document} + \section{Sphärische Trigonometrie} + \subsection{Das Kugeldreieck} + +Werden drei voneinander verschiedene Punkte, die sich nicht auf derselben Grosskreisebene befinden, mit Grosskreisbögen verbunden, so entsteht ein Kugeldreieck ABC. +A, B und C sind die Ecken des Dreiecks und dessen Seiten sind die Grosskreisbögen zwischen den Eckpunkten. +Da die Länge der Grosskreisbögen wegen der Abhängigkeit vom Kugelradius ungeeignet ist, wird die Grösse einer Seite mit dem zugehörigen Mittelpunktwinkel des Grosskreisbogens angegeben. +Laut dieser Definition ist die Seite c der Winkel AMB. +Für ein Kugeldreieck gilt, dass die Summe der drei Seiten kleiner als $2\pi$ aber grösser als 0 ist. +Man kann bei Kugeldreiecken nicht so einfach unterscheiden, was Innen oder Aussen ist. +Wenn man drei Eckpunkte miteinander verbindet, ergeben sich immer 16 Kugeldreiecke. +Jenes Kugeldreieck mit den Seitenlängen $a, b, c < \pi$ und den Winkeln $\alpha, \beta, \gamma < \pi$ nennt man Eulersche Dreiecke. +\begin{figure}[h] + \begin{center} + \includegraphics[width=6cm]{Bilder/kugel1.png} + \end{center} + +\end{figure} + +\subsection{Rechtwinkliges Dreieck und Rechtseitiges Dreieck} +Wie auch im uns bekannten Dreieck gibt es beim Kugeldreieck auch ein Rechtwinkliges Kugeldreieck, bei dem ein Winkel $\frac{\pi}{2}$ ist. +Ein Rechtseitiges Dreieck gibt es jedoch nur beim Kugeldreieck, weil dort eine Seitenlänge $\frac{\pi}{2}$ lang sein muss. + \newpage +\subsection{Winkelangabe} + + \begin{center} + \includegraphics[width=8cm]{Bilder/kugel2.png} + \end{center} + +Die Winkel eines Kugeldreiecks sind die, welche die Halbtangenten in den Eckpunkten einschliessen. +Für die Summe der Innenwinkel gilt $\alpha+\beta+\gamma = \frac{A}{r^2} + \pi$ und +$\alpha+\beta+\gamma > \pi$. +Der sphärische Exzess $\epsilon = \alpha+\beta+\gamma - \pi$ beschreibt die Abweichung der Innenwinkelsumme von $\pi$ und ist proportional zum Flächeninhalt des Kugeldreiecks. + +\subsection{Sphärischer Sinussatz} +In jedem Dreieck ist das Verhältnis des Sinus einer Seite zum Sinus des Gegenwinkels konstant. +Das bedeutet, dass $\frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)} $ auch beim Kugeldreieck gilt. + +\subsection{Sphärischer Satz des Pythagoras für das rechtwinklige Kugeldreieck} +Es gibt in der sphärischen Trigonometrie eigentlich garkeinen "Satz des Pythagoras", wie man ihn aus der zweidimensionalen Geometrie kennt. +In der sphärischen Trigonometrie gibt es aber auch einen Satz, der alle drei Seiten eines rechtwinkligen Kugeldreiecks in eine Beziehung bringt. +Es gilt nämlich: $\cos c = \cos a * \cos b$ wenn $\alpha \lor \beta \lor \gamma = \frac{\pi}{2} $. + +\end{document} \ No newline at end of file -- cgit v1.2.1 From e898a9c36fb707474ee869f6ec47119d0592e59f Mon Sep 17 00:00:00 2001 From: "ENEZ-PC\\erdem" Date: Mon, 16 May 2022 20:32:38 +0200 Subject: =?UTF-8?q?Revert=20"Ich=20habe=20nun=20alle=20Kapitel=20als=20Tex?= =?UTF-8?q?tfile=20seperat=20eingef=C3=BCgt,=20einen=20zus=C3=A4tzlichen?= =?UTF-8?q?=20unterordner=20gemacht=20f=C3=BCr=20die=20bilder,=20dann=20im?= =?UTF-8?q?=20main.tex=20die=20input=20befehle=20angepasst=20und=20committ?= =?UTF-8?q?e=20nun."?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit d7bff7e403a0e54880cb04b350a91a2f664b2708. --- buch/papers/nav/bilder/dreieck.png | Bin 91703 -> 0 bytes buch/papers/nav/bilder/kugel1.png | Bin 9051 -> 0 bytes buch/papers/nav/bilder/kugel2.png | Bin 9103 -> 0 bytes buch/papers/nav/bilder/kugel3.png | Bin 215188 -> 0 bytes buch/papers/nav/bilder/projektion.png | Bin 41289 -> 0 bytes buch/papers/nav/einleitung.tex | 17 --- buch/papers/nav/flatearth.tex | 31 ------ buch/papers/nav/geschichte.tex | 22 ---- buch/papers/nav/main.log | 109 ------------------- buch/papers/nav/main.tex | 29 ++++-- buch/papers/nav/nautischesdreieck.tex | 190 ---------------------------------- buch/papers/nav/packages.tex | 6 -- buch/papers/nav/trigo.tex | 51 --------- 13 files changed, 22 insertions(+), 433 deletions(-) delete mode 100644 buch/papers/nav/bilder/dreieck.png delete mode 100644 buch/papers/nav/bilder/kugel1.png delete mode 100644 buch/papers/nav/bilder/kugel2.png delete mode 100644 buch/papers/nav/bilder/kugel3.png delete mode 100644 buch/papers/nav/bilder/projektion.png delete mode 100644 buch/papers/nav/einleitung.tex delete mode 100644 buch/papers/nav/flatearth.tex delete mode 100644 buch/papers/nav/geschichte.tex delete mode 100644 buch/papers/nav/main.log delete mode 100644 buch/papers/nav/nautischesdreieck.tex delete mode 100644 buch/papers/nav/trigo.tex diff --git a/buch/papers/nav/bilder/dreieck.png b/buch/papers/nav/bilder/dreieck.png deleted file mode 100644 index 2b02105..0000000 Binary files a/buch/papers/nav/bilder/dreieck.png and /dev/null differ diff --git a/buch/papers/nav/bilder/kugel1.png b/buch/papers/nav/bilder/kugel1.png deleted file mode 100644 index b3188b7..0000000 Binary files a/buch/papers/nav/bilder/kugel1.png and /dev/null differ diff --git a/buch/papers/nav/bilder/kugel2.png b/buch/papers/nav/bilder/kugel2.png deleted file mode 100644 index 057740f..0000000 Binary files a/buch/papers/nav/bilder/kugel2.png and /dev/null differ diff --git a/buch/papers/nav/bilder/kugel3.png b/buch/papers/nav/bilder/kugel3.png deleted file mode 100644 index 97066a2..0000000 Binary files a/buch/papers/nav/bilder/kugel3.png and /dev/null differ diff --git a/buch/papers/nav/bilder/projektion.png b/buch/papers/nav/bilder/projektion.png deleted file mode 100644 index 5dcc0c8..0000000 Binary files a/buch/papers/nav/bilder/projektion.png and /dev/null differ diff --git a/buch/papers/nav/einleitung.tex b/buch/papers/nav/einleitung.tex deleted file mode 100644 index 42f4b6c..0000000 --- a/buch/papers/nav/einleitung.tex +++ /dev/null @@ -1,17 +0,0 @@ -\documentclass[12pt]{scrartcl} -\usepackage{ucs} -\usepackage[utf8]{inputenc} -\usepackage[T1]{fontenc} -\usepackage{graphicx} - -\begin{document} -\section{Einleitung} -Heut zu Tage ist die Navigation ein Teil des Lebens. -Man versendet dem Kollegen seinen Standort, um sich das ewige Erklären zu sparen oder gibt die Adresse des Ziels ein um sich die Sucherei zu schenken. -Dies wird durch Technologien wie Funknavigation, welches ein auf Langzeitmessung beruhendes Hyperbelverfahren mit Langwellen ist oder die verbreitete Satellitennavigation, welche vier Satelliten für eine Messung zur Standortbestimmung nutzt. -Vor all diesen technologischen Fortschritten gab es lediglich die Astronavigation, welche heute noch auf kleineren Schiffen benötigt wird im Falle eines Stromausfalls. -Aber wie funktioniert die Navigation mit den Sternen? Welche Hilfsmittel benötigt man, welche Rolle spielt die Mathematik und weshalb kann die Erde nicht flach sein? -In diesem Kapitel werden genau diese Fragen mithilfe des Nautischen Dreiecks, der Sphärischen Trigonometrie und einigen Hilfsmitteln und Messgeräten beantwortet. - - -\end{document} \ No newline at end of file diff --git a/buch/papers/nav/flatearth.tex b/buch/papers/nav/flatearth.tex deleted file mode 100644 index b14dd4b..0000000 --- a/buch/papers/nav/flatearth.tex +++ /dev/null @@ -1,31 +0,0 @@ -\documentclass[12pt]{scrartcl} -\usepackage{ucs} -\usepackage[utf8]{inputenc} -\usepackage[T1]{fontenc} -\usepackage{graphicx} - -\begin{document} - \section{Warum ist die Erde nicht flach?} - - \begin{figure}[h] - \begin{center} - \includegraphics[width=10cm]{bilder/projektion.png} - \caption{Mercator Projektion} - \end{center} - \end{figure} - -Es gibt heut zu Tage viele Beweise dafür, dass die Erde eine Kugel ist. -Die Fotos von unserem Planeten oder die Berichte der Astronauten. - Aber schon vor ca. 2300 Jahren hat Aristotoles bemerkt, dass Schiffe im Horizont verschwinden und die einzige Erklärung dafür die Kugelgestalt der Erde ist oder der Erdschatten bei einer Mondfinsternis immer rund ist. - Eratosthenes konnte etwa 100 Jahre später den Erdumfang berechnen. - Er beobachtete, dass die Sonne in Syene mittags im Zenit steht und gleichzeitig in Alexandria unter einem Winkel einfällt. - Mithilfe der Geometrie konnte er mit dem Abstand der Städte und dem Einfallswinkel den Umfang berechnen. - Auch in der Navigation würden grobe Fehler passieren, wenn man davon ausgeht, dass die Erde eine Scheibe ist. -Man sieht es zum Beispiel sehr gut, wenn man die Anwendung Google Earth und eine Weltkarte vergleicht. Grönland ist auf der Weltkarte so gross wie Afrika. -In der Anwendung Google Earth jedoch ist Grönland etwa so gross wie Algerien. -Das liegt daran, das man die 3D – Weltkarte nicht einfach auslegen kann. -Der Kartograph Gerhard Mercator projizierte die Erdkugel auf ein Papier und erstellte so eine winkeltreue Karte. Jedoch wurden die Länder, die einen grösseren Abstand zum Äquator haben vergrössert, damit die Winkel stimmen können. -Wurde man also nun davon ausgehen, dass die Erde flach ist so würden wir nie dort ankommen wo wir es wollen. - - -\end{document} \ No newline at end of file diff --git a/buch/papers/nav/geschichte.tex b/buch/papers/nav/geschichte.tex deleted file mode 100644 index a20eb6d..0000000 --- a/buch/papers/nav/geschichte.tex +++ /dev/null @@ -1,22 +0,0 @@ -\documentclass[12pt]{scrartcl} -\usepackage{ucs} -\usepackage[utf8]{inputenc} -\usepackage[T1]{fontenc} -\usepackage{graphicx} - -\begin{document} -\section{Geschichte der sphärischen Navigation} -Die Orientierung mit Hilfe der Sterne und der sphärischen Trigonometrie bewegt die Menschheit schon seit mehreren tausend Jahren. -Nach Hinweisen und Schätzungen von Forscher haben schon vor 4000 Jahren die Ägypter und Gelehrten aus Babylon mit Hilfe der Astronomie den Lauf der Gestirne (Himmelskörper) zu berechnen versucht, jedoch ohne Erfolg. -Etwa 350 vor Christus waren es die Griechen, welche den damaligen Astronomen Hilfestellungen mittels Kugel-Geometrien leisten konnten. -Aus diesen Geometrien wurden erste mathematische Sätze aufgestellt und ein paar Jahrhunderte später kamen zu diesem Thema auch Berechnungen dazu. -Ebenso wurden Kartenmaterial mit Sternenbilder angefertigt. -Die Sinusfunktion war noch nicht bekannt, jedoch kamen zu dieser Zeit die ersten Ansätze der Cosinusfunktion aus Indien. -Von diesen Hilfen darauf aufbauend konnte um 900 die Araber der Sinussatz entwickeln. -Doch ein paar weitere Jahrhunderte vergingen bis zu diesem Thema wieder verstärkt Forschung betrieben wurde. -Dies aus dem Grund, da im 15. Jahrhundert grosse Entdeckungsreisen, hauptsächlich per Schiff, erfolgten und die Orientierung vermehrt an Wichtigkeit gewann. -Auch die Verwendung der Tangens- und Sinusfunktion sowie der neu entwickelte Seitencosinussatz trugen zu einer Verbesserung der Orientierung herbei. -Im 16. Jahrhundert wurde dann ein weiterer trigonometrischer Satz, der Winkelcosinussatz hergeleitet. Stück für Stück wurden infolge der Entdeckung des Logarithmus im 17. Jahrhundert viele neue Methoden entwickelt. -Auch eine Verbesserung der kartographischen Verwendung der Kugelgeometrie wurde vorgenommen. -Es folgten weitere Entwicklungen in nicht euklidische Geometrien und im 19. Jahrhundert sowie auch im 20. Jahrhundert wurde zudem für die Relativitätstheorie auch die sphärische Trigonometrie beigezogen. -\end{document} \ No newline at end of file diff --git a/buch/papers/nav/main.log b/buch/papers/nav/main.log deleted file mode 100644 index d7aa0a9..0000000 --- a/buch/papers/nav/main.log +++ /dev/null @@ -1,109 +0,0 @@ -This is pdfTeX, Version 3.141592653-2.6-1.40.24 (MiKTeX 22.3) (preloaded format=pdflatex 2022.4.16) 16 MAY 2022 20:27 -entering extended mode - restricted \write18 enabled. - %&-line parsing enabled. -**./main.tex -(main.tex -LaTeX2e <2021-11-15> patch level 1 -L3 programming layer <2022-02-24> -! Undefined control sequence. -l.6 \chapter - {Thema\label{chapter:nav}} -The control sequence at the end of the top line -of your error message was never \def'ed. If you have -misspelled it (e.g., `\hobx'), type `I' and the correct -spelling (e.g., `I\hbox'). Otherwise just continue, -and I'll forget about whatever was undefined. - - -! LaTeX Error: Missing \begin{document}. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.6 \chapter{T - hema\label{chapter:nav}} -You're in trouble here. Try typing to proceed. -If that doesn't work, type X to quit. - -Missing character: There is no T in font nullfont! -Missing character: There is no h in font nullfont! -Missing character: There is no e in font nullfont! -Missing character: There is no m in font nullfont! -Missing character: There is no a in font nullfont! -! Undefined control sequence. -l.7 \lhead - {Thema} -The control sequence at the end of the top line -of your error message was never \def'ed. If you have -misspelled it (e.g., `\hobx'), type `I' and the correct -spelling (e.g., `I\hbox'). Otherwise just continue, -and I'll forget about whatever was undefined. - -Missing character: There is no T in font nullfont! -Missing character: There is no h in font nullfont! -Missing character: There is no e in font nullfont! -Missing character: There is no m in font nullfont! -Missing character: There is no a in font nullfont! - -! LaTeX Error: Environment refsection undefined. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.8 \begin{refsection} - -Your command was ignored. -Type I to replace it with another command, -or to continue without it. - -! Undefined control sequence. -l.9 \chapterauthor - {Hans Muster} -The control sequence at the end of the top line -of your error message was never \def'ed. If you have -misspelled it (e.g., `\hobx'), type `I' and the correct -spelling (e.g., `I\hbox'). Otherwise just continue, -and I'll forget about whatever was undefined. - -Missing character: There is no H in font nullfont! -Missing character: There is no a in font nullfont! -Missing character: There is no n in font nullfont! -Missing character: There is no s in font nullfont! -Missing character: There is no M in font nullfont! -Missing character: There is no u in font nullfont! -Missing character: There is no s in font nullfont! -Missing character: There is no t in font nullfont! -Missing character: There is no e in font nullfont! -Missing character: There is no r in font nullfont! - -Overfull \hbox (20.0pt too wide) in paragraph at lines 6--10 -[][] - [] - - -! LaTeX Error: File `papers/nav/einleitung.tex' not found. - -Type X to quit or to proceed, -or enter new name. (Default extension: tex) - -Enter file name: -! Emergency stop. - - -l.13 \input{papers/nav/einleitung.tex} - ^^M -*** (cannot \read from terminal in nonstop modes) - - -Here is how much of TeX's memory you used: - 22 strings out of 478582 - 530 string characters out of 2856069 - 288951 words of memory out of 3000000 - 18307 multiletter control sequences out of 15000+600000 - 469259 words of font info for 28 fonts, out of 8000000 for 9000 - 1141 hyphenation exceptions out of 8191 - 16i,0n,26p,84b,28s stack positions out of 10000i,1000n,20000p,200000b,80000s -! ==> Fatal error occurred, no output PDF file produced! diff --git a/buch/papers/nav/main.tex b/buch/papers/nav/main.tex index 1ad16da..e11e2c0 100644 --- a/buch/papers/nav/main.tex +++ b/buch/papers/nav/main.tex @@ -8,14 +8,29 @@ \begin{refsection} \chapterauthor{Hans Muster} +Ein paar Hinweise für die korrekte Formatierung des Textes +\begin{itemize} +\item +Absätze werden gebildet, indem man eine Leerzeile einfügt. +Die Verwendung von \verb+\\+ ist nur in Tabellen und Arrays gestattet. +\item +Die explizite Platzierung von Bildern ist nicht erlaubt, entsprechende +Optionen werden gelöscht. +Verwenden Sie Labels und Verweise, um auf Bilder hinzuweisen. +\item +Beginnen Sie jeden Satz auf einer neuen Zeile. +Damit ermöglichen Sie dem Versionsverwaltungssysteme, Änderungen +in verschiedenen Sätzen von verschiedenen Autoren ohne Konflikt +anzuwenden. +\item +Bilden Sie auch für Formeln kurze Zeilen, einerseits der besseren +Übersicht wegen, aber auch um GIT die Arbeit zu erleichtern. +\end{itemize} - -\input{papers/nav/einleitung.tex} -\input{papers/nav/geschichte.tex} -\input{papers/nav/flatearth.tex} -\input{papers/nav/trigo.tex} -\input{papers/nav/nautischesdreieck.tex} - +\input{papers/nav/teil0.tex} +\input{papers/nav/teil1.tex} +\input{papers/nav/teil2.tex} +\input{papers/nav/teil3.tex} \printbibliography[heading=subbibliography] \end{refsection} diff --git a/buch/papers/nav/nautischesdreieck.tex b/buch/papers/nav/nautischesdreieck.tex deleted file mode 100644 index 0bb213c..0000000 --- a/buch/papers/nav/nautischesdreieck.tex +++ /dev/null @@ -1,190 +0,0 @@ -\documentclass[12pt]{scrartcl} -\usepackage{ucs} -\usepackage[utf8]{inputenc} -\usepackage[T1]{fontenc} -\usepackage{graphicx} - \usepackage{xcolor, soul} - \sethlcolor{yellow} -\begin{document} - \setlength{\parindent}{0em} -\section{Das Nautische Dreieck} -\subsection{Definition des Nautischen Dreiecks} -Ursprünglich ist das nautische Dreieck ein Hilfsmittel der sphärischen Astronomie um die momentane Position eines Fixsterns oder Planeten an der \textbf{Himmelskugel}. -Die Himmelskugel ist eine gedachte Kugel, welche die Erde und dessen Beobachter umgibt und als Rechenfläche für Koordinaten in der Astronomie und Geodäsie dient.\\ -Das Nautische Dreieck definiert sich durch folgende Ecken: -\begin{itemize} - \item Zenit - \item Gestirn - \item Himmelspol -\end{itemize} -Der Zenit ist jener Punkt, der vom Erdmittelpunkt durch denn eigenen Standort an die Himmelskugel verlängert wird. -Ein Gestirn ist ein Planet oder ein Fixstern, zu welchen es diverse Jahrbücher mit allen astronomischen Eigenschaften gibt. -Der Himmelspol ist der Nordpol an die Himmelskugel projeziert. -\\ -Zur Anwendung der Formeln der sphärischen Trigonometrie gelten folgende einfache Zusammenhänge: -\begin{itemize} - \item Seitenlänge Zenit zu Himmelspol $= \frac{\pi}{2} - \phi $ - \item Seitenlänge Himmelspol zu Gestirn $= \frac{\pi}{2} - \delta$ - \item Seitenlänge Zenit zu Gestirn $= \frac{\pi}{2} - h$ - \item Winkel von Zenit zu Himmelsnordpol zu Gestirn$=\pi - \alpha$ - \item Winkel von Himmelsnordpol zu Zenit und Gestirn$= \tau$ -\end{itemize} -Um mit diesen Zusammenhängen zu rechnen benötigt man folgende Legende: - -$\alpha \ \widehat{=} \ Rektaszension $ - -$\delta \ \widehat{=} \ Deklination =$ Breitengrad des Gestirns - -$\theta \ \widehat{=} \ Sternzeit$ - -$\phi \ \widehat{=} \ Geographische \ Breite $ - -$\tau = \theta-\alpha \ \widehat{=} \ Stundenwinkel =$ Längengrad des Gestirns - -$a \ \widehat{=} \ Azimut $ - -$h \ \widehat{=} \ Hoehe$ - - - -\subsection{Zusammenhang des Nautischen Dreiecks und des Kugeldreiecks auf der Erdkugel} - - \begin{center} - \includegraphics[height=5cm,width=5cm]{Bilder/kugel3.png} - \end{center} -Wie man im oberen Bild sieht und auch am Anfang dieses Kapitels bereits erwähnt wurde, liegt das Nautische Dreieck auf der Himmelskugel mit den Ecken Zenit, Gestirn und Himmelsnordpol. -Das selbe Dreieck kann man aber auch auf die Erdkugel projezieren und hat dann die Ecken Standort, Bildpunkt und Nordpol. -Als Bildpunkt wird in der astronomischen Navigation der Punkt bezeichnet, an dem eine gedachte Linie vom Mittelpunkt eines beobachteten Gestirns zum Mittelpunkt der Erde die Erdoberfläche schneidet. - -\subsection{Varianten vom Nautischen Dreieck} -\section{Standortbestimmung ohne elektronische Hilfsmittel} -Um den eigenen Standort herauszufinden, wird in diesem Kapitel die Projektion Nautische Dreieck auf der Erdkugel zur Hilfe genommen. -Mithilfe einiger Hilfsmittel und der Sphärischen Trigonometrie kann man dann die Längen- und Breitengrade des eigenen Standortes bestimmen. - - \begin{center} - \includegraphics[width=6cm]{Bilder/dreieck.png} - \end{center} - - - -\subsection{Ecke P - Unser Standort} -Unser eigener Standort ist der gesuchte Punkt A. - -\subsection{Ecke A - Nordpol} -Der Vorteil ander Idee des Nautischen Dreiecks ist, dass eine Ecke immer der Nordpol (in der Himmelskugel der Himmelsnordpol) ist. -Somit ist diese Ecke immer bekannt und nur deswegen sind die Zusammenhänge von Rektaszension, Sternzeit und Deklination so simpel. - -\subsection{Ecke B und C - Bildpunkt XXX und YYY} -Für die Standortermittlung benötigt man als weiteren Punkt ein Gestirn bzw. seinen Bildpunkt auf der Erdkugel. -Damit das trigonometrische Rechnen einfacher wird, werden hier zwei Gestirne zur Hilfe genommen. -\\ -Es gibt diverse Gestirne, die man nutzen kann. -\begin{itemize} - \item Sonne - \item Mond - \item Die vier Navigationsplaneten Venus, Mars, Jupiter und Saturn -\end{itemize} - -Zu all diesen Gestirnen gibt es Ephemeriden (Jahrbücher). -Dort findet man unter Anderem die Rektaszension und Deklination, welche für jeden Tag und Stunde beschrieben ist. Für Minuten genaue Angaben muss man dann zwischen den Stunden interpolieren. -Mithilfe dieser beiden Angaben kann man die Längen- und Breitengrade diverser Gestirne berechnen. - -\subsubsection{Sternzeit und Rektaszension} -Die Rektaszension $\alpha$ gibt an, in welchem Winkel das Gestirn zum Frühlingspunkt steht. -Der Frühlungspunkt ist der Nullpunkt auf dem Himmelsäquator. -Die Tatsache, dass sich die Himmelskugel ca. vier Minuten schneller um die eigene Achse dreht als die Erdkugel, stellt hier ein kleines Problem dar. -Die Lösung ist die Sternzeit. -Am Frühlingspunkt (21. März) 12:00 Uhr ist die Sternzeit -$\theta = 0$. - -Die Sternzeit geht vom Frühlungspunkt aus, an welchem die Sonne den Himmelsäquator schneidet. -Für die Standortermittlung auf der Erdkugel ist es am einfachsten, wenn man die Sternzeit von Greenwich berechnet. -Für die Sternzeit von Greenwich braucht man als erstes das Julianische Datum vom aktuellen Tag, welches sich leicht recherchieren oder berechnen lässt: \hl{$JD=....$} - -Nun berechnet man $T=\frac{JD-2451545}{36525}$ und damit die mittlere Sternzeit von Greenwich - - $T_{Greenwich} = 6^h 41^m 50^s,54841 + 8640184^s,812866 * T + 0^s,093104*T^2 - 0^s,0000062 * T^3$. - - Wenn mann die Sternzeit von Greenwich ausgerechnet hat, kann man den Längengrad des Gestirns $\lambda = \theta - \alpha$ mithilfe der Rektaszension und Sternzeit bestimmen. - Dies gilt analog auch für das zweite Gestirn. - - \subsubsection{Deklination} - Die Deklination $\delta$ beschreibt den Winkel zwischen dem Himmelsäquator und Gestirn und ergibt schlussendlich den Breitengrad $\psi = \delta$. - - - -\subsection{Bestimmung des eigenen Standortes P} -Nun hat man die Koordinaten der beiden Gestirne und man weiss die Koordinaten des Nordpols. -Somit können wir ein erstes Kugeldreieck auf der Erde aufspannen. - - - \begin{center} - \includegraphics[width=5cm]{Bilder/dreieck.png} - \end{center} - - -\subsubsection{Bestimmung des ersten Dreiecks} - Mithilfe des sphärischen Trigonometrie und den darausfolgenden Zusammenhängen des Nautischen Dreiecks können wir nun alle Seiten des Dreiecks $ABC$ berechnen. - - Die Seitenlänge der Seite "Nordpol zum Bildpunkt XXX" sei $c$. - Dann ist $c = \frac{\pi}{2} - \delta_1$. - - Die Seitenlänge der Seite "Nordpol zum Bildpunkt YYY" sei $b$. - Dann ist $b = \frac{\pi}{2} - \delta_2$. - - Der Innenwinkel beim der Ecke "Nordpol" sei $\alpha$. - Dann ist $ \alpha = |\lambda_1 - \lambda_2|$. - -mit - - $\delta_1 =$ Deklination Bildpunkt XXX - -$\delta_2 =$ Deklination Bildpunk YYY - -$\lambda_1 =$ Längengrad Bildpunkt XXX - -$\lambda_2 =$ Längengrad Bildpunkt YYY - - Wichtig ist: Die Differenz der Längengrade ist gleich der Innenwinkel Alpha, deswegen der Betrag! - -Nun haben wir die beiden Seiten $c\ und\ b$ und den Winkel $\alpha$, der sich zwischen diesen Seiten befindet. -Mithilfe des Seiten-Kosinussatzes $cos(a) = cos(b)*cos(c) + sin(b) * sin(c)*cos(\alpha)$ können wir nun die dritte Seitenlänge bestimmen. -Es ist darauf zu achten, dass hier natürlich die Seitenlängen in Bogenmass sind und dementsprechend der Kosinus und Sinus verwendet wird. -Jetzt fehlen noch die beiden anderen Innenwinkel $\beta \ und\ \gamma$. - -Dieser bestimmen wir mithilfe des Sinussatzes $\frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)}$. -Hier muss man aufpassen, dass man Seite von Winkel unterscheiden kann. Im Zähler sind die Seiten, im Nenner die Winkel. Somit ist $sin(\beta) = sin(b) * \frac{sin(\alpha)}{sin(a)} $. - -Schlussendlich haben wir die Seiten $a,b\ und \ c$, die Ecken A,B und C und die Winkel $\alpha, \beta \ und \ \gamma$ bestimmt und somit das ganze erste Kugeldreieck berechnet. - -\subsubsection{Bestimmung des zweiten Dreiecks} -Wir bilden nun ein zweites Dreieck, welches die Ecken B und C des ersten Dreiecks besitzt. -Die dritte Ecke ist der eigene Standort P. -Unser Standort definiere sich aus einer geographischen Breite $\delta$ und einer geographischen Länge $\lambda$. - -Die Seite von P zu B sei $pb$ und die Seite von P zu C sei $pc$. -Die beiden Seitenlängen kann man mit dem Sextant messen und durch eine einfache Formel bestimmen, nämlich $pb=\frac{\pi}{2} - h_{B}$ und $pc=\frac{\pi}{2} - h_{C}$ - -mit $h_B=$ Höhe von Gestirn in B und $h_C=$ Höhe von Gestirn in C mit Sextant gemessen. -\\ - -Nun muss man eine Verbindungslinie ziehen zwischen P und A. Die Länge $l$ dieser Linie entspricht der gesuchten geographischen Breite $\delta$. Diese lässt sich mithilfe des Dreiecks $ABP$ mit den bekannten Seiten $c\ und \ pb$ und des Seiten-Kosinussatzes - -$cos(l) = cos(c)*cos(pb) + sin(c) * sin(pb)*cos(\beta)$ berechnen. - -Es fehlt uns noch $\beta1$. -Da wir aber $pc$, $pb$ und $a$ kennen, kann man mit dem Seiten-Kosinussatz den Winkel $\beta1$ berechnen -\\ - -Somit ist $\delta = cos(l) = cos(c)*cos(pb) + sin(c) * sin(pb)*cos(\beta)$. -\\ - -Für die Geographische Länge $\lambda$ des eigenen Standortes muss man den Winkel $\omega$, welcher sich im Dreieck $ABP$ în der Ecke bei $A$ befindet mithilfe des Sinussatzes $\frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)}$ bestimmen. -\\ - -Somit ist $\omega=sin(pb)*\frac{sin(\beta)}{sin(l)}$ und unsere gesuchte geographische Länge schlussendlich -$\lambda=\lambda_1 - \omega$ - - - -\end{document} \ No newline at end of file diff --git a/buch/papers/nav/packages.tex b/buch/papers/nav/packages.tex index 15c7fdc..9faa48d 100644 --- a/buch/papers/nav/packages.tex +++ b/buch/papers/nav/packages.tex @@ -8,9 +8,3 @@ % following example %\usepackage{packagename} -\documentclass[12pt]{scrartcl} -\usepackage{ucs} -\usepackage[utf8]{inputenc} -\usepackage[T1]{fontenc} -\usepackage{graphicx} -\usepackage{xcolor, soul} diff --git a/buch/papers/nav/trigo.tex b/buch/papers/nav/trigo.tex deleted file mode 100644 index 0dbd7a1..0000000 --- a/buch/papers/nav/trigo.tex +++ /dev/null @@ -1,51 +0,0 @@ -\documentclass[12pt]{scrartcl} -\usepackage{ucs} -\usepackage[utf8]{inputenc} -\usepackage[T1]{fontenc} -\usepackage{graphicx} - - -\begin{document} - \section{Sphärische Trigonometrie} - \subsection{Das Kugeldreieck} - -Werden drei voneinander verschiedene Punkte, die sich nicht auf derselben Grosskreisebene befinden, mit Grosskreisbögen verbunden, so entsteht ein Kugeldreieck ABC. -A, B und C sind die Ecken des Dreiecks und dessen Seiten sind die Grosskreisbögen zwischen den Eckpunkten. -Da die Länge der Grosskreisbögen wegen der Abhängigkeit vom Kugelradius ungeeignet ist, wird die Grösse einer Seite mit dem zugehörigen Mittelpunktwinkel des Grosskreisbogens angegeben. -Laut dieser Definition ist die Seite c der Winkel AMB. -Für ein Kugeldreieck gilt, dass die Summe der drei Seiten kleiner als $2\pi$ aber grösser als 0 ist. -Man kann bei Kugeldreiecken nicht so einfach unterscheiden, was Innen oder Aussen ist. -Wenn man drei Eckpunkte miteinander verbindet, ergeben sich immer 16 Kugeldreiecke. -Jenes Kugeldreieck mit den Seitenlängen $a, b, c < \pi$ und den Winkeln $\alpha, \beta, \gamma < \pi$ nennt man Eulersche Dreiecke. -\begin{figure}[h] - \begin{center} - \includegraphics[width=6cm]{Bilder/kugel1.png} - \end{center} - -\end{figure} - -\subsection{Rechtwinkliges Dreieck und Rechtseitiges Dreieck} -Wie auch im uns bekannten Dreieck gibt es beim Kugeldreieck auch ein Rechtwinkliges Kugeldreieck, bei dem ein Winkel $\frac{\pi}{2}$ ist. -Ein Rechtseitiges Dreieck gibt es jedoch nur beim Kugeldreieck, weil dort eine Seitenlänge $\frac{\pi}{2}$ lang sein muss. - \newpage -\subsection{Winkelangabe} - - \begin{center} - \includegraphics[width=8cm]{Bilder/kugel2.png} - \end{center} - -Die Winkel eines Kugeldreiecks sind die, welche die Halbtangenten in den Eckpunkten einschliessen. -Für die Summe der Innenwinkel gilt $\alpha+\beta+\gamma = \frac{A}{r^2} + \pi$ und -$\alpha+\beta+\gamma > \pi$. -Der sphärische Exzess $\epsilon = \alpha+\beta+\gamma - \pi$ beschreibt die Abweichung der Innenwinkelsumme von $\pi$ und ist proportional zum Flächeninhalt des Kugeldreiecks. - -\subsection{Sphärischer Sinussatz} -In jedem Dreieck ist das Verhältnis des Sinus einer Seite zum Sinus des Gegenwinkels konstant. -Das bedeutet, dass $\frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)} $ auch beim Kugeldreieck gilt. - -\subsection{Sphärischer Satz des Pythagoras für das rechtwinklige Kugeldreieck} -Es gibt in der sphärischen Trigonometrie eigentlich garkeinen "Satz des Pythagoras", wie man ihn aus der zweidimensionalen Geometrie kennt. -In der sphärischen Trigonometrie gibt es aber auch einen Satz, der alle drei Seiten eines rechtwinkligen Kugeldreiecks in eine Beziehung bringt. -Es gilt nämlich: $\cos c = \cos a * \cos b$ wenn $\alpha \lor \beta \lor \gamma = \frac{\pi}{2} $. - -\end{document} \ No newline at end of file -- cgit v1.2.1 From 309284c1f79df5b8553b0b8875db188ff7d930af Mon Sep 17 00:00:00 2001 From: "ENEZ-PC\\erdem" Date: Mon, 16 May 2022 20:43:09 +0200 Subject: no message --- buch/papers/nav/bilder/dreieck.png | Bin 0 -> 91703 bytes buch/papers/nav/bilder/kugel1.png | Bin 0 -> 9051 bytes buch/papers/nav/bilder/kugel2.png | Bin 0 -> 9103 bytes buch/papers/nav/bilder/kugel3.png | Bin 0 -> 215188 bytes buch/papers/nav/bilder/projektion.png | Bin 0 -> 41289 bytes buch/papers/nav/einleitung.tex | 17 +++ buch/papers/nav/flatearth.tex | 31 ++++++ buch/papers/nav/geschichte.tex | 22 ++++ buch/papers/nav/main.tex | 28 ++--- buch/papers/nav/nautischesdreieck.tex | 190 ++++++++++++++++++++++++++++++++++ buch/papers/nav/packages.tex | 5 + buch/papers/nav/teil0.tex | 22 ---- buch/papers/nav/teil1.tex | 55 ---------- buch/papers/nav/teil2.tex | 40 ------- buch/papers/nav/teil3.tex | 40 ------- buch/papers/nav/trigo.tex | 51 +++++++++ 16 files changed, 322 insertions(+), 179 deletions(-) create mode 100644 buch/papers/nav/bilder/dreieck.png create mode 100644 buch/papers/nav/bilder/kugel1.png create mode 100644 buch/papers/nav/bilder/kugel2.png create mode 100644 buch/papers/nav/bilder/kugel3.png create mode 100644 buch/papers/nav/bilder/projektion.png create mode 100644 buch/papers/nav/einleitung.tex create mode 100644 buch/papers/nav/flatearth.tex create mode 100644 buch/papers/nav/geschichte.tex create mode 100644 buch/papers/nav/nautischesdreieck.tex delete mode 100644 buch/papers/nav/teil0.tex delete mode 100644 buch/papers/nav/teil1.tex delete mode 100644 buch/papers/nav/teil2.tex delete mode 100644 buch/papers/nav/teil3.tex create mode 100644 buch/papers/nav/trigo.tex diff --git a/buch/papers/nav/bilder/dreieck.png b/buch/papers/nav/bilder/dreieck.png new file mode 100644 index 0000000..2b02105 Binary files /dev/null and b/buch/papers/nav/bilder/dreieck.png differ diff --git a/buch/papers/nav/bilder/kugel1.png b/buch/papers/nav/bilder/kugel1.png new file mode 100644 index 0000000..b3188b7 Binary files /dev/null and b/buch/papers/nav/bilder/kugel1.png differ diff --git a/buch/papers/nav/bilder/kugel2.png b/buch/papers/nav/bilder/kugel2.png new file mode 100644 index 0000000..057740f Binary files /dev/null and b/buch/papers/nav/bilder/kugel2.png differ diff --git a/buch/papers/nav/bilder/kugel3.png b/buch/papers/nav/bilder/kugel3.png new file mode 100644 index 0000000..97066a2 Binary files /dev/null and b/buch/papers/nav/bilder/kugel3.png differ diff --git a/buch/papers/nav/bilder/projektion.png b/buch/papers/nav/bilder/projektion.png new file mode 100644 index 0000000..5dcc0c8 Binary files /dev/null and b/buch/papers/nav/bilder/projektion.png differ diff --git a/buch/papers/nav/einleitung.tex b/buch/papers/nav/einleitung.tex new file mode 100644 index 0000000..42f4b6c --- /dev/null +++ b/buch/papers/nav/einleitung.tex @@ -0,0 +1,17 @@ +\documentclass[12pt]{scrartcl} +\usepackage{ucs} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{graphicx} + +\begin{document} +\section{Einleitung} +Heut zu Tage ist die Navigation ein Teil des Lebens. +Man versendet dem Kollegen seinen Standort, um sich das ewige Erklären zu sparen oder gibt die Adresse des Ziels ein um sich die Sucherei zu schenken. +Dies wird durch Technologien wie Funknavigation, welches ein auf Langzeitmessung beruhendes Hyperbelverfahren mit Langwellen ist oder die verbreitete Satellitennavigation, welche vier Satelliten für eine Messung zur Standortbestimmung nutzt. +Vor all diesen technologischen Fortschritten gab es lediglich die Astronavigation, welche heute noch auf kleineren Schiffen benötigt wird im Falle eines Stromausfalls. +Aber wie funktioniert die Navigation mit den Sternen? Welche Hilfsmittel benötigt man, welche Rolle spielt die Mathematik und weshalb kann die Erde nicht flach sein? +In diesem Kapitel werden genau diese Fragen mithilfe des Nautischen Dreiecks, der Sphärischen Trigonometrie und einigen Hilfsmitteln und Messgeräten beantwortet. + + +\end{document} \ No newline at end of file diff --git a/buch/papers/nav/flatearth.tex b/buch/papers/nav/flatearth.tex new file mode 100644 index 0000000..b14dd4b --- /dev/null +++ b/buch/papers/nav/flatearth.tex @@ -0,0 +1,31 @@ +\documentclass[12pt]{scrartcl} +\usepackage{ucs} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{graphicx} + +\begin{document} + \section{Warum ist die Erde nicht flach?} + + \begin{figure}[h] + \begin{center} + \includegraphics[width=10cm]{bilder/projektion.png} + \caption{Mercator Projektion} + \end{center} + \end{figure} + +Es gibt heut zu Tage viele Beweise dafür, dass die Erde eine Kugel ist. +Die Fotos von unserem Planeten oder die Berichte der Astronauten. + Aber schon vor ca. 2300 Jahren hat Aristotoles bemerkt, dass Schiffe im Horizont verschwinden und die einzige Erklärung dafür die Kugelgestalt der Erde ist oder der Erdschatten bei einer Mondfinsternis immer rund ist. + Eratosthenes konnte etwa 100 Jahre später den Erdumfang berechnen. + Er beobachtete, dass die Sonne in Syene mittags im Zenit steht und gleichzeitig in Alexandria unter einem Winkel einfällt. + Mithilfe der Geometrie konnte er mit dem Abstand der Städte und dem Einfallswinkel den Umfang berechnen. + Auch in der Navigation würden grobe Fehler passieren, wenn man davon ausgeht, dass die Erde eine Scheibe ist. +Man sieht es zum Beispiel sehr gut, wenn man die Anwendung Google Earth und eine Weltkarte vergleicht. Grönland ist auf der Weltkarte so gross wie Afrika. +In der Anwendung Google Earth jedoch ist Grönland etwa so gross wie Algerien. +Das liegt daran, das man die 3D – Weltkarte nicht einfach auslegen kann. +Der Kartograph Gerhard Mercator projizierte die Erdkugel auf ein Papier und erstellte so eine winkeltreue Karte. Jedoch wurden die Länder, die einen grösseren Abstand zum Äquator haben vergrössert, damit die Winkel stimmen können. +Wurde man also nun davon ausgehen, dass die Erde flach ist so würden wir nie dort ankommen wo wir es wollen. + + +\end{document} \ No newline at end of file diff --git a/buch/papers/nav/geschichte.tex b/buch/papers/nav/geschichte.tex new file mode 100644 index 0000000..a20eb6d --- /dev/null +++ b/buch/papers/nav/geschichte.tex @@ -0,0 +1,22 @@ +\documentclass[12pt]{scrartcl} +\usepackage{ucs} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{graphicx} + +\begin{document} +\section{Geschichte der sphärischen Navigation} +Die Orientierung mit Hilfe der Sterne und der sphärischen Trigonometrie bewegt die Menschheit schon seit mehreren tausend Jahren. +Nach Hinweisen und Schätzungen von Forscher haben schon vor 4000 Jahren die Ägypter und Gelehrten aus Babylon mit Hilfe der Astronomie den Lauf der Gestirne (Himmelskörper) zu berechnen versucht, jedoch ohne Erfolg. +Etwa 350 vor Christus waren es die Griechen, welche den damaligen Astronomen Hilfestellungen mittels Kugel-Geometrien leisten konnten. +Aus diesen Geometrien wurden erste mathematische Sätze aufgestellt und ein paar Jahrhunderte später kamen zu diesem Thema auch Berechnungen dazu. +Ebenso wurden Kartenmaterial mit Sternenbilder angefertigt. +Die Sinusfunktion war noch nicht bekannt, jedoch kamen zu dieser Zeit die ersten Ansätze der Cosinusfunktion aus Indien. +Von diesen Hilfen darauf aufbauend konnte um 900 die Araber der Sinussatz entwickeln. +Doch ein paar weitere Jahrhunderte vergingen bis zu diesem Thema wieder verstärkt Forschung betrieben wurde. +Dies aus dem Grund, da im 15. Jahrhundert grosse Entdeckungsreisen, hauptsächlich per Schiff, erfolgten und die Orientierung vermehrt an Wichtigkeit gewann. +Auch die Verwendung der Tangens- und Sinusfunktion sowie der neu entwickelte Seitencosinussatz trugen zu einer Verbesserung der Orientierung herbei. +Im 16. Jahrhundert wurde dann ein weiterer trigonometrischer Satz, der Winkelcosinussatz hergeleitet. Stück für Stück wurden infolge der Entdeckung des Logarithmus im 17. Jahrhundert viele neue Methoden entwickelt. +Auch eine Verbesserung der kartographischen Verwendung der Kugelgeometrie wurde vorgenommen. +Es folgten weitere Entwicklungen in nicht euklidische Geometrien und im 19. Jahrhundert sowie auch im 20. Jahrhundert wurde zudem für die Relativitätstheorie auch die sphärische Trigonometrie beigezogen. +\end{document} \ No newline at end of file diff --git a/buch/papers/nav/main.tex b/buch/papers/nav/main.tex index e11e2c0..9758de9 100644 --- a/buch/papers/nav/main.tex +++ b/buch/papers/nav/main.tex @@ -8,29 +8,13 @@ \begin{refsection} \chapterauthor{Hans Muster} -Ein paar Hinweise für die korrekte Formatierung des Textes -\begin{itemize} -\item -Absätze werden gebildet, indem man eine Leerzeile einfügt. -Die Verwendung von \verb+\\+ ist nur in Tabellen und Arrays gestattet. -\item -Die explizite Platzierung von Bildern ist nicht erlaubt, entsprechende -Optionen werden gelöscht. -Verwenden Sie Labels und Verweise, um auf Bilder hinzuweisen. -\item -Beginnen Sie jeden Satz auf einer neuen Zeile. -Damit ermöglichen Sie dem Versionsverwaltungssysteme, Änderungen -in verschiedenen Sätzen von verschiedenen Autoren ohne Konflikt -anzuwenden. -\item -Bilden Sie auch für Formeln kurze Zeilen, einerseits der besseren -Übersicht wegen, aber auch um GIT die Arbeit zu erleichtern. -\end{itemize} -\input{papers/nav/teil0.tex} -\input{papers/nav/teil1.tex} -\input{papers/nav/teil2.tex} -\input{papers/nav/teil3.tex} + +\input{papers/nav/einleitung.tex} +\input{papers/nav/geschichte.tex} +\input{papers/nav/flatearth.tex} +\input{papers/nav/trigo.tex} +\input{papers/nav/nautischesdreieck.tex} \printbibliography[heading=subbibliography] \end{refsection} diff --git a/buch/papers/nav/nautischesdreieck.tex b/buch/papers/nav/nautischesdreieck.tex new file mode 100644 index 0000000..0bb213c --- /dev/null +++ b/buch/papers/nav/nautischesdreieck.tex @@ -0,0 +1,190 @@ +\documentclass[12pt]{scrartcl} +\usepackage{ucs} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{graphicx} + \usepackage{xcolor, soul} + \sethlcolor{yellow} +\begin{document} + \setlength{\parindent}{0em} +\section{Das Nautische Dreieck} +\subsection{Definition des Nautischen Dreiecks} +Ursprünglich ist das nautische Dreieck ein Hilfsmittel der sphärischen Astronomie um die momentane Position eines Fixsterns oder Planeten an der \textbf{Himmelskugel}. +Die Himmelskugel ist eine gedachte Kugel, welche die Erde und dessen Beobachter umgibt und als Rechenfläche für Koordinaten in der Astronomie und Geodäsie dient.\\ +Das Nautische Dreieck definiert sich durch folgende Ecken: +\begin{itemize} + \item Zenit + \item Gestirn + \item Himmelspol +\end{itemize} +Der Zenit ist jener Punkt, der vom Erdmittelpunkt durch denn eigenen Standort an die Himmelskugel verlängert wird. +Ein Gestirn ist ein Planet oder ein Fixstern, zu welchen es diverse Jahrbücher mit allen astronomischen Eigenschaften gibt. +Der Himmelspol ist der Nordpol an die Himmelskugel projeziert. +\\ +Zur Anwendung der Formeln der sphärischen Trigonometrie gelten folgende einfache Zusammenhänge: +\begin{itemize} + \item Seitenlänge Zenit zu Himmelspol $= \frac{\pi}{2} - \phi $ + \item Seitenlänge Himmelspol zu Gestirn $= \frac{\pi}{2} - \delta$ + \item Seitenlänge Zenit zu Gestirn $= \frac{\pi}{2} - h$ + \item Winkel von Zenit zu Himmelsnordpol zu Gestirn$=\pi - \alpha$ + \item Winkel von Himmelsnordpol zu Zenit und Gestirn$= \tau$ +\end{itemize} +Um mit diesen Zusammenhängen zu rechnen benötigt man folgende Legende: + +$\alpha \ \widehat{=} \ Rektaszension $ + +$\delta \ \widehat{=} \ Deklination =$ Breitengrad des Gestirns + +$\theta \ \widehat{=} \ Sternzeit$ + +$\phi \ \widehat{=} \ Geographische \ Breite $ + +$\tau = \theta-\alpha \ \widehat{=} \ Stundenwinkel =$ Längengrad des Gestirns + +$a \ \widehat{=} \ Azimut $ + +$h \ \widehat{=} \ Hoehe$ + + + +\subsection{Zusammenhang des Nautischen Dreiecks und des Kugeldreiecks auf der Erdkugel} + + \begin{center} + \includegraphics[height=5cm,width=5cm]{Bilder/kugel3.png} + \end{center} +Wie man im oberen Bild sieht und auch am Anfang dieses Kapitels bereits erwähnt wurde, liegt das Nautische Dreieck auf der Himmelskugel mit den Ecken Zenit, Gestirn und Himmelsnordpol. +Das selbe Dreieck kann man aber auch auf die Erdkugel projezieren und hat dann die Ecken Standort, Bildpunkt und Nordpol. +Als Bildpunkt wird in der astronomischen Navigation der Punkt bezeichnet, an dem eine gedachte Linie vom Mittelpunkt eines beobachteten Gestirns zum Mittelpunkt der Erde die Erdoberfläche schneidet. + +\subsection{Varianten vom Nautischen Dreieck} +\section{Standortbestimmung ohne elektronische Hilfsmittel} +Um den eigenen Standort herauszufinden, wird in diesem Kapitel die Projektion Nautische Dreieck auf der Erdkugel zur Hilfe genommen. +Mithilfe einiger Hilfsmittel und der Sphärischen Trigonometrie kann man dann die Längen- und Breitengrade des eigenen Standortes bestimmen. + + \begin{center} + \includegraphics[width=6cm]{Bilder/dreieck.png} + \end{center} + + + +\subsection{Ecke P - Unser Standort} +Unser eigener Standort ist der gesuchte Punkt A. + +\subsection{Ecke A - Nordpol} +Der Vorteil ander Idee des Nautischen Dreiecks ist, dass eine Ecke immer der Nordpol (in der Himmelskugel der Himmelsnordpol) ist. +Somit ist diese Ecke immer bekannt und nur deswegen sind die Zusammenhänge von Rektaszension, Sternzeit und Deklination so simpel. + +\subsection{Ecke B und C - Bildpunkt XXX und YYY} +Für die Standortermittlung benötigt man als weiteren Punkt ein Gestirn bzw. seinen Bildpunkt auf der Erdkugel. +Damit das trigonometrische Rechnen einfacher wird, werden hier zwei Gestirne zur Hilfe genommen. +\\ +Es gibt diverse Gestirne, die man nutzen kann. +\begin{itemize} + \item Sonne + \item Mond + \item Die vier Navigationsplaneten Venus, Mars, Jupiter und Saturn +\end{itemize} + +Zu all diesen Gestirnen gibt es Ephemeriden (Jahrbücher). +Dort findet man unter Anderem die Rektaszension und Deklination, welche für jeden Tag und Stunde beschrieben ist. Für Minuten genaue Angaben muss man dann zwischen den Stunden interpolieren. +Mithilfe dieser beiden Angaben kann man die Längen- und Breitengrade diverser Gestirne berechnen. + +\subsubsection{Sternzeit und Rektaszension} +Die Rektaszension $\alpha$ gibt an, in welchem Winkel das Gestirn zum Frühlingspunkt steht. +Der Frühlungspunkt ist der Nullpunkt auf dem Himmelsäquator. +Die Tatsache, dass sich die Himmelskugel ca. vier Minuten schneller um die eigene Achse dreht als die Erdkugel, stellt hier ein kleines Problem dar. +Die Lösung ist die Sternzeit. +Am Frühlingspunkt (21. März) 12:00 Uhr ist die Sternzeit +$\theta = 0$. + +Die Sternzeit geht vom Frühlungspunkt aus, an welchem die Sonne den Himmelsäquator schneidet. +Für die Standortermittlung auf der Erdkugel ist es am einfachsten, wenn man die Sternzeit von Greenwich berechnet. +Für die Sternzeit von Greenwich braucht man als erstes das Julianische Datum vom aktuellen Tag, welches sich leicht recherchieren oder berechnen lässt: \hl{$JD=....$} + +Nun berechnet man $T=\frac{JD-2451545}{36525}$ und damit die mittlere Sternzeit von Greenwich + + $T_{Greenwich} = 6^h 41^m 50^s,54841 + 8640184^s,812866 * T + 0^s,093104*T^2 - 0^s,0000062 * T^3$. + + Wenn mann die Sternzeit von Greenwich ausgerechnet hat, kann man den Längengrad des Gestirns $\lambda = \theta - \alpha$ mithilfe der Rektaszension und Sternzeit bestimmen. + Dies gilt analog auch für das zweite Gestirn. + + \subsubsection{Deklination} + Die Deklination $\delta$ beschreibt den Winkel zwischen dem Himmelsäquator und Gestirn und ergibt schlussendlich den Breitengrad $\psi = \delta$. + + + +\subsection{Bestimmung des eigenen Standortes P} +Nun hat man die Koordinaten der beiden Gestirne und man weiss die Koordinaten des Nordpols. +Somit können wir ein erstes Kugeldreieck auf der Erde aufspannen. + + + \begin{center} + \includegraphics[width=5cm]{Bilder/dreieck.png} + \end{center} + + +\subsubsection{Bestimmung des ersten Dreiecks} + Mithilfe des sphärischen Trigonometrie und den darausfolgenden Zusammenhängen des Nautischen Dreiecks können wir nun alle Seiten des Dreiecks $ABC$ berechnen. + + Die Seitenlänge der Seite "Nordpol zum Bildpunkt XXX" sei $c$. + Dann ist $c = \frac{\pi}{2} - \delta_1$. + + Die Seitenlänge der Seite "Nordpol zum Bildpunkt YYY" sei $b$. + Dann ist $b = \frac{\pi}{2} - \delta_2$. + + Der Innenwinkel beim der Ecke "Nordpol" sei $\alpha$. + Dann ist $ \alpha = |\lambda_1 - \lambda_2|$. + +mit + + $\delta_1 =$ Deklination Bildpunkt XXX + +$\delta_2 =$ Deklination Bildpunk YYY + +$\lambda_1 =$ Längengrad Bildpunkt XXX + +$\lambda_2 =$ Längengrad Bildpunkt YYY + + Wichtig ist: Die Differenz der Längengrade ist gleich der Innenwinkel Alpha, deswegen der Betrag! + +Nun haben wir die beiden Seiten $c\ und\ b$ und den Winkel $\alpha$, der sich zwischen diesen Seiten befindet. +Mithilfe des Seiten-Kosinussatzes $cos(a) = cos(b)*cos(c) + sin(b) * sin(c)*cos(\alpha)$ können wir nun die dritte Seitenlänge bestimmen. +Es ist darauf zu achten, dass hier natürlich die Seitenlängen in Bogenmass sind und dementsprechend der Kosinus und Sinus verwendet wird. +Jetzt fehlen noch die beiden anderen Innenwinkel $\beta \ und\ \gamma$. + +Dieser bestimmen wir mithilfe des Sinussatzes $\frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)}$. +Hier muss man aufpassen, dass man Seite von Winkel unterscheiden kann. Im Zähler sind die Seiten, im Nenner die Winkel. Somit ist $sin(\beta) = sin(b) * \frac{sin(\alpha)}{sin(a)} $. + +Schlussendlich haben wir die Seiten $a,b\ und \ c$, die Ecken A,B und C und die Winkel $\alpha, \beta \ und \ \gamma$ bestimmt und somit das ganze erste Kugeldreieck berechnet. + +\subsubsection{Bestimmung des zweiten Dreiecks} +Wir bilden nun ein zweites Dreieck, welches die Ecken B und C des ersten Dreiecks besitzt. +Die dritte Ecke ist der eigene Standort P. +Unser Standort definiere sich aus einer geographischen Breite $\delta$ und einer geographischen Länge $\lambda$. + +Die Seite von P zu B sei $pb$ und die Seite von P zu C sei $pc$. +Die beiden Seitenlängen kann man mit dem Sextant messen und durch eine einfache Formel bestimmen, nämlich $pb=\frac{\pi}{2} - h_{B}$ und $pc=\frac{\pi}{2} - h_{C}$ + +mit $h_B=$ Höhe von Gestirn in B und $h_C=$ Höhe von Gestirn in C mit Sextant gemessen. +\\ + +Nun muss man eine Verbindungslinie ziehen zwischen P und A. Die Länge $l$ dieser Linie entspricht der gesuchten geographischen Breite $\delta$. Diese lässt sich mithilfe des Dreiecks $ABP$ mit den bekannten Seiten $c\ und \ pb$ und des Seiten-Kosinussatzes + +$cos(l) = cos(c)*cos(pb) + sin(c) * sin(pb)*cos(\beta)$ berechnen. + +Es fehlt uns noch $\beta1$. +Da wir aber $pc$, $pb$ und $a$ kennen, kann man mit dem Seiten-Kosinussatz den Winkel $\beta1$ berechnen +\\ + +Somit ist $\delta = cos(l) = cos(c)*cos(pb) + sin(c) * sin(pb)*cos(\beta)$. +\\ + +Für die Geographische Länge $\lambda$ des eigenen Standortes muss man den Winkel $\omega$, welcher sich im Dreieck $ABP$ în der Ecke bei $A$ befindet mithilfe des Sinussatzes $\frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)}$ bestimmen. +\\ + +Somit ist $\omega=sin(pb)*\frac{sin(\beta)}{sin(l)}$ und unsere gesuchte geographische Länge schlussendlich +$\lambda=\lambda_1 - \omega$ + + + +\end{document} \ No newline at end of file diff --git a/buch/papers/nav/packages.tex b/buch/papers/nav/packages.tex index 9faa48d..16d3a3c 100644 --- a/buch/papers/nav/packages.tex +++ b/buch/papers/nav/packages.tex @@ -8,3 +8,8 @@ % following example %\usepackage{packagename} +\usepackage{ucs} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{graphicx} +\usepackage{xcolor, soul} \ No newline at end of file diff --git a/buch/papers/nav/teil0.tex b/buch/papers/nav/teil0.tex deleted file mode 100644 index f3323a9..0000000 --- a/buch/papers/nav/teil0.tex +++ /dev/null @@ -1,22 +0,0 @@ -% -% einleitung.tex -- Beispiel-File für die Einleitung -% -% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil -% -\section{Teil 0\label{nav:section:teil0}} -\rhead{Teil 0} -Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam -nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam -erat, sed diam voluptua \cite{nav:bibtex}. -At vero eos et accusam et justo duo dolores et ea rebum. -Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum -dolor sit amet. - -Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam -nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam -erat, sed diam voluptua. -At vero eos et accusam et justo duo dolores et ea rebum. Stet clita -kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit -amet. - - diff --git a/buch/papers/nav/teil1.tex b/buch/papers/nav/teil1.tex deleted file mode 100644 index 996202f..0000000 --- a/buch/papers/nav/teil1.tex +++ /dev/null @@ -1,55 +0,0 @@ -% -% teil1.tex -- Beispiel-File für das Paper -% -% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil -% -\section{Teil 1 -\label{nav:section:teil1}} -\rhead{Problemstellung} -Sed ut perspiciatis unde omnis iste natus error sit voluptatem -accusantium doloremque laudantium, totam rem aperiam, eaque ipsa -quae ab illo inventore veritatis et quasi architecto beatae vitae -dicta sunt explicabo. -Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit -aut fugit, sed quia consequuntur magni dolores eos qui ratione -voluptatem sequi nesciunt -\begin{equation} -\int_a^b x^2\, dx -= -\left[ \frac13 x^3 \right]_a^b -= -\frac{b^3-a^3}3. -\label{nav:equation1} -\end{equation} -Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, -consectetur, adipisci velit, sed quia non numquam eius modi tempora -incidunt ut labore et dolore magnam aliquam quaerat voluptatem. - -Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis -suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? -Quis autem vel eum iure reprehenderit qui in ea voluptate velit -esse quam nihil molestiae consequatur, vel illum qui dolorem eum -fugiat quo voluptas nulla pariatur? - -\subsection{De finibus bonorum et malorum -\label{nav:subsection:finibus}} -At vero eos et accusamus et iusto odio dignissimos ducimus qui -blanditiis praesentium voluptatum deleniti atque corrupti quos -dolores et quas molestias excepturi sint occaecati cupiditate non -provident, similique sunt in culpa qui officia deserunt mollitia -animi, id est laborum et dolorum fuga \eqref{000tempmlate:equation1}. - -Et harum quidem rerum facilis est et expedita distinctio -\ref{nav:section:loesung}. -Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil -impedit quo minus id quod maxime placeat facere possimus, omnis -voluptas assumenda est, omnis dolor repellendus -\ref{nav:section:folgerung}. -Temporibus autem quibusdam et aut officiis debitis aut rerum -necessitatibus saepe eveniet ut et voluptates repudiandae sint et -molestiae non recusandae. -Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis -voluptatibus maiores alias consequatur aut perferendis doloribus -asperiores repellat. - - diff --git a/buch/papers/nav/teil2.tex b/buch/papers/nav/teil2.tex deleted file mode 100644 index 5a52e03..0000000 --- a/buch/papers/nav/teil2.tex +++ /dev/null @@ -1,40 +0,0 @@ -% -% teil2.tex -- Beispiel-File für teil2 -% -% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil -% -\section{Teil 2 -\label{nav:section:teil2}} -\rhead{Teil 2} -Sed ut perspiciatis unde omnis iste natus error sit voluptatem -accusantium doloremque laudantium, totam rem aperiam, eaque ipsa -quae ab illo inventore veritatis et quasi architecto beatae vitae -dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit -aspernatur aut odit aut fugit, sed quia consequuntur magni dolores -eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam -est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci -velit, sed quia non numquam eius modi tempora incidunt ut labore -et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima -veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, -nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure -reprehenderit qui in ea voluptate velit esse quam nihil molestiae -consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla -pariatur? - -\subsection{De finibus bonorum et malorum -\label{nav:subsection:bonorum}} -At vero eos et accusamus et iusto odio dignissimos ducimus qui -blanditiis praesentium voluptatum deleniti atque corrupti quos -dolores et quas molestias excepturi sint occaecati cupiditate non -provident, similique sunt in culpa qui officia deserunt mollitia -animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis -est et expedita distinctio. Nam libero tempore, cum soluta nobis -est eligendi optio cumque nihil impedit quo minus id quod maxime -placeat facere possimus, omnis voluptas assumenda est, omnis dolor -repellendus. Temporibus autem quibusdam et aut officiis debitis aut -rerum necessitatibus saepe eveniet ut et voluptates repudiandae -sint et molestiae non recusandae. Itaque earum rerum hic tenetur a -sapiente delectus, ut aut reiciendis voluptatibus maiores alias -consequatur aut perferendis doloribus asperiores repellat. - - diff --git a/buch/papers/nav/teil3.tex b/buch/papers/nav/teil3.tex deleted file mode 100644 index 2b5d2d5..0000000 --- a/buch/papers/nav/teil3.tex +++ /dev/null @@ -1,40 +0,0 @@ -% -% teil3.tex -- Beispiel-File für Teil 3 -% -% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil -% -\section{Teil 3 -\label{nav:section:teil3}} -\rhead{Teil 3} -Sed ut perspiciatis unde omnis iste natus error sit voluptatem -accusantium doloremque laudantium, totam rem aperiam, eaque ipsa -quae ab illo inventore veritatis et quasi architecto beatae vitae -dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit -aspernatur aut odit aut fugit, sed quia consequuntur magni dolores -eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam -est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci -velit, sed quia non numquam eius modi tempora incidunt ut labore -et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima -veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, -nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure -reprehenderit qui in ea voluptate velit esse quam nihil molestiae -consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla -pariatur? - -\subsection{De finibus bonorum et malorum -\label{nav:subsection:malorum}} -At vero eos et accusamus et iusto odio dignissimos ducimus qui -blanditiis praesentium voluptatum deleniti atque corrupti quos -dolores et quas molestias excepturi sint occaecati cupiditate non -provident, similique sunt in culpa qui officia deserunt mollitia -animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis -est et expedita distinctio. Nam libero tempore, cum soluta nobis -est eligendi optio cumque nihil impedit quo minus id quod maxime -placeat facere possimus, omnis voluptas assumenda est, omnis dolor -repellendus. Temporibus autem quibusdam et aut officiis debitis aut -rerum necessitatibus saepe eveniet ut et voluptates repudiandae -sint et molestiae non recusandae. Itaque earum rerum hic tenetur a -sapiente delectus, ut aut reiciendis voluptatibus maiores alias -consequatur aut perferendis doloribus asperiores repellat. - - diff --git a/buch/papers/nav/trigo.tex b/buch/papers/nav/trigo.tex new file mode 100644 index 0000000..0dbd7a1 --- /dev/null +++ b/buch/papers/nav/trigo.tex @@ -0,0 +1,51 @@ +\documentclass[12pt]{scrartcl} +\usepackage{ucs} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{graphicx} + + +\begin{document} + \section{Sphärische Trigonometrie} + \subsection{Das Kugeldreieck} + +Werden drei voneinander verschiedene Punkte, die sich nicht auf derselben Grosskreisebene befinden, mit Grosskreisbögen verbunden, so entsteht ein Kugeldreieck ABC. +A, B und C sind die Ecken des Dreiecks und dessen Seiten sind die Grosskreisbögen zwischen den Eckpunkten. +Da die Länge der Grosskreisbögen wegen der Abhängigkeit vom Kugelradius ungeeignet ist, wird die Grösse einer Seite mit dem zugehörigen Mittelpunktwinkel des Grosskreisbogens angegeben. +Laut dieser Definition ist die Seite c der Winkel AMB. +Für ein Kugeldreieck gilt, dass die Summe der drei Seiten kleiner als $2\pi$ aber grösser als 0 ist. +Man kann bei Kugeldreiecken nicht so einfach unterscheiden, was Innen oder Aussen ist. +Wenn man drei Eckpunkte miteinander verbindet, ergeben sich immer 16 Kugeldreiecke. +Jenes Kugeldreieck mit den Seitenlängen $a, b, c < \pi$ und den Winkeln $\alpha, \beta, \gamma < \pi$ nennt man Eulersche Dreiecke. +\begin{figure}[h] + \begin{center} + \includegraphics[width=6cm]{Bilder/kugel1.png} + \end{center} + +\end{figure} + +\subsection{Rechtwinkliges Dreieck und Rechtseitiges Dreieck} +Wie auch im uns bekannten Dreieck gibt es beim Kugeldreieck auch ein Rechtwinkliges Kugeldreieck, bei dem ein Winkel $\frac{\pi}{2}$ ist. +Ein Rechtseitiges Dreieck gibt es jedoch nur beim Kugeldreieck, weil dort eine Seitenlänge $\frac{\pi}{2}$ lang sein muss. + \newpage +\subsection{Winkelangabe} + + \begin{center} + \includegraphics[width=8cm]{Bilder/kugel2.png} + \end{center} + +Die Winkel eines Kugeldreiecks sind die, welche die Halbtangenten in den Eckpunkten einschliessen. +Für die Summe der Innenwinkel gilt $\alpha+\beta+\gamma = \frac{A}{r^2} + \pi$ und +$\alpha+\beta+\gamma > \pi$. +Der sphärische Exzess $\epsilon = \alpha+\beta+\gamma - \pi$ beschreibt die Abweichung der Innenwinkelsumme von $\pi$ und ist proportional zum Flächeninhalt des Kugeldreiecks. + +\subsection{Sphärischer Sinussatz} +In jedem Dreieck ist das Verhältnis des Sinus einer Seite zum Sinus des Gegenwinkels konstant. +Das bedeutet, dass $\frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)} $ auch beim Kugeldreieck gilt. + +\subsection{Sphärischer Satz des Pythagoras für das rechtwinklige Kugeldreieck} +Es gibt in der sphärischen Trigonometrie eigentlich garkeinen "Satz des Pythagoras", wie man ihn aus der zweidimensionalen Geometrie kennt. +In der sphärischen Trigonometrie gibt es aber auch einen Satz, der alle drei Seiten eines rechtwinkligen Kugeldreiecks in eine Beziehung bringt. +Es gilt nämlich: $\cos c = \cos a * \cos b$ wenn $\alpha \lor \beta \lor \gamma = \frac{\pi}{2} $. + +\end{document} \ No newline at end of file -- cgit v1.2.1 From 800ca10daf88dd073c239b6478bb34f81e48410f Mon Sep 17 00:00:00 2001 From: "ENEZ-PC\\erdem" Date: Tue, 17 May 2022 13:34:13 +0200 Subject: first commit nav --- buch/buch.aux | 22 + buch/buch.bbl | 0 buch/buch.blg | 48 + buch/buch.idx | 0 buch/buch.log | 2106 +++++++++++++++++++++++++++++++++ buch/papers/nav/einleitung.tex | 12 +- buch/papers/nav/flatearth.tex | 38 +- buch/papers/nav/main.tex | 5 +- buch/papers/nav/nautischesdreieck.tex | 139 ++- buch/papers/nav/packages.tex | 5 - buch/papers/nav/sincos.tex | 16 + buch/papers/nav/trigo.tex | 28 +- 12 files changed, 2299 insertions(+), 120 deletions(-) create mode 100644 buch/buch.aux create mode 100644 buch/buch.bbl create mode 100644 buch/buch.blg create mode 100644 buch/buch.idx create mode 100644 buch/buch.log create mode 100644 buch/papers/nav/sincos.tex diff --git a/buch/buch.aux b/buch/buch.aux new file mode 100644 index 0000000..6730af9 --- /dev/null +++ b/buch/buch.aux @@ -0,0 +1,22 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\providecommand\babel@aux[2]{} +\@nameuse{bbl@beforestart} +\catcode `"\active +\providecommand\HyperFirstAtBeginDocument{\AtBeginDocument} +\HyperFirstAtBeginDocument{\ifx\hyper@anchor\@undefined +\global\let\oldcontentsline\contentsline +\gdef\contentsline#1#2#3#4{\oldcontentsline{#1}{#2}{#3}} +\global\let\oldnewlabel\newlabel +\gdef\newlabel#1#2{\newlabelxx{#1}#2} +\gdef\newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}} +\AtEndDocument{\ifx\hyper@anchor\@undefined +\let\contentsline\oldcontentsline +\let\newlabel\oldnewlabel +\fi} +\fi} +\global\let\hyper@last\relax +\gdef\HyperFirstAtBeginDocument#1{#1} +\providecommand\HyField@AuxAddToFields[1]{} +\providecommand\HyField@AuxAddToCoFields[2]{} +\providecommand\BKM@entry[2]{} diff --git a/buch/buch.bbl b/buch/buch.bbl new file mode 100644 index 0000000..e69de29 diff --git a/buch/buch.blg b/buch/buch.blg new file mode 100644 index 0000000..706b1d8 --- /dev/null +++ b/buch/buch.blg @@ -0,0 +1,48 @@ +This is BibTeX, Version 0.99d +Capacity: max_strings=200000, hash_size=200000, hash_prime=170003 +The top-level auxiliary file: buch.aux +I found no \citation commands---while reading file buch.aux +I found no \bibdata command---while reading file buch.aux +I found no \bibstyle command---while reading file buch.aux +You've used 0 entries, + 0 wiz_defined-function locations, + 83 strings with 482 characters, +and the built_in function-call counts, 0 in all, are: += -- 0 +> -- 0 +< -- 0 ++ -- 0 +- -- 0 +* -- 0 +:= -- 0 +add.period$ -- 0 +call.type$ -- 0 +change.case$ -- 0 +chr.to.int$ -- 0 +cite$ -- 0 +duplicate$ -- 0 +empty$ -- 0 +format.name$ -- 0 +if$ -- 0 +int.to.chr$ -- 0 +int.to.str$ -- 0 +missing$ -- 0 +newline$ -- 0 +num.names$ -- 0 +pop$ -- 0 +preamble$ -- 0 +purify$ -- 0 +quote$ -- 0 +skip$ -- 0 +stack$ -- 0 +substring$ -- 0 +swap$ -- 0 +text.length$ -- 0 +text.prefix$ -- 0 +top$ -- 0 +type$ -- 0 +warning$ -- 0 +while$ -- 0 +width$ -- 0 +write$ -- 0 +(There were 3 error messages) diff --git a/buch/buch.idx b/buch/buch.idx new file mode 100644 index 0000000..e69de29 diff --git a/buch/buch.log b/buch/buch.log new file mode 100644 index 0000000..4175a27 --- /dev/null +++ b/buch/buch.log @@ -0,0 +1,2106 @@ +This is pdfTeX, Version 3.141592653-2.6-1.40.24 (MiKTeX 22.3) (preloaded format=pdflatex 2022.4.16) 17 MAY 2022 13:22 +entering extended mode + restricted \write18 enabled. + %&-line parsing enabled. +**./buch.tex +(buch.tex +LaTeX2e <2021-11-15> patch level 1 +L3 programming layer <2022-02-24> (common/content.tex +(D:\Programme\Miktex\tex/latex/base\book.cls +Document Class: book 2021/10/04 v1.4n Standard LaTeX document class +(D:\Programme\Miktex\tex/latex/base\bk10.clo +File: bk10.clo 2021/10/04 v1.4n Standard LaTeX file (size option) +) +\c@part=\count185 +\c@chapter=\count186 +\c@section=\count187 +\c@subsection=\count188 +\c@subsubsection=\count189 +\c@paragraph=\count190 +\c@subparagraph=\count191 +\c@figure=\count192 +\c@table=\count193 +\abovecaptionskip=\skip47 +\belowcaptionskip=\skip48 +\bibindent=\dimen138 +) (common/packages.tex +(D:\Programme\Miktex\tex/latex/etex-pkg\etex.sty +Package: etex 2016/08/01 v2.7 eTeX basic definition package (PEB,DPC) +\et@xins=\count194 +) +(D:\Programme\Miktex\tex/latex/geometry\geometry.sty +Package: geometry 2020/01/02 v5.9 Page Geometry + +(D:\Programme\Miktex\tex/latex/graphics\keyval.sty +Package: keyval 2014/10/28 v1.15 key=value parser (DPC) +\KV@toks@=\toks16 +) +(D:\Programme\Miktex\tex/generic/iftex\ifvtex.sty +Package: ifvtex 2019/10/25 v1.7 ifvtex legacy package. Use iftex instead. + +(D:\Programme\Miktex\tex/generic/iftex\iftex.sty +Package: iftex 2022/02/03 v1.0f TeX engine tests +)) +\Gm@cnth=\count195 +\Gm@cntv=\count196 +\c@Gm@tempcnt=\count197 +\Gm@bindingoffset=\dimen139 +\Gm@wd@mp=\dimen140 +\Gm@odd@mp=\dimen141 +\Gm@even@mp=\dimen142 +\Gm@layoutwidth=\dimen143 +\Gm@layoutheight=\dimen144 +\Gm@layouthoffset=\dimen145 +\Gm@layoutvoffset=\dimen146 +\Gm@dimlist=\toks17 + +(D:\Programme\Miktex\tex/latex/geometry\geometry.cfg)) +(D:\Programme\Miktex\tex/generic/babel\babel.sty +Package: babel 2022/02/26 3.73 The Babel package +\babel@savecnt=\count198 +\U@D=\dimen147 +\l@unhyphenated=\language79 + +(D:\Programme\Miktex\tex/generic/babel\txtbabel.def) +\bbl@readstream=\read2 +\bbl@dirlevel=\count199 + +************************************* +* Local config file bblopts.cfg used +* +(D:\Programme\Miktex\tex/latex/arabi\bblopts.cfg +File: bblopts.cfg 2005/09/08 v0.1 add Arabic and Farsi to "declared" options of + babel +) +(D:\Programme\Miktex\tex/latex/babel-english\english.ldf +Language: english 2017/06/06 v3.3r English support from the babel system +Package babel Info: Hyphen rules for 'canadian' set to \l@english +(babel) (\language0). Reported on input line 102. +Package babel Info: Hyphen rules for 'australian' set to \l@ukenglish +(babel) (\language73). Reported on input line 105. +Package babel Info: Hyphen rules for 'newzealand' set to \l@ukenglish +(babel) (\language73). Reported on input line 108. +) +(D:\Programme\Miktex\tex/latex/babel-german\ngerman.ldf +Language: ngerman 2021/02/27 v2.13 German support for babel (post-1996 orthogra +phy) + +(D:\Programme\Miktex\tex/latex/babel-german\ngermanb.ldf +Language: ngermanb 2021/02/27 v2.13 German support for babel (post-1996 orthogr +aphy) +Package babel Info: Making " an active character on input line 122. +))) +(D:\Programme\Miktex\tex/latex/base\inputenc.sty +Package: inputenc 2021/02/14 v1.3d Input encoding file +\inpenc@prehook=\toks18 +\inpenc@posthook=\toks19 +) +(D:\Programme\Miktex\tex/latex/base\fontenc.sty +Package: fontenc 2021/04/29 v2.0v Standard LaTeX package +) +(D:\Programme\Miktex\tex/latex/cancel\cancel.sty +Package: cancel 2013/04/12 v2.2 Cancel math terms +) +(D:\Programme\Miktex\tex/latex/psnfss\times.sty +Package: times 2020/03/25 PSNFSS-v9.3 (SPQR) +) +(D:\Programme\Miktex\tex/latex/amsmath\amsmath.sty +Package: amsmath 2021/10/15 v2.17l AMS math features +\@mathmargin=\skip49 + +For additional information on amsmath, use the `?' option. +(D:\Programme\Miktex\tex/latex/amsmath\amstext.sty +Package: amstext 2021/08/26 v2.01 AMS text + +(D:\Programme\Miktex\tex/latex/amsmath\amsgen.sty +File: amsgen.sty 1999/11/30 v2.0 generic functions +\@emptytoks=\toks20 +\ex@=\dimen148 +)) +(D:\Programme\Miktex\tex/latex/amsmath\amsbsy.sty +Package: amsbsy 1999/11/29 v1.2d Bold Symbols +\pmbraise@=\dimen149 +) +(D:\Programme\Miktex\tex/latex/amsmath\amsopn.sty +Package: amsopn 2021/08/26 v2.02 operator names +) +Normal \count register pool exhausted, switching to extended pool. +\inf@bad=\count277 +LaTeX Info: Redefining \frac on input line 234. +\uproot@=\count278 +\leftroot@=\count279 +LaTeX Info: Redefining \overline on input line 399. +\classnum@=\count280 +\DOTSCASE@=\count281 +LaTeX Info: Redefining \ldots on input line 496. +LaTeX Info: Redefining \dots on input line 499. +LaTeX Info: Redefining \cdots on input line 620. +\Mathstrutbox@=\box50 +\strutbox@=\box51 +\big@size=\dimen150 +LaTeX Font Info: Redeclaring font encoding OML on input line 743. +LaTeX Font Info: Redeclaring font encoding OMS on input line 744. +\macc@depth=\count282 +\c@MaxMatrixCols=\count283 +\dotsspace@=\muskip16 +\c@parentequation=\count284 +\dspbrk@lvl=\count285 +\tag@help=\toks21 +\row@=\count286 +\column@=\count287 +\maxfields@=\count288 +\andhelp@=\toks22 +\eqnshift@=\dimen151 +\alignsep@=\dimen152 +\tagshift@=\dimen153 +\tagwidth@=\dimen154 +\totwidth@=\dimen155 +\lineht@=\dimen156 +\@envbody=\toks23 +\multlinegap=\skip50 +\multlinetaggap=\skip51 +\mathdisplay@stack=\toks24 +LaTeX Info: Redefining \[ on input line 2938. +LaTeX Info: Redefining \] on input line 2939. +) +(D:\Programme\Miktex\tex/latex/amsmath\amscd.sty +Package: amscd 2017/04/14 v2.1 AMS Commutative Diagrams +\athelp@=\toks25 +\minaw@=\dimen157 +\bigaw@=\dimen158 +\minCDarrowwidth=\dimen159 +) +(D:\Programme\Miktex\tex/latex/amsfonts\amssymb.sty +Package: amssymb 2013/01/14 v3.01 AMS font symbols + +(D:\Programme\Miktex\tex/latex/amsfonts\amsfonts.sty +Package: amsfonts 2013/01/14 v3.01 Basic AMSFonts support +\symAMSa=\mathgroup4 +\symAMSb=\mathgroup5 +LaTeX Font Info: Redeclaring math symbol \hbar on input line 98. +LaTeX Font Info: Overwriting math alphabet `\mathfrak' in version `bold' +(Font) U/euf/m/n --> U/euf/b/n on input line 106. +)) +(D:\Programme\Miktex\tex/latex/amscls\amsthm.sty +Package: amsthm 2020/05/29 v2.20.6 +\thm@style=\toks26 +\thm@bodyfont=\toks27 +\thm@headfont=\toks28 +\thm@notefont=\toks29 +\thm@headpunct=\toks30 +\thm@preskip=\skip52 +\thm@postskip=\skip53 +\thm@headsep=\skip54 +\dth@everypar=\toks31 +) +(D:\Programme\Miktex\tex/latex/graphics\graphicx.sty +Package: graphicx 2021/09/16 v1.2d Enhanced LaTeX Graphics (DPC,SPQR) + +(D:\Programme\Miktex\tex/latex/graphics\graphics.sty +Package: graphics 2021/03/04 v1.4d Standard LaTeX Graphics (DPC,SPQR) + +(D:\Programme\Miktex\tex/latex/graphics\trig.sty +Package: trig 2021/08/11 v1.11 sin cos tan (DPC) +) +(D:\Programme\Miktex\tex/latex/graphics-cfg\graphics.cfg +File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration +) +Package graphics Info: Driver file: pdftex.def on input line 107. + +(D:\Programme\Miktex\tex/latex/graphics-def\pdftex.def +File: pdftex.def 2020/10/05 v1.2a Graphics/color driver for pdftex +)) +\Gin@req@height=\dimen160 +\Gin@req@width=\dimen161 +) +(D:\Programme\Miktex\tex/latex/fancyhdr\fancyhdr.sty +Package: fancyhdr 2022/05/10 v4.0.2 Extensive control of page headers and foote +rs +\f@nch@headwidth=\skip55 +\f@nch@O@elh=\skip56 +\f@nch@O@erh=\skip57 +\f@nch@O@olh=\skip58 +\f@nch@O@orh=\skip59 +\f@nch@O@elf=\skip60 +\f@nch@O@erf=\skip61 +\f@nch@O@olf=\skip62 +\f@nch@O@orf=\skip63 +) +(D:\Programme\Miktex\tex/latex/base\textcomp.sty +Package: textcomp 2020/02/02 v2.0n Standard LaTeX package +) +(D:\Programme\Miktex\tex/latex/txfonts\txfonts.sty +Package: txfonts 2008/01/22 v3.2.1 +LaTeX Font Info: Redeclaring symbol font `operators' on input line 21. +LaTeX Font Info: Overwriting symbol font `operators' in version `normal' +(Font) OT1/cmr/m/n --> OT1/txr/m/n on input line 21. +LaTeX Font Info: Overwriting symbol font `operators' in version `bold' +(Font) OT1/cmr/bx/n --> OT1/txr/m/n on input line 21. +LaTeX Font Info: Overwriting symbol font `operators' in version `bold' +(Font) OT1/txr/m/n --> OT1/txr/bx/n on input line 22. +\symitalic=\mathgroup6 +LaTeX Font Info: Overwriting symbol font `italic' in version `bold' +(Font) OT1/txr/m/it --> OT1/txr/bx/it on input line 26. +LaTeX Font Info: Redeclaring math alphabet \mathbf on input line 29. +LaTeX Font Info: Overwriting math alphabet `\mathbf' in version `normal' +(Font) OT1/cmr/bx/n --> OT1/txr/bx/n on input line 29. +LaTeX Font Info: Overwriting math alphabet `\mathbf' in version `bold' +(Font) OT1/cmr/bx/n --> OT1/txr/bx/n on input line 29. +LaTeX Font Info: Redeclaring math alphabet \mathit on input line 30. +LaTeX Font Info: Overwriting math alphabet `\mathit' in version `normal' +(Font) OT1/cmr/m/it --> OT1/txr/m/it on input line 30. +LaTeX Font Info: Overwriting math alphabet `\mathit' in version `bold' +(Font) OT1/cmr/bx/it --> OT1/txr/m/it on input line 30. +LaTeX Font Info: Overwriting math alphabet `\mathit' in version `bold' +(Font) OT1/txr/m/it --> OT1/txr/bx/it on input line 31. +LaTeX Font Info: Redeclaring math alphabet \mathsf on input line 40. +LaTeX Font Info: Overwriting math alphabet `\mathsf' in version `normal' +(Font) OT1/cmss/m/n --> OT1/txss/m/n on input line 40. +LaTeX Font Info: Overwriting math alphabet `\mathsf' in version `bold' +(Font) OT1/cmss/bx/n --> OT1/txss/m/n on input line 40. +LaTeX Font Info: Overwriting math alphabet `\mathsf' in version `bold' +(Font) OT1/txss/m/n --> OT1/txss/b/n on input line 41. +LaTeX Font Info: Redeclaring math alphabet \mathtt on input line 50. +LaTeX Font Info: Overwriting math alphabet `\mathtt' in version `normal' +(Font) OT1/cmtt/m/n --> OT1/txtt/m/n on input line 50. +LaTeX Font Info: Overwriting math alphabet `\mathtt' in version `bold' +(Font) OT1/cmtt/m/n --> OT1/txtt/m/n on input line 50. +LaTeX Font Info: Overwriting math alphabet `\mathtt' in version `bold' +(Font) OT1/txtt/m/n --> OT1/txtt/b/n on input line 51. +LaTeX Font Info: Redeclaring symbol font `letters' on input line 58. +LaTeX Font Info: Overwriting symbol font `letters' in version `normal' +(Font) OML/cmm/m/it --> OML/txmi/m/it on input line 58. +LaTeX Font Info: Overwriting symbol font `letters' in version `bold' +(Font) OML/cmm/b/it --> OML/txmi/m/it on input line 58. +LaTeX Font Info: Overwriting symbol font `letters' in version `bold' +(Font) OML/txmi/m/it --> OML/txmi/bx/it on input line 59. +\symlettersA=\mathgroup7 +LaTeX Font Info: Overwriting symbol font `lettersA' in version `bold' +(Font) U/txmia/m/it --> U/txmia/bx/it on input line 67. +LaTeX Font Info: Redeclaring math alphabet \mathfrak on input line 70. +LaTeX Font Info: Redeclaring symbol font `symbols' on input line 77. +LaTeX Font Info: Overwriting symbol font `symbols' in version `normal' +(Font) OMS/cmsy/m/n --> OMS/txsy/m/n on input line 77. +LaTeX Font Info: Overwriting symbol font `symbols' in version `bold' +(Font) OMS/cmsy/b/n --> OMS/txsy/m/n on input line 77. +LaTeX Font Info: Overwriting symbol font `symbols' in version `bold' +(Font) OMS/txsy/m/n --> OMS/txsy/bx/n on input line 78. +LaTeX Font Info: Redeclaring symbol font `AMSa' on input line 93. +LaTeX Font Info: Overwriting symbol font `AMSa' in version `normal' +(Font) U/msa/m/n --> U/txsya/m/n on input line 93. +LaTeX Font Info: Overwriting symbol font `AMSa' in version `bold' +(Font) U/msa/m/n --> U/txsya/m/n on input line 93. +LaTeX Font Info: Overwriting symbol font `AMSa' in version `bold' +(Font) U/txsya/m/n --> U/txsya/bx/n on input line 94. +LaTeX Font Info: Redeclaring symbol font `AMSb' on input line 102. +LaTeX Font Info: Overwriting symbol font `AMSb' in version `normal' +(Font) U/msb/m/n --> U/txsyb/m/n on input line 102. +LaTeX Font Info: Overwriting symbol font `AMSb' in version `bold' +(Font) U/msb/m/n --> U/txsyb/m/n on input line 102. +LaTeX Font Info: Overwriting symbol font `AMSb' in version `bold' +(Font) U/txsyb/m/n --> U/txsyb/bx/n on input line 103. +\symsymbolsC=\mathgroup8 +LaTeX Font Info: Overwriting symbol font `symbolsC' in version `bold' +(Font) U/txsyc/m/n --> U/txsyc/bx/n on input line 113. +LaTeX Font Info: Redeclaring symbol font `largesymbols' on input line 120. +LaTeX Font Info: Overwriting symbol font `largesymbols' in version `normal' +(Font) OMX/cmex/m/n --> OMX/txex/m/n on input line 120. +LaTeX Font Info: Overwriting symbol font `largesymbols' in version `bold' +(Font) OMX/cmex/m/n --> OMX/txex/m/n on input line 120. +LaTeX Font Info: Overwriting symbol font `largesymbols' in version `bold' +(Font) OMX/txex/m/n --> OMX/txex/bx/n on input line 121. +\symlargesymbolsA=\mathgroup9 +LaTeX Font Info: Overwriting symbol font `largesymbolsA' in version `bold' +(Font) U/txexa/m/n --> U/txexa/bx/n on input line 129. +LaTeX Font Info: Redeclaring math symbol \mathsterling on input line 164. +LaTeX Info: Redefining \not on input line 1043. +LaTeX Info: Redefining \textsquare on input line 1063. +LaTeX Info: Redefining \openbox on input line 1064. +) +(D:\Programme\Miktex\tex/latex/jknappen\mathrsfs.sty +Package: mathrsfs 1996/01/01 Math RSFS package v1.0 (jk) +\symrsfs=\mathgroup10 +) +(D:\Programme\Miktex\tex/latex/units\nicefrac.sty +Package: nicefrac 1998/08/04 v0.9b Nice fractions +\L@UnitsRaiseDisplaystyle=\skip64 +\L@UnitsRaiseTextstyle=\skip65 +\L@UnitsRaiseScriptstyle=\skip66 + +(D:\Programme\Miktex\tex/latex/base\ifthen.sty +Package: ifthen 2020/11/24 v1.1c Standard LaTeX ifthen package (DPC) +)) +(D:\Programme\Miktex\tex/latex/tools\bm.sty +Package: bm 2021/04/25 v1.2e Bold Symbol Support (DPC/FMi) +Package bm Info: No bold for \U/rsfs/m/n, using \pmb. +) +(D:\Programme\Miktex\tex/latex/eepic\epic.sty +Enhancements to Picture Environment. Version 1.2 - Released June 1, 1986 +\@@multicnt=\count289 +\d@lta=\count290 +\@delta=\dimen162 +\@@delta=\dimen163 +\@gridcnt=\count291 +\@joinkind=\count292 +\@dotgap=\dimen164 +\@ddotgap=\dimen165 +\@x@diff=\count293 +\@y@diff=\count294 +\x@diff=\dimen166 +\y@diff=\dimen167 +\@dotbox=\box52 +\num@segments=\count295 +\num@segmentsi=\count296 +\@datafile=\read3 +) (D:\Programme\Miktex\tex/latex/tools\verbatim.sty +Package: verbatim 2020-07-07 v1.5u LaTeX2e package for verbatim enhancements +\every@verbatim=\toks32 +\verbatim@line=\toks33 +\verbatim@in@stream=\read4 +) +(D:\Programme\Miktex\tex/latex/paralist\paralist.sty +Package: paralist 2017/01/22 v2.7 Extended list environments +\pltopsep=\skip67 +\plpartopsep=\skip68 +\plitemsep=\skip69 +\plparsep=\skip70 +\pl@lab=\toks34 +) +(D:\Programme\Miktex\tex/latex/base\makeidx.sty +Package: makeidx 2021/10/04 v1.0m Standard LaTeX package +) +(D:\Programme\Miktex\tex/latex/tools\array.sty +Package: array 2021/10/04 v2.5f Tabular extension package (FMi) +\col@sep=\dimen168 +\ar@mcellbox=\box53 +\extrarowheight=\dimen169 +\NC@list=\toks35 +\extratabsurround=\skip71 +\backup@length=\skip72 +\ar@cellbox=\box54 +) +(D:\Programme\Miktex\tex/latex/multirow\multirow.sty +Package: multirow 2021/03/15 v2.8 Span multiple rows of a table +\multirow@colwidth=\skip73 +\multirow@cntb=\count297 +\multirow@dima=\skip74 +\bigstrutjot=\dimen170 +) +(D:\Programme\Miktex\tex/latex/hyperref\hyperref.sty +Package: hyperref 2022-02-21 v7.00n Hypertext links for LaTeX + +(D:\Programme\Miktex\tex/generic/ltxcmds\ltxcmds.sty +Package: ltxcmds 2020-05-10 v1.25 LaTeX kernel commands for general use (HO) +) +(D:\Programme\Miktex\tex/generic/pdftexcmds\pdftexcmds.sty +Package: pdftexcmds 2020-06-27 v0.33 Utility functions of pdfTeX for LuaTeX (HO +) + +(D:\Programme\Miktex\tex/generic/infwarerr\infwarerr.sty +Package: infwarerr 2019/12/03 v1.5 Providing info/warning/error messages (HO) +) +Package pdftexcmds Info: \pdf@primitive is available. +Package pdftexcmds Info: \pdf@ifprimitive is available. +Package pdftexcmds Info: \pdfdraftmode found. +) +(D:\Programme\Miktex\tex/generic/kvsetkeys\kvsetkeys.sty +Package: kvsetkeys 2019/12/15 v1.18 Key value parser (HO) +) +(D:\Programme\Miktex\tex/generic/kvdefinekeys\kvdefinekeys.sty +Package: kvdefinekeys 2019-12-19 v1.6 Define keys (HO) +) +(D:\Programme\Miktex\tex/generic/pdfescape\pdfescape.sty +Package: pdfescape 2019/12/09 v1.15 Implements pdfTeX's escape features (HO) +) +(D:\Programme\Miktex\tex/latex/hycolor\hycolor.sty +Package: hycolor 2020-01-27 v1.10 Color options for hyperref/bookmark (HO) +) +(D:\Programme\Miktex\tex/latex/letltxmacro\letltxmacro.sty +Package: letltxmacro 2019/12/03 v1.6 Let assignment for LaTeX macros (HO) +) +(D:\Programme\Miktex\tex/latex/auxhook\auxhook.sty +Package: auxhook 2019-12-17 v1.6 Hooks for auxiliary files (HO) +) +(D:\Programme\Miktex\tex/latex/kvoptions\kvoptions.sty +Package: kvoptions 2020-10-07 v3.14 Key value format for package options (HO) +) +\@linkdim=\dimen171 +\Hy@linkcounter=\count298 +\Hy@pagecounter=\count299 + +(D:\Programme\Miktex\tex/latex/hyperref\pd1enc.def +File: pd1enc.def 2022-02-21 v7.00n Hyperref: PDFDocEncoding definition (HO) +Now handling font encoding PD1 ... +... no UTF-8 mapping file for font encoding PD1 +) +(D:\Programme\Miktex\tex/generic/intcalc\intcalc.sty +Package: intcalc 2019/12/15 v1.3 Expandable calculations with integers (HO) +) +(D:\Programme\Miktex\tex/generic/etexcmds\etexcmds.sty +Package: etexcmds 2019/12/15 v1.7 Avoid name clashes with e-TeX commands (HO) +) +\Hy@SavedSpaceFactor=\count300 + +(D:\Programme\Miktex\tex/latex/hyperref\puenc.def +File: puenc.def 2022-02-21 v7.00n Hyperref: PDF Unicode definition (HO) +Now handling font encoding PU ... +... no UTF-8 mapping file for font encoding PU +) +Package hyperref Info: Hyper figures OFF on input line 4137. +Package hyperref Info: Link nesting OFF on input line 4142. +Package hyperref Info: Hyper index ON on input line 4145. +Package hyperref Info: Plain pages OFF on input line 4152. +Package hyperref Info: Backreferencing OFF on input line 4157. +Package hyperref Info: Implicit mode ON; LaTeX internals redefined. +Package hyperref Info: Bookmarks ON on input line 4390. +\c@Hy@tempcnt=\count301 + +(D:\Programme\Miktex\tex/latex/url\url.sty +\Urlmuskip=\muskip17 +Package: url 2013/09/16 ver 3.4 Verb mode for urls, etc. +) +LaTeX Info: Redefining \url on input line 4749. +\XeTeXLinkMargin=\dimen172 + +(D:\Programme\Miktex\tex/generic/bitset\bitset.sty +Package: bitset 2019/12/09 v1.3 Handle bit-vector datatype (HO) + +(D:\Programme\Miktex\tex/generic/bigintcalc\bigintcalc.sty +Package: bigintcalc 2019/12/15 v1.5 Expandable calculations on big integers (HO +) +)) +\Fld@menulength=\count302 +\Field@Width=\dimen173 +\Fld@charsize=\dimen174 +Package hyperref Info: Hyper figures OFF on input line 6027. +Package hyperref Info: Link nesting OFF on input line 6032. +Package hyperref Info: Hyper index ON on input line 6035. +Package hyperref Info: backreferencing OFF on input line 6042. +Package hyperref Info: Link coloring OFF on input line 6047. +Package hyperref Info: Link coloring with OCG OFF on input line 6052. +Package hyperref Info: PDF/A mode OFF on input line 6057. +LaTeX Info: Redefining \ref on input line 6097. +LaTeX Info: Redefining \pageref on input line 6101. + +(D:\Programme\Miktex\tex/latex/base\atbegshi-ltx.sty +Package: atbegshi-ltx 2021/01/10 v1.0c Emulation of the original atbegshi +package with kernel methods +) +\Hy@abspage=\count303 +\c@Item=\count304 +\c@Hfootnote=\count305 +) +Package hyperref Info: Driver (autodetected): hpdftex. + +(D:\Programme\Miktex\tex/latex/hyperref\hpdftex.def +File: hpdftex.def 2022-02-21 v7.00n Hyperref driver for pdfTeX + +(D:\Programme\Miktex\tex/latex/base\atveryend-ltx.sty +Package: atveryend-ltx 2020/08/19 v1.0a Emulation of the original atveryend pac +kage +with kernel methods +) +\Fld@listcount=\count306 +\c@bookmark@seq@number=\count307 + +(D:\Programme\Miktex\tex/latex/rerunfilecheck\rerunfilecheck.sty +Package: rerunfilecheck 2019/12/05 v1.9 Rerun checks for auxiliary files (HO) + +(D:\Programme\Miktex\tex/generic/uniquecounter\uniquecounter.sty +Package: uniquecounter 2019/12/15 v1.4 Provide unlimited unique counter (HO) +) +Package uniquecounter Info: New unique counter `rerunfilecheck' on input line 2 +86. +) +\Hy@SectionHShift=\skip75 +) +(D:\Programme\Miktex\tex/latex/subfigure\subfigure.sty +Package: subfigure 2002/07/30 v2.1.4 subfigure package +\subfigtopskip=\skip76 +\subfigcapskip=\skip77 +\subfigcaptopadj=\dimen175 +\subfigbottomskip=\skip78 +\subfigcapmargin=\dimen176 +\subfiglabelskip=\skip79 +\c@subfigure=\count308 +\c@lofdepth=\count309 +\c@subtable=\count310 +\c@lotdepth=\count311 + +**************************************** +* Local config file subfigure.cfg used * +**************************************** +(D:\Programme\Miktex\tex/latex/subfigure\subfigure.cfg) +\subfig@top=\skip80 +\subfig@bottom=\skip81 +) +(D:\Programme\Miktex\tex/latex/pgf/frontendlayer\tikz.sty +(D:\Programme\Miktex\tex/latex/pgf/basiclayer\pgf.sty +(D:\Programme\Miktex\tex/latex/pgf/utilities\pgfrcs.sty +(D:\Programme\Miktex\tex/generic/pgf/utilities\pgfutil-common.tex +\pgfutil@everybye=\toks36 +\pgfutil@tempdima=\dimen177 +\pgfutil@tempdimb=\dimen178 + +(D:\Programme\Miktex\tex/generic/pgf/utilities\pgfutil-common-lists.tex)) +(D:\Programme\Miktex\tex/generic/pgf/utilities\pgfutil-latex.def +\pgfutil@abb=\box55 +) +(D:\Programme\Miktex\tex/generic/pgf/utilities\pgfrcs.code.tex +(D:\Programme\Miktex\tex/generic/pgf\pgf.revision.tex) +Package: pgfrcs 2021/05/15 v3.1.9a (3.1.9a) +)) +Package: pgf 2021/05/15 v3.1.9a (3.1.9a) + +(D:\Programme\Miktex\tex/latex/pgf/basiclayer\pgfcore.sty +(D:\Programme\Miktex\tex/latex/pgf/systemlayer\pgfsys.sty +(D:\Programme\Miktex\tex/generic/pgf/systemlayer\pgfsys.code.tex +Package: pgfsys 2021/05/15 v3.1.9a (3.1.9a) + +(D:\Programme\Miktex\tex/generic/pgf/utilities\pgfkeys.code.tex +\pgfkeys@pathtoks=\toks37 +\pgfkeys@temptoks=\toks38 + +(D:\Programme\Miktex\tex/generic/pgf/utilities\pgfkeysfiltered.code.tex +\pgfkeys@tmptoks=\toks39 +)) +\pgf@x=\dimen179 +\pgf@y=\dimen180 +\pgf@xa=\dimen181 +\pgf@ya=\dimen182 +\pgf@xb=\dimen183 +\pgf@yb=\dimen184 +\pgf@xc=\dimen185 +\pgf@yc=\dimen186 +\pgf@xd=\dimen187 +\pgf@yd=\dimen188 +\w@pgf@writea=\write3 +\r@pgf@reada=\read5 +\c@pgf@counta=\count312 +\c@pgf@countb=\count313 +\c@pgf@countc=\count314 +\c@pgf@countd=\count315 +\t@pgf@toka=\toks40 +\t@pgf@tokb=\toks41 +\t@pgf@tokc=\toks42 +\pgf@sys@id@count=\count316 + +(D:\Programme\Miktex\tex/generic/pgf/systemlayer\pgf.cfg +File: pgf.cfg 2021/05/15 v3.1.9a (3.1.9a) +) +Driver file for pgf: pgfsys-pdftex.def + +(D:\Programme\Miktex\tex/generic/pgf/systemlayer\pgfsys-pdftex.def +File: pgfsys-pdftex.def 2021/05/15 v3.1.9a (3.1.9a) + +(D:\Programme\Miktex\tex/generic/pgf/systemlayer\pgfsys-common-pdf.def +File: pgfsys-common-pdf.def 2021/05/15 v3.1.9a (3.1.9a) +))) +(D:\Programme\Miktex\tex/generic/pgf/systemlayer\pgfsyssoftpath.code.tex +File: pgfsyssoftpath.code.tex 2021/05/15 v3.1.9a (3.1.9a) +\pgfsyssoftpath@smallbuffer@items=\count317 +\pgfsyssoftpath@bigbuffer@items=\count318 +) +(D:\Programme\Miktex\tex/generic/pgf/systemlayer\pgfsysprotocol.code.tex +File: pgfsysprotocol.code.tex 2021/05/15 v3.1.9a (3.1.9a) +)) +(D:\Programme\Miktex\tex/latex/xcolor\xcolor.sty +Package: xcolor 2021/10/31 v2.13 LaTeX color extensions (UK) + +(D:\Programme\Miktex\tex/latex/graphics-cfg\color.cfg +File: color.cfg 2016/01/02 v1.6 sample color configuration +) +Package xcolor Info: Driver file: pdftex.def on input line 227. +Package xcolor Info: Model `cmy' substituted by `cmy0' on input line 1352. +Package xcolor Info: Model `hsb' substituted by `rgb' on input line 1356. +Package xcolor Info: Model `RGB' extended on input line 1368. +Package xcolor Info: Model `HTML' substituted by `rgb' on input line 1370. +Package xcolor Info: Model `Hsb' substituted by `hsb' on input line 1371. +Package xcolor Info: Model `tHsb' substituted by `hsb' on input line 1372. +Package xcolor Info: Model `HSB' substituted by `hsb' on input line 1373. +Package xcolor Info: Model `Gray' substituted by `gray' on input line 1374. +Package xcolor Info: Model `wave' substituted by `hsb' on input line 1375. +) +(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcore.code.tex +Package: pgfcore 2021/05/15 v3.1.9a (3.1.9a) + +(D:\Programme\Miktex\tex/generic/pgf/math\pgfmath.code.tex +(D:\Programme\Miktex\tex/generic/pgf/math\pgfmathcalc.code.tex +(D:\Programme\Miktex\tex/generic/pgf/math\pgfmathutil.code.tex) +(D:\Programme\Miktex\tex/generic/pgf/math\pgfmathparser.code.tex +\pgfmath@dimen=\dimen189 +\pgfmath@count=\count319 +\pgfmath@box=\box56 +\pgfmath@toks=\toks43 +\pgfmath@stack@operand=\toks44 +\pgfmath@stack@operation=\toks45 +) +(D:\Programme\Miktex\tex/generic/pgf/math\pgfmathfunctions.code.tex +(D:\Programme\Miktex\tex/generic/pgf/math\pgfmathfunctions.basic.code.tex) +(D:\Programme\Miktex\tex/generic/pgf/math\pgfmathfunctions.trigonometric.code.t +ex) (D:\Programme\Miktex\tex/generic/pgf/math\pgfmathfunctions.random.code.tex) +(D:\Programme\Miktex\tex/generic/pgf/math\pgfmathfunctions.comparison.code.tex) +(D:\Programme\Miktex\tex/generic/pgf/math\pgfmathfunctions.base.code.tex) +(D:\Programme\Miktex\tex/generic/pgf/math\pgfmathfunctions.round.code.tex) +(D:\Programme\Miktex\tex/generic/pgf/math\pgfmathfunctions.misc.code.tex) +(D:\Programme\Miktex\tex/generic/pgf/math\pgfmathfunctions.integerarithmetics.c +ode.tex))) (D:\Programme\Miktex\tex/generic/pgf/math\pgfmathfloat.code.tex +\c@pgfmathroundto@lastzeros=\count320 +)) +(D:\Programme\Miktex\tex/generic/pgf/math\pgfint.code.tex) +(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcorepoints.code.tex +File: pgfcorepoints.code.tex 2021/05/15 v3.1.9a (3.1.9a) +\pgf@picminx=\dimen190 +\pgf@picmaxx=\dimen191 +\pgf@picminy=\dimen192 +\pgf@picmaxy=\dimen193 +\pgf@pathminx=\dimen194 +\pgf@pathmaxx=\dimen195 +\pgf@pathminy=\dimen196 +\pgf@pathmaxy=\dimen197 +\pgf@xx=\dimen198 +\pgf@xy=\dimen199 +Normal \dimen register pool exhausted, switching to extended pool. +\pgf@yx=\dimen256 +\pgf@yy=\dimen257 +\pgf@zx=\dimen258 +\pgf@zy=\dimen259 +) +(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcorepathconstruct.code.tex +File: pgfcorepathconstruct.code.tex 2021/05/15 v3.1.9a (3.1.9a) +\pgf@path@lastx=\dimen260 +\pgf@path@lasty=\dimen261 +) +(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcorepathusage.code.tex +File: pgfcorepathusage.code.tex 2021/05/15 v3.1.9a (3.1.9a) +\pgf@shorten@end@additional=\dimen262 +\pgf@shorten@start@additional=\dimen263 +) +(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcorescopes.code.tex +File: pgfcorescopes.code.tex 2021/05/15 v3.1.9a (3.1.9a) +\pgfpic=\box57 +\pgf@hbox=\box58 +\pgf@layerbox@main=\box59 +\pgf@picture@serial@count=\count321 +) +(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcoregraphicstate.code.tex +File: pgfcoregraphicstate.code.tex 2021/05/15 v3.1.9a (3.1.9a) +\pgflinewidth=\dimen264 +) +(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcoretransformations.code.tex +File: pgfcoretransformations.code.tex 2021/05/15 v3.1.9a (3.1.9a) +\pgf@pt@x=\dimen265 +\pgf@pt@y=\dimen266 +\pgf@pt@temp=\dimen267 +) (D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcorequick.code.tex +File: pgfcorequick.code.tex 2021/05/15 v3.1.9a (3.1.9a) +) +(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcoreobjects.code.tex +File: pgfcoreobjects.code.tex 2021/05/15 v3.1.9a (3.1.9a) +) +(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcorepathprocessing.code.tex +File: pgfcorepathprocessing.code.tex 2021/05/15 v3.1.9a (3.1.9a) +) (D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcorearrows.code.tex +File: pgfcorearrows.code.tex 2021/05/15 v3.1.9a (3.1.9a) +\pgfarrowsep=\dimen268 +) +(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcoreshade.code.tex +File: pgfcoreshade.code.tex 2021/05/15 v3.1.9a (3.1.9a) +\pgf@max=\dimen269 +\pgf@sys@shading@range@num=\count322 +\pgf@shadingcount=\count323 +) +(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcoreimage.code.tex +File: pgfcoreimage.code.tex 2021/05/15 v3.1.9a (3.1.9a) + +(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcoreexternal.code.tex +File: pgfcoreexternal.code.tex 2021/05/15 v3.1.9a (3.1.9a) +\pgfexternal@startupbox=\box60 +)) +(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcorelayers.code.tex +File: pgfcorelayers.code.tex 2021/05/15 v3.1.9a (3.1.9a) +) +(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcoretransparency.code.tex +File: pgfcoretransparency.code.tex 2021/05/15 v3.1.9a (3.1.9a) +) +(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcorepatterns.code.tex +File: pgfcorepatterns.code.tex 2021/05/15 v3.1.9a (3.1.9a) +) +(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcorerdf.code.tex +File: pgfcorerdf.code.tex 2021/05/15 v3.1.9a (3.1.9a) +))) +(D:\Programme\Miktex\tex/generic/pgf/modules\pgfmoduleshapes.code.tex +File: pgfmoduleshapes.code.tex 2021/05/15 v3.1.9a (3.1.9a) +\pgfnodeparttextbox=\box61 +) +(D:\Programme\Miktex\tex/generic/pgf/modules\pgfmoduleplot.code.tex +File: pgfmoduleplot.code.tex 2021/05/15 v3.1.9a (3.1.9a) +) +(D:\Programme\Miktex\tex/latex/pgf/compatibility\pgfcomp-version-0-65.sty +Package: pgfcomp-version-0-65 2021/05/15 v3.1.9a (3.1.9a) +\pgf@nodesepstart=\dimen270 +\pgf@nodesepend=\dimen271 +) +(D:\Programme\Miktex\tex/latex/pgf/compatibility\pgfcomp-version-1-18.sty +Package: pgfcomp-version-1-18 2021/05/15 v3.1.9a (3.1.9a) +)) +(D:\Programme\Miktex\tex/latex/pgf/utilities\pgffor.sty +(D:\Programme\Miktex\tex/latex/pgf/utilities\pgfkeys.sty +(D:\Programme\Miktex\tex/generic/pgf/utilities\pgfkeys.code.tex)) +(D:\Programme\Miktex\tex/latex/pgf/math\pgfmath.sty +(D:\Programme\Miktex\tex/generic/pgf/math\pgfmath.code.tex)) +(D:\Programme\Miktex\tex/generic/pgf/utilities\pgffor.code.tex +Package: pgffor 2021/05/15 v3.1.9a (3.1.9a) + +(D:\Programme\Miktex\tex/generic/pgf/math\pgfmath.code.tex) +\pgffor@iter=\dimen272 +\pgffor@skip=\dimen273 +\pgffor@stack=\toks46 +\pgffor@toks=\toks47 +)) +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz\tikz.code.tex +Package: tikz 2021/05/15 v3.1.9a (3.1.9a) + +(D:\Programme\Miktex\tex/generic/pgf/libraries\pgflibraryplothandlers.code.tex +File: pgflibraryplothandlers.code.tex 2021/05/15 v3.1.9a (3.1.9a) +\pgf@plot@mark@count=\count324 +\pgfplotmarksize=\dimen274 +) +\tikz@lastx=\dimen275 +\tikz@lasty=\dimen276 +\tikz@lastxsaved=\dimen277 +\tikz@lastysaved=\dimen278 +\tikz@lastmovetox=\dimen279 +\tikz@lastmovetoy=\dimen280 +\tikzleveldistance=\dimen281 +\tikzsiblingdistance=\dimen282 +\tikz@figbox=\box62 +\tikz@figbox@bg=\box63 +\tikz@tempbox=\box64 +\tikz@tempbox@bg=\box65 +\tikztreelevel=\count325 +\tikznumberofchildren=\count326 +\tikznumberofcurrentchild=\count327 +\tikz@fig@count=\count328 +(D:\Programme\Miktex\tex/generic/pgf/modules\pgfmodulematrix.code.tex +File: pgfmodulematrix.code.tex 2021/05/15 v3.1.9a (3.1.9a) +\pgfmatrixcurrentrow=\count329 +\pgfmatrixcurrentcolumn=\count330 +\pgf@matrix@numberofcolumns=\count331 +) +\tikz@expandcount=\count332 + +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryto +paths.code.tex +File: tikzlibrarytopaths.code.tex 2021/05/15 v3.1.9a (3.1.9a) +))) (D:\Programme\Miktex\tex/latex/tikz-cd\tikz-cd.sty +Package: tikz-cd 2021/05/04 v1.0 Commutative diagrams with TikZ + +(D:\Programme\Miktex\tex/latex/tikz-cd\tikzlibrarycd.code.tex +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryma +trix.code.tex +File: tikzlibrarymatrix.code.tex 2021/05/15 v3.1.9a (3.1.9a) +) +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryqu +otes.code.tex +File: tikzlibraryquotes.code.tex 2021/05/15 v3.1.9a (3.1.9a) +) +(D:\Programme\Miktex\tex/generic/pgf/libraries\pgflibraryarrows.meta.code.tex +File: pgflibraryarrows.meta.code.tex 2021/05/15 v3.1.9a (3.1.9a) +\pgfarrowinset=\dimen283 +\pgfarrowlength=\dimen284 +\pgfarrowwidth=\dimen285 +\pgfarrowlinewidth=\dimen286 +))) (D:\Programme\Miktex\tex/latex/pgfplots\pgfplots.sty +(D:\Programme\Miktex\tex/generic/pgfplots\pgfplots.revision.tex) +Package: pgfplots 2021/05/15 v1.18.1 Data Visualization (1.18.1) + +(D:\Programme\Miktex\tex/generic/pgfplots\pgfplots.code.tex +(D:\Programme\Miktex\tex/generic/pgfplots\pgfplotscore.code.tex +\t@pgfplots@toka=\toks48 +\t@pgfplots@tokb=\toks49 +\t@pgfplots@tokc=\toks50 +\pgfplots@tmpa=\dimen287 +\c@pgfplots@coordindex=\count333 +\c@pgfplots@scanlineindex=\count334 + +(D:\Programme\Miktex\tex/generic/pgfplots/sys\pgfplotssysgeneric.code.tex)) +(D:\Programme\Miktex\tex/generic/pgfplots/libs\pgfplotslibrary.code.tex) +(D:\Programme\Miktex\tex/generic/pgfplots/oldpgfcompatib\pgfplotsoldpgfsupp_loa +der.code.tex +(D:\Programme\Miktex\tex/generic/pgf/libraries\pgflibraryfpu.code.tex)) +(D:\Programme\Miktex\tex/generic/pgfplots/util\pgfplotsutil.code.tex +(D:\Programme\Miktex\tex/generic/pgfplots/liststructure\pgfplotsliststructure.c +ode.tex) +(D:\Programme\Miktex\tex/generic/pgfplots/liststructure\pgfplotsliststructureex +t.code.tex) +(D:\Programme\Miktex\tex/generic/pgfplots/liststructure\pgfplotsarray.code.tex +\c@pgfplotsarray@tmp=\count335 +) +(D:\Programme\Miktex\tex/generic/pgfplots/liststructure\pgfplotsmatrix.code.tex +) +(D:\Programme\Miktex\tex/generic/pgfplots/numtable\pgfplotstableshared.code.tex +\c@pgfplotstable@counta=\count336 +\t@pgfplotstable@a=\toks51 +) +(D:\Programme\Miktex\tex/generic/pgfplots/liststructure\pgfplotsdeque.code.tex) +(D:\Programme\Miktex\tex/generic/pgfplots/util\pgfplotsbinary.code.tex +(D:\Programme\Miktex\tex/generic/pgfplots/util\pgfplotsbinary.data.code.tex)) +(D:\Programme\Miktex\tex/generic/pgfplots/util\pgfplotsutil.verb.code.tex) +(D:\Programme\Miktex\tex/generic/pgfplots/libs\pgflibrarypgfplots.surfshading.c +ode.tex +\c@pgfplotslibrarysurf@no=\count337 + +(D:\Programme\Miktex\tex/generic/pgfplots/sys\pgflibrarypgfplots.surfshading.pg +fsys-pdftex.def))) +(D:\Programme\Miktex\tex/generic/pgfplots/util\pgfplotscolormap.code.tex +(D:\Programme\Miktex\tex/generic/pgfplots/util\pgfplotscolor.code.tex)) +(D:\Programme\Miktex\tex/generic/pgfplots\pgfplotsstackedplots.code.tex) +(D:\Programme\Miktex\tex/generic/pgfplots\pgfplotsplothandlers.code.tex +(D:\Programme\Miktex\tex/generic/pgfplots\pgfplotsmeshplothandler.code.tex +(D:\Programme\Miktex\tex/generic/pgfplots\pgfplotsmeshplotimage.code.tex))) +(D:\Programme\Miktex\tex/generic/pgfplots\pgfplots.scaling.code.tex) +(D:\Programme\Miktex\tex/generic/pgfplots\pgfplotscoordprocessing.code.tex) +(D:\Programme\Miktex\tex/generic/pgfplots\pgfplots.errorbars.code.tex) +(D:\Programme\Miktex\tex/generic/pgfplots\pgfplots.markers.code.tex) +(D:\Programme\Miktex\tex/generic/pgfplots\pgfplotsticks.code.tex) +(D:\Programme\Miktex\tex/generic/pgfplots\pgfplots.paths.code.tex) +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryde +corations.code.tex +(D:\Programme\Miktex\tex/generic/pgf/modules\pgfmoduledecorations.code.tex +\pgfdecoratedcompleteddistance=\dimen288 +\pgfdecoratedremainingdistance=\dimen289 +\pgfdecoratedinputsegmentcompleteddistance=\dimen290 +\pgfdecoratedinputsegmentremainingdistance=\dimen291 +\pgf@decorate@distancetomove=\dimen292 +\pgf@decorate@repeatstate=\count338 +\pgfdecorationsegmentamplitude=\dimen293 +\pgfdecorationsegmentlength=\dimen294 +) +\tikz@lib@dec@box=\box66 +) +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryde +corations.pathmorphing.code.tex +(D:\Programme\Miktex\tex/generic/pgf/libraries/decorations\pgflibrarydecoration +s.pathmorphing.code.tex)) +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryde +corations.pathreplacing.code.tex +(D:\Programme\Miktex\tex/generic/pgf/libraries/decorations\pgflibrarydecoration +s.pathreplacing.code.tex)) +(D:\Programme\Miktex\tex/generic/pgfplots/libs\tikzlibrarypgfplots.contourlua.c +ode.tex) +\pgfplots@numplots=\count339 +\pgfplots@xmin@reg=\dimen295 +\pgfplots@xmax@reg=\dimen296 +\pgfplots@ymin@reg=\dimen297 +\pgfplots@ymax@reg=\dimen298 +\pgfplots@zmin@reg=\dimen299 +\pgfplots@zmax@reg=\dimen300 +) +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibrarypl +otmarks.code.tex +File: tikzlibraryplotmarks.code.tex 2021/05/15 v3.1.9a (3.1.9a) + +(D:\Programme\Miktex\tex/generic/pgf/libraries\pgflibraryplotmarks.code.tex +File: pgflibraryplotmarks.code.tex 2021/05/15 v3.1.9a (3.1.9a) +))) +(D:\Programme\Miktex\tex/latex/pgfplots\pgfplotstable.sty +(D:\Programme\Miktex\tex/generic/pgfplots\pgfplots.revision.tex) +Package: pgfplotstable 2021/05/15 v1.18.1 Table typesetting and Pretty-printing + (1.18.1) + +(D:\Programme\Miktex\tex/generic/pgfplots/numtable\pgfplotstable.code.tex +(D:\Programme\Miktex\tex/generic/pgfplots/numtable\pgfplotstable.coltype.code.t +ex))) (D:\Programme\Miktex\tex/latex/csquotes\csquotes.sty +Package: csquotes 2021-02-22 v5.2l context-sensitive quotations (JAW) + +(D:\Programme\Miktex\tex/latex/etoolbox\etoolbox.sty +Package: etoolbox 2020/10/05 v2.5k e-TeX tools for LaTeX (JAW) +\etb@tempcnta=\count340 +) +\csq@reset=\count341 +\csq@gtype=\count342 +\csq@glevel=\count343 +\csq@qlevel=\count344 +\csq@maxlvl=\count345 +\csq@tshold=\count346 +\csq@ltx@everypar=\toks52 + +(D:\Programme\Miktex\tex/latex/csquotes\csquotes.def +File: csquotes.def 2021-02-22 v5.2l csquotes generic definitions (JAW) +) +Package csquotes Info: Trying to load configuration file 'csquotes.cfg'... +Package csquotes Info: ... configuration file loaded successfully. + +(D:\Programme\Miktex\tex/latex/csquotes\csquotes.cfg +File: csquotes.cfg +) +Package csquotes Info: Disabling multilingual quotes. +Package csquotes Info: Redefining alias 'english' -> 'english/american'. +) +(D:\Programme\Miktex\tex/latex/wasysym\wasysym.sty +Package: wasysym 2020/01/19 v2.4 Wasy-2 symbol support package +\symwasy=\mathgroup11 +LaTeX Font Info: Overwriting symbol font `wasy' in version `bold' +(Font) U/wasy/m/n --> U/wasy/b/n on input line 93. +) +(D:\Programme\Miktex\tex/latex/environ\environ.sty +Package: environ 2014/05/04 v0.3 A new way to define environments + +(D:\Programme\Miktex\tex/latex/trimspaces\trimspaces.sty +Package: trimspaces 2009/09/17 v1.1 Trim spaces around a token list +)) +(D:\Programme\Miktex\tex/latex/appendix\appendix.sty +Package: appendix 2020/02/08 v1.2c extra appendix facilities +\c@@pps=\count347 +\c@@ppsavesec=\count348 +\c@@ppsaveapp=\count349 +) +(D:\Programme\Miktex\tex/latex/placeins\placeins.sty +Package: placeins 2005/04/18 v 2.2 +) +(D:\Programme\Miktex\tex/generic/xypic\xy.sty +(D:\Programme\Miktex\tex/generic/xypic\xy.tex Bootstrap'ing: catcodes, +docmode, (D:\Programme\Miktex\tex/generic/xypic\xyrecat.tex) +(D:\Programme\Miktex\tex/generic/xypic\xyidioms.tex) + + Xy-pic version 3.8.9 <2013/10/06> + Copyright (c) 1991-2013 by Kristoffer H. Rose and others + Xy-pic is free software: see the User's Guide for details. + +Loading kernel: messages; fonts; allocations: state, +\X@c=\dimen301 +\Y@c=\dimen302 +\U@c=\dimen303 +\D@c=\dimen304 +\L@c=\dimen305 +\R@c=\dimen306 +\Edge@c=\toks53 +\X@p=\dimen307 +\Y@p=\dimen308 +\U@p=\dimen309 +\D@p=\dimen310 +\L@p=\dimen311 +\R@p=\dimen312 +\Edge@p=\toks54 +\X@origin=\dimen313 +\Y@origin=\dimen314 +\X@xbase=\dimen315 +\Y@xbase=\dimen316 +\X@ybase=\dimen317 +\Y@ybase=\dimen318 +\X@min=\dimen319 +\Y@min=\dimen320 +\X@max=\dimen321 +\Y@max=\dimen322 +\lastobjectbox@=\box67 +\zerodotbox@=\box68 +\almostz@=\dimen323 + direction, +\d@X=\dimen324 +\d@Y=\dimen325 +\K@=\count350 +\KK@=\count351 +\Direction=\count352 +\K@dXdY=\dimen326 +\K@dYdX=\dimen327 +\xyread@=\read6 +\xywrite@=\write4 +\csp@=\count353 +\quotPTK@=\dimen328 + +utility macros; pictures: \xy, positions, +\swaptoks@@=\toks55 +\connectobjectbox@@=\box69 + objects, +\styletoks@=\toks56 + decorations; +kernel objects: directionals, circles, text; options; algorithms: directions, +edges, connections; Xy-pic loaded) +(D:\Programme\Miktex\tex/generic/iftex\ifpdf.sty +Package: ifpdf 2019/10/25 v3.4 ifpdf legacy package. Use iftex instead. +) +Package: xy 2013/10/06 Xy-pic version 3.8.9 + +(D:\Programme\Miktex\tex/generic/xypic\xyall.tex + Xy-pic option: All features v.3.8 +(D:\Programme\Miktex\tex/generic/xypic\xycurve.tex + Xy-pic option: Curve and Spline extension v.3.12 curve, +\crv@cnt@=\count354 +\crvpts@=\toks57 +\splinebox@=\box70 +\splineval@=\dimen329 +\splinedepth@=\dimen330 +\splinetol@=\dimen331 +\splinelength@=\dimen332 + circles, +\L@=\dimen333 + loaded) +(D:\Programme\Miktex\tex/generic/xypic\xyframe.tex + Xy-pic option: Frame and Bracket extension v.3.14 loaded) +(D:\Programme\Miktex\tex/generic/xypic\xycmtip.tex + Xy-pic option: Computer Modern tip extension v.3.7 +(D:\Programme\Miktex\tex/generic/xypic\xytips.tex + Xy-pic option: More Tips extension v.3.11 loaded) loaded) +(D:\Programme\Miktex\tex/generic/xypic\xyline.tex + Xy-pic option: Line styles extension v.3.10 +\xylinethick@=\dimen334 + loaded) +(D:\Programme\Miktex\tex/generic/xypic\xyrotate.tex + Xy-pic option: Rotate and Scale extension v.3.8 loaded) +(D:\Programme\Miktex\tex/generic/xypic\xycolor.tex + Xy-pic option: Colour extension v.3.11 loaded) +(D:\Programme\Miktex\tex/generic/xypic\xymatrix.tex + Xy-pic option: Matrix feature v.3.14 +\Row=\count355 +\Col=\count356 +\queue@=\toks58 +\queue@@=\toks59 +\qcount@=\count357 +\qcount@@=\count358 +\matrixsize@=\count359 + loaded) +(D:\Programme\Miktex\tex/generic/xypic\xyarrow.tex + Xy-pic option: Arrow and Path feature v.3.9 path, \ar, loaded) +(D:\Programme\Miktex\tex/generic/xypic\xygraph.tex + Xy-pic option: Graph feature v.3.11 loaded) loaded) +(D:\Programme\Miktex\tex/generic/xypic\xypdf.tex + Xy-pic option: PDF driver v.1.7 Xy-pic pdf driver: `color' extension support +(D:\Programme\Miktex\tex/generic/xypic\xypdf-co.tex loaded) +Xy-pic pdf driver: `curve' extension support +(D:\Programme\Miktex\tex/generic/xypic\xypdf-cu.tex loaded) +Xy-pic pdf driver: `frame' extension support +(D:\Programme\Miktex\tex/generic/xypic\xypdf-fr.tex loaded) +Xy-pic pdf driver: `line' extension support +(D:\Programme\Miktex\tex/generic/xypic\xypdf-li.tex loaded) +Xy-pic pdf driver: `rotate' extension support +(D:\Programme\Miktex\tex/generic/xypic\xypdf-ro.tex loaded) loaded)) +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryca +lc.code.tex +File: tikzlibrarycalc.code.tex 2021/05/15 v3.1.9a (3.1.9a) +) +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryin +tersections.code.tex +(D:\Programme\Miktex\tex/generic/pgf/libraries\pgflibraryintersections.code.tex +\pgf@intersect@solutions=\count360 +)) +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryth +rough.code.tex +File: tikzlibrarythrough.code.tex 2021/05/15 v3.1.9a (3.1.9a) +) +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryba +ckgrounds.code.tex +File: tikzlibrarybackgrounds.code.tex 2021/05/15 v3.1.9a (3.1.9a) +\pgf@layerbox@background=\box71 +\pgf@layerboxsaved@background=\box72 +) +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries/graphs\tikzli +brarygraphs.code.tex +File: tikzlibrarygraphs.code.tex 2021/05/15 v3.1.9a (3.1.9a) +\tikz@lib@auto@number=\count361 +\tikz@qnode@count=\count362 +) +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibrarypo +sitioning.code.tex +File: tikzlibrarypositioning.code.tex 2021/05/15 v3.1.9a (3.1.9a) +) +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibrarysh +apes.code.tex +File: tikzlibraryshapes.code.tex 2021/05/15 v3.1.9a (3.1.9a) + +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibrarysh +apes.geometric.code.tex +File: tikzlibraryshapes.geometric.code.tex 2021/05/15 v3.1.9a (3.1.9a) + +(D:\Programme\Miktex\tex/generic/pgf/libraries/shapes\pgflibraryshapes.geometri +c.code.tex +File: pgflibraryshapes.geometric.code.tex 2021/05/15 v3.1.9a (3.1.9a) +)) +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibrarysh +apes.misc.code.tex +File: tikzlibraryshapes.misc.code.tex 2021/05/15 v3.1.9a (3.1.9a) + +(D:\Programme\Miktex\tex/generic/pgf/libraries/shapes\pgflibraryshapes.misc.cod +e.tex +File: pgflibraryshapes.misc.code.tex 2021/05/15 v3.1.9a (3.1.9a) +)) +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibrarysh +apes.symbols.code.tex +File: tikzlibraryshapes.symbols.code.tex 2021/05/15 v3.1.9a (3.1.9a) + +(D:\Programme\Miktex\tex/generic/pgf/libraries/shapes\pgflibraryshapes.symbols. +code.tex +File: pgflibraryshapes.symbols.code.tex 2021/05/15 v3.1.9a (3.1.9a) +)) +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibrarysh +apes.arrows.code.tex +File: tikzlibraryshapes.arrows.code.tex 2021/05/15 v3.1.9a (3.1.9a) + +(D:\Programme\Miktex\tex/generic/pgf/libraries/shapes\pgflibraryshapes.arrows.c +ode.tex +File: pgflibraryshapes.arrows.code.tex 2021/05/15 v3.1.9a (3.1.9a) +)) +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibrarysh +apes.callouts.code.tex +(D:\Programme\Miktex\tex/generic/pgf/libraries/shapes\pgflibraryshapes.callouts +.code.tex)) +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibrarysh +apes.multipart.code.tex +File: tikzlibraryshapes.multipart.code.tex 2021/05/15 v3.1.9a (3.1.9a) + +(D:\Programme\Miktex\tex/generic/pgf/libraries/shapes\pgflibraryshapes.multipar +t.code.tex +File: pgflibraryshapes.multipart.code.tex 2021/05/15 v3.1.9a (3.1.9a) +\pgfnodepartlowerbox=\box73 +\pgfnodeparttwobox=\box74 +\pgfnodepartthreebox=\box75 +\pgfnodepartfourbox=\box76 +\pgfnodeparttwentybox=\box77 +\pgfnodepartnineteenbox=\box78 +\pgfnodeparteighteenbox=\box79 +\pgfnodepartseventeenbox=\box80 +\pgfnodepartsixteenbox=\box81 +\pgfnodepartfifteenbox=\box82 +\pgfnodepartfourteenbox=\box83 +\pgfnodepartthirteenbox=\box84 +\pgfnodeparttwelvebox=\box85 +\pgfnodepartelevenbox=\box86 +\pgfnodeparttenbox=\box87 +\pgfnodepartninebox=\box88 +\pgfnodeparteightbox=\box89 +\pgfnodepartsevenbox=\box90 +\pgfnodepartsixbox=\box91 +\pgfnodepartfivebox=\box92 +))) +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryar +rows.code.tex +File: tikzlibraryarrows.code.tex 2021/05/15 v3.1.9a (3.1.9a) + +(D:\Programme\Miktex\tex/generic/pgf/libraries\pgflibraryarrows.code.tex +File: pgflibraryarrows.code.tex 2021/05/15 v3.1.9a (3.1.9a) +\arrowsize=\dimen335 +)) +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryfi +t.code.tex +File: tikzlibraryfit.code.tex 2021/05/15 v3.1.9a (3.1.9a) +) +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryma +th.code.tex +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryfp +u.code.tex) +\tikz@math@for@depth=\count363 +\tikz@math@dimen=\dimen336 +\tikz@math@toks=\toks60 +) +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibrarypa +tterns.code.tex +File: tikzlibrarypatterns.code.tex 2021/05/15 v3.1.9a (3.1.9a) + +(D:\Programme\Miktex\tex/generic/pgf/libraries\pgflibrarypatterns.code.tex +File: pgflibrarypatterns.code.tex 2021/05/15 v3.1.9a (3.1.9a) +)) +(D:\Programme\Miktex\tex/latex/pgf/frontendlayer/libraries\tikzlibraryexternal. +code.tex +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzexternals +hared.code.tex)) +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries/datavisualiza +tion\tikzlibrarydatavisualization.code.tex +File: tikzlibrarydatavisualization.code.tex 2021/05/15 v3.1.9a (3.1.9a) + +(D:\Programme\Miktex\tex/generic/pgf/modules\pgfmoduledatavisualization.code.te +x +File: pgfmoduledatavisualization.code.tex 2021/05/15 v3.1.9a (3.1.9a) + (D:\Programme\Miktex\tex/generic/pgf/modules\pgfmoduleoo.code.tex +\pgfoo@objectcount=\count364 +\pgfoothis@count=\count365 +\pgfoo@toks=\toks61 +) +\pgf@lib@dv@cache@count=\count366 +\pgf@lib@dv@cache@count=\count367 +) +\tikzdvvisualizercounter=\count368 +) +(D:\Programme\Miktex\tex/latex/circuitikz\circuitikz.sty +Package: circuitikz 2022/05/08{} The CircuiTikz circuit drawing package version + 1.5.2 + +(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibrarybe +nding.code.tex +File: tikzlibrarybending.code.tex 2021/05/15 v3.1.9a (3.1.9a) + +(D:\Programme\Miktex\tex/generic/pgf/modules\pgfmodulebending.code.tex +File: pgfmodulebending.code.tex 2021/05/15 v3.1.9a (3.1.9a) + +(D:\Programme\Miktex\tex/generic/pgf/modules\pgfmodulenonlineartransformations. +code.tex +File: pgfmodulenonlineartransformations.code.tex 2021/05/15 v3.1.9a (3.1.9a) +\pgftransformnonlinearflatness=\dimen337 +) +(D:\Programme\Miktex\tex/generic/pgf/libraries\pgflibrarycurvilinear.code.tex +File: pgflibrarycurvilinear.code.tex 2021/05/15 v3.1.9a (3.1.9a) +\pgf@curvilinear@time@a=\dimen338 +\pgf@curvilinear@length@a=\dimen339 +\pgf@curvilinear@length@b=\dimen340 +\pgf@curvilinear@length@c=\dimen341 +\pgf@curvilinear@length@d=\dimen342 +) +\pgf@arrows@the@rigidity=\dimen343 +)) (D:\Programme\Miktex\tex/generic/circuitikz\pgfcirc.defines.tex +\pgf@circ@count@a=\count369 +\pgf@circ@count@b=\count370 +\pgf@circ@count@c=\count371 +\pgf@circ@res@up=\dimen344 +\pgf@circ@res@down=\dimen345 +\pgf@circ@res@zero=\dimen346 +\pgf@circ@res@left=\dimen347 +\pgf@circ@res@right=\dimen348 +\pgf@circ@res@other=\dimen349 +\pgf@circ@res@step=\dimen350 +\pgf@circ@res@temp=\dimen351 +\pgf@circ@Rlen=\dimen352 +\pgf@circ@scaled@Rlen=\dimen353 +\pgfstartlinewidth=\dimen354 +) +(D:\Programme\Miktex\tex/generic/circuitikz\pgfcircutils.tex +\ctikz@scratchbox=\box93 +) +(D:\Programme\Miktex\tex/generic/circuitikz\pgfcircpath.tex) +(D:\Programme\Miktex\tex/generic/circuitikz\pgfcircshapes.tex) +(D:\Programme\Miktex\tex/generic/circuitikz\pgfcircmonopoles.tex) +(D:\Programme\Miktex\tex/generic/circuitikz\pgfcircbipoles.tex) +(D:\Programme\Miktex\tex/generic/circuitikz\pgfcirctripoles.tex +\pgf@circ@res@count=\count372 +) +(D:\Programme\Miktex\tex/generic/circuitikz\pgfcircquadpoles.tex) +(D:\Programme\Miktex\tex/generic/circuitikz\pgfcircmultipoles.tex) +(D:\Programme\Miktex\tex/generic/circuitikz\pgfcirclabel.tex) +(D:\Programme\Miktex\tex/generic/circuitikz\pgfcircvoltage.tex +\pgfcirc@labelshift=\dimen355 +) +(D:\Programme\Miktex\tex/generic/circuitikz\pgfcirccurrent.tex) +(D:\Programme\Miktex\tex/generic/circuitikz\pgfcircflow.tex) +(D:\Programme\Miktex\tex/latex/xstring\xstring.sty +(D:\Programme\Miktex\tex/generic/xstring\xstring.tex +\integerpart=\count373 +\decimalpart=\count374 +) +Package: xstring 2021/07/21 v1.84 String manipulations (CT) +) +(D:\Programme\Miktex\tex/latex/siunitx\siunitx.sty +Package: siunitx 2022-05-03 v3.1.1 A comprehensive (SI) units package +\l__siunitx_angle_tmp_dim=\dimen356 +\l__siunitx_angle_marker_box=\box94 +\l__siunitx_angle_unit_box=\box95 +\l__siunitx_compound_count_int=\count375 + +(D:\Programme\Miktex\tex/latex/translations\translations.sty +Package: translations 2022/02/05 v1.12 internationalization of LaTeX2e packages + (CN) +) +\l__siunitx_number_exponent_fixed_int=\count376 +\l__siunitx_number_min_decimal_int=\count377 +\l__siunitx_number_min_integer_int=\count378 +\l__siunitx_number_round_precision_int=\count379 +\l__siunitx_number_group_first_int=\count380 +\l__siunitx_number_group_size_int=\count381 +\l__siunitx_number_group_minimum_int=\count382 +\l__siunitx_table_tmp_box=\box96 +\l__siunitx_table_tmp_dim=\dimen357 +\l__siunitx_table_column_width_dim=\dimen358 +\l__siunitx_table_integer_box=\box97 +\l__siunitx_table_decimal_box=\box98 +\l__siunitx_table_before_box=\box99 +\l__siunitx_table_after_box=\box100 +\l__siunitx_table_before_dim=\dimen359 +\l__siunitx_table_carry_dim=\dimen360 +\l__siunitx_unit_tmp_int=\count383 +\l__siunitx_unit_position_int=\count384 +\l__siunitx_unit_total_int=\count385 + +(D:\Programme\Miktex\tex/latex/l3packages/l3keys2e\l3keys2e.sty +(D:\Programme\Miktex\tex/latex/l3kernel\expl3.sty +Package: expl3 2022-02-24 L3 programming layer (loader) + +(D:\Programme\Miktex\tex/latex/l3backend\l3backend-pdftex.def +File: l3backend-pdftex.def 2022-02-07 L3 backend support: PDF output (pdfTeX) +\l__color_backend_stack_int=\count386 +\l__pdf_internal_box=\box101 +)) +Package: l3keys2e 2022-01-12 LaTeX2e option processing using LaTeX3 keys +))) +(D:\Programme\Miktex\tex/latex/tools\tabularx.sty +Package: tabularx 2020/01/15 v2.11c `tabularx' package (DPC) +\TX@col@width=\dimen361 +\TX@old@table=\dimen362 +\TX@old@col=\dimen363 +\TX@target=\dimen364 +\TX@delta=\dimen365 +\TX@cols=\count387 +\TX@ftn=\toks62 +) +(D:\Programme\Miktex\tex/latex/algorithmicx\algpseudocode.sty +Package: algpseudocode + +(D:\Programme\Miktex\tex/latex/algorithmicx\algorithmicx.sty +Package: algorithmicx 2005/04/27 v1.2 Algorithmicx + +Document Style algorithmicx 1.2 - a greatly improved `algorithmic' style +\c@ALG@line=\count388 +\c@ALG@rem=\count389 +\c@ALG@nested=\count390 +\ALG@tlm=\skip82 +\ALG@thistlm=\skip83 +\c@ALG@Lnr=\count391 +\c@ALG@blocknr=\count392 +\c@ALG@storecount=\count393 +\c@ALG@tmpcounter=\count394 +\ALG@tmplength=\skip84 +) +Document Style - pseudocode environments for use with the `algorithmicx' style +) (D:\Programme\Miktex\tex/latex/algorithms\algorithm.sty +Package: algorithm 2009/08/24 v0.1 Document Style `algorithm' - floating enviro +nment + +(D:\Programme\Miktex\tex/latex/float\float.sty +Package: float 2001/11/08 v1.3d Float enhancements (AL) +\c@float@type=\count395 +\float@exts=\toks63 +\float@box=\box102 +\@float@everytoks=\toks64 +\@floatcapt=\box103 +) +\@float@every@algorithm=\toks65 +\c@algorithm=\count396 +) +(D:\Programme\Miktex\tex/latex/was\gensymb.sty +Package: gensymb 2003/07/02 v1.0 (WaS) +) +(D:\Programme\Miktex\tex/latex/mathtools\mathtools.sty +Package: mathtools 2022/02/07 v1.28a mathematical typesetting tools + +(D:\Programme\Miktex\tex/latex/tools\calc.sty +Package: calc 2017/05/25 v4.3 Infix arithmetic (KKT,FJ) +\calc@Acount=\count397 +\calc@Bcount=\count398 +\calc@Adimen=\dimen366 +\calc@Bdimen=\dimen367 +\calc@Askip=\skip85 +\calc@Bskip=\skip86 +LaTeX Info: Redefining \setlength on input line 80. +LaTeX Info: Redefining \addtolength on input line 81. +\calc@Ccount=\count399 +\calc@Cskip=\skip87 +) +(D:\Programme\Miktex\tex/latex/mathtools\mhsetup.sty +Package: mhsetup 2021/03/18 v1.4 programming setup (MH) +) +\g_MT_multlinerow_int=\count400 +\l_MT_multwidth_dim=\dimen368 +\origjot=\skip88 +\l_MT_shortvdotswithinadjustabove_dim=\dimen369 +\l_MT_shortvdotswithinadjustbelow_dim=\dimen370 +\l_MT_above_intertext_sep=\dimen371 +\l_MT_below_intertext_sep=\dimen372 +\l_MT_above_shortintertext_sep=\dimen373 +\l_MT_below_shortintertext_sep=\dimen374 +\xmathstrut@box=\box104 +\xmathstrut@dim=\dimen375 +) +(D:\Programme\Miktex\tex/latex/tcolorbox\tcolorbox.sty +Package: tcolorbox 2022/01/07 version 5.0.2 text color boxes +\tcb@titlebox=\box105 +\tcb@upperbox=\box106 +\tcb@lowerbox=\box107 +\tcb@phantombox=\box108 +\c@tcbbreakpart=\count401 +\c@tcblayer=\count402 +\c@tcolorbox@number=\count403 +\tcb@temp=\box109 +\tcb@temp=\box110 +\tcb@temp=\box111 +\tcb@temp=\box112 + +(D:\Programme\Miktex\tex/latex/tcolorbox\tcbraster.code.tex +Library (tcolorbox): 'tcbraster.code.tex' version '5.0.2' +\c@tcbrastercolumn=\count404 +\c@tcbrasterrow=\count405 +\c@tcbrasternum=\count406 +\c@tcbraster=\count407 +) (D:\Programme\Miktex\tex/latex/tcolorbox\tcbskins.code.tex +Library (tcolorbox): 'tcbskins.code.tex' version '5.0.2' +\tcb@waterbox=\box113 +(D:\Programme\Miktex\tex/latex/tcolorbox\tcbskinsjigsaw.code.tex +Library (tcolorbox): 'tcbskinsjigsaw.code.tex' version '5.0.2' +)) (D:\Programme\Miktex\tex/latex/tcolorbox\tcbbreakable.code.tex +Library (tcolorbox): 'tcbbreakable.code.tex' version '5.0.2' +(D:\Programme\Miktex\tex/generic/oberdiek\pdfcol.sty +Package: pdfcol 2019/12/29 v1.6 Handle new color stacks for pdfTeX (HO) +) +Package pdfcol Info: New color stack `tcb@breakable' = 1 on input line 23. +\tcb@testbox=\box114 +\tcb@totalupperbox=\box115 +\tcb@totallowerbox=\box116 +) +(D:\Programme\Miktex\tex/latex/tcolorbox\tcbhooks.code.tex +Library (tcolorbox): 'tcbhooks.code.tex' version '5.0.2' +) (D:\Programme\Miktex\tex/latex/tcolorbox\tcbtheorems.code.tex +Library (tcolorbox): 'tcbtheorems.code.tex' version '5.0.2' +) (D:\Programme\Miktex\tex/latex/tcolorbox\tcbfitting.code.tex +Library (tcolorbox): 'tcbfitting.code.tex' version '5.0.2' +\tcbfitdim=\dimen376 +\tcb@lowerfitdim=\dimen377 +\tcb@upperfitdim=\dimen378 +\tcb@cur@hbadness=\count408 +) (D:\Programme\Miktex\tex/latex/tcolorbox\tcbxparse.code.tex +Library (tcolorbox): 'tcbxparse.code.tex' version '5.0.2' +(D:\Programme\Miktex\tex/latex/l3packages/xparse\xparse.sty +Package: xparse 2022-01-12 L3 Experimental document command parser +))) +(D:\Programme\Miktex\tex/latex/incgraph\incgraph.sty +Package: incgraph 2021/10/20 version 1.2.0 LaTeX special graphics inclusion + +(D:\Programme\Miktex\tex/latex/bookmark\bookmark.sty +Package: bookmark 2020-11-06 v1.29 PDF bookmarks (HO) + +(D:\Programme\Miktex\tex/latex/bookmark\bkm-pdftex.def +File: bkm-pdftex.def 2020-11-06 v1.29 bookmark driver for pdfTeX (HO) +\BKM@id=\count409 +)) +\igrbox=\box117 +\igr@length=\dimen379 +\c@igrtarget=\count410 +) (common/lststyles.tex (D:\Programme\Miktex\tex/latex/listings\listings.sty +\lst@mode=\count411 +\lst@gtempboxa=\box118 +\lst@token=\toks66 +\lst@length=\count412 +\lst@currlwidth=\dimen380 +\lst@column=\count413 +\lst@pos=\count414 +\lst@lostspace=\dimen381 +\lst@width=\dimen382 +\lst@newlines=\count415 +\lst@lineno=\count416 +\lst@maxwidth=\dimen383 + +(D:\Programme\Miktex\tex/latex/listings\lstmisc.sty +File: lstmisc.sty 2020/03/24 1.8d (Carsten Heinz) +\c@lstnumber=\count417 +\lst@skipnumbers=\count418 +\lst@framebox=\box119 +) +(D:\Programme\Miktex\tex/latex/listings\listings.cfg +File: listings.cfg 2020/03/24 1.8d listings configuration +)) +Package: listings 2020/03/24 1.8d (Carsten Heinz) +) +(D:\Programme\Miktex\tex/latex/caption\caption.sty +Package: caption 2022/03/01 v3.6b Customizing captions (AR) + +(D:\Programme\Miktex\tex/latex/caption\caption3.sty +Package: caption3 2022/03/17 v2.3b caption3 kernel (AR) +\caption@tempdima=\dimen384 +\captionmargin=\dimen385 +\caption@leftmargin=\dimen386 +\caption@rightmargin=\dimen387 +\caption@width=\dimen388 +\caption@indent=\dimen389 +\caption@parindent=\dimen390 +\caption@hangindent=\dimen391 +Package caption Info: Standard document class detected. +) +\c@caption@flags=\count419 +\c@continuedfloat=\count420 +Package caption Info: float package is loaded. +Package caption Info: hyperref package is loaded. +Package caption Info: listings package is loaded. +Package caption Info: subfigure package is loaded. +) +(D:\Programme\Miktex\tex/latex/standalone\standalone.sty +Package: standalone 2018/03/26 v1.3a Package to include TeX sub-files with prea +mbles + +(D:\Programme\Miktex\tex/latex/tools\shellesc.sty +Package: shellesc 2019/11/08 v1.0c unified shell escape interface for LaTeX +Package shellesc Info: Restricted shell escape enabled on input line 77. +) +(D:\Programme\Miktex\tex/latex/xkeyval\xkeyval.sty +Package: xkeyval 2020/11/20 v2.8 package option processing (HA) + +(D:\Programme\Miktex\tex/generic/xkeyval\xkeyval.tex +(D:\Programme\Miktex\tex/generic/xkeyval\xkvutils.tex +\XKV@toks=\toks67 +\XKV@tempa@toks=\toks68 +) +\XKV@depth=\count421 +File: xkeyval.tex 2014/12/03 v2.7a key=value parser (HA) +)) +(D:\Programme\Miktex\tex/latex/currfile\currfile.sty +Package: currfile 2020/09/29 v0.7d Provides the file path elements of the curre +nt input file + +(D:\Programme\Miktex\tex/latex/filehook\filehook.sty +Package: filehook 2020/09/29 v0.8a Hooks for input files + +(D:\Programme\Miktex\tex/latex/filehook\filehook-2020.sty +Package: filehook-2020 2020/09/29 v0.8a Hooks for input files +)) +\c@currfiledepth=\count422 +) +(D:\Programme\Miktex\tex/latex/gincltex\gincltex.sty +(D:\Programme\Miktex\tex/latex/svn-prov\svn-prov.sty +Package: svn-prov 2010/04/24 v3.1862 Package Date/Version from SVN Keywords +) +Package: gincltex 2011/09/04 v0.3 Include external LaTeX files like graphics + +(D:\Programme\Miktex\tex/latex/adjustbox\adjustbox.sty +Package: adjustbox 2020/08/19 v1.3 Adjusting TeX boxes (trim, clip, ...) + +(D:\Programme\Miktex\tex/latex/adjustbox\adjcalc.sty +Package: adjcalc 2012/05/16 v1.1 Provides advanced setlength with multiple back +-ends (calc, etex, pgfmath) +) +(D:\Programme\Miktex\tex/latex/adjustbox\trimclip.sty +Package: trimclip 2020/08/19 v1.2 Trim and clip general TeX material + +(D:\Programme\Miktex\tex/latex/collectbox\collectbox.sty +Package: collectbox 2012/05/17 v0.4b Collect macro arguments as boxes +\collectedbox=\box120 +) +\tc@llx=\dimen392 +\tc@lly=\dimen393 +\tc@urx=\dimen394 +\tc@ury=\dimen395 +Package trimclip Info: Using driver 'tc-pdftex.def'. + +(D:\Programme\Miktex\tex/latex/adjustbox\tc-pdftex.def +File: tc-pdftex.def 2019/01/04 v2.2 Clipping driver for pdftex +)) +\adjbox@Width=\dimen396 +\adjbox@Height=\dimen397 +\adjbox@Depth=\dimen398 +\adjbox@Totalheight=\dimen399 +\adjbox@pwidth=\dimen400 +\adjbox@pheight=\dimen401 +\adjbox@pdepth=\dimen402 +\adjbox@ptotalheight=\dimen403 + +(D:\Programme\Miktex\tex/latex/ifoddpage\ifoddpage.sty +Package: ifoddpage 2016/04/23 v1.1 Conditionals for odd/even page detection +\c@checkoddpage=\count423 +) +(D:\Programme\Miktex\tex/latex/varwidth\varwidth.sty +Package: varwidth 2009/03/30 ver 0.92; Variable-width minipages +\@vwid@box=\box121 +\sift@deathcycles=\count424 +\@vwid@loff=\dimen404 +\@vwid@roff=\dimen405 +)) +\gincltex@box=\box122 +) +(D:\Programme\Miktex\tex/latex/filemod\filemod-expmin.sty +Package: filemod-expmin 2011/09/19 v1.2 Get and compare file modification times + (expandable; minimal) +)) +(D:\Programme\Miktex\tex/latex/biblatex\biblatex.sty +Package: biblatex 2022/02/02 v3.17 programmable bibliographies (PK/MW) + +(D:\Programme\Miktex\tex/latex/logreq\logreq.sty +Package: logreq 2010/08/04 v1.0 xml request logger +\lrq@indent=\count425 + +(D:\Programme\Miktex\tex/latex/logreq\logreq.def +File: logreq.def 2010/08/04 v1.0 logreq spec v1.0 +)) +\c@tabx@nest=\count426 +\c@listtotal=\count427 +\c@listcount=\count428 +\c@liststart=\count429 +\c@liststop=\count430 +\c@citecount=\count431 +\c@citetotal=\count432 +\c@multicitecount=\count433 +\c@multicitetotal=\count434 +\c@instcount=\count435 +\c@maxnames=\count436 +\c@minnames=\count437 +\c@maxitems=\count438 +\c@minitems=\count439 +\c@citecounter=\count440 +\c@maxcitecounter=\count441 +\c@savedcitecounter=\count442 +\c@uniquelist=\count443 +\c@uniquename=\count444 +\c@refsection=\count445 +\c@refsegment=\count446 +\c@maxextratitle=\count447 +\c@maxextratitleyear=\count448 +\c@maxextraname=\count449 +\c@maxextradate=\count450 +\c@maxextraalpha=\count451 +\c@abbrvpenalty=\count452 +\c@highnamepenalty=\count453 +\c@lownamepenalty=\count454 +\c@maxparens=\count455 +\c@parenlevel=\count456 +\blx@tempcnta=\count457 +\blx@tempcntb=\count458 +\blx@tempcntc=\count459 +\c@blx@maxsection=\count460 +\c@blx@maxsegment@0=\count461 +\blx@notetype=\count462 +\blx@parenlevel@text=\count463 +\blx@parenlevel@foot=\count464 +\c@blx@sectionciteorder@0=\count465 +\blx@entrysetcounter=\count466 +\blx@biblioinstance=\count467 +\labelnumberwidth=\skip89 +\labelalphawidth=\skip90 +\biblabelsep=\skip91 +\bibitemsep=\skip92 +\bibnamesep=\skip93 +\bibinitsep=\skip94 +\bibparsep=\skip95 +\bibhang=\skip96 +\blx@bcfin=\read7 +\blx@bcfout=\write5 +\blx@langwohyphens=\language80 +\c@mincomprange=\count468 +\c@maxcomprange=\count469 +\c@mincompwidth=\count470 +Package biblatex Info: Trying to load biblatex default data model... +Package biblatex Info: ... file 'blx-dm.def' found. + +(D:\Programme\Miktex\tex/latex/biblatex\blx-dm.def +File: blx-dm.def 2022/02/02 v3.17 biblatex localization (PK/MW) +) +Package biblatex Info: Trying to load biblatex custom data model... +Package biblatex Info: ... file 'biblatex-dm.cfg' not found. +\c@afterword=\count471 +\c@savedafterword=\count472 +\c@annotator=\count473 +\c@savedannotator=\count474 +\c@author=\count475 +\c@savedauthor=\count476 +\c@bookauthor=\count477 +\c@savedbookauthor=\count478 +\c@commentator=\count479 +\c@savedcommentator=\count480 +\c@editor=\count481 +\c@savededitor=\count482 +\c@editora=\count483 +\c@savededitora=\count484 +\c@editorb=\count485 +\c@savededitorb=\count486 +\c@editorc=\count487 +\c@savededitorc=\count488 +\c@foreword=\count489 +\c@savedforeword=\count490 +\c@holder=\count491 +\c@savedholder=\count492 +\c@introduction=\count493 +\c@savedintroduction=\count494 +\c@namea=\count495 +\c@savednamea=\count496 +\c@nameb=\count497 +\c@savednameb=\count498 +\c@namec=\count499 +\c@savednamec=\count500 +\c@translator=\count501 +\c@savedtranslator=\count502 +\c@shortauthor=\count503 +\c@savedshortauthor=\count504 +\c@shorteditor=\count505 +\c@savedshorteditor=\count506 +\c@labelname=\count507 +\c@savedlabelname=\count508 +\c@institution=\count509 +\c@savedinstitution=\count510 +\c@lista=\count511 +\c@savedlista=\count512 +\c@listb=\count513 +\c@savedlistb=\count514 +\c@listc=\count515 +\c@savedlistc=\count516 +\c@listd=\count517 +\c@savedlistd=\count518 +\c@liste=\count519 +\c@savedliste=\count520 +\c@listf=\count521 +\c@savedlistf=\count522 +\c@location=\count523 +\c@savedlocation=\count524 +\c@organization=\count525 +\c@savedorganization=\count526 +\c@origlocation=\count527 +\c@savedoriglocation=\count528 +\c@origpublisher=\count529 +\c@savedorigpublisher=\count530 +\c@publisher=\count531 +\c@savedpublisher=\count532 +\c@language=\count533 +\c@savedlanguage=\count534 +\c@origlanguage=\count535 +\c@savedoriglanguage=\count536 +\c@pageref=\count537 +\c@savedpageref=\count538 +\shorthandwidth=\skip97 +\shortjournalwidth=\skip98 +\shortserieswidth=\skip99 +\shorttitlewidth=\skip100 +\shortauthorwidth=\skip101 +\shorteditorwidth=\skip102 +\locallabelnumberwidth=\skip103 +\locallabelalphawidth=\skip104 +\localshorthandwidth=\skip105 +\localshortjournalwidth=\skip106 +\localshortserieswidth=\skip107 +\localshorttitlewidth=\skip108 +\localshortauthorwidth=\skip109 +\localshorteditorwidth=\skip110 +Package biblatex Info: Trying to load compatibility code... +Package biblatex Info: ... file 'blx-compat.def' found. + +(D:\Programme\Miktex\tex/latex/biblatex\blx-compat.def +File: blx-compat.def 2022/02/02 v3.17 biblatex compatibility (PK/MW) +) +Package biblatex Info: Trying to load BibTeX backend compatibility... +Package biblatex Info: ... file 'blx-bibtex.def' found. + +(D:\Programme\Miktex\tex/latex/biblatex\blx-bibtex.def +File: blx-bibtex.def 2022/02/02 v3.17 biblatex compatibility (PK/MW) + + +Package biblatex Warning: Using fall-back BibTeX(8) backend: +(biblatex) functionality may be reduced/unavailable. + +) +Package biblatex Info: Trying to load generic definitions... +Package biblatex Info: ... file 'biblatex.def' found. + (D:\Programme\Miktex\tex/latex/biblatex\biblatex.def +File: biblatex.def 2022/02/02 v3.17 biblatex compatibility (PK/MW) +\c@textcitecount=\count539 +\c@textcitetotal=\count540 +\c@textcitemaxnames=\count541 +\c@biburlbigbreakpenalty=\count542 +\c@biburlbreakpenalty=\count543 +\c@biburlnumpenalty=\count544 +\c@biburlucpenalty=\count545 +\c@biburllcpenalty=\count546 +\biburlbigskip=\muskip18 +\biburlnumskip=\muskip19 +\biburlucskip=\muskip20 +\biburllcskip=\muskip21 +\c@smartand=\count547 +) +Package biblatex Info: Trying to load bibliography style 'numeric'... +Package biblatex Info: ... file 'numeric.bbx' found. + +(D:\Programme\Miktex\tex/latex/biblatex/bbx\numeric.bbx +File: numeric.bbx 2022/02/02 v3.17 biblatex bibliography style (PK/MW) +Package biblatex Info: Trying to load bibliography style 'standard'... +Package biblatex Info: ... file 'standard.bbx' found. + +(D:\Programme\Miktex\tex/latex/biblatex/bbx\standard.bbx +File: standard.bbx 2022/02/02 v3.17 biblatex bibliography style (PK/MW) +\c@bbx:relatedcount=\count548 +\c@bbx:relatedtotal=\count549 +)) +Package biblatex Info: Trying to load citation style 'numeric'... +Package biblatex Info: ... file 'numeric.cbx' found. + +(D:\Programme\Miktex\tex/latex/biblatex/cbx\numeric.cbx +File: numeric.cbx 2022/02/02 v3.17 biblatex citation style (PK/MW) +Package biblatex Info: Redefining '\cite'. +Package biblatex Info: Redefining '\parencite'. +Package biblatex Info: Redefining '\footcite'. +Package biblatex Info: Redefining '\footcitetext'. +Package biblatex Info: Redefining '\smartcite'. +Package biblatex Info: Redefining '\supercite'. +Package biblatex Info: Redefining '\textcite'. +Package biblatex Info: Redefining '\textcites'. +Package biblatex Info: Redefining '\cites'. +Package biblatex Info: Redefining '\parencites'. +Package biblatex Info: Redefining '\smartcites'. +) +Package biblatex Info: Trying to load configuration file... +Package biblatex Info: ... file 'biblatex.cfg' found. + +(D:\Programme\Miktex\tex/latex/biblatex\biblatex.cfg +File: biblatex.cfg +) +Package biblatex Info: Input encoding 'utf8' detected. +Package biblatex Info: Document encoding is UTF8 .... +Package biblatex Info: ... and expl3 +(biblatex) 2022-02-24 L3 programming layer (loader) +(biblatex) is new enough (at least 2020/04/06), +(biblatex) setting 'casechanger=expl3'. + +(D:\Programme\Miktex\tex/latex/biblatex\blx-case-expl3.sty +Package: blx-case-expl3 2022/02/02 v3.17 expl3 case changing code for biblatex +))) +(papers/common/addpackages.tex (papers/000template/packages.tex) +(papers/lambertw/packages.tex) (papers/fm/packages.tex) +(papers/parzyl/packages.tex) (papers/fresnel/packages.tex) +(papers/kreismembran/packages.tex) (papers/sturmliouville/packages.tex) +(papers/laguerre/packages.tex) +(D:\Programme\Miktex\tex/latex/derivative\derivative.sty +Package: derivative 2021/06/03 v1.1 Nice and easy derivatives and differentials + for LaTeX +\l__deriv_vmo_int=\count550 +\l__deriv_tmpa_int=\count551 +\l__deriv_tmpb_int=\count552 +\l__deriv_numerical_int=\count553 +\l__deriv_sort_counter_int=\count554 +\l__deriv_sort_max_int=\count555 +\l__deriv_position_int=\count556 +\l__deriv_rebuild_int=\count557 +) +(papers/zeta/packages.tex) (papers/0f1/packages.tex) (papers/nav/packages.tex) +(papers/transfer/packages.tex) (papers/kra/packages.tex) +(papers/kugel/packages.tex) (papers/hermite/packages.tex) +(papers/ellfilter/packages.tex) (papers/dreieck/packages.tex)) +(papers/common/addbibresources.tex) +\@indexfile=\write6 +\openout6 = `buch.idx'. + + +Writing index file buch.idx +LaTeX Font Info: Trying to load font information for T1+txr on input line 35 +. +(D:\Programme\Miktex\tex/latex/txfonts\t1txr.fd +File: t1txr.fd 2000/12/15 v3.1 +) (buch.aux) +\openout1 = `buch.aux'. + +LaTeX Font Info: Checking defaults for OML/txmi/m/it on input line 35. +LaTeX Font Info: Trying to load font information for OML+txmi on input line +35. + +(D:\Programme\Miktex\tex/latex/txfonts\omltxmi.fd +File: omltxmi.fd 2000/12/15 v3.1 +) +LaTeX Font Info: ... okay on input line 35. +LaTeX Font Info: Checking defaults for OMS/txsy/m/n on input line 35. +LaTeX Font Info: Trying to load font information for OMS+txsy on input line +35. + +(D:\Programme\Miktex\tex/latex/txfonts\omstxsy.fd +File: omstxsy.fd 2000/12/15 v3.1 +) +LaTeX Font Info: ... okay on input line 35. +LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 35. +LaTeX Font Info: ... okay on input line 35. +LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 35. +LaTeX Font Info: ... okay on input line 35. +LaTeX Font Info: Checking defaults for TS1/cmr/m/n on input line 35. +LaTeX Font Info: ... okay on input line 35. +LaTeX Font Info: Checking defaults for OMX/txex/m/n on input line 35. +LaTeX Font Info: Trying to load font information for OMX+txex on input line +35. + +(D:\Programme\Miktex\tex/latex/txfonts\omxtxex.fd +File: omxtxex.fd 2000/12/15 v3.1 +) +LaTeX Font Info: ... okay on input line 35. +LaTeX Font Info: Checking defaults for U/txexa/m/n on input line 35. +LaTeX Font Info: Trying to load font information for U+txexa on input line 3 +5. + +(D:\Programme\Miktex\tex/latex/txfonts\utxexa.fd +File: utxexa.fd 2000/12/15 v3.1 +) +LaTeX Font Info: ... okay on input line 35. +LaTeX Font Info: Checking defaults for PD1/pdf/m/n on input line 35. +LaTeX Font Info: ... okay on input line 35. +LaTeX Font Info: Checking defaults for PU/pdf/m/n on input line 35. +LaTeX Font Info: ... okay on input line 35. + +*geometry* driver: auto-detecting +*geometry* detected driver: pdftex +*geometry* verbose mode - [ preamble ] result: +* driver: pdftex +* paper: custom +* layout: +* layoutoffset:(h,v)=(0.0pt,0.0pt) +* bindingoffset: 28.45274pt +* modes: twoside +* h-part:(L,W,R)=(22.7622pt, 398.33858pt, 34.14331pt) +* v-part:(T,H,B)=(59.75078pt, 569.05511pt, 54.06024pt) +* \paperwidth=483.69684pt +* \paperheight=682.86613pt +* \textwidth=398.33858pt +* \textheight=569.05511pt +* \oddsidemargin=-21.05504pt +* \evensidemargin=-38.12668pt +* \topmargin=-42.5867pt +* \headheight=15.0pt +* \headsep=18.06749pt +* \topskip=10.0pt +* \footskip=25.29494pt +* \marginparwidth=125.0pt +* \marginparsep=7.0pt +* \columnsep=10.0pt +* \skip\footins=9.0pt plus 4.0pt minus 2.0pt +* \hoffset=0.0pt +* \voffset=0.0pt +* \mag=1000 +* \@twocolumnfalse +* \@twosidetrue +* \@mparswitchtrue +* \@reversemarginfalse +* (1in=72.27pt=25.4mm, 1cm=28.453pt) + +(D:\Programme\Miktex\tex/context/base/mkii\supp-pdf.mkii +[Loading MPS to PDF converter (version 2006.09.02).] +\scratchcounter=\count558 +\scratchdimen=\dimen406 +\scratchbox=\box123 +\nofMPsegments=\count559 +\nofMParguments=\count560 +\everyMPshowfont=\toks69 +\MPscratchCnt=\count561 +\MPscratchDim=\dimen407 +\MPnumerator=\count562 +\makeMPintoPDFobject=\count563 +\everyMPtoPDFconversion=\toks70 +) (D:\Programme\Miktex\tex/latex/epstopdf-pkg\epstopdf-base.sty +Package: epstopdf-base 2020-01-24 v2.11 Base part for package epstopdf +Package epstopdf-base Info: Redefining graphics rule for `.eps' on input line 4 +85. + +(D:\Programme\Miktex\tex/latex/00miktex\epstopdf-sys.cfg +File: epstopdf-sys.cfg 2021/03/18 v2.0 Configuration of epstopdf for MiKTeX +)) +Package hyperref Info: Link coloring OFF on input line 35. + +(D:\Programme\Miktex\tex/latex/hyperref\nameref.sty +Package: nameref 2021-04-02 v2.47 Cross-referencing by name of section + +(D:\Programme\Miktex\tex/latex/refcount\refcount.sty +Package: refcount 2019/12/15 v3.6 Data extraction from label references (HO) +) +(D:\Programme\Miktex\tex/generic/gettitlestring\gettitlestring.sty +Package: gettitlestring 2019/12/15 v1.6 Cleanup title references (HO) +) +\c@section@level=\count564 +) +LaTeX Info: Redefining \ref on input line 35. +LaTeX Info: Redefining \pageref on input line 35. +LaTeX Info: Redefining \nameref on input line 35. + + +Package pgfplots Warning: running in backwards compatibility mode (unsuitable t +ick labels; missing features). Consider writing \pgfplotsset{compat=1.18} into +your preamble. + on input line 35. + +LaTeX Font Info: Trying to load font information for OT1+txr on input line 3 +5. +(D:\Programme\Miktex\tex/latex/txfonts\ot1txr.fd +File: ot1txr.fd 2000/12/15 v3.1 +) +LaTeX Font Info: Trying to load font information for U+txsya on input line 3 +5. + +(D:\Programme\Miktex\tex/latex/txfonts\utxsya.fd +File: utxsya.fd 2000/12/15 v3.1 +) +LaTeX Font Info: Trying to load font information for U+txsyb on input line 3 +5. + +(D:\Programme\Miktex\tex/latex/txfonts\utxsyb.fd +File: utxsyb.fd 2000/12/15 v3.1 +) +LaTeX Font Info: Trying to load font information for U+txmia on input line 3 +5. + +(D:\Programme\Miktex\tex/latex/txfonts\utxmia.fd +File: utxmia.fd 2000/12/15 v3.1 +) +LaTeX Font Info: Trying to load font information for U+txsyc on input line 3 +5. + +(D:\Programme\Miktex\tex/latex/txfonts\utxsyc.fd +File: utxsyc.fd 2000/12/15 v3.1 +) +LaTeX Font Info: Trying to load font information for U+rsfs on input line 35 +. + +(D:\Programme\Miktex\tex/latex/jknappen\ursfs.fd +File: ursfs.fd 1998/03/24 rsfs font definition file (jk) +) +LaTeX Font Info: Trying to load font information for U+wasy on input line 35 +. + +(D:\Programme\Miktex\tex/latex/wasysym\uwasy.fd +File: uwasy.fd 2020/01/19 v2.4 Wasy-2 symbol font definitions +) +Package xypdf Info: Line width: 0.56pt on input line 35. + +(D:\Programme\Miktex\tex/latex/translations/dicts\translations-basic-dictionary +-german.trsl +File: translations-basic-dictionary-german.trsl (german translation file `trans +lations-basic-dictionary') +) +Package translations Info: loading dictionary `translations-basic-dictionary' f +or `german'. on input line 35. + +(D:\Programme\Miktex\tex/latex/translations/dicts\translations-basic-dictionary +-english.trsl +File: translations-basic-dictionary-english.trsl (english translation file `tra +nslations-basic-dictionary') +) +Package translations Info: loading dictionary `translations-basic-dictionary' f +or `english'. on input line 35. +\symgns@font=\mathgroup12 +LaTeX Font Info: Overwriting symbol font `gns@font' in version `bold' +(Font) TS1/txr/m/n --> TS1/txr/b/n on input line 35. +Package gensymb Info: Math companion symbols declared on input line 35. +LaTeX Info: Redefining \degree on input line 35. +LaTeX Info: Redefining \celsius on input line 35. +Package gensymb Info: Using text companion symbols for \degree, \celsius and \p +erthousand on input line 35. +LaTeX Info: Redefining \ohm on input line 35. +Package gensymb Info: Using \textohm for \ohm on input line 35. +LaTeX Info: Redefining \micro on input line 35. +Package gensymb Info: Using \textmu for \micro on input line 35. +\c@lstlisting=\count565 +Package caption Info: Begin \AtBeginDocument code. +Package caption Info: End \AtBeginDocument code. +Package biblatex Info: Trying to load language 'ngerman'... +Package biblatex Info: ... file 'ngerman.lbx' found. + (D:\Programme\Miktex\tex/latex/biblatex/lbx\ngerman.lbx +File: ngerman.lbx 2022/02/02 v3.17 biblatex localization (PK/MW) +Package biblatex Info: Trying to load language 'german'... +Package biblatex Info: ... file 'german.lbx' found. + +(D:\Programme\Miktex\tex/latex/biblatex/lbx\german.lbx +File: german.lbx 2022/02/02 v3.17 biblatex localization (PK/MW) +) +Package biblatex Info: Trying to load language 'german'... +Package biblatex Info: ... file 'german.lbx' found. + +(D:\Programme\Miktex\tex/latex/biblatex/lbx\german.lbx +File: german.lbx 2022/02/02 v3.17 biblatex localization (PK/MW) + +Runaway definition? +-> +! TeX capacity exceeded, sorry [main memory size=3000000]. + \XKV@resb + +l.575 } + +If you really absolutely need more capacity, +you can ask a wizard to enlarge me. + + +Here is how much of TeX's memory you used: + 81845 strings out of 478582 + 2061696 string characters out of 2856069 + 3000001 words of memory out of 3000000 + 98832 multiletter control sequences out of 15000+600000 + 484206 words of font info for 75 fonts, out of 8000000 for 9000 + 1143 hyphenation exceptions out of 8191 + 105i,3n,99p,3369b,2422s stack positions out of 10000i,1000n,20000p,200000b,80000s +! ==> Fatal error occurred, no output PDF file produced! diff --git a/buch/papers/nav/einleitung.tex b/buch/papers/nav/einleitung.tex index 42f4b6c..e24f294 100644 --- a/buch/papers/nav/einleitung.tex +++ b/buch/papers/nav/einleitung.tex @@ -1,17 +1,9 @@ -\documentclass[12pt]{scrartcl} -\usepackage{ucs} -\usepackage[utf8]{inputenc} -\usepackage[T1]{fontenc} -\usepackage{graphicx} -\begin{document} + \section{Einleitung} Heut zu Tage ist die Navigation ein Teil des Lebens. Man versendet dem Kollegen seinen Standort, um sich das ewige Erklären zu sparen oder gibt die Adresse des Ziels ein um sich die Sucherei zu schenken. Dies wird durch Technologien wie Funknavigation, welches ein auf Langzeitmessung beruhendes Hyperbelverfahren mit Langwellen ist oder die verbreitete Satellitennavigation, welche vier Satelliten für eine Messung zur Standortbestimmung nutzt. Vor all diesen technologischen Fortschritten gab es lediglich die Astronavigation, welche heute noch auf kleineren Schiffen benötigt wird im Falle eines Stromausfalls. Aber wie funktioniert die Navigation mit den Sternen? Welche Hilfsmittel benötigt man, welche Rolle spielt die Mathematik und weshalb kann die Erde nicht flach sein? -In diesem Kapitel werden genau diese Fragen mithilfe des Nautischen Dreiecks, der Sphärischen Trigonometrie und einigen Hilfsmitteln und Messgeräten beantwortet. - - -\end{document} \ No newline at end of file +In diesem Kapitel werden genau diese Fragen mithilfe des Nautischen Dreiecks, der Sphärischen Trigonometrie und einigen Hilfsmitteln und Messgeräten beantwortet. \ No newline at end of file diff --git a/buch/papers/nav/flatearth.tex b/buch/papers/nav/flatearth.tex index b14dd4b..fbabbde 100644 --- a/buch/papers/nav/flatearth.tex +++ b/buch/papers/nav/flatearth.tex @@ -1,31 +1,23 @@ -\documentclass[12pt]{scrartcl} -\usepackage{ucs} -\usepackage[utf8]{inputenc} -\usepackage[T1]{fontenc} -\usepackage{graphicx} -\begin{document} - \section{Warum ist die Erde nicht flach?} - - \begin{figure}[h] - \begin{center} - \includegraphics[width=10cm]{bilder/projektion.png} - \caption{Mercator Projektion} - \end{center} - \end{figure} + +\section{Warum ist die Erde nicht flach?} + +\begin{figure}[h] + \begin{center} + \includegraphics[width=10cm]{papers/nav/bilder/projektion.png} + \caption[Mercator Projektion]{Mercator Projektion} + \end{center} +\end{figure} Es gibt heut zu Tage viele Beweise dafür, dass die Erde eine Kugel ist. Die Fotos von unserem Planeten oder die Berichte der Astronauten. - Aber schon vor ca. 2300 Jahren hat Aristotoles bemerkt, dass Schiffe im Horizont verschwinden und die einzige Erklärung dafür die Kugelgestalt der Erde ist oder der Erdschatten bei einer Mondfinsternis immer rund ist. - Eratosthenes konnte etwa 100 Jahre später den Erdumfang berechnen. - Er beobachtete, dass die Sonne in Syene mittags im Zenit steht und gleichzeitig in Alexandria unter einem Winkel einfällt. - Mithilfe der Geometrie konnte er mit dem Abstand der Städte und dem Einfallswinkel den Umfang berechnen. - Auch in der Navigation würden grobe Fehler passieren, wenn man davon ausgeht, dass die Erde eine Scheibe ist. +Aber schon vor ca. 2300 Jahren hat Aristotoles bemerkt, dass Schiffe im Horizont verschwinden und die einzige Erklärung dafür die Kugelgestalt der Erde ist oder der Erdschatten bei einer Mondfinsternis immer rund ist. +Eratosthenes konnte etwa 100 Jahre später den Erdumfang berechnen. +Er beobachtete, dass die Sonne in Syene mittags im Zenit steht und gleichzeitig in Alexandria unter einem Winkel einfällt. +Mithilfe der Geometrie konnte er mit dem Abstand der Städte und dem Einfallswinkel den Umfang berechnen. +Auch in der Navigation würden grobe Fehler passieren, wenn man davon ausgeht, dass die Erde eine Scheibe ist. Man sieht es zum Beispiel sehr gut, wenn man die Anwendung Google Earth und eine Weltkarte vergleicht. Grönland ist auf der Weltkarte so gross wie Afrika. In der Anwendung Google Earth jedoch ist Grönland etwa so gross wie Algerien. Das liegt daran, das man die 3D – Weltkarte nicht einfach auslegen kann. Der Kartograph Gerhard Mercator projizierte die Erdkugel auf ein Papier und erstellte so eine winkeltreue Karte. Jedoch wurden die Länder, die einen grösseren Abstand zum Äquator haben vergrössert, damit die Winkel stimmen können. -Wurde man also nun davon ausgehen, dass die Erde flach ist so würden wir nie dort ankommen wo wir es wollen. - - -\end{document} \ No newline at end of file +Wurde man also nun davon ausgehen, dass die Erde flach ist so würden wir nie dort ankommen wo wir es wollen. \ No newline at end of file diff --git a/buch/papers/nav/main.tex b/buch/papers/nav/main.tex index 9758de9..8688421 100644 --- a/buch/papers/nav/main.tex +++ b/buch/papers/nav/main.tex @@ -4,9 +4,9 @@ % (c) 2020 Hochschule Rapperswil % \chapter{Thema\label{chapter:nav}} -\lhead{Thema} +\lhead{Sphärische Navigation} \begin{refsection} -\chapterauthor{Hans Muster} +\chapterauthor{Enez Erdem, Marc Kühne} @@ -15,6 +15,7 @@ \input{papers/nav/flatearth.tex} \input{papers/nav/trigo.tex} \input{papers/nav/nautischesdreieck.tex} +\input{papers/nav/sincos.tex} \printbibliography[heading=subbibliography] \end{refsection} diff --git a/buch/papers/nav/nautischesdreieck.tex b/buch/papers/nav/nautischesdreieck.tex index 0bb213c..d6e1388 100644 --- a/buch/papers/nav/nautischesdreieck.tex +++ b/buch/papers/nav/nautischesdreieck.tex @@ -1,12 +1,3 @@ -\documentclass[12pt]{scrartcl} -\usepackage{ucs} -\usepackage[utf8]{inputenc} -\usepackage[T1]{fontenc} -\usepackage{graphicx} - \usepackage{xcolor, soul} - \sethlcolor{yellow} -\begin{document} - \setlength{\parindent}{0em} \section{Das Nautische Dreieck} \subsection{Definition des Nautischen Dreiecks} Ursprünglich ist das nautische Dreieck ein Hilfsmittel der sphärischen Astronomie um die momentane Position eines Fixsterns oder Planeten an der \textbf{Himmelskugel}. @@ -19,7 +10,7 @@ Das Nautische Dreieck definiert sich durch folgende Ecken: \end{itemize} Der Zenit ist jener Punkt, der vom Erdmittelpunkt durch denn eigenen Standort an die Himmelskugel verlängert wird. Ein Gestirn ist ein Planet oder ein Fixstern, zu welchen es diverse Jahrbücher mit allen astronomischen Eigenschaften gibt. -Der Himmelspol ist der Nordpol an die Himmelskugel projeziert. +Der Himmelspol ist der Nordpol an die Himmelskugel projiziert. \\ Zur Anwendung der Formeln der sphärischen Trigonometrie gelten folgende einfache Zusammenhänge: \begin{itemize} @@ -35,7 +26,7 @@ $\alpha \ \widehat{=} \ Rektaszension $ $\delta \ \widehat{=} \ Deklination =$ Breitengrad des Gestirns -$\theta \ \widehat{=} \ Sternzeit$ +$\theta \ \widehat{=} \ Sternzeit\ von\ Greenwich$ $\phi \ \widehat{=} \ Geographische \ Breite $ @@ -46,24 +37,31 @@ $a \ \widehat{=} \ Azimut $ $h \ \widehat{=} \ Hoehe$ - +\newpage \subsection{Zusammenhang des Nautischen Dreiecks und des Kugeldreiecks auf der Erdkugel} - +\begin{figure}[h] \begin{center} - \includegraphics[height=5cm,width=5cm]{Bilder/kugel3.png} + \includegraphics[height=5cm,width=5cm]{papers/nav/bilder/kugel3.png} + \caption[Nautisches Dreieck]{Nautisches Dreieck} \end{center} +\end{figure} + Wie man im oberen Bild sieht und auch am Anfang dieses Kapitels bereits erwähnt wurde, liegt das Nautische Dreieck auf der Himmelskugel mit den Ecken Zenit, Gestirn und Himmelsnordpol. Das selbe Dreieck kann man aber auch auf die Erdkugel projezieren und hat dann die Ecken Standort, Bildpunkt und Nordpol. Als Bildpunkt wird in der astronomischen Navigation der Punkt bezeichnet, an dem eine gedachte Linie vom Mittelpunkt eines beobachteten Gestirns zum Mittelpunkt der Erde die Erdoberfläche schneidet. -\subsection{Varianten vom Nautischen Dreieck} + \section{Standortbestimmung ohne elektronische Hilfsmittel} Um den eigenen Standort herauszufinden, wird in diesem Kapitel die Projektion Nautische Dreieck auf der Erdkugel zur Hilfe genommen. Mithilfe einiger Hilfsmittel und der Sphärischen Trigonometrie kann man dann die Längen- und Breitengrade des eigenen Standortes bestimmen. +\begin{figure}[h] \begin{center} - \includegraphics[width=6cm]{Bilder/dreieck.png} - \end{center} + \includegraphics[width=6cm]{papers/nav/bilder/dreieck.png} + \caption[Dreieck für die Standortbestimmung]{Dreieck für die Standortbestimmung} + \end{center} +\end{figure} + @@ -73,8 +71,8 @@ Unser eigener Standort ist der gesuchte Punkt A. \subsection{Ecke A - Nordpol} Der Vorteil ander Idee des Nautischen Dreiecks ist, dass eine Ecke immer der Nordpol (in der Himmelskugel der Himmelsnordpol) ist. Somit ist diese Ecke immer bekannt und nur deswegen sind die Zusammenhänge von Rektaszension, Sternzeit und Deklination so simpel. - -\subsection{Ecke B und C - Bildpunkt XXX und YYY} +\newpage +\subsection{Ecke B und C - Bildpunkt X und Y} Für die Standortermittlung benötigt man als weiteren Punkt ein Gestirn bzw. seinen Bildpunkt auf der Erdkugel. Damit das trigonometrische Rechnen einfacher wird, werden hier zwei Gestirne zur Hilfe genommen. \\ @@ -96,64 +94,80 @@ Die Tatsache, dass sich die Himmelskugel ca. vier Minuten schneller um die eige Die Lösung ist die Sternzeit. Am Frühlingspunkt (21. März) 12:00 Uhr ist die Sternzeit $\theta = 0$. - + Die Sternzeit geht vom Frühlungspunkt aus, an welchem die Sonne den Himmelsäquator schneidet. Für die Standortermittlung auf der Erdkugel ist es am einfachsten, wenn man die Sternzeit von Greenwich berechnet. -Für die Sternzeit von Greenwich braucht man als erstes das Julianische Datum vom aktuellen Tag, welches sich leicht recherchieren oder berechnen lässt: \hl{$JD=....$} - -Nun berechnet man $T=\frac{JD-2451545}{36525}$ und damit die mittlere Sternzeit von Greenwich +Für die Sternzeit von Greenwich braucht man als erstes das Julianische Datum $T$ vom aktuellen Tag, welches sich leicht recherchieren lässt. +Im Anschluss berechnet man die Sternzeit von Greenwich +\\ +\\ +$T_{Greenwich} = 6^h 41^m 50^s,54841 + 8640184^s,812866 \cdot T + 0^s,093104 \cdot T^2 - 0^s,0000062 \cdot T^3$. +\\ +\\ +Wenn mann die Sternzeit von Greenwich ausgerechnet hat, kann man den Längengrad des Gestirns $\lambda = \theta - \alpha$ mithilfe der Rektaszension und Sternzeit bestimmen. +Dies gilt analog auch für das zweite Gestirn. - $T_{Greenwich} = 6^h 41^m 50^s,54841 + 8640184^s,812866 * T + 0^s,093104*T^2 - 0^s,0000062 * T^3$. - - Wenn mann die Sternzeit von Greenwich ausgerechnet hat, kann man den Längengrad des Gestirns $\lambda = \theta - \alpha$ mithilfe der Rektaszension und Sternzeit bestimmen. - Dies gilt analog auch für das zweite Gestirn. - - \subsubsection{Deklination} - Die Deklination $\delta$ beschreibt den Winkel zwischen dem Himmelsäquator und Gestirn und ergibt schlussendlich den Breitengrad $\psi = \delta$. - +\subsubsection{Deklination} +Die Deklination $\delta$ beschreibt den Winkel zwischen dem Himmelsäquator und Gestirn und ergibt schlussendlich den Breitengrad. +\newpage \subsection{Bestimmung des eigenen Standortes P} Nun hat man die Koordinaten der beiden Gestirne und man weiss die Koordinaten des Nordpols. Somit können wir ein erstes Kugeldreieck auf der Erde aufspannen. +\begin{figure}[h] \begin{center} - \includegraphics[width=5cm]{Bilder/dreieck.png} - \end{center} + \includegraphics[width=4.5cm]{papers/nav/bilder/dreieck.png} + \caption[Dreieck für die Standortbestimmung]{Dreieck für die Standortbestimmung} + \end{center} +\end{figure} \subsubsection{Bestimmung des ersten Dreiecks} - Mithilfe des sphärischen Trigonometrie und den darausfolgenden Zusammenhängen des Nautischen Dreiecks können wir nun alle Seiten des Dreiecks $ABC$ berechnen. - - Die Seitenlänge der Seite "Nordpol zum Bildpunkt XXX" sei $c$. - Dann ist $c = \frac{\pi}{2} - \delta_1$. - - Die Seitenlänge der Seite "Nordpol zum Bildpunkt YYY" sei $b$. - Dann ist $b = \frac{\pi}{2} - \delta_2$. - - Der Innenwinkel beim der Ecke "Nordpol" sei $\alpha$. - Dann ist $ \alpha = |\lambda_1 - \lambda_2|$. - + +$A=$ Nordpol + +$B=$ Bildpunkt des Gestirns XXX + +$C=$ Bildpunkt des Gestirns YYY +\\ +\\ +Mithilfe des sphärischen Trigonometrie und den darausfolgenden Zusammenhängen des Nautischen Dreiecks können wir nun alle Seiten des Dreiecks $ABC$ berechnen. + +Die Seitenlänge der Seite "Nordpol zum Bildpunkt XXX" sei $c$. +Dann ist $c = \frac{\pi}{2} - \delta_1$. + +Die Seitenlänge der Seite "Nordpol zum Bildpunkt YYY" sei $b$. +Dann ist $b = \frac{\pi}{2} - \delta_2$. + +Der Innenwinkel beim der Ecke "Nordpol" sei $\alpha$. +Dann ist $ \alpha = |\lambda_1 - \lambda_2|$. + mit - - $\delta_1 =$ Deklination Bildpunkt XXX - + +$\delta_1 =$ Deklination Bildpunkt XXX + $\delta_2 =$ Deklination Bildpunk YYY $\lambda_1 =$ Längengrad Bildpunkt XXX $\lambda_2 =$ Längengrad Bildpunkt YYY - Wichtig ist: Die Differenz der Längengrade ist gleich der Innenwinkel Alpha, deswegen der Betrag! + +Wichtig ist: Die Differenz der Längengrade ist gleich der Innenwinkel Alpha, deswegen der Betrag! Nun haben wir die beiden Seiten $c\ und\ b$ und den Winkel $\alpha$, der sich zwischen diesen Seiten befindet. -Mithilfe des Seiten-Kosinussatzes $cos(a) = cos(b)*cos(c) + sin(b) * sin(c)*cos(\alpha)$ können wir nun die dritte Seitenlänge bestimmen. +Mithilfe des Seiten-Kosinussatzes + +$cos(a) = \cos(b)\cdot \cos(c) + \sin(b) \cdot \sin(c)\cdot \cos(\alpha)$ können wir nun die dritte Seitenlänge bestimmen. + Es ist darauf zu achten, dass hier natürlich die Seitenlängen in Bogenmass sind und dementsprechend der Kosinus und Sinus verwendet wird. Jetzt fehlen noch die beiden anderen Innenwinkel $\beta \ und\ \gamma$. Dieser bestimmen wir mithilfe des Sinussatzes $\frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)}$. -Hier muss man aufpassen, dass man Seite von Winkel unterscheiden kann. Im Zähler sind die Seiten, im Nenner die Winkel. Somit ist $sin(\beta) = sin(b) * \frac{sin(\alpha)}{sin(a)} $. +Hier muss man aufpassen, dass man Seite von Winkel unterscheiden kann. Im Zähler sind die Seiten, im Nenner die Winkel. Somit ist $\beta =\sin^{-1} [\sin(b) \cdot \frac{\sin(\alpha)}{\sin(a)}] $. Schlussendlich haben wir die Seiten $a,b\ und \ c$, die Ecken A,B und C und die Winkel $\alpha, \beta \ und \ \gamma$ bestimmt und somit das ganze erste Kugeldreieck berechnet. @@ -168,23 +182,22 @@ Die beiden Seitenlängen kann man mit dem Sextant messen und durch eine einfache mit $h_B=$ Höhe von Gestirn in B und $h_C=$ Höhe von Gestirn in C mit Sextant gemessen. \\ -Nun muss man eine Verbindungslinie ziehen zwischen P und A. Die Länge $l$ dieser Linie entspricht der gesuchten geographischen Breite $\delta$. Diese lässt sich mithilfe des Dreiecks $ABP$ mit den bekannten Seiten $c\ und \ pb$ und des Seiten-Kosinussatzes +Nun muss man eine Verbindungslinie ziehen zwischen P und A. Die Länge $l$ dieser Linie entspricht der gesuchten geographischen Breite $\delta$. Diese lässt sich mithilfe des Dreiecks $ABP$, den bekannten Seiten $c\ und \ pb$ und des Seiten-Kosinussatzes berechnen. -$cos(l) = cos(c)*cos(pb) + sin(c) * sin(pb)*cos(\beta)$ berechnen. +Für den Seiten-Kosinussatz benötigt es noch $\kappa$. +Da wir aber $pc$, $pb$ und $a$ kennen, kann man mit dem Seiten-Kosinussatz den Winkel $\beta1$ berechnen und anschliessend $\beta + \beta1 =\kappa$. -Es fehlt uns noch $\beta1$. -Da wir aber $pc$, $pb$ und $a$ kennen, kann man mit dem Seiten-Kosinussatz den Winkel $\beta1$ berechnen -\\ +Somit ist $cos(l) = \cos(c)\cdot \cos(pb) + \sin(c) \cdot \sin(pb) \cdot \cos(\kappa)$ -Somit ist $\delta = cos(l) = cos(c)*cos(pb) + sin(c) * sin(pb)*cos(\beta)$. -\\ +und -Für die Geographische Länge $\lambda$ des eigenen Standortes muss man den Winkel $\omega$, welcher sich im Dreieck $ABP$ în der Ecke bei $A$ befindet mithilfe des Sinussatzes $\frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)}$ bestimmen. +$\delta =\cos^{-1} [\cos(c) \cdot \cos(pb) + \sin(c) \cdot \sin(pb) \cdot \cos(\kappa)]$. \\ -Somit ist $\omega=sin(pb)*\frac{sin(\beta)}{sin(l)}$ und unsere gesuchte geographische Länge schlussendlich -$\lambda=\lambda_1 - \omega$ - - +Für die Geographische Länge $\lambda$ des eigenen Standortes muss man den Winkel $\omega$, welcher sich im Dreieck $ACP$ in der Ecke bei $A$ befindet mithilfe des Sinussatzes $\frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)}$ bestimmen. +\\ -\end{document} \ No newline at end of file +Somit ist $\omega=\sin^{-1}[\sin(pc) \cdot \frac{\sin(\gamma)}{\sin(l)}]$ und unsere gesuchte geographische Länge schlussendlich +$\lambda=\lambda_1 - \omega$ mit $\lambda_1$=Längengrad Bildpunkt XXX. +\newpage +\listoffigures \ No newline at end of file diff --git a/buch/papers/nav/packages.tex b/buch/papers/nav/packages.tex index 16d3a3c..9faa48d 100644 --- a/buch/papers/nav/packages.tex +++ b/buch/papers/nav/packages.tex @@ -8,8 +8,3 @@ % following example %\usepackage{packagename} -\usepackage{ucs} -\usepackage[utf8]{inputenc} -\usepackage[T1]{fontenc} -\usepackage{graphicx} -\usepackage{xcolor, soul} \ No newline at end of file diff --git a/buch/papers/nav/sincos.tex b/buch/papers/nav/sincos.tex new file mode 100644 index 0000000..23e3303 --- /dev/null +++ b/buch/papers/nav/sincos.tex @@ -0,0 +1,16 @@ + + + +\section{Warum sind die Sinus- und Kosinusfunktionen spezielle Funktionen?} +Es gibt Hinweise, dass sich schon die Babylonier und Ägypter vor 4000 Jahren sich mit Problemen der sphärischen Trigonometrie beschäftigt haben um den Lauf von Gestirnen (Himmelskörper) zu berechnen. +Jedoch konnten sie sie nicht lösen. +Die Geschichte der sphärischen Trigonometrie ist daher eng mit der Astronomie verknüpft. Ca. 350 vor Christus dachten die Griechen über Kugelgeometrie nach und wurde zu einer Hilfswissenschaft der Astronomen. +In Folge werden auch die ersten Sätze aufgestellt und wenige Jahrhunderte später wurden Berechnungen zu diesem Thema angestellt. +In dieser Zeit wurden auch die ersten Sternenkarten angefertigt, jedoch kannte man damals die Sinusfunktion noch nicht. +Aus Indien stammten die ersten Ansätze zu den Kosinussätzen. +Aufbauend auf den indischen und griechischen Forschungen entwickeln die Araber um 900 den Sinussatz. +Zur Zeit der großen Entdeckungsreisen im 15. Jahrhundert wurden die Forschungen in sphärischer Trigonometrie wieder forciert. +Der Sinussatz, die Tangensfunktion und der neu entwickelte Seitenkosinussatz wurden in dieser Zeit bereits verwendet. +Im nächsten Jahrhundert folgte der Winkelkosinussatz. +Durch weitere mathematische Entwicklungen wie den Logarithmus wurden im Laufe des nächsten Jahrhunderts viele neue Methoden und kartographische Anwendungen der Kugelgeometrie entdeckt. +Im 19. und 20. Jahrhundert wurden weitere nicht-euklidische Geometrien entwickelt und die sphärische Trigonometrie fand auch ihre Anwendung in der Relativitätstheorie. \ No newline at end of file diff --git a/buch/papers/nav/trigo.tex b/buch/papers/nav/trigo.tex index 0dbd7a1..2edd651 100644 --- a/buch/papers/nav/trigo.tex +++ b/buch/papers/nav/trigo.tex @@ -1,14 +1,6 @@ -\documentclass[12pt]{scrartcl} -\usepackage{ucs} -\usepackage[utf8]{inputenc} -\usepackage[T1]{fontenc} -\usepackage{graphicx} +\section{Sphärische Trigonometrie} +\subsection{Das Kugeldreieck} - -\begin{document} - \section{Sphärische Trigonometrie} - \subsection{Das Kugeldreieck} - Werden drei voneinander verschiedene Punkte, die sich nicht auf derselben Grosskreisebene befinden, mit Grosskreisbögen verbunden, so entsteht ein Kugeldreieck ABC. A, B und C sind die Ecken des Dreiecks und dessen Seiten sind die Grosskreisbögen zwischen den Eckpunkten. Da die Länge der Grosskreisbögen wegen der Abhängigkeit vom Kugelradius ungeeignet ist, wird die Grösse einer Seite mit dem zugehörigen Mittelpunktwinkel des Grosskreisbogens angegeben. @@ -19,7 +11,8 @@ Wenn man drei Eckpunkte miteinander verbindet, ergeben sich immer 16 Kugeldreiec Jenes Kugeldreieck mit den Seitenlängen $a, b, c < \pi$ und den Winkeln $\alpha, \beta, \gamma < \pi$ nennt man Eulersche Dreiecke. \begin{figure}[h] \begin{center} - \includegraphics[width=6cm]{Bilder/kugel1.png} + \includegraphics[width=6cm]{papers/nav/bilder/kugel1.png} + \caption[Das Kugeldreieck]{Das Kugeldreieck} \end{center} \end{figure} @@ -27,12 +20,15 @@ Jenes Kugeldreieck mit den Seitenlängen $a, b, c < \pi$ und den Winkeln $\alpha \subsection{Rechtwinkliges Dreieck und Rechtseitiges Dreieck} Wie auch im uns bekannten Dreieck gibt es beim Kugeldreieck auch ein Rechtwinkliges Kugeldreieck, bei dem ein Winkel $\frac{\pi}{2}$ ist. Ein Rechtseitiges Dreieck gibt es jedoch nur beim Kugeldreieck, weil dort eine Seitenlänge $\frac{\pi}{2}$ lang sein muss. - \newpage +\newpage \subsection{Winkelangabe} - +\begin{figure}[h] + \begin{center} - \includegraphics[width=8cm]{Bilder/kugel2.png} + \includegraphics[width=8cm]{papers/nav/bilder/kugel2.png} + \caption[Winkelangabe im Kugeldreieck]{Winkelangabe im Kugeldreieck} \end{center} +\end{figure} Die Winkel eines Kugeldreiecks sind die, welche die Halbtangenten in den Eckpunkten einschliessen. Für die Summe der Innenwinkel gilt $\alpha+\beta+\gamma = \frac{A}{r^2} + \pi$ und @@ -46,6 +42,4 @@ Das bedeutet, dass $\frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta) \subsection{Sphärischer Satz des Pythagoras für das rechtwinklige Kugeldreieck} Es gibt in der sphärischen Trigonometrie eigentlich garkeinen "Satz des Pythagoras", wie man ihn aus der zweidimensionalen Geometrie kennt. In der sphärischen Trigonometrie gibt es aber auch einen Satz, der alle drei Seiten eines rechtwinkligen Kugeldreiecks in eine Beziehung bringt. -Es gilt nämlich: $\cos c = \cos a * \cos b$ wenn $\alpha \lor \beta \lor \gamma = \frac{\pi}{2} $. - -\end{document} \ No newline at end of file +Es gilt nämlich: $\cos c = \cos a \cdot \cos b$ wenn $\alpha= \frac{\pi}{2} \lor \beta=\frac{\pi}{2} \lor \gamma = \frac{\pi}{2} $. \ No newline at end of file -- cgit v1.2.1 From c0f7b4bd46fa66526f8ddfb20ce9edbcfbb03d81 Mon Sep 17 00:00:00 2001 From: "ENEZ-PC\\erdem" Date: Tue, 17 May 2022 16:02:53 +0200 Subject: no message --- buch/papers/nav/main.tex | 5 +++-- buch/papers/nav/nautischesdreieck.tex | 37 +++++++++++++++++++---------------- buch/papers/nav/packages.tex | 1 + buch/papers/nav/trigo.tex | 36 +++++++++++++++++++++++++++------- 4 files changed, 53 insertions(+), 26 deletions(-) diff --git a/buch/papers/nav/main.tex b/buch/papers/nav/main.tex index 8688421..de8d1d6 100644 --- a/buch/papers/nav/main.tex +++ b/buch/papers/nav/main.tex @@ -3,7 +3,7 @@ % % (c) 2020 Hochschule Rapperswil % -\chapter{Thema\label{chapter:nav}} +\chapter{Spährische Navigation\label{chapter:nav}} \lhead{Sphärische Navigation} \begin{refsection} \chapterauthor{Enez Erdem, Marc Kühne} @@ -11,11 +11,12 @@ \input{papers/nav/einleitung.tex} +\input{papers/nav/sincos.tex} \input{papers/nav/geschichte.tex} \input{papers/nav/flatearth.tex} \input{papers/nav/trigo.tex} \input{papers/nav/nautischesdreieck.tex} -\input{papers/nav/sincos.tex} + \printbibliography[heading=subbibliography] \end{refsection} diff --git a/buch/papers/nav/nautischesdreieck.tex b/buch/papers/nav/nautischesdreieck.tex index d6e1388..b61e908 100644 --- a/buch/papers/nav/nautischesdreieck.tex +++ b/buch/papers/nav/nautischesdreieck.tex @@ -37,6 +37,7 @@ $a \ \widehat{=} \ Azimut $ $h \ \widehat{=} \ Hoehe$ + \newpage \subsection{Zusammenhang des Nautischen Dreiecks und des Kugeldreiecks auf der Erdkugel} \begin{figure}[h] @@ -129,45 +130,47 @@ Somit können wir ein erstes Kugeldreieck auf der Erde aufspannen. $A=$ Nordpol -$B=$ Bildpunkt des Gestirns XXX +$B=$ Bildpunkt des Gestirns X -$C=$ Bildpunkt des Gestirns YYY +$C=$ Bildpunkt des Gestirns Y \\ \\ Mithilfe des sphärischen Trigonometrie und den darausfolgenden Zusammenhängen des Nautischen Dreiecks können wir nun alle Seiten des Dreiecks $ABC$ berechnen. -Die Seitenlänge der Seite "Nordpol zum Bildpunkt XXX" sei $c$. +Die Seitenlänge der Seite "Nordpol zum Bildpunkt X" sei $c$. Dann ist $c = \frac{\pi}{2} - \delta_1$. -Die Seitenlänge der Seite "Nordpol zum Bildpunkt YYY" sei $b$. +Die Seitenlänge der Seite "Nordpol zum Bildpunkt Y" sei $b$. Dann ist $b = \frac{\pi}{2} - \delta_2$. Der Innenwinkel beim der Ecke "Nordpol" sei $\alpha$. Dann ist $ \alpha = |\lambda_1 - \lambda_2|$. - +\\ +\\ mit -$\delta_1 =$ Deklination Bildpunkt XXX - -$\delta_2 =$ Deklination Bildpunk YYY +$\delta_1 =$ Deklination Bildpunkt X -$\lambda_1 =$ Längengrad Bildpunkt XXX +$\delta_2 =$ Deklination Bildpunk Y -$\lambda_2 =$ Längengrad Bildpunkt YYY +$\lambda_1 =$ Längengrad Bildpunkt X +$\lambda_2 =$ Längengrad Bildpunkt Y Wichtig ist: Die Differenz der Längengrade ist gleich der Innenwinkel Alpha, deswegen der Betrag! - +\\ +\\ Nun haben wir die beiden Seiten $c\ und\ b$ und den Winkel $\alpha$, der sich zwischen diesen Seiten befindet. Mithilfe des Seiten-Kosinussatzes - -$cos(a) = \cos(b)\cdot \cos(c) + \sin(b) \cdot \sin(c)\cdot \cos(\alpha)$ können wir nun die dritte Seitenlänge bestimmen. - +$cos(a) = \cos(b)\cdot \cos(c) + \sin(b) \cdot \sin(c)\cdot \cos(\alpha)$ +können wir nun die dritte Seitenlänge bestimmen. Es ist darauf zu achten, dass hier natürlich die Seitenlängen in Bogenmass sind und dementsprechend der Kosinus und Sinus verwendet wird. -Jetzt fehlen noch die beiden anderen Innenwinkel $\beta \ und\ \gamma$. -Dieser bestimmen wir mithilfe des Sinussatzes $\frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)}$. -Hier muss man aufpassen, dass man Seite von Winkel unterscheiden kann. Im Zähler sind die Seiten, im Nenner die Winkel. Somit ist $\beta =\sin^{-1} [\sin(b) \cdot \frac{\sin(\alpha)}{\sin(a)}] $. +Jetzt fehlen noch die beiden anderen Innenwinkel $\beta \ und\ \gamma$. +Diese bestimmen wir mithilfe des Sinussatzes $\frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)}$. +Hier muss man aufpassen, dass man Seite von Winkel unterscheiden kann. +Im Zähler sind die Seiten, im Nenner die Winkel. +Somit ist $\beta =\sin^{-1} [\sin(b) \cdot \frac{\sin(\alpha)}{\sin(a)}] $. Schlussendlich haben wir die Seiten $a,b\ und \ c$, die Ecken A,B und C und die Winkel $\alpha, \beta \ und \ \gamma$ bestimmt und somit das ganze erste Kugeldreieck berechnet. diff --git a/buch/papers/nav/packages.tex b/buch/papers/nav/packages.tex index 9faa48d..5b87303 100644 --- a/buch/papers/nav/packages.tex +++ b/buch/papers/nav/packages.tex @@ -8,3 +8,4 @@ % following example %\usepackage{packagename} +\usepackage{amsmath} \ No newline at end of file diff --git a/buch/papers/nav/trigo.tex b/buch/papers/nav/trigo.tex index 2edd651..8b4634f 100644 --- a/buch/papers/nav/trigo.tex +++ b/buch/papers/nav/trigo.tex @@ -1,3 +1,4 @@ +\setlength{\parindent}{0em} \section{Sphärische Trigonometrie} \subsection{Das Kugeldreieck} @@ -11,7 +12,7 @@ Wenn man drei Eckpunkte miteinander verbindet, ergeben sich immer 16 Kugeldreiec Jenes Kugeldreieck mit den Seitenlängen $a, b, c < \pi$ und den Winkeln $\alpha, \beta, \gamma < \pi$ nennt man Eulersche Dreiecke. \begin{figure}[h] \begin{center} - \includegraphics[width=6cm]{papers/nav/bilder/kugel1.png} + %\includegraphics[width=6cm]{papers/nav/bilder/kugel1.png} \caption[Das Kugeldreieck]{Das Kugeldreieck} \end{center} @@ -25,21 +26,42 @@ Ein Rechtseitiges Dreieck gibt es jedoch nur beim Kugeldreieck, weil dort eine S \begin{figure}[h] \begin{center} - \includegraphics[width=8cm]{papers/nav/bilder/kugel2.png} + %\includegraphics[width=8cm]{papers/nav/bilder/kugel2.png} \caption[Winkelangabe im Kugeldreieck]{Winkelangabe im Kugeldreieck} \end{center} \end{figure} + Die Winkel eines Kugeldreiecks sind die, welche die Halbtangenten in den Eckpunkten einschliessen. -Für die Summe der Innenwinkel gilt $\alpha+\beta+\gamma = \frac{A}{r^2} + \pi$ und -$\alpha+\beta+\gamma > \pi$. -Der sphärische Exzess $\epsilon = \alpha+\beta+\gamma - \pi$ beschreibt die Abweichung der Innenwinkelsumme von $\pi$ und ist proportional zum Flächeninhalt des Kugeldreiecks. +Für die Summe der Innenwinkel gilt +\begin{align} + \alpha+\beta+\gamma &= \frac{A}{r^2} + \pi \ \text{und} \ \alpha+\beta+\gamma > \pi. \nonumber +\end{align} + +Der sphärische Exzess +\begin{align} + \epsilon = \alpha+\beta+\gamma - \pi \nonumber +\end{align} +beschreibt die Abweichung der Innenwinkelsumme von $\pi$ und ist proportional zum Flächeninhalt des Kugeldreiecks. \subsection{Sphärischer Sinussatz} In jedem Dreieck ist das Verhältnis des Sinus einer Seite zum Sinus des Gegenwinkels konstant. -Das bedeutet, dass $\frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)} $ auch beim Kugeldreieck gilt. + +Das bedeutet, dass + +\begin{align} + \frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)} \nonumber \ \text{auch beim Kugeldreieck gilt.} +\end{align} + + \subsection{Sphärischer Satz des Pythagoras für das rechtwinklige Kugeldreieck} Es gibt in der sphärischen Trigonometrie eigentlich garkeinen "Satz des Pythagoras", wie man ihn aus der zweidimensionalen Geometrie kennt. In der sphärischen Trigonometrie gibt es aber auch einen Satz, der alle drei Seiten eines rechtwinkligen Kugeldreiecks in eine Beziehung bringt. -Es gilt nämlich: $\cos c = \cos a \cdot \cos b$ wenn $\alpha= \frac{\pi}{2} \lor \beta=\frac{\pi}{2} \lor \gamma = \frac{\pi}{2} $. \ No newline at end of file + +Es gilt nämlich: +\begin{align} + \cos c = \cos a \cdot \cos b \ \text{wenn} \nonumber & + \alpha = \frac{\pi}{2} \lor \beta =\frac{\pi}{2} \lor \gamma = \frac{\pi}{2}.\nonumber +\end{align} + \ No newline at end of file -- cgit v1.2.1 From ad5607531d028801836823469f82d5e7c0a4f11f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Wed, 18 May 2022 14:20:41 +0200 Subject: =?UTF-8?q?Dreiecke=20f=C3=BCr=20Nav?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../050-differential/uebungsaufgaben/airy.cpp | 4 +- buch/chapters/110-elliptisch/ellintegral.tex | 2 +- buch/papers/nav/images/Makefile | 10 ++- buch/papers/nav/images/common.inc | 28 +++++- buch/papers/nav/images/dreieck3d1.pdf | Bin 0 -> 90451 bytes buch/papers/nav/images/dreieck3d1.pov | 12 +-- buch/papers/nav/images/dreieck3d2.pdf | Bin 0 -> 69523 bytes buch/papers/nav/images/dreieck3d2.pov | 6 +- buch/papers/nav/images/dreieck3d3.pdf | Bin 0 -> 82512 bytes buch/papers/nav/images/dreieck3d3.pov | 8 +- buch/papers/nav/images/dreieck3d4.pdf | Bin 0 -> 85037 bytes buch/papers/nav/images/dreieck3d4.pov | 8 +- buch/papers/nav/images/dreieck3d5.pdf | Bin 0 -> 70054 bytes buch/papers/nav/images/dreieck3d5.pov | 6 +- buch/papers/nav/images/dreieck3d6.pov | 2 +- buch/papers/nav/images/dreieck3d7.pov | 10 +-- buch/papers/nav/images/dreieck3d8.jpg | Bin 0 -> 93432 bytes buch/papers/nav/images/dreieck3d8.pdf | Bin 0 -> 107370 bytes buch/papers/nav/images/dreieck3d8.pov | 96 +++++++++++++++++++++ buch/papers/nav/images/dreieck3d8.tex | 57 ++++++++++++ vorlesungen/stream/countdown.html | 2 +- 21 files changed, 217 insertions(+), 34 deletions(-) create mode 100644 buch/papers/nav/images/dreieck3d1.pdf create mode 100644 buch/papers/nav/images/dreieck3d2.pdf create mode 100644 buch/papers/nav/images/dreieck3d3.pdf create mode 100644 buch/papers/nav/images/dreieck3d4.pdf create mode 100644 buch/papers/nav/images/dreieck3d5.pdf create mode 100644 buch/papers/nav/images/dreieck3d8.jpg create mode 100644 buch/papers/nav/images/dreieck3d8.pdf create mode 100644 buch/papers/nav/images/dreieck3d8.pov create mode 100644 buch/papers/nav/images/dreieck3d8.tex diff --git a/buch/chapters/050-differential/uebungsaufgaben/airy.cpp b/buch/chapters/050-differential/uebungsaufgaben/airy.cpp index e4df8e1..eb5c6be 100644 --- a/buch/chapters/050-differential/uebungsaufgaben/airy.cpp +++ b/buch/chapters/050-differential/uebungsaufgaben/airy.cpp @@ -44,8 +44,8 @@ double h0f1(double c, double x) { double f1(double x) { // unfortunately, gsl_sf_hyperg_0F1 does not work if c<1, because // it uses a relation to the bessel functions - //return gsl_sf_hyperg_0F1(2/3, x*x*x/9.); - return h0f1(2./3., x*x*x/9.); + return gsl_sf_hyperg_0F1(2/3, x*x*x/9.); + //return h0f1(2./3., x*x*x/9.); } double f2(double x) { diff --git a/buch/chapters/110-elliptisch/ellintegral.tex b/buch/chapters/110-elliptisch/ellintegral.tex index 4cb2ba3..3acce2f 100644 --- a/buch/chapters/110-elliptisch/ellintegral.tex +++ b/buch/chapters/110-elliptisch/ellintegral.tex @@ -651,7 +651,7 @@ werden, dass $1-k'^2=k^2$ ist. \begin{definition} Ist $0\le k\le 1$ der Modul eines elliptischen Integrals, dann heisst -$k' = \sqrt{1-k^2}$ er {\em Komplementärmodul} oder {\em Komplement +$k' = \sqrt{1-k^2}$ der {\em Komplementärmodul} oder {\em Komplement des Moduls}. Es ist $k^2+k'^2=1$. \end{definition} diff --git a/buch/papers/nav/images/Makefile b/buch/papers/nav/images/Makefile index c9dcacc..bbdea2f 100644 --- a/buch/papers/nav/images/Makefile +++ b/buch/papers/nav/images/Makefile @@ -50,7 +50,8 @@ DREIECKE3D = \ dreieck3d4.pdf \ dreieck3d5.pdf \ dreieck3d6.pdf \ - dreieck3d7.pdf + dreieck3d7.pdf \ + dreieck3d8.pdf dreiecke3d: $(DREIECKE3D) @@ -106,3 +107,10 @@ dreieck3d7.jpg: dreieck3d7.png dreieck3d7.pdf: dreieck3d7.tex dreieck3d7.jpg pdflatex dreieck3d7.tex +dreieck3d8.png: dreieck3d8.pov common.inc + povray +A0.1 $(POVRAYOPTIONS) -Odreieck3d8.png dreieck3d8.pov +dreieck3d8.jpg: dreieck3d8.png + convert dreieck3d8.png -density 300 -units PixelsPerInch dreieck3d8.jpg +dreieck3d8.pdf: dreieck3d8.tex dreieck3d8.jpg + pdflatex dreieck3d8.tex + diff --git a/buch/papers/nav/images/common.inc b/buch/papers/nav/images/common.inc index 33d9384..e2a1ed0 100644 --- a/buch/papers/nav/images/common.inc +++ b/buch/papers/nav/images/common.inc @@ -97,13 +97,13 @@ union { } #end -#macro winkel(w, p, q, staerke) +#macro winkel(w, p, q, staerke, r) #declare n = vnormalize(w); #declare pp = vnormalize(p - vdot(n, p) * n); #declare qq = vnormalize(q - vdot(n, q) * n); intersection { sphere { <0, 0, 0>, 1 + staerke } - cone { <0, 0, 0>, 0, 1.2 * vnormalize(w), 0.4 } + cone { <0, 0, 0>, 0, 1.2 * vnormalize(w), r } plane { -vcross(n, qq) * vdot(vcross(n, qq), pp), 0 } plane { -vcross(n, pp) * vdot(vcross(n, pp), qq), 0 } } @@ -113,8 +113,30 @@ union { sphere { p, 1.5 * staerke } #end +#macro dreieck(p, q, r, farbe) + #declare n1 = vnormalize(vcross(p, q)); + #declare n2 = vnormalize(vcross(q, r)); + #declare n3 = vnormalize(vcross(r, p)); + intersection { + plane { n1, 0 } + plane { n2, 0 } + plane { n3, 0 } + sphere { <0, 0, 0>, 1 + 0.001 } + pigment { + color farbe + } + finish { + metallic + specular 0.4 + } + } +#end + #declare fett = 0.015; -#declare fine = 0.010; +#declare fein = 0.010; + +#declare klein = 0.3; +#declare gross = 0.4; #declare dreieckfarbe = rgb<0.6,0.6,0.6>; #declare rot = rgb<0.8,0.2,0.2>; diff --git a/buch/papers/nav/images/dreieck3d1.pdf b/buch/papers/nav/images/dreieck3d1.pdf new file mode 100644 index 0000000..015bce7 Binary files /dev/null and b/buch/papers/nav/images/dreieck3d1.pdf differ diff --git a/buch/papers/nav/images/dreieck3d1.pov b/buch/papers/nav/images/dreieck3d1.pov index 8afe60e..e491075 100644 --- a/buch/papers/nav/images/dreieck3d1.pov +++ b/buch/papers/nav/images/dreieck3d1.pov @@ -12,9 +12,9 @@ union { punkt(A, fett) punkt(B, fett) punkt(C, fett) - punkt(P, fine) - seite(B, P, fine) - seite(C, P, fine) + punkt(P, fein) + seite(B, P, fein) + seite(C, P, fein) pigment { color dreieckfarbe } @@ -25,7 +25,7 @@ union { } object { - winkel(A, B, C, fine) + winkel(A, B, C, fein, gross) pigment { color rot } @@ -36,7 +36,7 @@ object { } object { - winkel(B, C, A, fine) + winkel(B, C, A, fein, gross) pigment { color gruen } @@ -47,7 +47,7 @@ object { } object { - winkel(C, A, B, fine) + winkel(C, A, B, fein, gross) pigment { color blau } diff --git a/buch/papers/nav/images/dreieck3d2.pdf b/buch/papers/nav/images/dreieck3d2.pdf new file mode 100644 index 0000000..6b3f09d Binary files /dev/null and b/buch/papers/nav/images/dreieck3d2.pdf differ diff --git a/buch/papers/nav/images/dreieck3d2.pov b/buch/papers/nav/images/dreieck3d2.pov index c23a54c..c0625ce 100644 --- a/buch/papers/nav/images/dreieck3d2.pov +++ b/buch/papers/nav/images/dreieck3d2.pov @@ -12,9 +12,9 @@ union { punkt(A, fett) punkt(B, fett) punkt(C, fett) - punkt(P, fine) - seite(B, P, fine) - seite(C, P, fine) + punkt(P, fein) + seite(B, P, fein) + seite(C, P, fein) pigment { color dreieckfarbe } diff --git a/buch/papers/nav/images/dreieck3d3.pdf b/buch/papers/nav/images/dreieck3d3.pdf new file mode 100644 index 0000000..7d79455 Binary files /dev/null and b/buch/papers/nav/images/dreieck3d3.pdf differ diff --git a/buch/papers/nav/images/dreieck3d3.pov b/buch/papers/nav/images/dreieck3d3.pov index f2496b5..b6f64d5 100644 --- a/buch/papers/nav/images/dreieck3d3.pov +++ b/buch/papers/nav/images/dreieck3d3.pov @@ -12,9 +12,9 @@ union { punkt(A, fett) punkt(B, fett) punkt(C, fett) - punkt(P, fine) - seite(B, P, fine) - seite(C, P, fine) + punkt(P, fein) + seite(B, P, fein) + seite(C, P, fein) pigment { color dreieckfarbe } @@ -25,7 +25,7 @@ union { } object { - winkel(A, B, C, fine) + winkel(A, B, C, fein, gross) pigment { color rot } diff --git a/buch/papers/nav/images/dreieck3d4.pdf b/buch/papers/nav/images/dreieck3d4.pdf new file mode 100644 index 0000000..e1ea757 Binary files /dev/null and b/buch/papers/nav/images/dreieck3d4.pdf differ diff --git a/buch/papers/nav/images/dreieck3d4.pov b/buch/papers/nav/images/dreieck3d4.pov index bddcf7c..b6f17e3 100644 --- a/buch/papers/nav/images/dreieck3d4.pov +++ b/buch/papers/nav/images/dreieck3d4.pov @@ -6,9 +6,9 @@ #include "common.inc" union { - seite(A, B, fine) - seite(A, C, fine) - punkt(A, fine) + seite(A, B, fein) + seite(A, C, fein) + punkt(A, fein) punkt(B, fett) punkt(C, fett) punkt(P, fett) @@ -25,7 +25,7 @@ union { } object { - winkel(B, C, P, fine) + winkel(B, C, P, fein, gross) pigment { color rgb<0.6,0.4,0.2> } diff --git a/buch/papers/nav/images/dreieck3d5.pdf b/buch/papers/nav/images/dreieck3d5.pdf new file mode 100644 index 0000000..6848331 Binary files /dev/null and b/buch/papers/nav/images/dreieck3d5.pdf differ diff --git a/buch/papers/nav/images/dreieck3d5.pov b/buch/papers/nav/images/dreieck3d5.pov index 32fc9e6..188f181 100644 --- a/buch/papers/nav/images/dreieck3d5.pov +++ b/buch/papers/nav/images/dreieck3d5.pov @@ -6,9 +6,9 @@ #include "common.inc" union { - seite(A, B, fine) - seite(A, C, fine) - punkt(A, fine) + seite(A, B, fein) + seite(A, C, fein) + punkt(A, fein) punkt(B, fett) punkt(C, fett) punkt(P, fett) diff --git a/buch/papers/nav/images/dreieck3d6.pov b/buch/papers/nav/images/dreieck3d6.pov index 7611950..191a1e7 100644 --- a/buch/papers/nav/images/dreieck3d6.pov +++ b/buch/papers/nav/images/dreieck3d6.pov @@ -25,7 +25,7 @@ union { } object { - winkel(B, A, P, fine) + winkel(B, A, P, fein, gross) pigment { color rgb<0.6,0.2,0.6> } diff --git a/buch/papers/nav/images/dreieck3d7.pov b/buch/papers/nav/images/dreieck3d7.pov index fa48f5b..aae5c6c 100644 --- a/buch/papers/nav/images/dreieck3d7.pov +++ b/buch/papers/nav/images/dreieck3d7.pov @@ -10,13 +10,13 @@ union { seite(A, P, fett) seite(C, P, fett) - seite(A, B, fine) - seite(B, C, fine) - seite(B, P, fine) + seite(A, B, fein) + seite(B, C, fein) + seite(B, P, fein) punkt(A, fett) punkt(C, fett) punkt(P, fett) - punkt(B, fine) + punkt(B, fein) pigment { color dreieckfarbe } @@ -27,7 +27,7 @@ union { } object { - winkel(A, P, C, fine) + winkel(A, P, C, fein, gross) pigment { color rgb<0.4,0.4,1> } diff --git a/buch/papers/nav/images/dreieck3d8.jpg b/buch/papers/nav/images/dreieck3d8.jpg new file mode 100644 index 0000000..52bd25e Binary files /dev/null and b/buch/papers/nav/images/dreieck3d8.jpg differ diff --git a/buch/papers/nav/images/dreieck3d8.pdf b/buch/papers/nav/images/dreieck3d8.pdf new file mode 100644 index 0000000..9d630aa Binary files /dev/null and b/buch/papers/nav/images/dreieck3d8.pdf differ diff --git a/buch/papers/nav/images/dreieck3d8.pov b/buch/papers/nav/images/dreieck3d8.pov new file mode 100644 index 0000000..9e9921a --- /dev/null +++ b/buch/papers/nav/images/dreieck3d8.pov @@ -0,0 +1,96 @@ +// +// dreiecke3d8.pov +// +// (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +// +#include "common.inc" + +union { + seite(A, B, fett) + seite(B, C, fett) + seite(A, C, fett) + seite(A, P, fein) + seite(B, P, fett) + seite(C, P, fett) + punkt(A, fett) + punkt(B, fett) + punkt(C, fett) + punkt(P, fett) + pigment { + color dreieckfarbe + } + finish { + specular 0.95 + metallic + } +} + +object { + winkel(A, B, C, fein, klein) + pigment { + color rot + } + finish { + specular 0.95 + metallic + } +} + +object { + winkel(B, C, A, fein, klein) + pigment { + color gruen + } + finish { + specular 0.95 + metallic + } +} + +object { + winkel(C, A, B, fein, gross) + pigment { + color blau + } + finish { + specular 0.95 + metallic + } +} + +object { + winkel(A, P, C, fein/2, gross) + pigment { + color rgb<0.8,0,0.8> + } + finish { + specular 0.95 + metallic + } +} + +object { + winkel(B, P, C, fein, klein) + pigment { + color rgb<1,0.8,0> + } + finish { + specular 0.95 + metallic + } +} + +object { + winkel(B, P, A, fein/2, gross) + pigment { + color rgb<0.4,0.6,0.8> + } + finish { + specular 0.95 + metallic + } +} + +dreieck(A, B, C, White) + + diff --git a/buch/papers/nav/images/dreieck3d8.tex b/buch/papers/nav/images/dreieck3d8.tex new file mode 100644 index 0000000..c59c7b0 --- /dev/null +++ b/buch/papers/nav/images/dreieck3d8.tex @@ -0,0 +1,57 @@ +% +% dreieck3d8.tex +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{times} +\usepackage{amsmath} +\usepackage{txfonts} +\usepackage[utf8]{inputenc} +\usepackage{graphics} +\usetikzlibrary{arrows,intersections,math} +\usepackage{ifthen} +\begin{document} + +\newboolean{showgrid} +\setboolean{showgrid}{false} +\def\breite{4} +\def\hoehe{4} + +\begin{tikzpicture}[>=latex,thick] + +% Povray Bild +\node at (0,0) {\includegraphics[width=8cm]{dreieck3d8.jpg}}; + +% Gitter +\ifthenelse{\boolean{showgrid}}{ +\draw[step=0.1,line width=0.1pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw[step=0.5,line width=0.4pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw (-\breite,-\hoehe) grid (\breite, \hoehe); +\fill (0,0) circle[radius=0.05]; +}{} + +\node at (0.7,3.8) {$A$}; +\node at (-3.4,-0.8) {$B$}; +\node at (3.3,-2.1) {$C$}; +\node at (-1.4,-3.5) {$P$}; + +\node at (-1.9,2.1) {$c$}; +\node at (-0.2,-1.2) {$a$}; +\node at (2.6,1.5) {$b$}; +\node at (-0.8,0) {$l$}; + +\node at (-2.6,-2.2) {$p_b$}; +\node at (1,-2.9) {$p_c$}; + +\node at (0.7,3.3) {$\alpha$}; +\node at (0.8,2.85) {$\omega$}; +\node at (-2.6,-0.6) {$\beta$}; +\node at (2.3,-1.2) {$\gamma$}; +\node at (-2.6,-1.3) {$\beta_1$}; +\node at (-2.1,-0.8) {$\kappa$}; + +\end{tikzpicture} + +\end{document} + diff --git a/vorlesungen/stream/countdown.html b/vorlesungen/stream/countdown.html index d8ec82e..e9d7d6e 100644 --- a/vorlesungen/stream/countdown.html +++ b/vorlesungen/stream/countdown.html @@ -25,7 +25,7 @@ function checkfor(d) { console.log("time string: " + ds); let start = new Date(ds).getTime(); console.log("now: " + now); - if ((start > now) && ((start-now) < 3600*1000)) { + if ((start > now) && ((start-now) < 3300*1000)) { deadline = start; console.log("set deadline to: " + ds); } else { -- cgit v1.2.1 From 525ff82400b685dc6dd0d6376253545720471be0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Wed, 18 May 2022 14:25:26 +0200 Subject: remove bad files --- buch/buch.aux | 22 - buch/buch.bbl | 0 buch/buch.blg | 48 - buch/buch.idx | 0 buch/buch.log | 2106 --------------------------------- buch/papers/nav/images/dreieck3d5.pdf | Bin 70054 -> 70045 bytes 6 files changed, 2176 deletions(-) delete mode 100644 buch/buch.aux delete mode 100644 buch/buch.bbl delete mode 100644 buch/buch.blg delete mode 100644 buch/buch.idx delete mode 100644 buch/buch.log diff --git a/buch/buch.aux b/buch/buch.aux deleted file mode 100644 index 6730af9..0000000 --- a/buch/buch.aux +++ /dev/null @@ -1,22 +0,0 @@ -\relax -\providecommand\hyper@newdestlabel[2]{} -\providecommand\babel@aux[2]{} -\@nameuse{bbl@beforestart} -\catcode `"\active -\providecommand\HyperFirstAtBeginDocument{\AtBeginDocument} -\HyperFirstAtBeginDocument{\ifx\hyper@anchor\@undefined -\global\let\oldcontentsline\contentsline -\gdef\contentsline#1#2#3#4{\oldcontentsline{#1}{#2}{#3}} -\global\let\oldnewlabel\newlabel -\gdef\newlabel#1#2{\newlabelxx{#1}#2} -\gdef\newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}} -\AtEndDocument{\ifx\hyper@anchor\@undefined -\let\contentsline\oldcontentsline -\let\newlabel\oldnewlabel -\fi} -\fi} -\global\let\hyper@last\relax -\gdef\HyperFirstAtBeginDocument#1{#1} -\providecommand\HyField@AuxAddToFields[1]{} -\providecommand\HyField@AuxAddToCoFields[2]{} -\providecommand\BKM@entry[2]{} diff --git a/buch/buch.bbl b/buch/buch.bbl deleted file mode 100644 index e69de29..0000000 diff --git a/buch/buch.blg b/buch/buch.blg deleted file mode 100644 index 706b1d8..0000000 --- a/buch/buch.blg +++ /dev/null @@ -1,48 +0,0 @@ -This is BibTeX, Version 0.99d -Capacity: max_strings=200000, hash_size=200000, hash_prime=170003 -The top-level auxiliary file: buch.aux -I found no \citation commands---while reading file buch.aux -I found no \bibdata command---while reading file buch.aux -I found no \bibstyle command---while reading file buch.aux -You've used 0 entries, - 0 wiz_defined-function locations, - 83 strings with 482 characters, -and the built_in function-call counts, 0 in all, are: -= -- 0 -> -- 0 -< -- 0 -+ -- 0 -- -- 0 -* -- 0 -:= -- 0 -add.period$ -- 0 -call.type$ -- 0 -change.case$ -- 0 -chr.to.int$ -- 0 -cite$ -- 0 -duplicate$ -- 0 -empty$ -- 0 -format.name$ -- 0 -if$ -- 0 -int.to.chr$ -- 0 -int.to.str$ -- 0 -missing$ -- 0 -newline$ -- 0 -num.names$ -- 0 -pop$ -- 0 -preamble$ -- 0 -purify$ -- 0 -quote$ -- 0 -skip$ -- 0 -stack$ -- 0 -substring$ -- 0 -swap$ -- 0 -text.length$ -- 0 -text.prefix$ -- 0 -top$ -- 0 -type$ -- 0 -warning$ -- 0 -while$ -- 0 -width$ -- 0 -write$ -- 0 -(There were 3 error messages) diff --git a/buch/buch.idx b/buch/buch.idx deleted file mode 100644 index e69de29..0000000 diff --git a/buch/buch.log b/buch/buch.log deleted file mode 100644 index 4175a27..0000000 --- a/buch/buch.log +++ /dev/null @@ -1,2106 +0,0 @@ -This is pdfTeX, Version 3.141592653-2.6-1.40.24 (MiKTeX 22.3) (preloaded format=pdflatex 2022.4.16) 17 MAY 2022 13:22 -entering extended mode - restricted \write18 enabled. - %&-line parsing enabled. -**./buch.tex -(buch.tex -LaTeX2e <2021-11-15> patch level 1 -L3 programming layer <2022-02-24> (common/content.tex -(D:\Programme\Miktex\tex/latex/base\book.cls -Document Class: book 2021/10/04 v1.4n Standard LaTeX document class -(D:\Programme\Miktex\tex/latex/base\bk10.clo -File: bk10.clo 2021/10/04 v1.4n Standard LaTeX file (size option) -) -\c@part=\count185 -\c@chapter=\count186 -\c@section=\count187 -\c@subsection=\count188 -\c@subsubsection=\count189 -\c@paragraph=\count190 -\c@subparagraph=\count191 -\c@figure=\count192 -\c@table=\count193 -\abovecaptionskip=\skip47 -\belowcaptionskip=\skip48 -\bibindent=\dimen138 -) (common/packages.tex -(D:\Programme\Miktex\tex/latex/etex-pkg\etex.sty -Package: etex 2016/08/01 v2.7 eTeX basic definition package (PEB,DPC) -\et@xins=\count194 -) -(D:\Programme\Miktex\tex/latex/geometry\geometry.sty -Package: geometry 2020/01/02 v5.9 Page Geometry - -(D:\Programme\Miktex\tex/latex/graphics\keyval.sty -Package: keyval 2014/10/28 v1.15 key=value parser (DPC) -\KV@toks@=\toks16 -) -(D:\Programme\Miktex\tex/generic/iftex\ifvtex.sty -Package: ifvtex 2019/10/25 v1.7 ifvtex legacy package. Use iftex instead. - -(D:\Programme\Miktex\tex/generic/iftex\iftex.sty -Package: iftex 2022/02/03 v1.0f TeX engine tests -)) -\Gm@cnth=\count195 -\Gm@cntv=\count196 -\c@Gm@tempcnt=\count197 -\Gm@bindingoffset=\dimen139 -\Gm@wd@mp=\dimen140 -\Gm@odd@mp=\dimen141 -\Gm@even@mp=\dimen142 -\Gm@layoutwidth=\dimen143 -\Gm@layoutheight=\dimen144 -\Gm@layouthoffset=\dimen145 -\Gm@layoutvoffset=\dimen146 -\Gm@dimlist=\toks17 - -(D:\Programme\Miktex\tex/latex/geometry\geometry.cfg)) -(D:\Programme\Miktex\tex/generic/babel\babel.sty -Package: babel 2022/02/26 3.73 The Babel package -\babel@savecnt=\count198 -\U@D=\dimen147 -\l@unhyphenated=\language79 - -(D:\Programme\Miktex\tex/generic/babel\txtbabel.def) -\bbl@readstream=\read2 -\bbl@dirlevel=\count199 - -************************************* -* Local config file bblopts.cfg used -* -(D:\Programme\Miktex\tex/latex/arabi\bblopts.cfg -File: bblopts.cfg 2005/09/08 v0.1 add Arabic and Farsi to "declared" options of - babel -) -(D:\Programme\Miktex\tex/latex/babel-english\english.ldf -Language: english 2017/06/06 v3.3r English support from the babel system -Package babel Info: Hyphen rules for 'canadian' set to \l@english -(babel) (\language0). Reported on input line 102. -Package babel Info: Hyphen rules for 'australian' set to \l@ukenglish -(babel) (\language73). Reported on input line 105. -Package babel Info: Hyphen rules for 'newzealand' set to \l@ukenglish -(babel) (\language73). Reported on input line 108. -) -(D:\Programme\Miktex\tex/latex/babel-german\ngerman.ldf -Language: ngerman 2021/02/27 v2.13 German support for babel (post-1996 orthogra -phy) - -(D:\Programme\Miktex\tex/latex/babel-german\ngermanb.ldf -Language: ngermanb 2021/02/27 v2.13 German support for babel (post-1996 orthogr -aphy) -Package babel Info: Making " an active character on input line 122. -))) -(D:\Programme\Miktex\tex/latex/base\inputenc.sty -Package: inputenc 2021/02/14 v1.3d Input encoding file -\inpenc@prehook=\toks18 -\inpenc@posthook=\toks19 -) -(D:\Programme\Miktex\tex/latex/base\fontenc.sty -Package: fontenc 2021/04/29 v2.0v Standard LaTeX package -) -(D:\Programme\Miktex\tex/latex/cancel\cancel.sty -Package: cancel 2013/04/12 v2.2 Cancel math terms -) -(D:\Programme\Miktex\tex/latex/psnfss\times.sty -Package: times 2020/03/25 PSNFSS-v9.3 (SPQR) -) -(D:\Programme\Miktex\tex/latex/amsmath\amsmath.sty -Package: amsmath 2021/10/15 v2.17l AMS math features -\@mathmargin=\skip49 - -For additional information on amsmath, use the `?' option. -(D:\Programme\Miktex\tex/latex/amsmath\amstext.sty -Package: amstext 2021/08/26 v2.01 AMS text - -(D:\Programme\Miktex\tex/latex/amsmath\amsgen.sty -File: amsgen.sty 1999/11/30 v2.0 generic functions -\@emptytoks=\toks20 -\ex@=\dimen148 -)) -(D:\Programme\Miktex\tex/latex/amsmath\amsbsy.sty -Package: amsbsy 1999/11/29 v1.2d Bold Symbols -\pmbraise@=\dimen149 -) -(D:\Programme\Miktex\tex/latex/amsmath\amsopn.sty -Package: amsopn 2021/08/26 v2.02 operator names -) -Normal \count register pool exhausted, switching to extended pool. -\inf@bad=\count277 -LaTeX Info: Redefining \frac on input line 234. -\uproot@=\count278 -\leftroot@=\count279 -LaTeX Info: Redefining \overline on input line 399. -\classnum@=\count280 -\DOTSCASE@=\count281 -LaTeX Info: Redefining \ldots on input line 496. -LaTeX Info: Redefining \dots on input line 499. -LaTeX Info: Redefining \cdots on input line 620. -\Mathstrutbox@=\box50 -\strutbox@=\box51 -\big@size=\dimen150 -LaTeX Font Info: Redeclaring font encoding OML on input line 743. -LaTeX Font Info: Redeclaring font encoding OMS on input line 744. -\macc@depth=\count282 -\c@MaxMatrixCols=\count283 -\dotsspace@=\muskip16 -\c@parentequation=\count284 -\dspbrk@lvl=\count285 -\tag@help=\toks21 -\row@=\count286 -\column@=\count287 -\maxfields@=\count288 -\andhelp@=\toks22 -\eqnshift@=\dimen151 -\alignsep@=\dimen152 -\tagshift@=\dimen153 -\tagwidth@=\dimen154 -\totwidth@=\dimen155 -\lineht@=\dimen156 -\@envbody=\toks23 -\multlinegap=\skip50 -\multlinetaggap=\skip51 -\mathdisplay@stack=\toks24 -LaTeX Info: Redefining \[ on input line 2938. -LaTeX Info: Redefining \] on input line 2939. -) -(D:\Programme\Miktex\tex/latex/amsmath\amscd.sty -Package: amscd 2017/04/14 v2.1 AMS Commutative Diagrams -\athelp@=\toks25 -\minaw@=\dimen157 -\bigaw@=\dimen158 -\minCDarrowwidth=\dimen159 -) -(D:\Programme\Miktex\tex/latex/amsfonts\amssymb.sty -Package: amssymb 2013/01/14 v3.01 AMS font symbols - -(D:\Programme\Miktex\tex/latex/amsfonts\amsfonts.sty -Package: amsfonts 2013/01/14 v3.01 Basic AMSFonts support -\symAMSa=\mathgroup4 -\symAMSb=\mathgroup5 -LaTeX Font Info: Redeclaring math symbol \hbar on input line 98. -LaTeX Font Info: Overwriting math alphabet `\mathfrak' in version `bold' -(Font) U/euf/m/n --> U/euf/b/n on input line 106. -)) -(D:\Programme\Miktex\tex/latex/amscls\amsthm.sty -Package: amsthm 2020/05/29 v2.20.6 -\thm@style=\toks26 -\thm@bodyfont=\toks27 -\thm@headfont=\toks28 -\thm@notefont=\toks29 -\thm@headpunct=\toks30 -\thm@preskip=\skip52 -\thm@postskip=\skip53 -\thm@headsep=\skip54 -\dth@everypar=\toks31 -) -(D:\Programme\Miktex\tex/latex/graphics\graphicx.sty -Package: graphicx 2021/09/16 v1.2d Enhanced LaTeX Graphics (DPC,SPQR) - -(D:\Programme\Miktex\tex/latex/graphics\graphics.sty -Package: graphics 2021/03/04 v1.4d Standard LaTeX Graphics (DPC,SPQR) - -(D:\Programme\Miktex\tex/latex/graphics\trig.sty -Package: trig 2021/08/11 v1.11 sin cos tan (DPC) -) -(D:\Programme\Miktex\tex/latex/graphics-cfg\graphics.cfg -File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration -) -Package graphics Info: Driver file: pdftex.def on input line 107. - -(D:\Programme\Miktex\tex/latex/graphics-def\pdftex.def -File: pdftex.def 2020/10/05 v1.2a Graphics/color driver for pdftex -)) -\Gin@req@height=\dimen160 -\Gin@req@width=\dimen161 -) -(D:\Programme\Miktex\tex/latex/fancyhdr\fancyhdr.sty -Package: fancyhdr 2022/05/10 v4.0.2 Extensive control of page headers and foote -rs -\f@nch@headwidth=\skip55 -\f@nch@O@elh=\skip56 -\f@nch@O@erh=\skip57 -\f@nch@O@olh=\skip58 -\f@nch@O@orh=\skip59 -\f@nch@O@elf=\skip60 -\f@nch@O@erf=\skip61 -\f@nch@O@olf=\skip62 -\f@nch@O@orf=\skip63 -) -(D:\Programme\Miktex\tex/latex/base\textcomp.sty -Package: textcomp 2020/02/02 v2.0n Standard LaTeX package -) -(D:\Programme\Miktex\tex/latex/txfonts\txfonts.sty -Package: txfonts 2008/01/22 v3.2.1 -LaTeX Font Info: Redeclaring symbol font `operators' on input line 21. -LaTeX Font Info: Overwriting symbol font `operators' in version `normal' -(Font) OT1/cmr/m/n --> OT1/txr/m/n on input line 21. -LaTeX Font Info: Overwriting symbol font `operators' in version `bold' -(Font) OT1/cmr/bx/n --> OT1/txr/m/n on input line 21. -LaTeX Font Info: Overwriting symbol font `operators' in version `bold' -(Font) OT1/txr/m/n --> OT1/txr/bx/n on input line 22. -\symitalic=\mathgroup6 -LaTeX Font Info: Overwriting symbol font `italic' in version `bold' -(Font) OT1/txr/m/it --> OT1/txr/bx/it on input line 26. -LaTeX Font Info: Redeclaring math alphabet \mathbf on input line 29. -LaTeX Font Info: Overwriting math alphabet `\mathbf' in version `normal' -(Font) OT1/cmr/bx/n --> OT1/txr/bx/n on input line 29. -LaTeX Font Info: Overwriting math alphabet `\mathbf' in version `bold' -(Font) OT1/cmr/bx/n --> OT1/txr/bx/n on input line 29. -LaTeX Font Info: Redeclaring math alphabet \mathit on input line 30. -LaTeX Font Info: Overwriting math alphabet `\mathit' in version `normal' -(Font) OT1/cmr/m/it --> OT1/txr/m/it on input line 30. -LaTeX Font Info: Overwriting math alphabet `\mathit' in version `bold' -(Font) OT1/cmr/bx/it --> OT1/txr/m/it on input line 30. -LaTeX Font Info: Overwriting math alphabet `\mathit' in version `bold' -(Font) OT1/txr/m/it --> OT1/txr/bx/it on input line 31. -LaTeX Font Info: Redeclaring math alphabet \mathsf on input line 40. -LaTeX Font Info: Overwriting math alphabet `\mathsf' in version `normal' -(Font) OT1/cmss/m/n --> OT1/txss/m/n on input line 40. -LaTeX Font Info: Overwriting math alphabet `\mathsf' in version `bold' -(Font) OT1/cmss/bx/n --> OT1/txss/m/n on input line 40. -LaTeX Font Info: Overwriting math alphabet `\mathsf' in version `bold' -(Font) OT1/txss/m/n --> OT1/txss/b/n on input line 41. -LaTeX Font Info: Redeclaring math alphabet \mathtt on input line 50. -LaTeX Font Info: Overwriting math alphabet `\mathtt' in version `normal' -(Font) OT1/cmtt/m/n --> OT1/txtt/m/n on input line 50. -LaTeX Font Info: Overwriting math alphabet `\mathtt' in version `bold' -(Font) OT1/cmtt/m/n --> OT1/txtt/m/n on input line 50. -LaTeX Font Info: Overwriting math alphabet `\mathtt' in version `bold' -(Font) OT1/txtt/m/n --> OT1/txtt/b/n on input line 51. -LaTeX Font Info: Redeclaring symbol font `letters' on input line 58. -LaTeX Font Info: Overwriting symbol font `letters' in version `normal' -(Font) OML/cmm/m/it --> OML/txmi/m/it on input line 58. -LaTeX Font Info: Overwriting symbol font `letters' in version `bold' -(Font) OML/cmm/b/it --> OML/txmi/m/it on input line 58. -LaTeX Font Info: Overwriting symbol font `letters' in version `bold' -(Font) OML/txmi/m/it --> OML/txmi/bx/it on input line 59. -\symlettersA=\mathgroup7 -LaTeX Font Info: Overwriting symbol font `lettersA' in version `bold' -(Font) U/txmia/m/it --> U/txmia/bx/it on input line 67. -LaTeX Font Info: Redeclaring math alphabet \mathfrak on input line 70. -LaTeX Font Info: Redeclaring symbol font `symbols' on input line 77. -LaTeX Font Info: Overwriting symbol font `symbols' in version `normal' -(Font) OMS/cmsy/m/n --> OMS/txsy/m/n on input line 77. -LaTeX Font Info: Overwriting symbol font `symbols' in version `bold' -(Font) OMS/cmsy/b/n --> OMS/txsy/m/n on input line 77. -LaTeX Font Info: Overwriting symbol font `symbols' in version `bold' -(Font) OMS/txsy/m/n --> OMS/txsy/bx/n on input line 78. -LaTeX Font Info: Redeclaring symbol font `AMSa' on input line 93. -LaTeX Font Info: Overwriting symbol font `AMSa' in version `normal' -(Font) U/msa/m/n --> U/txsya/m/n on input line 93. -LaTeX Font Info: Overwriting symbol font `AMSa' in version `bold' -(Font) U/msa/m/n --> U/txsya/m/n on input line 93. -LaTeX Font Info: Overwriting symbol font `AMSa' in version `bold' -(Font) U/txsya/m/n --> U/txsya/bx/n on input line 94. -LaTeX Font Info: Redeclaring symbol font `AMSb' on input line 102. -LaTeX Font Info: Overwriting symbol font `AMSb' in version `normal' -(Font) U/msb/m/n --> U/txsyb/m/n on input line 102. -LaTeX Font Info: Overwriting symbol font `AMSb' in version `bold' -(Font) U/msb/m/n --> U/txsyb/m/n on input line 102. -LaTeX Font Info: Overwriting symbol font `AMSb' in version `bold' -(Font) U/txsyb/m/n --> U/txsyb/bx/n on input line 103. -\symsymbolsC=\mathgroup8 -LaTeX Font Info: Overwriting symbol font `symbolsC' in version `bold' -(Font) U/txsyc/m/n --> U/txsyc/bx/n on input line 113. -LaTeX Font Info: Redeclaring symbol font `largesymbols' on input line 120. -LaTeX Font Info: Overwriting symbol font `largesymbols' in version `normal' -(Font) OMX/cmex/m/n --> OMX/txex/m/n on input line 120. -LaTeX Font Info: Overwriting symbol font `largesymbols' in version `bold' -(Font) OMX/cmex/m/n --> OMX/txex/m/n on input line 120. -LaTeX Font Info: Overwriting symbol font `largesymbols' in version `bold' -(Font) OMX/txex/m/n --> OMX/txex/bx/n on input line 121. -\symlargesymbolsA=\mathgroup9 -LaTeX Font Info: Overwriting symbol font `largesymbolsA' in version `bold' -(Font) U/txexa/m/n --> U/txexa/bx/n on input line 129. -LaTeX Font Info: Redeclaring math symbol \mathsterling on input line 164. -LaTeX Info: Redefining \not on input line 1043. -LaTeX Info: Redefining \textsquare on input line 1063. -LaTeX Info: Redefining \openbox on input line 1064. -) -(D:\Programme\Miktex\tex/latex/jknappen\mathrsfs.sty -Package: mathrsfs 1996/01/01 Math RSFS package v1.0 (jk) -\symrsfs=\mathgroup10 -) -(D:\Programme\Miktex\tex/latex/units\nicefrac.sty -Package: nicefrac 1998/08/04 v0.9b Nice fractions -\L@UnitsRaiseDisplaystyle=\skip64 -\L@UnitsRaiseTextstyle=\skip65 -\L@UnitsRaiseScriptstyle=\skip66 - -(D:\Programme\Miktex\tex/latex/base\ifthen.sty -Package: ifthen 2020/11/24 v1.1c Standard LaTeX ifthen package (DPC) -)) -(D:\Programme\Miktex\tex/latex/tools\bm.sty -Package: bm 2021/04/25 v1.2e Bold Symbol Support (DPC/FMi) -Package bm Info: No bold for \U/rsfs/m/n, using \pmb. -) -(D:\Programme\Miktex\tex/latex/eepic\epic.sty -Enhancements to Picture Environment. Version 1.2 - Released June 1, 1986 -\@@multicnt=\count289 -\d@lta=\count290 -\@delta=\dimen162 -\@@delta=\dimen163 -\@gridcnt=\count291 -\@joinkind=\count292 -\@dotgap=\dimen164 -\@ddotgap=\dimen165 -\@x@diff=\count293 -\@y@diff=\count294 -\x@diff=\dimen166 -\y@diff=\dimen167 -\@dotbox=\box52 -\num@segments=\count295 -\num@segmentsi=\count296 -\@datafile=\read3 -) (D:\Programme\Miktex\tex/latex/tools\verbatim.sty -Package: verbatim 2020-07-07 v1.5u LaTeX2e package for verbatim enhancements -\every@verbatim=\toks32 -\verbatim@line=\toks33 -\verbatim@in@stream=\read4 -) -(D:\Programme\Miktex\tex/latex/paralist\paralist.sty -Package: paralist 2017/01/22 v2.7 Extended list environments -\pltopsep=\skip67 -\plpartopsep=\skip68 -\plitemsep=\skip69 -\plparsep=\skip70 -\pl@lab=\toks34 -) -(D:\Programme\Miktex\tex/latex/base\makeidx.sty -Package: makeidx 2021/10/04 v1.0m Standard LaTeX package -) -(D:\Programme\Miktex\tex/latex/tools\array.sty -Package: array 2021/10/04 v2.5f Tabular extension package (FMi) -\col@sep=\dimen168 -\ar@mcellbox=\box53 -\extrarowheight=\dimen169 -\NC@list=\toks35 -\extratabsurround=\skip71 -\backup@length=\skip72 -\ar@cellbox=\box54 -) -(D:\Programme\Miktex\tex/latex/multirow\multirow.sty -Package: multirow 2021/03/15 v2.8 Span multiple rows of a table -\multirow@colwidth=\skip73 -\multirow@cntb=\count297 -\multirow@dima=\skip74 -\bigstrutjot=\dimen170 -) -(D:\Programme\Miktex\tex/latex/hyperref\hyperref.sty -Package: hyperref 2022-02-21 v7.00n Hypertext links for LaTeX - -(D:\Programme\Miktex\tex/generic/ltxcmds\ltxcmds.sty -Package: ltxcmds 2020-05-10 v1.25 LaTeX kernel commands for general use (HO) -) -(D:\Programme\Miktex\tex/generic/pdftexcmds\pdftexcmds.sty -Package: pdftexcmds 2020-06-27 v0.33 Utility functions of pdfTeX for LuaTeX (HO -) - -(D:\Programme\Miktex\tex/generic/infwarerr\infwarerr.sty -Package: infwarerr 2019/12/03 v1.5 Providing info/warning/error messages (HO) -) -Package pdftexcmds Info: \pdf@primitive is available. -Package pdftexcmds Info: \pdf@ifprimitive is available. -Package pdftexcmds Info: \pdfdraftmode found. -) -(D:\Programme\Miktex\tex/generic/kvsetkeys\kvsetkeys.sty -Package: kvsetkeys 2019/12/15 v1.18 Key value parser (HO) -) -(D:\Programme\Miktex\tex/generic/kvdefinekeys\kvdefinekeys.sty -Package: kvdefinekeys 2019-12-19 v1.6 Define keys (HO) -) -(D:\Programme\Miktex\tex/generic/pdfescape\pdfescape.sty -Package: pdfescape 2019/12/09 v1.15 Implements pdfTeX's escape features (HO) -) -(D:\Programme\Miktex\tex/latex/hycolor\hycolor.sty -Package: hycolor 2020-01-27 v1.10 Color options for hyperref/bookmark (HO) -) -(D:\Programme\Miktex\tex/latex/letltxmacro\letltxmacro.sty -Package: letltxmacro 2019/12/03 v1.6 Let assignment for LaTeX macros (HO) -) -(D:\Programme\Miktex\tex/latex/auxhook\auxhook.sty -Package: auxhook 2019-12-17 v1.6 Hooks for auxiliary files (HO) -) -(D:\Programme\Miktex\tex/latex/kvoptions\kvoptions.sty -Package: kvoptions 2020-10-07 v3.14 Key value format for package options (HO) -) -\@linkdim=\dimen171 -\Hy@linkcounter=\count298 -\Hy@pagecounter=\count299 - -(D:\Programme\Miktex\tex/latex/hyperref\pd1enc.def -File: pd1enc.def 2022-02-21 v7.00n Hyperref: PDFDocEncoding definition (HO) -Now handling font encoding PD1 ... -... no UTF-8 mapping file for font encoding PD1 -) -(D:\Programme\Miktex\tex/generic/intcalc\intcalc.sty -Package: intcalc 2019/12/15 v1.3 Expandable calculations with integers (HO) -) -(D:\Programme\Miktex\tex/generic/etexcmds\etexcmds.sty -Package: etexcmds 2019/12/15 v1.7 Avoid name clashes with e-TeX commands (HO) -) -\Hy@SavedSpaceFactor=\count300 - -(D:\Programme\Miktex\tex/latex/hyperref\puenc.def -File: puenc.def 2022-02-21 v7.00n Hyperref: PDF Unicode definition (HO) -Now handling font encoding PU ... -... no UTF-8 mapping file for font encoding PU -) -Package hyperref Info: Hyper figures OFF on input line 4137. -Package hyperref Info: Link nesting OFF on input line 4142. -Package hyperref Info: Hyper index ON on input line 4145. -Package hyperref Info: Plain pages OFF on input line 4152. -Package hyperref Info: Backreferencing OFF on input line 4157. -Package hyperref Info: Implicit mode ON; LaTeX internals redefined. -Package hyperref Info: Bookmarks ON on input line 4390. -\c@Hy@tempcnt=\count301 - -(D:\Programme\Miktex\tex/latex/url\url.sty -\Urlmuskip=\muskip17 -Package: url 2013/09/16 ver 3.4 Verb mode for urls, etc. -) -LaTeX Info: Redefining \url on input line 4749. -\XeTeXLinkMargin=\dimen172 - -(D:\Programme\Miktex\tex/generic/bitset\bitset.sty -Package: bitset 2019/12/09 v1.3 Handle bit-vector datatype (HO) - -(D:\Programme\Miktex\tex/generic/bigintcalc\bigintcalc.sty -Package: bigintcalc 2019/12/15 v1.5 Expandable calculations on big integers (HO -) -)) -\Fld@menulength=\count302 -\Field@Width=\dimen173 -\Fld@charsize=\dimen174 -Package hyperref Info: Hyper figures OFF on input line 6027. -Package hyperref Info: Link nesting OFF on input line 6032. -Package hyperref Info: Hyper index ON on input line 6035. -Package hyperref Info: backreferencing OFF on input line 6042. -Package hyperref Info: Link coloring OFF on input line 6047. -Package hyperref Info: Link coloring with OCG OFF on input line 6052. -Package hyperref Info: PDF/A mode OFF on input line 6057. -LaTeX Info: Redefining \ref on input line 6097. -LaTeX Info: Redefining \pageref on input line 6101. - -(D:\Programme\Miktex\tex/latex/base\atbegshi-ltx.sty -Package: atbegshi-ltx 2021/01/10 v1.0c Emulation of the original atbegshi -package with kernel methods -) -\Hy@abspage=\count303 -\c@Item=\count304 -\c@Hfootnote=\count305 -) -Package hyperref Info: Driver (autodetected): hpdftex. - -(D:\Programme\Miktex\tex/latex/hyperref\hpdftex.def -File: hpdftex.def 2022-02-21 v7.00n Hyperref driver for pdfTeX - -(D:\Programme\Miktex\tex/latex/base\atveryend-ltx.sty -Package: atveryend-ltx 2020/08/19 v1.0a Emulation of the original atveryend pac -kage -with kernel methods -) -\Fld@listcount=\count306 -\c@bookmark@seq@number=\count307 - -(D:\Programme\Miktex\tex/latex/rerunfilecheck\rerunfilecheck.sty -Package: rerunfilecheck 2019/12/05 v1.9 Rerun checks for auxiliary files (HO) - -(D:\Programme\Miktex\tex/generic/uniquecounter\uniquecounter.sty -Package: uniquecounter 2019/12/15 v1.4 Provide unlimited unique counter (HO) -) -Package uniquecounter Info: New unique counter `rerunfilecheck' on input line 2 -86. -) -\Hy@SectionHShift=\skip75 -) -(D:\Programme\Miktex\tex/latex/subfigure\subfigure.sty -Package: subfigure 2002/07/30 v2.1.4 subfigure package -\subfigtopskip=\skip76 -\subfigcapskip=\skip77 -\subfigcaptopadj=\dimen175 -\subfigbottomskip=\skip78 -\subfigcapmargin=\dimen176 -\subfiglabelskip=\skip79 -\c@subfigure=\count308 -\c@lofdepth=\count309 -\c@subtable=\count310 -\c@lotdepth=\count311 - -**************************************** -* Local config file subfigure.cfg used * -**************************************** -(D:\Programme\Miktex\tex/latex/subfigure\subfigure.cfg) -\subfig@top=\skip80 -\subfig@bottom=\skip81 -) -(D:\Programme\Miktex\tex/latex/pgf/frontendlayer\tikz.sty -(D:\Programme\Miktex\tex/latex/pgf/basiclayer\pgf.sty -(D:\Programme\Miktex\tex/latex/pgf/utilities\pgfrcs.sty -(D:\Programme\Miktex\tex/generic/pgf/utilities\pgfutil-common.tex -\pgfutil@everybye=\toks36 -\pgfutil@tempdima=\dimen177 -\pgfutil@tempdimb=\dimen178 - -(D:\Programme\Miktex\tex/generic/pgf/utilities\pgfutil-common-lists.tex)) -(D:\Programme\Miktex\tex/generic/pgf/utilities\pgfutil-latex.def -\pgfutil@abb=\box55 -) -(D:\Programme\Miktex\tex/generic/pgf/utilities\pgfrcs.code.tex -(D:\Programme\Miktex\tex/generic/pgf\pgf.revision.tex) -Package: pgfrcs 2021/05/15 v3.1.9a (3.1.9a) -)) -Package: pgf 2021/05/15 v3.1.9a (3.1.9a) - -(D:\Programme\Miktex\tex/latex/pgf/basiclayer\pgfcore.sty -(D:\Programme\Miktex\tex/latex/pgf/systemlayer\pgfsys.sty -(D:\Programme\Miktex\tex/generic/pgf/systemlayer\pgfsys.code.tex -Package: pgfsys 2021/05/15 v3.1.9a (3.1.9a) - -(D:\Programme\Miktex\tex/generic/pgf/utilities\pgfkeys.code.tex -\pgfkeys@pathtoks=\toks37 -\pgfkeys@temptoks=\toks38 - -(D:\Programme\Miktex\tex/generic/pgf/utilities\pgfkeysfiltered.code.tex -\pgfkeys@tmptoks=\toks39 -)) -\pgf@x=\dimen179 -\pgf@y=\dimen180 -\pgf@xa=\dimen181 -\pgf@ya=\dimen182 -\pgf@xb=\dimen183 -\pgf@yb=\dimen184 -\pgf@xc=\dimen185 -\pgf@yc=\dimen186 -\pgf@xd=\dimen187 -\pgf@yd=\dimen188 -\w@pgf@writea=\write3 -\r@pgf@reada=\read5 -\c@pgf@counta=\count312 -\c@pgf@countb=\count313 -\c@pgf@countc=\count314 -\c@pgf@countd=\count315 -\t@pgf@toka=\toks40 -\t@pgf@tokb=\toks41 -\t@pgf@tokc=\toks42 -\pgf@sys@id@count=\count316 - -(D:\Programme\Miktex\tex/generic/pgf/systemlayer\pgf.cfg -File: pgf.cfg 2021/05/15 v3.1.9a (3.1.9a) -) -Driver file for pgf: pgfsys-pdftex.def - -(D:\Programme\Miktex\tex/generic/pgf/systemlayer\pgfsys-pdftex.def -File: pgfsys-pdftex.def 2021/05/15 v3.1.9a (3.1.9a) - -(D:\Programme\Miktex\tex/generic/pgf/systemlayer\pgfsys-common-pdf.def -File: pgfsys-common-pdf.def 2021/05/15 v3.1.9a (3.1.9a) -))) -(D:\Programme\Miktex\tex/generic/pgf/systemlayer\pgfsyssoftpath.code.tex -File: pgfsyssoftpath.code.tex 2021/05/15 v3.1.9a (3.1.9a) -\pgfsyssoftpath@smallbuffer@items=\count317 -\pgfsyssoftpath@bigbuffer@items=\count318 -) -(D:\Programme\Miktex\tex/generic/pgf/systemlayer\pgfsysprotocol.code.tex -File: pgfsysprotocol.code.tex 2021/05/15 v3.1.9a (3.1.9a) -)) -(D:\Programme\Miktex\tex/latex/xcolor\xcolor.sty -Package: xcolor 2021/10/31 v2.13 LaTeX color extensions (UK) - -(D:\Programme\Miktex\tex/latex/graphics-cfg\color.cfg -File: color.cfg 2016/01/02 v1.6 sample color configuration -) -Package xcolor Info: Driver file: pdftex.def on input line 227. -Package xcolor Info: Model `cmy' substituted by `cmy0' on input line 1352. -Package xcolor Info: Model `hsb' substituted by `rgb' on input line 1356. -Package xcolor Info: Model `RGB' extended on input line 1368. -Package xcolor Info: Model `HTML' substituted by `rgb' on input line 1370. -Package xcolor Info: Model `Hsb' substituted by `hsb' on input line 1371. -Package xcolor Info: Model `tHsb' substituted by `hsb' on input line 1372. -Package xcolor Info: Model `HSB' substituted by `hsb' on input line 1373. -Package xcolor Info: Model `Gray' substituted by `gray' on input line 1374. -Package xcolor Info: Model `wave' substituted by `hsb' on input line 1375. -) -(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcore.code.tex -Package: pgfcore 2021/05/15 v3.1.9a (3.1.9a) - -(D:\Programme\Miktex\tex/generic/pgf/math\pgfmath.code.tex -(D:\Programme\Miktex\tex/generic/pgf/math\pgfmathcalc.code.tex -(D:\Programme\Miktex\tex/generic/pgf/math\pgfmathutil.code.tex) -(D:\Programme\Miktex\tex/generic/pgf/math\pgfmathparser.code.tex -\pgfmath@dimen=\dimen189 -\pgfmath@count=\count319 -\pgfmath@box=\box56 -\pgfmath@toks=\toks43 -\pgfmath@stack@operand=\toks44 -\pgfmath@stack@operation=\toks45 -) -(D:\Programme\Miktex\tex/generic/pgf/math\pgfmathfunctions.code.tex -(D:\Programme\Miktex\tex/generic/pgf/math\pgfmathfunctions.basic.code.tex) -(D:\Programme\Miktex\tex/generic/pgf/math\pgfmathfunctions.trigonometric.code.t -ex) (D:\Programme\Miktex\tex/generic/pgf/math\pgfmathfunctions.random.code.tex) -(D:\Programme\Miktex\tex/generic/pgf/math\pgfmathfunctions.comparison.code.tex) -(D:\Programme\Miktex\tex/generic/pgf/math\pgfmathfunctions.base.code.tex) -(D:\Programme\Miktex\tex/generic/pgf/math\pgfmathfunctions.round.code.tex) -(D:\Programme\Miktex\tex/generic/pgf/math\pgfmathfunctions.misc.code.tex) -(D:\Programme\Miktex\tex/generic/pgf/math\pgfmathfunctions.integerarithmetics.c -ode.tex))) (D:\Programme\Miktex\tex/generic/pgf/math\pgfmathfloat.code.tex -\c@pgfmathroundto@lastzeros=\count320 -)) -(D:\Programme\Miktex\tex/generic/pgf/math\pgfint.code.tex) -(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcorepoints.code.tex -File: pgfcorepoints.code.tex 2021/05/15 v3.1.9a (3.1.9a) -\pgf@picminx=\dimen190 -\pgf@picmaxx=\dimen191 -\pgf@picminy=\dimen192 -\pgf@picmaxy=\dimen193 -\pgf@pathminx=\dimen194 -\pgf@pathmaxx=\dimen195 -\pgf@pathminy=\dimen196 -\pgf@pathmaxy=\dimen197 -\pgf@xx=\dimen198 -\pgf@xy=\dimen199 -Normal \dimen register pool exhausted, switching to extended pool. -\pgf@yx=\dimen256 -\pgf@yy=\dimen257 -\pgf@zx=\dimen258 -\pgf@zy=\dimen259 -) -(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcorepathconstruct.code.tex -File: pgfcorepathconstruct.code.tex 2021/05/15 v3.1.9a (3.1.9a) -\pgf@path@lastx=\dimen260 -\pgf@path@lasty=\dimen261 -) -(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcorepathusage.code.tex -File: pgfcorepathusage.code.tex 2021/05/15 v3.1.9a (3.1.9a) -\pgf@shorten@end@additional=\dimen262 -\pgf@shorten@start@additional=\dimen263 -) -(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcorescopes.code.tex -File: pgfcorescopes.code.tex 2021/05/15 v3.1.9a (3.1.9a) -\pgfpic=\box57 -\pgf@hbox=\box58 -\pgf@layerbox@main=\box59 -\pgf@picture@serial@count=\count321 -) -(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcoregraphicstate.code.tex -File: pgfcoregraphicstate.code.tex 2021/05/15 v3.1.9a (3.1.9a) -\pgflinewidth=\dimen264 -) -(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcoretransformations.code.tex -File: pgfcoretransformations.code.tex 2021/05/15 v3.1.9a (3.1.9a) -\pgf@pt@x=\dimen265 -\pgf@pt@y=\dimen266 -\pgf@pt@temp=\dimen267 -) (D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcorequick.code.tex -File: pgfcorequick.code.tex 2021/05/15 v3.1.9a (3.1.9a) -) -(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcoreobjects.code.tex -File: pgfcoreobjects.code.tex 2021/05/15 v3.1.9a (3.1.9a) -) -(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcorepathprocessing.code.tex -File: pgfcorepathprocessing.code.tex 2021/05/15 v3.1.9a (3.1.9a) -) (D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcorearrows.code.tex -File: pgfcorearrows.code.tex 2021/05/15 v3.1.9a (3.1.9a) -\pgfarrowsep=\dimen268 -) -(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcoreshade.code.tex -File: pgfcoreshade.code.tex 2021/05/15 v3.1.9a (3.1.9a) -\pgf@max=\dimen269 -\pgf@sys@shading@range@num=\count322 -\pgf@shadingcount=\count323 -) -(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcoreimage.code.tex -File: pgfcoreimage.code.tex 2021/05/15 v3.1.9a (3.1.9a) - -(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcoreexternal.code.tex -File: pgfcoreexternal.code.tex 2021/05/15 v3.1.9a (3.1.9a) -\pgfexternal@startupbox=\box60 -)) -(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcorelayers.code.tex -File: pgfcorelayers.code.tex 2021/05/15 v3.1.9a (3.1.9a) -) -(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcoretransparency.code.tex -File: pgfcoretransparency.code.tex 2021/05/15 v3.1.9a (3.1.9a) -) -(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcorepatterns.code.tex -File: pgfcorepatterns.code.tex 2021/05/15 v3.1.9a (3.1.9a) -) -(D:\Programme\Miktex\tex/generic/pgf/basiclayer\pgfcorerdf.code.tex -File: pgfcorerdf.code.tex 2021/05/15 v3.1.9a (3.1.9a) -))) -(D:\Programme\Miktex\tex/generic/pgf/modules\pgfmoduleshapes.code.tex -File: pgfmoduleshapes.code.tex 2021/05/15 v3.1.9a (3.1.9a) -\pgfnodeparttextbox=\box61 -) -(D:\Programme\Miktex\tex/generic/pgf/modules\pgfmoduleplot.code.tex -File: pgfmoduleplot.code.tex 2021/05/15 v3.1.9a (3.1.9a) -) -(D:\Programme\Miktex\tex/latex/pgf/compatibility\pgfcomp-version-0-65.sty -Package: pgfcomp-version-0-65 2021/05/15 v3.1.9a (3.1.9a) -\pgf@nodesepstart=\dimen270 -\pgf@nodesepend=\dimen271 -) -(D:\Programme\Miktex\tex/latex/pgf/compatibility\pgfcomp-version-1-18.sty -Package: pgfcomp-version-1-18 2021/05/15 v3.1.9a (3.1.9a) -)) -(D:\Programme\Miktex\tex/latex/pgf/utilities\pgffor.sty -(D:\Programme\Miktex\tex/latex/pgf/utilities\pgfkeys.sty -(D:\Programme\Miktex\tex/generic/pgf/utilities\pgfkeys.code.tex)) -(D:\Programme\Miktex\tex/latex/pgf/math\pgfmath.sty -(D:\Programme\Miktex\tex/generic/pgf/math\pgfmath.code.tex)) -(D:\Programme\Miktex\tex/generic/pgf/utilities\pgffor.code.tex -Package: pgffor 2021/05/15 v3.1.9a (3.1.9a) - -(D:\Programme\Miktex\tex/generic/pgf/math\pgfmath.code.tex) -\pgffor@iter=\dimen272 -\pgffor@skip=\dimen273 -\pgffor@stack=\toks46 -\pgffor@toks=\toks47 -)) -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz\tikz.code.tex -Package: tikz 2021/05/15 v3.1.9a (3.1.9a) - -(D:\Programme\Miktex\tex/generic/pgf/libraries\pgflibraryplothandlers.code.tex -File: pgflibraryplothandlers.code.tex 2021/05/15 v3.1.9a (3.1.9a) -\pgf@plot@mark@count=\count324 -\pgfplotmarksize=\dimen274 -) -\tikz@lastx=\dimen275 -\tikz@lasty=\dimen276 -\tikz@lastxsaved=\dimen277 -\tikz@lastysaved=\dimen278 -\tikz@lastmovetox=\dimen279 -\tikz@lastmovetoy=\dimen280 -\tikzleveldistance=\dimen281 -\tikzsiblingdistance=\dimen282 -\tikz@figbox=\box62 -\tikz@figbox@bg=\box63 -\tikz@tempbox=\box64 -\tikz@tempbox@bg=\box65 -\tikztreelevel=\count325 -\tikznumberofchildren=\count326 -\tikznumberofcurrentchild=\count327 -\tikz@fig@count=\count328 -(D:\Programme\Miktex\tex/generic/pgf/modules\pgfmodulematrix.code.tex -File: pgfmodulematrix.code.tex 2021/05/15 v3.1.9a (3.1.9a) -\pgfmatrixcurrentrow=\count329 -\pgfmatrixcurrentcolumn=\count330 -\pgf@matrix@numberofcolumns=\count331 -) -\tikz@expandcount=\count332 - -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryto -paths.code.tex -File: tikzlibrarytopaths.code.tex 2021/05/15 v3.1.9a (3.1.9a) -))) (D:\Programme\Miktex\tex/latex/tikz-cd\tikz-cd.sty -Package: tikz-cd 2021/05/04 v1.0 Commutative diagrams with TikZ - -(D:\Programme\Miktex\tex/latex/tikz-cd\tikzlibrarycd.code.tex -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryma -trix.code.tex -File: tikzlibrarymatrix.code.tex 2021/05/15 v3.1.9a (3.1.9a) -) -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryqu -otes.code.tex -File: tikzlibraryquotes.code.tex 2021/05/15 v3.1.9a (3.1.9a) -) -(D:\Programme\Miktex\tex/generic/pgf/libraries\pgflibraryarrows.meta.code.tex -File: pgflibraryarrows.meta.code.tex 2021/05/15 v3.1.9a (3.1.9a) -\pgfarrowinset=\dimen283 -\pgfarrowlength=\dimen284 -\pgfarrowwidth=\dimen285 -\pgfarrowlinewidth=\dimen286 -))) (D:\Programme\Miktex\tex/latex/pgfplots\pgfplots.sty -(D:\Programme\Miktex\tex/generic/pgfplots\pgfplots.revision.tex) -Package: pgfplots 2021/05/15 v1.18.1 Data Visualization (1.18.1) - -(D:\Programme\Miktex\tex/generic/pgfplots\pgfplots.code.tex -(D:\Programme\Miktex\tex/generic/pgfplots\pgfplotscore.code.tex -\t@pgfplots@toka=\toks48 -\t@pgfplots@tokb=\toks49 -\t@pgfplots@tokc=\toks50 -\pgfplots@tmpa=\dimen287 -\c@pgfplots@coordindex=\count333 -\c@pgfplots@scanlineindex=\count334 - -(D:\Programme\Miktex\tex/generic/pgfplots/sys\pgfplotssysgeneric.code.tex)) -(D:\Programme\Miktex\tex/generic/pgfplots/libs\pgfplotslibrary.code.tex) -(D:\Programme\Miktex\tex/generic/pgfplots/oldpgfcompatib\pgfplotsoldpgfsupp_loa -der.code.tex -(D:\Programme\Miktex\tex/generic/pgf/libraries\pgflibraryfpu.code.tex)) -(D:\Programme\Miktex\tex/generic/pgfplots/util\pgfplotsutil.code.tex -(D:\Programme\Miktex\tex/generic/pgfplots/liststructure\pgfplotsliststructure.c -ode.tex) -(D:\Programme\Miktex\tex/generic/pgfplots/liststructure\pgfplotsliststructureex -t.code.tex) -(D:\Programme\Miktex\tex/generic/pgfplots/liststructure\pgfplotsarray.code.tex -\c@pgfplotsarray@tmp=\count335 -) -(D:\Programme\Miktex\tex/generic/pgfplots/liststructure\pgfplotsmatrix.code.tex -) -(D:\Programme\Miktex\tex/generic/pgfplots/numtable\pgfplotstableshared.code.tex -\c@pgfplotstable@counta=\count336 -\t@pgfplotstable@a=\toks51 -) -(D:\Programme\Miktex\tex/generic/pgfplots/liststructure\pgfplotsdeque.code.tex) -(D:\Programme\Miktex\tex/generic/pgfplots/util\pgfplotsbinary.code.tex -(D:\Programme\Miktex\tex/generic/pgfplots/util\pgfplotsbinary.data.code.tex)) -(D:\Programme\Miktex\tex/generic/pgfplots/util\pgfplotsutil.verb.code.tex) -(D:\Programme\Miktex\tex/generic/pgfplots/libs\pgflibrarypgfplots.surfshading.c -ode.tex -\c@pgfplotslibrarysurf@no=\count337 - -(D:\Programme\Miktex\tex/generic/pgfplots/sys\pgflibrarypgfplots.surfshading.pg -fsys-pdftex.def))) -(D:\Programme\Miktex\tex/generic/pgfplots/util\pgfplotscolormap.code.tex -(D:\Programme\Miktex\tex/generic/pgfplots/util\pgfplotscolor.code.tex)) -(D:\Programme\Miktex\tex/generic/pgfplots\pgfplotsstackedplots.code.tex) -(D:\Programme\Miktex\tex/generic/pgfplots\pgfplotsplothandlers.code.tex -(D:\Programme\Miktex\tex/generic/pgfplots\pgfplotsmeshplothandler.code.tex -(D:\Programme\Miktex\tex/generic/pgfplots\pgfplotsmeshplotimage.code.tex))) -(D:\Programme\Miktex\tex/generic/pgfplots\pgfplots.scaling.code.tex) -(D:\Programme\Miktex\tex/generic/pgfplots\pgfplotscoordprocessing.code.tex) -(D:\Programme\Miktex\tex/generic/pgfplots\pgfplots.errorbars.code.tex) -(D:\Programme\Miktex\tex/generic/pgfplots\pgfplots.markers.code.tex) -(D:\Programme\Miktex\tex/generic/pgfplots\pgfplotsticks.code.tex) -(D:\Programme\Miktex\tex/generic/pgfplots\pgfplots.paths.code.tex) -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryde -corations.code.tex -(D:\Programme\Miktex\tex/generic/pgf/modules\pgfmoduledecorations.code.tex -\pgfdecoratedcompleteddistance=\dimen288 -\pgfdecoratedremainingdistance=\dimen289 -\pgfdecoratedinputsegmentcompleteddistance=\dimen290 -\pgfdecoratedinputsegmentremainingdistance=\dimen291 -\pgf@decorate@distancetomove=\dimen292 -\pgf@decorate@repeatstate=\count338 -\pgfdecorationsegmentamplitude=\dimen293 -\pgfdecorationsegmentlength=\dimen294 -) -\tikz@lib@dec@box=\box66 -) -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryde -corations.pathmorphing.code.tex -(D:\Programme\Miktex\tex/generic/pgf/libraries/decorations\pgflibrarydecoration -s.pathmorphing.code.tex)) -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryde -corations.pathreplacing.code.tex -(D:\Programme\Miktex\tex/generic/pgf/libraries/decorations\pgflibrarydecoration -s.pathreplacing.code.tex)) -(D:\Programme\Miktex\tex/generic/pgfplots/libs\tikzlibrarypgfplots.contourlua.c -ode.tex) -\pgfplots@numplots=\count339 -\pgfplots@xmin@reg=\dimen295 -\pgfplots@xmax@reg=\dimen296 -\pgfplots@ymin@reg=\dimen297 -\pgfplots@ymax@reg=\dimen298 -\pgfplots@zmin@reg=\dimen299 -\pgfplots@zmax@reg=\dimen300 -) -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibrarypl -otmarks.code.tex -File: tikzlibraryplotmarks.code.tex 2021/05/15 v3.1.9a (3.1.9a) - -(D:\Programme\Miktex\tex/generic/pgf/libraries\pgflibraryplotmarks.code.tex -File: pgflibraryplotmarks.code.tex 2021/05/15 v3.1.9a (3.1.9a) -))) -(D:\Programme\Miktex\tex/latex/pgfplots\pgfplotstable.sty -(D:\Programme\Miktex\tex/generic/pgfplots\pgfplots.revision.tex) -Package: pgfplotstable 2021/05/15 v1.18.1 Table typesetting and Pretty-printing - (1.18.1) - -(D:\Programme\Miktex\tex/generic/pgfplots/numtable\pgfplotstable.code.tex -(D:\Programme\Miktex\tex/generic/pgfplots/numtable\pgfplotstable.coltype.code.t -ex))) (D:\Programme\Miktex\tex/latex/csquotes\csquotes.sty -Package: csquotes 2021-02-22 v5.2l context-sensitive quotations (JAW) - -(D:\Programme\Miktex\tex/latex/etoolbox\etoolbox.sty -Package: etoolbox 2020/10/05 v2.5k e-TeX tools for LaTeX (JAW) -\etb@tempcnta=\count340 -) -\csq@reset=\count341 -\csq@gtype=\count342 -\csq@glevel=\count343 -\csq@qlevel=\count344 -\csq@maxlvl=\count345 -\csq@tshold=\count346 -\csq@ltx@everypar=\toks52 - -(D:\Programme\Miktex\tex/latex/csquotes\csquotes.def -File: csquotes.def 2021-02-22 v5.2l csquotes generic definitions (JAW) -) -Package csquotes Info: Trying to load configuration file 'csquotes.cfg'... -Package csquotes Info: ... configuration file loaded successfully. - -(D:\Programme\Miktex\tex/latex/csquotes\csquotes.cfg -File: csquotes.cfg -) -Package csquotes Info: Disabling multilingual quotes. -Package csquotes Info: Redefining alias 'english' -> 'english/american'. -) -(D:\Programme\Miktex\tex/latex/wasysym\wasysym.sty -Package: wasysym 2020/01/19 v2.4 Wasy-2 symbol support package -\symwasy=\mathgroup11 -LaTeX Font Info: Overwriting symbol font `wasy' in version `bold' -(Font) U/wasy/m/n --> U/wasy/b/n on input line 93. -) -(D:\Programme\Miktex\tex/latex/environ\environ.sty -Package: environ 2014/05/04 v0.3 A new way to define environments - -(D:\Programme\Miktex\tex/latex/trimspaces\trimspaces.sty -Package: trimspaces 2009/09/17 v1.1 Trim spaces around a token list -)) -(D:\Programme\Miktex\tex/latex/appendix\appendix.sty -Package: appendix 2020/02/08 v1.2c extra appendix facilities -\c@@pps=\count347 -\c@@ppsavesec=\count348 -\c@@ppsaveapp=\count349 -) -(D:\Programme\Miktex\tex/latex/placeins\placeins.sty -Package: placeins 2005/04/18 v 2.2 -) -(D:\Programme\Miktex\tex/generic/xypic\xy.sty -(D:\Programme\Miktex\tex/generic/xypic\xy.tex Bootstrap'ing: catcodes, -docmode, (D:\Programme\Miktex\tex/generic/xypic\xyrecat.tex) -(D:\Programme\Miktex\tex/generic/xypic\xyidioms.tex) - - Xy-pic version 3.8.9 <2013/10/06> - Copyright (c) 1991-2013 by Kristoffer H. Rose and others - Xy-pic is free software: see the User's Guide for details. - -Loading kernel: messages; fonts; allocations: state, -\X@c=\dimen301 -\Y@c=\dimen302 -\U@c=\dimen303 -\D@c=\dimen304 -\L@c=\dimen305 -\R@c=\dimen306 -\Edge@c=\toks53 -\X@p=\dimen307 -\Y@p=\dimen308 -\U@p=\dimen309 -\D@p=\dimen310 -\L@p=\dimen311 -\R@p=\dimen312 -\Edge@p=\toks54 -\X@origin=\dimen313 -\Y@origin=\dimen314 -\X@xbase=\dimen315 -\Y@xbase=\dimen316 -\X@ybase=\dimen317 -\Y@ybase=\dimen318 -\X@min=\dimen319 -\Y@min=\dimen320 -\X@max=\dimen321 -\Y@max=\dimen322 -\lastobjectbox@=\box67 -\zerodotbox@=\box68 -\almostz@=\dimen323 - direction, -\d@X=\dimen324 -\d@Y=\dimen325 -\K@=\count350 -\KK@=\count351 -\Direction=\count352 -\K@dXdY=\dimen326 -\K@dYdX=\dimen327 -\xyread@=\read6 -\xywrite@=\write4 -\csp@=\count353 -\quotPTK@=\dimen328 - -utility macros; pictures: \xy, positions, -\swaptoks@@=\toks55 -\connectobjectbox@@=\box69 - objects, -\styletoks@=\toks56 - decorations; -kernel objects: directionals, circles, text; options; algorithms: directions, -edges, connections; Xy-pic loaded) -(D:\Programme\Miktex\tex/generic/iftex\ifpdf.sty -Package: ifpdf 2019/10/25 v3.4 ifpdf legacy package. Use iftex instead. -) -Package: xy 2013/10/06 Xy-pic version 3.8.9 - -(D:\Programme\Miktex\tex/generic/xypic\xyall.tex - Xy-pic option: All features v.3.8 -(D:\Programme\Miktex\tex/generic/xypic\xycurve.tex - Xy-pic option: Curve and Spline extension v.3.12 curve, -\crv@cnt@=\count354 -\crvpts@=\toks57 -\splinebox@=\box70 -\splineval@=\dimen329 -\splinedepth@=\dimen330 -\splinetol@=\dimen331 -\splinelength@=\dimen332 - circles, -\L@=\dimen333 - loaded) -(D:\Programme\Miktex\tex/generic/xypic\xyframe.tex - Xy-pic option: Frame and Bracket extension v.3.14 loaded) -(D:\Programme\Miktex\tex/generic/xypic\xycmtip.tex - Xy-pic option: Computer Modern tip extension v.3.7 -(D:\Programme\Miktex\tex/generic/xypic\xytips.tex - Xy-pic option: More Tips extension v.3.11 loaded) loaded) -(D:\Programme\Miktex\tex/generic/xypic\xyline.tex - Xy-pic option: Line styles extension v.3.10 -\xylinethick@=\dimen334 - loaded) -(D:\Programme\Miktex\tex/generic/xypic\xyrotate.tex - Xy-pic option: Rotate and Scale extension v.3.8 loaded) -(D:\Programme\Miktex\tex/generic/xypic\xycolor.tex - Xy-pic option: Colour extension v.3.11 loaded) -(D:\Programme\Miktex\tex/generic/xypic\xymatrix.tex - Xy-pic option: Matrix feature v.3.14 -\Row=\count355 -\Col=\count356 -\queue@=\toks58 -\queue@@=\toks59 -\qcount@=\count357 -\qcount@@=\count358 -\matrixsize@=\count359 - loaded) -(D:\Programme\Miktex\tex/generic/xypic\xyarrow.tex - Xy-pic option: Arrow and Path feature v.3.9 path, \ar, loaded) -(D:\Programme\Miktex\tex/generic/xypic\xygraph.tex - Xy-pic option: Graph feature v.3.11 loaded) loaded) -(D:\Programme\Miktex\tex/generic/xypic\xypdf.tex - Xy-pic option: PDF driver v.1.7 Xy-pic pdf driver: `color' extension support -(D:\Programme\Miktex\tex/generic/xypic\xypdf-co.tex loaded) -Xy-pic pdf driver: `curve' extension support -(D:\Programme\Miktex\tex/generic/xypic\xypdf-cu.tex loaded) -Xy-pic pdf driver: `frame' extension support -(D:\Programme\Miktex\tex/generic/xypic\xypdf-fr.tex loaded) -Xy-pic pdf driver: `line' extension support -(D:\Programme\Miktex\tex/generic/xypic\xypdf-li.tex loaded) -Xy-pic pdf driver: `rotate' extension support -(D:\Programme\Miktex\tex/generic/xypic\xypdf-ro.tex loaded) loaded)) -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryca -lc.code.tex -File: tikzlibrarycalc.code.tex 2021/05/15 v3.1.9a (3.1.9a) -) -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryin -tersections.code.tex -(D:\Programme\Miktex\tex/generic/pgf/libraries\pgflibraryintersections.code.tex -\pgf@intersect@solutions=\count360 -)) -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryth -rough.code.tex -File: tikzlibrarythrough.code.tex 2021/05/15 v3.1.9a (3.1.9a) -) -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryba -ckgrounds.code.tex -File: tikzlibrarybackgrounds.code.tex 2021/05/15 v3.1.9a (3.1.9a) -\pgf@layerbox@background=\box71 -\pgf@layerboxsaved@background=\box72 -) -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries/graphs\tikzli -brarygraphs.code.tex -File: tikzlibrarygraphs.code.tex 2021/05/15 v3.1.9a (3.1.9a) -\tikz@lib@auto@number=\count361 -\tikz@qnode@count=\count362 -) -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibrarypo -sitioning.code.tex -File: tikzlibrarypositioning.code.tex 2021/05/15 v3.1.9a (3.1.9a) -) -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibrarysh -apes.code.tex -File: tikzlibraryshapes.code.tex 2021/05/15 v3.1.9a (3.1.9a) - -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibrarysh -apes.geometric.code.tex -File: tikzlibraryshapes.geometric.code.tex 2021/05/15 v3.1.9a (3.1.9a) - -(D:\Programme\Miktex\tex/generic/pgf/libraries/shapes\pgflibraryshapes.geometri -c.code.tex -File: pgflibraryshapes.geometric.code.tex 2021/05/15 v3.1.9a (3.1.9a) -)) -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibrarysh -apes.misc.code.tex -File: tikzlibraryshapes.misc.code.tex 2021/05/15 v3.1.9a (3.1.9a) - -(D:\Programme\Miktex\tex/generic/pgf/libraries/shapes\pgflibraryshapes.misc.cod -e.tex -File: pgflibraryshapes.misc.code.tex 2021/05/15 v3.1.9a (3.1.9a) -)) -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibrarysh -apes.symbols.code.tex -File: tikzlibraryshapes.symbols.code.tex 2021/05/15 v3.1.9a (3.1.9a) - -(D:\Programme\Miktex\tex/generic/pgf/libraries/shapes\pgflibraryshapes.symbols. -code.tex -File: pgflibraryshapes.symbols.code.tex 2021/05/15 v3.1.9a (3.1.9a) -)) -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibrarysh -apes.arrows.code.tex -File: tikzlibraryshapes.arrows.code.tex 2021/05/15 v3.1.9a (3.1.9a) - -(D:\Programme\Miktex\tex/generic/pgf/libraries/shapes\pgflibraryshapes.arrows.c -ode.tex -File: pgflibraryshapes.arrows.code.tex 2021/05/15 v3.1.9a (3.1.9a) -)) -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibrarysh -apes.callouts.code.tex -(D:\Programme\Miktex\tex/generic/pgf/libraries/shapes\pgflibraryshapes.callouts -.code.tex)) -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibrarysh -apes.multipart.code.tex -File: tikzlibraryshapes.multipart.code.tex 2021/05/15 v3.1.9a (3.1.9a) - -(D:\Programme\Miktex\tex/generic/pgf/libraries/shapes\pgflibraryshapes.multipar -t.code.tex -File: pgflibraryshapes.multipart.code.tex 2021/05/15 v3.1.9a (3.1.9a) -\pgfnodepartlowerbox=\box73 -\pgfnodeparttwobox=\box74 -\pgfnodepartthreebox=\box75 -\pgfnodepartfourbox=\box76 -\pgfnodeparttwentybox=\box77 -\pgfnodepartnineteenbox=\box78 -\pgfnodeparteighteenbox=\box79 -\pgfnodepartseventeenbox=\box80 -\pgfnodepartsixteenbox=\box81 -\pgfnodepartfifteenbox=\box82 -\pgfnodepartfourteenbox=\box83 -\pgfnodepartthirteenbox=\box84 -\pgfnodeparttwelvebox=\box85 -\pgfnodepartelevenbox=\box86 -\pgfnodeparttenbox=\box87 -\pgfnodepartninebox=\box88 -\pgfnodeparteightbox=\box89 -\pgfnodepartsevenbox=\box90 -\pgfnodepartsixbox=\box91 -\pgfnodepartfivebox=\box92 -))) -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryar -rows.code.tex -File: tikzlibraryarrows.code.tex 2021/05/15 v3.1.9a (3.1.9a) - -(D:\Programme\Miktex\tex/generic/pgf/libraries\pgflibraryarrows.code.tex -File: pgflibraryarrows.code.tex 2021/05/15 v3.1.9a (3.1.9a) -\arrowsize=\dimen335 -)) -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryfi -t.code.tex -File: tikzlibraryfit.code.tex 2021/05/15 v3.1.9a (3.1.9a) -) -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryma -th.code.tex -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibraryfp -u.code.tex) -\tikz@math@for@depth=\count363 -\tikz@math@dimen=\dimen336 -\tikz@math@toks=\toks60 -) -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibrarypa -tterns.code.tex -File: tikzlibrarypatterns.code.tex 2021/05/15 v3.1.9a (3.1.9a) - -(D:\Programme\Miktex\tex/generic/pgf/libraries\pgflibrarypatterns.code.tex -File: pgflibrarypatterns.code.tex 2021/05/15 v3.1.9a (3.1.9a) -)) -(D:\Programme\Miktex\tex/latex/pgf/frontendlayer/libraries\tikzlibraryexternal. -code.tex -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzexternals -hared.code.tex)) -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries/datavisualiza -tion\tikzlibrarydatavisualization.code.tex -File: tikzlibrarydatavisualization.code.tex 2021/05/15 v3.1.9a (3.1.9a) - -(D:\Programme\Miktex\tex/generic/pgf/modules\pgfmoduledatavisualization.code.te -x -File: pgfmoduledatavisualization.code.tex 2021/05/15 v3.1.9a (3.1.9a) - (D:\Programme\Miktex\tex/generic/pgf/modules\pgfmoduleoo.code.tex -\pgfoo@objectcount=\count364 -\pgfoothis@count=\count365 -\pgfoo@toks=\toks61 -) -\pgf@lib@dv@cache@count=\count366 -\pgf@lib@dv@cache@count=\count367 -) -\tikzdvvisualizercounter=\count368 -) -(D:\Programme\Miktex\tex/latex/circuitikz\circuitikz.sty -Package: circuitikz 2022/05/08{} The CircuiTikz circuit drawing package version - 1.5.2 - -(D:\Programme\Miktex\tex/generic/pgf/frontendlayer/tikz/libraries\tikzlibrarybe -nding.code.tex -File: tikzlibrarybending.code.tex 2021/05/15 v3.1.9a (3.1.9a) - -(D:\Programme\Miktex\tex/generic/pgf/modules\pgfmodulebending.code.tex -File: pgfmodulebending.code.tex 2021/05/15 v3.1.9a (3.1.9a) - -(D:\Programme\Miktex\tex/generic/pgf/modules\pgfmodulenonlineartransformations. -code.tex -File: pgfmodulenonlineartransformations.code.tex 2021/05/15 v3.1.9a (3.1.9a) -\pgftransformnonlinearflatness=\dimen337 -) -(D:\Programme\Miktex\tex/generic/pgf/libraries\pgflibrarycurvilinear.code.tex -File: pgflibrarycurvilinear.code.tex 2021/05/15 v3.1.9a (3.1.9a) -\pgf@curvilinear@time@a=\dimen338 -\pgf@curvilinear@length@a=\dimen339 -\pgf@curvilinear@length@b=\dimen340 -\pgf@curvilinear@length@c=\dimen341 -\pgf@curvilinear@length@d=\dimen342 -) -\pgf@arrows@the@rigidity=\dimen343 -)) (D:\Programme\Miktex\tex/generic/circuitikz\pgfcirc.defines.tex -\pgf@circ@count@a=\count369 -\pgf@circ@count@b=\count370 -\pgf@circ@count@c=\count371 -\pgf@circ@res@up=\dimen344 -\pgf@circ@res@down=\dimen345 -\pgf@circ@res@zero=\dimen346 -\pgf@circ@res@left=\dimen347 -\pgf@circ@res@right=\dimen348 -\pgf@circ@res@other=\dimen349 -\pgf@circ@res@step=\dimen350 -\pgf@circ@res@temp=\dimen351 -\pgf@circ@Rlen=\dimen352 -\pgf@circ@scaled@Rlen=\dimen353 -\pgfstartlinewidth=\dimen354 -) -(D:\Programme\Miktex\tex/generic/circuitikz\pgfcircutils.tex -\ctikz@scratchbox=\box93 -) -(D:\Programme\Miktex\tex/generic/circuitikz\pgfcircpath.tex) -(D:\Programme\Miktex\tex/generic/circuitikz\pgfcircshapes.tex) -(D:\Programme\Miktex\tex/generic/circuitikz\pgfcircmonopoles.tex) -(D:\Programme\Miktex\tex/generic/circuitikz\pgfcircbipoles.tex) -(D:\Programme\Miktex\tex/generic/circuitikz\pgfcirctripoles.tex -\pgf@circ@res@count=\count372 -) -(D:\Programme\Miktex\tex/generic/circuitikz\pgfcircquadpoles.tex) -(D:\Programme\Miktex\tex/generic/circuitikz\pgfcircmultipoles.tex) -(D:\Programme\Miktex\tex/generic/circuitikz\pgfcirclabel.tex) -(D:\Programme\Miktex\tex/generic/circuitikz\pgfcircvoltage.tex -\pgfcirc@labelshift=\dimen355 -) -(D:\Programme\Miktex\tex/generic/circuitikz\pgfcirccurrent.tex) -(D:\Programme\Miktex\tex/generic/circuitikz\pgfcircflow.tex) -(D:\Programme\Miktex\tex/latex/xstring\xstring.sty -(D:\Programme\Miktex\tex/generic/xstring\xstring.tex -\integerpart=\count373 -\decimalpart=\count374 -) -Package: xstring 2021/07/21 v1.84 String manipulations (CT) -) -(D:\Programme\Miktex\tex/latex/siunitx\siunitx.sty -Package: siunitx 2022-05-03 v3.1.1 A comprehensive (SI) units package -\l__siunitx_angle_tmp_dim=\dimen356 -\l__siunitx_angle_marker_box=\box94 -\l__siunitx_angle_unit_box=\box95 -\l__siunitx_compound_count_int=\count375 - -(D:\Programme\Miktex\tex/latex/translations\translations.sty -Package: translations 2022/02/05 v1.12 internationalization of LaTeX2e packages - (CN) -) -\l__siunitx_number_exponent_fixed_int=\count376 -\l__siunitx_number_min_decimal_int=\count377 -\l__siunitx_number_min_integer_int=\count378 -\l__siunitx_number_round_precision_int=\count379 -\l__siunitx_number_group_first_int=\count380 -\l__siunitx_number_group_size_int=\count381 -\l__siunitx_number_group_minimum_int=\count382 -\l__siunitx_table_tmp_box=\box96 -\l__siunitx_table_tmp_dim=\dimen357 -\l__siunitx_table_column_width_dim=\dimen358 -\l__siunitx_table_integer_box=\box97 -\l__siunitx_table_decimal_box=\box98 -\l__siunitx_table_before_box=\box99 -\l__siunitx_table_after_box=\box100 -\l__siunitx_table_before_dim=\dimen359 -\l__siunitx_table_carry_dim=\dimen360 -\l__siunitx_unit_tmp_int=\count383 -\l__siunitx_unit_position_int=\count384 -\l__siunitx_unit_total_int=\count385 - -(D:\Programme\Miktex\tex/latex/l3packages/l3keys2e\l3keys2e.sty -(D:\Programme\Miktex\tex/latex/l3kernel\expl3.sty -Package: expl3 2022-02-24 L3 programming layer (loader) - -(D:\Programme\Miktex\tex/latex/l3backend\l3backend-pdftex.def -File: l3backend-pdftex.def 2022-02-07 L3 backend support: PDF output (pdfTeX) -\l__color_backend_stack_int=\count386 -\l__pdf_internal_box=\box101 -)) -Package: l3keys2e 2022-01-12 LaTeX2e option processing using LaTeX3 keys -))) -(D:\Programme\Miktex\tex/latex/tools\tabularx.sty -Package: tabularx 2020/01/15 v2.11c `tabularx' package (DPC) -\TX@col@width=\dimen361 -\TX@old@table=\dimen362 -\TX@old@col=\dimen363 -\TX@target=\dimen364 -\TX@delta=\dimen365 -\TX@cols=\count387 -\TX@ftn=\toks62 -) -(D:\Programme\Miktex\tex/latex/algorithmicx\algpseudocode.sty -Package: algpseudocode - -(D:\Programme\Miktex\tex/latex/algorithmicx\algorithmicx.sty -Package: algorithmicx 2005/04/27 v1.2 Algorithmicx - -Document Style algorithmicx 1.2 - a greatly improved `algorithmic' style -\c@ALG@line=\count388 -\c@ALG@rem=\count389 -\c@ALG@nested=\count390 -\ALG@tlm=\skip82 -\ALG@thistlm=\skip83 -\c@ALG@Lnr=\count391 -\c@ALG@blocknr=\count392 -\c@ALG@storecount=\count393 -\c@ALG@tmpcounter=\count394 -\ALG@tmplength=\skip84 -) -Document Style - pseudocode environments for use with the `algorithmicx' style -) (D:\Programme\Miktex\tex/latex/algorithms\algorithm.sty -Package: algorithm 2009/08/24 v0.1 Document Style `algorithm' - floating enviro -nment - -(D:\Programme\Miktex\tex/latex/float\float.sty -Package: float 2001/11/08 v1.3d Float enhancements (AL) -\c@float@type=\count395 -\float@exts=\toks63 -\float@box=\box102 -\@float@everytoks=\toks64 -\@floatcapt=\box103 -) -\@float@every@algorithm=\toks65 -\c@algorithm=\count396 -) -(D:\Programme\Miktex\tex/latex/was\gensymb.sty -Package: gensymb 2003/07/02 v1.0 (WaS) -) -(D:\Programme\Miktex\tex/latex/mathtools\mathtools.sty -Package: mathtools 2022/02/07 v1.28a mathematical typesetting tools - -(D:\Programme\Miktex\tex/latex/tools\calc.sty -Package: calc 2017/05/25 v4.3 Infix arithmetic (KKT,FJ) -\calc@Acount=\count397 -\calc@Bcount=\count398 -\calc@Adimen=\dimen366 -\calc@Bdimen=\dimen367 -\calc@Askip=\skip85 -\calc@Bskip=\skip86 -LaTeX Info: Redefining \setlength on input line 80. -LaTeX Info: Redefining \addtolength on input line 81. -\calc@Ccount=\count399 -\calc@Cskip=\skip87 -) -(D:\Programme\Miktex\tex/latex/mathtools\mhsetup.sty -Package: mhsetup 2021/03/18 v1.4 programming setup (MH) -) -\g_MT_multlinerow_int=\count400 -\l_MT_multwidth_dim=\dimen368 -\origjot=\skip88 -\l_MT_shortvdotswithinadjustabove_dim=\dimen369 -\l_MT_shortvdotswithinadjustbelow_dim=\dimen370 -\l_MT_above_intertext_sep=\dimen371 -\l_MT_below_intertext_sep=\dimen372 -\l_MT_above_shortintertext_sep=\dimen373 -\l_MT_below_shortintertext_sep=\dimen374 -\xmathstrut@box=\box104 -\xmathstrut@dim=\dimen375 -) -(D:\Programme\Miktex\tex/latex/tcolorbox\tcolorbox.sty -Package: tcolorbox 2022/01/07 version 5.0.2 text color boxes -\tcb@titlebox=\box105 -\tcb@upperbox=\box106 -\tcb@lowerbox=\box107 -\tcb@phantombox=\box108 -\c@tcbbreakpart=\count401 -\c@tcblayer=\count402 -\c@tcolorbox@number=\count403 -\tcb@temp=\box109 -\tcb@temp=\box110 -\tcb@temp=\box111 -\tcb@temp=\box112 - -(D:\Programme\Miktex\tex/latex/tcolorbox\tcbraster.code.tex -Library (tcolorbox): 'tcbraster.code.tex' version '5.0.2' -\c@tcbrastercolumn=\count404 -\c@tcbrasterrow=\count405 -\c@tcbrasternum=\count406 -\c@tcbraster=\count407 -) (D:\Programme\Miktex\tex/latex/tcolorbox\tcbskins.code.tex -Library (tcolorbox): 'tcbskins.code.tex' version '5.0.2' -\tcb@waterbox=\box113 -(D:\Programme\Miktex\tex/latex/tcolorbox\tcbskinsjigsaw.code.tex -Library (tcolorbox): 'tcbskinsjigsaw.code.tex' version '5.0.2' -)) (D:\Programme\Miktex\tex/latex/tcolorbox\tcbbreakable.code.tex -Library (tcolorbox): 'tcbbreakable.code.tex' version '5.0.2' -(D:\Programme\Miktex\tex/generic/oberdiek\pdfcol.sty -Package: pdfcol 2019/12/29 v1.6 Handle new color stacks for pdfTeX (HO) -) -Package pdfcol Info: New color stack `tcb@breakable' = 1 on input line 23. -\tcb@testbox=\box114 -\tcb@totalupperbox=\box115 -\tcb@totallowerbox=\box116 -) -(D:\Programme\Miktex\tex/latex/tcolorbox\tcbhooks.code.tex -Library (tcolorbox): 'tcbhooks.code.tex' version '5.0.2' -) (D:\Programme\Miktex\tex/latex/tcolorbox\tcbtheorems.code.tex -Library (tcolorbox): 'tcbtheorems.code.tex' version '5.0.2' -) (D:\Programme\Miktex\tex/latex/tcolorbox\tcbfitting.code.tex -Library (tcolorbox): 'tcbfitting.code.tex' version '5.0.2' -\tcbfitdim=\dimen376 -\tcb@lowerfitdim=\dimen377 -\tcb@upperfitdim=\dimen378 -\tcb@cur@hbadness=\count408 -) (D:\Programme\Miktex\tex/latex/tcolorbox\tcbxparse.code.tex -Library (tcolorbox): 'tcbxparse.code.tex' version '5.0.2' -(D:\Programme\Miktex\tex/latex/l3packages/xparse\xparse.sty -Package: xparse 2022-01-12 L3 Experimental document command parser -))) -(D:\Programme\Miktex\tex/latex/incgraph\incgraph.sty -Package: incgraph 2021/10/20 version 1.2.0 LaTeX special graphics inclusion - -(D:\Programme\Miktex\tex/latex/bookmark\bookmark.sty -Package: bookmark 2020-11-06 v1.29 PDF bookmarks (HO) - -(D:\Programme\Miktex\tex/latex/bookmark\bkm-pdftex.def -File: bkm-pdftex.def 2020-11-06 v1.29 bookmark driver for pdfTeX (HO) -\BKM@id=\count409 -)) -\igrbox=\box117 -\igr@length=\dimen379 -\c@igrtarget=\count410 -) (common/lststyles.tex (D:\Programme\Miktex\tex/latex/listings\listings.sty -\lst@mode=\count411 -\lst@gtempboxa=\box118 -\lst@token=\toks66 -\lst@length=\count412 -\lst@currlwidth=\dimen380 -\lst@column=\count413 -\lst@pos=\count414 -\lst@lostspace=\dimen381 -\lst@width=\dimen382 -\lst@newlines=\count415 -\lst@lineno=\count416 -\lst@maxwidth=\dimen383 - -(D:\Programme\Miktex\tex/latex/listings\lstmisc.sty -File: lstmisc.sty 2020/03/24 1.8d (Carsten Heinz) -\c@lstnumber=\count417 -\lst@skipnumbers=\count418 -\lst@framebox=\box119 -) -(D:\Programme\Miktex\tex/latex/listings\listings.cfg -File: listings.cfg 2020/03/24 1.8d listings configuration -)) -Package: listings 2020/03/24 1.8d (Carsten Heinz) -) -(D:\Programme\Miktex\tex/latex/caption\caption.sty -Package: caption 2022/03/01 v3.6b Customizing captions (AR) - -(D:\Programme\Miktex\tex/latex/caption\caption3.sty -Package: caption3 2022/03/17 v2.3b caption3 kernel (AR) -\caption@tempdima=\dimen384 -\captionmargin=\dimen385 -\caption@leftmargin=\dimen386 -\caption@rightmargin=\dimen387 -\caption@width=\dimen388 -\caption@indent=\dimen389 -\caption@parindent=\dimen390 -\caption@hangindent=\dimen391 -Package caption Info: Standard document class detected. -) -\c@caption@flags=\count419 -\c@continuedfloat=\count420 -Package caption Info: float package is loaded. -Package caption Info: hyperref package is loaded. -Package caption Info: listings package is loaded. -Package caption Info: subfigure package is loaded. -) -(D:\Programme\Miktex\tex/latex/standalone\standalone.sty -Package: standalone 2018/03/26 v1.3a Package to include TeX sub-files with prea -mbles - -(D:\Programme\Miktex\tex/latex/tools\shellesc.sty -Package: shellesc 2019/11/08 v1.0c unified shell escape interface for LaTeX -Package shellesc Info: Restricted shell escape enabled on input line 77. -) -(D:\Programme\Miktex\tex/latex/xkeyval\xkeyval.sty -Package: xkeyval 2020/11/20 v2.8 package option processing (HA) - -(D:\Programme\Miktex\tex/generic/xkeyval\xkeyval.tex -(D:\Programme\Miktex\tex/generic/xkeyval\xkvutils.tex -\XKV@toks=\toks67 -\XKV@tempa@toks=\toks68 -) -\XKV@depth=\count421 -File: xkeyval.tex 2014/12/03 v2.7a key=value parser (HA) -)) -(D:\Programme\Miktex\tex/latex/currfile\currfile.sty -Package: currfile 2020/09/29 v0.7d Provides the file path elements of the curre -nt input file - -(D:\Programme\Miktex\tex/latex/filehook\filehook.sty -Package: filehook 2020/09/29 v0.8a Hooks for input files - -(D:\Programme\Miktex\tex/latex/filehook\filehook-2020.sty -Package: filehook-2020 2020/09/29 v0.8a Hooks for input files -)) -\c@currfiledepth=\count422 -) -(D:\Programme\Miktex\tex/latex/gincltex\gincltex.sty -(D:\Programme\Miktex\tex/latex/svn-prov\svn-prov.sty -Package: svn-prov 2010/04/24 v3.1862 Package Date/Version from SVN Keywords -) -Package: gincltex 2011/09/04 v0.3 Include external LaTeX files like graphics - -(D:\Programme\Miktex\tex/latex/adjustbox\adjustbox.sty -Package: adjustbox 2020/08/19 v1.3 Adjusting TeX boxes (trim, clip, ...) - -(D:\Programme\Miktex\tex/latex/adjustbox\adjcalc.sty -Package: adjcalc 2012/05/16 v1.1 Provides advanced setlength with multiple back --ends (calc, etex, pgfmath) -) -(D:\Programme\Miktex\tex/latex/adjustbox\trimclip.sty -Package: trimclip 2020/08/19 v1.2 Trim and clip general TeX material - -(D:\Programme\Miktex\tex/latex/collectbox\collectbox.sty -Package: collectbox 2012/05/17 v0.4b Collect macro arguments as boxes -\collectedbox=\box120 -) -\tc@llx=\dimen392 -\tc@lly=\dimen393 -\tc@urx=\dimen394 -\tc@ury=\dimen395 -Package trimclip Info: Using driver 'tc-pdftex.def'. - -(D:\Programme\Miktex\tex/latex/adjustbox\tc-pdftex.def -File: tc-pdftex.def 2019/01/04 v2.2 Clipping driver for pdftex -)) -\adjbox@Width=\dimen396 -\adjbox@Height=\dimen397 -\adjbox@Depth=\dimen398 -\adjbox@Totalheight=\dimen399 -\adjbox@pwidth=\dimen400 -\adjbox@pheight=\dimen401 -\adjbox@pdepth=\dimen402 -\adjbox@ptotalheight=\dimen403 - -(D:\Programme\Miktex\tex/latex/ifoddpage\ifoddpage.sty -Package: ifoddpage 2016/04/23 v1.1 Conditionals for odd/even page detection -\c@checkoddpage=\count423 -) -(D:\Programme\Miktex\tex/latex/varwidth\varwidth.sty -Package: varwidth 2009/03/30 ver 0.92; Variable-width minipages -\@vwid@box=\box121 -\sift@deathcycles=\count424 -\@vwid@loff=\dimen404 -\@vwid@roff=\dimen405 -)) -\gincltex@box=\box122 -) -(D:\Programme\Miktex\tex/latex/filemod\filemod-expmin.sty -Package: filemod-expmin 2011/09/19 v1.2 Get and compare file modification times - (expandable; minimal) -)) -(D:\Programme\Miktex\tex/latex/biblatex\biblatex.sty -Package: biblatex 2022/02/02 v3.17 programmable bibliographies (PK/MW) - -(D:\Programme\Miktex\tex/latex/logreq\logreq.sty -Package: logreq 2010/08/04 v1.0 xml request logger -\lrq@indent=\count425 - -(D:\Programme\Miktex\tex/latex/logreq\logreq.def -File: logreq.def 2010/08/04 v1.0 logreq spec v1.0 -)) -\c@tabx@nest=\count426 -\c@listtotal=\count427 -\c@listcount=\count428 -\c@liststart=\count429 -\c@liststop=\count430 -\c@citecount=\count431 -\c@citetotal=\count432 -\c@multicitecount=\count433 -\c@multicitetotal=\count434 -\c@instcount=\count435 -\c@maxnames=\count436 -\c@minnames=\count437 -\c@maxitems=\count438 -\c@minitems=\count439 -\c@citecounter=\count440 -\c@maxcitecounter=\count441 -\c@savedcitecounter=\count442 -\c@uniquelist=\count443 -\c@uniquename=\count444 -\c@refsection=\count445 -\c@refsegment=\count446 -\c@maxextratitle=\count447 -\c@maxextratitleyear=\count448 -\c@maxextraname=\count449 -\c@maxextradate=\count450 -\c@maxextraalpha=\count451 -\c@abbrvpenalty=\count452 -\c@highnamepenalty=\count453 -\c@lownamepenalty=\count454 -\c@maxparens=\count455 -\c@parenlevel=\count456 -\blx@tempcnta=\count457 -\blx@tempcntb=\count458 -\blx@tempcntc=\count459 -\c@blx@maxsection=\count460 -\c@blx@maxsegment@0=\count461 -\blx@notetype=\count462 -\blx@parenlevel@text=\count463 -\blx@parenlevel@foot=\count464 -\c@blx@sectionciteorder@0=\count465 -\blx@entrysetcounter=\count466 -\blx@biblioinstance=\count467 -\labelnumberwidth=\skip89 -\labelalphawidth=\skip90 -\biblabelsep=\skip91 -\bibitemsep=\skip92 -\bibnamesep=\skip93 -\bibinitsep=\skip94 -\bibparsep=\skip95 -\bibhang=\skip96 -\blx@bcfin=\read7 -\blx@bcfout=\write5 -\blx@langwohyphens=\language80 -\c@mincomprange=\count468 -\c@maxcomprange=\count469 -\c@mincompwidth=\count470 -Package biblatex Info: Trying to load biblatex default data model... -Package biblatex Info: ... file 'blx-dm.def' found. - -(D:\Programme\Miktex\tex/latex/biblatex\blx-dm.def -File: blx-dm.def 2022/02/02 v3.17 biblatex localization (PK/MW) -) -Package biblatex Info: Trying to load biblatex custom data model... -Package biblatex Info: ... file 'biblatex-dm.cfg' not found. -\c@afterword=\count471 -\c@savedafterword=\count472 -\c@annotator=\count473 -\c@savedannotator=\count474 -\c@author=\count475 -\c@savedauthor=\count476 -\c@bookauthor=\count477 -\c@savedbookauthor=\count478 -\c@commentator=\count479 -\c@savedcommentator=\count480 -\c@editor=\count481 -\c@savededitor=\count482 -\c@editora=\count483 -\c@savededitora=\count484 -\c@editorb=\count485 -\c@savededitorb=\count486 -\c@editorc=\count487 -\c@savededitorc=\count488 -\c@foreword=\count489 -\c@savedforeword=\count490 -\c@holder=\count491 -\c@savedholder=\count492 -\c@introduction=\count493 -\c@savedintroduction=\count494 -\c@namea=\count495 -\c@savednamea=\count496 -\c@nameb=\count497 -\c@savednameb=\count498 -\c@namec=\count499 -\c@savednamec=\count500 -\c@translator=\count501 -\c@savedtranslator=\count502 -\c@shortauthor=\count503 -\c@savedshortauthor=\count504 -\c@shorteditor=\count505 -\c@savedshorteditor=\count506 -\c@labelname=\count507 -\c@savedlabelname=\count508 -\c@institution=\count509 -\c@savedinstitution=\count510 -\c@lista=\count511 -\c@savedlista=\count512 -\c@listb=\count513 -\c@savedlistb=\count514 -\c@listc=\count515 -\c@savedlistc=\count516 -\c@listd=\count517 -\c@savedlistd=\count518 -\c@liste=\count519 -\c@savedliste=\count520 -\c@listf=\count521 -\c@savedlistf=\count522 -\c@location=\count523 -\c@savedlocation=\count524 -\c@organization=\count525 -\c@savedorganization=\count526 -\c@origlocation=\count527 -\c@savedoriglocation=\count528 -\c@origpublisher=\count529 -\c@savedorigpublisher=\count530 -\c@publisher=\count531 -\c@savedpublisher=\count532 -\c@language=\count533 -\c@savedlanguage=\count534 -\c@origlanguage=\count535 -\c@savedoriglanguage=\count536 -\c@pageref=\count537 -\c@savedpageref=\count538 -\shorthandwidth=\skip97 -\shortjournalwidth=\skip98 -\shortserieswidth=\skip99 -\shorttitlewidth=\skip100 -\shortauthorwidth=\skip101 -\shorteditorwidth=\skip102 -\locallabelnumberwidth=\skip103 -\locallabelalphawidth=\skip104 -\localshorthandwidth=\skip105 -\localshortjournalwidth=\skip106 -\localshortserieswidth=\skip107 -\localshorttitlewidth=\skip108 -\localshortauthorwidth=\skip109 -\localshorteditorwidth=\skip110 -Package biblatex Info: Trying to load compatibility code... -Package biblatex Info: ... file 'blx-compat.def' found. - -(D:\Programme\Miktex\tex/latex/biblatex\blx-compat.def -File: blx-compat.def 2022/02/02 v3.17 biblatex compatibility (PK/MW) -) -Package biblatex Info: Trying to load BibTeX backend compatibility... -Package biblatex Info: ... file 'blx-bibtex.def' found. - -(D:\Programme\Miktex\tex/latex/biblatex\blx-bibtex.def -File: blx-bibtex.def 2022/02/02 v3.17 biblatex compatibility (PK/MW) - - -Package biblatex Warning: Using fall-back BibTeX(8) backend: -(biblatex) functionality may be reduced/unavailable. - -) -Package biblatex Info: Trying to load generic definitions... -Package biblatex Info: ... file 'biblatex.def' found. - (D:\Programme\Miktex\tex/latex/biblatex\biblatex.def -File: biblatex.def 2022/02/02 v3.17 biblatex compatibility (PK/MW) -\c@textcitecount=\count539 -\c@textcitetotal=\count540 -\c@textcitemaxnames=\count541 -\c@biburlbigbreakpenalty=\count542 -\c@biburlbreakpenalty=\count543 -\c@biburlnumpenalty=\count544 -\c@biburlucpenalty=\count545 -\c@biburllcpenalty=\count546 -\biburlbigskip=\muskip18 -\biburlnumskip=\muskip19 -\biburlucskip=\muskip20 -\biburllcskip=\muskip21 -\c@smartand=\count547 -) -Package biblatex Info: Trying to load bibliography style 'numeric'... -Package biblatex Info: ... file 'numeric.bbx' found. - -(D:\Programme\Miktex\tex/latex/biblatex/bbx\numeric.bbx -File: numeric.bbx 2022/02/02 v3.17 biblatex bibliography style (PK/MW) -Package biblatex Info: Trying to load bibliography style 'standard'... -Package biblatex Info: ... file 'standard.bbx' found. - -(D:\Programme\Miktex\tex/latex/biblatex/bbx\standard.bbx -File: standard.bbx 2022/02/02 v3.17 biblatex bibliography style (PK/MW) -\c@bbx:relatedcount=\count548 -\c@bbx:relatedtotal=\count549 -)) -Package biblatex Info: Trying to load citation style 'numeric'... -Package biblatex Info: ... file 'numeric.cbx' found. - -(D:\Programme\Miktex\tex/latex/biblatex/cbx\numeric.cbx -File: numeric.cbx 2022/02/02 v3.17 biblatex citation style (PK/MW) -Package biblatex Info: Redefining '\cite'. -Package biblatex Info: Redefining '\parencite'. -Package biblatex Info: Redefining '\footcite'. -Package biblatex Info: Redefining '\footcitetext'. -Package biblatex Info: Redefining '\smartcite'. -Package biblatex Info: Redefining '\supercite'. -Package biblatex Info: Redefining '\textcite'. -Package biblatex Info: Redefining '\textcites'. -Package biblatex Info: Redefining '\cites'. -Package biblatex Info: Redefining '\parencites'. -Package biblatex Info: Redefining '\smartcites'. -) -Package biblatex Info: Trying to load configuration file... -Package biblatex Info: ... file 'biblatex.cfg' found. - -(D:\Programme\Miktex\tex/latex/biblatex\biblatex.cfg -File: biblatex.cfg -) -Package biblatex Info: Input encoding 'utf8' detected. -Package biblatex Info: Document encoding is UTF8 .... -Package biblatex Info: ... and expl3 -(biblatex) 2022-02-24 L3 programming layer (loader) -(biblatex) is new enough (at least 2020/04/06), -(biblatex) setting 'casechanger=expl3'. - -(D:\Programme\Miktex\tex/latex/biblatex\blx-case-expl3.sty -Package: blx-case-expl3 2022/02/02 v3.17 expl3 case changing code for biblatex -))) -(papers/common/addpackages.tex (papers/000template/packages.tex) -(papers/lambertw/packages.tex) (papers/fm/packages.tex) -(papers/parzyl/packages.tex) (papers/fresnel/packages.tex) -(papers/kreismembran/packages.tex) (papers/sturmliouville/packages.tex) -(papers/laguerre/packages.tex) -(D:\Programme\Miktex\tex/latex/derivative\derivative.sty -Package: derivative 2021/06/03 v1.1 Nice and easy derivatives and differentials - for LaTeX -\l__deriv_vmo_int=\count550 -\l__deriv_tmpa_int=\count551 -\l__deriv_tmpb_int=\count552 -\l__deriv_numerical_int=\count553 -\l__deriv_sort_counter_int=\count554 -\l__deriv_sort_max_int=\count555 -\l__deriv_position_int=\count556 -\l__deriv_rebuild_int=\count557 -) -(papers/zeta/packages.tex) (papers/0f1/packages.tex) (papers/nav/packages.tex) -(papers/transfer/packages.tex) (papers/kra/packages.tex) -(papers/kugel/packages.tex) (papers/hermite/packages.tex) -(papers/ellfilter/packages.tex) (papers/dreieck/packages.tex)) -(papers/common/addbibresources.tex) -\@indexfile=\write6 -\openout6 = `buch.idx'. - - -Writing index file buch.idx -LaTeX Font Info: Trying to load font information for T1+txr on input line 35 -. -(D:\Programme\Miktex\tex/latex/txfonts\t1txr.fd -File: t1txr.fd 2000/12/15 v3.1 -) (buch.aux) -\openout1 = `buch.aux'. - -LaTeX Font Info: Checking defaults for OML/txmi/m/it on input line 35. -LaTeX Font Info: Trying to load font information for OML+txmi on input line -35. - -(D:\Programme\Miktex\tex/latex/txfonts\omltxmi.fd -File: omltxmi.fd 2000/12/15 v3.1 -) -LaTeX Font Info: ... okay on input line 35. -LaTeX Font Info: Checking defaults for OMS/txsy/m/n on input line 35. -LaTeX Font Info: Trying to load font information for OMS+txsy on input line -35. - -(D:\Programme\Miktex\tex/latex/txfonts\omstxsy.fd -File: omstxsy.fd 2000/12/15 v3.1 -) -LaTeX Font Info: ... okay on input line 35. -LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 35. -LaTeX Font Info: ... okay on input line 35. -LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 35. -LaTeX Font Info: ... okay on input line 35. -LaTeX Font Info: Checking defaults for TS1/cmr/m/n on input line 35. -LaTeX Font Info: ... okay on input line 35. -LaTeX Font Info: Checking defaults for OMX/txex/m/n on input line 35. -LaTeX Font Info: Trying to load font information for OMX+txex on input line -35. - -(D:\Programme\Miktex\tex/latex/txfonts\omxtxex.fd -File: omxtxex.fd 2000/12/15 v3.1 -) -LaTeX Font Info: ... okay on input line 35. -LaTeX Font Info: Checking defaults for U/txexa/m/n on input line 35. -LaTeX Font Info: Trying to load font information for U+txexa on input line 3 -5. - -(D:\Programme\Miktex\tex/latex/txfonts\utxexa.fd -File: utxexa.fd 2000/12/15 v3.1 -) -LaTeX Font Info: ... okay on input line 35. -LaTeX Font Info: Checking defaults for PD1/pdf/m/n on input line 35. -LaTeX Font Info: ... okay on input line 35. -LaTeX Font Info: Checking defaults for PU/pdf/m/n on input line 35. -LaTeX Font Info: ... okay on input line 35. - -*geometry* driver: auto-detecting -*geometry* detected driver: pdftex -*geometry* verbose mode - [ preamble ] result: -* driver: pdftex -* paper: custom -* layout: -* layoutoffset:(h,v)=(0.0pt,0.0pt) -* bindingoffset: 28.45274pt -* modes: twoside -* h-part:(L,W,R)=(22.7622pt, 398.33858pt, 34.14331pt) -* v-part:(T,H,B)=(59.75078pt, 569.05511pt, 54.06024pt) -* \paperwidth=483.69684pt -* \paperheight=682.86613pt -* \textwidth=398.33858pt -* \textheight=569.05511pt -* \oddsidemargin=-21.05504pt -* \evensidemargin=-38.12668pt -* \topmargin=-42.5867pt -* \headheight=15.0pt -* \headsep=18.06749pt -* \topskip=10.0pt -* \footskip=25.29494pt -* \marginparwidth=125.0pt -* \marginparsep=7.0pt -* \columnsep=10.0pt -* \skip\footins=9.0pt plus 4.0pt minus 2.0pt -* \hoffset=0.0pt -* \voffset=0.0pt -* \mag=1000 -* \@twocolumnfalse -* \@twosidetrue -* \@mparswitchtrue -* \@reversemarginfalse -* (1in=72.27pt=25.4mm, 1cm=28.453pt) - -(D:\Programme\Miktex\tex/context/base/mkii\supp-pdf.mkii -[Loading MPS to PDF converter (version 2006.09.02).] -\scratchcounter=\count558 -\scratchdimen=\dimen406 -\scratchbox=\box123 -\nofMPsegments=\count559 -\nofMParguments=\count560 -\everyMPshowfont=\toks69 -\MPscratchCnt=\count561 -\MPscratchDim=\dimen407 -\MPnumerator=\count562 -\makeMPintoPDFobject=\count563 -\everyMPtoPDFconversion=\toks70 -) (D:\Programme\Miktex\tex/latex/epstopdf-pkg\epstopdf-base.sty -Package: epstopdf-base 2020-01-24 v2.11 Base part for package epstopdf -Package epstopdf-base Info: Redefining graphics rule for `.eps' on input line 4 -85. - -(D:\Programme\Miktex\tex/latex/00miktex\epstopdf-sys.cfg -File: epstopdf-sys.cfg 2021/03/18 v2.0 Configuration of epstopdf for MiKTeX -)) -Package hyperref Info: Link coloring OFF on input line 35. - -(D:\Programme\Miktex\tex/latex/hyperref\nameref.sty -Package: nameref 2021-04-02 v2.47 Cross-referencing by name of section - -(D:\Programme\Miktex\tex/latex/refcount\refcount.sty -Package: refcount 2019/12/15 v3.6 Data extraction from label references (HO) -) -(D:\Programme\Miktex\tex/generic/gettitlestring\gettitlestring.sty -Package: gettitlestring 2019/12/15 v1.6 Cleanup title references (HO) -) -\c@section@level=\count564 -) -LaTeX Info: Redefining \ref on input line 35. -LaTeX Info: Redefining \pageref on input line 35. -LaTeX Info: Redefining \nameref on input line 35. - - -Package pgfplots Warning: running in backwards compatibility mode (unsuitable t -ick labels; missing features). Consider writing \pgfplotsset{compat=1.18} into -your preamble. - on input line 35. - -LaTeX Font Info: Trying to load font information for OT1+txr on input line 3 -5. -(D:\Programme\Miktex\tex/latex/txfonts\ot1txr.fd -File: ot1txr.fd 2000/12/15 v3.1 -) -LaTeX Font Info: Trying to load font information for U+txsya on input line 3 -5. - -(D:\Programme\Miktex\tex/latex/txfonts\utxsya.fd -File: utxsya.fd 2000/12/15 v3.1 -) -LaTeX Font Info: Trying to load font information for U+txsyb on input line 3 -5. - -(D:\Programme\Miktex\tex/latex/txfonts\utxsyb.fd -File: utxsyb.fd 2000/12/15 v3.1 -) -LaTeX Font Info: Trying to load font information for U+txmia on input line 3 -5. - -(D:\Programme\Miktex\tex/latex/txfonts\utxmia.fd -File: utxmia.fd 2000/12/15 v3.1 -) -LaTeX Font Info: Trying to load font information for U+txsyc on input line 3 -5. - -(D:\Programme\Miktex\tex/latex/txfonts\utxsyc.fd -File: utxsyc.fd 2000/12/15 v3.1 -) -LaTeX Font Info: Trying to load font information for U+rsfs on input line 35 -. - -(D:\Programme\Miktex\tex/latex/jknappen\ursfs.fd -File: ursfs.fd 1998/03/24 rsfs font definition file (jk) -) -LaTeX Font Info: Trying to load font information for U+wasy on input line 35 -. - -(D:\Programme\Miktex\tex/latex/wasysym\uwasy.fd -File: uwasy.fd 2020/01/19 v2.4 Wasy-2 symbol font definitions -) -Package xypdf Info: Line width: 0.56pt on input line 35. - -(D:\Programme\Miktex\tex/latex/translations/dicts\translations-basic-dictionary --german.trsl -File: translations-basic-dictionary-german.trsl (german translation file `trans -lations-basic-dictionary') -) -Package translations Info: loading dictionary `translations-basic-dictionary' f -or `german'. on input line 35. - -(D:\Programme\Miktex\tex/latex/translations/dicts\translations-basic-dictionary --english.trsl -File: translations-basic-dictionary-english.trsl (english translation file `tra -nslations-basic-dictionary') -) -Package translations Info: loading dictionary `translations-basic-dictionary' f -or `english'. on input line 35. -\symgns@font=\mathgroup12 -LaTeX Font Info: Overwriting symbol font `gns@font' in version `bold' -(Font) TS1/txr/m/n --> TS1/txr/b/n on input line 35. -Package gensymb Info: Math companion symbols declared on input line 35. -LaTeX Info: Redefining \degree on input line 35. -LaTeX Info: Redefining \celsius on input line 35. -Package gensymb Info: Using text companion symbols for \degree, \celsius and \p -erthousand on input line 35. -LaTeX Info: Redefining \ohm on input line 35. -Package gensymb Info: Using \textohm for \ohm on input line 35. -LaTeX Info: Redefining \micro on input line 35. -Package gensymb Info: Using \textmu for \micro on input line 35. -\c@lstlisting=\count565 -Package caption Info: Begin \AtBeginDocument code. -Package caption Info: End \AtBeginDocument code. -Package biblatex Info: Trying to load language 'ngerman'... -Package biblatex Info: ... file 'ngerman.lbx' found. - (D:\Programme\Miktex\tex/latex/biblatex/lbx\ngerman.lbx -File: ngerman.lbx 2022/02/02 v3.17 biblatex localization (PK/MW) -Package biblatex Info: Trying to load language 'german'... -Package biblatex Info: ... file 'german.lbx' found. - -(D:\Programme\Miktex\tex/latex/biblatex/lbx\german.lbx -File: german.lbx 2022/02/02 v3.17 biblatex localization (PK/MW) -) -Package biblatex Info: Trying to load language 'german'... -Package biblatex Info: ... file 'german.lbx' found. - -(D:\Programme\Miktex\tex/latex/biblatex/lbx\german.lbx -File: german.lbx 2022/02/02 v3.17 biblatex localization (PK/MW) - -Runaway definition? --> -! TeX capacity exceeded, sorry [main memory size=3000000]. - \XKV@resb - -l.575 } - -If you really absolutely need more capacity, -you can ask a wizard to enlarge me. - - -Here is how much of TeX's memory you used: - 81845 strings out of 478582 - 2061696 string characters out of 2856069 - 3000001 words of memory out of 3000000 - 98832 multiletter control sequences out of 15000+600000 - 484206 words of font info for 75 fonts, out of 8000000 for 9000 - 1143 hyphenation exceptions out of 8191 - 105i,3n,99p,3369b,2422s stack positions out of 10000i,1000n,20000p,200000b,80000s -! ==> Fatal error occurred, no output PDF file produced! diff --git a/buch/papers/nav/images/dreieck3d5.pdf b/buch/papers/nav/images/dreieck3d5.pdf index 6848331..0c86d36 100644 Binary files a/buch/papers/nav/images/dreieck3d5.pdf and b/buch/papers/nav/images/dreieck3d5.pdf differ -- cgit v1.2.1 From 93bdfca3b41397e43537ee334e57883a9ef79279 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Wed, 18 May 2022 14:30:12 +0200 Subject: fix nav/makefile.inc --- buch/papers/nav/Makefile.inc | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/buch/papers/nav/Makefile.inc b/buch/papers/nav/Makefile.inc index b30377e..24ab4ee 100644 --- a/buch/papers/nav/Makefile.inc +++ b/buch/papers/nav/Makefile.inc @@ -6,9 +6,11 @@ dependencies-nav = \ papers/nav/packages.tex \ papers/nav/main.tex \ - papers/nav/references.bib \ - papers/nav/teil0.tex \ - papers/nav/teil1.tex \ - papers/nav/teil2.tex \ - papers/nav/teil3.tex + papers/nav/einleitung.tex \ + papers/nav/flatearth.tex \ + papers/nav/geschichte.tex \ + papers/nav/nautischesdreieck.tex \ + papers/nav/sincos.tex \ + papers/nav/trigo.tex \ + papers/nav/references.bib -- cgit v1.2.1 From 88cc6d9775114c70d8723a52a869179ce806d2f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Wed, 18 May 2022 14:43:23 +0200 Subject: fix paper offset --- buch/splitpapers | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buch/splitpapers b/buch/splitpapers index 9ae5aae..e1b6834 100755 --- a/buch/splitpapers +++ b/buch/splitpapers @@ -16,7 +16,7 @@ then fi awk 'BEGIN { - offsetpage = 10 + offsetpage = 12 startpage = 0 identifier = "" chapterno = 0 -- cgit v1.2.1 From b37f9519bbfd57b3a7d25cca887ff44ff2253921 Mon Sep 17 00:00:00 2001 From: "ENEZ-PC\\erdem" Date: Thu, 19 May 2022 14:40:25 +0200 Subject: Korrektur von Feedback --- buch/papers/nav/bilder/dreieck.pdf | Bin 0 -> 107370 bytes buch/papers/nav/bilder/ephe.png | Bin 0 -> 184799 bytes buch/papers/nav/einleitung.tex | 6 +- buch/papers/nav/flatearth.tex | 12 ++- buch/papers/nav/geschichte.tex | 22 ---- buch/papers/nav/nautischesdreieck.tex | 190 ++++++++++++++++------------------ buch/papers/nav/sincos.tex | 21 ++-- buch/papers/nav/trigo.tex | 57 +++++++--- 8 files changed, 158 insertions(+), 150 deletions(-) create mode 100644 buch/papers/nav/bilder/dreieck.pdf create mode 100644 buch/papers/nav/bilder/ephe.png delete mode 100644 buch/papers/nav/geschichte.tex diff --git a/buch/papers/nav/bilder/dreieck.pdf b/buch/papers/nav/bilder/dreieck.pdf new file mode 100644 index 0000000..9d630aa Binary files /dev/null and b/buch/papers/nav/bilder/dreieck.pdf differ diff --git a/buch/papers/nav/bilder/ephe.png b/buch/papers/nav/bilder/ephe.png new file mode 100644 index 0000000..0aeef6f Binary files /dev/null and b/buch/papers/nav/bilder/ephe.png differ diff --git a/buch/papers/nav/einleitung.tex b/buch/papers/nav/einleitung.tex index e24f294..8d8c5c1 100644 --- a/buch/papers/nav/einleitung.tex +++ b/buch/papers/nav/einleitung.tex @@ -1,9 +1,9 @@ \section{Einleitung} -Heut zu Tage ist die Navigation ein Teil des Lebens. -Man versendet dem Kollegen seinen Standort, um sich das ewige Erklären zu sparen oder gibt die Adresse des Ziels ein um sich die Sucherei zu schenken. +Heutzutage ist die Navigation ein Teil des Lebens. +Man sendet dem Kollegen seinen eigenen Standort, um sich das ewige Erklären zu sparen oder gibt die Adresse des Ziels ein, damit man seinen Aufenthaltsort zum Beispiel auf einer riesigen Wiese am See findet. Dies wird durch Technologien wie Funknavigation, welches ein auf Langzeitmessung beruhendes Hyperbelverfahren mit Langwellen ist oder die verbreitete Satellitennavigation, welche vier Satelliten für eine Messung zur Standortbestimmung nutzt. Vor all diesen technologischen Fortschritten gab es lediglich die Astronavigation, welche heute noch auf kleineren Schiffen benötigt wird im Falle eines Stromausfalls. Aber wie funktioniert die Navigation mit den Sternen? Welche Hilfsmittel benötigt man, welche Rolle spielt die Mathematik und weshalb kann die Erde nicht flach sein? -In diesem Kapitel werden genau diese Fragen mithilfe des Nautischen Dreiecks, der Sphärischen Trigonometrie und einigen Hilfsmitteln und Messgeräten beantwortet. \ No newline at end of file +In diesem Kapitel werden genau diese Fragen mithilfe des nautischen Dreiecks, der sphärischen Trigonometrie und einigen Hilfsmitteln und Messgeräten beantwortet. \ No newline at end of file diff --git a/buch/papers/nav/flatearth.tex b/buch/papers/nav/flatearth.tex index fbabbde..bec242e 100644 --- a/buch/papers/nav/flatearth.tex +++ b/buch/papers/nav/flatearth.tex @@ -2,7 +2,7 @@ \section{Warum ist die Erde nicht flach?} -\begin{figure}[h] +\begin{figure} \begin{center} \includegraphics[width=10cm]{papers/nav/bilder/projektion.png} \caption[Mercator Projektion]{Mercator Projektion} @@ -14,10 +14,14 @@ Die Fotos von unserem Planeten oder die Berichte der Astronauten. Aber schon vor ca. 2300 Jahren hat Aristotoles bemerkt, dass Schiffe im Horizont verschwinden und die einzige Erklärung dafür die Kugelgestalt der Erde ist oder der Erdschatten bei einer Mondfinsternis immer rund ist. Eratosthenes konnte etwa 100 Jahre später den Erdumfang berechnen. Er beobachtete, dass die Sonne in Syene mittags im Zenit steht und gleichzeitig in Alexandria unter einem Winkel einfällt. -Mithilfe der Geometrie konnte er mit dem Abstand der Städte und dem Einfallswinkel den Umfang berechnen. +Mithilfe der Trigonometrie konnte er mit dem Abstand der Städte und dem Einfallswinkel den Umfang berechnen. + Auch in der Navigation würden grobe Fehler passieren, wenn man davon ausgeht, dass die Erde eine Scheibe ist. -Man sieht es zum Beispiel sehr gut, wenn man die Anwendung Google Earth und eine Weltkarte vergleicht. Grönland ist auf der Weltkarte so gross wie Afrika. +Man sieht es zum Beispiel sehr gut, wenn man die Anwendung Google Earth und eine Weltkarte vergleicht. +Grönland ist auf der Weltkarte so gross wie Afrika. In der Anwendung Google Earth jedoch ist Grönland etwa so gross wie Algerien. Das liegt daran, das man die 3D – Weltkarte nicht einfach auslegen kann. -Der Kartograph Gerhard Mercator projizierte die Erdkugel auf ein Papier und erstellte so eine winkeltreue Karte. Jedoch wurden die Länder, die einen grösseren Abstand zum Äquator haben vergrössert, damit die Winkel stimmen können. + +Der Kartograph Gerhard Mercator projizierte die Erdkugel auf ein Papier und erstellte so eine winkeltreue Karte. +Jedoch wurden die Länder, die einen grösseren Abstand zum Äquator haben vergrössert, damit die Winkel stimmen können. Wurde man also nun davon ausgehen, dass die Erde flach ist so würden wir nie dort ankommen wo wir es wollen. \ No newline at end of file diff --git a/buch/papers/nav/geschichte.tex b/buch/papers/nav/geschichte.tex deleted file mode 100644 index a20eb6d..0000000 --- a/buch/papers/nav/geschichte.tex +++ /dev/null @@ -1,22 +0,0 @@ -\documentclass[12pt]{scrartcl} -\usepackage{ucs} -\usepackage[utf8]{inputenc} -\usepackage[T1]{fontenc} -\usepackage{graphicx} - -\begin{document} -\section{Geschichte der sphärischen Navigation} -Die Orientierung mit Hilfe der Sterne und der sphärischen Trigonometrie bewegt die Menschheit schon seit mehreren tausend Jahren. -Nach Hinweisen und Schätzungen von Forscher haben schon vor 4000 Jahren die Ägypter und Gelehrten aus Babylon mit Hilfe der Astronomie den Lauf der Gestirne (Himmelskörper) zu berechnen versucht, jedoch ohne Erfolg. -Etwa 350 vor Christus waren es die Griechen, welche den damaligen Astronomen Hilfestellungen mittels Kugel-Geometrien leisten konnten. -Aus diesen Geometrien wurden erste mathematische Sätze aufgestellt und ein paar Jahrhunderte später kamen zu diesem Thema auch Berechnungen dazu. -Ebenso wurden Kartenmaterial mit Sternenbilder angefertigt. -Die Sinusfunktion war noch nicht bekannt, jedoch kamen zu dieser Zeit die ersten Ansätze der Cosinusfunktion aus Indien. -Von diesen Hilfen darauf aufbauend konnte um 900 die Araber der Sinussatz entwickeln. -Doch ein paar weitere Jahrhunderte vergingen bis zu diesem Thema wieder verstärkt Forschung betrieben wurde. -Dies aus dem Grund, da im 15. Jahrhundert grosse Entdeckungsreisen, hauptsächlich per Schiff, erfolgten und die Orientierung vermehrt an Wichtigkeit gewann. -Auch die Verwendung der Tangens- und Sinusfunktion sowie der neu entwickelte Seitencosinussatz trugen zu einer Verbesserung der Orientierung herbei. -Im 16. Jahrhundert wurde dann ein weiterer trigonometrischer Satz, der Winkelcosinussatz hergeleitet. Stück für Stück wurden infolge der Entdeckung des Logarithmus im 17. Jahrhundert viele neue Methoden entwickelt. -Auch eine Verbesserung der kartographischen Verwendung der Kugelgeometrie wurde vorgenommen. -Es folgten weitere Entwicklungen in nicht euklidische Geometrien und im 19. Jahrhundert sowie auch im 20. Jahrhundert wurde zudem für die Relativitätstheorie auch die sphärische Trigonometrie beigezogen. -\end{document} \ No newline at end of file diff --git a/buch/papers/nav/nautischesdreieck.tex b/buch/papers/nav/nautischesdreieck.tex index b61e908..a85b119 100644 --- a/buch/papers/nav/nautischesdreieck.tex +++ b/buch/papers/nav/nautischesdreieck.tex @@ -1,17 +1,13 @@ \section{Das Nautische Dreieck} \subsection{Definition des Nautischen Dreiecks} -Ursprünglich ist das nautische Dreieck ein Hilfsmittel der sphärischen Astronomie um die momentane Position eines Fixsterns oder Planeten an der \textbf{Himmelskugel}. -Die Himmelskugel ist eine gedachte Kugel, welche die Erde und dessen Beobachter umgibt und als Rechenfläche für Koordinaten in der Astronomie und Geodäsie dient.\\ -Das Nautische Dreieck definiert sich durch folgende Ecken: -\begin{itemize} - \item Zenit - \item Gestirn - \item Himmelspol -\end{itemize} +Ursprünglich ist das nautische Dreieck ein Hilfsmittel der sphärischen Astronomie um die momentane Position eines Fixsterns oder Planeten an der Himmelskugel}. +Die Himmelskugel ist eine gedachte Kugel, welche die Erde und dessen Beobachter umgibt und als Rechenfläche für Koordinaten in der Astronomie und Geodäsie dient. +Das nautische Dreieck definiert sich durch folgende Ecken: Zenit, Gestirn und Himmelspol. + Der Zenit ist jener Punkt, der vom Erdmittelpunkt durch denn eigenen Standort an die Himmelskugel verlängert wird. Ein Gestirn ist ein Planet oder ein Fixstern, zu welchen es diverse Jahrbücher mit allen astronomischen Eigenschaften gibt. Der Himmelspol ist der Nordpol an die Himmelskugel projiziert. -\\ + Zur Anwendung der Formeln der sphärischen Trigonometrie gelten folgende einfache Zusammenhänge: \begin{itemize} \item Seitenlänge Zenit zu Himmelspol $= \frac{\pi}{2} - \phi $ @@ -21,34 +17,30 @@ Zur Anwendung der Formeln der sphärischen Trigonometrie gelten folgende einfach \item Winkel von Himmelsnordpol zu Zenit und Gestirn$= \tau$ \end{itemize} Um mit diesen Zusammenhängen zu rechnen benötigt man folgende Legende: - -$\alpha \ \widehat{=} \ Rektaszension $ - -$\delta \ \widehat{=} \ Deklination =$ Breitengrad des Gestirns - -$\theta \ \widehat{=} \ Sternzeit\ von\ Greenwich$ - -$\phi \ \widehat{=} \ Geographische \ Breite $ - -$\tau = \theta-\alpha \ \widehat{=} \ Stundenwinkel =$ Längengrad des Gestirns - -$a \ \widehat{=} \ Azimut $ - -$h \ \widehat{=} \ Hoehe$ - - - -\newpage -\subsection{Zusammenhang des Nautischen Dreiecks und des Kugeldreiecks auf der Erdkugel} -\begin{figure}[h] +\begin{center} + \begin{tabular}{ c c c } + Winkel && Name / Beziehung \\ + \hline + $\alpha$ && Rektaszension \\ + $\delta$ && Deklination \\ + $\theta$ && Sternzeit von Greenwich\\ + $\phi$ && Geographische Breite\\ + $\tau=\theta-\alpha$ && Stundenwinkel und Längengrad des Gestirns. \\ + $a$ && Azimut\\ + $h$ && Höhe + \end{tabular} +\end{center} + +\subsection{Zusammenhang des nautischen Dreiecks und des Kugeldreiecks auf der Erdkugel} +\begin{figure} \begin{center} - \includegraphics[height=5cm,width=5cm]{papers/nav/bilder/kugel3.png} + \includegraphics[height=5cm,width=8cm]{papers/nav/bilder/kugel3.png} \caption[Nautisches Dreieck]{Nautisches Dreieck} \end{center} \end{figure} -Wie man im oberen Bild sieht und auch am Anfang dieses Kapitels bereits erwähnt wurde, liegt das Nautische Dreieck auf der Himmelskugel mit den Ecken Zenit, Gestirn und Himmelsnordpol. -Das selbe Dreieck kann man aber auch auf die Erdkugel projezieren und hat dann die Ecken Standort, Bildpunkt und Nordpol. +Wie man im oberen Bild sieht, liegt das nautische Dreieck auf der Himmelskugel mit den Ecken Zenit, Gestirn und Himmelsnordpol. +Das selbe Dreieck kann man aber auch auf die Erdkugel projizieren und es hat dann die Ecken Standort, Bildpunkt und Nordpol. Als Bildpunkt wird in der astronomischen Navigation der Punkt bezeichnet, an dem eine gedachte Linie vom Mittelpunkt eines beobachteten Gestirns zum Mittelpunkt der Erde die Erdoberfläche schneidet. @@ -56,9 +48,9 @@ Als Bildpunkt wird in der astronomischen Navigation der Punkt bezeichnet, an dem Um den eigenen Standort herauszufinden, wird in diesem Kapitel die Projektion Nautische Dreieck auf der Erdkugel zur Hilfe genommen. Mithilfe einiger Hilfsmittel und der Sphärischen Trigonometrie kann man dann die Längen- und Breitengrade des eigenen Standortes bestimmen. -\begin{figure}[h] +\begin{figure} \begin{center} - \includegraphics[width=6cm]{papers/nav/bilder/dreieck.png} + \includegraphics[width=10cm]{papers/nav/bilder/dreieck.pdf} \caption[Dreieck für die Standortbestimmung]{Dreieck für die Standortbestimmung} \end{center} \end{figure} @@ -66,75 +58,76 @@ Mithilfe einiger Hilfsmittel und der Sphärischen Trigonometrie kann man dann di -\subsection{Ecke P - Unser Standort} -Unser eigener Standort ist der gesuchte Punkt A. - -\subsection{Ecke A - Nordpol} -Der Vorteil ander Idee des Nautischen Dreiecks ist, dass eine Ecke immer der Nordpol (in der Himmelskugel der Himmelsnordpol) ist. +\subsection{Ecke $P$ und $A$} +Unser eigener Standort ist der gesuchte Ecke $P$ und die Ecke $A$ ist in unserem Fall der Nordpol. +Der Vorteil ander Idee des Nautischen Dreiecks ist, dass eine Ecke immer der Nordpol ist. Somit ist diese Ecke immer bekannt und nur deswegen sind die Zusammenhänge von Rektaszension, Sternzeit und Deklination so simpel. -\newpage -\subsection{Ecke B und C - Bildpunkt X und Y} + +\subsection{Ecke $B$ und $C$ - Bildpunkt X und Y} Für die Standortermittlung benötigt man als weiteren Punkt ein Gestirn bzw. seinen Bildpunkt auf der Erdkugel. Damit das trigonometrische Rechnen einfacher wird, werden hier zwei Gestirne zur Hilfe genommen. -\\ -Es gibt diverse Gestirne, die man nutzen kann. -\begin{itemize} - \item Sonne - \item Mond - \item Die vier Navigationsplaneten Venus, Mars, Jupiter und Saturn -\end{itemize} +Es gibt diverse Gestirne, die man nutzen kann wie zum Beispiel die Sonne, der Mond oder die vier Navigationsplaneten Venus, Mars, Jupiter und Saturn. + +\subsection{Ephemeriden} +Zu all diesen Gestirnen gibt es Ephemeriden, die man auch Jahrbücher nennt. +In diesen findet man Begriffe wie Rektaszension, Deklination und Sternzeit. +Da diese Angaben in Stundenabständen gegeben sind, muss man für die minutengenaue Bestimmung zwischen den Stunden interpolieren. +Was diese Begriffe bedeuten, wird in den kommenden beiden Abschnitten erklärt. -Zu all diesen Gestirnen gibt es Ephemeriden (Jahrbücher). -Dort findet man unter Anderem die Rektaszension und Deklination, welche für jeden Tag und Stunde beschrieben ist. Für Minuten genaue Angaben muss man dann zwischen den Stunden interpolieren. -Mithilfe dieser beiden Angaben kann man die Längen- und Breitengrade diverser Gestirne berechnen. +\begin{figure} + \begin{center} + \includegraphics[width=18cm]{papers/nav/bilder/ephe.png} + \caption[Astrodienst - Ephemeriden Januar 2022]{Astrodienst - Ephemeriden Januar 2022} + \end{center} +\end{figure} + +\subsubsection{Deklination} +Die Deklination $\delta$ beschreibt den Winkel zwischen dem Himmelsäquator und Gestirn und ergibt schlussendlich den Breitengrad. \subsubsection{Sternzeit und Rektaszension} -Die Rektaszension $\alpha$ gibt an, in welchem Winkel das Gestirn zum Frühlingspunkt steht. +Die Rektaszension $\alpha$ gibt an, in welchem Winkel das Gestirn zum Frühlingspunkt steht und geht vom Koordinatensystem der Himmelskugel aus. Der Frühlungspunkt ist der Nullpunkt auf dem Himmelsäquator. Die Tatsache, dass sich die Himmelskugel ca. vier Minuten schneller um die eigene Achse dreht als die Erdkugel, stellt hier ein kleines Problem dar. Die Lösung ist die Sternzeit. +Mit dieser können wir die schnellere Drehung der Himmelskugel ausgleichen und können die Am Frühlingspunkt (21. März) 12:00 Uhr ist die Sternzeit $\theta = 0$. Die Sternzeit geht vom Frühlungspunkt aus, an welchem die Sonne den Himmelsäquator schneidet. Für die Standortermittlung auf der Erdkugel ist es am einfachsten, wenn man die Sternzeit von Greenwich berechnet. -Für die Sternzeit von Greenwich braucht man als erstes das Julianische Datum $T$ vom aktuellen Tag, welches sich leicht recherchieren lässt. +Für die Sternzeit von Greenwich $\theta $braucht man als erstes das Julianische Datum $T$ vom aktuellen Tag, welches sich leicht recherchieren lässt. Im Anschluss berechnet man die Sternzeit von Greenwich -\\ -\\ -$T_{Greenwich} = 6^h 41^m 50^s,54841 + 8640184^s,812866 \cdot T + 0^s,093104 \cdot T^2 - 0^s,0000062 \cdot T^3$. -\\ -\\ -Wenn mann die Sternzeit von Greenwich ausgerechnet hat, kann man den Längengrad des Gestirns $\lambda = \theta - \alpha$ mithilfe der Rektaszension und Sternzeit bestimmen. -Dies gilt analog auch für das zweite Gestirn. -\subsubsection{Deklination} -Die Deklination $\delta$ beschreibt den Winkel zwischen dem Himmelsäquator und Gestirn und ergibt schlussendlich den Breitengrad. +$\theta = 6^h 41^m 50^s,54841 + 8640184^s,812866 \cdot T + 0^s,093104 \cdot T^2 - 0^s,0000062 \cdot T^3$. +Wenn mann die Sternzeit von Greenwich ausgerechnet hat, kann man den Längengrad des Gestirns $\lambda = \theta - \alpha$ mithilfe der Rektaszension und Sternzeit von Greenwich bestimmen. +Dies gilt analog auch für das zweite Gestirn. -\newpage \subsection{Bestimmung des eigenen Standortes P} Nun hat man die Koordinaten der beiden Gestirne und man weiss die Koordinaten des Nordpols. -Somit können wir ein erstes Kugeldreieck auf der Erde aufspannen. - +Damit wir unseren Standort bestimmen können, bilden wir zuerst das Dreieck $ABC$, dann das Dreieck $BPC$ und zum Schluss noch das Dreieck $ABP$. +Mithilfe dieser Dreiecken können wir die einfachen Sätze der sphärischen Trigonometrie anwenden und benötigen lediglich ein Ephemeride zu den Gestirnen und einen Sextant. -\begin{figure}[h] +\begin{figure} \begin{center} - \includegraphics[width=4.5cm]{papers/nav/bilder/dreieck.png} + \includegraphics[width=10cm]{papers/nav/bilder/dreieck.pdf} \caption[Dreieck für die Standortbestimmung]{Dreieck für die Standortbestimmung} \end{center} \end{figure} -\subsubsection{Bestimmung des ersten Dreiecks} - -$A=$ Nordpol +\subsubsection{Dreieck $ABC$} -$B=$ Bildpunkt des Gestirns X +\begin{center} + \begin{tabular}{ c c c } + Ecke && Name \\ + \hline + $A$ && Nordpol \\ + $B$ && Bildpunkt des Gestirns $X$ \\ + $C$&& Bildpunkt des Gestirns $Y$ + \end{tabular} +\end{center} -$C=$ Bildpunkt des Gestirns Y -\\ -\\ Mithilfe des sphärischen Trigonometrie und den darausfolgenden Zusammenhängen des Nautischen Dreiecks können wir nun alle Seiten des Dreiecks $ABC$ berechnen. Die Seitenlänge der Seite "Nordpol zum Bildpunkt X" sei $c$. @@ -145,24 +138,24 @@ Dann ist $b = \frac{\pi}{2} - \delta_2$. Der Innenwinkel beim der Ecke "Nordpol" sei $\alpha$. Dann ist $ \alpha = |\lambda_1 - \lambda_2|$. -\\ -\\ -mit - -$\delta_1 =$ Deklination Bildpunkt X -$\delta_2 =$ Deklination Bildpunk Y - -$\lambda_1 =$ Längengrad Bildpunkt X - -$\lambda_2 =$ Längengrad Bildpunkt Y +mit +\begin{center} + \begin{tabular}{ c c c } + Ecke && Name \\ + \hline + $\delta_1$ && Deklination Bildpunkt $X$ \\ + $\delta_2$ && Deklination Bildpunk $Y$ \\ + $\lambda_1 $&& Längengrad Bildpunkt $X$\\ + $\lambda_2$ && Längengrad Bildpunkt $Y$ + \end{tabular} +\end{center} Wichtig ist: Die Differenz der Längengrade ist gleich der Innenwinkel Alpha, deswegen der Betrag! -\\ -\\ + Nun haben wir die beiden Seiten $c\ und\ b$ und den Winkel $\alpha$, der sich zwischen diesen Seiten befindet. Mithilfe des Seiten-Kosinussatzes -$cos(a) = \cos(b)\cdot \cos(c) + \sin(b) \cdot \sin(c)\cdot \cos(\alpha)$ +$\cos(a) = \cos(b)\cdot \cos(c) + \sin(b) \cdot \sin(c)\cdot \cos(\alpha)$ können wir nun die dritte Seitenlänge bestimmen. Es ist darauf zu achten, dass hier natürlich die Seitenlängen in Bogenmass sind und dementsprechend der Kosinus und Sinus verwendet wird. @@ -174,7 +167,7 @@ Somit ist $\beta =\sin^{-1} [\sin(b) \cdot \frac{\sin(\alpha)}{\sin(a)}] $. Schlussendlich haben wir die Seiten $a,b\ und \ c$, die Ecken A,B und C und die Winkel $\alpha, \beta \ und \ \gamma$ bestimmt und somit das ganze erste Kugeldreieck berechnet. -\subsubsection{Bestimmung des zweiten Dreiecks} +\subsubsection{Dreieck $BPC$} Wir bilden nun ein zweites Dreieck, welches die Ecken B und C des ersten Dreiecks besitzt. Die dritte Ecke ist der eigene Standort P. Unser Standort definiere sich aus einer geographischen Breite $\delta$ und einer geographischen Länge $\lambda$. @@ -183,24 +176,23 @@ Die Seite von P zu B sei $pb$ und die Seite von P zu C sei $pc$. Die beiden Seitenlängen kann man mit dem Sextant messen und durch eine einfache Formel bestimmen, nämlich $pb=\frac{\pi}{2} - h_{B}$ und $pc=\frac{\pi}{2} - h_{C}$ mit $h_B=$ Höhe von Gestirn in B und $h_C=$ Höhe von Gestirn in C mit Sextant gemessen. -\\ +Zum Schluss müssen wir noch den Winkel $\beta1$ mithilfe des Seiten-Kosinussatzes mit den bekannten Seiten $pc$, $pb$ und $a$ bestimmen. +\subsubsection{Dreieck $ABP$} Nun muss man eine Verbindungslinie ziehen zwischen P und A. Die Länge $l$ dieser Linie entspricht der gesuchten geographischen Breite $\delta$. Diese lässt sich mithilfe des Dreiecks $ABP$, den bekannten Seiten $c\ und \ pb$ und des Seiten-Kosinussatzes berechnen. -Für den Seiten-Kosinussatz benötigt es noch $\kappa$. -Da wir aber $pc$, $pb$ und $a$ kennen, kann man mit dem Seiten-Kosinussatz den Winkel $\beta1$ berechnen und anschliessend $\beta + \beta1 =\kappa$. +Für den Seiten-Kosinussatz benötigt es noch $\kappa=\beta + \beta1$. -Somit ist $cos(l) = \cos(c)\cdot \cos(pb) + \sin(c) \cdot \sin(pb) \cdot \cos(\kappa)$ +Somit ist $\cos(l) = \cos(c)\cdot \cos(pb) + \sin(c) \cdot \sin(pb) \cdot \cos(\kappa)$ und -$\delta =\cos^{-1} [\cos(c) \cdot \cos(pb) + \sin(c) \cdot \sin(pb) \cdot \cos(\kappa)]$. -\\ +\[ +\delta =\cos^{-1} [\cos(c) \cdot \cos(pb) + \sin(c) \cdot \sin(pb) \cdot \cos(\kappa)]. +\] Für die Geographische Länge $\lambda$ des eigenen Standortes muss man den Winkel $\omega$, welcher sich im Dreieck $ACP$ in der Ecke bei $A$ befindet mithilfe des Sinussatzes $\frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)}$ bestimmen. -\\ -Somit ist $\omega=\sin^{-1}[\sin(pc) \cdot \frac{\sin(\gamma)}{\sin(l)}]$ und unsere gesuchte geographische Länge schlussendlich -$\lambda=\lambda_1 - \omega$ mit $\lambda_1$=Längengrad Bildpunkt XXX. -\newpage -\listoffigures \ No newline at end of file +Somit ist \[ \omega=\sin^{-1}[\sin(pc) \cdot \frac{\sin(\gamma)}{\sin(l)}] \]und unsere gesuchte geographische Länge schlussendlich +\[\lambda=\lambda_1 - \omega\] +mit $\lambda_1$=Längengrad Bildpunkt XXX. diff --git a/buch/papers/nav/sincos.tex b/buch/papers/nav/sincos.tex index 23e3303..bb7f1e4 100644 --- a/buch/papers/nav/sincos.tex +++ b/buch/papers/nav/sincos.tex @@ -1,16 +1,19 @@ -\section{Warum sind die Sinus- und Kosinusfunktionen spezielle Funktionen?} -Es gibt Hinweise, dass sich schon die Babylonier und Ägypter vor 4000 Jahren sich mit Problemen der sphärischen Trigonometrie beschäftigt haben um den Lauf von Gestirnen (Himmelskörper) zu berechnen. -Jedoch konnten sie sie nicht lösen. -Die Geschichte der sphärischen Trigonometrie ist daher eng mit der Astronomie verknüpft. Ca. 350 vor Christus dachten die Griechen über Kugelgeometrie nach und wurde zu einer Hilfswissenschaft der Astronomen. -In Folge werden auch die ersten Sätze aufgestellt und wenige Jahrhunderte später wurden Berechnungen zu diesem Thema angestellt. +\section{Sphärische Navigation und Winkelfunktionen} +Es gibt Hinweise, dass sich schon die Babylonier und Ägypter vor 4000 Jahren sich mit Problemen der sphärischen Trigonometrie beschäftigt haben um den Lauf von Gestirnen zu berechnen. +Jedoch konnten sie dieses Problem nicht lösen. + +Die Geschichte der sphärischen Trigonometrie ist daher eng mit der Astronomie verknüpft. Ca. 350 vor Christus dachten die Griechen über Kugelgeometrie nach und sie wurde zu einer Hilfswissenschaft der Astronomen. +In Folge werden auch die ersten Sätze aufgestellt und wenige Jahrhunderte später wurden Berechnungen mithilfe des Sternkataloges von Hipparchos angestellt und darauffolgend Kartenmaterial erstellt. In dieser Zeit wurden auch die ersten Sternenkarten angefertigt, jedoch kannte man damals die Sinusfunktion noch nicht. Aus Indien stammten die ersten Ansätze zu den Kosinussätzen. -Aufbauend auf den indischen und griechischen Forschungen entwickeln die Araber um 900 den Sinussatz. -Zur Zeit der großen Entdeckungsreisen im 15. Jahrhundert wurden die Forschungen in sphärischer Trigonometrie wieder forciert. -Der Sinussatz, die Tangensfunktion und der neu entwickelte Seitenkosinussatz wurden in dieser Zeit bereits verwendet. -Im nächsten Jahrhundert folgte der Winkelkosinussatz. +Aufbauend auf den indischen und griechischen Forschungen entwickeln die Araber um das 9. Jahrhundert den Sinussatz. +Doch ein paar weitere Jahrhunderte vergingen bis zu diesem Thema wieder verstärkt Forschung betrieben wurde, da im 15. Jahrhundert grosse Entdeckungsreisen, hauptsächlich per Schiff, erfolgten und die Orientierung mit Sternen vermehrt an Wichtigkeit gewann. +Man nutzte für die Kartographie nun die Kugelgeometrie, um die Genauigkeit zu erhöhen. +Der Sinussatz, die Tangensfunktion und der neu entwickelte Seitenkosinussatz wurden in dieser Zeit bereits verwendet und im darauffolgenden Jahrhundert folgte der Winkelkosinussatz. + + Durch weitere mathematische Entwicklungen wie den Logarithmus wurden im Laufe des nächsten Jahrhunderts viele neue Methoden und kartographische Anwendungen der Kugelgeometrie entdeckt. Im 19. und 20. Jahrhundert wurden weitere nicht-euklidische Geometrien entwickelt und die sphärische Trigonometrie fand auch ihre Anwendung in der Relativitätstheorie. \ No newline at end of file diff --git a/buch/papers/nav/trigo.tex b/buch/papers/nav/trigo.tex index 8b4634f..cf2f242 100644 --- a/buch/papers/nav/trigo.tex +++ b/buch/papers/nav/trigo.tex @@ -1,18 +1,38 @@ -\setlength{\parindent}{0em} + \section{Sphärische Trigonometrie} +In der sphärischen Trigonometrie gibt es eine Symetrie zwischen Seiten und Winkel, also zu jedem Satz über Seiten und Winkel gibt es einen entsprechenden Satz, mit dem man Winkel durch Seiten und Seiten durch Winkel ersetzt hat. +Dabei gibt es folgenden Zusammenhang zwischen der ebenen- und sphärischen Trigonometrie: +\begin{center} + + +\begin{tabular}{ccc} + Eben & $\leftrightarrow$ & sphärisch \\ + \hline + $a$ & $\leftrightarrow$ & $\sin \ a$ \\ + + $a^2$ & $\leftrightarrow$ & $-\cos \ a$ \\ +\end{tabular} +\end{center} + \subsection{Das Kugeldreieck} -Werden drei voneinander verschiedene Punkte, die sich nicht auf derselben Grosskreisebene befinden, mit Grosskreisbögen verbunden, so entsteht ein Kugeldreieck ABC. -A, B und C sind die Ecken des Dreiecks und dessen Seiten sind die Grosskreisbögen zwischen den Eckpunkten. +Werden drei voneinander verschiedene Punkte, die sich nicht auf derselben Grosskreisebene befinden, mit Grosskreisbögen verbunden, so entsteht ein Kugeldreieck $ABC$. +Für ein Kugeldreieck gilt, dass die Summe der drei Seiten kleiner als $2\pi$ aber grösser als 0 ist. +$A$, $B$ und $C$ sind die Ecken des Dreiecks und dessen Seiten sind die Grosskreisbögen zwischen den Eckpunkten. +Ein Grosskreis ist ein größtmöglicher Kreis auf einer Kugeloberfläche. +Sein Mittelpunkt fällt immer mit dem Mittelpunkt der Kugel zusammen und ein Schnitt auf dem Großkreis teilt die Kugel in jedem Fall in zwei gleich grosse Hälften. + +Da es unendlich viele Möglichkeiten gibt, eine Kugel so zu zerschneiden, dass die Schnittebene den Kugelmittelpunkt trifft, gibt es auch unendlich viele Grosskreise. Da die Länge der Grosskreisbögen wegen der Abhängigkeit vom Kugelradius ungeeignet ist, wird die Grösse einer Seite mit dem zugehörigen Mittelpunktwinkel des Grosskreisbogens angegeben. -Laut dieser Definition ist die Seite c der Winkel AMB. -Für ein Kugeldreieck gilt, dass die Summe der drei Seiten kleiner als $2\pi$ aber grösser als 0 ist. +Laut dieser Definition ist die Seite $c$ der Winkel $AMB$. + Man kann bei Kugeldreiecken nicht so einfach unterscheiden, was Innen oder Aussen ist. Wenn man drei Eckpunkte miteinander verbindet, ergeben sich immer 16 Kugeldreiecke. Jenes Kugeldreieck mit den Seitenlängen $a, b, c < \pi$ und den Winkeln $\alpha, \beta, \gamma < \pi$ nennt man Eulersche Dreiecke. -\begin{figure}[h] + +\begin{figure} \begin{center} - %\includegraphics[width=6cm]{papers/nav/bilder/kugel1.png} + \includegraphics[width=6cm]{papers/nav/bilder/kugel1.png} \caption[Das Kugeldreieck]{Das Kugeldreieck} \end{center} @@ -21,12 +41,12 @@ Jenes Kugeldreieck mit den Seitenlängen $a, b, c < \pi$ und den Winkeln $\alpha \subsection{Rechtwinkliges Dreieck und Rechtseitiges Dreieck} Wie auch im uns bekannten Dreieck gibt es beim Kugeldreieck auch ein Rechtwinkliges Kugeldreieck, bei dem ein Winkel $\frac{\pi}{2}$ ist. Ein Rechtseitiges Dreieck gibt es jedoch nur beim Kugeldreieck, weil dort eine Seitenlänge $\frac{\pi}{2}$ lang sein muss. -\newpage -\subsection{Winkelangabe} -\begin{figure}[h] + +\subsection{Winkelsumme} +\begin{figure} \begin{center} - %\includegraphics[width=8cm]{papers/nav/bilder/kugel2.png} + \includegraphics[width=8cm]{papers/nav/bilder/kugel2.png} \caption[Winkelangabe im Kugeldreieck]{Winkelangabe im Kugeldreieck} \end{center} \end{figure} @@ -37,13 +57,15 @@ Für die Summe der Innenwinkel gilt \begin{align} \alpha+\beta+\gamma &= \frac{A}{r^2} + \pi \ \text{und} \ \alpha+\beta+\gamma > \pi. \nonumber \end{align} - +\subsubsection{Sphärischer Exzess} Der sphärische Exzess \begin{align} \epsilon = \alpha+\beta+\gamma - \pi \nonumber \end{align} beschreibt die Abweichung der Innenwinkelsumme von $\pi$ und ist proportional zum Flächeninhalt des Kugeldreiecks. +\subsubsection{Flächeninnhalt} +Der Flächeninhalt $A$ lässt sich aus den Winkeln $\alpha,\ \beta, \ \gamma$ und dem Kugelradius $r$ berechnen. \subsection{Sphärischer Sinussatz} In jedem Dreieck ist das Verhältnis des Sinus einer Seite zum Sinus des Gegenwinkels konstant. @@ -53,7 +75,16 @@ Das bedeutet, dass \frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)} \nonumber \ \text{auch beim Kugeldreieck gilt.} \end{align} +\subsection{Sphärischer Kosinussätze} +Auch in der sphärischen Trigonometrie gibt es den Seitenkosinussatz +\begin{align} + cos \ a = \cos b \cdot \cos c + \sin b \cdot \sin c \cdot \cos \alpha \nonumber +\end{align} %Seitenkosinussatz +und den Winkelkosinussatz +\begin{align} + \cos \gamma = -\cos \alpha \cdot \cos \beta + \sin \alpha \cdot \sin \beta \cdot \cos c \nonumber +\end{align} \subsection{Sphärischer Satz des Pythagoras für das rechtwinklige Kugeldreieck} Es gibt in der sphärischen Trigonometrie eigentlich garkeinen "Satz des Pythagoras", wie man ihn aus der zweidimensionalen Geometrie kennt. @@ -62,6 +93,6 @@ In der sphärischen Trigonometrie gibt es aber auch einen Satz, der alle drei Se Es gilt nämlich: \begin{align} \cos c = \cos a \cdot \cos b \ \text{wenn} \nonumber & - \alpha = \frac{\pi}{2} \lor \beta =\frac{\pi}{2} \lor \gamma = \frac{\pi}{2}.\nonumber + \alpha = \frac{\pi}{2} \nonumber \end{align} \ No newline at end of file -- cgit v1.2.1 From b3283eb05091a88841668c39d422da53d66e1cdd Mon Sep 17 00:00:00 2001 From: "ENEZ-PC\\erdem" Date: Thu, 19 May 2022 14:51:50 +0200 Subject: update korrektur --- buch/papers/nav/main.tex | 5 ++--- buch/papers/nav/nautischesdreieck.tex | 4 ++-- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/buch/papers/nav/main.tex b/buch/papers/nav/main.tex index de8d1d6..47764e8 100644 --- a/buch/papers/nav/main.tex +++ b/buch/papers/nav/main.tex @@ -6,14 +6,13 @@ \chapter{Spährische Navigation\label{chapter:nav}} \lhead{Sphärische Navigation} \begin{refsection} -\chapterauthor{Enez Erdem, Marc Kühne} +\chapterauthor{Enez Erdem und Marc Kühne} \input{papers/nav/einleitung.tex} -\input{papers/nav/sincos.tex} -\input{papers/nav/geschichte.tex} \input{papers/nav/flatearth.tex} +\input{papers/nav/sincos.tex} \input{papers/nav/trigo.tex} \input{papers/nav/nautischesdreieck.tex} diff --git a/buch/papers/nav/nautischesdreieck.tex b/buch/papers/nav/nautischesdreieck.tex index a85b119..0a498f0 100644 --- a/buch/papers/nav/nautischesdreieck.tex +++ b/buch/papers/nav/nautischesdreieck.tex @@ -1,6 +1,6 @@ \section{Das Nautische Dreieck} \subsection{Definition des Nautischen Dreiecks} -Ursprünglich ist das nautische Dreieck ein Hilfsmittel der sphärischen Astronomie um die momentane Position eines Fixsterns oder Planeten an der Himmelskugel}. +Ursprünglich ist das nautische Dreieck ein Hilfsmittel der sphärischen Astronomie um die momentane Position eines Fixsterns oder Planeten an der Himmelskugel. Die Himmelskugel ist eine gedachte Kugel, welche die Erde und dessen Beobachter umgibt und als Rechenfläche für Koordinaten in der Astronomie und Geodäsie dient. Das nautische Dreieck definiert sich durch folgende Ecken: Zenit, Gestirn und Himmelspol. @@ -195,4 +195,4 @@ Für die Geographische Länge $\lambda$ des eigenen Standortes muss man den Wink Somit ist \[ \omega=\sin^{-1}[\sin(pc) \cdot \frac{\sin(\gamma)}{\sin(l)}] \]und unsere gesuchte geographische Länge schlussendlich \[\lambda=\lambda_1 - \omega\] -mit $\lambda_1$=Längengrad Bildpunkt XXX. +mit $\lambda_1$=Längengrad Bildpunkt $X -- cgit v1.2.1 From 32f1a1d818f0fe28b2ae97071e31a773ee2d028a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Thu, 19 May 2022 17:28:33 +0200 Subject: some local changes --- buch/papers/fresnel/Makefile | 14 -- buch/papers/fresnel/eulerspirale.m | 61 --------- buch/papers/fresnel/eulerspirale.pdf | Bin 22592 -> 0 bytes buch/papers/fresnel/eulerspirale.tex | 41 ------ buch/papers/fresnel/fresnelgraph.pdf | Bin 30018 -> 0 bytes buch/papers/fresnel/fresnelgraph.tex | 46 ------- buch/papers/fresnel/images/Makefile | 38 ++++++ buch/papers/fresnel/images/apfel.jpg | Bin 0 -> 139884 bytes buch/papers/fresnel/images/apfel.pdf | Bin 0 -> 157895 bytes buch/papers/fresnel/images/apfel.tex | 49 +++++++ buch/papers/fresnel/images/eulerspirale.m | 61 +++++++++ buch/papers/fresnel/images/eulerspirale.pdf | Bin 0 -> 22592 bytes buch/papers/fresnel/images/eulerspirale.tex | 41 ++++++ buch/papers/fresnel/images/fresnelgraph.pdf | Bin 0 -> 30018 bytes buch/papers/fresnel/images/fresnelgraph.tex | 46 +++++++ buch/papers/fresnel/images/kruemmung.pdf | Bin 0 -> 10179 bytes buch/papers/fresnel/images/kruemmung.tex | 51 ++++++++ buch/papers/fresnel/images/pfad.pdf | Bin 0 -> 19264 bytes buch/papers/fresnel/images/pfad.tex | 37 ++++++ buch/papers/fresnel/images/schale.pdf | Bin 0 -> 352570 bytes buch/papers/fresnel/images/schale.pov | 191 ++++++++++++++++++++++++++++ buch/papers/fresnel/images/schale.tex | 77 +++++++++++ buch/papers/fresnel/main.tex | 5 + buch/papers/fresnel/pfad.pdf | Bin 19126 -> 0 bytes buch/papers/fresnel/pfad.tex | 34 ----- buch/papers/fresnel/references.bib | 6 + buch/papers/fresnel/teil0.tex | 6 +- buch/papers/fresnel/teil1.tex | 11 +- buch/papers/fresnel/teil2.tex | 161 ++++++++++++++++++++++- buch/papers/fresnel/teil3.tex | 4 +- 30 files changed, 772 insertions(+), 208 deletions(-) delete mode 100644 buch/papers/fresnel/eulerspirale.m delete mode 100644 buch/papers/fresnel/eulerspirale.pdf delete mode 100644 buch/papers/fresnel/eulerspirale.tex delete mode 100644 buch/papers/fresnel/fresnelgraph.pdf delete mode 100644 buch/papers/fresnel/fresnelgraph.tex create mode 100644 buch/papers/fresnel/images/Makefile create mode 100644 buch/papers/fresnel/images/apfel.jpg create mode 100644 buch/papers/fresnel/images/apfel.pdf create mode 100644 buch/papers/fresnel/images/apfel.tex create mode 100644 buch/papers/fresnel/images/eulerspirale.m create mode 100644 buch/papers/fresnel/images/eulerspirale.pdf create mode 100644 buch/papers/fresnel/images/eulerspirale.tex create mode 100644 buch/papers/fresnel/images/fresnelgraph.pdf create mode 100644 buch/papers/fresnel/images/fresnelgraph.tex create mode 100644 buch/papers/fresnel/images/kruemmung.pdf create mode 100644 buch/papers/fresnel/images/kruemmung.tex create mode 100644 buch/papers/fresnel/images/pfad.pdf create mode 100644 buch/papers/fresnel/images/pfad.tex create mode 100644 buch/papers/fresnel/images/schale.pdf create mode 100644 buch/papers/fresnel/images/schale.pov create mode 100644 buch/papers/fresnel/images/schale.tex delete mode 100644 buch/papers/fresnel/pfad.pdf delete mode 100644 buch/papers/fresnel/pfad.tex diff --git a/buch/papers/fresnel/Makefile b/buch/papers/fresnel/Makefile index 11af3a7..ed74861 100644 --- a/buch/papers/fresnel/Makefile +++ b/buch/papers/fresnel/Makefile @@ -3,20 +3,6 @@ # # (c) 2022 Prof Dr Andreas Mueller # -all: fresnelgraph.pdf eulerspirale.pdf pfad.pdf - images: @echo "no images to be created in fresnel" -eulerpath.tex: eulerspirale.m - octave eulerspirale.m - -fresnelgraph.pdf: fresnelgraph.tex eulerpath.tex - pdflatex fresnelgraph.tex - -eulerspirale.pdf: eulerspirale.tex eulerpath.tex - pdflatex eulerspirale.tex - -pfad.pdf: pfad.tex - pdflatex pfad.tex - diff --git a/buch/papers/fresnel/eulerspirale.m b/buch/papers/fresnel/eulerspirale.m deleted file mode 100644 index 84e3696..0000000 --- a/buch/papers/fresnel/eulerspirale.m +++ /dev/null @@ -1,61 +0,0 @@ -# -# eulerspirale.m -# -# (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschlue -# -global n; -n = 1000; -global tmax; -tmax = 10; -global N; -N = round(n*5/tmax); - -function retval = f(x, t) - x = pi * t^2 / 2; - retval = [ cos(x); sin(x) ]; -endfunction - -x0 = [ 0; 0 ]; -t = tmax * (0:n) / n; - -c = lsode(@f, x0, t); - -fn = fopen("eulerpath.tex", "w"); - -fprintf(fn, "\\def\\fresnela{ (0,0)"); -for i = (2:n) - fprintf(fn, "\n\t-- (%.4f,%.4f)", c(i,1), c(i,2)); -end -fprintf(fn, "\n}\n\n"); - -fprintf(fn, "\\def\\fresnelb{ (0,0)"); -for i = (2:n) - fprintf(fn, "\n\t-- (%.4f,%.4f)", -c(i,1), -c(i,2)); -end -fprintf(fn, "\n}\n\n"); - -fprintf(fn, "\\def\\Cplotright{ (0,0)"); -for i = (2:N) - fprintf(fn, "\n\t-- ({%.4f*\\dx},{%.4f*\\dy})", t(i), c(i,1)); -end -fprintf(fn, "\n}\n\n"); - -fprintf(fn, "\\def\\Cplotleft{ (0,0)"); -for i = (2:N) - fprintf(fn, "\n\t-- ({%.4f*\\dx},{%.4f*\\dy})", -t(i), -c(i,1)); -end -fprintf(fn, "\n}\n\n"); - -fprintf(fn, "\\def\\Splotright{ (0,0)"); -for i = (2:N) - fprintf(fn, "\n\t-- ({%.4f*\\dx},{%.4f*\\dy})", t(i), c(i,2)); -end -fprintf(fn, "\n}\n\n"); - -fprintf(fn, "\\def\\Splotleft{ (0,0)"); -for i = (2:N) - fprintf(fn, "\n\t-- ({%.4f*\\dx},{%.4f*\\dy})", -t(i), -c(i,2)); -end -fprintf(fn, "\n}\n\n"); - -fclose(fn); diff --git a/buch/papers/fresnel/eulerspirale.pdf b/buch/papers/fresnel/eulerspirale.pdf deleted file mode 100644 index 4a85a50..0000000 Binary files a/buch/papers/fresnel/eulerspirale.pdf and /dev/null differ diff --git a/buch/papers/fresnel/eulerspirale.tex b/buch/papers/fresnel/eulerspirale.tex deleted file mode 100644 index 38ef756..0000000 --- a/buch/papers/fresnel/eulerspirale.tex +++ /dev/null @@ -1,41 +0,0 @@ -% -% eulerspirale.tex -- Darstellung der Eulerspirale -% -% (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule -% -\documentclass[tikz]{standalone} -\usepackage{amsmath} -\usepackage{times} -\usepackage{txfonts} -\usepackage{pgfplots} -\usepackage{csvsimple} -\usetikzlibrary{arrows,intersections,math} -\begin{document} -\def\skala{1} -\definecolor{darkgreen}{rgb}{0,0.6,0} -\begin{tikzpicture}[>=latex,thick,scale=\skala] - -\input{eulerpath.tex} - -\def\s{8} - -\begin{scope}[scale=\s] -\draw[color=blue] (-0.5,-0.5) rectangle (0.5,0.5); -\draw[color=darkgreen,line width=1.4pt] \fresnela; -\draw[color=darkgreen,line width=1.4pt] \fresnelb; -\fill[color=blue] (0.5,0.5) circle[radius={0.1/\s}]; -\fill[color=blue] (-0.5,-0.5) circle[radius={0.1/\s}]; -\draw (-0.5,{-0.05/\s}) -- (-0.5,{0.05/\s}); -\draw (0.5,{-0.05/\s}) -- (0.5,{-0.05/\s}); -\node at (-0.5,0) [above left] {$\frac12$}; -\node at (0.5,0) [below right] {$\frac12$}; -\node at (0,-0.5) [below right] {$\frac12$}; -\node at (0,0.5) [above left] {$\frac12$}; -\end{scope} - -\draw[->] (-6.7,0) -- (6.9,0) coordinate[label={$C(x)$}];; -\draw[->] (0,-5.8) -- (0,6.1) coordinate[label={left:$S(x)$}];; - -\end{tikzpicture} -\end{document} - diff --git a/buch/papers/fresnel/fresnelgraph.pdf b/buch/papers/fresnel/fresnelgraph.pdf deleted file mode 100644 index 9ccad56..0000000 Binary files a/buch/papers/fresnel/fresnelgraph.pdf and /dev/null differ diff --git a/buch/papers/fresnel/fresnelgraph.tex b/buch/papers/fresnel/fresnelgraph.tex deleted file mode 100644 index 20df951..0000000 --- a/buch/papers/fresnel/fresnelgraph.tex +++ /dev/null @@ -1,46 +0,0 @@ -% -% fresnelgraph.tex -- Graphs of the fresnel functions -% -% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule -% -\documentclass[tikz]{standalone} -\usepackage{amsmath} -\usepackage{times} -\usepackage{txfonts} -\usepackage{pgfplots} -\usepackage{csvsimple} -\usetikzlibrary{arrows,intersections,math} -\begin{document} -\def\skala{1} -\begin{tikzpicture}[>=latex,thick,scale=\skala] - -\input{eulerpath.tex} -\def\dx{1.3} -\def\dy{2.6} - -\draw[color=gray] (0,{0.5*\dy}) -- ({5*\dx},{0.5*\dy}); -\draw[color=gray] (0,{-0.5*\dy}) -- ({-5*\dx},{-0.5*\dy}); - -\draw[color=blue,line width=1.4pt] \Splotright; -\draw[color=blue,line width=1.4pt] \Splotleft; - -\draw[color=red,line width=1.4pt] \Cplotright; -\draw[color=red,line width=1.4pt] \Cplotleft; - -\draw[->] (-6.7,0) -- (6.9,0) coordinate[label={$x$}]; -\draw[->] (0,-2.3) -- (0,2.3) coordinate[label={$y$}]; - -\foreach \x in {1,2,3,4,5}{ - \draw ({\x*\dx},-0.05) -- ({\x*\dx},0.05); - \draw ({-\x*\dx},-0.05) -- ({-\x*\dx},0.05); - \node at ({\x*\dx},-0.05) [below] {$\x$}; - \node at ({-\x*\dx},0.05) [above] {$-\x$}; -} -\draw (-0.05,{0.5*\dy}) -- (0.05,{0.5*\dy}); -\node at (-0.05,{0.5*\dy}) [left] {$\frac12$}; -\draw (-0.05,{-0.5*\dy}) -- (0.05,{-0.5*\dy}); -\node at (0.05,{-0.5*\dy}) [right] {$-\frac12$}; - -\end{tikzpicture} -\end{document} - diff --git a/buch/papers/fresnel/images/Makefile b/buch/papers/fresnel/images/Makefile new file mode 100644 index 0000000..eb7dc57 --- /dev/null +++ b/buch/papers/fresnel/images/Makefile @@ -0,0 +1,38 @@ +# +# Makefile +# +# (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +all: schale.pdf \ + fresnelgraph.pdf \ + eulerspirale.pdf \ + pfad.pdf \ + apfel.pdf \ + kruemmung.pdf + +schale.png: schale.pov + povray +A0.1 -W1920 -H1080 -Oschale.png schale.pov + +schale.jpg: schale.png Makefile + convert -extract 1240x1080+340 schale.png -density 300 -units PixelsPerInch schale.jpg + +schale.pdf: schale.tex schale.jpg + pdflatex schale.tex + +eulerpath.tex: eulerspirale.m + octave eulerspirale.m + +fresnelgraph.pdf: fresnelgraph.tex eulerpath.tex + pdflatex fresnelgraph.tex + +eulerspirale.pdf: eulerspirale.tex eulerpath.tex + pdflatex eulerspirale.tex + +pfad.pdf: pfad.tex + pdflatex pfad.tex + +apfel.pdf: apfel.tex apfel.jpg eulerpath.tex + pdflatex apfel.tex + +kruemmung.pdf: kruemmung.tex + pdflatex kruemmung.tex diff --git a/buch/papers/fresnel/images/apfel.jpg b/buch/papers/fresnel/images/apfel.jpg new file mode 100644 index 0000000..76e48e7 Binary files /dev/null and b/buch/papers/fresnel/images/apfel.jpg differ diff --git a/buch/papers/fresnel/images/apfel.pdf b/buch/papers/fresnel/images/apfel.pdf new file mode 100644 index 0000000..69e5092 Binary files /dev/null and b/buch/papers/fresnel/images/apfel.pdf differ diff --git a/buch/papers/fresnel/images/apfel.tex b/buch/papers/fresnel/images/apfel.tex new file mode 100644 index 0000000..754886b --- /dev/null +++ b/buch/papers/fresnel/images/apfel.tex @@ -0,0 +1,49 @@ +% +% apfel.tex +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{times} +\usepackage{amsmath} +\usepackage{txfonts} +\usepackage[utf8]{inputenc} +\usepackage{graphics} +\usetikzlibrary{arrows,intersections,math} +\usepackage{ifthen} +\begin{document} + +\newboolean{showgrid} +\setboolean{showgrid}{false} +\def\breite{7} +\def\hoehe{4} + +\input{eulerpath.tex} + +\begin{tikzpicture}[>=latex,thick] + +% Povray Bild +\begin{scope} +\clip(-0.6,-0.6) rectangle (7,6); +\node at (3.1,2.2) [rotate=-3] {\includegraphics[width=9.4cm]{apfel.jpg}}; +\end{scope} + +% Gitter +\ifthenelse{\boolean{showgrid}}{ +\draw[step=0.1,line width=0.1pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw[step=0.5,line width=0.4pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw (-\breite,-\hoehe) grid (\breite, \hoehe); +\fill (0,0) circle[radius=0.05]; +}{} + +\draw[color=gray!50] (0,0) rectangle (4,4); +\draw[->] (-0.5,0) -- (7.5,0) coordinate[label={$C(t)$}]; +\draw[->] (0,-0.5) -- (0,6.0) coordinate[label={left:$S(t)$}]; +\begin{scope}[scale=8] +\draw[color=red,opacity=0.5,line width=1.4pt] \fresnela; +\end{scope} + +\end{tikzpicture} + +\end{document} + diff --git a/buch/papers/fresnel/images/eulerspirale.m b/buch/papers/fresnel/images/eulerspirale.m new file mode 100644 index 0000000..84e3696 --- /dev/null +++ b/buch/papers/fresnel/images/eulerspirale.m @@ -0,0 +1,61 @@ +# +# eulerspirale.m +# +# (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschlue +# +global n; +n = 1000; +global tmax; +tmax = 10; +global N; +N = round(n*5/tmax); + +function retval = f(x, t) + x = pi * t^2 / 2; + retval = [ cos(x); sin(x) ]; +endfunction + +x0 = [ 0; 0 ]; +t = tmax * (0:n) / n; + +c = lsode(@f, x0, t); + +fn = fopen("eulerpath.tex", "w"); + +fprintf(fn, "\\def\\fresnela{ (0,0)"); +for i = (2:n) + fprintf(fn, "\n\t-- (%.4f,%.4f)", c(i,1), c(i,2)); +end +fprintf(fn, "\n}\n\n"); + +fprintf(fn, "\\def\\fresnelb{ (0,0)"); +for i = (2:n) + fprintf(fn, "\n\t-- (%.4f,%.4f)", -c(i,1), -c(i,2)); +end +fprintf(fn, "\n}\n\n"); + +fprintf(fn, "\\def\\Cplotright{ (0,0)"); +for i = (2:N) + fprintf(fn, "\n\t-- ({%.4f*\\dx},{%.4f*\\dy})", t(i), c(i,1)); +end +fprintf(fn, "\n}\n\n"); + +fprintf(fn, "\\def\\Cplotleft{ (0,0)"); +for i = (2:N) + fprintf(fn, "\n\t-- ({%.4f*\\dx},{%.4f*\\dy})", -t(i), -c(i,1)); +end +fprintf(fn, "\n}\n\n"); + +fprintf(fn, "\\def\\Splotright{ (0,0)"); +for i = (2:N) + fprintf(fn, "\n\t-- ({%.4f*\\dx},{%.4f*\\dy})", t(i), c(i,2)); +end +fprintf(fn, "\n}\n\n"); + +fprintf(fn, "\\def\\Splotleft{ (0,0)"); +for i = (2:N) + fprintf(fn, "\n\t-- ({%.4f*\\dx},{%.4f*\\dy})", -t(i), -c(i,2)); +end +fprintf(fn, "\n}\n\n"); + +fclose(fn); diff --git a/buch/papers/fresnel/images/eulerspirale.pdf b/buch/papers/fresnel/images/eulerspirale.pdf new file mode 100644 index 0000000..db74e4b Binary files /dev/null and b/buch/papers/fresnel/images/eulerspirale.pdf differ diff --git a/buch/papers/fresnel/images/eulerspirale.tex b/buch/papers/fresnel/images/eulerspirale.tex new file mode 100644 index 0000000..38ef756 --- /dev/null +++ b/buch/papers/fresnel/images/eulerspirale.tex @@ -0,0 +1,41 @@ +% +% eulerspirale.tex -- Darstellung der Eulerspirale +% +% (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{amsmath} +\usepackage{times} +\usepackage{txfonts} +\usepackage{pgfplots} +\usepackage{csvsimple} +\usetikzlibrary{arrows,intersections,math} +\begin{document} +\def\skala{1} +\definecolor{darkgreen}{rgb}{0,0.6,0} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +\input{eulerpath.tex} + +\def\s{8} + +\begin{scope}[scale=\s] +\draw[color=blue] (-0.5,-0.5) rectangle (0.5,0.5); +\draw[color=darkgreen,line width=1.4pt] \fresnela; +\draw[color=darkgreen,line width=1.4pt] \fresnelb; +\fill[color=blue] (0.5,0.5) circle[radius={0.1/\s}]; +\fill[color=blue] (-0.5,-0.5) circle[radius={0.1/\s}]; +\draw (-0.5,{-0.05/\s}) -- (-0.5,{0.05/\s}); +\draw (0.5,{-0.05/\s}) -- (0.5,{-0.05/\s}); +\node at (-0.5,0) [above left] {$\frac12$}; +\node at (0.5,0) [below right] {$\frac12$}; +\node at (0,-0.5) [below right] {$\frac12$}; +\node at (0,0.5) [above left] {$\frac12$}; +\end{scope} + +\draw[->] (-6.7,0) -- (6.9,0) coordinate[label={$C(x)$}];; +\draw[->] (0,-5.8) -- (0,6.1) coordinate[label={left:$S(x)$}];; + +\end{tikzpicture} +\end{document} + diff --git a/buch/papers/fresnel/images/fresnelgraph.pdf b/buch/papers/fresnel/images/fresnelgraph.pdf new file mode 100644 index 0000000..c658901 Binary files /dev/null and b/buch/papers/fresnel/images/fresnelgraph.pdf differ diff --git a/buch/papers/fresnel/images/fresnelgraph.tex b/buch/papers/fresnel/images/fresnelgraph.tex new file mode 100644 index 0000000..20df951 --- /dev/null +++ b/buch/papers/fresnel/images/fresnelgraph.tex @@ -0,0 +1,46 @@ +% +% fresnelgraph.tex -- Graphs of the fresnel functions +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{amsmath} +\usepackage{times} +\usepackage{txfonts} +\usepackage{pgfplots} +\usepackage{csvsimple} +\usetikzlibrary{arrows,intersections,math} +\begin{document} +\def\skala{1} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +\input{eulerpath.tex} +\def\dx{1.3} +\def\dy{2.6} + +\draw[color=gray] (0,{0.5*\dy}) -- ({5*\dx},{0.5*\dy}); +\draw[color=gray] (0,{-0.5*\dy}) -- ({-5*\dx},{-0.5*\dy}); + +\draw[color=blue,line width=1.4pt] \Splotright; +\draw[color=blue,line width=1.4pt] \Splotleft; + +\draw[color=red,line width=1.4pt] \Cplotright; +\draw[color=red,line width=1.4pt] \Cplotleft; + +\draw[->] (-6.7,0) -- (6.9,0) coordinate[label={$x$}]; +\draw[->] (0,-2.3) -- (0,2.3) coordinate[label={$y$}]; + +\foreach \x in {1,2,3,4,5}{ + \draw ({\x*\dx},-0.05) -- ({\x*\dx},0.05); + \draw ({-\x*\dx},-0.05) -- ({-\x*\dx},0.05); + \node at ({\x*\dx},-0.05) [below] {$\x$}; + \node at ({-\x*\dx},0.05) [above] {$-\x$}; +} +\draw (-0.05,{0.5*\dy}) -- (0.05,{0.5*\dy}); +\node at (-0.05,{0.5*\dy}) [left] {$\frac12$}; +\draw (-0.05,{-0.5*\dy}) -- (0.05,{-0.5*\dy}); +\node at (0.05,{-0.5*\dy}) [right] {$-\frac12$}; + +\end{tikzpicture} +\end{document} + diff --git a/buch/papers/fresnel/images/kruemmung.pdf b/buch/papers/fresnel/images/kruemmung.pdf new file mode 100644 index 0000000..1180116 Binary files /dev/null and b/buch/papers/fresnel/images/kruemmung.pdf differ diff --git a/buch/papers/fresnel/images/kruemmung.tex b/buch/papers/fresnel/images/kruemmung.tex new file mode 100644 index 0000000..af0a1a9 --- /dev/null +++ b/buch/papers/fresnel/images/kruemmung.tex @@ -0,0 +1,51 @@ +% +% kruemmung.tex -- Krümmung einer ebenen Kurve +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{amsmath} +\usepackage{times} +\usepackage{txfonts} +\usepackage{pgfplots} +\usepackage{csvsimple} +\usetikzlibrary{arrows,intersections,math,calc} +\begin{document} +\def\skala{1} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +\begin{scope} +\clip (-1,-1) rectangle (4,4); + +\def\r{3} +\def\winkel{30} + +\fill[color=blue!20] (0,0) -- (0:{0.6*\r}) arc (0:\winkel:{0.6*\r}) -- cycle; +\fill[color=blue!20] (\winkel:\r) + -- ($(\winkel:\r)+(0,{0.6*\r})$) arc (90:{90+\winkel}:{0.6*\r}) -- cycle; +\node[color=blue] at ({0.5*\winkel}:{0.45*\r}) {$\Delta\varphi$}; + +\node[color=blue] at ($(\winkel:\r)+({90+0.5*\winkel}:{0.45*\r})$) + {$\Delta\varphi$}; + +\draw[line width=0.3pt] (0,0) circle[radius=\r]; + +\draw[->] (0,0) -- (0:\r); +\draw[->] (0,0) -- (\winkel:\r); + +\draw[->] (0:\r) -- ($(0:\r)+(90:0.7*\r)$); +\draw[->] (\winkel:\r) -- ($(\winkel:\r)+({90+\winkel}:0.7*\r)$); +\draw[->,color=gray] (\winkel:\r) -- ($(\winkel:\r)+(0,0.7*\r)$); + +\draw[color=red,line width=1.4pt] (0:\r) arc (0:\winkel:\r); +\node[color=red] at ({0.5*\winkel}:\r) [left] {$\Delta s$}; +\fill[color=red] (0:\r) circle[radius=0.05]; +\fill[color=red] (\winkel:\r) circle[radius=0.05]; + +\node at (\winkel:{0.5*\r}) [above] {$r$}; +\node at (0:{0.5*\r}) [below] {$r$}; +\end{scope} + +\end{tikzpicture} +\end{document} + diff --git a/buch/papers/fresnel/images/pfad.pdf b/buch/papers/fresnel/images/pfad.pdf new file mode 100644 index 0000000..df3c7af Binary files /dev/null and b/buch/papers/fresnel/images/pfad.pdf differ diff --git a/buch/papers/fresnel/images/pfad.tex b/buch/papers/fresnel/images/pfad.tex new file mode 100644 index 0000000..680cd78 --- /dev/null +++ b/buch/papers/fresnel/images/pfad.tex @@ -0,0 +1,37 @@ +% +% pfad.tex -- template for standalon tikz images +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{amsmath} +\usepackage{times} +\usepackage{txfonts} +\usepackage{pgfplots} +\usepackage{csvsimple} +\usetikzlibrary{arrows,intersections,math} +\begin{document} +\def\skala{1} +\definecolor{darkgreen}{rgb}{0,0.6,0} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +\fill[color=gray!40] (0,0) -- (2,0) arc (0:45:2) -- cycle; +\node at (22.5:1.4) {$\displaystyle\frac{\pi}4$}; + +\draw[->] (-1,0) -- (9,0) coordinate[label={$\operatorname{Re}$}]; +\draw[->] (0,-1) -- (0,6) coordinate[label={left:$\operatorname{Im}$}]; + +\draw[->,color=red,line width=1.4pt] (0,0) -- (7,0); +\draw[->,color=blue,line width=1.4pt] (7,0) arc (0:45:7); +\draw[->,color=darkgreen,line width=1.4pt] (45:7) -- (0,0); + +\node[color=red] at (3.5,0) [below] {$\gamma_1(t) = tR$}; +\node[color=blue] at (25:7) [right] {$\gamma_2(t) = Re^{it}$}; +\node[color=darkgreen] at (45:3.5) [above left] {$\gamma_3(t) = te^{i\pi/4}$}; + +\node at (7,0) [below] {$R$}; +\node at (45:7) [above] {$Re^{i\pi/4}$}; + +\end{tikzpicture} +\end{document} + diff --git a/buch/papers/fresnel/images/schale.pdf b/buch/papers/fresnel/images/schale.pdf new file mode 100644 index 0000000..9c21951 Binary files /dev/null and b/buch/papers/fresnel/images/schale.pdf differ diff --git a/buch/papers/fresnel/images/schale.pov b/buch/papers/fresnel/images/schale.pov new file mode 100644 index 0000000..085a6a4 --- /dev/null +++ b/buch/papers/fresnel/images/schale.pov @@ -0,0 +1,191 @@ +// +// schale.pov -- +// +// (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +// +#version 3.7; +#include "colors.inc" + +#declare O = <0,0,0>; + +global_settings { + assumed_gamma 1 +} + +#declare imagescale = 0.036; + +camera { + location <40, 20, -20> + look_at <0, 0.5, 0> + right 16/9 * x * imagescale + up y * imagescale +} + +light_source { + <10, 10, -40> color White + area_light <1,0,0> <0,0,1>, 10, 10 + adaptive 1 + jitter +} + +sky_sphere { + pigment { + color rgb<1,1,1> + } +} + +sphere { + <0, 0, 0>, 1 + pigment { + color rgb<0.8,0.8,0.8> + } + finish { + specular 0.95 + metallic + } +} + +#declare stripcolor = rgb<0.2,0.2,0.8>; + +#declare R = 1.002; + +#macro punkt(phi,theta) +R * < cos(phi) * cos(theta), sin(theta), sin(phi) * cos(theta) > +#end + +#declare N = 24; +#declare thetaphi = 0.01; +#declare thetawidth = pi * 0.008; +#declare theta = function(phi) { phi * thetaphi } + +#declare axisdiameter = 0.007; + +cylinder { + < 0, -2, 0>, < 0, 2, 0>, axisdiameter + pigment { + color White + } + finish { + specular 0.95 + metallic + } +} + +#declare curvaturecircle = 0.008; +#declare curvaturecirclecolor = rgb<0.4,0.8,0.4>; + +#declare phit = 12.8 * 2 * pi; +#declare P = punkt(phit, theta(phit)); +#declare Q = <0, R / sin(theta(phit)), 0>; + +#declare e1 = vnormalize(P - Q) / tan(theta(phit)); +#declare e2 = vnormalize(vcross(e1, <0,1,0>)) / tan(theta(phit)); +#declare psimin = -0.1 * pi; +#declare psimax = 0.1 * pi; +#declare psistep = (psimax - psimin) / 30; + +union { + #declare psi = psimin; + #declare K = Q + cos(psi) * e1 + sin(psi) * e2; + #while (psi < psimax - psistep/2) + sphere { K, curvaturecircle } + #declare psi = psi + psistep; + #declare K2 = Q + cos(psi) * e1 + sin(psi) * e2; + cylinder { K, K2, curvaturecircle } + #declare K = K2; + #end + sphere { K, curvaturecircle } + pigment { + color curvaturecirclecolor + } + finish { + specular 0.95 + metallic + } +} + +object { + mesh { + #declare psi = psimin; + #declare K = Q + cos(psi) * e1 + sin(psi) * e2; + #while (psi < psimax - psistep/2) + #declare psi = psi + psistep; + #declare K2 = Q + cos(psi) * e1 + sin(psi) * e2; + triangle { K, K2, Q } + #declare K = K2; + #end + } + pigment { + color rgbt<0.4,0.8,0.4,0.5> + } + finish { + specular 0.95 + metallic + } +} + +union { + sphere { P, 0.02 } + sphere { Q, 0.02 } + cylinder { P, Q, 0.01 } + pigment { + color Red + } + finish { + specular 0.95 + metallic + } +} + +#declare phisteps = 300; +#declare phistep = 2 * pi / phisteps; +#declare phimin = 0; +#declare phimax = N * 2 * pi; + +object { + mesh { + #declare phi = phimin; + #declare Poben = punkt(phi, theta(phi) + thetawidth); + #declare Punten = punkt(phi, theta(phi) - thetawidth); + triangle { O, Punten, Poben } + #while (phi < phimax - phistep/2) + #declare phi = phi + phistep; + #declare Poben2 = punkt(phi, theta(phi) + thetawidth); + #declare Punten2 = punkt(phi, theta(phi) - thetawidth); + triangle { O, Punten, Punten2 } + triangle { O, Poben, Poben2 } + triangle { Punten, Punten2, Poben } + triangle { Punten2, Poben2, Poben } + #declare Poben = Poben2; + #declare Punten = Punten2; + #end + triangle { O, Punten, Poben } + } + pigment { + color stripcolor + } + finish { + specular 0.8 + metallic + } +} + +union { + #declare phi = phimin; + #declare P = punkt(phi, theta(phi)); + #while (phi < phimax - phistep/2) + sphere { P, 0.003 } + #declare phi = phi + phistep; + #declare P2 = punkt(phi, theta(phi)); + cylinder { P, P2, 0.003 } + #declare P = P2; + #end + sphere { P, 0.003 } + pigment { + color stripcolor + } + finish { + specular 0.8 + metallic + } +} diff --git a/buch/papers/fresnel/images/schale.tex b/buch/papers/fresnel/images/schale.tex new file mode 100644 index 0000000..577ede4 --- /dev/null +++ b/buch/papers/fresnel/images/schale.tex @@ -0,0 +1,77 @@ +% +% schlange.tex +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{times} +\usepackage{amsmath} +\usepackage{txfonts} +\usepackage[utf8]{inputenc} +\usepackage{graphics} +\usetikzlibrary{arrows,intersections,math,calc} +\usepackage{ifthen} +\begin{document} + +\newboolean{showgrid} +\setboolean{showgrid}{false} +\def\breite{4} +\def\hoehe{4} +\def\a{47} +\def\r{3.3} +\def\skala{0.95} + +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +\begin{scope}[xshift=-7.4cm,yshift=-1.2cm] + \clip (-3.6,-2.2) rectangle (3.6,5.1); + + \fill[color=blue!20] (0,0) + -- ({180-\a}:{0.4*\r}) arc ({180-\a}:180:{0.4*\r}) + -- cycle; + \node[color=blue] at ({180-\a/2}:{0.3*\r}) {$\vartheta$}; + + \fill[color=blue!20] (0,{\r/sin(\a)}) + -- ($(0,{\r/sin(\a)})+({270-\a}:{0.3*\r})$) + arc ({270-\a}:270:{0.3*\r}) + -- cycle; + \node[color=blue] at ($(0,{\r/sin(\a)})+({270-\a/2}:{0.2*\r})$) + {$\vartheta$}; + + + \draw (0,0) circle[radius=\r]; + \draw[->] (0,-3.0) -- (0,5); + \draw ({-\r-0.2},0) -- ({\r+0.2},0); + \fill (0,0) circle[radius=0.06]; + + \draw (0,0) -- ({180-\a}:\r); + \node at ({180-\a+3}:{0.65*\r}) [above right] {$1$}; + + \draw[color=red,line width=1.4pt] + ({180-\a}:\r) -- (0,{\r/cos(90-\a)}); + \fill[color=red] ({180-\a}:\r) circle[radius=0.08]; + \fill[color=red] (0,{\r/cos(90-\a)}) circle[radius=0.08]; + \node[color=red] at (-1.0,3.7) [left] {$r=\cot\vartheta$}; + \node[color=red] at ({180-\a}:\r) [above left] {$P$}; + \node[color=red] at (0,{\r/sin(\a)}) [right] {$Q$}; +\end{scope} + +% Povray Bild +\node at (0,0) {\includegraphics[width=7.6cm]{schale.jpg}}; + +% Gitter +\ifthenelse{\boolean{showgrid}}{ +\draw[step=0.1,line width=0.1pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw[step=0.5,line width=0.4pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw (-\breite,-\hoehe) grid (\breite, \hoehe); +\fill (0,0) circle[radius=0.05]; +}{} + +\node[color=red] at (-1.4,1.4) {$r$}; +\node[color=red] at (-2.2,-0.2) {$P$}; +\node[color=red] at (0,3.3) [right] {$Q$}; + +\end{tikzpicture} + +\end{document} + diff --git a/buch/papers/fresnel/main.tex b/buch/papers/fresnel/main.tex index e6ee3b5..2050fd4 100644 --- a/buch/papers/fresnel/main.tex +++ b/buch/papers/fresnel/main.tex @@ -8,6 +8,11 @@ \begin{refsection} \chapterauthor{Andreas Müller} +{\parindent0pt Die} Fresnel-Integrale tauchen in der Untersuchung der Beugung +in paraxialer Näherung auf, auch bekannt als die Fresnel-Approximation. +In diesem Kapitel betrachen wir jedoch nur die geometrische +Anwendung der Fresnel-Integrale als Parametrisierung der Euler-Spirale +und zeigen, dass letztere eine Klothoide ist. \input{papers/fresnel/teil0.tex} \input{papers/fresnel/teil1.tex} diff --git a/buch/papers/fresnel/pfad.pdf b/buch/papers/fresnel/pfad.pdf deleted file mode 100644 index ff514cc..0000000 Binary files a/buch/papers/fresnel/pfad.pdf and /dev/null differ diff --git a/buch/papers/fresnel/pfad.tex b/buch/papers/fresnel/pfad.tex deleted file mode 100644 index 5439a71..0000000 --- a/buch/papers/fresnel/pfad.tex +++ /dev/null @@ -1,34 +0,0 @@ -% -% pfad.tex -- template for standalon tikz images -% -% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule -% -\documentclass[tikz]{standalone} -\usepackage{amsmath} -\usepackage{times} -\usepackage{txfonts} -\usepackage{pgfplots} -\usepackage{csvsimple} -\usetikzlibrary{arrows,intersections,math} -\begin{document} -\def\skala{1} -\definecolor{darkgreen}{rgb}{0,0.6,0} -\begin{tikzpicture}[>=latex,thick,scale=\skala] - -\draw[->] (-1,0) -- (9,0) coordinate[label={$\operatorname{Re}$}]; -\draw[->] (0,-1) -- (0,6) coordinate[label={left:$\operatorname{Im}$}]; - -\draw[->,color=red,line width=1.4pt] (0,0) -- (7,0); -\draw[->,color=blue,line width=1.4pt] (7,0) arc (0:45:7); -\draw[->,color=darkgreen,line width=1.4pt] (45:7) -- (0,0); - -\node[color=red] at (3.5,0) [below] {$\gamma_1(t) = tR$}; -\node[color=blue] at (25:7) [right] {$\gamma_2(t) = Re^{it}$}; -\node[color=darkgreen] at (45:3.5) [above left] {$\gamma_3(t) = te^{i\pi/4}$}; - -\node at (7,0) [below] {$R$}; -\node at (45:7) [above] {$Re^{i\pi/4}$}; - -\end{tikzpicture} -\end{document} - diff --git a/buch/papers/fresnel/references.bib b/buch/papers/fresnel/references.bib index 58e9242..cf8fb21 100644 --- a/buch/papers/fresnel/references.bib +++ b/buch/papers/fresnel/references.bib @@ -44,3 +44,9 @@ title = { Fresnel Integral }, date = { 2022-05-13 } } + +@online{fresnel:schale, + url = { https://www.youtube.com/watch?v=D3tdW9l1690 }, + title = { A Strange Map Projection (Euler Spiral) - Numberphile }, + date = { 2022-05-14 } +} diff --git a/buch/papers/fresnel/teil0.tex b/buch/papers/fresnel/teil0.tex index 253e2f3..85b8bf7 100644 --- a/buch/papers/fresnel/teil0.tex +++ b/buch/papers/fresnel/teil0.tex @@ -20,7 +20,7 @@ C(x) &= \int_0^x \cos\biggl(\frac{\pi}2 t^2\biggr)\,dt \\ S(x) &= \int_0^x \sin\biggl(\frac{\pi}2 t^2\biggr)\,dt \end{align*} -heissen die Fesnel-Integrale. +heissen die Fresnel-Integrale. \end{definition} Der Faktor $\frac{\pi}2$ ist einigermassen willkürlich, man könnte @@ -39,7 +39,7 @@ C(x) &= C_{\frac{\pi}2}(x), S(x) &= S_{\frac{\pi}2}(x). \end{aligned} \] -Durch eine Substution $t=bs$ erhält man +Durch eine Substitution $t=bs$ erhält man \begin{align*} C_a(x) &= @@ -91,7 +91,7 @@ $C_1(x)$ und $S_1(x)$ betrachten, da in diesem Fall die Formeln einfacher werden. \begin{figure} \centering -\includegraphics{papers/fresnel/fresnelgraph.pdf} +\includegraphics{papers/fresnel/images/fresnelgraph.pdf} \caption{Graph der Funktionen $C(x)$ ({\color{red}rot}) und $S(x)$ ({\color{blue}blau}) \label{fresnel:figure:plot}} diff --git a/buch/papers/fresnel/teil1.tex b/buch/papers/fresnel/teil1.tex index a41ddb7..c716cd7 100644 --- a/buch/papers/fresnel/teil1.tex +++ b/buch/papers/fresnel/teil1.tex @@ -8,7 +8,7 @@ \rhead{Euler-Spirale} \begin{figure} \centering -\includegraphics{papers/fresnel/eulerspirale.pdf} +\includegraphics{papers/fresnel/images/eulerspirale.pdf} \caption{Die Eulerspirale ist die Kurve mit der Parameterdarstellung $x\mapsto (C(x),S(x))$, sie ist rot dargestellt. Sie windet sich unendlich oft um die beiden Punkte $(\pm\frac12,\pm\frac12)$. @@ -25,7 +25,7 @@ $(\pm\frac12,\pm\frac12)$ zu winden. \begin{figure} \centering -\includegraphics{papers/fresnel/pfad.pdf} +\includegraphics{papers/fresnel/images/pfad.pdf} \caption{Pfad zur Berechnung der Grenzwerte $C_1(\infty)$ und $S_1(\infty)$ mit Hilfe des Cauchy-Integralsatzes \label{fresnel:figure:pfad}} @@ -182,7 +182,7 @@ muss, folgt $C_1(\infty)=S_1(\infty)$. Nach Multlikation mit $\sqrt{2}$ folgt aus der Tatsache, dass auch der Realteil verschwinden muss \[ -\frac{\sqrt{\pi}}{\sqrt{2}} = C_1(\infty)+S_1(\infty) +\sqrt{\frac{\pi}{2}} = C_1(\infty)+S_1(\infty) \qquad \Rightarrow \qquad @@ -190,7 +190,10 @@ C_1(\infty) = S_1(\infty) = -\frac{\sqrt{\pi}}{2\sqrt{2}}. +\frac12 +\sqrt{ +\frac{\pi}{2} +}. \] Aus \eqref{fresnel:equation:arg} diff --git a/buch/papers/fresnel/teil2.tex b/buch/papers/fresnel/teil2.tex index 22d2a89..ec8c896 100644 --- a/buch/papers/fresnel/teil2.tex +++ b/buch/papers/fresnel/teil2.tex @@ -15,10 +15,165 @@ Eine ebene Kurve, deren Krümmung proportionale zur Kurvenlänge ist, heisst {\em Klothoide}. \end{definition} -Die Klothoide wird zum Beispiel im Strassenbau bei Autobahnkurven -angewendet. -Fährt man mit konstanter Geschwindigkeit mit entlang einer Klothoide, +Die Klothoide wird zum Beispiel im Strassenbau für Autobahnkurven +verwendet. +Fährt man mit konstanter Geschwindigkeit entlang einer Klothoide, muss man die Krümmung mit konstaner Geschwindigkeit ändern, also das Lenkrad mit konstanter Geschwindigkeit drehen. Dies ermöglicht eine ruhige Fahrweise. +\subsection{Krümmung einer ebenen Kurve} +\begin{figure} +\centering +\includegraphics{papers/fresnel/images/kruemmung.pdf} +\caption{Berechnung der Krümmung einer ebenen Kurve. +\label{fresnel:figure:kruemmung}} +\end{figure} +Abbildung~\ref{fresnel:figure:kruemmung} erinnert daran, dass der +Bogen eines Kreises vom Radius $r$, entlang dem sich die Richtung +der Tangente um $\Delta\varphi$ ändert, die Länge +$\Delta s = r\Delta\varphi$. +Die Krümmung ist der Kehrwert des Krümmungsradius, daraus kann +man ablesen, dass +\[ +\kappa = \frac{1}{r} = \frac{\Delta \varphi}{\Delta s}. +\] +Für eine beliebige ebene Kurve ist daher die Krümmung +\[ +\kappa = \frac{d\varphi}{ds}. +\] + +\subsection{Krümmung der Euler-Spirale} +Wir betrachten jetzt die Euler-Spirale mit der Parametrisierung +$\gamma(s) = (C_1(s),S_1(s))$. +Zunächst stellen wir fest, dass die Länge der Tangente +\[ +\dot{\gamma}(s) += +\frac{d\gamma}{ds} += +\begin{pmatrix} +\dot{C}_1(s)\\ +\dot{S}_1(s) +\end{pmatrix} += +\begin{pmatrix} +\cos s^2\\ +\sin s^2 +\end{pmatrix} +\qquad\Rightarrow\qquad +|\dot{\gamma}(s)| += +\sqrt{\cos^2s^2+\sin^2s^2} += +1. +\] +Insbesondere ist der Parameter $s$ der Kurve $\gamma(s)$ die +Bogenlänge. + +Der zu $\dot{\gamma}(s)$ gehörige Polarwinkel kann aus dem Vergleich +mit einem Vektor mit bekanntem Polarwinkel $\varphi$ abgelesen werden: +\[ +\begin{pmatrix} +\cos \varphi\\ +\sin \varphi +\end{pmatrix} += +\dot{\gamma}(s) += +\begin{pmatrix} +\cos s^2\\\sin s^2 +\end{pmatrix}, +\] +der Polarwinkel +ist daher $\varphi = s^2$. +Die Krümmung ist die Ableitung des Polarwinkels nach $s$, also +\[ +\kappa += +\frac{d\varphi}{ds} += +\frac{ds^2}{ds} += +2s, +\] +sie ist somit proportional zur Bogenlänge $s$. +Damit folgt, dass die Euler-Spirale eine Klothoide ist. + +\subsection{Eine Kugel schälen} +\begin{figure} +\centering +\includegraphics[width=\textwidth]{papers/fresnel/images/schale.pdf} +\caption{Schält man eine einen Streifen konstanter Breite beginnend am +Äquator von einer Kugel ab und breitet ihn in der Ebene aus, entsteht +eine Klothoide. +\label{fresnel:figure:schale}} +\end{figure} +\begin{figure} +\centering +\includegraphics{papers/fresnel/images/apfel.pdf} +\caption{Klothoide erhalten durch Abschälen eines Streifens von einem +Apfel (vgl.~Abbildung~\ref{fresnel:figure:schale}) +\label{fresnel:figure:apfel}} +\end{figure} +Schält man einen Streifen konstanter Breite beginnend parallel zum Äquator +von einer Kugel ab und breitet ihn in die Ebene aus, entsteht eine +Approximation einer Klothoide. +Abbildung~\ref{fresnel:figure:schale} zeigt blau den abgeschälten Streifen, +Abbildung~\ref{fresnel:figure:apfel} zeigt das Resultat dieses Versuches +an einem Apfel, das Youtube-Video \cite{fresnel:schale} des +Numberphile-Kanals illustriert das Problem anhand eines aufblasbaren +Globus. + +Windet sich die Kurve in Abbildung~\ref{fresnel:figure:schale} $n$ +mal um die vertikale Achse, bevor sie den Nordpol erreicht, dann kann +die Kurve mit der Funktion +\[ +\gamma(t) += +\begin{pmatrix} +\cos(t) \cos(t/n) \\ +\sin(t) \cos(t/n) \\ +\sin(t/n) +\end{pmatrix} +\] +parametrisiert werden. +Der Tangentialvektor +\[ +\dot{\gamma}(t) += +\begin{pmatrix} +-\sin(t)\cos(t/n) - \cos(t)\sin(t/n)/n \\ +\cos(t)\cos(t/n) - \sin(t)\sin(t/n)/n \\ +\cos(t/n)/n +\end{pmatrix} +\] +hat die Länge +\[ +| \dot{\gamma}(t) |^2 += +\frac{1}{n^2} ++ +\cos^2\frac{t}{n}. +\] +Die Ableitung der Bogenlänge ist daher +\[ +\dot{s}(t) += +\sqrt{ +\frac{1}{n^2} ++ +\cos^2\frac{t}{n} +}. +\] + + +Der Krümmungsradius des blauen Streifens, der die Kugel im Punkt $P$ bei +geographischer $\vartheta$ berührt, hat die Länge der Tangente, die +die Kugel im Punkt $P$ berührt und im Punkt $Q$ durch die Achse der +Kugel geht (Abbildung~\ref{fresnel:figure:schale}). +Die Krümmung in Abhängigkeit von $\vartheta$ ist daher $\tan\vartheta$. + + + + diff --git a/buch/papers/fresnel/teil3.tex b/buch/papers/fresnel/teil3.tex index 37e6bee..ceddbe0 100644 --- a/buch/papers/fresnel/teil3.tex +++ b/buch/papers/fresnel/teil3.tex @@ -42,8 +42,8 @@ C'(x) = \cos \biggl(\frac{\pi}2 x^2\biggr) \qquad\text{und}\qquad S'(x) = \sin \biggl(\frac{\pi}2 x^2\biggr) \] -erfüllen, kann man eine Methode zur Lösung von Differentialgleichung -verwenden. +erfüllen, kann man eine Methode zur numerischen Lösung von +Differentialgleichung verwenden. Die Abbildungen~\ref{fresnel:figure:plot} und \ref{fresnel:figure:eulerspirale} wurden auf diese Weise erzeugt. -- cgit v1.2.1 From 0fe9bb56da147bf7986852e6f657149206d967a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Thu, 19 May 2022 17:31:23 +0200 Subject: fixes --- buch/papers/nav/Makefile.inc | 1 - buch/papers/nav/nautischesdreieck.tex | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/buch/papers/nav/Makefile.inc b/buch/papers/nav/Makefile.inc index 24ab4ee..5e86543 100644 --- a/buch/papers/nav/Makefile.inc +++ b/buch/papers/nav/Makefile.inc @@ -8,7 +8,6 @@ dependencies-nav = \ papers/nav/main.tex \ papers/nav/einleitung.tex \ papers/nav/flatearth.tex \ - papers/nav/geschichte.tex \ papers/nav/nautischesdreieck.tex \ papers/nav/sincos.tex \ papers/nav/trigo.tex \ diff --git a/buch/papers/nav/nautischesdreieck.tex b/buch/papers/nav/nautischesdreieck.tex index 0a498f0..c1ad38a 100644 --- a/buch/papers/nav/nautischesdreieck.tex +++ b/buch/papers/nav/nautischesdreieck.tex @@ -195,4 +195,4 @@ Für die Geographische Länge $\lambda$ des eigenen Standortes muss man den Wink Somit ist \[ \omega=\sin^{-1}[\sin(pc) \cdot \frac{\sin(\gamma)}{\sin(l)}] \]und unsere gesuchte geographische Länge schlussendlich \[\lambda=\lambda_1 - \omega\] -mit $\lambda_1$=Längengrad Bildpunkt $X +mit $\lambda_1$=Längengrad Bildpunkt $X$ -- cgit v1.2.1 From f0a6f930187eb0226ddd4735feba1d93667b8a58 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Thu, 19 May 2022 22:12:27 +0200 Subject: add dreieck3d9.pov --- buch/papers/nav/images/Makefile | 7 ++++ buch/papers/nav/images/common.inc | 60 +++++++++++++++++++------------ buch/papers/nav/images/dreieck3d9.pov | 66 +++++++++++++++++++++++++++++++++++ 3 files changed, 111 insertions(+), 22 deletions(-) create mode 100644 buch/papers/nav/images/dreieck3d9.pov diff --git a/buch/papers/nav/images/Makefile b/buch/papers/nav/images/Makefile index bbdea2f..da4defa 100644 --- a/buch/papers/nav/images/Makefile +++ b/buch/papers/nav/images/Makefile @@ -114,3 +114,10 @@ dreieck3d8.jpg: dreieck3d8.png dreieck3d8.pdf: dreieck3d8.tex dreieck3d8.jpg pdflatex dreieck3d8.tex +dreieck3d9.png: dreieck3d9.pov common.inc + povray +A0.1 $(POVRAYOPTIONS) -Odreieck3d9.png dreieck3d9.pov +dreieck3d9.jpg: dreieck3d9.png + convert dreieck3d9.png -density 300 -units PixelsPerInch dreieck3d9.jpg +dreieck3d9.pdf: dreieck3d9.tex dreieck3d9.jpg + pdflatex dreieck3d9.tex + diff --git a/buch/papers/nav/images/common.inc b/buch/papers/nav/images/common.inc index e2a1ed0..2c0ae6e 100644 --- a/buch/papers/nav/images/common.inc +++ b/buch/papers/nav/images/common.inc @@ -12,6 +12,7 @@ global_settings { #declare imagescale = 0.034; +#declare O = <0, 0, 0>; #declare A = vnormalize(< 0, 1, 0>); #declare B = vnormalize(< 1, 2, -8>); #declare C = vnormalize(< 5, 1, 0>); @@ -102,8 +103,8 @@ union { #declare pp = vnormalize(p - vdot(n, p) * n); #declare qq = vnormalize(q - vdot(n, q) * n); intersection { - sphere { <0, 0, 0>, 1 + staerke } - cone { <0, 0, 0>, 0, 1.2 * vnormalize(w), r } + sphere { O, 1 + staerke } + cone { O, 0, 1.2 * vnormalize(w), r } plane { -vcross(n, qq) * vdot(vcross(n, qq), pp), 0 } plane { -vcross(n, pp) * vdot(vcross(n, pp), qq), 0 } } @@ -132,6 +133,35 @@ union { } #end +#macro ebenerwinkel(a, p, q, s, r, farbe) + #declare n = vnormalize(-vcross(p, q)); + #declare np = vnormalize(-vcross(p, n)); + #declare nq = -vnormalize(-vcross(q, n)); +// arrow(a, a + n, 0.02, White) +// arrow(a, a + np, 0.01, Red) +// arrow(a, a + nq, 0.01, Blue) + intersection { + cylinder { a - (s/2) * n, a + (s/2) * n, r } + plane { np, vdot(np, a) } + plane { nq, vdot(nq, a) } + pigment { + farbe + } + finish { + metallic + specular 0.5 + } + } +#end + +#macro komplement(a, p, q, s, r, farbe) + #declare n = vnormalize(-vcross(p, q)); +// arrow(a, a + n, 0.015, Orange) + #declare m = vnormalize(-vcross(q, n)); +// arrow(a, a + m, 0.015, Pink) + ebenerwinkel(a, p, m, s, r, farbe) +#end + #declare fett = 0.015; #declare fein = 0.010; @@ -143,29 +173,15 @@ union { #declare gruen = rgb<0,0.6,0>; #declare blau = rgb<0.2,0.2,0.8>; +#declare kugelfarbe = rgb<0.8,0.8,0.8>; +#declare kugeltransparent = rgbt<0.8,0.8,0.8,0.5>; + +#macro kugel(farbe) sphere { <0, 0, 0>, 1 pigment { - color rgb<0.8,0.8,0.8> + color farbe } } +#end -//union { -// sphere { A, 0.02 } -// sphere { B, 0.02 } -// sphere { C, 0.02 } -// sphere { P, 0.02 } -// pigment { -// color Red -// } -//} - -//union { -// winkel(A, B, C) -// winkel(B, P, C) -// seite(B, C, 0.01) -// seite(B, P, 0.01) -// pigment { -// color rgb<0,0.6,0> -// } -//} diff --git a/buch/papers/nav/images/dreieck3d9.pov b/buch/papers/nav/images/dreieck3d9.pov new file mode 100644 index 0000000..24d3843 --- /dev/null +++ b/buch/papers/nav/images/dreieck3d9.pov @@ -0,0 +1,66 @@ +// +// dreiecke3d8.pov +// +// (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +// +#include "common.inc" + +//union { +// seite(A, B, fein) +// seite(B, C, fein) +// seite(A, C, fein) +// seite(A, P, fein) +// seite(B, P, fett) +// seite(C, P, fett) +// punkt(A, fein) +// punkt(B, fett) +// punkt(C, fett) +// punkt(P, fett) +// pigment { +// color dreieckfarbe +// } +// finish { +// specular 0.95 +// metallic +// } +//} + +//dreieck(A, B, C, White) + +kugel(kugeltransparent) + +ebenerwinkel(O, C, P, 0.01, 1.001, rot) +ebenerwinkel(P, C, P, 0.01, 0.3, rot) +komplement(P, C, P, 0.01, 0.3, Yellow) + +ebenerwinkel(O, B, P, 0.01, 1.001, blau) +ebenerwinkel(P, B, P, 0.01, 0.3, blau) +komplement(P, B, P, 0.01, 0.3, Green) + +arrow(B, 1.5 * B, 0.015, White) +arrow(C, 1.5 * C, 0.015, White) +arrow(P, 1.5 * P, 0.015, White) + +union { + cylinder { O, P, 0.7 * fein } + + cylinder { P, P + 3 * B, 0.7 * fein } + cylinder { O, B + 3 * B, 0.7 * fein } + + cylinder { P, P + 3 * C, 0.7 * fein } + cylinder { O, C + 3 * C, 0.7 * fein } + + pigment { + color White + } +} + +#declare imagescale = 0.044; + +camera { + location <40, 20, -20> + look_at <0, 0.24, -0.20> + right x * imagescale + up y * imagescale +} + -- cgit v1.2.1 From 5187a5a947c0283e9f3d7fbc2acef96278109939 Mon Sep 17 00:00:00 2001 From: Joshua Baer Date: Fri, 20 May 2022 18:14:40 +0200 Subject: presentation FM-Bessel --- buch/papers/fm/.vscode/settings.json | 3 + buch/papers/fm/Python animation/Bessel-FM.ipynb | 164 ++++++++++------ buch/papers/fm/RS presentation/FM_presentation.pdf | Bin 0 -> 357597 bytes buch/papers/fm/RS presentation/FM_presentation.tex | 125 ++++++++++++ ...quency modulation (FM) and Bessel functions.pdf | Bin 0 -> 159598 bytes buch/papers/fm/RS presentation/README.txt | 1 + buch/papers/fm/RS presentation/RS.tex | 209 +++++++++------------ buch/papers/fm/RS presentation/images/100HZ.png | Bin 0 -> 8601 bytes buch/papers/fm/RS presentation/images/200HZ.png | Bin 0 -> 8502 bytes buch/papers/fm/RS presentation/images/300HZ.png | Bin 0 -> 9059 bytes buch/papers/fm/RS presentation/images/400HZ.png | Bin 0 -> 9949 bytes buch/papers/fm/RS presentation/images/bessel.png | Bin 0 -> 40393 bytes buch/papers/fm/RS presentation/images/bessel2.png | Bin 0 -> 102494 bytes .../fm/RS presentation/images/bessel_beta1.png | Bin 0 -> 40696 bytes .../fm/RS presentation/images/bessel_frequenz.png | Bin 0 -> 11264 bytes .../fm/RS presentation/images/beta_0.001.png | Bin 0 -> 6233 bytes buch/papers/fm/RS presentation/images/beta_0.1.png | Bin 0 -> 6630 bytes buch/papers/fm/RS presentation/images/beta_0.5.png | Bin 0 -> 8167 bytes buch/papers/fm/RS presentation/images/beta_1.png | Bin 0 -> 11303 bytes buch/papers/fm/RS presentation/images/beta_2.png | Bin 0 -> 14703 bytes buch/papers/fm/RS presentation/images/beta_3.png | Bin 0 -> 20377 bytes buch/papers/fm/RS presentation/images/fm_10Hz.png | Bin 0 -> 6781 bytes buch/papers/fm/RS presentation/images/fm_20hz.png | Bin 0 -> 7834 bytes buch/papers/fm/RS presentation/images/fm_30Hz.png | Bin 0 -> 8601 bytes buch/papers/fm/RS presentation/images/fm_3Hz.png | Bin 0 -> 6558 bytes buch/papers/fm/RS presentation/images/fm_40Hz.png | Bin 0 -> 8795 bytes buch/papers/fm/RS presentation/images/fm_5Hz.png | Bin 0 -> 5766 bytes buch/papers/fm/RS presentation/images/fm_7Hz.png | Bin 0 -> 6337 bytes .../fm/RS presentation/images/fm_frequenz.png | Bin 0 -> 11042 bytes .../fm/RS presentation/images/fm_in_time.png | Bin 0 -> 27400 bytes buch/papers/fm/main.tex | 4 +- 31 files changed, 318 insertions(+), 188 deletions(-) create mode 100644 buch/papers/fm/.vscode/settings.json create mode 100644 buch/papers/fm/RS presentation/FM_presentation.pdf create mode 100644 buch/papers/fm/RS presentation/FM_presentation.tex create mode 100644 buch/papers/fm/RS presentation/Frequency modulation (FM) and Bessel functions.pdf create mode 100644 buch/papers/fm/RS presentation/README.txt create mode 100644 buch/papers/fm/RS presentation/images/100HZ.png create mode 100644 buch/papers/fm/RS presentation/images/200HZ.png create mode 100644 buch/papers/fm/RS presentation/images/300HZ.png create mode 100644 buch/papers/fm/RS presentation/images/400HZ.png create mode 100644 buch/papers/fm/RS presentation/images/bessel.png create mode 100644 buch/papers/fm/RS presentation/images/bessel2.png create mode 100644 buch/papers/fm/RS presentation/images/bessel_beta1.png create mode 100644 buch/papers/fm/RS presentation/images/bessel_frequenz.png create mode 100644 buch/papers/fm/RS presentation/images/beta_0.001.png create mode 100644 buch/papers/fm/RS presentation/images/beta_0.1.png create mode 100644 buch/papers/fm/RS presentation/images/beta_0.5.png create mode 100644 buch/papers/fm/RS presentation/images/beta_1.png create mode 100644 buch/papers/fm/RS presentation/images/beta_2.png create mode 100644 buch/papers/fm/RS presentation/images/beta_3.png create mode 100644 buch/papers/fm/RS presentation/images/fm_10Hz.png create mode 100644 buch/papers/fm/RS presentation/images/fm_20hz.png create mode 100644 buch/papers/fm/RS presentation/images/fm_30Hz.png create mode 100644 buch/papers/fm/RS presentation/images/fm_3Hz.png create mode 100644 buch/papers/fm/RS presentation/images/fm_40Hz.png create mode 100644 buch/papers/fm/RS presentation/images/fm_5Hz.png create mode 100644 buch/papers/fm/RS presentation/images/fm_7Hz.png create mode 100644 buch/papers/fm/RS presentation/images/fm_frequenz.png create mode 100644 buch/papers/fm/RS presentation/images/fm_in_time.png diff --git a/buch/papers/fm/.vscode/settings.json b/buch/papers/fm/.vscode/settings.json new file mode 100644 index 0000000..5125289 --- /dev/null +++ b/buch/papers/fm/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "notebook.cellFocusIndicator": "border" +} \ No newline at end of file diff --git a/buch/papers/fm/Python animation/Bessel-FM.ipynb b/buch/papers/fm/Python animation/Bessel-FM.ipynb index 9d0835a..bfbb83d 100644 --- a/buch/papers/fm/Python animation/Bessel-FM.ipynb +++ b/buch/papers/fm/Python animation/Bessel-FM.ipynb @@ -2,21 +2,9 @@ "cells": [ { "cell_type": "code", - "execution_count": 74, + "execution_count": 117, "metadata": {}, - "outputs": [ - { - "ename": "ValueError", - "evalue": "operands could not be broadcast together with shapes (3,) (600,) ", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mValueError\u001b[0m Traceback (most recent call last)", - "\u001b[1;32m/home/joshua/Documents/SeminarSpezielleFunktionen/buch/papers/fm/Python animation/Bessel-FM.ipynb Cell 1'\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 13\u001b[0m x \u001b[39m=\u001b[39m np\u001b[39m.\u001b[39mlinspace(\u001b[39m0.01\u001b[39m, N\u001b[39m*\u001b[39mT, N)\n\u001b[1;32m 14\u001b[0m beta \u001b[39m=\u001b[39m np\u001b[39m.\u001b[39mlinspace(\u001b[39m0.1\u001b[39m,\u001b[39m10\u001b[39m, \u001b[39m3\u001b[39m)\n\u001b[0;32m---> 15\u001b[0m y_old \u001b[39m=\u001b[39m np\u001b[39m.\u001b[39msin(\u001b[39m100.0\u001b[39m \u001b[39m*\u001b[39m \u001b[39m2.0\u001b[39m\u001b[39m*\u001b[39mnp\u001b[39m.\u001b[39mpi\u001b[39m*\u001b[39mx\u001b[39m+\u001b[39mbeta\u001b[39m*\u001b[39;49mnp\u001b[39m.\u001b[39;49msin(\u001b[39m50.0\u001b[39;49m \u001b[39m*\u001b[39;49m \u001b[39m2.0\u001b[39;49m\u001b[39m*\u001b[39;49mnp\u001b[39m.\u001b[39;49mpi\u001b[39m*\u001b[39;49mx))\n\u001b[1;32m 16\u001b[0m y \u001b[39m=\u001b[39m \u001b[39m0\u001b[39m\u001b[39m*\u001b[39mx;\n\u001b[1;32m 17\u001b[0m xf \u001b[39m=\u001b[39m fftfreq(N, \u001b[39m1\u001b[39m \u001b[39m/\u001b[39m \u001b[39m400\u001b[39m)\n", - "\u001b[0;31mValueError\u001b[0m: operands could not be broadcast together with shapes (3,) (600,) " - ] - } - ], + "outputs": [], "source": [ "import numpy as np\n", "from scipy import signal\n", @@ -25,45 +13,71 @@ "import scipy.fftpack\n", "import matplotlib.pyplot as plt\n", "from matplotlib.widgets import Slider\n", - "\n", + "def fm(beta):\n", + " # Number of samplepoints\n", + " N = 600\n", + " # sample spacing\n", + " T = 1.0 / 1000.0\n", + " fc = 100.0\n", + " fm = 30.0\n", + " x = np.linspace(0.01, N*T, N)\n", + " #beta = 1.0\n", + " y_old = np.sin(fc * 2.0*np.pi*x+beta*np.sin(fm * 2.0*np.pi*x))\n", + " y = 0*x;\n", + " xf = fftfreq(N, 1 / 400)\n", + " for k in range (-4, 4):\n", + " y = sc.jv(k,beta)*np.sin((fc+k*fm) * 2.0*np.pi*x)\n", + " yf = fft(y)/(fc*np.pi)\n", + " plt.plot(xf, np.abs(yf))\n", + " plt.xlim(-150, 150)\n", + " plt.show()\n", + " #yf_old = fft(y_old)\n", + " #plt.plot(xf, np.abs(yf_old))\n", + " #plt.show()\n", + " \n" + ] + }, + { + "cell_type": "code", + "execution_count": 114, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ "# Number of samplepoints\n", - "N = 600\n", + "N = 800\n", "# sample spacing\n", - "T = 1.0 / 800.0\n", + "T = 1.0 / 1000.0\n", "x = np.linspace(0.01, N*T, N)\n", - "beta = 1.0\n", - "y_old = np.sin(100.0 * 2.0*np.pi*x+beta*np.sin(50.0 * 2.0*np.pi*x))\n", - "y = 0*x;\n", - "xf = fftfreq(N, 1 / 400)\n", - "for k in range (-5, 5):\n", - " y = sc.jv(k,beta)*np.sin((100.0+k*50) * 2.0*np.pi*x)\n", - " yf = fft(y)\n", - " plt.plot(xf, np.abs(yf))\n", "\n", - "axamp = plt.axes(np.linspace(0.1, 3, 10))\n", - "beta_slider = Slider(\n", - "ax=axamp,\n", - "label=\"Amplitude\",\n", - "valmin=0,\n", - "valmax=10,\n", - "valinit=beta,\n", - "orientation=\"vertical\"\n", - ")\n", - "plt.show()\n", - "\n", - "yf_old = fft(y_old)\n", + "y_old = np.sin(100* 2.0*np.pi*x+1*np.sin(15* 2.0*np.pi*x))\n", + "yf_old = fft(y_old)/(100*np.pi)\n", + "xf = fftfreq(N, 1 / 1000)\n", "plt.plot(xf, np.abs(yf_old))\n", - "plt.show()\n" + "#plt.xlim(-150, 150)\n", + "plt.show()" ] }, { "cell_type": "code", - "execution_count": 72, + "execution_count": 118, "metadata": {}, "outputs": [ { "data": { - "image/png": "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", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAX0AAAD4CAYAAAAAczaOAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAAsTAAALEwEAmpwYAAArlElEQVR4nO3de3hcd33n8fd3LhpdLcmSbCeyHduxA3EgQFCTQIGyBdqk3SYhhTZ5nrbwbLcuC25Z2rINS0lz6e62tKWFNg2kTbZQSFNKC2uIwdwSaAsmdi7EcRI7iuNYdnyRbV0sS5rb+e4fc0Y+UiTN7xxrJI3O9/U8tmfOnDPnMtZnfvqe3/kdUVWMMcbEQ2KhN8AYY8z8sdA3xpgYsdA3xpgYsdA3xpgYsdA3xpgYSS3Uijs7O3XdunULtXpjjKlJjz766ElV7Yq6/IKF/rp169i9e/dCrd4YY2qSiLx4PstbeccYY2LEQt8YY2LEQt8YY2LEQt8YY2LEQt8YY2LEQt8YY2LEQt8YY2LEQt9Ulary7A+PUsgXF3pTlqTceIH9jxxb6M0wNcRC31TVi0+d4juffYadXz6w0JuyJD38+Wf51n1P03/ozEJviqkRFvqmqnLjBQBGh7MLvCVL08hg6bjms/ablHHjFPoico2I7BORXhG5ZZrX/0JEnvD/7BeRwTnfUmOMMeet4tg7IpIE7gLeARwGdonINlV9ujyPqn4oMP9vAa+rwraaWmR345wndqCNG5eW/pVAr6oeUNUc8ABw/Szz3wz841xsnDHGmLnlEvrdQF/g+WF/2suIyEXAeuC7M7y+RUR2i8ju/v7+sNtqapEs9AbEhR1o42auT+TeBHxJVac9q6Sq96hqj6r2dHVFHg7aGGNMRC6hfwRYE3i+2p82nZuw0o4xxixaLqG/C9gkIutFpI5SsG+bOpOIvBJoB344t5tojDFmrlQMfVUtAFuBHcAzwBdVda+I3CEi1wVmvQl4QFWtG4ExxixSTrdLVNXtwPYp026d8vy2udssY4wx1WBX5BpjTIxY6BtjTIxY6BtjTIxY6BtjTIxY6Jvqsr5c88QOtHFjoW/mh9gwAcYsBhb6xhgTIxb6xhgTIxb6xhgTIxb6Zn7Y6BzGLAoW+qa67PztPLEDbdxY6BtjTIxY6BtjTIxY6BtjTIxY6BtjTIxY6BtjTIxY6BtjTIxY6Jvqsu7588QOtHFjoW/mhw24VlV27Ztx5RT6InKNiOwTkV4RuWWGeX5JRJ4Wkb0icv/cbqYxZlYW+sZRxRuji0gSuAt4B3AY2CUi21T16cA8m4CPAD+pqgMisqJaG2yMeTnLfOPKpaV/JdCrqgdUNQc8AFw/ZZ7fAO5S1QEAVT0xt5tpjJmV1XeMI5fQ7wb6As8P+9OCLgEuEZH/EJGdInLNdG8kIltEZLeI7O7v74+2xcaYl7HIN67m6kRuCtgEvBW4GfhbEWmbOpOq3qOqPara09XVNUerNsZY6htXLqF/BFgTeL7anxZ0GNimqnlVfQHYT+lLwBgzHyz0jSOX0N8FbBKR9SJSB9wEbJsyz1cotfIRkU5K5Z4Dc7eZxpjZqKW+cVQx9FW1AGwFdgDPAF9U1b0icoeIXOfPtgM4JSJPAw8BH1bVU9XaaFOD7ERjddnhNY4qdtkEUNXtwPYp024NPFbgd/w/xpxj12TNC8t848quyDVmKbDUN44s9E11WRjNC7XymXFkoW/mh429U12W+caRhb6pKmuAzg87zMaVhb4xS4F9uxpHFvqmuiyM5oUdZuPKQt9UlWWRMYuLhb6pLkv9+WHH2Tiy0DdVZWWH+WHDMBhXFvqmyiyM5oUdZuPIQt9UlbX054cdZ+PKQt8YY2LEQt9Ul7VA54UNw2BcWeibqrIwMmZxsdA3VWWZPz/sy9W4stA3poZJeSA7y3zjyELfVJe1QOeFHWbjykLfVJWFkTGLi1Poi8g1IrJPRHpF5JZpXn+viPSLyBP+n/8695tqjJmRfbsaRxXvkSsiSeAu4B3AYWCXiGxT1aenzPpPqrq1Cttoaphl0fyww2xcubT0rwR6VfWAquaAB4Drq7tZZumwOKqmiV47dpiNI5fQ7wb6As8P+9Om+kUReVJEviQia6Z7IxHZIiK7RWR3f39/hM01tcZa+vPDjrNxNVcncr8KrFPVy4FvAZ+dbiZVvUdVe1S1p6ura45WbRY1C6N5YgfauHEJ/SNAsOW+2p82QVVPqWrWf/p3wOvnZvOMMS6spW9cuYT+LmCTiKwXkTrgJmBbcAYRuSDw9DrgmbnbRFPL7EpRYxaXir13VLUgIluBHUASuE9V94rIHcBuVd0G/LaIXAcUgNPAe6u4zcaYqey71TiqGPoAqrod2D5l2q2Bxx8BPjK3m2aWAmvozw/7jcq4sityTVVZGFVXeewdO8zGlYW+qS4LI2MWFQt9Y5YCa+obRxb6pqqsvDM/7DAbVxb6xhgTIxb6pqqsBTo/7DgbVxb6prosjOaJHWjjxkLfVJmF0Xywlr5xZaFvqsrCaJ7YcTaOLPSNMSZGLPRNVVlLf35Y11jjykLfVJeFUVVZ2JuwLPRNVU1kkoVTVam30FtgaoWFvpkXFvnVMTHgmh1h48hC31SV3bh7ntjxNY4s9E11lTPfQsmYRcFC31SVTvPIzD07oWtcWeib6tIp/xpjFpSFvqkyDfxtqsUa+saVU+iLyDUisk9EekXkllnm+0URURHpmbtNNLVMraU/P+z4GkcVQ19EksBdwLXAZuBmEdk8zXwtwAeBH831RpoaNnEi11Kpuuz4GjcuLf0rgV5VPaCqOeAB4Ppp5rsT+BNgfA63zywiTz38bb78J7eHWsauzZofYY/vF2//CPt3/nt1NsYsai6h3w30BZ4f9qdNEJErgDWq+uBsbyQiW0Rkt4js7u/vD72xZmHtuPsvOfDYrnALWdovSn1P7+Grf/HHC70ZZgGc94lcEUkAnwB+t9K8qnqPqvaoak9XV9f5rtrUgInIt/CvqjCH10pt8eYS+keANYHnq/1pZS3Aq4CHReQgcDWwzU7mGuBcTX9ht2LpCxHkagP1xJpL6O8CNonIehGpA24CtpVfVNUhVe1U1XWqug7YCVynqrurssWmptgwDNVVPr6hWvqefRhxVjH0VbUAbAV2AM8AX1TVvSJyh4hcV+0NNDXOhmFYdNSzln6cpVxmUtXtwPYp026dYd63nv9mmaXChmGosghdYq28E292Ra6pLrs4q6qiXPxmJ3LjzULfhBYqNMo15yptiwl/fK2mH28W+ia8MKWECMsYd9Fa+lbeiTMLfROaF+ZEoJ3IrapzxzXEF7GdyI01C30TWqiThlXcDsO58pnV9I0jC30TWqjyQIRQMhGE6qdvLf04s9A34YU4EWhdNqsryrVv1tKPNwt9E1q4lv6Uf011WD9948hC34QWqcumhX5VaIQusdZlM94s9E1oYXrvWNjPkzC/fFlNP9Ys9E1oYULj3E1ULP2r4VxNP0x5xz6LOLPQN+FFKO+ErennDh0if+RI5RmXkNyhQ+QOh9xnuzjLhOQ04JoxQeFq+uVlwq3j+Z/5WQAuffaZcAvWsKN/+IckMvWs+fTdIZaymr4Jx0LfhBalvGPddyrzzo5CvhBqGRuGwYRl5R0Tmg3DUCXFIloIF/oTwnTZtBO5sWYtfRNeqGEYLO1dqedBPh9uGbs4y4RkoW9Ci3JxluWMg2IxfCs8QupbSz/eLPRNaGFOBJ6rOVvqV6JeMfKpD2vpG1dONX0RuUZE9olIr4jcMs3r7xORPSLyhIj8u4hsnvtNNYuFnQisEk/RiOWdSN1oTSxVDH0RSQJ3AdcCm4Gbpwn1+1X11ar6WuDjwCfmekPN4mHDMFRJsYgWwoV+Wbgum/alHWcuLf0rgV5VPaCqOeAB4PrgDKo6HHjahPXPW9Kiddk0lZRO5IbssumFr+mH6n1llhyXmn430Bd4fhi4aupMIvIB4HeAOuCnp3sjEdkCbAFYu3Zt2G01i0SoluLEiVyL/4qKxfDlnYkHNgyDcTNn/fRV9S5VvRj4feAPZpjnHlXtUdWerq6uuVq1mWeh7pxlAeNMPS98P/1Id86yln6cuYT+EWBN4Plqf9pMHgBuOI9tMotctYdhiO0XxXlcnBXqiNkwDLHmEvq7gE0isl5E6oCbgG3BGURkU+DpzwPPzd0mmsUmUk0/TM5EvSq1xqnnzUvvHWvpx1vFmr6qFkRkK7ADSAL3qepeEbkD2K2q24CtIvJ2IA8MAO+p5kabhRWlph8m9SMPRVDrisWJC7Qk4Vh5jTD2jp3IjTeni7NUdTuwfcq0WwOPPzjH22UWsSg1/VDlnZiG/sSxKhSQujq3ZaKMshnX8pkBbMA1E0GU8oCFvoNisfRvmBJPlHsQW0s/1iz0TWjVHoYhbF17qSiXzaJ86dmds4wrC30TWtVPBMa8pR/mSy/aePoW+nFmoW9Cq/YwDHEt70Rq6Vs/fROShb4JrdrDMMQ19Cda+iH2P8rxtd478Wahb0ILdY/VCMMwaMjxZ5YCVZ04waq5KCdyw/TZtPJOnFnom9DClAci1ZwjjjRZ0wKhHWb/o3TesfJOvFnom9Ai1fTDrCCO5Z1yd00It//l4xvmejk7kRtrFvomtFAt/XMLuS8Tw9APnieJ1mXVboxu3Fjom9DCDcMQvlUZx5p+sKUf6kRulPKZhX6sWeib0KJcnBW1y2ZcShGTW/phyjuT/nFbJCbH1EzPQt+EFulEYNQTuXFplQZb+qEuzgqf+hPLiLgvZJYMC30TWrgB1/x/w6RSsLwRPMG5hE1q6UfovRTqM4nLF6mZloW+CS1UP/0I9YdJ5Z24BFTEE7lRKjVW3ok3C30TWqjyTpRQysewpX++XTZtGAbjyELfhBZqGIbzPZEbx5Z+lYdhiM0xNdOy0DehRSkPhKo5B2vaMWnpRz2RG2UYhnJ5TrATuXFkoW9CC9fSj9Cn0Lpsui835V+nZay8E2sW+ia0SC39MPPGsKYf9eIszqPLZqgeVWbJcAp9EblGRPaJSK+I3DLN678jIk+LyJMi8h0RuWjuN9UsFpFO5EYchkGL8WiVRh6GIco5ExtlM9Yqhr6IJIG7gGuBzcDNIrJ5ymyPAz2qejnwJeDjc72hZvGIVN4J8/7Blq4Xk5Z+xH76kcY2issxNdNyaelfCfSq6gFVzQEPANcHZ1DVh1R11H+6E1g9t5tpFlowvKs/DMO50ItNSz+4n6HKO5P+cVskJudJzPRcQr8b6As8P+xPm8mvA1+f7gUR2SIiu0Vkd39/v/tWmoUXDP1IVwSFmDeWLf2IwzBEqO+UPz/rvRNPc3oiV0R+BegB/nS611X1HlXtUdWerq6uuVy1qbJJLf0IN1EJc9Jw0oncmPQpD7b0Iw24ZqNsGkcph3mOAGsCz1f70yYRkbcDHwV+SlWzc7N5ZrEIBn242yXaMAxOvKi9d8Kvyso78ebS0t8FbBKR9SJSB9wEbAvOICKvAz4DXKeqJ+Z+M81CmxT0Ve7nPam8EZMumxp1lM3yvzYMg3FUMfRVtQBsBXYAzwBfVNW9InKHiFznz/anQDPwzyLyhIhsm+HtTI0KBoVX7WEYAqEXn5Z+xFE2I9xFJTbH1EzLpbyDqm4Htk+Zdmvg8dvneLvMIqPnfSLXhmGYjUa9c9bLHjgsYxdnxZpdkWucBMs7Ufrph7siN35dNgmWz+br4ixVq+/HkIW+cTLpRG6Vu2xOqmnHssumW0s/amBPqulb6MeOhb5xMilgIt05K8S6YljTn9xl07GlP+kjCd9PP+xyZmmw0DdOguHrhWl9Rxl7Jx/De+RG6LIZNa4njfNjPXlix0LfuIk8DEP4OzuRDw64Fo/yzkRLP5FwP5E76TMJsS4v4jUXZkmw0DdOzr/3TohZY9zSl0zGubyjszybdbmIV1ebpcFC3ziZVFuv+jAMeaS+vvQ4Zi39RCbj3k8/2mmW8z8pb2qahb5xErmlH2UYhnyeRCZTehKXlr4fxJLJTCpvzb5M1FVFK9WZpcFC3ziZPPZOhCAOGfoSs9Av/0YTrrwT/CIOsS4r78Sahb5xEmwRRhqGIcy6CoWJ0I/PxVnl8k5diBO5wcfRbqJi5Z34sdA3TuZ1GIZ8nkR9uaUfl5q+39Kvy1S/y+akXj8x+VI1Eyz0jZPJV3FWfxgGyZRP5MYklPz9lPr6iBdnua9q8oip1tKPGwt94yTyyb/wg0D6vXdi1tL39zNMeWcuhmGw8k78WOgbJ1GDIkqklHrvxLSlXxeiy2ZApB5VWHknjiz0jRuNdiI3yr11gydy49LSn9RlMxe+vBOG51lLP84s9I2TqBdnTX4Tx9nyeSRT9/L1LmHl32gkTHkn+DjiPXKty2b8WOgbJ5N7fITpHhh47LqeQHmHuJR3Jmr6YU7kRh351C7OijMLfeMk6gU9GraLiR945RO5GpPyzrmWfogum5GHYbChlePMKfRF5BoR2ScivSJyyzSvv0VEHhORgoi8a+430yw0jVoH1mkfzjy7H/pxbelLpg48r7pjDll5J9Yqhr6IJIG7gGuBzcDNIrJ5ymyHgPcC98/1BprFYU6G43VYrNzKnRhwLWYt/YleSw6t/ckt9hDrst47sebS0r8S6FXVA6qaAx4Arg/OoKoHVfVJwP4HLVGTg8I9iCeFkUvol8s7/onc+LX0/bKWy6BrEc/kejaefqy5hH430Bd4ftifFpqIbBGR3SKyu7+/P8pbmAUS+YKekPXjc+Udv8tmTMoP5Rb3xJedQ1/9qOX4yZ9lPI6vOWdeT+Sq6j2q2qOqPV1dXfO5anOeJl2RG/HirDA1/dgOw1Dnd1V17cHjC/UFYCdyY80l9I8AawLPV/vTTIxEHlo5YnkndgOueUUQIVEO/ZA1/XDrOs9hsk1Ncwn9XcAmEVkvInXATcC26m6WWWyidvObXHZ2KO/4YZdobgbAGxt3Wk+2mGXrd7by/ODzzttWTXtP7eVDD32IgufY/XI8W6rnp1Kl567DK5eXj9pP31r6sVMx9FW1AGwFdgDPAF9U1b0icoeIXAcgIj8hIoeBdwOfEZG91dxoM/8mD7gWbRgGp9lz5fJOhkRzM8XhIaflnux/ku8d/h537rwz1Pqq5fce/j2+fejbHBlx+6W4ODREsq0NSacBx/JO2NqZb9IwGhb6sZNymUlVtwPbp0y7NfB4F6Wyj6kRXq6IpBJIQpzmD5Z3CrlstJWG6b2TriPZ2oo35Bb66UQpLHPFXLRtm2Pl7XBtSReHhki2tiKpcui7lHcCj0NsWyF37hiF+QLXogeeIulkiLWZxcauyI2pl279AacfeNZ5/nJ4JdNpsqOjzssV8oH6sct6JkI/TbK1lcLgoNt6/DJKthjxC2mOZb3SdowVxpzmLw4OlkI/XS7vuJzIPXdEi3n38M6NniVZ/o0iREv/5P/dy5GP/cB5frM4WejHULlUM/bkSfeF/BZhfXML2dGzbosUPfLjReoa/F8oXWr646WQTNRnSLa14Q26tfTL4brYWvrjRbdzEsWhwVJ5p9xPf6zyl0X5cNY1pMiOuvf2yY6OUt/c4r+H+5dFtnfQeV6zeFnox5DmwveIKbcI65uanUM/N1b0l/Fbrw6NysLJUwAkOzpJtrVSdCzvlMN10bT0/e0Yyzu29P3yTqqzE4DCqdPO66pvSlHIeRQLbgGeHT1LfVPpRLnrxVk2SNvSYaEfQ5o9F/reeLi7NGWamp3LO+N+6zPTmHbetoJ/0V6qs4NEq3vol1v6iyX0Pb8F7VLeUVW8wSGSbYHQd7h4ceIz8Y9vdtThPIDnkRsfI1MOfceWfnE4cB4gH49utEuVhX4MeYHQzx93C/ByONQ3NZEfH8Nz6D9fDqGGllLfc5eWaOHkSRItLSTq60m2tVEcGnI62VhuUeeL4e86VU2jhcrHV0dH0XyeZFsbyfZ2SCYpnKwc+l6hFPoNLeXQr7zv2bFRUKW+qam0bseafuHYud/ugo0GU3ss9GMo+ENbHHJrGZe7+ZXLArnRyi3YnB/6bSsbABgfqRxKhZMnSflXaydbW8Hz8EZGKi63mFr6wSB1qemXf5tJtrYiiQSpjg4KJyufbxnzj2fbykbAraWf839Lm6jpO/beCbb0PQv9mmahH0PBH1pvzK28M37mDADLVqwCIDtaOYjL5Z12P5RGhyufZC2c7J8ocSRb2wCcSjxjRf9ErpebKK0slGBJx6WmX96/RGsrAKnOTor9DqHvH8/2EKFfPh+zrGtl6T38z7WS4P8Ta+nXNgv9GAqeyHUN/bMDpROLy7tLl2O41PWzEy39UiiNnXEI/f5A6Le3laa5tHoDQXsm5xZk1TKYHZx47FLTL5+8TrW3A5Ds6nSq6Y/6x3OipT/mUN7xQ7/D/xzPDrqdMA7+P7GWfm2z0I8hjdDSHxk4TX1zC43LSq1Rlx48ubFy6Jfqxy4t/WL/SVJdpdDPbNhQep/nKw+tEGxRB0N3IQxkByYeu5R3ss/3AlDn72+qs9Pti25q6J91aemXvqxbV64ikUwxMhA+9K2lX9ss9GMo2FJTh5IAlFqEze3LJ2r6bi39PImU0NRWRyIpjJ2ZvSVaOHkSb3SU1AUXAJBevRppbGR83/6K6wq2qE+Nnao4fzUF1+/S0s/u20+ys5PU8uUApC+8kEJ/P8WR2b9YR4dzZJpSNDSXTpSHKe/UNzXT1N4+8RtcJV7gJHGULr9m8bDQj6FySy3ZlsFzKAlAqaXf1L6cusZyq9Klpl8g05hGRGhoqZsoR8xk7Mk9ADS8+tUASCJBZuNGsvtDhv54jYX+/v3UX7Jp4nnDq18Nqow/PfsQVmNncjS21JFMJ0ilE269d/zQzzQ20dy2PFRLP9lWunDMyju1zUI/hrxsqUWYbM2EKu80ty+f6PUx6jAQ2thwjvqmUnfChpZ0xZr+2J4nIZmk/tJLJ6bVv+ISss8+W7GXyXhxnBWNK4BF0NL3v3RWNKyoGPqay5Ht7SWz6ZKJafX+l974nj2zLjs6nJvoDlvfnHYqn40ND4EIdY1NNLUvd2/pB0Lfyju1zUI/hjRbROqSJBpTeI4X9IwODtDU1k5DcwvNyzvoP3ig4nL9h87QubpUDmpcVsfoUIXQf/wJMhs3kvB/mwBovOpqikNDjD3++OzLFsa4sOlCBFkULf3GVCPt9e0VQ//sD3+IZrM0vuHqiWmp9nbSa9Yw+tjs+zw6lKNxWSn0O1c303+o8gnsEwcPsPyCblLpdPjQb7WW/lJgoR9DXraIZJIkGlJOLf2BYy/hFYu0rix111y5YRPHDvTOuszZwSwjA1lWrlsGQEd3M6eOjJCfoR6cP36C0Uceofk/vXXS9Oa3/hSSTjP8jR2zrm8sP0ZTXRPt9e2LoqXf0dBBQ6qhYugP7/gmieZmmt74xknTm9/6Vs5+//szdlcdH8kz1D9GR3fpS3XFumUMHB8lW+HzPP78c6y8uFRKalu5ivGzI5w5XfmksTdaINGYQuoS1tKvcRb6MaS5IokQof/ik6UW59pXvRaAlRsuZuClw7P24Dn+wnBp3vWl0L9wUxteUTl+YPoQG/zSP4Pn0XbDDZOmJ5ubaXnH2xn6l3+hcHrmVulYYYyGZAPL65cveOifHjtNR30H9an6WUM/f/Qow1/9KsuuvXbijlllrTdcj+bzDH75y9Mu+5I/+NmFl7QBlL5cFU68ODzj+kYGTjMycJpVGzYCsPZVrwHg0J4fz7o/6ik6XiDRmEYySQv9GmehH0PFoRyJxhSJxjSaLaIVhuU9+OPHaF25ija/pb/m0lLNuXfXzhmX2ffIMTJNKTrXlFqiF25sQwT6nnl5cOePHOHUvffR/Pa3Ubdu3cte7/zAB/DGxzn+v/73jMMGnMmdoTHdSEdDx8KXd/yWflO6ieHs9CGsnsexO0o3fOl832++7PX6zZtpfMPVnLz709P22e97+jTJdIKVF5W+VFdtaCWVSbJ/57EZt2v/zv8AoPvSVwHQtXYdDctaeeGJR2fdH280DwqJhtL/mYLjVdxmcbLQXwLGxsYYGBioPCOlAdZyfWfIbGgl7dfbxw8Mzjj/yb4XOfD4bl5x9ZsmpnVfehkdq9fy6INfwSu+vNV38vAILzzRz2Vv6ibl33CjriHFuss72ftvL0303wconDpF3/s/gCQSrPz93592GzIXX0zXb/8Www8+yPE7/wgvN/ncQN9wHyfGTnBZx2WsalzFi8Mvkvccx+DZ/j/gax+afZ5/3QLfvs3p7cYL4xwZOcLKxpVc1nEZB4cPcnJscvnEGxvj6B98jJGHHmLFhz9Murv7Ze8jIqz66EfRbJa+D2ylGLivwNhIjmd3HmXjFStIpks/wnUNKV559Sr27z7O4DTjKRXyeR7/xjYu2PgKVq6/uLSORIJXvOFNPPej/2Dw+MxfFtnnS7+d1a1uJrO+ldwLQ6jjiJ6nTp0im7UvicXEQn8JuPfee/nkJz/pNHhWtncQPCWzqZ36i9uQTJKxPdPXdLOjo3z9rz9BpqGRnl+4cWK6iPCGd91M/4sv8PA//N2k9Q6fHOPrn9lDQ0sdr337mknv1/Nz68iOFXj4/n14+QJDX/0aL7zzRnIvvkj3J/+SujWT5w/q+M3fZPl73sPA/ffzwjtvZHjHNyfuI/uDl0o39njjhW/kp9f+NIPZQX5wxPFmH498BnbfN/PrqvDkP8G//4XT23330HcZK4zxtrVv443dpTr9zqOl34g0l2Poaw9y4PobGPrXf6Xz/f+N9l/9lRnfK7NxI91//mdkn3mGAze8k+Fv7KCYL/Ddzz1LsaBccc1Fk+Z//TUXkc4k+fpn9jAycO6iMM8r8p17/4bBY0d5w7tunrTMlTe8m0Qyxdfv+gT58ekvJBvbe5JEc5q6tcuov6QdzXtkX6jce6tYLPJXf/VXfP7zn684r5k/TrdLNIuX53mc9K/eHBgYYLl/gc+0844XGPrmQZKtGTIXLUNSCRov7+Lso8dp6llJZl3pattiocCBxx7h3+7/ewaPH+OGD3+MhpZlk97rFW94M0f2Pc3jX/8qxw88zxXX/hKnj7Wy53svkUgI/3nraya6E5Z1dia54nVpHtt1nNPf28nFe++nY3U7q+/+Gxouu2zW/RQRVn7kFpp+8o0cu+NOjnzwgyTb26m/+iqea3iMN61cyepEB92ru+mo7+BTj3+KK1ZeQUtdy8xvGhwXJzsCmeaXzzNyInAAPUjM3E4aGB/g7h/fTXdzNz2reigOD3NVfxtP3/uXvGbkW4zt/BHFoSHq1q9n7d//PU1XXzXrPgO0vO1tXPSFz3P0Y7fy7B/8Gb3/eJSBhrVcdVUdbcsn//g2t9dzzW+8igfv3sMXbvsRr33bapZ1nOSxBx/g2PPPcdU7f5n1r+uZ/P7LO7nm/f+dr33y43z+f36IN938a2x8/VWIv5/j+wcY23OS5p/sRhJCZmMbiaY0Q984SN1Fy0jUzXzrxBMnSseur68PVUXE7dacprrEpXUoItcAnwSSwN+p6h9PeT0DfA54PXAK+GVVPTjbe/b09Oju3bsjbrYp6+vr49577wXgxhtv5PLLL3/ZPMXhLOPPDXLmoT4Kp8fofO+rqL+kNM5L/sw4J/76cbwzBcZXZOnLPcdzvTsZGTpF28oL+Jn3/TZrNpdq+IVckbNDOc4OZTk7mGWof5TeRx7m6L5v4BXPgjTT0r6WjRtX0dWUoaFQJDN4Bj18mPyhQ+QOHgTP40j3Wziw8QbykmHluhbWXtbBinXL6FzdTFNrpuJ9e7VYZPihhzjwlS+Q/9FuWs6cKxeluroYb2/kSa+P8WX1dK9+Jd0rNtLZsYaGZe0kmpqQ+noklUbO9CFf/S1IKHLjp5ELLkOzWbxcjmRra+k3ib7d6Nd+F1TQG++Fxi688XG80VG80VHGzwxy8lQfL504QN/hvTQO53hNYi3pgRGKgaEUzrSmqbv6Sjbc+Ku0vPnNE6E64z56ypnT45x+6SzHDw7z4lMn6T80QkpzbNr/RS44+kNIJqlbs4b0xRvQCy8k29TIeCZN/0iW5w8c48zAIdCzJFItdG/+eTb+xJtpWV5PS0c9Ta0ZMo0p0pkkIsLBHz/Gd+67m8FjR2lp7eTSV76JVbKO+hMZksvr6Hzf5dS1lEZLHXvqJKe+8AypzgZa3rKa+s0dJJtefs+EXbt28eCDDwLw/ve/nxUrVsy6z8aNiDyqqj2V55xh+UqhLyJJYD/wDuAwsAu4WVWfDszzfuByVX2fiNwEvFNVf3m2933Npa/SHZ/7Z7QYuCMPpTrhpEESJy7K0Yk7L5WH+Z1001VVVLU0qTyjAnjnnvp3/Jl04wgt/ZmYpqDBN1bPfxudWJ9y7rE3aV3lTQncF9bzSuUP9VBP8TxFPQ+v4JVe87RUFy9qab88LW2nV3quXukYlObzKKqHh1JQj3GvwPMyyKjkKYqyvFjPhlwbzZqh3svQKA00SROZROmHdaQwxFPDj3Bi/BDFYpaCl8PzstQlGri8/S1c1HwZqUQaTz2yXp5xL8GYQs4T8gh5hYJCEcVT8AApZKkbO46M95LzjnM2WSSbSvjHUP1j5ZEkQTqdItXUSLqlBdJpxkeU8REo5AQlgUoSIYWkEyTqFElJ6XfRlOIlPArJHOOaY1xHGSwMkSVLOp3iJ1o2c6HXiDc0gA6cRs+OkD8zQPHMGdL5AqIeUCThKfj/x2RSSbr04QlKPpnESybJ5PL+FED8V8V/iOBJAiSBJhJ4kgRJkk8nSbYsI9XcijQ2Ia1tJFrbOSLDPD6yj0KxSD0NtCbbaZRG6rSOtKYQT5AiaB40qxTzxdL/gdKHDyjpjNLQDHWNimbHyQ0PUxgfxysUKaqCJBESiCRIiJApKE35BKnkSqjfwHjDKjSZJgEkBVIipUMrkBalTjzqE0K9eNQn0ogkyHtZDp55ij0D3yevOZKJDKlkPclEHSsbLuLSltfTkmoD4Kx3ljE9yyjj5BIFzibGeS59msFEloQKLdSxgXYaJEVShGQiQTKRKH3BJ4SECCQTJCQBidL5BkkIiaSApJCkkEgIkhS/UXDudREgkQQREH8+EUgkONd8SIBAIpGY+DxLs5eWkfK0hJQ+cAGRRHnWifcq/7Yi4r+Pv6yU11R+r0T5f0pp2sT/HPG3rbxh/jacm4+J95l4/+A0oPPVG6oe+m8AblPVn/WffwRAVf9PYJ4d/jw/FJEUcAzo0lne/MILL9QtW7ZE3W5jjIml22+//bxC36Wm3w30BZ4fBqYWIyfmUdWCiAwBHcCkM4QisgXYAnCBP6iWia7eS9NWbCClgqKMS56hZJZCYmHHkzcm7SVoLdZTr2kQoSAeA4lRsgm3YT9M9czriVxVvQe4B0o1/dtuu20+V2+MMTXv9ttvP6/lXbpsHgGCfelW+9Omnccv77RSOqFrjDFmEXEJ/V3AJhFZLyJ1wE3AtinzbAPe4z9+F/Dd2er5xhhjFkbF8o5fo98K7KDUZfM+Vd0rIncAu1V1G3Av8A8i0gucpvTFYIwxZpFxqumr6nZg+5RptwYejwPvnttNM8YYM9dsGAZjjIkRC31jjIkRC31jjIkRC31jjIkRpwHXqrJikTPAvgVZ+fzoZMoVyUvMUt6/pbxvYPtX616hqrMMHzu7hRxaed/5jB+x2InIbtu/2rSU9w1s/2qdiJzX8MRW3jHGmBix0DfGmBhZyNC/ZwHXPR9s/2rXUt43sP2rdee1fwt2ItcYY8z8s/KOMcbEiIW+McbESNVDX0TeLSJ7RcQTkZ7A9HUiMiYiT/h/Ph147fUiskdEekXkUyLBm0cuLjPtn//aR/x92CciPxuYfo0/rVdEbpn/rY5GRG4TkSOBz+znAq9Nu6+1plY/m9mIyEH/5+mJcnc/EVkuIt8Skef8f9sXejtdich9InJCRJ4KTJt2f6TkU/7n+aSIXLFwW17ZDPs2tz93Wr6heJX+AJcCrwAeBnoC09cBT82wzCPA1ZRuDfx14Npqb2cV9m8z8GMgA6wHnqc0NHXSf7wBqPPn2bzQ++G4r7cBvzfN9Gn3daG3N8L+1exnU2G/DgKdU6Z9HLjFf3wL8CcLvZ0h9uctwBXB/Jhpf4Cf8zNE/Ez50UJvf4R9m9Ofu6q39FX1GVV1vvJWRC4AlqnqTi3t2eeAG6q1fedrlv27HnhAVbOq+gLQC1zp/+lV1QOqmgMe8OetZTPta61Zip/NTK4HPus//iyL+GdsKlX9PqX7dgTNtD/XA5/Tkp1Am58xi9IM+zaTSD93C13TXy8ij4vI90Tkzf60bko3Xy877E+rNdPdUL57lum1Yqv/a/J9gZJAre9T2VLZj6kU+KaIPCoiW/xpK1X1qP/4GLByYTZtzsy0P0vlM52zn7s5GYZBRL4NrJrmpY+q6v+bYbGjwFpVPSUirwe+IiKXzcX2zLWI+1eTZttX4G7gTkohcifw58B/mb+tMxG9SVWPiMgK4Fsi8mzwRVVVEVkyfbeX2v4wxz93cxL6qvr2CMtkgaz/+FEReR64hNJN1lcHZp3uRuzzKsr+MfsN5SvdaH7BuO6riPwt8DX/6Wz7WkuWyn5MoqpH/H9PiMiXKZUAjovIBap61C93nFjQjTx/M+1PzX+mqnq8/Hgufu4WrLwjIl0ikvQfbwA2AQf8X9GGReRqv9fOrwG12JreBtwkIhkRWU9p/x7B7Ubzi9KUWug7gXIPg5n2tdbU7GczExFpEpGW8mPgZyh9btuA9/izvYfa/BkLmml/tgG/5vfiuRoYCpSBasKc/9zNw9nod1KqNWWB48AOf/ovAnuBJ4DHgF8ILNPj79jzwF/jXzm8GP/MtH/+ax/192EfgR5IlHoU7Pdf++hC70OIff0HYA/wpP8f7oJK+1prf2r1s5llfzZQ6uHxY//n7aP+9A7gO8BzwLeB5Qu9rSH26R8plYfz/s/er8+0P5R67dzlf557CPSwW4x/Zti3Of25s2EYjDEmRha6944xxph5ZKFvjDExYqFvjDExYqFvjDExYqFvjDExYqFvjDExYqFvjDEx8v8BZQ3srbL1gbMAAAAASUVORK5CYII=", "text/plain": [ "
" ] @@ -75,32 +89,17 @@ } ], "source": [ - "\n", - "# Number of samplepoints\n", - "N = 600\n", - "# sample spacing\n", - "T = 1.0 / 800.0\n", - "x = np.linspace(0.0, N*T, N)\n", - "y = sc.jv(3,x)#np.sin(50.0 * 2.0*np.pi*x) + 0.5*np.sin(80.0 * 2.0*np.pi*x)\n", - "yf = scipy.fftpack.fft(y)\n", - "xf = np.linspace(0.0, 1.0/(2.0*T), N//2)\n", - "\n", - "fig, ax = plt.subplots()\n", - "ax.plot(xf, 2.0/N * np.abs(yf[:N//2]))\n", - "ax.set(\n", - " xlim=(0, 100)\n", - ")\n", - "plt.show()\n" + "fm(1)" ] }, { "cell_type": "code", - "execution_count": 73, + "execution_count": 122, "metadata": {}, "outputs": [ { "data": { - "image/png": "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", + "image/png": "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", "text/plain": [ "
" ] @@ -109,20 +108,35 @@ "needs_background": "light" }, "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.7651976865579666\n" + ] } ], "source": [ "\n", - "for n in range (5):\n", - " x = np.linspace(0,15,1000)\n", + "for n in range (-4,4):\n", + " x = np.linspace(0,11,1000)\n", " y = sc.jv(n,x)\n", " plt.plot(x, y, '-')\n", - "plt.show()" + "plt.plot([1,1],[sc.jv(0,1),sc.jv(-1,1)],)\n", + "plt.xlim(0,10)\n", + "plt.grid(True)\n", + "plt.ylabel('Bessel J_n(b)')\n", + "plt.xlabel('b')\n", + "plt.plot(x, y)\n", + "plt.show()\n", + "\n", + "print(sc.jv(0,1))" ] }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 85, "metadata": {}, "outputs": [ { @@ -163,6 +177,32 @@ "\n", "plt.show()" ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "\n", + "x = np.linspace(0,0.1,1000)\n", + "y = np.sin(100 * 2.0*np.pi*x+1.5*np.sin(30 * 2.0*np.pi*x))\n", + "plt.plot(x, y, '-')\n", + "plt.show()" + ] } ], "metadata": { diff --git a/buch/papers/fm/RS presentation/FM_presentation.pdf b/buch/papers/fm/RS presentation/FM_presentation.pdf new file mode 100644 index 0000000..496e35e Binary files /dev/null and b/buch/papers/fm/RS presentation/FM_presentation.pdf differ diff --git a/buch/papers/fm/RS presentation/FM_presentation.tex b/buch/papers/fm/RS presentation/FM_presentation.tex new file mode 100644 index 0000000..92cb501 --- /dev/null +++ b/buch/papers/fm/RS presentation/FM_presentation.tex @@ -0,0 +1,125 @@ +%% !TeX root = RS.tex + +\documentclass[11pt,aspectratio=169]{beamer} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{lmodern} +\usepackage[ngerman]{babel} +\usepackage{tikz} +\usetheme{Hannover} + +\begin{document} + \author{Joshua Bär} + \title{FM - Bessel} + \subtitle{} + \logo{} + \institute{OST Ostschweizer Fachhochschule} + \date{16.5.2022} + \subject{Mathematisches Seminar} + %\setbeamercovered{transparent} + \setbeamercovered{invisible} + \setbeamertemplate{navigation symbols}{} + \begin{frame}[plain] + \maketitle + \end{frame} +%------------------------------------------------------------------------------- +\section{Einführung} + \begin{frame} + \frametitle{Frequenzmodulation} + + \visible<1->{ + \begin{equation} \cos(\omega_c t+\beta\sin(\omega_mt)) + \end{equation}} + + \only<2>{\includegraphics[scale= 0.7]{images/fm_in_time.png}} + \only<3>{\includegraphics[scale= 0.7]{images/fm_frequenz.png}} + \only<4>{\includegraphics[scale= 0.7]{images/bessel_frequenz.png}} + + + \end{frame} +%------------------------------------------------------------------------------- +\section{Proof} +\begin{frame} + \frametitle{Bessel} + + \visible<1->{\begin{align} + \cos(\beta\sin\varphi) + &= + J_0(\beta) + 2\sum_{m=1}^\infty J_{2m}(\beta) \cos(2m\varphi) + \\ + \sin(\beta\sin\varphi) + &= + J_0(\beta) + 2\sum_{m=1}^\infty J_{2m}(\beta) \cos(2m\varphi) + \\ + J_{-n}(\beta) &= (-1)^n J_n(\beta) + \end{align}} + \visible<2->{\begin{align} + \cos(A + B) + &= + \cos(A)\cos(B)-\sin(A)\sin(B) + \\ + 2\cos (A)\cos (B) + &= + \cos(A-B)+\cos(A+B) + \\ + 2\sin(A)\sin(B) + &= + \cos(A-B)-\cos(A+B) + \end{align}} +\end{frame} + +%------------------------------------------------------------------------------- +\begin{frame} + \frametitle{Prof->Done} + \begin{align} + \cos(\omega_ct+\beta\sin(\omega_mt)) + &= + \sum_{k= -\infty}^\infty J_{k}(\beta) \cos((\omega_c+k\omega_m)t) + \end{align} + \end{frame} +%------------------------------------------------------------------------------- + \begin{frame} + \begin{figure} + \only<1>{\includegraphics[scale = 0.75]{images/fm_frequenz.png}} + \only<2>{\includegraphics[scale = 0.75]{images/bessel_frequenz.png}} + \end{figure} + \end{frame} +%------------------------------------------------------------------------------- +\section{Input Parameter} + \begin{frame} + \frametitle{Träger-Frequenz Parameter} + \onslide<1->{\begin{equation}\cos(\omega_ct+\beta\sin(\omega_mt))\end{equation}} + \only<1>{\includegraphics[scale=0.75]{images/100HZ.png}} + \only<2>{\includegraphics[scale=0.75]{images/200HZ.png}} + \only<3>{\includegraphics[scale=0.75]{images/300HZ.png}} + \only<4>{\includegraphics[scale=0.75]{images/400HZ.png}} + \end{frame} +%------------------------------------------------------------------------------- +\begin{frame} +\frametitle{Modulations-Frequenz Parameter} +\onslide<1->{\begin{equation}\cos(\omega_ct+\beta\sin(\omega_mt))\end{equation}} +\only<1>{\includegraphics[scale=0.75]{images/fm_3Hz.png}} +\only<2>{\includegraphics[scale=0.75]{images/fm_5Hz.png}} +\only<3>{\includegraphics[scale=0.75]{images/fm_7Hz.png}} +\only<4>{\includegraphics[scale=0.75]{images/fm_10Hz.png}} +\only<5>{\includegraphics[scale=0.75]{images/fm_20Hz.png}} +\only<6>{\includegraphics[scale=0.75]{images/fm_30Hz.png}} +\end{frame} +%------------------------------------------------------------------------------- +\begin{frame} +\frametitle{Beta Parameter} + \onslide<1->{\begin{equation}\sum_{k= -\infty}^\infty J_{k}(\beta) \cos((\omega_c+k\omega_m)t)\end{equation}} + \only<1>{\includegraphics[scale=0.7]{images/beta_0.001.png}} + \only<2>{\includegraphics[scale=0.7]{images/beta_0.1.png}} + \only<3>{\includegraphics[scale=0.7]{images/beta_0.5.png}} + \only<4>{\includegraphics[scale=0.7]{images/beta_1.png}} + \only<5>{\includegraphics[scale=0.7]{images/beta_2.png}} + \only<6>{\includegraphics[scale=0.7]{images/beta_3.png}} + \only<7>{\includegraphics[scale=0.7]{images/bessel.png}} +\end{frame} +%------------------------------------------------------------------------------- +\begin{frame} + \includegraphics[scale=0.5]{images/beta_1.png} + \includegraphics[scale=0.5]{images/bessel.png} +\end{frame} +\end{document} diff --git a/buch/papers/fm/RS presentation/Frequency modulation (FM) and Bessel functions.pdf b/buch/papers/fm/RS presentation/Frequency modulation (FM) and Bessel functions.pdf new file mode 100644 index 0000000..a6e701c Binary files /dev/null and b/buch/papers/fm/RS presentation/Frequency modulation (FM) and Bessel functions.pdf differ diff --git a/buch/papers/fm/RS presentation/README.txt b/buch/papers/fm/RS presentation/README.txt new file mode 100644 index 0000000..4d0620f --- /dev/null +++ b/buch/papers/fm/RS presentation/README.txt @@ -0,0 +1 @@ +Dies ist die Presentation des Reed-Solomon-Code \ No newline at end of file diff --git a/buch/papers/fm/RS presentation/RS.tex b/buch/papers/fm/RS presentation/RS.tex index 8e3de17..8a67619 100644 --- a/buch/papers/fm/RS presentation/RS.tex +++ b/buch/papers/fm/RS presentation/RS.tex @@ -1,3 +1,5 @@ +%% !TeX root = RS.tex + \documentclass[11pt,aspectratio=169]{beamer} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} @@ -13,7 +15,7 @@ \logo{} \institute{OST Ostschweizer Fachhochschule} \date{16.5.2022} - \subject{Mathematisches Seminar} + \subject{Mathematisches Seminar- Spezielle Funktionen} %\setbeamercovered{transparent} \setbeamercovered{invisible} \setbeamertemplate{navigation symbols}{} @@ -24,139 +26,98 @@ \section{Einführung} \begin{frame} \frametitle{Frequenzmodulation} - \begin{itemize} - \visible<1->{\item Für Übertragung von Daten} - \visible<2->{\item Amplituden unabhängig} - \end{itemize} + + \visible<1->{\begin{equation} \cos(\omega_c t+\beta\sin(\omega_mt))\end{equation}} + + \only<2>{\includegraphics[scale= 0.7]{images/fm_in_time.png}} + \only<3>{\includegraphics[scale= 0.7]{images/fm_frequenz.png}} + \only<4>{\includegraphics[scale= 0.7]{images/bessel_frequenz.png}} + + \end{frame} %------------------------------------------------------------------------------- - \begin{frame} - \frametitle{Parameter} - \begin{center} - \begin{tabular}{ c c c } - \hline - Nutzlas & Fehler & Versenden \\ - \hline - 3 & 2 & 7 Werte eines Polynoms vom Grad 2 \\ - 4 & 2 & 8 Werte eines Polynoms vom Grad 3 \\ -\visible<1->{3}& -\visible<1->{3}& -\visible<1->{9 Werte eines Polynoms vom Grad 2} \\ - &&\\ -\visible<1->{$k$} & -\visible<1->{$t$} & -\visible<1->{$k+2t$ Werte eines Polynoms vom Grad $k-1$} \\ - \hline - &&\\ - &&\\ - \multicolumn{3}{l} { - \visible<1>{Ausserdem können bis zu $2t$ Fehler erkannt werden!} - } - \end{tabular} - \end{center} - \end{frame} +\section{Proof} +\begin{frame} + \frametitle{Bessel} -%------------------------------------------------------------------------------- + \visible<1->{\begin{align} + \cos(\beta\sin\varphi) + &= + J_0(\beat) + 2\sum_{m=1}^\infty J_{2m}(\beta) \cos(2m\varphi) + \\ + \sin(\beta\sin\varphi) + &= + J_0(\beat) + 2\sum_{m=1}^\infty J_{2m}(\beta) \cos(2m\varphi) + \\ + J_{-n}(\beat) &= (-1)^n J_n(\beta) + \end{align}} + \visible<2->{\begin{align} + \cos(A + B) + &= + \cos(A)\cos(B)-\sin(A)\sin(B) + \\ + 2\cos (A)\cos (B) + &= + \cos(A-B)+\cos(A+B) + \\ + 2\sin(A)\sin(B) + &= + \cos(A-B)-\cos(A+B) + \end{align}} +\end{frame} -\section{Diskrete Fourier Transformation} - \begin{frame} - \frametitle{Idee} - \begin{itemize} - \item Fourier-transformieren - \item Übertragung - \item Rücktransformieren - \end{itemize} +%------------------------------------------------------------------------------- +\begin{frame} + \frametitle{Prof->Done} + \begin{align} + \cos(\omega_ct+\beta\sin(\omega_mt)) + &= + \sum_{k= -\infty}^\infty J_{k}(\beta) \cos((\omega_c+k\omgea_m)t) + \end{align} \end{frame} %------------------------------------------------------------------------------- \begin{frame} - \begin{figure} - \only<1>{ - \includegraphics[width=0.9\linewidth]{images/fig1.pdf} - } - \only<2>{ - \includegraphics[width=0.9\linewidth]{images/fig2.pdf} - } - \only<3>{ - \includegraphics[width=0.9\linewidth]{images/fig3.pdf} - } - \only<4>{ - \includegraphics[width=0.9\linewidth]{images/fig4.pdf} - } - \only<5>{ - \includegraphics[width=0.9\linewidth]{images/fig5.pdf} - } - \only<6>{ - \includegraphics[width=0.9\linewidth]{images/fig6.pdf} - } - \only<7>{ - \includegraphics[width=0.9\linewidth]{images/fig7.pdf} - } + \begin{figure} + \only<1>{\includegraphics[scale = 0.75]{images/fm_frequenz.png}} + \only<2>{\includegraphics[scale = 0.75]{images/bessel_frequenz.png}} \end{figure} \end{frame} %------------------------------------------------------------------------------- +\section{Input Parameter} \begin{frame} - \frametitle{Diskrete Fourier Transformation} - \begin{itemize} - \item Diskrete Fourier-Transformation gegeben durch: - \visible<1->{ - \[ - \label{ft_discrete} - \hat{c}_{k} - = \frac{1}{N} \sum_{n=0}^{N-1} - {f}_n \cdot e^{-\frac{2\pi j}{N} \cdot kn} - \]} - \visible<2->{ - \item Ersetzte - \[ - w = e^{-\frac{2\pi j}{N} k} - \]} - \visible<3->{ - \item Wenn $N$ konstant: - \[ - \hat{c}_{k}=\frac{1}{N}( {f}_0 w^0 + {f}_1 w^1 + {f}_2 w^2 + \dots + {f}_{N-1} w^N) - \]} - \end{itemize} - \end{frame} - -%------------------------------------------------------------------------------- - -%------------------------------------------------------------------------------- - \begin{frame} - \frametitle{Ein Beispiel} - - \begin{itemize} - - \onslide<1->{\item endlicher Körper $q = 11$} - - \onslide<2->{ist eine Primzahl} - - \onslide<3->{beinhaltet die Zahlen $\mathbb{F}_{11} = \{0,1,2,3,4,5,6,7,8,9,10\}$} - - \vspace{10pt} - - \onslide<4->{\item Nachrichtenblock $=$ Nutzlast $+$ Fehlerkorrekturstellen} - - \onslide<5->{$n = q - 1 = 10$ Zahlen} - - \vspace{10pt} - - \onslide<6->{\item Max.~Fehler $t = 2$} - - \onslide<7->{maximale Anzahl von Fehler, die wir noch korrigieren können} - - \vspace{10pt} - - \onslide<8->{\item Nutzlast $k = n -2t = 6$ Zahlen} - - \onslide<9->{Fehlerkorrkturstellen $2t = 4$ Zahlen} - - \onslide<10->{Nachricht $m = [0,0,0,0,4,7,2,5,8,1]$} - - \onslide<11->{als Polynom $m(X) = 4X^5 + 7X^4 + 2X^3 + 5X^2 + 8X + 1$} - - \end{itemize} - + \frametitle{Träger-Frequenz Parameter} + \onslide<1->{\begin{equation}\cos(\omega_ct+\beta\sin(\omega_mt))\end{equation}} + \only<1>{\includegraphics[scale=0.75]{images/100HZ.png}} + \only<2>{\includegraphics[scale=0.75]{images/200HZ.png}} + \only<3>{\includegraphics[scale=0.75]{images/300HZ.png}} + \only<4>{\includegraphics[scale=0.75]{images/400HZ.png}} \end{frame} - - +%------------------------------------------------------------------------------- +\begin{frame} +\frametitle{Modulations-Frequenz Parameter} +\onslide<1->{\begin{equation}\cos(\omega_ct+\beta\sin(\omega_mt))\end{equation}} +\only<1>{\includegraphics[scale=0.75]{images/fm_3Hz.png}} +\only<2>{\includegraphics[scale=0.75]{images/fm_5Hz.png}} +\only<3>{\includegraphics[scale=0.75]{images/fm_7Hz.png}} +\only<4>{\includegraphics[scale=0.75]{images/fm_10Hz.png}} +\only<5>{\includegraphics[scale=0.75]{images/fm_20Hz.png}} +\only<6>{\includegraphics[scale=0.75]{images/fm_30Hz.png}} +\end{frame} +%------------------------------------------------------------------------------- +\begin{frame} +\frametitle{Beta Parameter} + \onslide<1->{\begin{equation}\sum_{k= -\infty}^\infty J_{k}(\beta) \cos((\omega_c+k\omgea_m)t)\end{equation}} + \only<1>{\includegraphics[scale=0.7]{images/beta_0.001.png}} + \only<2>{\includegraphics[scale=0.7]{images/beta_0.1.png}} + \only<3>{\includegraphics[scale=0.7]{images/beta_0.5.png}} + \only<4>{\includegraphics[scale=0.7]{images/beta_1.png}} + \only<5>{\includegraphics[scale=0.7]{images/beta_2.png}} + \only<6>{\includegraphics[scale=0.7]{images/beta_3.png}} + \only<7>{\includegraphics[scale=0.7]{images/bessel.png}} +\end{frame} +%------------------------------------------------------------------------------- +\begin{frame} + \includegraphics[scale=0.5]{images/beta_1.png} + \includegraphics[scale=0.5]{images/bessel.png} +\end{frame} \end{document} diff --git a/buch/papers/fm/RS presentation/images/100HZ.png b/buch/papers/fm/RS presentation/images/100HZ.png new file mode 100644 index 0000000..371b9bf Binary files /dev/null and b/buch/papers/fm/RS presentation/images/100HZ.png differ diff --git a/buch/papers/fm/RS presentation/images/200HZ.png b/buch/papers/fm/RS presentation/images/200HZ.png new file mode 100644 index 0000000..f6836bd Binary files /dev/null and b/buch/papers/fm/RS presentation/images/200HZ.png differ diff --git a/buch/papers/fm/RS presentation/images/300HZ.png b/buch/papers/fm/RS presentation/images/300HZ.png new file mode 100644 index 0000000..6762c1a Binary files /dev/null and b/buch/papers/fm/RS presentation/images/300HZ.png differ diff --git a/buch/papers/fm/RS presentation/images/400HZ.png b/buch/papers/fm/RS presentation/images/400HZ.png new file mode 100644 index 0000000..236c428 Binary files /dev/null and b/buch/papers/fm/RS presentation/images/400HZ.png differ diff --git a/buch/papers/fm/RS presentation/images/bessel.png b/buch/papers/fm/RS presentation/images/bessel.png new file mode 100644 index 0000000..f4c83ea Binary files /dev/null and b/buch/papers/fm/RS presentation/images/bessel.png differ diff --git a/buch/papers/fm/RS presentation/images/bessel2.png b/buch/papers/fm/RS presentation/images/bessel2.png new file mode 100644 index 0000000..ccda3f9 Binary files /dev/null and b/buch/papers/fm/RS presentation/images/bessel2.png differ diff --git a/buch/papers/fm/RS presentation/images/bessel_beta1.png b/buch/papers/fm/RS presentation/images/bessel_beta1.png new file mode 100644 index 0000000..1f5c47e Binary files /dev/null and b/buch/papers/fm/RS presentation/images/bessel_beta1.png differ diff --git a/buch/papers/fm/RS presentation/images/bessel_frequenz.png b/buch/papers/fm/RS presentation/images/bessel_frequenz.png new file mode 100644 index 0000000..4f228b9 Binary files /dev/null and b/buch/papers/fm/RS presentation/images/bessel_frequenz.png differ diff --git a/buch/papers/fm/RS presentation/images/beta_0.001.png b/buch/papers/fm/RS presentation/images/beta_0.001.png new file mode 100644 index 0000000..7e4e276 Binary files /dev/null and b/buch/papers/fm/RS presentation/images/beta_0.001.png differ diff --git a/buch/papers/fm/RS presentation/images/beta_0.1.png b/buch/papers/fm/RS presentation/images/beta_0.1.png new file mode 100644 index 0000000..e7722b3 Binary files /dev/null and b/buch/papers/fm/RS presentation/images/beta_0.1.png differ diff --git a/buch/papers/fm/RS presentation/images/beta_0.5.png b/buch/papers/fm/RS presentation/images/beta_0.5.png new file mode 100644 index 0000000..5261b43 Binary files /dev/null and b/buch/papers/fm/RS presentation/images/beta_0.5.png differ diff --git a/buch/papers/fm/RS presentation/images/beta_1.png b/buch/papers/fm/RS presentation/images/beta_1.png new file mode 100644 index 0000000..6d3535c Binary files /dev/null and b/buch/papers/fm/RS presentation/images/beta_1.png differ diff --git a/buch/papers/fm/RS presentation/images/beta_2.png b/buch/papers/fm/RS presentation/images/beta_2.png new file mode 100644 index 0000000..6930eae Binary files /dev/null and b/buch/papers/fm/RS presentation/images/beta_2.png differ diff --git a/buch/papers/fm/RS presentation/images/beta_3.png b/buch/papers/fm/RS presentation/images/beta_3.png new file mode 100644 index 0000000..c6df82c Binary files /dev/null and b/buch/papers/fm/RS presentation/images/beta_3.png differ diff --git a/buch/papers/fm/RS presentation/images/fm_10Hz.png b/buch/papers/fm/RS presentation/images/fm_10Hz.png new file mode 100644 index 0000000..51bddc7 Binary files /dev/null and b/buch/papers/fm/RS presentation/images/fm_10Hz.png differ diff --git a/buch/papers/fm/RS presentation/images/fm_20hz.png b/buch/papers/fm/RS presentation/images/fm_20hz.png new file mode 100644 index 0000000..126ecf3 Binary files /dev/null and b/buch/papers/fm/RS presentation/images/fm_20hz.png differ diff --git a/buch/papers/fm/RS presentation/images/fm_30Hz.png b/buch/papers/fm/RS presentation/images/fm_30Hz.png new file mode 100644 index 0000000..371b9bf Binary files /dev/null and b/buch/papers/fm/RS presentation/images/fm_30Hz.png differ diff --git a/buch/papers/fm/RS presentation/images/fm_3Hz.png b/buch/papers/fm/RS presentation/images/fm_3Hz.png new file mode 100644 index 0000000..d4098af Binary files /dev/null and b/buch/papers/fm/RS presentation/images/fm_3Hz.png differ diff --git a/buch/papers/fm/RS presentation/images/fm_40Hz.png b/buch/papers/fm/RS presentation/images/fm_40Hz.png new file mode 100644 index 0000000..4cf11d4 Binary files /dev/null and b/buch/papers/fm/RS presentation/images/fm_40Hz.png differ diff --git a/buch/papers/fm/RS presentation/images/fm_5Hz.png b/buch/papers/fm/RS presentation/images/fm_5Hz.png new file mode 100644 index 0000000..e495b5c Binary files /dev/null and b/buch/papers/fm/RS presentation/images/fm_5Hz.png differ diff --git a/buch/papers/fm/RS presentation/images/fm_7Hz.png b/buch/papers/fm/RS presentation/images/fm_7Hz.png new file mode 100644 index 0000000..b3dd7e3 Binary files /dev/null and b/buch/papers/fm/RS presentation/images/fm_7Hz.png differ diff --git a/buch/papers/fm/RS presentation/images/fm_frequenz.png b/buch/papers/fm/RS presentation/images/fm_frequenz.png new file mode 100644 index 0000000..26bfd86 Binary files /dev/null and b/buch/papers/fm/RS presentation/images/fm_frequenz.png differ diff --git a/buch/papers/fm/RS presentation/images/fm_in_time.png b/buch/papers/fm/RS presentation/images/fm_in_time.png new file mode 100644 index 0000000..068eafc Binary files /dev/null and b/buch/papers/fm/RS presentation/images/fm_in_time.png differ diff --git a/buch/papers/fm/main.tex b/buch/papers/fm/main.tex index de3e10a..00fb34b 100644 --- a/buch/papers/fm/main.tex +++ b/buch/papers/fm/main.tex @@ -2,8 +2,8 @@ % main.tex -- Paper zum Thema % % (c) 2020 Hochschule Rapperswil -% -% !TeX root = /.../...buch.tex +% +% !TeX root = buch.tex %\begin {document} \chapter{Thema\label{chapter:fm}} \lhead{Thema} -- cgit v1.2.1 From 5d1cd4306966a5433bcc8375d627989aade53a3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sat, 21 May 2022 07:21:47 +0200 Subject: add new script for risch part --- buch/chapters/060-integral/experiments/rxy.maxima | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 buch/chapters/060-integral/experiments/rxy.maxima diff --git a/buch/chapters/060-integral/experiments/rxy.maxima b/buch/chapters/060-integral/experiments/rxy.maxima new file mode 100644 index 0000000..0d5a56d --- /dev/null +++ b/buch/chapters/060-integral/experiments/rxy.maxima @@ -0,0 +1,9 @@ +y: sqrt(a*x^2+b*x+c); + +F: log(x + b/(2 * a) + y/sqrt(a))/sqrt(a); + +f: diff(F, x); + +ratsimp(f); + +ratsimp(y*f); -- cgit v1.2.1 From eceae67b3a13bc28acc446288429a90be2efa99d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sat, 21 May 2022 12:45:42 +0200 Subject: curvature graph --- buch/papers/kugel/images/Makefile | 13 ++++++ buch/papers/kugel/images/curvature.pov | 72 +++++++++++++++++++++++++++++ buch/papers/kugel/images/curvgraph.m | 83 ++++++++++++++++++++++++++++++++++ 3 files changed, 168 insertions(+) create mode 100644 buch/papers/kugel/images/Makefile create mode 100644 buch/papers/kugel/images/curvature.pov create mode 100644 buch/papers/kugel/images/curvgraph.m diff --git a/buch/papers/kugel/images/Makefile b/buch/papers/kugel/images/Makefile new file mode 100644 index 0000000..8efa228 --- /dev/null +++ b/buch/papers/kugel/images/Makefile @@ -0,0 +1,13 @@ +# +# Makefile -- build images +# +# (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +all: curvature.png + +curvature.inc: curvgraph.m + octave curvgraph.m + +curvature.png: curvature.pov curvature.inc + povray +A0.1 +W1920 +H1080 +Ocurvature.png curvature.pov + diff --git a/buch/papers/kugel/images/curvature.pov b/buch/papers/kugel/images/curvature.pov new file mode 100644 index 0000000..3535488 --- /dev/null +++ b/buch/papers/kugel/images/curvature.pov @@ -0,0 +1,72 @@ +// +// curvature.pov +// +// (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +// + +#version 3.7; +#include "colors.inc" + +global_settings { + assumed_gamma 1 +} + +#declare imagescale = 0.1; + +camera { + location <40, 10, -20> + look_at <0, 0, 0> + right 16/9 * x * imagescale + up y * imagescale +} + +light_source { + <10, 10, -40> color White + area_light <1,0,0> <0,0,1>, 10, 10 + adaptive 1 + jitter +} + +sky_sphere { + pigment { + color rgb<1,1,1> + } +} + +// +// draw an arrow from to with thickness with +// color +// +#macro arrow(from, to, arrowthickness, c) +#declare arrowdirection = vnormalize(to - from); +#declare arrowlength = vlength(to - from); +union { + sphere { + from, 1.1 * arrowthickness + } + cylinder { + from, + from + (arrowlength - 5 * arrowthickness) * arrowdirection, + arrowthickness + } + cone { + from + (arrowlength - 5 * arrowthickness) * arrowdirection, + 2 * arrowthickness, + to, + 0 + } + pigment { + color c + } + finish { + specular 0.9 + metallic + } +} +#end + +arrow(<-3.1,0,0>, <3.1,0,0>, 0.01, White) +arrow(<0,-1,0>, <0,1,0>, 0.01, White) +arrow(<0,0,-2.1>, <0,0,2.1>, 0.01, White) + +#include "curvature.inc" diff --git a/buch/papers/kugel/images/curvgraph.m b/buch/papers/kugel/images/curvgraph.m new file mode 100644 index 0000000..96ca4b1 --- /dev/null +++ b/buch/papers/kugel/images/curvgraph.m @@ -0,0 +1,83 @@ +# +# curvature.m +# +# (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# + +global N; +N = 10; + +global sigma2; +sigma2 = 1; + +global s; +s = 1; + +xmin = -3; +xmax = 3; +xsteps = 1000; +hx = (xmax - xmin) / xsteps; + +ymin = -2; +ymax = 2; +ysteps = 1000; +hy = (ymax - ymin) / ysteps; + +function retval = f0(r) + global sigma2; + retval = exp(-r^2/sigma2)/sigma2 - exp(-r^2/(2*sigma2))/(sqrt(2)*sigma2); +end + +global N0; +N0 = f0(0); + +function retval = f1(x,y) + global N0; + retval = f0(hypot(x, y)) / N0; +endfunction + +function retval = f(x, y) + global s; + retval = f1(x+s, y) - f1(x-s, y); +endfunction + +function retval = curvature0(r) + global sigma2; + retval = ( + (2*sigma2-r^2)*exp(-r^2/(2*sigma2)) + + + 4*(r^2-sigma2)*exp(-r^2/sigma2) + ) / (sigma2^2); +endfunction + +function retval = curvature1(x, y) + retval = curvature0(hypot(x, y)); +endfunction + +function retval = curvature(x, y) + global s; + retval = curvature1(x+s, y) + curvature1(x-s, y); +endfunction + +function retval = farbe(x, y) + c = curvature(x, y); + retval = c * ones(1,3); +endfunction + +fn = fopen("curvature.inc", "w"); + +for ix = (0:xsteps) + x = xmin + ix * hx; + for iy = (0:ysteps) + y = ymin + iy * hy; + fprintf(fn, "sphere { <%.4f, %.4f, %.4f>, 0.01\n", + x, f(x, y), y); + color = farbe(x, y); + fprintf(fn, "pigment { color rgb<%.4f,%.4f,%.4f> }\n", + color(1,1), color(1,2), color(1,3)); + fprintf(fn, "finish { metallic specular 0.5 }\n"); + fprintf(fn, "}\n"); + end +end + +fclose(fn); -- cgit v1.2.1 From 411fb410f790fcc1bb3da381c17119ebb5130032 Mon Sep 17 00:00:00 2001 From: "ENEZ-PC\\erdem" Date: Sat, 21 May 2022 18:56:21 +0200 Subject: Korrektur 21.05 --- buch/papers/nav/bilder/ephe.png | Bin 184799 -> 543515 bytes buch/papers/nav/bilder/recht.jpg | Bin 0 -> 42889 bytes buch/papers/nav/bilder/sextant.jpg | Bin 0 -> 8280 bytes buch/papers/nav/einleitung.tex | 2 +- buch/papers/nav/flatearth.tex | 15 +++-- buch/papers/nav/main.tex | 2 +- buch/papers/nav/nautischesdreieck.tex | 123 +++++++++++++++++----------------- buch/papers/nav/sincos.tex | 6 +- buch/papers/nav/trigo.tex | 66 ++++++++++-------- 9 files changed, 114 insertions(+), 100 deletions(-) create mode 100644 buch/papers/nav/bilder/recht.jpg create mode 100644 buch/papers/nav/bilder/sextant.jpg diff --git a/buch/papers/nav/bilder/ephe.png b/buch/papers/nav/bilder/ephe.png index 0aeef6f..3f99a36 100644 Binary files a/buch/papers/nav/bilder/ephe.png and b/buch/papers/nav/bilder/ephe.png differ diff --git a/buch/papers/nav/bilder/recht.jpg b/buch/papers/nav/bilder/recht.jpg new file mode 100644 index 0000000..3f60370 Binary files /dev/null and b/buch/papers/nav/bilder/recht.jpg differ diff --git a/buch/papers/nav/bilder/sextant.jpg b/buch/papers/nav/bilder/sextant.jpg new file mode 100644 index 0000000..53dd784 Binary files /dev/null and b/buch/papers/nav/bilder/sextant.jpg differ diff --git a/buch/papers/nav/einleitung.tex b/buch/papers/nav/einleitung.tex index 8d8c5c1..aafa107 100644 --- a/buch/papers/nav/einleitung.tex +++ b/buch/papers/nav/einleitung.tex @@ -4,6 +4,6 @@ Heutzutage ist die Navigation ein Teil des Lebens. Man sendet dem Kollegen seinen eigenen Standort, um sich das ewige Erklären zu sparen oder gibt die Adresse des Ziels ein, damit man seinen Aufenthaltsort zum Beispiel auf einer riesigen Wiese am See findet. Dies wird durch Technologien wie Funknavigation, welches ein auf Langzeitmessung beruhendes Hyperbelverfahren mit Langwellen ist oder die verbreitete Satellitennavigation, welche vier Satelliten für eine Messung zur Standortbestimmung nutzt. -Vor all diesen technologischen Fortschritten gab es lediglich die Astronavigation, welche heute noch auf kleineren Schiffen benötigt wird im Falle eines Stromausfalls. +Vor all diesen technologischen Fortschritten gab es lediglich die Astronavigation, welche heute noch auf Schiffen verwendet wird im Falle eines Stromausfalls. Aber wie funktioniert die Navigation mit den Sternen? Welche Hilfsmittel benötigt man, welche Rolle spielt die Mathematik und weshalb kann die Erde nicht flach sein? In diesem Kapitel werden genau diese Fragen mithilfe des nautischen Dreiecks, der sphärischen Trigonometrie und einigen Hilfsmitteln und Messgeräten beantwortet. \ No newline at end of file diff --git a/buch/papers/nav/flatearth.tex b/buch/papers/nav/flatearth.tex index bec242e..5bfc1b7 100644 --- a/buch/papers/nav/flatearth.tex +++ b/buch/papers/nav/flatearth.tex @@ -9,19 +9,20 @@ \end{center} \end{figure} -Es gibt heut zu Tage viele Beweise dafür, dass die Erde eine Kugel ist. +Es gibt heutzutage viele Beweise dafür, dass die Erde eine Kugel ist. Die Fotos von unserem Planeten oder die Berichte der Astronauten. -Aber schon vor ca. 2300 Jahren hat Aristotoles bemerkt, dass Schiffe im Horizont verschwinden und die einzige Erklärung dafür die Kugelgestalt der Erde ist oder der Erdschatten bei einer Mondfinsternis immer rund ist. +Aber schon vor ca. 2300 Jahren hat Aristoteles bemerkt, dass Schiffe im Horizont verschwinden und die einzige Erklärung dafür die Kugelgestalt der Erde ist. +Auch der Erdschatten bei einer Mondfinsternis ist immer rund. Eratosthenes konnte etwa 100 Jahre später den Erdumfang berechnen. Er beobachtete, dass die Sonne in Syene mittags im Zenit steht und gleichzeitig in Alexandria unter einem Winkel einfällt. Mithilfe der Trigonometrie konnte er mit dem Abstand der Städte und dem Einfallswinkel den Umfang berechnen. -Auch in der Navigation würden grobe Fehler passieren, wenn man davon ausgeht, dass die Erde eine Scheibe ist. -Man sieht es zum Beispiel sehr gut, wenn man die Anwendung Google Earth und eine Weltkarte vergleicht. +Der Kartograph Gerhard Mercator projizierte die Erdkugel auf ein Papier und erstellte so eine winkeltreue Karte. +Jedoch wurden die Länder, die einen grösseren Abstand zum Äquator haben vergrössert, damit die Winkel stimmen können. +Wurde man also nun davon ausgehen, dass die Erde flach ist so würden wir nie dort ankommen wo wir es wollen. + +Dies sieht man zum Beispiel sehr gut, wenn man die Anwendung Google Earth und eine Weltkarte vergleicht. Grönland ist auf der Weltkarte so gross wie Afrika. In der Anwendung Google Earth jedoch ist Grönland etwa so gross wie Algerien. Das liegt daran, das man die 3D – Weltkarte nicht einfach auslegen kann. -Der Kartograph Gerhard Mercator projizierte die Erdkugel auf ein Papier und erstellte so eine winkeltreue Karte. -Jedoch wurden die Länder, die einen grösseren Abstand zum Äquator haben vergrössert, damit die Winkel stimmen können. -Wurde man also nun davon ausgehen, dass die Erde flach ist so würden wir nie dort ankommen wo wir es wollen. \ No newline at end of file diff --git a/buch/papers/nav/main.tex b/buch/papers/nav/main.tex index 47764e8..e16dc2a 100644 --- a/buch/papers/nav/main.tex +++ b/buch/papers/nav/main.tex @@ -3,7 +3,7 @@ % % (c) 2020 Hochschule Rapperswil % -\chapter{Spährische Navigation\label{chapter:nav}} +\chapter{Sphärische Navigation\label{chapter:nav}} \lhead{Sphärische Navigation} \begin{refsection} \chapterauthor{Enez Erdem und Marc Kühne} diff --git a/buch/papers/nav/nautischesdreieck.tex b/buch/papers/nav/nautischesdreieck.tex index c1ad38a..c239d64 100644 --- a/buch/papers/nav/nautischesdreieck.tex +++ b/buch/papers/nav/nautischesdreieck.tex @@ -1,22 +1,14 @@ \section{Das Nautische Dreieck} \subsection{Definition des Nautischen Dreiecks} -Ursprünglich ist das nautische Dreieck ein Hilfsmittel der sphärischen Astronomie um die momentane Position eines Fixsterns oder Planeten an der Himmelskugel. Die Himmelskugel ist eine gedachte Kugel, welche die Erde und dessen Beobachter umgibt und als Rechenfläche für Koordinaten in der Astronomie und Geodäsie dient. -Das nautische Dreieck definiert sich durch folgende Ecken: Zenit, Gestirn und Himmelspol. - Der Zenit ist jener Punkt, der vom Erdmittelpunkt durch denn eigenen Standort an die Himmelskugel verlängert wird. Ein Gestirn ist ein Planet oder ein Fixstern, zu welchen es diverse Jahrbücher mit allen astronomischen Eigenschaften gibt. Der Himmelspol ist der Nordpol an die Himmelskugel projiziert. +Das nautische Dreieck definiert sich durch folgende Ecken: Zenit, Gestirn und Himmelspol. -Zur Anwendung der Formeln der sphärischen Trigonometrie gelten folgende einfache Zusammenhänge: -\begin{itemize} - \item Seitenlänge Zenit zu Himmelspol $= \frac{\pi}{2} - \phi $ - \item Seitenlänge Himmelspol zu Gestirn $= \frac{\pi}{2} - \delta$ - \item Seitenlänge Zenit zu Gestirn $= \frac{\pi}{2} - h$ - \item Winkel von Zenit zu Himmelsnordpol zu Gestirn$=\pi - \alpha$ - \item Winkel von Himmelsnordpol zu Zenit und Gestirn$= \tau$ -\end{itemize} -Um mit diesen Zusammenhängen zu rechnen benötigt man folgende Legende: +Ursprünglich ist das nautische Dreieck ein Hilfsmittel der sphärischen Astronomie um die momentane Position eines Fixsterns oder Planeten an der Himmelskugel zu bestimmen. + +Für die Definition gilt: \begin{center} \begin{tabular}{ c c c } Winkel && Name / Beziehung \\ @@ -31,6 +23,15 @@ Um mit diesen Zusammenhängen zu rechnen benötigt man folgende Legende: \end{tabular} \end{center} +\begin{itemize} + \item Seitenlänge Zenit zu Himmelspol $= \frac{\pi}{2} - \phi $ + \item Seitenlänge Himmelspol zu Gestirn $= \frac{\pi}{2} - \delta$ + \item Seitenlänge Zenit zu Gestirn $= \frac{\pi}{2} - h$ + \item Winkel von Zenit zu Himmelsnordpol zu Gestirn$=\pi - \alpha$ + \item Winkel von Himmelsnordpol zu Zenit und Gestirn$= \tau$ +\end{itemize} + + \subsection{Zusammenhang des nautischen Dreiecks und des Kugeldreiecks auf der Erdkugel} \begin{figure} \begin{center} @@ -39,15 +40,13 @@ Um mit diesen Zusammenhängen zu rechnen benötigt man folgende Legende: \end{center} \end{figure} -Wie man im oberen Bild sieht, liegt das nautische Dreieck auf der Himmelskugel mit den Ecken Zenit, Gestirn und Himmelsnordpol. -Das selbe Dreieck kann man aber auch auf die Erdkugel projizieren und es hat dann die Ecken Standort, Bildpunkt und Nordpol. -Als Bildpunkt wird in der astronomischen Navigation der Punkt bezeichnet, an dem eine gedachte Linie vom Mittelpunkt eines beobachteten Gestirns zum Mittelpunkt der Erde die Erdoberfläche schneidet. - +Wie man in der Abbildung 21.4 sieht, liegt das nautische Dreieck auf der Himmelskugel mit den Ecken Zenit, Gestirn und Himmelsnordpol. +Das selbe Dreieck kann man aber auch auf die Erdkugel projizieren. Als Bildpunkt wird in der astronomischen Navigation der Punkt bezeichnet, an dem eine gedachte Linie vom Mittelpunkt eines beobachteten Gestirns zum Mittelpunkt der Erde die Erdoberfläche schneidet. Die Projektion auf der Erdkugel hat die Ecken Nordpol, Standort und Bildpunkt. \section{Standortbestimmung ohne elektronische Hilfsmittel} -Um den eigenen Standort herauszufinden, wird in diesem Kapitel die Projektion Nautische Dreieck auf der Erdkugel zur Hilfe genommen. -Mithilfe einiger Hilfsmittel und der Sphärischen Trigonometrie kann man dann die Längen- und Breitengrade des eigenen Standortes bestimmen. - +Um den eigenen Standort herauszufinden, wird in diesem Kapitel die Projektion des nautische Dreiecks auf die Erdkugel zur Hilfe genommen. +Mithilfe eines Sextanten, einem Jahrbuch und der sphärischen Trigonometrie kann man dann die Längen- und Breitengrade des eigenen Standortes bestimmen. +Was ein Sextant und ein Jahrbuch ist, wird im Kapitel 21.6 erklärt. \begin{figure} \begin{center} \includegraphics[width=10cm]{papers/nav/bilder/dreieck.pdf} @@ -60,31 +59,30 @@ Mithilfe einiger Hilfsmittel und der Sphärischen Trigonometrie kann man dann di \subsection{Ecke $P$ und $A$} Unser eigener Standort ist der gesuchte Ecke $P$ und die Ecke $A$ ist in unserem Fall der Nordpol. -Der Vorteil ander Idee des Nautischen Dreiecks ist, dass eine Ecke immer der Nordpol ist. +Der Vorteil ander Idee des nautischen Dreiecks ist, dass eine Ecke immer der Nordpol ist. Somit ist diese Ecke immer bekannt und nur deswegen sind die Zusammenhänge von Rektaszension, Sternzeit und Deklination so simpel. -\subsection{Ecke $B$ und $C$ - Bildpunkt X und Y} +\subsection{Ecke $B$ und $C$ - Bildpunkt $X$ und $Y$} Für die Standortermittlung benötigt man als weiteren Punkt ein Gestirn bzw. seinen Bildpunkt auf der Erdkugel. Damit das trigonometrische Rechnen einfacher wird, werden hier zwei Gestirne zur Hilfe genommen. Es gibt diverse Gestirne, die man nutzen kann wie zum Beispiel die Sonne, der Mond oder die vier Navigationsplaneten Venus, Mars, Jupiter und Saturn. +Die Bildpunkte von den beiden Gestirnen $X$ und $Y$ bilden die beiden Ecken $B$ und $C$ im Dreieck der Abbildung 21.5. \subsection{Ephemeriden} Zu all diesen Gestirnen gibt es Ephemeriden, die man auch Jahrbücher nennt. In diesen findet man Begriffe wie Rektaszension, Deklination und Sternzeit. -Da diese Angaben in Stundenabständen gegeben sind, muss man für die minutengenaue Bestimmung zwischen den Stunden interpolieren. -Was diese Begriffe bedeuten, wird in den kommenden beiden Abschnitten erklärt. \begin{figure} \begin{center} - \includegraphics[width=18cm]{papers/nav/bilder/ephe.png} - \caption[Astrodienst - Ephemeriden Januar 2022]{Astrodienst - Ephemeriden Januar 2022} + \includegraphics[width=\textwidth]{papers/nav/bilder/ephe.png} + \caption[Nautical Almanac Mai 2002]{Nautical Almanac Mai 2002} \end{center} \end{figure} \subsubsection{Deklination} -Die Deklination $\delta$ beschreibt den Winkel zwischen dem Himmelsäquator und Gestirn und ergibt schlussendlich den Breitengrad. +Die Deklination $\delta$ beschreibt den Winkel zwischen dem Himmelsäquator und Gestirn und entspricht dem Breitengrad des Gestirns. -\subsubsection{Sternzeit und Rektaszension} +\subsubsection{Rektaszension und Sternzeit} Die Rektaszension $\alpha$ gibt an, in welchem Winkel das Gestirn zum Frühlingspunkt steht und geht vom Koordinatensystem der Himmelskugel aus. Der Frühlungspunkt ist der Nullpunkt auf dem Himmelsäquator. Die Tatsache, dass sich die Himmelskugel ca. vier Minuten schneller um die eigene Achse dreht als die Erdkugel, stellt hier ein kleines Problem dar. @@ -98,19 +96,28 @@ Für die Standortermittlung auf der Erdkugel ist es am einfachsten, wenn man die Für die Sternzeit von Greenwich $\theta $braucht man als erstes das Julianische Datum $T$ vom aktuellen Tag, welches sich leicht recherchieren lässt. Im Anschluss berechnet man die Sternzeit von Greenwich -$\theta = 6^h 41^m 50^s,54841 + 8640184^s,812866 \cdot T + 0^s,093104 \cdot T^2 - 0^s,0000062 \cdot T^3$. +\[\theta = 6^h 41^m 50^s,54841 + 8640184^s,812866 \cdot T + 0^s,093104 \cdot T^2 - 0^s,0000062 \cdot T^3.\] -Wenn mann die Sternzeit von Greenwich ausgerechnet hat, kann man den Längengrad des Gestirns $\lambda = \theta - \alpha$ mithilfe der Rektaszension und Sternzeit von Greenwich bestimmen. +Wenn man die Sternzeit von Greenwich ausgerechnet hat, kann man den Längengrad des Gestirns $\lambda = \theta - \alpha$ mithilfe der Rektaszension und Sternzeit von Greenwich bestimmen. Dies gilt analog auch für das zweite Gestirn. +\subsubsection{Sextant} +Ein Sextant ist ein nautisches Messinstrument, mit dem man den Winkel zwischen der Blickrichtung zu weit entfernten Objekten bestimmen kann, insbesondere den Winkelabstand zu einem Gestirn vom Horizont. Man nutze ihn vor allem für die astronomische Navigation auf See. -\subsection{Bestimmung des eigenen Standortes P} +\begin{figure} + \begin{center} + \includegraphics[width=10cm]{papers/nav/bilder/sextant.jpg} + \caption[Sextant]{Sextant} + \end{center} +\end{figure} + +\subsection{Bestimmung des eigenen Standortes $P$} Nun hat man die Koordinaten der beiden Gestirne und man weiss die Koordinaten des Nordpols. Damit wir unseren Standort bestimmen können, bilden wir zuerst das Dreieck $ABC$, dann das Dreieck $BPC$ und zum Schluss noch das Dreieck $ABP$. Mithilfe dieser Dreiecken können wir die einfachen Sätze der sphärischen Trigonometrie anwenden und benötigen lediglich ein Ephemeride zu den Gestirnen und einen Sextant. \begin{figure} \begin{center} - \includegraphics[width=10cm]{papers/nav/bilder/dreieck.pdf} + \includegraphics[width=8cm]{papers/nav/bilder/dreieck.pdf} \caption[Dreieck für die Standortbestimmung]{Dreieck für die Standortbestimmung} \end{center} \end{figure} @@ -128,15 +135,15 @@ Mithilfe dieser Dreiecken können wir die einfachen Sätze der sphärischen Trig \end{tabular} \end{center} -Mithilfe des sphärischen Trigonometrie und den darausfolgenden Zusammenhängen des Nautischen Dreiecks können wir nun alle Seiten des Dreiecks $ABC$ berechnen. +Mit unserem erlangten Wissen können wir nun alle Seiten des Dreiecks $ABC$ berechnen. -Die Seitenlänge der Seite "Nordpol zum Bildpunkt X" sei $c$. +Die Seite vom Nordpol zum Bildpunkt $X$ sei $c$. Dann ist $c = \frac{\pi}{2} - \delta_1$. -Die Seitenlänge der Seite "Nordpol zum Bildpunkt Y" sei $b$. +Die Seite vom Nordpol zum Bildpunkt $Y$ sei $b$. Dann ist $b = \frac{\pi}{2} - \delta_2$. -Der Innenwinkel beim der Ecke "Nordpol" sei $\alpha$. +Der Innenwinkel bei der Ecke, wo der Nordpol ist sei $\alpha$. Dann ist $ \alpha = |\lambda_1 - \lambda_2|$. mit @@ -144,55 +151,49 @@ mit \begin{tabular}{ c c c } Ecke && Name \\ \hline - $\delta_1$ && Deklination Bildpunkt $X$ \\ - $\delta_2$ && Deklination Bildpunk $Y$ \\ - $\lambda_1 $&& Längengrad Bildpunkt $X$\\ - $\lambda_2$ && Längengrad Bildpunkt $Y$ + $\delta_1$ && Deklination vom Bildpunkt $X$ \\ + $\delta_2$ && Deklination vom Bildpunk $Y$ \\ + $\lambda_1 $&& Längengrad vom Bildpunkt $X$\\ + $\lambda_2$ && Längengrad vom Bildpunkt $Y$ \end{tabular} \end{center} -Wichtig ist: Die Differenz der Längengrade ist gleich der Innenwinkel Alpha, deswegen der Betrag! - -Nun haben wir die beiden Seiten $c\ und\ b$ und den Winkel $\alpha$, der sich zwischen diesen Seiten befindet. +Nun haben wir die beiden Seiten $c$ und $b$ und den Winkel $\alpha$, der sich zwischen diesen Seiten befindet. Mithilfe des Seiten-Kosinussatzes $\cos(a) = \cos(b)\cdot \cos(c) + \sin(b) \cdot \sin(c)\cdot \cos(\alpha)$ können wir nun die dritte Seitenlänge bestimmen. Es ist darauf zu achten, dass hier natürlich die Seitenlängen in Bogenmass sind und dementsprechend der Kosinus und Sinus verwendet wird. -Jetzt fehlen noch die beiden anderen Innenwinkel $\beta \ und\ \gamma$. -Diese bestimmen wir mithilfe des Sinussatzes $\frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)}$. +Jetzt fehlen noch die beiden anderen Innenwinkel $\beta$ und\ $\gamma$. +Diese bestimmen wir mithilfe des Sinussatzes \[\frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)}.\] Hier muss man aufpassen, dass man Seite von Winkel unterscheiden kann. Im Zähler sind die Seiten, im Nenner die Winkel. -Somit ist $\beta =\sin^{-1} [\sin(b) \cdot \frac{\sin(\alpha)}{\sin(a)}] $. +Somit ist \[\beta =\sin^{-1} [\sin(b) \cdot \frac{\sin(\alpha)}{\sin(a)}].\] -Schlussendlich haben wir die Seiten $a,b\ und \ c$, die Ecken A,B und C und die Winkel $\alpha, \beta \ und \ \gamma$ bestimmt und somit das ganze erste Kugeldreieck berechnet. +Schlussendlich haben wir die Seiten $a,b\ und \ c$, die Ecken A,B und C und die Winkel $\alpha$, $\beta$ und $\gamma$ bestimmt und somit das ganze Kugeldreieck $ABC$ berechnet. \subsubsection{Dreieck $BPC$} -Wir bilden nun ein zweites Dreieck, welches die Ecken B und C des ersten Dreiecks besitzt. -Die dritte Ecke ist der eigene Standort P. +Wir bilden nun ein zweites Dreieck, welches die Ecken $B$ und $C$ des ersten Dreiecks besitzt. +Die dritte Ecke ist der eigene Standort $P$. Unser Standort definiere sich aus einer geographischen Breite $\delta$ und einer geographischen Länge $\lambda$. -Die Seite von P zu B sei $pb$ und die Seite von P zu C sei $pc$. +Die Seite von $P$ zu $B$ sei $pb$ und die Seite von $P$ zu $C$ sei $pc$. Die beiden Seitenlängen kann man mit dem Sextant messen und durch eine einfache Formel bestimmen, nämlich $pb=\frac{\pi}{2} - h_{B}$ und $pc=\frac{\pi}{2} - h_{C}$ -mit $h_B=$ Höhe von Gestirn in B und $h_C=$ Höhe von Gestirn in C mit Sextant gemessen. +mit $h_B=$ Höhe von Gestirn in $B$ und $h_C=$ Höhe von Gestirn in $C$ mit Sextant gemessen. -Zum Schluss müssen wir noch den Winkel $\beta1$ mithilfe des Seiten-Kosinussatzes mit den bekannten Seiten $pc$, $pb$ und $a$ bestimmen. +Zum Schluss müssen wir noch den Winkel $\beta_1$ mithilfe des Seiten-Kosinussatzes \[\cos(pb)=\cos(pc)\cdot\cos(a)+\sin(pc)\cdot\sin(a)\cdot\cos(\beta_1)\] mit den bekannten Seiten $pc$, $pb$ und $a$ bestimmen. \subsubsection{Dreieck $ABP$} -Nun muss man eine Verbindungslinie ziehen zwischen P und A. Die Länge $l$ dieser Linie entspricht der gesuchten geographischen Breite $\delta$. Diese lässt sich mithilfe des Dreiecks $ABP$, den bekannten Seiten $c\ und \ pb$ und des Seiten-Kosinussatzes berechnen. - -Für den Seiten-Kosinussatz benötigt es noch $\kappa=\beta + \beta1$. - -Somit ist $\cos(l) = \cos(c)\cdot \cos(pb) + \sin(c) \cdot \sin(pb) \cdot \cos(\kappa)$ - +Nun muss man eine Verbindungslinie ziehen zwischen $P$ und $A$. Die Länge $l$ dieser Linie entspricht der gesuchten geographischen Breite $\delta$. Diese lässt sich mithilfe des Dreiecks $ABP$, den bekannten Seiten $c$ und $pb$ und des Seiten-Kosinussatzes berechnen. +Für den Seiten-Kosinussatz benötigt es noch $\kappa=\beta + \beta_1$. +Somit ist \[\cos(l) = \cos(c)\cdot \cos(pb) + \sin(c) \cdot \sin(pb) \cdot \cos(\kappa)\] und - \[ \delta =\cos^{-1} [\cos(c) \cdot \cos(pb) + \sin(c) \cdot \sin(pb) \cdot \cos(\kappa)]. \] -Für die Geographische Länge $\lambda$ des eigenen Standortes muss man den Winkel $\omega$, welcher sich im Dreieck $ACP$ in der Ecke bei $A$ befindet mithilfe des Sinussatzes $\frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)}$ bestimmen. - +Für die Geographische Länge $\lambda$ des eigenen Standortes muss man den Winkel $\omega$, welcher sich im Dreieck $ACP$ in der Ecke bei $A$ befindet. +Mithilfe des Sinussatzes \[\frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)}\] können wir das bestimmen. Somit ist \[ \omega=\sin^{-1}[\sin(pc) \cdot \frac{\sin(\gamma)}{\sin(l)}] \]und unsere gesuchte geographische Länge schlussendlich \[\lambda=\lambda_1 - \omega\] -mit $\lambda_1$=Längengrad Bildpunkt $X$ +wobei $\lambda_1$ die Länge des Bildpunktes $X$ von $C$ ist. diff --git a/buch/papers/nav/sincos.tex b/buch/papers/nav/sincos.tex index bb7f1e4..d56d482 100644 --- a/buch/papers/nav/sincos.tex +++ b/buch/papers/nav/sincos.tex @@ -6,14 +6,16 @@ Es gibt Hinweise, dass sich schon die Babylonier und Ägypter vor 4000 Jahren si Jedoch konnten sie dieses Problem nicht lösen. Die Geschichte der sphärischen Trigonometrie ist daher eng mit der Astronomie verknüpft. Ca. 350 vor Christus dachten die Griechen über Kugelgeometrie nach und sie wurde zu einer Hilfswissenschaft der Astronomen. -In Folge werden auch die ersten Sätze aufgestellt und wenige Jahrhunderte später wurden Berechnungen mithilfe des Sternkataloges von Hipparchos angestellt und darauffolgend Kartenmaterial erstellt. +Zwischen 190 v. Chr. und 120 v. Chr. lebte ein griechischer Astronom names Hipparchos. +Dieser entwickelte unter anderem die Chordentafeln, welche die Chord - Funktionen, auch Chord genannt, beinhalten. +Chord ist der Vorgänger der Sinusfunktion und galt damals als wichtigste Grundlage der Trigonometrie. In dieser Zeit wurden auch die ersten Sternenkarten angefertigt, jedoch kannte man damals die Sinusfunktion noch nicht. + Aus Indien stammten die ersten Ansätze zu den Kosinussätzen. Aufbauend auf den indischen und griechischen Forschungen entwickeln die Araber um das 9. Jahrhundert den Sinussatz. Doch ein paar weitere Jahrhunderte vergingen bis zu diesem Thema wieder verstärkt Forschung betrieben wurde, da im 15. Jahrhundert grosse Entdeckungsreisen, hauptsächlich per Schiff, erfolgten und die Orientierung mit Sternen vermehrt an Wichtigkeit gewann. Man nutzte für die Kartographie nun die Kugelgeometrie, um die Genauigkeit zu erhöhen. Der Sinussatz, die Tangensfunktion und der neu entwickelte Seitenkosinussatz wurden in dieser Zeit bereits verwendet und im darauffolgenden Jahrhundert folgte der Winkelkosinussatz. - Durch weitere mathematische Entwicklungen wie den Logarithmus wurden im Laufe des nächsten Jahrhunderts viele neue Methoden und kartographische Anwendungen der Kugelgeometrie entdeckt. Im 19. und 20. Jahrhundert wurden weitere nicht-euklidische Geometrien entwickelt und die sphärische Trigonometrie fand auch ihre Anwendung in der Relativitätstheorie. \ No newline at end of file diff --git a/buch/papers/nav/trigo.tex b/buch/papers/nav/trigo.tex index cf2f242..ce367f6 100644 --- a/buch/papers/nav/trigo.tex +++ b/buch/papers/nav/trigo.tex @@ -2,33 +2,35 @@ \section{Sphärische Trigonometrie} In der sphärischen Trigonometrie gibt es eine Symetrie zwischen Seiten und Winkel, also zu jedem Satz über Seiten und Winkel gibt es einen entsprechenden Satz, mit dem man Winkel durch Seiten und Seiten durch Winkel ersetzt hat. Dabei gibt es folgenden Zusammenhang zwischen der ebenen- und sphärischen Trigonometrie: -\begin{center} - - -\begin{tabular}{ccc} - Eben & $\leftrightarrow$ & sphärisch \\ - \hline - $a$ & $\leftrightarrow$ & $\sin \ a$ \\ - - $a^2$ & $\leftrightarrow$ & $-\cos \ a$ \\ -\end{tabular} -\end{center} \subsection{Das Kugeldreieck} +Damit man die Definition des Kugeldreiecks versteht, müssen wir zuerst Begriffe wie "Grosskreisebene" und "Grosskreisbögen" verstehen. +Ein Grosskreis ist ein größtmöglicher Kreis auf einer Kugeloberfläche. +Sein Mittelpunkt fällt immer mit dem Mittelpunkt der Kugel zusammen und ein Schnitt auf dem Großkreis teilt die Kugel in jedem Fall in zwei gleich grosse Hälften. +Da es unendlich viele Möglichkeiten gibt, eine Kugel so zu zerschneiden, dass die Schnittebene den Kugelmittelpunkt trifft, gibt es auch unendlich viele Grosskreise. +Grosskreisbögen sind die Verbindungslinien zwischen zwei Punkten auf der Kugel, welche auch "Seiten" eines Kugeldreiecks gennant werden. Werden drei voneinander verschiedene Punkte, die sich nicht auf derselben Grosskreisebene befinden, mit Grosskreisbögen verbunden, so entsteht ein Kugeldreieck $ABC$. Für ein Kugeldreieck gilt, dass die Summe der drei Seiten kleiner als $2\pi$ aber grösser als 0 ist. -$A$, $B$ und $C$ sind die Ecken des Dreiecks und dessen Seiten sind die Grosskreisbögen zwischen den Eckpunkten. -Ein Grosskreis ist ein größtmöglicher Kreis auf einer Kugeloberfläche. -Sein Mittelpunkt fällt immer mit dem Mittelpunkt der Kugel zusammen und ein Schnitt auf dem Großkreis teilt die Kugel in jedem Fall in zwei gleich grosse Hälften. +$A$, $B$ und $C$ sind die Ecken des Dreiecks und dessen Seiten sind die Grosskreisbögen zwischen den Eckpunkten (siehe Abbildung 21.2). -Da es unendlich viele Möglichkeiten gibt, eine Kugel so zu zerschneiden, dass die Schnittebene den Kugelmittelpunkt trifft, gibt es auch unendlich viele Grosskreise. Da die Länge der Grosskreisbögen wegen der Abhängigkeit vom Kugelradius ungeeignet ist, wird die Grösse einer Seite mit dem zugehörigen Mittelpunktwinkel des Grosskreisbogens angegeben. -Laut dieser Definition ist die Seite $c$ der Winkel $AMB$. +Laut dieser Definition ist die Seite $c$ der Winkel $AMB$, wobei der Punkt $M$ die Erdmitte ist. Man kann bei Kugeldreiecken nicht so einfach unterscheiden, was Innen oder Aussen ist. Wenn man drei Eckpunkte miteinander verbindet, ergeben sich immer 16 Kugeldreiecke. -Jenes Kugeldreieck mit den Seitenlängen $a, b, c < \pi$ und den Winkeln $\alpha, \beta, \gamma < \pi$ nennt man Eulersche Dreiecke. +Jenes Kugeldreieck mit den Seitenlängen $a, b, c < \pi$ und den Winkeln $\alpha, \beta, \gamma < \pi$ nennt man Eulersches Dreieck. + +Es gibt einen Zusammenhang zwischen der ebenen- und sphärischen Trigonometrie, wobei folgend $a$ eine Seite beschreibt: +\begin{center} + \begin{tabular}{ccc} + Eben & $\leftrightarrow$ & sphärisch \\ + \hline + $a$ & $\leftrightarrow$ & $\sin \ a$ \\ + + $a^2$ & $\leftrightarrow$ & $-\cos \ a$ \\ + \end{tabular} +\end{center} \begin{figure} \begin{center} @@ -38,9 +40,16 @@ Jenes Kugeldreieck mit den Seitenlängen $a, b, c < \pi$ und den Winkeln $\alpha \end{figure} -\subsection{Rechtwinkliges Dreieck und Rechtseitiges Dreieck} -Wie auch im uns bekannten Dreieck gibt es beim Kugeldreieck auch ein Rechtwinkliges Kugeldreieck, bei dem ein Winkel $\frac{\pi}{2}$ ist. +\subsection{Rechtwinkliges Dreieck und rechtseitiges Dreieck} +Wie auch im ebenen Dreieck gibt es beim Kugeldreieck auch ein rechtwinkliges Kugeldreieck, bei dem ein Winkel $\frac{\pi}{2}$ ist. Ein Rechtseitiges Dreieck gibt es jedoch nur beim Kugeldreieck, weil dort eine Seitenlänge $\frac{\pi}{2}$ lang sein muss. +\begin{figure} + + \begin{center} + \includegraphics[width=10cm]{papers/nav/bilder/recht.jpg} + \caption[Rechtseitiges Kugeldreieck]{Rechtseitiges Kugeldreieck} + \end{center} +\end{figure} \subsection{Winkelsumme} \begin{figure} @@ -55,8 +64,9 @@ Ein Rechtseitiges Dreieck gibt es jedoch nur beim Kugeldreieck, weil dort eine S Die Winkel eines Kugeldreiecks sind die, welche die Halbtangenten in den Eckpunkten einschliessen. Für die Summe der Innenwinkel gilt \begin{align} - \alpha+\beta+\gamma &= \frac{A}{r^2} + \pi \ \text{und} \ \alpha+\beta+\gamma > \pi. \nonumber + \alpha+\beta+\gamma &= \frac{F}{r^2} + \pi \ \text{und} \ \alpha+\beta+\gamma > \pi, \nonumber \end{align} +wobei F der Flächeninhalt des Kugeldreiecks ist. \subsubsection{Sphärischer Exzess} Der sphärische Exzess \begin{align} @@ -65,31 +75,31 @@ Der sphärische Exzess beschreibt die Abweichung der Innenwinkelsumme von $\pi$ und ist proportional zum Flächeninhalt des Kugeldreiecks. \subsubsection{Flächeninnhalt} -Der Flächeninhalt $A$ lässt sich aus den Winkeln $\alpha,\ \beta, \ \gamma$ und dem Kugelradius $r$ berechnen. +Mithilfe des Radius $r$ und dem sphärischen Exzess $\epsilon$ gilt für den Flächeninhalt +\[ F=\frac{\pi \cdot r^2}{\frac{\pi}{2}} \cdot \epsilon\]. \subsection{Sphärischer Sinussatz} In jedem Dreieck ist das Verhältnis des Sinus einer Seite zum Sinus des Gegenwinkels konstant. - Das bedeutet, dass \begin{align} - \frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)} \nonumber \ \text{auch beim Kugeldreieck gilt.} + \frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)} \nonumber \end{align} +auch beim Kugeldreieck gilt. -\subsection{Sphärischer Kosinussätze} +\subsection{Sphärische Kosinussätze} Auch in der sphärischen Trigonometrie gibt es den Seitenkosinussatz \begin{align} - cos \ a = \cos b \cdot \cos c + \sin b \cdot \sin c \cdot \cos \alpha \nonumber + \cos \ a = \cos b \cdot \cos c + \sin b \cdot \sin c \cdot \cos \alpha \nonumber \end{align} %Seitenkosinussatz und den Winkelkosinussatz \begin{align} - \cos \gamma = -\cos \alpha \cdot \cos \beta + \sin \alpha \cdot \sin \beta \cdot \cos c \nonumber + \cos \gamma = -\cos \alpha \cdot \cos \beta + \sin \alpha \cdot \sin \beta \cdot \cos c. \nonumber \end{align} \subsection{Sphärischer Satz des Pythagoras für das rechtwinklige Kugeldreieck} Es gibt in der sphärischen Trigonometrie eigentlich garkeinen "Satz des Pythagoras", wie man ihn aus der zweidimensionalen Geometrie kennt. -In der sphärischen Trigonometrie gibt es aber auch einen Satz, der alle drei Seiten eines rechtwinkligen Kugeldreiecks in eine Beziehung bringt. - +In der sphärischen Trigonometrie gibt es aber auch einen Satz, der alle drei Seiten eines rechtwinkligen Kugeldreiecks, nicht aber für das rechtseitige Kugeldreieck, in eine Beziehung bringt. Es gilt nämlich: \begin{align} \cos c = \cos a \cdot \cos b \ \text{wenn} \nonumber & -- cgit v1.2.1 From ab62c3937cc111ce1d61d76f0bdf396a4a5a9297 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sat, 21 May 2022 20:36:01 +0200 Subject: add image code --- buch/papers/kugel/images/Makefile | 4 +- buch/papers/kugel/images/curvature.maxima | 6 ++ buch/papers/kugel/images/curvature.pov | 72 +++++++++++++++++++++++- buch/papers/kugel/images/curvgraph.m | 93 +++++++++++++++++++++++++------ 4 files changed, 153 insertions(+), 22 deletions(-) create mode 100644 buch/papers/kugel/images/curvature.maxima diff --git a/buch/papers/kugel/images/Makefile b/buch/papers/kugel/images/Makefile index 8efa228..e8bf919 100644 --- a/buch/papers/kugel/images/Makefile +++ b/buch/papers/kugel/images/Makefile @@ -3,7 +3,7 @@ # # (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule # -all: curvature.png +all: curvature.jpg curvature.inc: curvgraph.m octave curvgraph.m @@ -11,3 +11,5 @@ curvature.inc: curvgraph.m curvature.png: curvature.pov curvature.inc povray +A0.1 +W1920 +H1080 +Ocurvature.png curvature.pov +curvature.jpg: curvature.png + convert curvature.png -density 300 -units PixelsPerInch curvature.jpg diff --git a/buch/papers/kugel/images/curvature.maxima b/buch/papers/kugel/images/curvature.maxima new file mode 100644 index 0000000..6313642 --- /dev/null +++ b/buch/papers/kugel/images/curvature.maxima @@ -0,0 +1,6 @@ + +f: exp(-r^2/sigma^2)/sigma; +laplacef: ratsimp(diff(r * diff(f,r), r) / r); +f: exp(-r^2/(2*sigma^2))/(sqrt(2)*sigma); +laplacef: ratsimp(diff(r * diff(f,r), r) / r); + diff --git a/buch/papers/kugel/images/curvature.pov b/buch/papers/kugel/images/curvature.pov index 3535488..9dbaa86 100644 --- a/buch/papers/kugel/images/curvature.pov +++ b/buch/papers/kugel/images/curvature.pov @@ -11,17 +11,17 @@ global_settings { assumed_gamma 1 } -#declare imagescale = 0.1; +#declare imagescale = 0.09; camera { - location <40, 10, -20> + location <10, 10, -40> look_at <0, 0, 0> right 16/9 * x * imagescale up y * imagescale } light_source { - <10, 10, -40> color White + <-10, 10, -40> color White area_light <1,0,0> <0,0,1>, 10, 10 adaptive 1 jitter @@ -70,3 +70,69 @@ arrow(<0,-1,0>, <0,1,0>, 0.01, White) arrow(<0,0,-2.1>, <0,0,2.1>, 0.01, White) #include "curvature.inc" + +#declare sigma = 1; +#declare N0 = 0.5; +#declare funktion = function(r) { + (exp(-r*r/(sigma*sigma)) / sigma + - + exp(-r*r/(2*sigma*sigma)) / (sqrt(2)*sigma)) / N0 +}; +#declare hypot = function(xx, yy) { sqrt(xx*xx+yy*yy) }; + +#declare Funktion = function(x,y) { funktion(hypot(x+1,y)) - funktion(hypot(x-1,y)) }; +#macro punkt(xx,yy) + +#end + +#declare griddiameter = 0.006; +union { + #declare xmin = -3; + #declare xmax = 3; + #declare ymin = -2; + #declare ymax = 2; + + + #declare xstep = 0.2; + #declare ystep = 0.02; + #declare xx = xmin; + #while (xx < xmax + xstep/2) + #declare yy = ymin; + #declare P = punkt(xx, yy); + #while (yy < ymax - ystep/2) + #declare yy = yy + ystep; + #declare Q = punkt(xx, yy); + sphere { P, griddiameter } + cylinder { P, Q, griddiameter } + #declare P = Q; + #end + sphere { P, griddiameter } + #declare xx = xx + xstep; + #end + + #declare xstep = 0.02; + #declare ystep = 0.2; + #declare yy = ymin; + #while (yy < ymax + ystep/2) + #declare xx = xmin; + #declare P = punkt(xx, yy); + #while (xx < xmax - xstep/2) + #declare xx = xx + xstep; + #declare Q = punkt(xx, yy); + sphere { P, griddiameter } + cylinder { P, Q, griddiameter } + #declare P = Q; + #end + sphere { P, griddiameter } + #declare yy = yy + ystep; + #end + + pigment { + color rgb<0.8,0.8,0.8> + } + finish { + metallic + specular 0.8 + } +} + diff --git a/buch/papers/kugel/images/curvgraph.m b/buch/papers/kugel/images/curvgraph.m index 96ca4b1..b83c877 100644 --- a/buch/papers/kugel/images/curvgraph.m +++ b/buch/papers/kugel/images/curvgraph.m @@ -13,23 +13,34 @@ sigma2 = 1; global s; s = 1; +global cmax; +cmax = 0.9; +global cmin; +cmin = -0.9; + +global Cmax; +global Cmin; +Cmax = 0; +Cmin = 0; + xmin = -3; xmax = 3; -xsteps = 1000; +xsteps = 200; hx = (xmax - xmin) / xsteps; ymin = -2; ymax = 2; -ysteps = 1000; +ysteps = 200; hy = (ymax - ymin) / ysteps; function retval = f0(r) global sigma2; - retval = exp(-r^2/sigma2)/sigma2 - exp(-r^2/(2*sigma2))/(sqrt(2)*sigma2); + retval = exp(-r^2/sigma2)/sqrt(sigma2) - exp(-r^2/(2*sigma2))/(sqrt(2*sigma2)); end global N0; -N0 = f0(0); +N0 = f0(0) +N0 = 0.5; function retval = f1(x,y) global N0; @@ -44,10 +55,10 @@ endfunction function retval = curvature0(r) global sigma2; retval = ( - (2*sigma2-r^2)*exp(-r^2/(2*sigma2)) + -4*(sigma2-r^2)*exp(-r^2/sigma2) + - 4*(r^2-sigma2)*exp(-r^2/sigma2) - ) / (sigma2^2); + (2*sigma2-r^2)*exp(-r^2/(2*sigma2)) + ) / (sigma2^(5/2)); endfunction function retval = curvature1(x, y) @@ -56,28 +67,74 @@ endfunction function retval = curvature(x, y) global s; - retval = curvature1(x+s, y) + curvature1(x-s, y); + retval = curvature1(x+s, y) - curvature1(x-s, y); endfunction function retval = farbe(x, y) + global Cmax; + global Cmin; + global cmax; + global cmin; c = curvature(x, y); - retval = c * ones(1,3); + if (c < Cmin) + Cmin = c + endif + if (c > Cmax) + Cmax = c + endif + u = (c - cmin) / (cmax - cmin); + if (u > 1) + u = 1; + endif + if (u < 0) + u = 0; + endif + color = [ u, 0.5, 1-u ]; + color = color/max(color); + color(1,4) = c/2; + retval = color; endfunction -fn = fopen("curvature.inc", "w"); +function dreieck(fn, A, B, C) + fprintf(fn, "\ttriangle {\n"); + fprintf(fn, "\t <%.4f,%.4f,%.4f>,\n", A(1,1), A(1,3), A(1,2)); + fprintf(fn, "\t <%.4f,%.4f,%.4f>,\n", B(1,1), B(1,3), B(1,2)); + fprintf(fn, "\t <%.4f,%.4f,%.4f>\n", C(1,1), C(1,3), C(1,2)); + fprintf(fn, "\t}\n"); +endfunction +function viereck(fn, punkte) + color = farbe(mean(punkte(:,1)), mean(punkte(:,2))); + fprintf(fn, " mesh {\n"); + dreieck(fn, punkte(1,:), punkte(2,:), punkte(3,:)); + dreieck(fn, punkte(2,:), punkte(3,:), punkte(4,:)); + fprintf(fn, "\tpigment { color rgb<%.4f,%.4f,%.4f> } // %.4f\n", + color(1,1), color(1,2), color(1,3), color(1,4)); + fprintf(fn, " }\n"); +endfunction + +fn = fopen("curvature.inc", "w"); +punkte = zeros(4,3); for ix = (0:xsteps) x = xmin + ix * hx; + punkte(1,1) = x; + punkte(2,1) = x; + punkte(3,1) = x + hx; + punkte(4,1) = x + hx; for iy = (0:ysteps) y = ymin + iy * hy; - fprintf(fn, "sphere { <%.4f, %.4f, %.4f>, 0.01\n", - x, f(x, y), y); - color = farbe(x, y); - fprintf(fn, "pigment { color rgb<%.4f,%.4f,%.4f> }\n", - color(1,1), color(1,2), color(1,3)); - fprintf(fn, "finish { metallic specular 0.5 }\n"); - fprintf(fn, "}\n"); + punkte(1,2) = y; + punkte(2,2) = y + hy; + punkte(3,2) = y; + punkte(4,2) = y + hy; + for i = (1:4) + punkte(i,3) = f(punkte(i,1), punkte(i,2)); + endfor + viereck(fn, punkte); end end - +#fprintf(fn, " finish { metallic specular 0.5 }\n"); fclose(fn); + +printf("Cmax = %.4f\n", Cmax); +printf("Cmin = %.4f\n", Cmin); -- cgit v1.2.1 From d8d6a61a2ab45d9171a93e4a72d254a3ed5ef87f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sat, 21 May 2022 20:42:47 +0200 Subject: fix some bugs --- buch/papers/kugel/images/curvature.pov | 5 +++-- buch/papers/kugel/images/curvgraph.m | 8 ++++---- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/buch/papers/kugel/images/curvature.pov b/buch/papers/kugel/images/curvature.pov index 9dbaa86..3b15d77 100644 --- a/buch/papers/kugel/images/curvature.pov +++ b/buch/papers/kugel/images/curvature.pov @@ -72,7 +72,8 @@ arrow(<0,0,-2.1>, <0,0,2.1>, 0.01, White) #include "curvature.inc" #declare sigma = 1; -#declare N0 = 0.5; +#declare s = 1.4; +#declare N0 = 0.4; #declare funktion = function(r) { (exp(-r*r/(sigma*sigma)) / sigma - @@ -80,7 +81,7 @@ arrow(<0,0,-2.1>, <0,0,2.1>, 0.01, White) }; #declare hypot = function(xx, yy) { sqrt(xx*xx+yy*yy) }; -#declare Funktion = function(x,y) { funktion(hypot(x+1,y)) - funktion(hypot(x-1,y)) }; +#declare Funktion = function(x,y) { funktion(hypot(x+s,y)) - funktion(hypot(x-s,y)) }; #macro punkt(xx,yy) #end diff --git a/buch/papers/kugel/images/curvgraph.m b/buch/papers/kugel/images/curvgraph.m index b83c877..75effd6 100644 --- a/buch/papers/kugel/images/curvgraph.m +++ b/buch/papers/kugel/images/curvgraph.m @@ -11,7 +11,7 @@ global sigma2; sigma2 = 1; global s; -s = 1; +s = 1.4; global cmax; cmax = 0.9; @@ -40,7 +40,7 @@ end global N0; N0 = f0(0) -N0 = 0.5; +N0 = 0.4; function retval = f1(x,y) global N0; @@ -115,13 +115,13 @@ endfunction fn = fopen("curvature.inc", "w"); punkte = zeros(4,3); -for ix = (0:xsteps) +for ix = (0:xsteps-1) x = xmin + ix * hx; punkte(1,1) = x; punkte(2,1) = x; punkte(3,1) = x + hx; punkte(4,1) = x + hx; - for iy = (0:ysteps) + for iy = (0:ysteps-1) y = ymin + iy * hy; punkte(1,2) = y; punkte(2,2) = y + hy; -- cgit v1.2.1 From f144be56b0c7ec03f74c46928b1354a959a59246 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sun, 22 May 2022 13:36:59 +0200 Subject: add hermite application presentation --- vorlesungen/18_hermiteintegrierbar/Makefile | 33 ++++++++ .../MathSem-18-hermiteintegrierbar.tex | 14 ++++ vorlesungen/18_hermiteintegrierbar/common.tex | 17 +++++ .../hermiteintegrierbar-handout.tex | 11 +++ vorlesungen/18_hermiteintegrierbar/slides.tex | 11 +++ vorlesungen/slides/hermite/Makefile.inc | 5 ++ vorlesungen/slides/hermite/hermiteentwicklung.tex | 69 +++++++++++++++++ vorlesungen/slides/hermite/loesung.tex | 56 ++++++++++++++ vorlesungen/slides/hermite/normalhermite.tex | 88 ++++++++++++++++++++++ vorlesungen/slides/hermite/normalintegrale.tex | 54 +++++++++++++ vorlesungen/slides/hermite/skalarprodukt.tex | 72 ++++++++++++++++++ vorlesungen/slides/test.tex | 6 +- 12 files changed, 435 insertions(+), 1 deletion(-) create mode 100644 vorlesungen/18_hermiteintegrierbar/Makefile create mode 100644 vorlesungen/18_hermiteintegrierbar/MathSem-18-hermiteintegrierbar.tex create mode 100644 vorlesungen/18_hermiteintegrierbar/common.tex create mode 100644 vorlesungen/18_hermiteintegrierbar/hermiteintegrierbar-handout.tex create mode 100644 vorlesungen/18_hermiteintegrierbar/slides.tex create mode 100644 vorlesungen/slides/hermite/hermiteentwicklung.tex create mode 100644 vorlesungen/slides/hermite/loesung.tex create mode 100644 vorlesungen/slides/hermite/normalhermite.tex create mode 100644 vorlesungen/slides/hermite/normalintegrale.tex create mode 100644 vorlesungen/slides/hermite/skalarprodukt.tex diff --git a/vorlesungen/18_hermiteintegrierbar/Makefile b/vorlesungen/18_hermiteintegrierbar/Makefile new file mode 100644 index 0000000..a2dfb87 --- /dev/null +++ b/vorlesungen/18_hermiteintegrierbar/Makefile @@ -0,0 +1,33 @@ +# +# Makefile -- hermiteintegrierbar +# +# (c) 2017 Prof Dr Andreas Müller, Hochschule Rapperswil +# +all: hermiteintegrierbar-handout.pdf MathSem-18-hermiteintegrierbar.pdf + +include ../slides/Makefile.inc + +SOURCES = common.tex slides.tex $(slides) + +MathSem-18-hermiteintegrierbar.pdf: MathSem-18-hermiteintegrierbar.tex $(SOURCES) + pdflatex MathSem-18-hermiteintegrierbar.tex + +hermiteintegrierbar-handout.pdf: hermiteintegrierbar-handout.tex $(SOURCES) + pdflatex hermiteintegrierbar-handout.tex + +thumbnail: thumbnail.jpg # fix1.jpg + +thumbnail.pdf: MathSem-18-hermiteintegrierbar.pdf + pdfjam --outfile thumbnail.pdf --papersize '{16cm,9cm}' \ + MathSem-18-hermiteintegrierbar.pdf 1 +thumbnail.jpg: thumbnail.pdf + convert -density 300 thumbnail.pdf \ + -resize 1920x1080 -units PixelsPerInch thumbnail.jpg + +fix1.pdf: MathSem-18-hermiteintegrierbar.pdf + pdfjam --outfile fix1.pdf --papersize '{16cm,9cm}' \ + MathSem-18-hermiteintegrierbar.pdf 1 +fix1.jpg: fix1.pdf + convert -density 300 fix1.pdf \ + -resize 1920x1080 -units PixelsPerInch fix1.jpg + diff --git a/vorlesungen/18_hermiteintegrierbar/MathSem-18-hermiteintegrierbar.tex b/vorlesungen/18_hermiteintegrierbar/MathSem-18-hermiteintegrierbar.tex new file mode 100644 index 0000000..7a3a647 --- /dev/null +++ b/vorlesungen/18_hermiteintegrierbar/MathSem-18-hermiteintegrierbar.tex @@ -0,0 +1,14 @@ +% +% MathSem-18-hermiteintegrierbar.tex -- Präsentation +% +% (c) 2017 Prof Dr Andreas Müller, Hochschule Rapperswil +% +\documentclass[aspectratio=169]{beamer} +\input{common.tex} +\setboolean{presentation}{true} +\begin{document} +\begin{frame} +\titlepage +\end{frame} +\input{slides.tex} +\end{document} diff --git a/vorlesungen/18_hermiteintegrierbar/common.tex b/vorlesungen/18_hermiteintegrierbar/common.tex new file mode 100644 index 0000000..8b1c71f --- /dev/null +++ b/vorlesungen/18_hermiteintegrierbar/common.tex @@ -0,0 +1,17 @@ +% +% common.tex -- gemeinsame definition +% +% (c) 2017 Prof Dr Andreas Müller, Hochschule Rapperswil +% +\input{../common/packages.tex} +\input{../common/common.tex} +\mode{% +\usetheme[hideothersubsections,hidetitle]{Hannover} +} +\beamertemplatenavigationsymbolsempty +\title[$\int P(t)e^{-t^2}\,dt$]{Elementare Stammfunktion für +$\displaystyle\int P(t)e^{-t^2}\,dt$?} +\author[A.~Müller]{Prof. Dr. Andreas Müller} +\date[]{} +\newboolean{presentation} + diff --git a/vorlesungen/18_hermiteintegrierbar/hermiteintegrierbar-handout.tex b/vorlesungen/18_hermiteintegrierbar/hermiteintegrierbar-handout.tex new file mode 100644 index 0000000..a466024 --- /dev/null +++ b/vorlesungen/18_hermiteintegrierbar/hermiteintegrierbar-handout.tex @@ -0,0 +1,11 @@ +% +% hermiteintegrierbar-handout.tex -- Handout XXX +% +% (c) 2017 Prof Dr Andreas Müller, Hochschule Rapperswil +% +\documentclass[handout,aspectratio=169]{beamer} +\input{common.tex} +\setboolean{presentation}{false} +\begin{document} +\input{slides.tex} +\end{document} diff --git a/vorlesungen/18_hermiteintegrierbar/slides.tex b/vorlesungen/18_hermiteintegrierbar/slides.tex new file mode 100644 index 0000000..cb3bbea --- /dev/null +++ b/vorlesungen/18_hermiteintegrierbar/slides.tex @@ -0,0 +1,11 @@ +% +% slides.tex -- XXX +% +% (c) 2017 Prof Dr Andreas Müller, Hochschule Rapperswil +% +\folie{hermite/normalintegrale.tex} +\folie{hermite/normalhermite.tex} +\folie{hermite/hermiteentwicklung.tex} +\folie{hermite/loesung.tex} +\folie{hermite/skalarprodukt.tex} + diff --git a/vorlesungen/slides/hermite/Makefile.inc b/vorlesungen/slides/hermite/Makefile.inc index 5c55467..58c21f2 100644 --- a/vorlesungen/slides/hermite/Makefile.inc +++ b/vorlesungen/slides/hermite/Makefile.inc @@ -4,4 +4,9 @@ # (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule # chapterhermite = \ + ../slides/hermite/normalintegrale.tex \ + ../slides/hermite/normalhermite.tex \ + ../slides/hermite/hermiteentwicklung.tex \ + ../slides/hermite/loesung.tex \ + ../slides/hermite/skalarprodukt.tex \ ../slides/hermite/test.tex diff --git a/vorlesungen/slides/hermite/hermiteentwicklung.tex b/vorlesungen/slides/hermite/hermiteentwicklung.tex new file mode 100644 index 0000000..e1ced30 --- /dev/null +++ b/vorlesungen/slides/hermite/hermiteentwicklung.tex @@ -0,0 +1,69 @@ +% +% hermiteentwicklung.tex -- slide template +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\bgroup +\begin{frame}[t] +\setlength{\abovedisplayskip}{5pt} +\setlength{\belowdisplayskip}{5pt} +\frametitle{Beliebige Polynome} +\vspace{-20pt} +\begin{columns}[t,onlytextwidth] +\begin{column}{0.48\textwidth} +\begin{block}{Polynom} +\[ +P(x) += +p_0 + p_1x + p_2x^2 + \dots + p_nx^n +\] +als Linearkombination von Hermite-Polynome schreiben: +\begin{align*} +P(x) +&= +a_0H_0(x)% + a_1H_1(x) ++ \dots + a_nH_n(x) +\\ +&= +a_0\cdot 1 +\\ +&\quad + a_1\cdot 2x +\\ +&\quad + a_2\cdot(4x^2-2) +\\ +&\quad + a_3\cdot(8x^3-12x) +\\ +&\quad + a_4\cdot(16x^4-48x^2+12) +\\ +&\quad\;\;\vdots +\\ +&\quad + a_n(2^nx^n + \dots) +\end{align*} +\end{block} +\end{column} +\begin{column}{0.48\textwidth} +\begin{block}{Koeffizientenvergleich} +führt auf ein Gleichungssystem +\begin{center} +\begin{tabular}{|>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}c<{$}|>{$}c<{$}|} +\hline +a_0&a_1&a_2&a_3&a_4&\dots&\\ +\hline + 1& 0& 0& 0& 0&\dots&p_0\\ + 0& 2& 0& 0& 0&\dots&p_1\\ +-2& 0& 4& 0& 0&\dots&p_2\\ + 0&-12& 0& 8& 0&\dots&p_3\\ +12& 0&-48& 0& 16&\dots&p_4\\ +\vdots&\vdots&\vdots&\vdots&\vdots&\ddots&\vdots\\ +\hline +\end{tabular} +\end{center} +Dreiecksmatrix, Diagonalelement +$\ne 0$ +$\Rightarrow$ +$\exists$ eindeutige Lösung +\end{block} +\end{column} +\end{columns} +\end{frame} +\egroup diff --git a/vorlesungen/slides/hermite/loesung.tex b/vorlesungen/slides/hermite/loesung.tex new file mode 100644 index 0000000..7d4741f --- /dev/null +++ b/vorlesungen/slides/hermite/loesung.tex @@ -0,0 +1,56 @@ +% +% loesung.tex -- slide template +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\bgroup +\begin{frame}[t] +\setlength{\abovedisplayskip}{5pt} +\setlength{\belowdisplayskip}{5pt} +\frametitle{Lösung} +\vspace{-20pt} +\begin{columns}[t,onlytextwidth] +\begin{column}{0.48\textwidth} +\begin{block}{Frage} +Für welche Polynome $P(t)$ kann man eine Stammfunktion +\[ +\int +P(t)e^{-\frac{t^2}2} +\,dt +\] +in geschlossener Form angeben? +\end{block} +\begin{block}{``Hermite-Antwort''} +\[ +\int H_n(x)e^{-x^2}\,dx +\] +kann genau für $n>0$ in geschlossener Form angegeben werden. +\end{block} +\end{column} +\begin{column}{0.48\textwidth} +\begin{block}{Allgemein} +\begin{align*} +\int P(x)e^{-x^2}\,dx +&= +\int \sum_{k=0}^n a_kH_k(x)e^{-x^2}\,dx +\\ +&= +\sum_{k=0}^n +a_k +\int +H_k(x)e^{-x^2}\,dx +\\ +&= +a_0\operatorname{erf}(x) + C +\\ +&\hspace*{2mm} + \sum_{k=1}^n a_k\int H_k(x)e^{-x^2}\,dx +\end{align*} +\end{block} +\begin{theorem} +Das Integral von $P(x)e^{-x^2}$ ist genau dann elementar darstellbar, wenn +$a_0=0$ +\end{theorem} +\end{column} +\end{columns} +\end{frame} +\egroup diff --git a/vorlesungen/slides/hermite/normalhermite.tex b/vorlesungen/slides/hermite/normalhermite.tex new file mode 100644 index 0000000..bcd30f2 --- /dev/null +++ b/vorlesungen/slides/hermite/normalhermite.tex @@ -0,0 +1,88 @@ +% +% normalhermite.tex -- integrability of hermite polynomials +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\bgroup +\begin{frame}[t] +\setlength{\abovedisplayskip}{5pt} +\setlength{\belowdisplayskip}{5pt} +\frametitle{Hermite-Polynome} +\vspace{-20pt} +\begin{columns}[t,onlytextwidth] +\begin{column}{0.48\textwidth} +\begin{block}{Definition (Rodrigues-Formel)} +\[ +H_n(x) += +(-1)^n e^{x^2} \frac{d^n}{dx^n} e^{-x^2} +\] +\end{block} +\vspace{-10pt} +\begin{block}{Orthogonalität} +$H_n(x)$ sind orthogonale Polynome bezüglich $w(x)=e^{-x^2}$, d.~h. +\begin{align*} +\langle H_n,H_m\rangle_w +&= +\int H_n(x)H_m(x)e^{-x^2}\,dx +\\ +&= +\biggl\{ +\renewcommand{\arraycolsep}{1pt} +\begin{array}{l@{\quad}l} +1&\text{falls $n=m$}\\ +0&\text{sonst} +\end{array} +\biggr\} += +\delta_{mn} +\end{align*} +\end{block} +\vspace{-10pt} +\begin{block}{Rekursion: Auf-/Absteigeoperatoren} +Rekursionsformel: +\[ +H_n(x) += +2x\cdot H_{n-1}(x) - H_{n-1}'(x) +\] +\end{block} +\end{column} +\begin{column}{0.48\textwidth} +\begin{block}{Stammfunktion} +\begin{align*} +\int H_n(x) e^{-x^2}\,dx +&= +\int \bigl({\color{red}2x}H_{n-1}(x) +\\ +&\qquad -H_{n-1}'(x)\bigr) e^{-x^2}\,dx +\\ +{\color{gray}(e^{-x^2}=-2x)} +&= +{\color{red}-}\int {\color{red}(e^{-x^2})'} H_{n-1}(x)\,dx +\\ +&\qquad +- +\int H_{n-1}'(x) e^{-x^2}\,dx +\\ +\text{\color{gray}(Produktregel)} +&= +\int (e^{-x^2}H_{n-1}(x))'\,dx +\\ +\text{\color{gray}(Ableitung)} +&= +e^{-x^2}H_{n-1}(x) +\end{align*} +ausser für $n=0$: +\[ +\int +H_0(x)e^{-x^2}\,dx += +\int +e^{-x^2}\,dx +\] +\end{block} +\end{column} +\end{columns} +\end{frame} +\egroup diff --git a/vorlesungen/slides/hermite/normalintegrale.tex b/vorlesungen/slides/hermite/normalintegrale.tex new file mode 100644 index 0000000..88abbe8 --- /dev/null +++ b/vorlesungen/slides/hermite/normalintegrale.tex @@ -0,0 +1,54 @@ +% +% normalintegrale.tex -- +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\bgroup +\begin{frame}[t] +\setlength{\abovedisplayskip}{5pt} +\setlength{\belowdisplayskip}{5pt} +\frametitle{Integranden $P(t)e^{-t^2}$} +\vspace{-20pt} +\begin{columns}[t,onlytextwidth] +\begin{column}{0.48\textwidth} +\begin{block}{Frage} +Für welche Polynome $P(t)$ kann man eine Stammfunktion +\[ +\int +P(t)e^{-t^2} +\,dt +\] +in geschlossener Form angeben? +\end{block} +\begin{block}{Allgemeine Antwort} +Satz von Liouville und +Risch- Algorithmus können entscheiden, ob es eine elementare Stammfunktion gibt +\end{block} +\end{column} +\begin{column}{0.48\textwidth} +\begin{block}{Negativbeispiel} +$P(t) = 1$, das Normalverteilungsintegral +\[ +F(x) += +\frac{1}{\sqrt{2\pi}} \int_{-\infty}^x e^{-t^2}\,dt +\] +ist nicht elementar darstellbar. +\end{block} +\begin{block}{Positivbeispiel} +$P(t)=t$. Wegen +\begin{align*} +\frac{d}{dx}e^{-x^2} +&= +-xe^{-x^2} +\intertext{ist} +\int te^{-t^2}\,dt +&= +-e^{-x^2}+C +\end{align*} +elementar darstellbar. +\end{block} +\end{column} +\end{columns} +\end{frame} +\egroup diff --git a/vorlesungen/slides/hermite/skalarprodukt.tex b/vorlesungen/slides/hermite/skalarprodukt.tex new file mode 100644 index 0000000..32b933f --- /dev/null +++ b/vorlesungen/slides/hermite/skalarprodukt.tex @@ -0,0 +1,72 @@ +% +% skalarprodukt.tex -- slide template +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\bgroup +\begin{frame}[t] +\setlength{\abovedisplayskip}{5pt} +\setlength{\belowdisplayskip}{5pt} +\frametitle{Skalarprodukt} +\vspace{-20pt} +\begin{columns}[t,onlytextwidth] +\begin{column}{0.48\textwidth} +\begin{block}{Orthogonale Zerlegung} +Orthogonale $H_k$ normalisieren: +\[ +\tilde{H}_k(x) = \frac{1}{\|H_k\|_w} H_k(x) +\] +mit Gewichtsfunktion $w(x)=e^{-x^2}$ +\end{block} +\begin{block}{``Hermite''-Analyse} +\begin{align*} +P(x) +&= +\sum_{k=1}^\infty a_k H_k(x) += +\sum_{k=1}^\infty \tilde{a}_k \tilde{H}_k(x) +\\ +\tilde{a}_k +&= +\| H_k\|_w\, a_k +\\ +a_k +&= +\frac{1}{\|H_k\|} +\langle \tilde{H}_k, P\rangle_w += +\frac{1}{\|H_k\|^2} +\langle H_k, P\rangle_w +\end{align*} +\end{block} +\end{column} +\begin{column}{0.48\textwidth} +\begin{block}{Integrationsproblem} +Bedingung: +\begin{align*} +a_0=0 +\qquad\Leftrightarrow\qquad +\langle H_0,P\rangle_w +&= +0 +\\ +\int_{-\infty}^\infty +P(t) w(t) \,dt += +\int_{-\infty}^\infty +P(t) e^{-t^2} \,dt +&= +0 +\end{align*} +\end{block} +\begin{theorem} +Das Integral von $P(t)e^{-t^2}$ ist in geschlossener Form darstellbar +genau dann, wenn +\[ +\int_{-\infty}^\infty P(t)e^{-t^2}\,dt = 0 +\] +\end{theorem} +\end{column} +\end{columns} +\end{frame} +\egroup diff --git a/vorlesungen/slides/test.tex b/vorlesungen/slides/test.tex index 6aa09f8..ca4ccc9 100644 --- a/vorlesungen/slides/test.tex +++ b/vorlesungen/slides/test.tex @@ -3,4 +3,8 @@ % % (c) 2019 Prof Dr Andreas Müller, Hochschule Rapperswil % -\folie{0/intro.tex} +\folie{hermite/normalintegrale.tex} +\folie{hermite/normalhermite.tex} +\folie{hermite/hermiteentwicklung.tex} +\folie{hermite/loesung.tex} +\folie{hermite/skalarprodukt.tex} -- cgit v1.2.1 From 1b887f44b5ec310f00184c916623d59abcf6e14d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sun, 22 May 2022 15:21:28 +0200 Subject: typo --- vorlesungen/slides/hermite/normalhermite.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vorlesungen/slides/hermite/normalhermite.tex b/vorlesungen/slides/hermite/normalhermite.tex index bcd30f2..16a314c 100644 --- a/vorlesungen/slides/hermite/normalhermite.tex +++ b/vorlesungen/slides/hermite/normalhermite.tex @@ -57,7 +57,7 @@ H_n(x) \\ &\qquad -H_{n-1}'(x)\bigr) e^{-x^2}\,dx \\ -{\color{gray}(e^{-x^2}=-2x)} +{\color{gray}((e^{-x^2})'=-2x)} &= {\color{red}-}\int {\color{red}(e^{-x^2})'} H_{n-1}(x)\,dx \\ -- cgit v1.2.1 From 53aea87685ea9f37f982f1ec90a82ce168d6d7cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 23 May 2022 11:34:57 +0200 Subject: rewriting the risch algorithm stuff --- buch/chapters/060-integral/Makefile.inc | 7 + buch/chapters/060-integral/differentialkoerper.tex | 1957 +------------------- .../chapters/060-integral/differentialkoerper2.tex | 1953 +++++++++++++++++++ buch/chapters/060-integral/diffke.tex | 20 + buch/chapters/060-integral/elementar.tex | 7 + buch/chapters/060-integral/erweiterungen.tex | 12 + buch/chapters/060-integral/iproblem.tex | 93 + buch/chapters/060-integral/irat.tex | 140 ++ buch/chapters/060-integral/logexp.tex | 27 + buch/chapters/060-integral/rational.tex | 8 + buch/chapters/060-integral/risch.tex | 3 +- buch/chapters/060-integral/sqrat.tex | 8 + 12 files changed, 2286 insertions(+), 1949 deletions(-) create mode 100644 buch/chapters/060-integral/differentialkoerper2.tex create mode 100644 buch/chapters/060-integral/diffke.tex create mode 100644 buch/chapters/060-integral/elementar.tex create mode 100644 buch/chapters/060-integral/erweiterungen.tex create mode 100644 buch/chapters/060-integral/iproblem.tex create mode 100644 buch/chapters/060-integral/irat.tex create mode 100644 buch/chapters/060-integral/logexp.tex create mode 100644 buch/chapters/060-integral/rational.tex create mode 100644 buch/chapters/060-integral/sqrat.tex diff --git a/buch/chapters/060-integral/Makefile.inc b/buch/chapters/060-integral/Makefile.inc index d85caad..e0dfc21 100644 --- a/buch/chapters/060-integral/Makefile.inc +++ b/buch/chapters/060-integral/Makefile.inc @@ -8,5 +8,12 @@ CHAPTERFILES += \ chapters/060-integral/fehlerfunktion.tex \ chapters/060-integral/eulertransformation.tex \ chapters/060-integral/differentialkoerper.tex \ + chapters/060-integral/rational.tex \ + chapters/060-integral/erweiterungen.tex \ + chapters/060-integral/diffke.tex \ + chapters/060-integral/irat.tex \ + chapters/060-integral/sqratrat.tex \ chapters/060-integral/risch.tex \ + chapters/060-integral/logexp.tex \ + chapters/060-integral/elementar.tex \ chapters/060-integral/chapter.tex diff --git a/buch/chapters/060-integral/differentialkoerper.tex b/buch/chapters/060-integral/differentialkoerper.tex index f41d3ba..66bb0c1 100644 --- a/buch/chapters/060-integral/differentialkoerper.tex +++ b/buch/chapters/060-integral/differentialkoerper.tex @@ -1,1953 +1,14 @@ % -% differentialalgebren.tex +% differentialkoerper.tex % % (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule % -\section{Differentialkörper und der Satz von Liouville +\section{Differentialkörper \label{buch:integrale:section:dkoerper}} -\rhead{Differentialkörper und der Satz von Liouville} -Das Problem der Darstellbarkeit eines Integrals in geschlossener -Form verlangt zunächst einmal nach einer Definition dessen, was man -als ``geschlossene Form'' akzeptieren will. -Die sogenannten {\em elementaren Funktionen} von -Abschnitt~\ref{buch:integrale:section:elementar} -bilden dafür den theoretischen Rahmen. -Das Problem ist dann die Frage zu beantworten, ob ein Integral eine -Stammfunktion hat, die eine elementare Funktion ist. -Der Satz von Liouville von Abschnitt~\ref{buch:integrale:section:liouville} -löst das Problem. - -\subsection{Eine Analogie -\label{buch:integrale:section:analogie}} -% XXX Analogie: Formel für Polynom-Nullstellen -% XXX Stammfunktion als elementare Funktion -Das Analysis-Problem, eine Stammfunktion zu finden, ist analog zum -wohlbekannten algebraischen Problem, Nullstellen von Polynomen zu finden. -Wir entwickeln diese Analogie in etwas mehr Detail, um zu sehen, ob man -aus dem algebraischen Problem etwas über das Problem der Analysis -lernen kann. - -Für ein Polynom $p(X) = a_nX^n+a_{n-1}X^{n-1}+\dots+a_1X+a_0\in\mathbb{C}[X]$ -mit Koeffizienten $a_k\in\mathbb{C}$ ist es sehr einfach, für jede beliebige -komplexe Zahl $z\in\mathbb{C}$ den Wert $p(z)$ des Polynoms auszurechnen. -Ein paar wenige Rechenregeln genügen dazu, man kann leicht einem Kind -beibringen, mit einem Taschenrechner so einen Wert auszurechnen. - -Ähnlich sieht es mit der Ableitungsoperation aus. -Einige wenige Ableitungsregeln, die man in der Analysis~I lernt, -erlauben, auf mehr oder weniger mechanische Art und Weise, jede -beliebige Funktion abzuleiten. -Man kann auch leicht einen Computer dazu programmieren, solche Ableitungen -symbolisch zu berechnen. - -Aus dem Fundamentalsatz der Algebra, der von Gauss vollständig bewiesen -wurde, ist bekannt, dass jedes Polynom mit Koeffizienten in $\mathbb{C}$ -genau so viele Lösungen in $\mathbb{C}$, wie der Grad des Polynoms angibt. -Dies ist aber ein Existenzsatz, er sagt nichts darüber aus, wie man diese -Lösungen finden kann. -In Spezialfällen, wie zum Beispiel für quadratische Polynome, gibt -es spezialsierte Lösungsverfahren, mit denen man Lösungen angeben kann. -Natürlich existieren numerische Methoden wie zum Beispiel das -Newton-Verfahren, mit dem man Nullstellen von Polynomen beliebig genau -bestimmen kann. - -Der Fundamentalsatz der Integralrechnung besagt, dass jede stetige -Funktion eine Stammfunktion hat, die bis auf eine Konstante eindeutig -bestimmt ist. -Auch dieser Existenzsatz gibt keinerlei Hinweise darauf, wie man die -Stammfunktion finden kann. -In der Analysis-Vorlesung lernt man viele Tricks, die in einer -beindruckenden Zahl von Spezialfällen ermöglichen, ein passende -Funktion anzugeben. -Man lernt auch numerische Verfahren kennen, mit denen sich Werte der -Stammfunktion, also bestimmte Integrale, mit beliebiger Genauigkeit -finden kann. - -Die numerische Lösung des Nullstellenproblems ist insofern unbefriedigend, -als sie nur schwer eine Diskussion der Abhängigkeit der Nullstellen von -den Koeffizienten des Polynoms ermöglichen. -Eine Formel wie die Lösungsformel für die quadratische Gleichung -stellt genau für solche Fälle ein ideales Werkzeug bereit. -Was man sich also wünscht ist nicht nur einfach eine Lösung, sondern eine -einfache Formel zur Bestimmung aller Lösungen. -Im Zusammenhang mit algebraischen Gleichungen erwartet man eine Formel, -in der nur arithmetische Operationen und Wurzeln vorkommen. -Für quadratische Gleichungen ist so eine Formel seit dem Altertum bekannt, -Formeln für die kubische Gleichung und die Gleichung vierten Grades wurden -im 16.~Jahrhundert von Cardano bzw.~Ferrari gefunden. -Erst viel später haben Abel und Ruffini gezeigt, dass so eine allgemeine -Formel für Polynome höheren Grades als 4 nicht existiert. -Die Galois-Theorie, die auf den Ideen von Évariste Galois beruht, -stellt eine vollständige Theorie unter anderem für die Lösbarkeit -von Gleichungen durch Wurzelausdrücke dar. - -Numerische Integralwerte haben ebenfalls den Nachteil, dass damit -Diskussionen wie die Abhängigkeit von Parametern eines Integranden -nur schwer möglich sind. -Was man sich daher wünscht ist eine Formel für die Stammfunktion, -die Werte als Zusammensetzung gut bekannter Funktionen wie der Exponential- -und Logarithmus-Funktionen oder der trigonometrischen Funktionen -sowie Wurzeln, Potenzen und den arithmetischen Operationen. -Man sagt, man möchte die Stammfunktion in ``geschlossener Form'' -dargestellt haben. -Tatsächlich ist dieses Problem auch zu Beginn des 19.~Jahrhunderts -von Joseph Liouville genauer untersucht worden. -Er hat zunächst eine Klasse von ``elementaren Funktionen'' definiert, -die als Darstellungen einer Stammfunktion in Frage kommen. -Der Satz von Liouville besagt dann, dass nur Funktionen mit einer -ganz speziellen Form eine elementare Stammfunktion haben. -Damit wird es möglich, zu entscheiden, ob ein Integrand wie $e^{-x^2}$ -eine elementare Stammfunktion hat. -Seit dieser Zeit weiss man zum Beispiel, dass die Fehlerfunktion nicht -mit den bekannten Funktionen dargestellt werden kann. - -Mit dem Aufkommen der Computer und vor allem der Computer-Algebra-System (CAS) -wurde die Frage nach der Bestimmung einer Stammfunktion erneut aktuell. -Die ebenfalls weiter entwickelte abstrakte Algebra hat ermöglicht, die -Ideen von Liouville in eine erweiterte, sogenannte differentielle -Galois-Theorie zu verpacken, die eine vollständige Lösung des Problems -darstellt. -Robert Henry Risch hat in den Sechzigerjahren auf dieser Basis -einen Algorithmus entwickelt, mit dem es möglich wird, zu entscheiden, -ob eine Funktion eine elementare Stammfunktion hat und diese -gegebenenfalls auch zu finden. -Moderne CAS implementieren diesen Algorithmus -in Teilen, besonders weit zu gehen scheint das quelloffene System -Axiom. - -Der Risch-Algorithmus hat allerdings eine Achillesferse: er benötigt -eine Method zu entscheiden, ob zwei Ausdrücke übereinstimmen. -Dies ist jedoch ein im Allgemeinen nicht entscheidbares Problem. -Moderne CAS treiben einigen Aufwand, um die -Gleichheit von Ausdrücken zu entscheiden, sie können das Problem -aber grundsätzlich nicht vollständig lösen. -Damit kann der Risch-Algorithmus in praktischen Anwendungen das -Stammfunktionsproblem ebenfalls nur mit Einschränkungen lösen, -die durch die Fähigkeiten des Ausdrucksvergleichs in einem CAS -gesetzt werden. - -Im Folgenden sollen elementare Funktionen definiert werden, es sollen -die Grundideen der differentiellen Galois-Theorie zusammengetragen werden -und der Satz von Liouvill vorgestellt werden. -An Hand der Fehler-Funktion soll dann gezeigt werden, wie man jetzt -einsehen kann, dass die Fehlerfunktion nicht elementar darstellbar ist. -Im nächsten Abschnitt dann soll der Risch-Algorithmus skizziert werden. - -\subsection{Elementare Funktionen -\label{buch:integrale:section:elementar}} -Es soll die Frage beantwortet werden, welche Stammfunktionen sich -in ``geschlossener Form'' oder durch ``wohlbekannte Funktionen'' -ausdrücken lassen. -Welche Funktionen dabei als ``wohlbekannt'' gelten dürfen ist -ziemlich willkürlich. -Sicher möchte man Potenzen und Wurzeln, Logarithmus und Exponentialfunktion, -aber auch die trigonometrischen Funktionen dazu zählen dürfen. -Ausserdem will man beliebig mit den arithmetischen Operationen -rechnen. -So entsteht die Menge der Funktionen, die man ``elementar'' nennen -will. - -In der Menge der elementaren Funktionen möchte man jetzt -Stammfunktionen ausgewählter Funktionen suchen. -Dazu muss man von jeder Funktion ihre Ableitung kennen. -Die Ableitungsoperation macht aus der Funktionenmenge eine -differentielle Algebra. -Der Satz von Liouville (Satz~\ref{buch:integrale:satz:liouville1}) -liefert Bedingungen, die erfüllt sein müssen, wenn eine Funktion -eine elementare Stammfunktion hat. -Sind diese Bedingungen nicht erfüllbar, ist auch keine -elementare Stammfunktion möglich. - -In den folgenden Abschnitten soll die differentielle Algebra -der elementaren Funktionen konstruiert werden. - -\subsubsection{Körper} -Die einfachsten Funktionen sind die die Konstanten, für die wir -für die nachfolgenden Betrachtungen fast immer die komplexen Zahlen -$\mathbb{C}$ -zu Grunde legen wollen. -Dabei ist vor allem wichtig, dass sich darin alle arithmetischen -Operationen durchführen lassen mit der einzigen Ausnahme, dass -nicht durch $0$ dividiert werden darf. -Man nennt $\mathbb{C}$ daher ein {\em Körper}. -\index{Körper}% -\label{buch:integrale:def:koerper} - -\subsubsection{Polynome und rationale Funktionen} -Die Polynome einer Variablen beschreiben eine Menge von -Funktionen, in der Addition, Subtraktion, Multiplikation -von Funktionen und Multiplikation mit komplexen Zahlen -uneingeschränkt möglich ist. -Wir bezeichen wie früher die Menge der Polynome in $z$ mit -$\mathbb{C}[z]$. - -Die Division ist erst möglich, wenn man beliebige Brüche -zulässt, deren Zähler und Nenner Polynome sind. -Die Menge -\[ -\mathbb{C}(z) -= -\biggl\{ -\frac{p(z)}{q(z)} -\;\bigg|\; -p,q\in \mathbb{C}[z] -\biggr\} -\] -heisst die Menge der {\em rationalen Funktionen}. -\label{buch:integrale:def:rationalefunktion} -\index{Funktion, rationale}% -\index{rationale Funktion}% -In ihr sind jetzt alle arithmetischen Operationen ausführbar -ausser natürlich die Division durch die Nullfunktion. -Die rationalen Funktionen bilden also wieder eine Körper. - -Die Tatsache, dass die rationalen Funktionen einen Körper -bilden bedeutet auch, dass die Konstruktion erneut durchgeführt -werden kann. -Ausgehend von einem beliebigen Körper $K$ können wieder zunächst -die Polynome $K[X]$ und anschliesen die rationalen Funktionen $K[X]$ -in der neuen Variablen, jetzt aber mit Koeffizienten in $K$ -gebildet werden. -So entstehen Funktionen von mehreren Variablen und, indem -wir für die neue Variable $X$ zum Beispiel die im übernächsten -Abschnitt betrachtete Wurzel $X=\sqrt{z}$ -einsetzen, rationale Funktionen in $z$ und $\sqrt{z}$. - -Solche Funktionenkörper werden im folgenden mit geschweiften -Buchstaben $\mathscr{D}$ bezeichnet. -\index{Funktionenkörper}% - -\subsubsection{Ableitungsoperation} -In allen Untersuchungen soll immer die Ableitungsoperation -mit berücksichtigt werden. -In unserer Betrachtungsweise spielt es keine Rolle, dass die -Ableitung aus einem Grenzwert entsteht, es sind nur die algebraischen -Eigenschaften wichtig. -Diese sind in der folgenden Definition zusammengefasst. - -\begin{definition} -\label{buch:integrale:def:derivation} -Ein {\em Ableitungsoperator} oder eine {\em Derivation} einer Algebra -$\mathscr{D}$ von Funktionen ist eine lineare Abbildung -\[ -\frac{d}{dz} -\colon \mathscr{D} \to \mathscr{D} -: -f \mapsto \frac{df}{dz} = f', -\] -die zusätzlich die Produktregel -\begin{equation} -\frac{d}{dz} (fg) -= -\frac{df}{dz} \cdot g + f \cdot \frac{dg}{dz} -\qquad\Leftrightarrow\qquad -(fg)' = f' g + fg' -\label{buch:integrale:eqn:produktregel} -\end{equation} -\index{Produktregel}% -erfüllt. -Die Funktion $f'\in \mathscr{D}$ heisst auch die {\em Ableitung} -von $f\in\mathscr{D}$. -\index{Derivation}% -\index{Ableitungsoperator}% -\index{Ableitung}% -\end{definition} - -Die Produktregel hat zum Beispiel auch die bekannten Quotientenregel -zur Folge. -Dazu betrachten wir das Produkt $f= (f/g)\cdot g$ und leiten es mit -Hilfe der Produktregel ab: -\[ -\frac{d}{dz}f -= -\frac{d}{dz} -\biggl( -\frac{f}{g}\cdot g -\biggr) -= -{\color{darkred} -\frac{d}{dz} -\biggl( -\frac{f}{g} -\biggr)} -\cdot g -+ -\frac{f}{g}\cdot \frac{d}{dz}g. -\] -Jetzt lösen wir nach der {\color{darkred}roten} Ableitung des Quotienten -auf und erhalten -\begin{equation} -\biggl(\frac{f}{g}\biggr)' -= -\frac{d}{dz}\biggl(\frac{f}{g}\biggr) -= -\frac1g\biggl( -\frac{d}{dz}f - \frac{f}{g}\cdot \frac{d}{dz}g -\biggr) -= -\frac{1}{g} -\biggl( -f'-\frac{fg'}{g} -\biggr) -= -\frac{f'g-fg'}{g^2}. -\label{buch:integrale:eqn:quotientenregel} -\end{equation} -Dies ist die Quotientenregel. - -Aus der Produktregel folgt natürlich sofort auch die Potenzregel -für die Ableitung der $n$ten Potenz einer Funktion $f\in\mathscr{D}$, -sie lautet: -\begin{equation} -\frac{d}{dz} f^n -= -\underbrace{ -f'f^{n-1} + ff'f^{n-2} + f^2f'f^{n-3}+\dots f^{n-1}f' -}_{\displaystyle \text{$n$ Terme}} -= -nf^{n-1}f'. -\label{buch:integrale:eqn:potenzregel} -\end{equation} -In dieser Form versteckt sich natürlich auch die Kettenregel, die -Potenzfunktion ist die äussere Funktion, $f$ die innere, $f'$ ist also -die Ableitung er inneren Funktion, wie in der Kettenregel verlangt. -Falls $f$ ein Element von $\mathscr{D}$ ist mit der Eigenschaft -$df/dz=1$, dann entsteht die übliche Produktregel. - -\begin{definition} -Eine Algebra $\mathscr{D}$ von Funktionen mit einem Ableitungsoperator -$d/dz$ heisst eine {\em differentielle Algebra}. -\index{differentielle Algebra}% -\index{Algebra, differentielle}% -In einer differentiellen Algebra gelten die üblichen -Ableitungsregeln. -\end{definition} - -Die Potenzregel war in der Form~\eqref{buch:integrale:eqn:potenzregel} -geschrieben worden, nicht als die Ableitung von $z$. -Der Grund dafür ist, dass wir gar nicht voraussetzen wollen, dass in -unserer differentiellen Algebra eine Funktion existiert, die die -Rolle von $z$ hat. -Dies ist gar nicht nötig, wie das folgende Beispiel zeigt. - -\begin{beispiel} -Als Funktionenmenge $\mathscr{D}$ nehmen wir rationale Funktionen -in zwei Variablen, die wir $\cos x $ und $\sin x$ nennen. -Diese Menge bezeichnen wir mit -$\mathscr{D}=\mathbb{Q}(\cos x,\sin x)$ -Der Ableitungsoperator ist -\begin{align*} -\frac{d}{dx} \cos x &= -\sin x -\\ -\frac{d}{dx} \sin x &= \phantom{-}\cos x. -\end{align*} -Die Funktionen von $\mathbb{Q}(\cos x,\sin x)$ sind also Brüche, -deren Zähler und Nenner Polynome in $\cos x$ und $\sin x$ sind. -Aus den Produkt- und Quotientenregeln und den Ableitungsregeln für -$\cos x$ und $\sin x$ folgt, dass die Ableitung einer Funktion in -$\mathscr{D}$ wieder in $\mathscr{D}$ ist, $\mathscr{D}$ ist eine -differentielle Algebra. -\end{beispiel} - -Die konstanten Funktionen spielen eine besondere Rolle. -Da wir bei der Ableitung nicht von der Vorstellung einer -Funktion mit einem variablen Argument ausgehen wollten und -die Ableitung nicht als Grenzwert definieren wollten, müssen -wir auch bei der Definition der ``Konstanten'' einen neuen -Weg gehen. -In der Analysis sind die Konstanten genau die Funktionen, -deren Ableitung $0$ ist. - -\begin{definition} -\label{buch:integrale:def:konstante} -Ein Element $f\in \mathscr{D}$ mit $df/dz=f'=0$ heissen -{\em Konstante} in $\mathscr{D}$. -\index{Konstante}% -\end{definition} - -Die in der Potenzregel~\eqref{buch:integrale:eqn:potenzregel} -vermisste Funktion $z$ kann man ähnlich zu den Konstanten -zu definieren versuchen. -$z$ müsste ein Element von $\mathscr{D}$ mit $z' = 1$ sein. -Allerdings gibt es viele solche Elemente, ist $c$ eine Konstanten -und $z'=1$, dann ist auch $(z+c)'=1$, $(z+c)$ hat also für -die Zwecke unserer Untersuchung die gleichen Eigenschaften wie -$z$. -Dies deckt sich natürlich auch mit der Erwartung, dass Stammfunktionen -nur bis auf eine Konstante bestimmt sind. -Eine differentielle Algebra muss allerdings kein Element $z$ mit der -Eigenschaft $z'=1$ enthalten. - -\begin{beispiel} -In $\mathscr{D}=\mathbb{Q}(\cos x,\sin x)$ gibt es kein Element $x$. -Ein solches wäre von der Form -\[ -x = \frac{p(\cos x,\sin x)}{q(\cos x,\sin x)}. -\] -Eine solche goniometrische Beziehung würde für $x=\frac{\pi}4$ bedeuten, -dass -\[ -\frac{\pi}4 -= -\frac{p(\sqrt{2}/2,\sqrt{2}/2)}{q(\sqrt{2}/2,\sqrt{2}/2)}. -\] -Auf der rechten Seite steht ein Quotient von Polynome, in dessen -Argument nur rationale Zahlen und $\sqrt{2}$ steht. -So ein Ausdruck kann immer in die Form -\[ -\pi -= -4\frac{a\sqrt{2}+b}{c\sqrt{2}+d} -= -\frac{4(a\sqrt{2}+b)(c\sqrt{2}-d)}{2c^2+d^2} -= -r\sqrt{2}+s -\] -gebracht werden. -Die Zahl auf der rechten Seite ist zwar irrational, aber sie ist Nullstelle -des quadratischen Polynoms -\[ -p(x) -= -(x-r\sqrt{2}-s)(x+r\sqrt{2}-s) -= -x^2 --2sx --2r^2+s^2 -\] -mit rationalen Koeffizienten, wie man mit der Lösungsformel für die -quadratische Gleichung nachprüfen kann. -Es ist bekannt, dass $\pi$ als transzendente Zahl nicht Nullstelle -eines Polynoms mit rationalen Koeffizienten ist. -Dieser Widerspruch zeigt, dass $x$ nicht in $\mathbb{Q}(\cos x, \sin x)$ -vorkommen kann. -\end{beispiel} - -In einer differentiellen Algebra kann jetzt die Frage nach der -Existenz einer Stammfunktion gestellt werden. - -\begin{aufgabe} -\label{buch:integrale:aufgabe:existenz-stammfunktion} -Gegeben eine differentielle Algebra $\mathscr{D}$ und ein Element -$f\in\mathscr{D}$, entscheide, ob es ein Element $F\in\mathscr{D}$ -gibt mit der Eigenschaft $F'=f$. -Ein solches $F\in\mathscr{D}$ heisst {\em Stammfunktion} von $f$. -\end{aufgabe} - -\begin{satz} -In einer differentiellen Algebra $\mathscr{D}$ mit $z\in\mathscr{D}$ -hat die Potenzfunktion $f=z^n$ für $n\in\mathbb{N}\setminus\{-1\}$ -ein Stammfunktion, nämlich -\[ -F = \frac{1}{n+1} z^{n+1}. -\] -\label{buch:integrale:satz:potenzstammfunktion} -\end{satz} - -\begin{proof}[Beweis] -Tatsächlich kann man dies sofort nachrechnen, muss allerdings die -Fälle $n+1 >0$ und $n+1<0$ unterscheiden, da die Potenzregel -\eqref{buch:integrale:eqn:potenzregel} nur für natürliche Exponenten -gilt. -Man erhält -\begin{align*} -n+1&>0\colon -& -\frac{d}{dz}\frac{1}{n+1}z^{n+1} -&= -\frac{1}{n+1}(n+1)z^{n+1-1} -= -z^n, -\\ -n+1&<0\colon -& -\frac{d}{dz}\frac{1}{n+1}\frac{1}{z^{-(n+1)}} -&= -\frac{1}{n+1}\frac{1'z^{-(n+1)}-1(-(n+1))z^{-n-1-1}}{z^{-2n-2}} -\\ -&& -&= -\frac{1}{n+1} -\frac{(n+1)z^n{-n-2}}{z^{-2n-2}} -\\ -&& -&= -\frac{1}{z^{-n}}=z^n. -\end{align*} -Man beachte, dass in dieser Rechnung nichts anderes als die -algebraischen Eigenschaften der Produkt- und Quotientenregel -verwendet wurden. -\end{proof} - -\subsubsection{Wurzeln} -Die Wurzelfunktionen sollen natürlich als elementare Funktionen -erlaubt sein. -Es ist bekannt, dass $\sqrt{z}\not\in \mathscr{D}=\mathbb{C}(z)$ -ist, ein solches Element müsste also erst noch hinzugefügt werden. -Dabei muss auch seine Ableitung definiert werden. -Auch dabei dürfen wir nicht auf eine Grenzwertüberlegung zurückgreifen, -vielmehr müssen wir die Ableitung auf vollständig algebraische -Weise bestimmen. - -Wir schreiben $f=\sqrt{z}$ und leiten die Gleichung $f^2=z$ nach $z$ ab. -Dabei ergibt sich nach der Potenzregel -\[ -\frac{d}{dz}f^2 = 2f'f = \frac{d}{dz}z=1 -\qquad\Rightarrow\qquad f' = \frac{1}{2f}. -\] -Diese Rechnung lässt sich auch auf $n$-Wurzeln $g=\root{n}\of{z}$ mit -der Gleichung $g^n = z$ verallgemeinern. -Die Ableitung der $n$-ten Wurzel ist -\begin{equation} -\frac{d}{dz}g^n -= -ng^{n-1} = \frac{d}{dz}z=1 -\qquad\Rightarrow\qquad -\frac{d}{dz}g = \frac{1}{ng^{n-1}}. -\end{equation} -Es ist also möglich, eine differentielle Algebra $\mathscr{D}$ mit einer -$n$-ten Wurzel $g$ zu einer grösseren differentiellen Algebra $\mathscr{D}(g)$ -zu erweitern, in der wieder alle Regeln für das Rechnen mit Ableitungen -erfüllt sind. - -\subsubsection{Algebraische Elemente} -Die Charakterisierung der Wurzelfunktionen passt zwar zum verlangten -algebraischen Vorgehen, ist aber zu spezielle und nicht gut für die -nachfolgenden Untersuchengen geeignet. -Etwas allgemeiner ist der Begriff der algebraischen Elemente. - -\begin{definition} -\label{buch:integrale:def:algebraisches-element} -Seien $K\subset L$ zwei Körper. -Ein Element $\alpha \in L$ heisst {\em algebraisch} über $K$, -wenn $\alpha$ Nullstelle eines Polynoms $p\in K[X]$ mit Koeffizienten -in $K$ ist. -\index{algebraisch}% -\end{definition} - -Jedes Element $\alpha\in K$ ist algebraisch, da $\alpha$ Nullstelle -von $X-\alpha\in K[X]$ ist. -Die $n$tem Wurzeln eines Elemente $\alpha\in K$ sind ebenfalls algebraisch, -da sie Nullstellen des Polynoms $p(X) = X^n - \alpha$ sind. -Allerdings ist nicht klar, dass diese Wurzeln überhaupt existieren. -Nach dem Satz von Abel~\ref{buch:potenzen:satz:abel} gibt es aber -Nullstellen von Polynomen, die sich nicht als Wurzelausdrücke schreiben -lassen. -Der Begriff der algebraischen Elemente ist also allgemeiner als der -Begriff der Wurzel. - -\begin{definition} -\label{buch:integrale:def:algebraisch-abgeschlossen} -Ein Körper $K$ heisst {\em algebraisch abgeschlossen}, wenn jedes Polynom mit -Koeffizienten in $K$ eine Nullstelle in $K$ hat. -\end{definition} - -Der Körper $\mathbb{C}$ ist nach dem -Fundamentalsatz~\label{buch:potenzen:satz:fundamentalsatz} -der Algebra algebraisch abgeschlossen. -Da wir aber mit Funktionen arbeiten, müssen wir auch Wurzeln -von Funktionen finden können. -Dies ist nicht selbstverständlich, wie das folgende Beispiel zeigt. - -\begin{beispiel} -Es gibt keine stetige Funktion $f\colon \mathbb{C}\to\mathbb{C}$, die -die Gleichung $f(z)^2 = z$ und $f(1)=1$ erfüllt. -Für die Argumente $z(t)= e^{it}$ folgt, dass $f(z(t)) = e^{it/2}$ sein -muss. -Setzt man aber $t=\pm \pi$ ein, ergeben sich die Werte -$f(z(\pm\pi))=e^{\pm i\pi/2}=\pm 1$, die beiden Grenzwerte -für $t\to\pm\pi$ sind also verschieden. -\end{beispiel} - -Die Mathematik hat verschiedene ``Tricks'' entwickelt, wie mit diesem -Problem umgegangen werden kann: Funktionskeime, Garben, Riemannsche -Flächen. -Sie sind alle gleichermassen gut geeignet, das Problem zu lösen. -Für die vorliegende Aufgabe genügt es aber, dass es tatsächlich -immer ein wie auch immer geartetes Element gibt, welches Nullstelle -des Polynoms ist. - -Ist $f$ eine Nullstelle des Polynoms $p(X)$ mit Koeffizienten in -$\mathscr{D}$, dann kann man die Ableitung wie folgt berechnen. -Zunächst leitet man $p(f)$ ab: -\begin{align} -0&= -\frac{d}{dz}(a_nf^n + a_{n-1}f^{n-1}+\ldots+a_1f+a_0) -\notag -\\ -&= -a_n'f^n + a_{n-1}'f^{n-1}+\ldots+a_1'f+a_0' -+ -na_nf^{n-1}f' -+ -(n-1)a_nf^{n-2}f' -+ -\ldots -+ -a_2ff' -+ -a_1f' -\notag -\\ -&= -a_n'f^n + a_{n-1}'f^{n-1}+\ldots+a_1'f+a_0' -+ -( -na_nf^{n-1} -+ -(n-1)a_nf^{n-2} -+ -\ldots -+ -a_2f -+ -a_1 -)f' -\notag -\\ -\Rightarrow -\qquad -f'&=\frac{ -a_n'f^n + a_{n-1}'f^{n-1}+\dots+a_1'f+a_0' -}{ -na_nf^{n-1} -+ -(n-1)a_nf^{n-2} -+ -\dots -+ -a_1 -}. -\label{buch:integrale:eqn:algabl} -\end{align} -Das einzige, was dabei schief gehen könnte ist, dass der Nenner ebenfalls -verschwindet. -Dieses Problem kann man dadurch lösen, dass man als Polynom das -sogenannte Minimalpolynom verwendet. - -\begin{definition} -Das {\em Minimalpolynome} $m(X)$ eines algebraischen Elementes $\alpha$ ist -das Polynom kleinsten Grades, welches $m(\alpha)=0$ erfüllt. -\end{definition} - -Da das Minimalpolynom den kleinstmöglichen Grad hat, kann der Nenner -von~\eqref{buch:integrale:eqn:algabl}, -der noch kleineren Grad hat, unmöglich verschwinden. -Das Minimalpolynom ist auch im wesentlichen eindeutig. -Gäbe es nämlich zwei verschiedene Minimalpolynome $m_1$ und $m_2$, -dann müsste $\alpha$ auch eine Nullstelle des grössten gemeinsamen -Teilers $m_3=\operatorname{ggT}(m_1,m_2)$ sein. -Wären die beiden Polynome wesentlich verschieden, dann hätte $m_3$ -kleineren Grad, im Widerspruch zur Definition des Minimalpolynoms. -Also unterscheiden sich die beiden Polynome $m_1$ und $m_2$ nur um -einen skalaren Faktor. - -\subsubsection{Konjugation, Spur und Norm} -% Konjugation, Spur und Norm -Das Minimalpolynom eines algebraischen Elementes ist nicht -eindeutig bestimmt. -Zum Beispiel ist $\sqrt{2}$ algebraisch über $\mathbb{Q}$, das -Minimalpolynom ist $m(X)=X^2-2\in\mathbb{Q}[X]$. -Es hat aber noch eine zweite Nullstelle $-\sqrt{2}$. -Mit rein algebraischen Mitteln sind die beiden Nullstellen $\pm\sqrt{2}$ -nicht zu unterscheiden, erst die Verwendung der Vergleichsrelation -ermöglicht, sie zu unterscheiden. - -Dasselbe gilt für die imaginäre Einheit $i$, die das Minimalpolynom -$m(X)=X^2+1\in\mathbb{R}[X]$ hat. -Hier gibt es nicht einmal mehr eine Vergleichsrelation, mit der man -die beiden Nullstellen unterscheiden könnte. -In der Tat ändert sich aus algebraischer Sicht nichts, wenn man in -allen Formeln $i$ durch $-i$ ersetzt. - -Etwas komplizierter wird es bei $\root{3}\of{2}$. -Das Polynom $m=x^3-2\in\mathbb{Q}[X]$ hat $\root{3}\of{2}$ als -Nullstelle und dies ist auch tatsächlich das Minimalpolynom. -Das Polynom hat noch zwei weitere Nullstellen -\[ -\alpha_+ = \frac{-1+i\sqrt{3}}{2}\root{3}\of{2} -\qquad\text{und}\qquad -\alpha_- = \frac{-1-i\sqrt{3}}{2}\root{3}\of{2}. -\] -Die beiden Lösungen gehen durch die Vertauschung von $i$ und $-i$ -auseinander hervor. -Betrachtet man dasselbe Polynom aber als Polynom in $\mathbb{R}[X]$, -dann ist es nicht mehr das Minimalpolynom von $\root{3}\of{2}$, da -$X-\root{3}\of{2}\in\mathbb{R}[X]$ kleineren Grad und $\root{3}\of{2}$ -als Nullstelle hat. -Indem man -\[ -m(X)/(X-\root{3}\of{2})=X^2+\root{3}\of{2}X+\root{3}\of{2}^2=m_2(X) -\] -rechnet, bekommt man das Minimalpolynom der beiden Nullstellen $\alpha_+$ -und $\alpha_-$. -Wir lernen aus diesen Beispielen, dass das Minimalpolynom vom Grundkörper -abhängig ist (Die Faktorisierung $(X-\root{3}\of{2})\cdot m_2(X)$ von -$m(X)$ ist in $\mathbb{Q}[X]$ nicht möglich) und dass wir keine -algebraische Möglichkeit haben, die verschiedenen Nullstellen des -Minimalpolynoms zu unterscheiden. - -Die beiden Nullstellen $\alpha_+$ und $\alpha_-$ des Polynoms $m_2(X)$ -erlauben, $m_2(X)=(X-\alpha_+)(X-\alpha_-)$ zu faktorisieren. -Durch Ausmultiplizieren -\[ -(X-\alpha_+)(X-\alpha_-) -= -X^2 -(\alpha_++\alpha_-)X+\alpha_+\alpha_- -\] -und Koeffizientenvergleich mit $m_2(X)$ findet man die symmetrischen -Formeln -\[ -\alpha_+ + \alpha_- = \root{3}\of{2} -\qquad\text{und}\qquad -\alpha_+ \alpha_ = \root{3}\of{2}. -\] -Diese Ausdrücke sind nicht mehr abhängig von einer speziellen Wahl -der Nullstellen. - -Das Problem verschärft sich nocheinmal, wenn wir Funktionen betrachten. -Das Polynom $m(X)=X^3-z$ ist das Minimalpolynom der Funktion $\root{3}\of{z}$. -Die komplexe Zahl $z=re^{i\varphi}$ hat aber drei die algebraisch nicht -unterscheidbaren Nullstellen -\[ -\alpha_0(z)=\root{3}\of{r}e^{i\varphi/3}, -\quad -\alpha_1(z)=\root{3}\of{r}e^{i\varphi/3+2\pi/3} -\qquad\text{und}\qquad -\alpha_2(z)=\root{3}\of{r}e^{i\varphi/3+4\pi/3}. -\] -Aus der Faktorisierung $ (X-\alpha_0(z)) (X-\alpha_1(z)) (X-\alpha_2(z))$ -und dem Koeffizientenvergleich mit dem Minimalpolynom kann man wieder -schliessen, dass die Relationen -\[ -\alpha_0(z) + \alpha_1(z) + \alpha_2(z)=0 -\qquad\text{und}\qquad -\alpha_0(z) \alpha_1(z) \alpha_2(z) = z -\] -gelten. - -Wir können also oft keine Aussagen über individuelle Nullstellen -eines Minimalpolynoms machen, sondern nur über deren Summe oder -Produkt. - -\begin{definition} -\index{buch:integrale:def:spur-und-norm} -Sie $m(X)\in K[X]$ das Minimalpolynom eines über $K$ algebraischen -Elements und -\[ -m(X) = a_nX^n + a_{n-1}X^{n-1} + \ldots + a_1X + a_0. -\] -Dann heissen -\[ -\operatorname{Tr}(\alpha) = -a_{n-1} -\qquad\text{und}\qquad -\operatorname{Norm}(\alpha) = (-1)^n a_0 -\] -die {\em Spur} und die {\em Norm} des Elementes $\alpha$. -\index{Spur eines algebraischen Elementes}% -\index{Norm eines algebraischen Elementes}% -\end{definition} - -Die Spur und die Norm können als Spur und Determinante einer Matrix -verstanden werden, diese allgemeineren Definitionen, die man in der -Fachliteratur, z.~B.~in~\cite{buch:lang} nachlesen kann, führen aber -für unsere Zwecke zu weit. - -\begin{hilfssatz} -Die Ableitungen von Spur und Norm sind -\[ -\operatorname{Tr}(\alpha)' -= -\operatorname{Tr}(\alpha') -\qquad\text{und}\qquad -\operatorname{Norm}(\alpha)' -= -\operatorname{Tr}(\alpha)' -\] -XXX Wirklich? -\end{hilfssatz} - -\subsubsection{Logarithmen und Exponentialfunktionen} -Die Funktion $z^{-1}$ musste im -Satz~\ref{buch:integrale:satz:potenzstammfunktion} -ausgeschlossen werden, sie hat keine Stammfunktion in $\mathbb{C}(z)$. -Aus der Analysis ist bekannt, dass die Logarithmusfunktion $\log z$ -eine Stammfunktion ist. -Der Logarithmus von $z$ aber auch der Logarithmus $\log f(z)$ -einer beliebigen Funktion $f(z)$ oder die Exponentialfunktion $e^{f(z)}$ -sollen ebenfalls elementare Funktionen sein. -Da wir aber auch hier nicht auf die analytischen Eigenschaften zurückgreifen -wollen, brauchen wir ein rein algebraische Definition. - -\begin{definition} -\label{buch:integrale:def:logexp} -Sei $\mathscr{D}$ ein differentielle Algebra und $f\in\mathscr{D}$. -Ein Element $\vartheta\in\mathscr{D}$ heisst ein {\em Logarithmus} -von $f$, geschrieben $\vartheta = \log f$, wenn $f\vartheta' = f'$ gilt. -$\vartheta$ heisst eine Exponentialfunktion von $f$ wenn -$\vartheta'=\vartheta f'$ gilt. -\end{definition} - -Die Formel für die Exponentialfunktion ist etwas vertrauter, sie ist -die bekannte Kettenregel -\begin{equation} -\vartheta' -= -\frac{d}{dz} e^f -= -e^f \cdot \frac{d}{dz} f -= -\vartheta \cdot f'. -\label{buch:integrale:eqn:exponentialableitung} -\end{equation} -Da wir uns vorstellen, dass Logarithmen Umkehrfunktionen von -Exponentialfunktionen sein sollen, -muss die definierende Gleichung genau wie -\eqref{buch:integrale:eqn:exponentialableitung} -aussehen, allerdings mit vertauschten Plätzen von $f$ und $\vartheta$, -also -\begin{equation} -\vartheta' = \vartheta\cdot f' -\qquad -\rightarrow -\qquad -f' = f\cdot \vartheta' -\;\Leftrightarrow\; -\vartheta' = (\log f)' = \frac{f'}{f}. -\label{buch:integrale:eqn:logarithmischeableitung} -\end{equation} -Dies ist die aus der Analysis bekannte Formel für die logarithmische -Ableitung. - -Der Logarithmus von $f$ und die Exponentialfunktion von $f$ sollen -also ebenfalls als elementare Funktionen betrachtet werden. - -\subsubsection{Die trigonometrischen Funktionen} -Die bekannten trigonometrischen Funktionen und ihre Umkehrfunktionen -sollten natürlich auch elementare Funktionen sein. -Dabei kommt uns zur Hilfe, dass sie sich mit Hilfe der Exponentialfunktion -als -\[ -\cos f = \frac{e^{if}+e^{-if}}2 -\qquad\text{und}\qquad -\sin f = \frac{e^{if}-e^{-if}}{2i} -\] -schreiben lassen. -Eine differentielle Algebra, die die Exponentialfunktionen von $if$ und -$-if$ enthält, enthält also automatisch auch die trigonometrischen -Funktionen. -Im Folgenden ist es daher nicht mehr nötig, die trigonometrischen -Funktionen speziell zu untersuchen. - -\subsubsection{Elementare Funktionen} -Damit sind wir nun in der Lage, den Begriff der elementaren Funktion -genau zu fassen. - -\begin{definition} -\label{buch:integrale:def:einfache-elementare-funktion} -Sie $\mathscr{D}$ eine differentielle Algebra über $\mathbb{C}$ und -$\mathscr{D}(\vartheta)$ eine Erweiterung von $\mathscr{D}$ um eine -neue Funktion $\vartheta$, dann heissen $\vartheta$ und die Elemente -von $\mathscr{D}(\vartheta)$ einfach elementar, wenn eine der folgenden -Bedingungen erfüllt ist: -\begin{enumerate} -\item $\vartheta$ ist algebraisch über $\mathscr{D}$, d.~h.~$\vartheta$ -ist eine ``Wurzel''. -\item $\vartheta$ ist ein Logarithmus einer Funktion in $\mathscr{D}$, -d.~h.~es gibt $f\in \mathscr{D}$ mit $f'=f\vartheta'$ -(Definition~\ref{buch:integrale:def:logexp}). -\item $\vartheta$ ist eine Exponentialfunktion einer Funktion in $\mathscr{D}$, -d.~h.~es bit $f\in\mathscr{D}$ mit $\vartheta'=\vartheta f'$ -(Definition~\ref{buch:integrale:def:logexp}). -\end{enumerate} -\end{definition} - -Einfache elementare Funktionen entstehen also ausgehend von einer -differentiellen Algebra, indem man genau einmal eine Wurzel, einen -Logarithmus oder eine Exponentialfunktion hinzufügt. -So etwas wie die zusammengesetzte Funktion $e^{\sqrt{z}}$ ist -damit noch nicht möglich. -Daher erlauben wir, dass man die gesuchten Funktionen in mehreren -Schritten aufbauen kann. - -\begin{definition} -Sei $\mathscr{F}$ eine differentielle Algebra, die die differentielle -Algebra $\mathscr{D}$ enthält, also $\mathscr{D}\subset\mathscr{F}$. -$\mathscr{F}$ und die Elemente von $\mathscr{F}$ heissen einfach, -wenn es endlich viele Elemente $\vartheta_1,\dots,\vartheta_n$ gibt -derart, dass -\[ -\renewcommand{\arraycolsep}{2pt} -\begin{array}{ccccccccccccc} -\mathscr{D} -&\subset& -\mathscr{D}(\vartheta_1) -&\subset& -\mathscr{D}(\vartheta_1,\vartheta_2) -&\subset& -\; -\cdots -\; -&\subset& -\mathscr{D}(\vartheta_1,\vartheta_2,\dots,\vartheta_{n-1}) -&\subset& -\mathscr{D}(\vartheta_1,\vartheta_2,\dots,\vartheta_{n-1},\vartheta_n) -&=& -\mathscr{F} -\\ -\| -&& -\| -&& -\| -&& -&& -\| -&& -\| -&& -\\ -\mathscr{F}_0 -&\subset& -\mathscr{F}_1 -&\subset& -\mathscr{F}_2 -&\subset& -\cdots -&\subset& -\mathscr{F}_{n-1} -&\subset& -\mathscr{F}_{n\mathstrut} -&& -\end{array} -\] -gilt so, dass jedes $\vartheta_{i+1}$ einfach ist über -$\mathscr{F}_i=\mathscr{D}(\vartheta_1,\dots,\vartheta_i)$. -\end{definition} - -In Worten bedeutet dies, dass man den Funktionen von $\mathscr{D}$ -nacheinander Wurzeln, Logarithmen oder Exponentialfunktionen einzelner -Funktionen hinzufügt. -Die Aufgabe~\ref{buch:integrale:aufgabe:existenz-stammfunktion} kann -jetzt so formuliert werden. - -\begin{aufgabe} -\label{buch:integrale:aufgabe:existenz-stammfunktion-dalg} -Gegeben ist eine Differentielle Algebra $\mathscr{D}$ und eine -Funktion $f\in \mathscr{D}$. -Gibt es eine Folge $\vartheta_1,\dots,\vartheta_n$ und eine Funktion -$F\in\mathscr{D}(\vartheta_1,\dots,\vartheta_n)$ derart, dass -$F'=f$. -\end{aufgabe} - -Das folgende Beispiel zeigt, wie man möglicherweise mehrere -Erweiterungsschritte vornehmen muss, um zu einer Stammfunktion -zu kommen. -Es illustriert auch die zentrale Rolle, die der Partialbruchzerlegung -in der weiteren Entwicklung zukommen wird. - -\begin{beispiel} -\label{buch:integrale:beispiel:nichteinfacheelementarefunktion} -Es soll eine Stammfunktion der Funktion -\[ -f(z) -= -\frac{z}{(az+b)(cz+d)} -\in -\mathbb{C}(z) -\] -gefunden werden. -In der Analysis lernt man, dass solche Integrale mit der -Partialbruchzerlegung -\[ -\frac{z}{(az+b)(cz+d)} -= -\frac{A_1}{az+b}+\frac{A_2}{cz+d} -= -\frac{A_1cz+A_1d+A_2az+A_2b}{(az+b)(cz+d)} -\quad\Rightarrow\quad -\left\{ -\renewcommand{\arraycolsep}{2pt} -\begin{array}{rcrcr} -cA_1&+&aA_2&=&1\\ -dA_1&+&bA_2&=&0 -\end{array} -\right. -\] -bestimmt werden. -Die Lösung des Gleichungssystems ergibt -$A_1=b/(bc-ad)$ und $A_2=d/(ad-bc)$. -Die Stammfunktion kann dann aus -\begin{align*} -\int f(z)\,dz -&= -\int\frac{A_1}{az+b}\,dz -+ -\int\frac{A_2}{cz+d}\,dz -= -\frac{A_1}{a}\int\frac{a}{az+b}\,dz -+ -\frac{A_2}{c}\int\frac{c}{cz+d}\,dz -\end{align*} -bestimmt werden. -In den Integralen auf der rechten Seite ist der Zähler jeweils die -Ableitung des Nenners, der Integrand hat also die Form $g'/g$. -Genau diese Form tritt in der Definition eines Logarithmus auf. -Die Stammfunktion ist jetzt -\[ -F(z) -= -\int f(z)\,dz -= -\frac{A_1}{a}\log(az+b) -+ -\frac{A_2}{c}\log(cz+d) -= -\frac{b\log(az+b)}{a(bc-ad)} -+ -\frac{d\log(cz+d)}{c(ad-bc)}. -\] -Die beiden Logarithmen kann man nicht durch rein rationale Operationen -ineinander überführen. -Sie müssen daher beide der Algebra $\mathscr{D}$ hinzugefügt werden. -\[ -\left. -\begin{aligned} -\vartheta_1&=\log(az+b)\\ -\vartheta_2&=\log(cz+d) -\end{aligned} -\quad -\right\} -\qquad\Rightarrow\qquad -F(z) \in \mathscr{F}=\mathscr{D}(\vartheta_1,\vartheta_2). -\] -Die Stammfunktion $F(z)$ ist also keine einfache elementare Funktion, -aber $F$ ist immer noch eine elementare Funktion. -\end{beispiel} - -\subsection{Partialbruchzerlegung -\label{buch:integrale:section:partialbruchzerlegung}} -Die Konstruktionen des letzten Abschnitts haben gezeigt, -wie man die Funktionen, die man als Stammfunktionen einer Funktion -zulassen möchte, schrittweise konstruieren kann. -Die Aufgabe~\ref{buch:integrale:aufgabe:existenz-stammfunktion-dalg} -ist eine rein algebraische Formulierung der ursprünglichen -Aufgabe~\ref{buch:integrale:aufgabe:existenz-stammfunktion}. -Schliesslich hat das Beispiel auf -Seite~\pageref{buch:integrale:beispiel:nichteinfacheelementarefunktion} -gezeigt, dass es im allgemeinen mehrere Schritte braucht, um zu einer -elementaren Stammfunktion zu gelangen. -Die Lösung setzt sich aus den Termen der Partialbruchzerlegung. -In diesem Abschnitt soll diese genauer studiert werden. - -In diesem Abschnitt gehen wir immer von einer differentiellen -Algebra über den komplexen Zahlen aus und verlangen, dass die -Konstanten in allen betrachteten differentiellen Algebren -$\mathbb{C}$ sind. - -\subsubsection{Monome} -Die beiden Funktionen $\vartheta-1=\log(az+b)$ und $\vartheta_2=(cz+d)$, -die im Beispiel hinzugefügt werden mussten, verhalten sich ich algebraischer -Hinsicht wie ein Monom: man kann es nicht faktorisieren oder bereits -bekannte Summanden aufspalten. -Solchen Funktionen kommt eine besondere Bedeutung zu. - -\begin{definition} -\label{buch:integrale:def:monom} -Die Funktion $\vartheta$ heisst ein Monom, wenn $\vartheta$ nicht -algebraisch ist über $\mathscr{D}$ und $\mathscr{D}(\vartheta)$ die -gleichen Konstanten enthält wie $\mathscr{D}$. -\end{definition} - -\begin{beispiel} -Als Beispiel beginnen wir mit den komplexen Zahlen $\mathbb{C}$ -und fügen die Funktion $\vartheta_1=z$ hinzu und erhalten -$\mathscr{D}=\mathbb{C}(z)$. -Die Funktionen $z^k$ sind für alle $k$ linear unabhängig, d.~h.~es -gibt keinen Ausdruck -\[ -a_nz^n + a_{n-1}z^{n-1}+\cdots+a_1z+a_0=0. -\] -Dies ist gleichbedeutend damit, dass $z$ nicht algebraisch ist. -Das Monom $z$ ist also auch ein Monom im Sinne der -Definition~\ref{buch:integrale:def:monom}. -\end{beispiel} - -\begin{beispiel} -Wir beginnen wieder mit $\mathbb{C}$ und fügen die Funktion -$e^z$ hinzu. -Gäbe es eine Beziehung -\[ -b_m(e^z)^m + b_{m-1}(e^z)^{m-1}+\dots+b_1e^z + b_0=0 -\] -mit komplexen Koeffizienten $b_i\in\mathbb{C}$, -dann würde daraus durch Einsetzen von $z=1$ die Relation -\[ -b_me^m + b_{m-1}e^{m-1} + \dots + b_1e + b_0=0, -\] -die zeigen würde, dass $e$ eine algebraische Zahl ist. -Es ist aber bekannt, dass $e$ transzendent ist. -Dieser Widersprich zeigt, dass $e^z$ ein Monom ist. -\end{beispiel} - -\begin{beispiel} -Jetzt fügen wir die Exponentialfunktion $\vartheta_2=e^z$ -der differentiellen Algebra $\mathscr{D}=\mathbb{C}(z)$ hinzu -und erhalten $\mathscr{F}_1=\mathscr{D}(e^z) = \mathbb{C}(z,e^z)$. -Gäbe es das Minimalpolynom -\begin{equation} -b_m(z)(e^z)^m + b_{m-1}(z)(e^z)^{m-1}+\dots+b_1(z)e^z + b_0(z)=0 -\label{buch:integrale:beweis:exp-analytisch} -\end{equation} -mit Koeffizienten $b_i\in\mathbb{C}(z)$, dann könnte man mit dem -gemeinsamen Nenner der Koeffizienten durchmultiplizieren und erhielte -eine Relation~\eqref{buch:integrale:beweis:exp-analytisch} mit -Koeffizienten in $\mathbb{C}[z]$. -Dividiert man durch $e^{mz}$ erhält man -\[ -b_m(z) + b_{m-1}(z)\frac{1}{e^z} + \dots + b_1(z)\frac{1}{(e^z)^{m-1}} + b_0(z)\frac{1}{(e^z)^m}=0. -\] -Aus der Analysis weiss man, dass die Exponentialfunktion schneller -anwächst als jedes Polynom, alle Terme auf der rechten Seite -konvergieren daher gegen 0 für $z\to\infty$. -Das bedeutet, dass $b_m(z)\to0$ für $z\to \infty$. -Das Polynom~\eqref{buch:integrale:beweis:exp-analytisch} wäre also gar -nicht das Minimalpolynom. -Dieser Widerspruch zeigt, dass $e^z$ nicht algebraisch ist über -$\mathbb{C}(z)$ und damit ein Monom ist\footnote{Etwas unbefriedigend -an diesem Argument ist, dass man hier wieder rein analytische statt -algebraische Eigenschaften von $e^z$ verwendet. -Gäbe es aber eine minimale Relation wie -\eqref{buch:integrale:beweis:exp-analytisch} -mit Polynomkoeffizienten, dann wäre sie von der Form -\[ -P(z,e^z)=p(z)(e^z)^m + q(z,e^z)=0, -\] -wobei Grad von $e^z$ in $q$ höchstens $m-1$ ist. -Die Ableitung wäre dann -\[ -Q(z,e^z) -= -mp(z)(e^z)^m + p'(z)(e^z)^m + r(z,e^z) -= -(mp(z) + p'(z))(e^z)^m + r(z,e^z) -=0, -\] -wobei der Grad von $e^z$ in $r$ wieder höchstens $m-1$ ist. -Bildet man $mP(z,e^z) - Q(z,e^z) = 0$ ensteht eine Relation, -in der der Grad des Koeffizienten von $(e^z)^m$ um eins abgenommen hat. -Wiederholt man dies $m$ mal, verschwindet der Term $(e^z)^m$, die -Relation~\eqref{buch:integrale:beweis:exp-analytisch} -war also gar nicht minimal. -Dieser Widerspruch zeigt wieder, dass $e^z$ nicht algebraisch ist, -verwendet aber nur die algebraischen Eigenschaften der differentiellen -Algebra. -}. -\end{beispiel} - -\begin{beispiel} -Wir hätten auch in $\mathbb{Q}$ arbeiten können und $\mathbb{Q}$ -erst die Exponentialfunktion $e^z$ und dann den Logarithmus $z$ von $e^z$ -hinzufügen können. -Es gibt aber noch weitere Logarithmen von $e^z$ zum Beispiel $z+2\pi i$. -Offenbar ist $\psi=z+2\pi i\not\in \mathbb{Q}(z,e^z)$, wir könnten also -auch noch $\psi$ hinzufügen. -Zwar ist $\psi$ auch nicht algebraisch, aber wenn wir $\psi$ hinzufügen, -dann wird aber die Menge der Konstanten grösser, sie umfasst jetzt -$\mathbb{Q}(2\pi i)$. -Die Bedingung in der Definition~\ref{buch:integrale:def:monom}, -dass die Menge der Konstanten nicht grösser werden darf, ist also -verletzt. - -Hätte man mit $\mathbb{Q}(e^z, z+2\pi i)$ begonnen, wäre $z$ aus -dem gleichen Grund kein Monom, aber $z+2\pi i$ wäre eines im Sinne -der Definition~\ref{buch:integrale:def:monom}. -In allen Rechnungen könnte man $\psi=z+2\pi i$ nicht weiter aufteilen, -da $\pi$ oder seine Potenzen keine Elemente von $\mathbb{Q}(e^z)$ sind. -\end{beispiel} - -Da wir im Folgenden davon ausgehen, dass die Konstanten unserer -differentiellen Körper immer $\mathbb{C}$ sind, wird es jeweils -genügen zu untersuchen, ob eine neu hinzuzufügende Funktion algebraisch -ist oder nicht. - -\subsubsection{Ableitungen von Polynomen und rationalen Funktionen von Monomen} -Fügt man einer differentiellen Algebra ein Monom hinzu, dann lässt -sich etwas mehr über Ableitungen von Polynomen oder Brüchen in diesen -Monomen sagen. -Diese Eigenschaften werden später bei der Auflösung der Partialbruchzerlegung -nützlich sein. - -\begin{satz} -\label{buch:integrale:satz:polynom-ableitung-grad} -Sei -\[ -P -= -A_nX^n + A_{n-1}X^{n-1} + \dots A_1X+A_0 -\in\mathscr{D}[X] -\] -ein Polynom mit Koeffizienten in einer differentiellen Algebra $\mathscr{D}$ -und $\vartheta$ ein Monom über $\mathscr{D}$. -Dann gilt -\begin{enumerate} -\item -\label{buch:integrale:satz:polynom-ableitung-grad-log} -Falls $\vartheta=\log f$ ist, ist $P(\vartheta)'$ ein -Polynom vom Grad $n$ in $\vartheta$, wenn der Leitkoeffizient $A_n$ -nicht konstant ist, andernfalls ein Polynom vom Grad $n-1$. -\item -\label{buch:integrale:satz:polynom-ableitung-grad-exp} -Falls $\vartheta = \exp f$ ist, dann ist $P(\vartheta)'$ ein Polynom -in $\vartheta$ vom Grad $n$. -\end{enumerate} -\end{satz} - -Der Satz macht also genaue Aussagen darüber, wie sich der Grad eines -Polynoms in $\vartheta$ beim Ableiten ändert. - -\begin{proof}[Beweis] -Für Exponentialfunktion ist $\vartheta'=\vartheta f'$, die Ableitung -fügt also einfach einen Faktor $f'$ hinzu. -Terme der Form $A_k\vartheta^k$ haben die Ableitung -\[ -(A_k\vartheta^k) -= -A'_k\vartheta^k + A_kk\vartheta^{k-1}\vartheta' -= -A'_k\vartheta^k + A_kk\vartheta^{k-1}\vartheta f' -= -(A'_k + kA_k f)\vartheta^k. -\] -Damit wird die Ableitung des Polynoms -\begin{equation} -P(\vartheta)' -= -\underbrace{(A'_n+nA_nf')\vartheta^n}_{\displaystyle=(A_n\vartheta^n)'} -+ -(A'_{n-1}+(n-1)A_{n-1}f')\vartheta^{n-1} -+ \dots + -(A'_1+A_1f')\vartheta + A_0'. -\label{buch:integrale:ableitung:polynom} -\end{equation} -Der Grad der Ableitung kann sich also nur ändern, wenn $A_n'+nA_nf'=0$ ist. -Dies bedeutet aber wegen -\( -(A_n\vartheta^n)' -= -0 -\), dass $A_n\vartheta^n=c$ eine Konstante ist. -Da alle Konstanten bereits in $\mathscr{D}$ sind, folgt, dass -\[ -\vartheta^n=\frac{c}{A_n} -\qquad\Rightarrow\qquad -\vartheta^n - \frac{c}{A_n}=0, -\] -also wäre $\vartheta$ algebraisch über $\mathscr{D}$, also auch kein Monom. -Dieser Widerspruch zeigt, dass der Leitkoeffizient nicht verschwinden kann. - -Für die erste Aussage ist die Ableitung der einzelnen Terme des Polynoms -\[ -(A_k\vartheta^k)' -= -A_k'\vartheta^k + A_kk\vartheta^{k-1}\vartheta' -= -A_k'\vartheta^k + A_kk\vartheta^{k-1}\frac{f'}{f} -= -\biggl(A_k'\vartheta + kA_k\frac{f'}{f}\biggr)\vartheta^{k-1}. -\] -Die Ableitung des Polynoms ist daher -\[ -P(\vartheta)' -= -A_n'\vartheta^n + \biggl(nA_n\frac{f'}{f}+ A'_{n-1}\biggr)\vartheta^{n-1}+\dots -\] -Wenn $A_n$ keine Konstante ist, ist $A_n'\ne 0$ und der Grad von -$P(\vartheta)'$ ist $n$. -Wenn $A_n$ eine Konstante ist, müssen wir noch zeigen, dass der nächste -Koeffizient nicht verschwinden kann. -Wäre der zweite Koeffizient $=0$, dann wäre die Ableitung -\[ -(nA_n\vartheta+A_{n-1})' -= -nA_n\vartheta'+A'_{n-1} -= -nA_n\frac{f'}{f}+A'_{n-1} -= -0, -\] -d.h. $nA_n\vartheta+A_{n-1}=c$ wäre eine Konstante. -Da alle Konstanten schon in $\mathscr{D}$ sind, müsste auch -\[ -\vartheta = \frac{c-A_{n-1}}{nA_n} \in \mathscr{D} -\] -sein, wieder wäre $\vartheta$ kein Monom. -\end{proof} - -Der nächste Satz gibt Auskunft über den führenden Term in -$(\log P(\vartheta))' = P(\vartheta)'/P(\vartheta)$. - -\begin{satz} -\label{buch:integrale:satz:log-polynom-ableitung-grad} -Sei $P$ ein Polynom vom Grad $n$ wie in -\label{buch:integrale:satz:log-polynom-ableitung} -welches zusätzlich normiert ist, also $A_n=1$. -\begin{enumerate} -\item -\label{buch:integrale:satz:log-polynom-ableitung-log} -Ist $\vartheta=\log f$, dann ist -$(\log P(\vartheta))' = P(\vartheta)'/P(\vartheta)$ und $P(\vartheta)'$ -hat Grad $n-1$. -\item -\label{buch:integrale:satz:log-polynom-ableitung-exp} -Ist $\vartheta=\exp f$, dann gibt es ein Polynom $N(\vartheta)$ so, dass -$(\log P(\vartheta))' -= -P(\vartheta)'/P(\vartheta) -= -N(\vartheta)/P(\vartheta)+nf'$ -ist. -Falls $P(\vartheta)=\vartheta$ ist $N=0$, andernfalls ist $N(\vartheta)$ -ein Polynom vom Grad $0$ das kleinste $k$ so, dass $p<(k+1)q$. -Insbesondere ist dann $kq\le p$. -Nach dem euklidischen Satz für die Division von $P(X)$ durch $Q(X)^k$ -gibt es ein Polynom $P_k(X)$ vom Grad $\le p-qk$ derart, dass -\[ -P(X) = P_k(X)Q(X)^k + R_k(X) -\] -mit einem Rest $R_k(X)$ vom Grad $1$ können mit der Potenzregel -integriert werden, aber für eine Stammfunktion $1/(z-1)$ muss -der Logarithmus $\log(z-1)$ hinzugefügt werden. -Die Stammfunktion -\[ -\int f(z)\,dz -= -\int -\frac{1}{z-1} -\,dz -+ -\int -\frac{4}{(z-1)^2} -\,dz -+ -\int -\frac{4}{(z-1)^3} -\,dz -= -\log(z-1) -- -\underbrace{\frac{4z-2}{(z-1)^2}}_{\displaystyle\in\mathscr{D}} -\in \mathscr{D}(\log(z-1)) = \mathscr{F} -\] -hat eine sehr spezielle Form. -Sie besteht aus einem Term in $\mathscr{D}$ und einem Logarithmus -einer Funktion von $\mathscr{D}$, also einem Monom über $\mathscr{D}$. - -\subsubsection{Einfach elementare Stammfunktionen} -Der in diesem Abschnitt zu beweisende Satz von Liouville zeigt, -dass die im einführenden Beispiel konstruierte Form der Stammfunktion -eine allgemeine Eigenschaft elementar integrierbarer -Funktionen ist. -Zunächst aber soll dieses Bespiel etwas verallgemeinert werden. - -\begin{satz}[Liouville-Vorstufe für Monome] -\label{buch:integrale:satz:liouville-vorstufe-1} -Sei $\vartheta$ ein Monom über $\mathscr{D}$ und $g\in\mathscr{D}(\vartheta)$ -mit $g'\in\mathscr{D}$. -Dann hat $g$ die Form $v_0 + c_1\vartheta$ mit $v_0\in\mathscr{D}$ und -$c_1\in\mathbb{C}$. -\end{satz} - -\begin{proof}[Beweis] -In Anlehnung an das einführende Beispiel nehmen wir an, dass die -Stammfunktion $g\in\mathscr{D}[\vartheta]$ für ein Monom $\vartheta$ -über $\mathscr{D}$ ist. -Dann hat $g$ die Partialbruchzerlegung -\[ -g -= -H(\vartheta) -+ -\sum_{j\le r(i)} \frac{P_{ij}(\vartheta)}{Q_i(\vartheta)^j} -\] -mit irreduziblen normierten Polynomen $Q_i(\vartheta)$ und -Polynomen $P_{ij}(\vartheta)$ vom Grad kleiner als $\deg Q_i(\vartheta)$. -Ausserdem ist $H(\vartheta)$ ein Polynom. -Die Ableitung von $g$ muss jetzt aber wieder in $\mathscr{D}$ sein. -Zu ihrer Berechnung können die Sätze -\ref{buch:integrale:satz:polynom-ableitung-grad}, -\ref{buch:integrale:satz:log-polynom-ableitung-grad} -und -\ref{buch:integrale:satz:partialbruch-monom} -verwendet werden. -Diese besagen, dass in der Partialbruchzerlegung die Exponenten der -Nenner die Quotienten in der Summe nicht kleiner werden. -Die Ableitung $g'\in\mathscr{D}$ darf aber gar keine Nenner mit -$\vartheta$ enthalten, also dürfen die Quotienten gar nicht erst -vorkommen. -$g=H(\vartheta)$ muss also ein Polynom in $\vartheta$ sein. -Die Ableitung des Polynoms darf wegen $g'\in\mathscr{d}$ das Monom -$\vartheta$ ebenfalls nicht mehr enthalten, daher kann es höchstens vom -Grad $1$ sein. -Nach Satz~\ref{buch:integrale:satz:log-polynom-ableitung-grad} -muss ausserdem der Leitkoeffizient von $g$ eine Konstante sein, -das Polynom hat also genau die behauptete Form. -\end{proof} - -\begin{satz}[Liouville-Vorstufe für algebraische Elemente] -\label{buch:integrale:satz:liouville-vorstufe-2} -Sei $\vartheta$ algebraische über $\mathscr{D}$ und -$g\in\mathscr{D}(\vartheta)$ mit $g'\in\mathscr{D}$. -\end{satz} - -\subsubsection{Elementare Stammfunktionen} -Nach den Vorbereitungen über einfach elementare Stammfunktionen -in den Sätzen~\label{buch:integrale:satz:liouville-vorstufe-1} -und -\label{buch:integrale:satz:liouville-vorstufe-2} sind wir jetzt -in der Lage, den allgemeinen Satz von Liouville zu formulieren -und zu beweisen. - -\begin{satz}[Liouville] -Sei $\mathscr{D}$ ein Differentialkörper, $\mathscr{F}$ einfach über -$\mathscr{D}$ mit gleichem Konstantenkörper $\mathbb{C}$. -Wenn $g\in \mathscr{F}$ eine Stammfunktion von $f\in\mathscr{D}$ ist, -also $g'=f$, dann gibt es Zahlen $c_i\in\mathbb{C}$ und -$v_0,v_i\in\mathscr{D}$ derart, dass -\begin{equation} -g = v_0 + \sum_{i=1}^k c_i \log v_i -\qquad\Rightarrow\qquad -g' = v_0' + \sum_{i=1}^k c_i \frac{v_i'}{v_i} = f -\label{buch:integrale:satz:liouville-fform} -\end{equation} -gilt. -\end{satz} - -Der Satz hat zur Folge, dass eine elementare Stammfunktion für $f$ -nur dann existieren kann, wenn sich $f$ in der speziellen Form -\eqref{buch:integrale:satz:liouville-fform} -schreiben lässt. -Die Aufgabe~\ref{buch:integrale:aufgabe:existenz-stammfunktion-dalg} -lässt sich damit jetzt lösen. - - -\begin{proof}[Beweis] -Wenn die Stammfunktion $g\in\mathscr{D}$ ist, dann hat $g$ die Form -\eqref{buch:integrale:satz:liouville-fform} mit $v_0=g$, die Summe -wird nicht benötigt. - -Wir verwenden Induktion nach der Anzahl der Elemente, die zu $\mathscr{D}$ -hinzugefügt werden müssen, um einen Differentialkörper -$\mathscr{F}=\mathscr{D}(\vartheta_1,\dots,\vartheta_n)$ zu konstruieren, -der $g$ enthält. -Da $f\in\mathscr{D}\subset\mathscr{D}(\vartheta_1)$ ist, können wir die -Induktionsannahme auf die Erweiterung -\[ -\mathscr{D}(\vartheta_1)\subset\mathscr{D}(\vartheta_1,\vartheta_2) -\subset\cdots\subset \mathscr{D}(\vartheta_1,\cdots,\vartheta_n)=\mathscr{F} -\] -anwenden, die durch Hinzufügen von nur $n-1$ Elemente -$\vartheta_2,\dots,\vartheta_n$ aus $\mathscr{D}(\vartheta_1)$ den -Differentialkörper $\mathscr{F}$ erreicht, der $g$ enthält. -Sie besagt, dass sich $g$ schreiben lässt als -\[ -g = w_0 + \sum_{i=1}^{k_1} c_i\log w_i -\qquad\text{mit $c_i\in\mathbb{C}$ und $w_0,w_i\in\mathscr{D}(\vartheta_1)$.} -\] -Wir müssen jetzt zeigen, dass sich dieser Ausdruck umformen lässt -in den Ausdruck der Form~\eqref{buch:integrale:satz:liouville-fform}. - -Der Term $w_0\in\mathscr{D}(\vartheta_1)$ hat eine Partialbruchzerlegung -\[ -H(\vartheta_1) -+ -\sum_{j\le r(l)} \frac{P_{lj}(\vartheta_1)}{Q_l(\vartheta_1)^j} -\] -in der Variablen $\vartheta_1$. - -Da $w_i\in\mathscr{D}(\vartheta_1)$ ist, kann man Zähler und Nenner -von $w_i$ als Produkt irreduzibler normierter Polynome schreiben: -\[ -w_i -= -\frac{h_i Z_{i1}(\vartheta_1)^{s_{i1}}\cdots Z_{im(i)}^{s_{im(i)}} -}{ -N_{i1}(\vartheta_1)^{t_{i1}}\cdots N_{in(i)}(\vartheta_1)^{t_{in(i)}} -} -\] -Der Logarithmus hat die Form -\begin{align*} -\log w_i -&= \log h_i + -s_{i1} -\log Z_{i1}(\vartheta_1) -+ -\cdots -+ -s_{im(i)} -\log Z_{im(i)} -- -t_{i1} -\log -N_{i1}(\vartheta_1) -- -\cdots -- -t_{in(i)} -\log -N_{in(i)}(\vartheta_1). -\end{align*} -$g$ kann also geschrieben werden als eine Summe von Polynomen, Brüchen, -wie sie in der Partialbruchzerlegung vorkommen, Logarithmen von irreduziblen -normierten Polynomen und Logarithmen von Elementen von $\mathscr{D}$. - -Die Ableitung $g'$ muss jetzt aber wieder in $\mathscr{D}$ sein, beim -Ableiten müssen also alle Terme verschwinden, die $\vartheta_1$ enthalten. -Dabei spielt es eine Rolle, ob $\vartheta_1$ ein Monom oder algebraisch ist. -\begin{enumerate} -\item -Wenn $\vartheta_1$ ein Monom ist, dann kann man wie im Beweis des -Satzes~\ref{buch:integrale:satz:liouville-vorstufe-1} argumentieren, -dass die Brüchterme gar nicht vorkommen und -$H(\vartheta_1)=v_0+c_1\vartheta_1$ sein muss. -Die Ableitung Termen der Form $\log Z(\vartheta_1)$ ist ein Bruchterm -mit dem irreduziblen Nenner $Z(\vartheta_1)$, die ebenfalls verschwinden -müssen. -Ist $\vartheta_1$ eine Exponentialfunktion, dann ist -$\vartheta_1' \in \mathscr{D}(\vartheta_1)\setminus\mathscr{D}$, also muss -$c_1=0$ sein. -Ist $\vartheta_1$ ein Logarithmus, also $\vartheta_1=\log v_1$, dann -kommen nur noch Terme der in -\eqref{buch:integrale:satz:liouville-fform} -erlaubten Form vor. - -\item -Wenn $\vartheta_1$ algebraisch vom Grad $m$ ist, dann ist -\[ -g' = w_0' + \sum_{i=1}^{k_1} d_i\frac{w_i'}{w_i} = f. -\] -Weder $w_0$ noch $\log w_i$ sind in $\mathscr{D}(\vartheta_1)$. -Aber wenn man $\vartheta_1$ durch die $m$ konjugierten Elemente -ersetzt und alle summiert, dann ist -\[ -mf -= -\operatorname{Tr}(w_0) + \sum_{i=1}^{k_1} d_i \log\operatorname{Norm}(w_i). -\] -Da die Spur und die Norm in $\mathscr{D}$ sind, folgt, dass -\[ -f -= -\underbrace{\frac{1}{m} -\operatorname{Tr}(w_0)}_{\displaystyle= v_0} -+ -\sum_{i=1}^{k_1} \underbrace{\frac{d_i}{m}}_{\displaystyle=c_i} -\log -\underbrace{ \operatorname{Norm}(w_i)}_{\displaystyle=v_i} -= -v_0 + \sum_{i=1}^{k_1} c_i\log v_i -\] -die verlangte Form hat. -\qedhere -\end{enumerate} -\end{proof} - -\subsection{Die Fehlerfunktion ist keine elementare Funktion -\label{buch:integrale:section:fehlernichtelementar}} -% \url{https://youtu.be/bIdPQTVF5n4} -Mit Hilfe des Satzes von Liouville kann man jetzt beweisen, dass -die Fehlerfunktion keine elementare Funktion ist. -Dazu braucht man die folgende spezielle Form des Satzes. - -\begin{satz} -\label{buch:integrale:satz:elementarestammfunktion} -Wenn $f(x)$ und $g(x)$ rationale Funktionen von $x$ sind, dann -ist die Stammfunktion von $f(x)e^{g(x)}$ genau dann eine -elementare Funktion, wenn es eine rationale Funktion gibt, die -Lösung der Differentialgleichung -\[ -r'(x) + g'(x)r(x)=f(x) -\] -ist. -\end{satz} - -\begin{satz} -Die Funktion $x\mapsto e^{-x^2}$ hat keine elementare Stammfunktion. -\label{buch:iintegrale:satz:expx2} -\end{satz} - -\begin{proof}[Beweis] -Unter Anwendung des Satzes~\ref{buch:integrale:satz:elementarestammfunktion} -auf $f(x)=1$ und $g(x)=-x^2$ folgt, $e^{-x^2}$ genau dann eine rationale -Stammfunktion hat, wenn es eine rationale Funktion $r(x)$ gibt, die -Lösung der Differentialgleichung -\begin{equation} -r'(x) -2xr(x)=1 -\label{buch:integrale:expx2dgl} -\end{equation} -ist. - -Zunächst halten wir fest, dass $r(x)$ kein Polynom sein kann. -Wäre nämlich -\[ -r(x) -= -a_0 + a_1x + \dots + a_nx^n -= -\sum_{k=0}^n a_kx^k -\quad\Rightarrow\quad -r'(x) -= -a_1 + 2a_2x + \dots + na_nx^{n-1} -= -\sum_{k=1}^n -ka_kx^{k-1} -\] -ein Polynom, dann ergäbe sich beim Einsetzen in die Differentialgleichung -\begin{align*} -1 -&= -r'(x)-2xr(x) -\\ -&= -a_1 + 2a_2x + 3a_3x^2 + \dots + (n-1)a_{n-1}x^{n-2} + na_nx^{n-1} -\\ -&\qquad -- -2a_0x -2a_1x^2 -2a_2x^3 - \dots - 2a_{n-1}x^n - 2a_nx^{n+1} -\\ -& -\hspace{0.7pt} -\renewcommand{\arraycolsep}{1.8pt} -\begin{array}{crcrcrcrcrcrcrcr} -=&a_1&+&2a_2x&+&3a_3x^2&+&\dots&+&(n-1)a_{n-1}x^{n-2}&+&na_{n }x^{n-1}& & & & \\ - & &-&2a_0x&-&2a_1x^2&-&\dots&-& 2a_{n-3}x^{n-2}&-&2a_{n-2}x^{n-1}&-&2a_{n-1}x^n&-&2a_nx^{n+1} -\end{array} -\\ -&= -a_1 -+ -(2a_2-2a_0)x -+ -(3a_3-2a_1)x^2 -%+ -%(4a_4-2a_2)x^3 -+ -\dots -+ -(na_n-2a_{n-2})x^{n-1} -- -2a_{n-1}x^n -- -2a_nx^{n+1}. -\end{align*} -Koeffizientenvergleich zeigt, dass $a_1=1$ sein muss. -Aus den letzten zwei Termen liest man ebenfalls mittels Koeffizientenvergleich -ab, dass $a_n=0$ und $a_{n-1}=0$ sein müssen. -Aus den Koeffizienten $(ka_k-2a_{k-2})=0$ folgt, dass -$a_{k-2}=\frac{k}{2}a_k$ für alle $k>1$ sein muss, diese Koeffizienten -verschwinden also auch, inklusive $a_1=0$. -Dies ist allerdings im Widerspruch zu $a_1=1$. -Es folgt, dass $r(x)$ kein Polynom sein kann. - -Der Nenner der rationalen Funktion $r(x)$ hat also mindestens eine Nullstelle -$\alpha$, man kann daher $r(x)$ auch schreiben als -\[ -r(x) = \frac{s(x)}{(x-\alpha)^n}, -\] -wobei die rationale Funktion $s(x)$ keine Nullstellen und keine Pole hat. -Einsetzen in die Differentialgleichung ergibt: -\[ -1 -= -r'(x) -2xr(x) -= -\frac{s'(x)}{(x-\alpha)^n} --n -\frac{s(x)}{(x-\alpha)^{n+1}} -- -\frac{2xs(x)}{(x-\alpha)^n}. -\] -Multiplizieren mit $(x-\alpha)^{n+1}$ gibt -\[ -(x-\alpha)^{n+1} -= -s'(x)(x-\alpha) -- -ns(x) -- -2xs(x)(x-\alpha) -\] -Setzt man $x=\alpha$ ein, verschwinden alle Terme ausser dem mittleren -auf der rechten Seite, es bleibt -\[ -ns(\alpha) = 0. -\] -Dies widerspricht aber der Wahl der rationalen Funktion $s(x)$, für die -$\alpha$ keine Nullstelle ist. - -Somit kann es keine rationale Funktion $r(x)$ geben, die eine Lösung der -Differentialgleichung~\eqref{buch:integrale:expx2dgl} ist und -die Funktion $e^{-x^2}$ hat keine elementare Stammfunktion. -\end{proof} - -Der Satz~\ref{buch:iintegrale:satz:expx2} rechtfertigt die Einführung -der Fehlerfunktion $\operatorname{erf}(x)$ als neue spezielle Funktion, -mit deren Hilfe die Funktion $e^{-x^2}$ integriert werden kann. - - - +\rhead{Differentialkörper} +\input{chapters/060-integral/rational.tex} +\input{chapters/060-integral/erweiterungen.tex} +\input{chapters/060-integral/diffke.tex} +\input{chapters/060-integral/iproblem.tex} +\input{chapters/060-integral/irat.tex} +\input{chapters/060-integral/sqrat.tex} diff --git a/buch/chapters/060-integral/differentialkoerper2.tex b/buch/chapters/060-integral/differentialkoerper2.tex new file mode 100644 index 0000000..f41d3ba --- /dev/null +++ b/buch/chapters/060-integral/differentialkoerper2.tex @@ -0,0 +1,1953 @@ +% +% differentialalgebren.tex +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\section{Differentialkörper und der Satz von Liouville +\label{buch:integrale:section:dkoerper}} +\rhead{Differentialkörper und der Satz von Liouville} +Das Problem der Darstellbarkeit eines Integrals in geschlossener +Form verlangt zunächst einmal nach einer Definition dessen, was man +als ``geschlossene Form'' akzeptieren will. +Die sogenannten {\em elementaren Funktionen} von +Abschnitt~\ref{buch:integrale:section:elementar} +bilden dafür den theoretischen Rahmen. +Das Problem ist dann die Frage zu beantworten, ob ein Integral eine +Stammfunktion hat, die eine elementare Funktion ist. +Der Satz von Liouville von Abschnitt~\ref{buch:integrale:section:liouville} +löst das Problem. + +\subsection{Eine Analogie +\label{buch:integrale:section:analogie}} +% XXX Analogie: Formel für Polynom-Nullstellen +% XXX Stammfunktion als elementare Funktion +Das Analysis-Problem, eine Stammfunktion zu finden, ist analog zum +wohlbekannten algebraischen Problem, Nullstellen von Polynomen zu finden. +Wir entwickeln diese Analogie in etwas mehr Detail, um zu sehen, ob man +aus dem algebraischen Problem etwas über das Problem der Analysis +lernen kann. + +Für ein Polynom $p(X) = a_nX^n+a_{n-1}X^{n-1}+\dots+a_1X+a_0\in\mathbb{C}[X]$ +mit Koeffizienten $a_k\in\mathbb{C}$ ist es sehr einfach, für jede beliebige +komplexe Zahl $z\in\mathbb{C}$ den Wert $p(z)$ des Polynoms auszurechnen. +Ein paar wenige Rechenregeln genügen dazu, man kann leicht einem Kind +beibringen, mit einem Taschenrechner so einen Wert auszurechnen. + +Ähnlich sieht es mit der Ableitungsoperation aus. +Einige wenige Ableitungsregeln, die man in der Analysis~I lernt, +erlauben, auf mehr oder weniger mechanische Art und Weise, jede +beliebige Funktion abzuleiten. +Man kann auch leicht einen Computer dazu programmieren, solche Ableitungen +symbolisch zu berechnen. + +Aus dem Fundamentalsatz der Algebra, der von Gauss vollständig bewiesen +wurde, ist bekannt, dass jedes Polynom mit Koeffizienten in $\mathbb{C}$ +genau so viele Lösungen in $\mathbb{C}$, wie der Grad des Polynoms angibt. +Dies ist aber ein Existenzsatz, er sagt nichts darüber aus, wie man diese +Lösungen finden kann. +In Spezialfällen, wie zum Beispiel für quadratische Polynome, gibt +es spezialsierte Lösungsverfahren, mit denen man Lösungen angeben kann. +Natürlich existieren numerische Methoden wie zum Beispiel das +Newton-Verfahren, mit dem man Nullstellen von Polynomen beliebig genau +bestimmen kann. + +Der Fundamentalsatz der Integralrechnung besagt, dass jede stetige +Funktion eine Stammfunktion hat, die bis auf eine Konstante eindeutig +bestimmt ist. +Auch dieser Existenzsatz gibt keinerlei Hinweise darauf, wie man die +Stammfunktion finden kann. +In der Analysis-Vorlesung lernt man viele Tricks, die in einer +beindruckenden Zahl von Spezialfällen ermöglichen, ein passende +Funktion anzugeben. +Man lernt auch numerische Verfahren kennen, mit denen sich Werte der +Stammfunktion, also bestimmte Integrale, mit beliebiger Genauigkeit +finden kann. + +Die numerische Lösung des Nullstellenproblems ist insofern unbefriedigend, +als sie nur schwer eine Diskussion der Abhängigkeit der Nullstellen von +den Koeffizienten des Polynoms ermöglichen. +Eine Formel wie die Lösungsformel für die quadratische Gleichung +stellt genau für solche Fälle ein ideales Werkzeug bereit. +Was man sich also wünscht ist nicht nur einfach eine Lösung, sondern eine +einfache Formel zur Bestimmung aller Lösungen. +Im Zusammenhang mit algebraischen Gleichungen erwartet man eine Formel, +in der nur arithmetische Operationen und Wurzeln vorkommen. +Für quadratische Gleichungen ist so eine Formel seit dem Altertum bekannt, +Formeln für die kubische Gleichung und die Gleichung vierten Grades wurden +im 16.~Jahrhundert von Cardano bzw.~Ferrari gefunden. +Erst viel später haben Abel und Ruffini gezeigt, dass so eine allgemeine +Formel für Polynome höheren Grades als 4 nicht existiert. +Die Galois-Theorie, die auf den Ideen von Évariste Galois beruht, +stellt eine vollständige Theorie unter anderem für die Lösbarkeit +von Gleichungen durch Wurzelausdrücke dar. + +Numerische Integralwerte haben ebenfalls den Nachteil, dass damit +Diskussionen wie die Abhängigkeit von Parametern eines Integranden +nur schwer möglich sind. +Was man sich daher wünscht ist eine Formel für die Stammfunktion, +die Werte als Zusammensetzung gut bekannter Funktionen wie der Exponential- +und Logarithmus-Funktionen oder der trigonometrischen Funktionen +sowie Wurzeln, Potenzen und den arithmetischen Operationen. +Man sagt, man möchte die Stammfunktion in ``geschlossener Form'' +dargestellt haben. +Tatsächlich ist dieses Problem auch zu Beginn des 19.~Jahrhunderts +von Joseph Liouville genauer untersucht worden. +Er hat zunächst eine Klasse von ``elementaren Funktionen'' definiert, +die als Darstellungen einer Stammfunktion in Frage kommen. +Der Satz von Liouville besagt dann, dass nur Funktionen mit einer +ganz speziellen Form eine elementare Stammfunktion haben. +Damit wird es möglich, zu entscheiden, ob ein Integrand wie $e^{-x^2}$ +eine elementare Stammfunktion hat. +Seit dieser Zeit weiss man zum Beispiel, dass die Fehlerfunktion nicht +mit den bekannten Funktionen dargestellt werden kann. + +Mit dem Aufkommen der Computer und vor allem der Computer-Algebra-System (CAS) +wurde die Frage nach der Bestimmung einer Stammfunktion erneut aktuell. +Die ebenfalls weiter entwickelte abstrakte Algebra hat ermöglicht, die +Ideen von Liouville in eine erweiterte, sogenannte differentielle +Galois-Theorie zu verpacken, die eine vollständige Lösung des Problems +darstellt. +Robert Henry Risch hat in den Sechzigerjahren auf dieser Basis +einen Algorithmus entwickelt, mit dem es möglich wird, zu entscheiden, +ob eine Funktion eine elementare Stammfunktion hat und diese +gegebenenfalls auch zu finden. +Moderne CAS implementieren diesen Algorithmus +in Teilen, besonders weit zu gehen scheint das quelloffene System +Axiom. + +Der Risch-Algorithmus hat allerdings eine Achillesferse: er benötigt +eine Method zu entscheiden, ob zwei Ausdrücke übereinstimmen. +Dies ist jedoch ein im Allgemeinen nicht entscheidbares Problem. +Moderne CAS treiben einigen Aufwand, um die +Gleichheit von Ausdrücken zu entscheiden, sie können das Problem +aber grundsätzlich nicht vollständig lösen. +Damit kann der Risch-Algorithmus in praktischen Anwendungen das +Stammfunktionsproblem ebenfalls nur mit Einschränkungen lösen, +die durch die Fähigkeiten des Ausdrucksvergleichs in einem CAS +gesetzt werden. + +Im Folgenden sollen elementare Funktionen definiert werden, es sollen +die Grundideen der differentiellen Galois-Theorie zusammengetragen werden +und der Satz von Liouvill vorgestellt werden. +An Hand der Fehler-Funktion soll dann gezeigt werden, wie man jetzt +einsehen kann, dass die Fehlerfunktion nicht elementar darstellbar ist. +Im nächsten Abschnitt dann soll der Risch-Algorithmus skizziert werden. + +\subsection{Elementare Funktionen +\label{buch:integrale:section:elementar}} +Es soll die Frage beantwortet werden, welche Stammfunktionen sich +in ``geschlossener Form'' oder durch ``wohlbekannte Funktionen'' +ausdrücken lassen. +Welche Funktionen dabei als ``wohlbekannt'' gelten dürfen ist +ziemlich willkürlich. +Sicher möchte man Potenzen und Wurzeln, Logarithmus und Exponentialfunktion, +aber auch die trigonometrischen Funktionen dazu zählen dürfen. +Ausserdem will man beliebig mit den arithmetischen Operationen +rechnen. +So entsteht die Menge der Funktionen, die man ``elementar'' nennen +will. + +In der Menge der elementaren Funktionen möchte man jetzt +Stammfunktionen ausgewählter Funktionen suchen. +Dazu muss man von jeder Funktion ihre Ableitung kennen. +Die Ableitungsoperation macht aus der Funktionenmenge eine +differentielle Algebra. +Der Satz von Liouville (Satz~\ref{buch:integrale:satz:liouville1}) +liefert Bedingungen, die erfüllt sein müssen, wenn eine Funktion +eine elementare Stammfunktion hat. +Sind diese Bedingungen nicht erfüllbar, ist auch keine +elementare Stammfunktion möglich. + +In den folgenden Abschnitten soll die differentielle Algebra +der elementaren Funktionen konstruiert werden. + +\subsubsection{Körper} +Die einfachsten Funktionen sind die die Konstanten, für die wir +für die nachfolgenden Betrachtungen fast immer die komplexen Zahlen +$\mathbb{C}$ +zu Grunde legen wollen. +Dabei ist vor allem wichtig, dass sich darin alle arithmetischen +Operationen durchführen lassen mit der einzigen Ausnahme, dass +nicht durch $0$ dividiert werden darf. +Man nennt $\mathbb{C}$ daher ein {\em Körper}. +\index{Körper}% +\label{buch:integrale:def:koerper} + +\subsubsection{Polynome und rationale Funktionen} +Die Polynome einer Variablen beschreiben eine Menge von +Funktionen, in der Addition, Subtraktion, Multiplikation +von Funktionen und Multiplikation mit komplexen Zahlen +uneingeschränkt möglich ist. +Wir bezeichen wie früher die Menge der Polynome in $z$ mit +$\mathbb{C}[z]$. + +Die Division ist erst möglich, wenn man beliebige Brüche +zulässt, deren Zähler und Nenner Polynome sind. +Die Menge +\[ +\mathbb{C}(z) += +\biggl\{ +\frac{p(z)}{q(z)} +\;\bigg|\; +p,q\in \mathbb{C}[z] +\biggr\} +\] +heisst die Menge der {\em rationalen Funktionen}. +\label{buch:integrale:def:rationalefunktion} +\index{Funktion, rationale}% +\index{rationale Funktion}% +In ihr sind jetzt alle arithmetischen Operationen ausführbar +ausser natürlich die Division durch die Nullfunktion. +Die rationalen Funktionen bilden also wieder eine Körper. + +Die Tatsache, dass die rationalen Funktionen einen Körper +bilden bedeutet auch, dass die Konstruktion erneut durchgeführt +werden kann. +Ausgehend von einem beliebigen Körper $K$ können wieder zunächst +die Polynome $K[X]$ und anschliesen die rationalen Funktionen $K[X]$ +in der neuen Variablen, jetzt aber mit Koeffizienten in $K$ +gebildet werden. +So entstehen Funktionen von mehreren Variablen und, indem +wir für die neue Variable $X$ zum Beispiel die im übernächsten +Abschnitt betrachtete Wurzel $X=\sqrt{z}$ +einsetzen, rationale Funktionen in $z$ und $\sqrt{z}$. + +Solche Funktionenkörper werden im folgenden mit geschweiften +Buchstaben $\mathscr{D}$ bezeichnet. +\index{Funktionenkörper}% + +\subsubsection{Ableitungsoperation} +In allen Untersuchungen soll immer die Ableitungsoperation +mit berücksichtigt werden. +In unserer Betrachtungsweise spielt es keine Rolle, dass die +Ableitung aus einem Grenzwert entsteht, es sind nur die algebraischen +Eigenschaften wichtig. +Diese sind in der folgenden Definition zusammengefasst. + +\begin{definition} +\label{buch:integrale:def:derivation} +Ein {\em Ableitungsoperator} oder eine {\em Derivation} einer Algebra +$\mathscr{D}$ von Funktionen ist eine lineare Abbildung +\[ +\frac{d}{dz} +\colon \mathscr{D} \to \mathscr{D} +: +f \mapsto \frac{df}{dz} = f', +\] +die zusätzlich die Produktregel +\begin{equation} +\frac{d}{dz} (fg) += +\frac{df}{dz} \cdot g + f \cdot \frac{dg}{dz} +\qquad\Leftrightarrow\qquad +(fg)' = f' g + fg' +\label{buch:integrale:eqn:produktregel} +\end{equation} +\index{Produktregel}% +erfüllt. +Die Funktion $f'\in \mathscr{D}$ heisst auch die {\em Ableitung} +von $f\in\mathscr{D}$. +\index{Derivation}% +\index{Ableitungsoperator}% +\index{Ableitung}% +\end{definition} + +Die Produktregel hat zum Beispiel auch die bekannten Quotientenregel +zur Folge. +Dazu betrachten wir das Produkt $f= (f/g)\cdot g$ und leiten es mit +Hilfe der Produktregel ab: +\[ +\frac{d}{dz}f += +\frac{d}{dz} +\biggl( +\frac{f}{g}\cdot g +\biggr) += +{\color{darkred} +\frac{d}{dz} +\biggl( +\frac{f}{g} +\biggr)} +\cdot g ++ +\frac{f}{g}\cdot \frac{d}{dz}g. +\] +Jetzt lösen wir nach der {\color{darkred}roten} Ableitung des Quotienten +auf und erhalten +\begin{equation} +\biggl(\frac{f}{g}\biggr)' += +\frac{d}{dz}\biggl(\frac{f}{g}\biggr) += +\frac1g\biggl( +\frac{d}{dz}f - \frac{f}{g}\cdot \frac{d}{dz}g +\biggr) += +\frac{1}{g} +\biggl( +f'-\frac{fg'}{g} +\biggr) += +\frac{f'g-fg'}{g^2}. +\label{buch:integrale:eqn:quotientenregel} +\end{equation} +Dies ist die Quotientenregel. + +Aus der Produktregel folgt natürlich sofort auch die Potenzregel +für die Ableitung der $n$ten Potenz einer Funktion $f\in\mathscr{D}$, +sie lautet: +\begin{equation} +\frac{d}{dz} f^n += +\underbrace{ +f'f^{n-1} + ff'f^{n-2} + f^2f'f^{n-3}+\dots f^{n-1}f' +}_{\displaystyle \text{$n$ Terme}} += +nf^{n-1}f'. +\label{buch:integrale:eqn:potenzregel} +\end{equation} +In dieser Form versteckt sich natürlich auch die Kettenregel, die +Potenzfunktion ist die äussere Funktion, $f$ die innere, $f'$ ist also +die Ableitung er inneren Funktion, wie in der Kettenregel verlangt. +Falls $f$ ein Element von $\mathscr{D}$ ist mit der Eigenschaft +$df/dz=1$, dann entsteht die übliche Produktregel. + +\begin{definition} +Eine Algebra $\mathscr{D}$ von Funktionen mit einem Ableitungsoperator +$d/dz$ heisst eine {\em differentielle Algebra}. +\index{differentielle Algebra}% +\index{Algebra, differentielle}% +In einer differentiellen Algebra gelten die üblichen +Ableitungsregeln. +\end{definition} + +Die Potenzregel war in der Form~\eqref{buch:integrale:eqn:potenzregel} +geschrieben worden, nicht als die Ableitung von $z$. +Der Grund dafür ist, dass wir gar nicht voraussetzen wollen, dass in +unserer differentiellen Algebra eine Funktion existiert, die die +Rolle von $z$ hat. +Dies ist gar nicht nötig, wie das folgende Beispiel zeigt. + +\begin{beispiel} +Als Funktionenmenge $\mathscr{D}$ nehmen wir rationale Funktionen +in zwei Variablen, die wir $\cos x $ und $\sin x$ nennen. +Diese Menge bezeichnen wir mit +$\mathscr{D}=\mathbb{Q}(\cos x,\sin x)$ +Der Ableitungsoperator ist +\begin{align*} +\frac{d}{dx} \cos x &= -\sin x +\\ +\frac{d}{dx} \sin x &= \phantom{-}\cos x. +\end{align*} +Die Funktionen von $\mathbb{Q}(\cos x,\sin x)$ sind also Brüche, +deren Zähler und Nenner Polynome in $\cos x$ und $\sin x$ sind. +Aus den Produkt- und Quotientenregeln und den Ableitungsregeln für +$\cos x$ und $\sin x$ folgt, dass die Ableitung einer Funktion in +$\mathscr{D}$ wieder in $\mathscr{D}$ ist, $\mathscr{D}$ ist eine +differentielle Algebra. +\end{beispiel} + +Die konstanten Funktionen spielen eine besondere Rolle. +Da wir bei der Ableitung nicht von der Vorstellung einer +Funktion mit einem variablen Argument ausgehen wollten und +die Ableitung nicht als Grenzwert definieren wollten, müssen +wir auch bei der Definition der ``Konstanten'' einen neuen +Weg gehen. +In der Analysis sind die Konstanten genau die Funktionen, +deren Ableitung $0$ ist. + +\begin{definition} +\label{buch:integrale:def:konstante} +Ein Element $f\in \mathscr{D}$ mit $df/dz=f'=0$ heissen +{\em Konstante} in $\mathscr{D}$. +\index{Konstante}% +\end{definition} + +Die in der Potenzregel~\eqref{buch:integrale:eqn:potenzregel} +vermisste Funktion $z$ kann man ähnlich zu den Konstanten +zu definieren versuchen. +$z$ müsste ein Element von $\mathscr{D}$ mit $z' = 1$ sein. +Allerdings gibt es viele solche Elemente, ist $c$ eine Konstanten +und $z'=1$, dann ist auch $(z+c)'=1$, $(z+c)$ hat also für +die Zwecke unserer Untersuchung die gleichen Eigenschaften wie +$z$. +Dies deckt sich natürlich auch mit der Erwartung, dass Stammfunktionen +nur bis auf eine Konstante bestimmt sind. +Eine differentielle Algebra muss allerdings kein Element $z$ mit der +Eigenschaft $z'=1$ enthalten. + +\begin{beispiel} +In $\mathscr{D}=\mathbb{Q}(\cos x,\sin x)$ gibt es kein Element $x$. +Ein solches wäre von der Form +\[ +x = \frac{p(\cos x,\sin x)}{q(\cos x,\sin x)}. +\] +Eine solche goniometrische Beziehung würde für $x=\frac{\pi}4$ bedeuten, +dass +\[ +\frac{\pi}4 += +\frac{p(\sqrt{2}/2,\sqrt{2}/2)}{q(\sqrt{2}/2,\sqrt{2}/2)}. +\] +Auf der rechten Seite steht ein Quotient von Polynome, in dessen +Argument nur rationale Zahlen und $\sqrt{2}$ steht. +So ein Ausdruck kann immer in die Form +\[ +\pi += +4\frac{a\sqrt{2}+b}{c\sqrt{2}+d} += +\frac{4(a\sqrt{2}+b)(c\sqrt{2}-d)}{2c^2+d^2} += +r\sqrt{2}+s +\] +gebracht werden. +Die Zahl auf der rechten Seite ist zwar irrational, aber sie ist Nullstelle +des quadratischen Polynoms +\[ +p(x) += +(x-r\sqrt{2}-s)(x+r\sqrt{2}-s) += +x^2 +-2sx +-2r^2+s^2 +\] +mit rationalen Koeffizienten, wie man mit der Lösungsformel für die +quadratische Gleichung nachprüfen kann. +Es ist bekannt, dass $\pi$ als transzendente Zahl nicht Nullstelle +eines Polynoms mit rationalen Koeffizienten ist. +Dieser Widerspruch zeigt, dass $x$ nicht in $\mathbb{Q}(\cos x, \sin x)$ +vorkommen kann. +\end{beispiel} + +In einer differentiellen Algebra kann jetzt die Frage nach der +Existenz einer Stammfunktion gestellt werden. + +\begin{aufgabe} +\label{buch:integrale:aufgabe:existenz-stammfunktion} +Gegeben eine differentielle Algebra $\mathscr{D}$ und ein Element +$f\in\mathscr{D}$, entscheide, ob es ein Element $F\in\mathscr{D}$ +gibt mit der Eigenschaft $F'=f$. +Ein solches $F\in\mathscr{D}$ heisst {\em Stammfunktion} von $f$. +\end{aufgabe} + +\begin{satz} +In einer differentiellen Algebra $\mathscr{D}$ mit $z\in\mathscr{D}$ +hat die Potenzfunktion $f=z^n$ für $n\in\mathbb{N}\setminus\{-1\}$ +ein Stammfunktion, nämlich +\[ +F = \frac{1}{n+1} z^{n+1}. +\] +\label{buch:integrale:satz:potenzstammfunktion} +\end{satz} + +\begin{proof}[Beweis] +Tatsächlich kann man dies sofort nachrechnen, muss allerdings die +Fälle $n+1 >0$ und $n+1<0$ unterscheiden, da die Potenzregel +\eqref{buch:integrale:eqn:potenzregel} nur für natürliche Exponenten +gilt. +Man erhält +\begin{align*} +n+1&>0\colon +& +\frac{d}{dz}\frac{1}{n+1}z^{n+1} +&= +\frac{1}{n+1}(n+1)z^{n+1-1} += +z^n, +\\ +n+1&<0\colon +& +\frac{d}{dz}\frac{1}{n+1}\frac{1}{z^{-(n+1)}} +&= +\frac{1}{n+1}\frac{1'z^{-(n+1)}-1(-(n+1))z^{-n-1-1}}{z^{-2n-2}} +\\ +&& +&= +\frac{1}{n+1} +\frac{(n+1)z^n{-n-2}}{z^{-2n-2}} +\\ +&& +&= +\frac{1}{z^{-n}}=z^n. +\end{align*} +Man beachte, dass in dieser Rechnung nichts anderes als die +algebraischen Eigenschaften der Produkt- und Quotientenregel +verwendet wurden. +\end{proof} + +\subsubsection{Wurzeln} +Die Wurzelfunktionen sollen natürlich als elementare Funktionen +erlaubt sein. +Es ist bekannt, dass $\sqrt{z}\not\in \mathscr{D}=\mathbb{C}(z)$ +ist, ein solches Element müsste also erst noch hinzugefügt werden. +Dabei muss auch seine Ableitung definiert werden. +Auch dabei dürfen wir nicht auf eine Grenzwertüberlegung zurückgreifen, +vielmehr müssen wir die Ableitung auf vollständig algebraische +Weise bestimmen. + +Wir schreiben $f=\sqrt{z}$ und leiten die Gleichung $f^2=z$ nach $z$ ab. +Dabei ergibt sich nach der Potenzregel +\[ +\frac{d}{dz}f^2 = 2f'f = \frac{d}{dz}z=1 +\qquad\Rightarrow\qquad f' = \frac{1}{2f}. +\] +Diese Rechnung lässt sich auch auf $n$-Wurzeln $g=\root{n}\of{z}$ mit +der Gleichung $g^n = z$ verallgemeinern. +Die Ableitung der $n$-ten Wurzel ist +\begin{equation} +\frac{d}{dz}g^n += +ng^{n-1} = \frac{d}{dz}z=1 +\qquad\Rightarrow\qquad +\frac{d}{dz}g = \frac{1}{ng^{n-1}}. +\end{equation} +Es ist also möglich, eine differentielle Algebra $\mathscr{D}$ mit einer +$n$-ten Wurzel $g$ zu einer grösseren differentiellen Algebra $\mathscr{D}(g)$ +zu erweitern, in der wieder alle Regeln für das Rechnen mit Ableitungen +erfüllt sind. + +\subsubsection{Algebraische Elemente} +Die Charakterisierung der Wurzelfunktionen passt zwar zum verlangten +algebraischen Vorgehen, ist aber zu spezielle und nicht gut für die +nachfolgenden Untersuchengen geeignet. +Etwas allgemeiner ist der Begriff der algebraischen Elemente. + +\begin{definition} +\label{buch:integrale:def:algebraisches-element} +Seien $K\subset L$ zwei Körper. +Ein Element $\alpha \in L$ heisst {\em algebraisch} über $K$, +wenn $\alpha$ Nullstelle eines Polynoms $p\in K[X]$ mit Koeffizienten +in $K$ ist. +\index{algebraisch}% +\end{definition} + +Jedes Element $\alpha\in K$ ist algebraisch, da $\alpha$ Nullstelle +von $X-\alpha\in K[X]$ ist. +Die $n$tem Wurzeln eines Elemente $\alpha\in K$ sind ebenfalls algebraisch, +da sie Nullstellen des Polynoms $p(X) = X^n - \alpha$ sind. +Allerdings ist nicht klar, dass diese Wurzeln überhaupt existieren. +Nach dem Satz von Abel~\ref{buch:potenzen:satz:abel} gibt es aber +Nullstellen von Polynomen, die sich nicht als Wurzelausdrücke schreiben +lassen. +Der Begriff der algebraischen Elemente ist also allgemeiner als der +Begriff der Wurzel. + +\begin{definition} +\label{buch:integrale:def:algebraisch-abgeschlossen} +Ein Körper $K$ heisst {\em algebraisch abgeschlossen}, wenn jedes Polynom mit +Koeffizienten in $K$ eine Nullstelle in $K$ hat. +\end{definition} + +Der Körper $\mathbb{C}$ ist nach dem +Fundamentalsatz~\label{buch:potenzen:satz:fundamentalsatz} +der Algebra algebraisch abgeschlossen. +Da wir aber mit Funktionen arbeiten, müssen wir auch Wurzeln +von Funktionen finden können. +Dies ist nicht selbstverständlich, wie das folgende Beispiel zeigt. + +\begin{beispiel} +Es gibt keine stetige Funktion $f\colon \mathbb{C}\to\mathbb{C}$, die +die Gleichung $f(z)^2 = z$ und $f(1)=1$ erfüllt. +Für die Argumente $z(t)= e^{it}$ folgt, dass $f(z(t)) = e^{it/2}$ sein +muss. +Setzt man aber $t=\pm \pi$ ein, ergeben sich die Werte +$f(z(\pm\pi))=e^{\pm i\pi/2}=\pm 1$, die beiden Grenzwerte +für $t\to\pm\pi$ sind also verschieden. +\end{beispiel} + +Die Mathematik hat verschiedene ``Tricks'' entwickelt, wie mit diesem +Problem umgegangen werden kann: Funktionskeime, Garben, Riemannsche +Flächen. +Sie sind alle gleichermassen gut geeignet, das Problem zu lösen. +Für die vorliegende Aufgabe genügt es aber, dass es tatsächlich +immer ein wie auch immer geartetes Element gibt, welches Nullstelle +des Polynoms ist. + +Ist $f$ eine Nullstelle des Polynoms $p(X)$ mit Koeffizienten in +$\mathscr{D}$, dann kann man die Ableitung wie folgt berechnen. +Zunächst leitet man $p(f)$ ab: +\begin{align} +0&= +\frac{d}{dz}(a_nf^n + a_{n-1}f^{n-1}+\ldots+a_1f+a_0) +\notag +\\ +&= +a_n'f^n + a_{n-1}'f^{n-1}+\ldots+a_1'f+a_0' ++ +na_nf^{n-1}f' ++ +(n-1)a_nf^{n-2}f' ++ +\ldots ++ +a_2ff' ++ +a_1f' +\notag +\\ +&= +a_n'f^n + a_{n-1}'f^{n-1}+\ldots+a_1'f+a_0' ++ +( +na_nf^{n-1} ++ +(n-1)a_nf^{n-2} ++ +\ldots ++ +a_2f ++ +a_1 +)f' +\notag +\\ +\Rightarrow +\qquad +f'&=\frac{ +a_n'f^n + a_{n-1}'f^{n-1}+\dots+a_1'f+a_0' +}{ +na_nf^{n-1} ++ +(n-1)a_nf^{n-2} ++ +\dots ++ +a_1 +}. +\label{buch:integrale:eqn:algabl} +\end{align} +Das einzige, was dabei schief gehen könnte ist, dass der Nenner ebenfalls +verschwindet. +Dieses Problem kann man dadurch lösen, dass man als Polynom das +sogenannte Minimalpolynom verwendet. + +\begin{definition} +Das {\em Minimalpolynome} $m(X)$ eines algebraischen Elementes $\alpha$ ist +das Polynom kleinsten Grades, welches $m(\alpha)=0$ erfüllt. +\end{definition} + +Da das Minimalpolynom den kleinstmöglichen Grad hat, kann der Nenner +von~\eqref{buch:integrale:eqn:algabl}, +der noch kleineren Grad hat, unmöglich verschwinden. +Das Minimalpolynom ist auch im wesentlichen eindeutig. +Gäbe es nämlich zwei verschiedene Minimalpolynome $m_1$ und $m_2$, +dann müsste $\alpha$ auch eine Nullstelle des grössten gemeinsamen +Teilers $m_3=\operatorname{ggT}(m_1,m_2)$ sein. +Wären die beiden Polynome wesentlich verschieden, dann hätte $m_3$ +kleineren Grad, im Widerspruch zur Definition des Minimalpolynoms. +Also unterscheiden sich die beiden Polynome $m_1$ und $m_2$ nur um +einen skalaren Faktor. + +\subsubsection{Konjugation, Spur und Norm} +% Konjugation, Spur und Norm +Das Minimalpolynom eines algebraischen Elementes ist nicht +eindeutig bestimmt. +Zum Beispiel ist $\sqrt{2}$ algebraisch über $\mathbb{Q}$, das +Minimalpolynom ist $m(X)=X^2-2\in\mathbb{Q}[X]$. +Es hat aber noch eine zweite Nullstelle $-\sqrt{2}$. +Mit rein algebraischen Mitteln sind die beiden Nullstellen $\pm\sqrt{2}$ +nicht zu unterscheiden, erst die Verwendung der Vergleichsrelation +ermöglicht, sie zu unterscheiden. + +Dasselbe gilt für die imaginäre Einheit $i$, die das Minimalpolynom +$m(X)=X^2+1\in\mathbb{R}[X]$ hat. +Hier gibt es nicht einmal mehr eine Vergleichsrelation, mit der man +die beiden Nullstellen unterscheiden könnte. +In der Tat ändert sich aus algebraischer Sicht nichts, wenn man in +allen Formeln $i$ durch $-i$ ersetzt. + +Etwas komplizierter wird es bei $\root{3}\of{2}$. +Das Polynom $m=x^3-2\in\mathbb{Q}[X]$ hat $\root{3}\of{2}$ als +Nullstelle und dies ist auch tatsächlich das Minimalpolynom. +Das Polynom hat noch zwei weitere Nullstellen +\[ +\alpha_+ = \frac{-1+i\sqrt{3}}{2}\root{3}\of{2} +\qquad\text{und}\qquad +\alpha_- = \frac{-1-i\sqrt{3}}{2}\root{3}\of{2}. +\] +Die beiden Lösungen gehen durch die Vertauschung von $i$ und $-i$ +auseinander hervor. +Betrachtet man dasselbe Polynom aber als Polynom in $\mathbb{R}[X]$, +dann ist es nicht mehr das Minimalpolynom von $\root{3}\of{2}$, da +$X-\root{3}\of{2}\in\mathbb{R}[X]$ kleineren Grad und $\root{3}\of{2}$ +als Nullstelle hat. +Indem man +\[ +m(X)/(X-\root{3}\of{2})=X^2+\root{3}\of{2}X+\root{3}\of{2}^2=m_2(X) +\] +rechnet, bekommt man das Minimalpolynom der beiden Nullstellen $\alpha_+$ +und $\alpha_-$. +Wir lernen aus diesen Beispielen, dass das Minimalpolynom vom Grundkörper +abhängig ist (Die Faktorisierung $(X-\root{3}\of{2})\cdot m_2(X)$ von +$m(X)$ ist in $\mathbb{Q}[X]$ nicht möglich) und dass wir keine +algebraische Möglichkeit haben, die verschiedenen Nullstellen des +Minimalpolynoms zu unterscheiden. + +Die beiden Nullstellen $\alpha_+$ und $\alpha_-$ des Polynoms $m_2(X)$ +erlauben, $m_2(X)=(X-\alpha_+)(X-\alpha_-)$ zu faktorisieren. +Durch Ausmultiplizieren +\[ +(X-\alpha_+)(X-\alpha_-) += +X^2 -(\alpha_++\alpha_-)X+\alpha_+\alpha_- +\] +und Koeffizientenvergleich mit $m_2(X)$ findet man die symmetrischen +Formeln +\[ +\alpha_+ + \alpha_- = \root{3}\of{2} +\qquad\text{und}\qquad +\alpha_+ \alpha_ = \root{3}\of{2}. +\] +Diese Ausdrücke sind nicht mehr abhängig von einer speziellen Wahl +der Nullstellen. + +Das Problem verschärft sich nocheinmal, wenn wir Funktionen betrachten. +Das Polynom $m(X)=X^3-z$ ist das Minimalpolynom der Funktion $\root{3}\of{z}$. +Die komplexe Zahl $z=re^{i\varphi}$ hat aber drei die algebraisch nicht +unterscheidbaren Nullstellen +\[ +\alpha_0(z)=\root{3}\of{r}e^{i\varphi/3}, +\quad +\alpha_1(z)=\root{3}\of{r}e^{i\varphi/3+2\pi/3} +\qquad\text{und}\qquad +\alpha_2(z)=\root{3}\of{r}e^{i\varphi/3+4\pi/3}. +\] +Aus der Faktorisierung $ (X-\alpha_0(z)) (X-\alpha_1(z)) (X-\alpha_2(z))$ +und dem Koeffizientenvergleich mit dem Minimalpolynom kann man wieder +schliessen, dass die Relationen +\[ +\alpha_0(z) + \alpha_1(z) + \alpha_2(z)=0 +\qquad\text{und}\qquad +\alpha_0(z) \alpha_1(z) \alpha_2(z) = z +\] +gelten. + +Wir können also oft keine Aussagen über individuelle Nullstellen +eines Minimalpolynoms machen, sondern nur über deren Summe oder +Produkt. + +\begin{definition} +\index{buch:integrale:def:spur-und-norm} +Sie $m(X)\in K[X]$ das Minimalpolynom eines über $K$ algebraischen +Elements und +\[ +m(X) = a_nX^n + a_{n-1}X^{n-1} + \ldots + a_1X + a_0. +\] +Dann heissen +\[ +\operatorname{Tr}(\alpha) = -a_{n-1} +\qquad\text{und}\qquad +\operatorname{Norm}(\alpha) = (-1)^n a_0 +\] +die {\em Spur} und die {\em Norm} des Elementes $\alpha$. +\index{Spur eines algebraischen Elementes}% +\index{Norm eines algebraischen Elementes}% +\end{definition} + +Die Spur und die Norm können als Spur und Determinante einer Matrix +verstanden werden, diese allgemeineren Definitionen, die man in der +Fachliteratur, z.~B.~in~\cite{buch:lang} nachlesen kann, führen aber +für unsere Zwecke zu weit. + +\begin{hilfssatz} +Die Ableitungen von Spur und Norm sind +\[ +\operatorname{Tr}(\alpha)' += +\operatorname{Tr}(\alpha') +\qquad\text{und}\qquad +\operatorname{Norm}(\alpha)' += +\operatorname{Tr}(\alpha)' +\] +XXX Wirklich? +\end{hilfssatz} + +\subsubsection{Logarithmen und Exponentialfunktionen} +Die Funktion $z^{-1}$ musste im +Satz~\ref{buch:integrale:satz:potenzstammfunktion} +ausgeschlossen werden, sie hat keine Stammfunktion in $\mathbb{C}(z)$. +Aus der Analysis ist bekannt, dass die Logarithmusfunktion $\log z$ +eine Stammfunktion ist. +Der Logarithmus von $z$ aber auch der Logarithmus $\log f(z)$ +einer beliebigen Funktion $f(z)$ oder die Exponentialfunktion $e^{f(z)}$ +sollen ebenfalls elementare Funktionen sein. +Da wir aber auch hier nicht auf die analytischen Eigenschaften zurückgreifen +wollen, brauchen wir ein rein algebraische Definition. + +\begin{definition} +\label{buch:integrale:def:logexp} +Sei $\mathscr{D}$ ein differentielle Algebra und $f\in\mathscr{D}$. +Ein Element $\vartheta\in\mathscr{D}$ heisst ein {\em Logarithmus} +von $f$, geschrieben $\vartheta = \log f$, wenn $f\vartheta' = f'$ gilt. +$\vartheta$ heisst eine Exponentialfunktion von $f$ wenn +$\vartheta'=\vartheta f'$ gilt. +\end{definition} + +Die Formel für die Exponentialfunktion ist etwas vertrauter, sie ist +die bekannte Kettenregel +\begin{equation} +\vartheta' += +\frac{d}{dz} e^f += +e^f \cdot \frac{d}{dz} f += +\vartheta \cdot f'. +\label{buch:integrale:eqn:exponentialableitung} +\end{equation} +Da wir uns vorstellen, dass Logarithmen Umkehrfunktionen von +Exponentialfunktionen sein sollen, +muss die definierende Gleichung genau wie +\eqref{buch:integrale:eqn:exponentialableitung} +aussehen, allerdings mit vertauschten Plätzen von $f$ und $\vartheta$, +also +\begin{equation} +\vartheta' = \vartheta\cdot f' +\qquad +\rightarrow +\qquad +f' = f\cdot \vartheta' +\;\Leftrightarrow\; +\vartheta' = (\log f)' = \frac{f'}{f}. +\label{buch:integrale:eqn:logarithmischeableitung} +\end{equation} +Dies ist die aus der Analysis bekannte Formel für die logarithmische +Ableitung. + +Der Logarithmus von $f$ und die Exponentialfunktion von $f$ sollen +also ebenfalls als elementare Funktionen betrachtet werden. + +\subsubsection{Die trigonometrischen Funktionen} +Die bekannten trigonometrischen Funktionen und ihre Umkehrfunktionen +sollten natürlich auch elementare Funktionen sein. +Dabei kommt uns zur Hilfe, dass sie sich mit Hilfe der Exponentialfunktion +als +\[ +\cos f = \frac{e^{if}+e^{-if}}2 +\qquad\text{und}\qquad +\sin f = \frac{e^{if}-e^{-if}}{2i} +\] +schreiben lassen. +Eine differentielle Algebra, die die Exponentialfunktionen von $if$ und +$-if$ enthält, enthält also automatisch auch die trigonometrischen +Funktionen. +Im Folgenden ist es daher nicht mehr nötig, die trigonometrischen +Funktionen speziell zu untersuchen. + +\subsubsection{Elementare Funktionen} +Damit sind wir nun in der Lage, den Begriff der elementaren Funktion +genau zu fassen. + +\begin{definition} +\label{buch:integrale:def:einfache-elementare-funktion} +Sie $\mathscr{D}$ eine differentielle Algebra über $\mathbb{C}$ und +$\mathscr{D}(\vartheta)$ eine Erweiterung von $\mathscr{D}$ um eine +neue Funktion $\vartheta$, dann heissen $\vartheta$ und die Elemente +von $\mathscr{D}(\vartheta)$ einfach elementar, wenn eine der folgenden +Bedingungen erfüllt ist: +\begin{enumerate} +\item $\vartheta$ ist algebraisch über $\mathscr{D}$, d.~h.~$\vartheta$ +ist eine ``Wurzel''. +\item $\vartheta$ ist ein Logarithmus einer Funktion in $\mathscr{D}$, +d.~h.~es gibt $f\in \mathscr{D}$ mit $f'=f\vartheta'$ +(Definition~\ref{buch:integrale:def:logexp}). +\item $\vartheta$ ist eine Exponentialfunktion einer Funktion in $\mathscr{D}$, +d.~h.~es bit $f\in\mathscr{D}$ mit $\vartheta'=\vartheta f'$ +(Definition~\ref{buch:integrale:def:logexp}). +\end{enumerate} +\end{definition} + +Einfache elementare Funktionen entstehen also ausgehend von einer +differentiellen Algebra, indem man genau einmal eine Wurzel, einen +Logarithmus oder eine Exponentialfunktion hinzufügt. +So etwas wie die zusammengesetzte Funktion $e^{\sqrt{z}}$ ist +damit noch nicht möglich. +Daher erlauben wir, dass man die gesuchten Funktionen in mehreren +Schritten aufbauen kann. + +\begin{definition} +Sei $\mathscr{F}$ eine differentielle Algebra, die die differentielle +Algebra $\mathscr{D}$ enthält, also $\mathscr{D}\subset\mathscr{F}$. +$\mathscr{F}$ und die Elemente von $\mathscr{F}$ heissen einfach, +wenn es endlich viele Elemente $\vartheta_1,\dots,\vartheta_n$ gibt +derart, dass +\[ +\renewcommand{\arraycolsep}{2pt} +\begin{array}{ccccccccccccc} +\mathscr{D} +&\subset& +\mathscr{D}(\vartheta_1) +&\subset& +\mathscr{D}(\vartheta_1,\vartheta_2) +&\subset& +\; +\cdots +\; +&\subset& +\mathscr{D}(\vartheta_1,\vartheta_2,\dots,\vartheta_{n-1}) +&\subset& +\mathscr{D}(\vartheta_1,\vartheta_2,\dots,\vartheta_{n-1},\vartheta_n) +&=& +\mathscr{F} +\\ +\| +&& +\| +&& +\| +&& +&& +\| +&& +\| +&& +\\ +\mathscr{F}_0 +&\subset& +\mathscr{F}_1 +&\subset& +\mathscr{F}_2 +&\subset& +\cdots +&\subset& +\mathscr{F}_{n-1} +&\subset& +\mathscr{F}_{n\mathstrut} +&& +\end{array} +\] +gilt so, dass jedes $\vartheta_{i+1}$ einfach ist über +$\mathscr{F}_i=\mathscr{D}(\vartheta_1,\dots,\vartheta_i)$. +\end{definition} + +In Worten bedeutet dies, dass man den Funktionen von $\mathscr{D}$ +nacheinander Wurzeln, Logarithmen oder Exponentialfunktionen einzelner +Funktionen hinzufügt. +Die Aufgabe~\ref{buch:integrale:aufgabe:existenz-stammfunktion} kann +jetzt so formuliert werden. + +\begin{aufgabe} +\label{buch:integrale:aufgabe:existenz-stammfunktion-dalg} +Gegeben ist eine Differentielle Algebra $\mathscr{D}$ und eine +Funktion $f\in \mathscr{D}$. +Gibt es eine Folge $\vartheta_1,\dots,\vartheta_n$ und eine Funktion +$F\in\mathscr{D}(\vartheta_1,\dots,\vartheta_n)$ derart, dass +$F'=f$. +\end{aufgabe} + +Das folgende Beispiel zeigt, wie man möglicherweise mehrere +Erweiterungsschritte vornehmen muss, um zu einer Stammfunktion +zu kommen. +Es illustriert auch die zentrale Rolle, die der Partialbruchzerlegung +in der weiteren Entwicklung zukommen wird. + +\begin{beispiel} +\label{buch:integrale:beispiel:nichteinfacheelementarefunktion} +Es soll eine Stammfunktion der Funktion +\[ +f(z) += +\frac{z}{(az+b)(cz+d)} +\in +\mathbb{C}(z) +\] +gefunden werden. +In der Analysis lernt man, dass solche Integrale mit der +Partialbruchzerlegung +\[ +\frac{z}{(az+b)(cz+d)} += +\frac{A_1}{az+b}+\frac{A_2}{cz+d} += +\frac{A_1cz+A_1d+A_2az+A_2b}{(az+b)(cz+d)} +\quad\Rightarrow\quad +\left\{ +\renewcommand{\arraycolsep}{2pt} +\begin{array}{rcrcr} +cA_1&+&aA_2&=&1\\ +dA_1&+&bA_2&=&0 +\end{array} +\right. +\] +bestimmt werden. +Die Lösung des Gleichungssystems ergibt +$A_1=b/(bc-ad)$ und $A_2=d/(ad-bc)$. +Die Stammfunktion kann dann aus +\begin{align*} +\int f(z)\,dz +&= +\int\frac{A_1}{az+b}\,dz ++ +\int\frac{A_2}{cz+d}\,dz += +\frac{A_1}{a}\int\frac{a}{az+b}\,dz ++ +\frac{A_2}{c}\int\frac{c}{cz+d}\,dz +\end{align*} +bestimmt werden. +In den Integralen auf der rechten Seite ist der Zähler jeweils die +Ableitung des Nenners, der Integrand hat also die Form $g'/g$. +Genau diese Form tritt in der Definition eines Logarithmus auf. +Die Stammfunktion ist jetzt +\[ +F(z) += +\int f(z)\,dz += +\frac{A_1}{a}\log(az+b) ++ +\frac{A_2}{c}\log(cz+d) += +\frac{b\log(az+b)}{a(bc-ad)} ++ +\frac{d\log(cz+d)}{c(ad-bc)}. +\] +Die beiden Logarithmen kann man nicht durch rein rationale Operationen +ineinander überführen. +Sie müssen daher beide der Algebra $\mathscr{D}$ hinzugefügt werden. +\[ +\left. +\begin{aligned} +\vartheta_1&=\log(az+b)\\ +\vartheta_2&=\log(cz+d) +\end{aligned} +\quad +\right\} +\qquad\Rightarrow\qquad +F(z) \in \mathscr{F}=\mathscr{D}(\vartheta_1,\vartheta_2). +\] +Die Stammfunktion $F(z)$ ist also keine einfache elementare Funktion, +aber $F$ ist immer noch eine elementare Funktion. +\end{beispiel} + +\subsection{Partialbruchzerlegung +\label{buch:integrale:section:partialbruchzerlegung}} +Die Konstruktionen des letzten Abschnitts haben gezeigt, +wie man die Funktionen, die man als Stammfunktionen einer Funktion +zulassen möchte, schrittweise konstruieren kann. +Die Aufgabe~\ref{buch:integrale:aufgabe:existenz-stammfunktion-dalg} +ist eine rein algebraische Formulierung der ursprünglichen +Aufgabe~\ref{buch:integrale:aufgabe:existenz-stammfunktion}. +Schliesslich hat das Beispiel auf +Seite~\pageref{buch:integrale:beispiel:nichteinfacheelementarefunktion} +gezeigt, dass es im allgemeinen mehrere Schritte braucht, um zu einer +elementaren Stammfunktion zu gelangen. +Die Lösung setzt sich aus den Termen der Partialbruchzerlegung. +In diesem Abschnitt soll diese genauer studiert werden. + +In diesem Abschnitt gehen wir immer von einer differentiellen +Algebra über den komplexen Zahlen aus und verlangen, dass die +Konstanten in allen betrachteten differentiellen Algebren +$\mathbb{C}$ sind. + +\subsubsection{Monome} +Die beiden Funktionen $\vartheta-1=\log(az+b)$ und $\vartheta_2=(cz+d)$, +die im Beispiel hinzugefügt werden mussten, verhalten sich ich algebraischer +Hinsicht wie ein Monom: man kann es nicht faktorisieren oder bereits +bekannte Summanden aufspalten. +Solchen Funktionen kommt eine besondere Bedeutung zu. + +\begin{definition} +\label{buch:integrale:def:monom} +Die Funktion $\vartheta$ heisst ein Monom, wenn $\vartheta$ nicht +algebraisch ist über $\mathscr{D}$ und $\mathscr{D}(\vartheta)$ die +gleichen Konstanten enthält wie $\mathscr{D}$. +\end{definition} + +\begin{beispiel} +Als Beispiel beginnen wir mit den komplexen Zahlen $\mathbb{C}$ +und fügen die Funktion $\vartheta_1=z$ hinzu und erhalten +$\mathscr{D}=\mathbb{C}(z)$. +Die Funktionen $z^k$ sind für alle $k$ linear unabhängig, d.~h.~es +gibt keinen Ausdruck +\[ +a_nz^n + a_{n-1}z^{n-1}+\cdots+a_1z+a_0=0. +\] +Dies ist gleichbedeutend damit, dass $z$ nicht algebraisch ist. +Das Monom $z$ ist also auch ein Monom im Sinne der +Definition~\ref{buch:integrale:def:monom}. +\end{beispiel} + +\begin{beispiel} +Wir beginnen wieder mit $\mathbb{C}$ und fügen die Funktion +$e^z$ hinzu. +Gäbe es eine Beziehung +\[ +b_m(e^z)^m + b_{m-1}(e^z)^{m-1}+\dots+b_1e^z + b_0=0 +\] +mit komplexen Koeffizienten $b_i\in\mathbb{C}$, +dann würde daraus durch Einsetzen von $z=1$ die Relation +\[ +b_me^m + b_{m-1}e^{m-1} + \dots + b_1e + b_0=0, +\] +die zeigen würde, dass $e$ eine algebraische Zahl ist. +Es ist aber bekannt, dass $e$ transzendent ist. +Dieser Widersprich zeigt, dass $e^z$ ein Monom ist. +\end{beispiel} + +\begin{beispiel} +Jetzt fügen wir die Exponentialfunktion $\vartheta_2=e^z$ +der differentiellen Algebra $\mathscr{D}=\mathbb{C}(z)$ hinzu +und erhalten $\mathscr{F}_1=\mathscr{D}(e^z) = \mathbb{C}(z,e^z)$. +Gäbe es das Minimalpolynom +\begin{equation} +b_m(z)(e^z)^m + b_{m-1}(z)(e^z)^{m-1}+\dots+b_1(z)e^z + b_0(z)=0 +\label{buch:integrale:beweis:exp-analytisch} +\end{equation} +mit Koeffizienten $b_i\in\mathbb{C}(z)$, dann könnte man mit dem +gemeinsamen Nenner der Koeffizienten durchmultiplizieren und erhielte +eine Relation~\eqref{buch:integrale:beweis:exp-analytisch} mit +Koeffizienten in $\mathbb{C}[z]$. +Dividiert man durch $e^{mz}$ erhält man +\[ +b_m(z) + b_{m-1}(z)\frac{1}{e^z} + \dots + b_1(z)\frac{1}{(e^z)^{m-1}} + b_0(z)\frac{1}{(e^z)^m}=0. +\] +Aus der Analysis weiss man, dass die Exponentialfunktion schneller +anwächst als jedes Polynom, alle Terme auf der rechten Seite +konvergieren daher gegen 0 für $z\to\infty$. +Das bedeutet, dass $b_m(z)\to0$ für $z\to \infty$. +Das Polynom~\eqref{buch:integrale:beweis:exp-analytisch} wäre also gar +nicht das Minimalpolynom. +Dieser Widerspruch zeigt, dass $e^z$ nicht algebraisch ist über +$\mathbb{C}(z)$ und damit ein Monom ist\footnote{Etwas unbefriedigend +an diesem Argument ist, dass man hier wieder rein analytische statt +algebraische Eigenschaften von $e^z$ verwendet. +Gäbe es aber eine minimale Relation wie +\eqref{buch:integrale:beweis:exp-analytisch} +mit Polynomkoeffizienten, dann wäre sie von der Form +\[ +P(z,e^z)=p(z)(e^z)^m + q(z,e^z)=0, +\] +wobei Grad von $e^z$ in $q$ höchstens $m-1$ ist. +Die Ableitung wäre dann +\[ +Q(z,e^z) += +mp(z)(e^z)^m + p'(z)(e^z)^m + r(z,e^z) += +(mp(z) + p'(z))(e^z)^m + r(z,e^z) +=0, +\] +wobei der Grad von $e^z$ in $r$ wieder höchstens $m-1$ ist. +Bildet man $mP(z,e^z) - Q(z,e^z) = 0$ ensteht eine Relation, +in der der Grad des Koeffizienten von $(e^z)^m$ um eins abgenommen hat. +Wiederholt man dies $m$ mal, verschwindet der Term $(e^z)^m$, die +Relation~\eqref{buch:integrale:beweis:exp-analytisch} +war also gar nicht minimal. +Dieser Widerspruch zeigt wieder, dass $e^z$ nicht algebraisch ist, +verwendet aber nur die algebraischen Eigenschaften der differentiellen +Algebra. +}. +\end{beispiel} + +\begin{beispiel} +Wir hätten auch in $\mathbb{Q}$ arbeiten können und $\mathbb{Q}$ +erst die Exponentialfunktion $e^z$ und dann den Logarithmus $z$ von $e^z$ +hinzufügen können. +Es gibt aber noch weitere Logarithmen von $e^z$ zum Beispiel $z+2\pi i$. +Offenbar ist $\psi=z+2\pi i\not\in \mathbb{Q}(z,e^z)$, wir könnten also +auch noch $\psi$ hinzufügen. +Zwar ist $\psi$ auch nicht algebraisch, aber wenn wir $\psi$ hinzufügen, +dann wird aber die Menge der Konstanten grösser, sie umfasst jetzt +$\mathbb{Q}(2\pi i)$. +Die Bedingung in der Definition~\ref{buch:integrale:def:monom}, +dass die Menge der Konstanten nicht grösser werden darf, ist also +verletzt. + +Hätte man mit $\mathbb{Q}(e^z, z+2\pi i)$ begonnen, wäre $z$ aus +dem gleichen Grund kein Monom, aber $z+2\pi i$ wäre eines im Sinne +der Definition~\ref{buch:integrale:def:monom}. +In allen Rechnungen könnte man $\psi=z+2\pi i$ nicht weiter aufteilen, +da $\pi$ oder seine Potenzen keine Elemente von $\mathbb{Q}(e^z)$ sind. +\end{beispiel} + +Da wir im Folgenden davon ausgehen, dass die Konstanten unserer +differentiellen Körper immer $\mathbb{C}$ sind, wird es jeweils +genügen zu untersuchen, ob eine neu hinzuzufügende Funktion algebraisch +ist oder nicht. + +\subsubsection{Ableitungen von Polynomen und rationalen Funktionen von Monomen} +Fügt man einer differentiellen Algebra ein Monom hinzu, dann lässt +sich etwas mehr über Ableitungen von Polynomen oder Brüchen in diesen +Monomen sagen. +Diese Eigenschaften werden später bei der Auflösung der Partialbruchzerlegung +nützlich sein. + +\begin{satz} +\label{buch:integrale:satz:polynom-ableitung-grad} +Sei +\[ +P += +A_nX^n + A_{n-1}X^{n-1} + \dots A_1X+A_0 +\in\mathscr{D}[X] +\] +ein Polynom mit Koeffizienten in einer differentiellen Algebra $\mathscr{D}$ +und $\vartheta$ ein Monom über $\mathscr{D}$. +Dann gilt +\begin{enumerate} +\item +\label{buch:integrale:satz:polynom-ableitung-grad-log} +Falls $\vartheta=\log f$ ist, ist $P(\vartheta)'$ ein +Polynom vom Grad $n$ in $\vartheta$, wenn der Leitkoeffizient $A_n$ +nicht konstant ist, andernfalls ein Polynom vom Grad $n-1$. +\item +\label{buch:integrale:satz:polynom-ableitung-grad-exp} +Falls $\vartheta = \exp f$ ist, dann ist $P(\vartheta)'$ ein Polynom +in $\vartheta$ vom Grad $n$. +\end{enumerate} +\end{satz} + +Der Satz macht also genaue Aussagen darüber, wie sich der Grad eines +Polynoms in $\vartheta$ beim Ableiten ändert. + +\begin{proof}[Beweis] +Für Exponentialfunktion ist $\vartheta'=\vartheta f'$, die Ableitung +fügt also einfach einen Faktor $f'$ hinzu. +Terme der Form $A_k\vartheta^k$ haben die Ableitung +\[ +(A_k\vartheta^k) += +A'_k\vartheta^k + A_kk\vartheta^{k-1}\vartheta' += +A'_k\vartheta^k + A_kk\vartheta^{k-1}\vartheta f' += +(A'_k + kA_k f)\vartheta^k. +\] +Damit wird die Ableitung des Polynoms +\begin{equation} +P(\vartheta)' += +\underbrace{(A'_n+nA_nf')\vartheta^n}_{\displaystyle=(A_n\vartheta^n)'} ++ +(A'_{n-1}+(n-1)A_{n-1}f')\vartheta^{n-1} ++ \dots + +(A'_1+A_1f')\vartheta + A_0'. +\label{buch:integrale:ableitung:polynom} +\end{equation} +Der Grad der Ableitung kann sich also nur ändern, wenn $A_n'+nA_nf'=0$ ist. +Dies bedeutet aber wegen +\( +(A_n\vartheta^n)' += +0 +\), dass $A_n\vartheta^n=c$ eine Konstante ist. +Da alle Konstanten bereits in $\mathscr{D}$ sind, folgt, dass +\[ +\vartheta^n=\frac{c}{A_n} +\qquad\Rightarrow\qquad +\vartheta^n - \frac{c}{A_n}=0, +\] +also wäre $\vartheta$ algebraisch über $\mathscr{D}$, also auch kein Monom. +Dieser Widerspruch zeigt, dass der Leitkoeffizient nicht verschwinden kann. + +Für die erste Aussage ist die Ableitung der einzelnen Terme des Polynoms +\[ +(A_k\vartheta^k)' += +A_k'\vartheta^k + A_kk\vartheta^{k-1}\vartheta' += +A_k'\vartheta^k + A_kk\vartheta^{k-1}\frac{f'}{f} += +\biggl(A_k'\vartheta + kA_k\frac{f'}{f}\biggr)\vartheta^{k-1}. +\] +Die Ableitung des Polynoms ist daher +\[ +P(\vartheta)' += +A_n'\vartheta^n + \biggl(nA_n\frac{f'}{f}+ A'_{n-1}\biggr)\vartheta^{n-1}+\dots +\] +Wenn $A_n$ keine Konstante ist, ist $A_n'\ne 0$ und der Grad von +$P(\vartheta)'$ ist $n$. +Wenn $A_n$ eine Konstante ist, müssen wir noch zeigen, dass der nächste +Koeffizient nicht verschwinden kann. +Wäre der zweite Koeffizient $=0$, dann wäre die Ableitung +\[ +(nA_n\vartheta+A_{n-1})' += +nA_n\vartheta'+A'_{n-1} += +nA_n\frac{f'}{f}+A'_{n-1} += +0, +\] +d.h. $nA_n\vartheta+A_{n-1}=c$ wäre eine Konstante. +Da alle Konstanten schon in $\mathscr{D}$ sind, müsste auch +\[ +\vartheta = \frac{c-A_{n-1}}{nA_n} \in \mathscr{D} +\] +sein, wieder wäre $\vartheta$ kein Monom. +\end{proof} + +Der nächste Satz gibt Auskunft über den führenden Term in +$(\log P(\vartheta))' = P(\vartheta)'/P(\vartheta)$. + +\begin{satz} +\label{buch:integrale:satz:log-polynom-ableitung-grad} +Sei $P$ ein Polynom vom Grad $n$ wie in +\label{buch:integrale:satz:log-polynom-ableitung} +welches zusätzlich normiert ist, also $A_n=1$. +\begin{enumerate} +\item +\label{buch:integrale:satz:log-polynom-ableitung-log} +Ist $\vartheta=\log f$, dann ist +$(\log P(\vartheta))' = P(\vartheta)'/P(\vartheta)$ und $P(\vartheta)'$ +hat Grad $n-1$. +\item +\label{buch:integrale:satz:log-polynom-ableitung-exp} +Ist $\vartheta=\exp f$, dann gibt es ein Polynom $N(\vartheta)$ so, dass +$(\log P(\vartheta))' += +P(\vartheta)'/P(\vartheta) += +N(\vartheta)/P(\vartheta)+nf'$ +ist. +Falls $P(\vartheta)=\vartheta$ ist $N=0$, andernfalls ist $N(\vartheta)$ +ein Polynom vom Grad $0$ das kleinste $k$ so, dass $p<(k+1)q$. +Insbesondere ist dann $kq\le p$. +Nach dem euklidischen Satz für die Division von $P(X)$ durch $Q(X)^k$ +gibt es ein Polynom $P_k(X)$ vom Grad $\le p-qk$ derart, dass +\[ +P(X) = P_k(X)Q(X)^k + R_k(X) +\] +mit einem Rest $R_k(X)$ vom Grad $1$ können mit der Potenzregel +integriert werden, aber für eine Stammfunktion $1/(z-1)$ muss +der Logarithmus $\log(z-1)$ hinzugefügt werden. +Die Stammfunktion +\[ +\int f(z)\,dz += +\int +\frac{1}{z-1} +\,dz ++ +\int +\frac{4}{(z-1)^2} +\,dz ++ +\int +\frac{4}{(z-1)^3} +\,dz += +\log(z-1) +- +\underbrace{\frac{4z-2}{(z-1)^2}}_{\displaystyle\in\mathscr{D}} +\in \mathscr{D}(\log(z-1)) = \mathscr{F} +\] +hat eine sehr spezielle Form. +Sie besteht aus einem Term in $\mathscr{D}$ und einem Logarithmus +einer Funktion von $\mathscr{D}$, also einem Monom über $\mathscr{D}$. + +\subsubsection{Einfach elementare Stammfunktionen} +Der in diesem Abschnitt zu beweisende Satz von Liouville zeigt, +dass die im einführenden Beispiel konstruierte Form der Stammfunktion +eine allgemeine Eigenschaft elementar integrierbarer +Funktionen ist. +Zunächst aber soll dieses Bespiel etwas verallgemeinert werden. + +\begin{satz}[Liouville-Vorstufe für Monome] +\label{buch:integrale:satz:liouville-vorstufe-1} +Sei $\vartheta$ ein Monom über $\mathscr{D}$ und $g\in\mathscr{D}(\vartheta)$ +mit $g'\in\mathscr{D}$. +Dann hat $g$ die Form $v_0 + c_1\vartheta$ mit $v_0\in\mathscr{D}$ und +$c_1\in\mathbb{C}$. +\end{satz} + +\begin{proof}[Beweis] +In Anlehnung an das einführende Beispiel nehmen wir an, dass die +Stammfunktion $g\in\mathscr{D}[\vartheta]$ für ein Monom $\vartheta$ +über $\mathscr{D}$ ist. +Dann hat $g$ die Partialbruchzerlegung +\[ +g += +H(\vartheta) ++ +\sum_{j\le r(i)} \frac{P_{ij}(\vartheta)}{Q_i(\vartheta)^j} +\] +mit irreduziblen normierten Polynomen $Q_i(\vartheta)$ und +Polynomen $P_{ij}(\vartheta)$ vom Grad kleiner als $\deg Q_i(\vartheta)$. +Ausserdem ist $H(\vartheta)$ ein Polynom. +Die Ableitung von $g$ muss jetzt aber wieder in $\mathscr{D}$ sein. +Zu ihrer Berechnung können die Sätze +\ref{buch:integrale:satz:polynom-ableitung-grad}, +\ref{buch:integrale:satz:log-polynom-ableitung-grad} +und +\ref{buch:integrale:satz:partialbruch-monom} +verwendet werden. +Diese besagen, dass in der Partialbruchzerlegung die Exponenten der +Nenner die Quotienten in der Summe nicht kleiner werden. +Die Ableitung $g'\in\mathscr{D}$ darf aber gar keine Nenner mit +$\vartheta$ enthalten, also dürfen die Quotienten gar nicht erst +vorkommen. +$g=H(\vartheta)$ muss also ein Polynom in $\vartheta$ sein. +Die Ableitung des Polynoms darf wegen $g'\in\mathscr{d}$ das Monom +$\vartheta$ ebenfalls nicht mehr enthalten, daher kann es höchstens vom +Grad $1$ sein. +Nach Satz~\ref{buch:integrale:satz:log-polynom-ableitung-grad} +muss ausserdem der Leitkoeffizient von $g$ eine Konstante sein, +das Polynom hat also genau die behauptete Form. +\end{proof} + +\begin{satz}[Liouville-Vorstufe für algebraische Elemente] +\label{buch:integrale:satz:liouville-vorstufe-2} +Sei $\vartheta$ algebraische über $\mathscr{D}$ und +$g\in\mathscr{D}(\vartheta)$ mit $g'\in\mathscr{D}$. +\end{satz} + +\subsubsection{Elementare Stammfunktionen} +Nach den Vorbereitungen über einfach elementare Stammfunktionen +in den Sätzen~\label{buch:integrale:satz:liouville-vorstufe-1} +und +\label{buch:integrale:satz:liouville-vorstufe-2} sind wir jetzt +in der Lage, den allgemeinen Satz von Liouville zu formulieren +und zu beweisen. + +\begin{satz}[Liouville] +Sei $\mathscr{D}$ ein Differentialkörper, $\mathscr{F}$ einfach über +$\mathscr{D}$ mit gleichem Konstantenkörper $\mathbb{C}$. +Wenn $g\in \mathscr{F}$ eine Stammfunktion von $f\in\mathscr{D}$ ist, +also $g'=f$, dann gibt es Zahlen $c_i\in\mathbb{C}$ und +$v_0,v_i\in\mathscr{D}$ derart, dass +\begin{equation} +g = v_0 + \sum_{i=1}^k c_i \log v_i +\qquad\Rightarrow\qquad +g' = v_0' + \sum_{i=1}^k c_i \frac{v_i'}{v_i} = f +\label{buch:integrale:satz:liouville-fform} +\end{equation} +gilt. +\end{satz} + +Der Satz hat zur Folge, dass eine elementare Stammfunktion für $f$ +nur dann existieren kann, wenn sich $f$ in der speziellen Form +\eqref{buch:integrale:satz:liouville-fform} +schreiben lässt. +Die Aufgabe~\ref{buch:integrale:aufgabe:existenz-stammfunktion-dalg} +lässt sich damit jetzt lösen. + + +\begin{proof}[Beweis] +Wenn die Stammfunktion $g\in\mathscr{D}$ ist, dann hat $g$ die Form +\eqref{buch:integrale:satz:liouville-fform} mit $v_0=g$, die Summe +wird nicht benötigt. + +Wir verwenden Induktion nach der Anzahl der Elemente, die zu $\mathscr{D}$ +hinzugefügt werden müssen, um einen Differentialkörper +$\mathscr{F}=\mathscr{D}(\vartheta_1,\dots,\vartheta_n)$ zu konstruieren, +der $g$ enthält. +Da $f\in\mathscr{D}\subset\mathscr{D}(\vartheta_1)$ ist, können wir die +Induktionsannahme auf die Erweiterung +\[ +\mathscr{D}(\vartheta_1)\subset\mathscr{D}(\vartheta_1,\vartheta_2) +\subset\cdots\subset \mathscr{D}(\vartheta_1,\cdots,\vartheta_n)=\mathscr{F} +\] +anwenden, die durch Hinzufügen von nur $n-1$ Elemente +$\vartheta_2,\dots,\vartheta_n$ aus $\mathscr{D}(\vartheta_1)$ den +Differentialkörper $\mathscr{F}$ erreicht, der $g$ enthält. +Sie besagt, dass sich $g$ schreiben lässt als +\[ +g = w_0 + \sum_{i=1}^{k_1} c_i\log w_i +\qquad\text{mit $c_i\in\mathbb{C}$ und $w_0,w_i\in\mathscr{D}(\vartheta_1)$.} +\] +Wir müssen jetzt zeigen, dass sich dieser Ausdruck umformen lässt +in den Ausdruck der Form~\eqref{buch:integrale:satz:liouville-fform}. + +Der Term $w_0\in\mathscr{D}(\vartheta_1)$ hat eine Partialbruchzerlegung +\[ +H(\vartheta_1) ++ +\sum_{j\le r(l)} \frac{P_{lj}(\vartheta_1)}{Q_l(\vartheta_1)^j} +\] +in der Variablen $\vartheta_1$. + +Da $w_i\in\mathscr{D}(\vartheta_1)$ ist, kann man Zähler und Nenner +von $w_i$ als Produkt irreduzibler normierter Polynome schreiben: +\[ +w_i += +\frac{h_i Z_{i1}(\vartheta_1)^{s_{i1}}\cdots Z_{im(i)}^{s_{im(i)}} +}{ +N_{i1}(\vartheta_1)^{t_{i1}}\cdots N_{in(i)}(\vartheta_1)^{t_{in(i)}} +} +\] +Der Logarithmus hat die Form +\begin{align*} +\log w_i +&= \log h_i + +s_{i1} +\log Z_{i1}(\vartheta_1) ++ +\cdots ++ +s_{im(i)} +\log Z_{im(i)} +- +t_{i1} +\log +N_{i1}(\vartheta_1) +- +\cdots +- +t_{in(i)} +\log +N_{in(i)}(\vartheta_1). +\end{align*} +$g$ kann also geschrieben werden als eine Summe von Polynomen, Brüchen, +wie sie in der Partialbruchzerlegung vorkommen, Logarithmen von irreduziblen +normierten Polynomen und Logarithmen von Elementen von $\mathscr{D}$. + +Die Ableitung $g'$ muss jetzt aber wieder in $\mathscr{D}$ sein, beim +Ableiten müssen also alle Terme verschwinden, die $\vartheta_1$ enthalten. +Dabei spielt es eine Rolle, ob $\vartheta_1$ ein Monom oder algebraisch ist. +\begin{enumerate} +\item +Wenn $\vartheta_1$ ein Monom ist, dann kann man wie im Beweis des +Satzes~\ref{buch:integrale:satz:liouville-vorstufe-1} argumentieren, +dass die Brüchterme gar nicht vorkommen und +$H(\vartheta_1)=v_0+c_1\vartheta_1$ sein muss. +Die Ableitung Termen der Form $\log Z(\vartheta_1)$ ist ein Bruchterm +mit dem irreduziblen Nenner $Z(\vartheta_1)$, die ebenfalls verschwinden +müssen. +Ist $\vartheta_1$ eine Exponentialfunktion, dann ist +$\vartheta_1' \in \mathscr{D}(\vartheta_1)\setminus\mathscr{D}$, also muss +$c_1=0$ sein. +Ist $\vartheta_1$ ein Logarithmus, also $\vartheta_1=\log v_1$, dann +kommen nur noch Terme der in +\eqref{buch:integrale:satz:liouville-fform} +erlaubten Form vor. + +\item +Wenn $\vartheta_1$ algebraisch vom Grad $m$ ist, dann ist +\[ +g' = w_0' + \sum_{i=1}^{k_1} d_i\frac{w_i'}{w_i} = f. +\] +Weder $w_0$ noch $\log w_i$ sind in $\mathscr{D}(\vartheta_1)$. +Aber wenn man $\vartheta_1$ durch die $m$ konjugierten Elemente +ersetzt und alle summiert, dann ist +\[ +mf += +\operatorname{Tr}(w_0) + \sum_{i=1}^{k_1} d_i \log\operatorname{Norm}(w_i). +\] +Da die Spur und die Norm in $\mathscr{D}$ sind, folgt, dass +\[ +f += +\underbrace{\frac{1}{m} +\operatorname{Tr}(w_0)}_{\displaystyle= v_0} ++ +\sum_{i=1}^{k_1} \underbrace{\frac{d_i}{m}}_{\displaystyle=c_i} +\log +\underbrace{ \operatorname{Norm}(w_i)}_{\displaystyle=v_i} += +v_0 + \sum_{i=1}^{k_1} c_i\log v_i +\] +die verlangte Form hat. +\qedhere +\end{enumerate} +\end{proof} + +\subsection{Die Fehlerfunktion ist keine elementare Funktion +\label{buch:integrale:section:fehlernichtelementar}} +% \url{https://youtu.be/bIdPQTVF5n4} +Mit Hilfe des Satzes von Liouville kann man jetzt beweisen, dass +die Fehlerfunktion keine elementare Funktion ist. +Dazu braucht man die folgende spezielle Form des Satzes. + +\begin{satz} +\label{buch:integrale:satz:elementarestammfunktion} +Wenn $f(x)$ und $g(x)$ rationale Funktionen von $x$ sind, dann +ist die Stammfunktion von $f(x)e^{g(x)}$ genau dann eine +elementare Funktion, wenn es eine rationale Funktion gibt, die +Lösung der Differentialgleichung +\[ +r'(x) + g'(x)r(x)=f(x) +\] +ist. +\end{satz} + +\begin{satz} +Die Funktion $x\mapsto e^{-x^2}$ hat keine elementare Stammfunktion. +\label{buch:iintegrale:satz:expx2} +\end{satz} + +\begin{proof}[Beweis] +Unter Anwendung des Satzes~\ref{buch:integrale:satz:elementarestammfunktion} +auf $f(x)=1$ und $g(x)=-x^2$ folgt, $e^{-x^2}$ genau dann eine rationale +Stammfunktion hat, wenn es eine rationale Funktion $r(x)$ gibt, die +Lösung der Differentialgleichung +\begin{equation} +r'(x) -2xr(x)=1 +\label{buch:integrale:expx2dgl} +\end{equation} +ist. + +Zunächst halten wir fest, dass $r(x)$ kein Polynom sein kann. +Wäre nämlich +\[ +r(x) += +a_0 + a_1x + \dots + a_nx^n += +\sum_{k=0}^n a_kx^k +\quad\Rightarrow\quad +r'(x) += +a_1 + 2a_2x + \dots + na_nx^{n-1} += +\sum_{k=1}^n +ka_kx^{k-1} +\] +ein Polynom, dann ergäbe sich beim Einsetzen in die Differentialgleichung +\begin{align*} +1 +&= +r'(x)-2xr(x) +\\ +&= +a_1 + 2a_2x + 3a_3x^2 + \dots + (n-1)a_{n-1}x^{n-2} + na_nx^{n-1} +\\ +&\qquad +- +2a_0x -2a_1x^2 -2a_2x^3 - \dots - 2a_{n-1}x^n - 2a_nx^{n+1} +\\ +& +\hspace{0.7pt} +\renewcommand{\arraycolsep}{1.8pt} +\begin{array}{crcrcrcrcrcrcrcr} +=&a_1&+&2a_2x&+&3a_3x^2&+&\dots&+&(n-1)a_{n-1}x^{n-2}&+&na_{n }x^{n-1}& & & & \\ + & &-&2a_0x&-&2a_1x^2&-&\dots&-& 2a_{n-3}x^{n-2}&-&2a_{n-2}x^{n-1}&-&2a_{n-1}x^n&-&2a_nx^{n+1} +\end{array} +\\ +&= +a_1 ++ +(2a_2-2a_0)x ++ +(3a_3-2a_1)x^2 +%+ +%(4a_4-2a_2)x^3 ++ +\dots ++ +(na_n-2a_{n-2})x^{n-1} +- +2a_{n-1}x^n +- +2a_nx^{n+1}. +\end{align*} +Koeffizientenvergleich zeigt, dass $a_1=1$ sein muss. +Aus den letzten zwei Termen liest man ebenfalls mittels Koeffizientenvergleich +ab, dass $a_n=0$ und $a_{n-1}=0$ sein müssen. +Aus den Koeffizienten $(ka_k-2a_{k-2})=0$ folgt, dass +$a_{k-2}=\frac{k}{2}a_k$ für alle $k>1$ sein muss, diese Koeffizienten +verschwinden also auch, inklusive $a_1=0$. +Dies ist allerdings im Widerspruch zu $a_1=1$. +Es folgt, dass $r(x)$ kein Polynom sein kann. + +Der Nenner der rationalen Funktion $r(x)$ hat also mindestens eine Nullstelle +$\alpha$, man kann daher $r(x)$ auch schreiben als +\[ +r(x) = \frac{s(x)}{(x-\alpha)^n}, +\] +wobei die rationale Funktion $s(x)$ keine Nullstellen und keine Pole hat. +Einsetzen in die Differentialgleichung ergibt: +\[ +1 += +r'(x) -2xr(x) += +\frac{s'(x)}{(x-\alpha)^n} +-n +\frac{s(x)}{(x-\alpha)^{n+1}} +- +\frac{2xs(x)}{(x-\alpha)^n}. +\] +Multiplizieren mit $(x-\alpha)^{n+1}$ gibt +\[ +(x-\alpha)^{n+1} += +s'(x)(x-\alpha) +- +ns(x) +- +2xs(x)(x-\alpha) +\] +Setzt man $x=\alpha$ ein, verschwinden alle Terme ausser dem mittleren +auf der rechten Seite, es bleibt +\[ +ns(\alpha) = 0. +\] +Dies widerspricht aber der Wahl der rationalen Funktion $s(x)$, für die +$\alpha$ keine Nullstelle ist. + +Somit kann es keine rationale Funktion $r(x)$ geben, die eine Lösung der +Differentialgleichung~\eqref{buch:integrale:expx2dgl} ist und +die Funktion $e^{-x^2}$ hat keine elementare Stammfunktion. +\end{proof} + +Der Satz~\ref{buch:iintegrale:satz:expx2} rechtfertigt die Einführung +der Fehlerfunktion $\operatorname{erf}(x)$ als neue spezielle Funktion, +mit deren Hilfe die Funktion $e^{-x^2}$ integriert werden kann. + + + diff --git a/buch/chapters/060-integral/diffke.tex b/buch/chapters/060-integral/diffke.tex new file mode 100644 index 0000000..53b46ad --- /dev/null +++ b/buch/chapters/060-integral/diffke.tex @@ -0,0 +1,20 @@ +% +% diffke.tex +% +% (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschlue +% +\subsection{Differentialkörper und ihre Erweiterungen +\label{buch:integral:subsection:diffke}} +% +\subsubsection{Derivation} +% Ableitungsaxiome + +\subsubsection{Ableitungsregeln} +% Ableitungsregeln + +\subsubsection{Konstantenkörper} +% Konstantenkörper + +\subsubsection{Logarithmus und Exponentialfunktion} +% Logarithmus und Exponentialfunktion + diff --git a/buch/chapters/060-integral/elementar.tex b/buch/chapters/060-integral/elementar.tex new file mode 100644 index 0000000..2962178 --- /dev/null +++ b/buch/chapters/060-integral/elementar.tex @@ -0,0 +1,7 @@ +% +% elementar.tex +% +% (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschlue +% +\subsection{Elementare Funktionen +\label{buch:integral:subsection:elementar}} diff --git a/buch/chapters/060-integral/erweiterungen.tex b/buch/chapters/060-integral/erweiterungen.tex new file mode 100644 index 0000000..f88f6e3 --- /dev/null +++ b/buch/chapters/060-integral/erweiterungen.tex @@ -0,0 +1,12 @@ +% +% erweiterungen.tex +% +% (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschlue +% +\subsection{Körpererweiterungen +\label{buch:integral:subsection:koerpererweiterungen}} +% +% algebraische Zahl-Erweiterungen +% rationale Funktionen als Körpererweiterungen +% Erweiterungen mit algebraischen Funktionen +% diff --git a/buch/chapters/060-integral/iproblem.tex b/buch/chapters/060-integral/iproblem.tex new file mode 100644 index 0000000..85db464 --- /dev/null +++ b/buch/chapters/060-integral/iproblem.tex @@ -0,0 +1,93 @@ +% +% iproblem.tex +% +% (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschlue +% +\subsection{Das Integrationsproblem +\label{buch:integral:subsection:integrationsproblem}} +\index{Integrationsproblem}% +Die Ableitung ist ein einem Differentialkörper mit Hilfe der Ableitungsregeln +immer ausführbar, ganz ähnlich wie die Berechnung von Potenzen in einem Körper +immer ausführbar ist. +Die Umkehrung, also eine sogenannte Stammfunktion zu finden, ist dagegen +deutlich schwieriger. + +\begin{definition} +\index{Stammfunktion} +Eine {\em Stammfunktion} einer Funktion $f\in\mathscr{K}$ im Funktionenkörper +$\mathscr{K}$ ist eine Funktion $F\in\mathscr{K}$ derart, dass $F'=f$. +Wir schreiben auch $F=\int f$. +\end{definition} + +Zwei Stammfunktionen $F_1$ und $F_2$ einer Funktion $f\in\mathscr{K}$ +haben die Eigenschaft +\[ +\left.\begin{aligned} +F_1' &= f \\ +F_2' &= f +\end{aligned}\quad\right\} +\qquad +\Rightarrow +\qquad +(F_1-F_2)' = 0 +\qquad\Rightarrow\qquad +F_1-F_2\in\mathscr{C}, +\] +die beiden Stammfunktionen unterscheiden sich daher nur durch eine +Konstante. + +\subsubsection{Stammfunktion von Polynomen} +Für Polynome ist das Problem leicht lösbar. +Aus der Ableitungsregel +\[ +\frac{d}{dx} x^n = nx^{n-1} +\] +folgt, dass +\[ +\int x^n = \frac{1}{n+1} x^{n+1} +\] +eine Stammfunktion von $x^n$ ist. +Da $\int$ linear ist, ergibt sich damit auch eine Stammfunktion für +ein beliebiges Polynom +\[ +g(x) += +g_0 + g_1x + g_2x^2 + \dots g_nx^n += +\sum_{k=0}^n g_kx^k +\in\mathbb{Q}(x) +\] +angeben: +\begin{equation} +\int g(x) += +g_0x + \frac12g_1x^2 + \frac13g_2x^3 + \dots \frac{1}{n+1}g_nx^{n+1} += +\sum_{k=0}^n +\frac{g_k}{k+1}x^{k+1}. +\label{buch:integral:iproblem:eqn:polyintegral} +\end{equation} + +\subsubsection{Körpererweiterungen} +Obwohl die Ableitung in einem Differentialkörper immer ausgeführt werden +kann, gibt es keine Garantie, dass es eine Stammfunktion im gleichen +Körper gibt. +Im kleinsten denkbaren Funktionenkörper $\mathbb{Q}(x)$ +haben die negativen Potenzen linearer Funktionen die Stammfunktionen +\[ +\int +\frac{1}{(x-\alpha)^k} += +\frac{1}{(-k+1)(x-\alpha)^{k-1}} +\] +für $k\ne 1$, sind also wieder in $\mathbb{Q}(x)$. +Für $k=1$ ist aber +\[ +\int \frac{1}{x-\alpha} += +\log(x-\alpha), +\] +es braucht also eine Körpererweiterung um $\log(x-\alpha)$, damit +$(x-\alpha)^{-1}$ eine Stammfunktion in $\mathbb{Q}(x,\log(x-\alpha))$ +hat. + diff --git a/buch/chapters/060-integral/irat.tex b/buch/chapters/060-integral/irat.tex new file mode 100644 index 0000000..2d03b7b --- /dev/null +++ b/buch/chapters/060-integral/irat.tex @@ -0,0 +1,140 @@ +% +% irat.tex +% +% (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschlue +% +\subsection{Integration rationaler Funktionen +\label{buch:integral:subsection:rationalefunktionen}} +Für die Integration der rationalen Funktionen lernt man in einem +Analysis-Kurs üblicherweise ein Lösungsverfahren. +Dies zeigt zunächst, dass rationale Funktionen immer eine Stammfunktion +in einem geeigneten Erweiterungskörper haben. +Es deutet aber auch an, dass Stammfunktionen eine ziemlich spezielle +Form haben, die später als +Satz von Liouville~\ref{buch:integral:satz:liouville} +ein besondere Rolle spielen wird. + +% +% Aufgabenstellung +% +\subsubsection{Aufgabenstellung} +In diesem Abschnitt ist eine rationale Funktion $f(x)\in\mathbb{Q}(x)$ +gegeben, deren Stammfunktion bestimmt werden soll. +Als rationale Funktion kann sie als Bruch +\begin{equation} +f(x) = \frac{p(x)}{q(x)} +\label{buch:integral:irat:eqn:quotient} +\end{equation} +mit Polynomen $p(x),q(x)\in\mathbb{Q}[x]$ geschrieben werden. +Gesucht ist ein Erweiterungskörper $\mathscr{K}\supset \mathbb{Q}(x)$ +derart und eine Stammfunktion $F\in\mathscr{K}$ von $f$, also $F'=f$. + +% +% Polynomdivision +% +\subsubsection{Polynomdivision} +Der Quotient~\eqref{buch:integral:irat:eqn:quotient} kann durch Polynomdivision +mit Rest vereinfacht werden in einen polynomialen Teil und einen echten +Bruch: +\begin{equation} +f(x) += +g(x) ++ +\frac{a(x)}{b(x)} +\label{buch:integral:irat:eqn:polydiv} +\end{equation} +mit Polynomen $g(x),a(x),b(x)\in\mathbb[Q](x)$ und $\deg a(x) < \deg b(x)$. +Für den ersten Summanden liefert +\eqref{buch:integral:iproblem:eqn:polyintegral} eine Stammfunktion. +Im Folgenden bleibt also nur noch der zweite Term zu behandeln. + +% +% Partialbruchzerlegung +% +\subsubsection{Partialbruchzerlegung} +Zur Berechnung des Integral des Bruchs +in~\eqref{buch:integral:irat:eqn:polydiv} wird die Partialbruchzerlegung +benötigt. +Der Einfachheit halber nehmen wir an, dass wir den Körper $\mathbb{Q}(x)$ +mit alle Nullstellen $\beta_i$ des Nenner-Polynoms $b(x)$ zu einem Körper +$\mathscr{K}$ erweitert haben, in dem Nenner in Linearfaktoren zerfällt. +Unter diesen Voraussetzungen hat die Partialbruchzerlegung die Form +\begin{equation} +\frac{a(x)}{b(x)} += +\sum_{i=1}^m +\sum_{k=1}^{k_i} +\frac{A_{ik}}{(x-\beta_i)^k}, +\label{buch:integral:irat:eqn:partialbruch} +\end{equation} +wobei $k_i$ die Vielfachheit der Nullstelle $\beta_i$ ist. +Die Koeffizienten $A_{ik}$ können zum Beispiel mit Hilfe eines linearen +Gleichungssystems bestimmt werden. + +Um eine Stammfunktion zu finden, muss man also Stammfunktionen für +jeden einzelnen Summanden bestimmen. +Für Exponenten $k>1$ im Nenner eines Terms der +Partialbruchzerlegung~\eqref{buch:integral:irat:eqn:partialbruch} +kann dazu die Regel +\[ +\int \frac{A_{ik}}{(x-\beta_i)^k} += +\frac{A_{ik}}{(-k+1)(x-\beta_i)^{k-1}} +\] +verwendet werden. +Diese Stammfunktion liegt wieder in $\mathbb{Q}(x)$ liegt. + +% +% Körpererweiterungen +% +\subsubsection{Körpererweiterung} +Für $k=1$ ist eine logarithmische Erweiterung um die Funktion +\begin{equation} +\int \frac{A_{i1}}{x-\alpha_i} += +A_{i1} +\log(x-\alpha_i) +\label{buch:integral:irat:eqn:logs} +\end{equation} +nötig. +Es gibt also eine Stammfunktion in einem Erweiterungskörper, sofern +er zusätzlich alle logarithmischen Funktionen +in~\ref{buch:integral:irat:eqn:logs} enthält. +Sie hat die Form +\[ +\sum_{i=1}^m A_{i1} \log(x-\beta_i), +\] +wobei $A_{i1}\in\mathbb{Q}$ ist. + +Setzt man alle vorher schon gefundenen Teile der Stammfunktion zusammen, +kann man sehen, dass die Stammfunktion die Form +\begin{equation} +F(x) = v_0(x) + \sum_{i=1}^m c_i \log v_i(x) +\label{buch:integral:irat:eqn:liouvillstammfunktion} +\end{equation} +haben muss. +Dabei ist $v_0(x)\in\mathbb{Q}(x)$ und besteht aus der Stammfunktion +des polynomiellen Teils und den Stammfunktionen der Terme der Partialbruchzerlegung mit Exponenten $k>1$. +Die logarithmischen Terme bestehen aus den Konstanten $c_i=A_{i1}$ +und den Logarithmusfunktionen $v_i(x)=x-\beta_i\in\mathbb{Q}(x)$. +Die Funktion $f(x)$ muss daher die Form +\[ +f(x) += +v_0'(x) ++ +\sum_{i=1}^m c_i\frac{v'_i(x)}{v_i(x)} +\] +gehabt haben. +Die Form~\eqref{buch:integral:irat:eqn:liouvillstammfunktion} +der Stammfunktion ist nicht eine Spezialität der rationalen Funktionen. +Sie wird auch bei grösseren Funktionenkörpern immer wieder auftreten +und ist als Satz von Liouville bekannt. + +% +% Minimale algebraische Erweiterung +% +\subsubsection{Minimale algebraische Erweiterung} +XXX Rothstein-Trager + diff --git a/buch/chapters/060-integral/logexp.tex b/buch/chapters/060-integral/logexp.tex new file mode 100644 index 0000000..7cbb906 --- /dev/null +++ b/buch/chapters/060-integral/logexp.tex @@ -0,0 +1,27 @@ +% +% logexp.tex +% +% (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschlue +% +\subsection{Log-Exp-Notation für elementare Funktionen +\label{buch:integral:subsection:logexp}} +Die Integration rationaler Funktionen hat bereits gezeigt, dass +eine Stammfunktion nicht immer im Körper der rationalen Funktionen +existiert. +Es kann notwendig sein, dem Körper logarithmische Erweiterungen der Form +$\log(x-\alpha)$ hinzuzufügen. + +Es können jedoch noch ganz andere neue Funktionen auftreten, wie die +folgende Zusammenstellung einiger Stammfunktionen zeigt: +\begin{align*} +\int\frac{dx}{1+x^2} +&= +\arctan x +\\ +\end{align*} + + + + + + diff --git a/buch/chapters/060-integral/rational.tex b/buch/chapters/060-integral/rational.tex new file mode 100644 index 0000000..19f2ad9 --- /dev/null +++ b/buch/chapters/060-integral/rational.tex @@ -0,0 +1,8 @@ +% +% rational.tex +% +% (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschlue +% +\subsection{Rationale Funktionen und Funktionenkörper +\label{buch:integral:subsection:rational}} + diff --git a/buch/chapters/060-integral/risch.tex b/buch/chapters/060-integral/risch.tex index 6c8ff96..1ba746a 100644 --- a/buch/chapters/060-integral/risch.tex +++ b/buch/chapters/060-integral/risch.tex @@ -6,7 +6,8 @@ \section{Der Risch-Algorithmus \label{buch:integral:section:risch}} \rhead{Risch-Algorithmus} - +\input{chapters/060-integral/logexp.tex} +\input{chapters/060-integral/elementar.tex} diff --git a/buch/chapters/060-integral/sqrat.tex b/buch/chapters/060-integral/sqrat.tex new file mode 100644 index 0000000..71eb39b --- /dev/null +++ b/buch/chapters/060-integral/sqrat.tex @@ -0,0 +1,8 @@ +% +% sqrat.tex +% +% (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschlue +% +\subsection{Integranden der Form $R(x,\sqrt{ax^2+bx+c})$ +\label{buch:integral:subsection:rxy}} + -- cgit v1.2.1 From a5b447ef1ab21d9dcb88d696862c75b81e994a32 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 23 May 2022 12:36:40 +0200 Subject: more rational integration stuff --- buch/chapters/060-integral/irat.tex | 8 +-- buch/chapters/060-integral/sqrat.tex | 110 +++++++++++++++++++++++++++++++++++ 2 files changed, 114 insertions(+), 4 deletions(-) diff --git a/buch/chapters/060-integral/irat.tex b/buch/chapters/060-integral/irat.tex index 2d03b7b..4c472ea 100644 --- a/buch/chapters/060-integral/irat.tex +++ b/buch/chapters/060-integral/irat.tex @@ -83,7 +83,7 @@ kann dazu die Regel \frac{A_{ik}}{(-k+1)(x-\beta_i)^{k-1}} \] verwendet werden. -Diese Stammfunktion liegt wieder in $\mathbb{Q}(x)$ liegt. +Diese Stammfunktion liegt wieder in $\mathscr{K}(x)$ liegt. % % Körpererweiterungen @@ -105,7 +105,7 @@ Sie hat die Form \[ \sum_{i=1}^m A_{i1} \log(x-\beta_i), \] -wobei $A_{i1}\in\mathbb{Q}$ ist. +wobei $A_{i1}\in\mathscr{K}$ ist. Setzt man alle vorher schon gefundenen Teile der Stammfunktion zusammen, kann man sehen, dass die Stammfunktion die Form @@ -114,10 +114,10 @@ F(x) = v_0(x) + \sum_{i=1}^m c_i \log v_i(x) \label{buch:integral:irat:eqn:liouvillstammfunktion} \end{equation} haben muss. -Dabei ist $v_0(x)\in\mathbb{Q}(x)$ und besteht aus der Stammfunktion +Dabei ist $v_0(x)\in\mathscr{K}(x)$ und besteht aus der Stammfunktion des polynomiellen Teils und den Stammfunktionen der Terme der Partialbruchzerlegung mit Exponenten $k>1$. Die logarithmischen Terme bestehen aus den Konstanten $c_i=A_{i1}$ -und den Logarithmusfunktionen $v_i(x)=x-\beta_i\in\mathbb{Q}(x)$. +und den Logarithmusfunktionen $v_i(x)=x-\beta_i\in\mathscr{K}(x)$. Die Funktion $f(x)$ muss daher die Form \[ f(x) diff --git a/buch/chapters/060-integral/sqrat.tex b/buch/chapters/060-integral/sqrat.tex index 71eb39b..38b1504 100644 --- a/buch/chapters/060-integral/sqrat.tex +++ b/buch/chapters/060-integral/sqrat.tex @@ -5,4 +5,114 @@ % \subsection{Integranden der Form $R(x,\sqrt{ax^2+bx+c})$ \label{buch:integral:subsection:rxy}} +Für rationale Funktionen lässt sich immer eine Stammfunktion in einem +Erweiterungskörper angeben, der durch hinzufügen einzelner logarithmischer +Funktionen entsteht. +Die dabei verwendeten Techniken lassen sich verallgemeinern. +Zur Illustration und Motivation des später beschriebenen Risch-Algorithmus +stellen wir uns in diesem Abschnitt der Aufgabe, Integrale +mit einem Integranden zu berechnen, der eine rationale Funktion von $x$ +und $\sqrt{ax^2+bx+c}$ ist. + +% +% Aufgabenstellung +% +\subsubsection{Aufgabenstellung} +Eine rationale Funktion von $x$ und $\sqrt{ax^2+bx+c}$ ist ein +Element des Differentialkörpers, den man aus $\mathbb{Q}(x)$ durch +hinzufügen des Elementes +\[ +y=\sqrt{ax^2+bx+c} +\] +erhält. +Eine Funktion $f\in\mathbb{Q}(x,y)$ kann geschrieben werden als Bruch +\begin{equation} +f += +\frac{ +\tilde{p}_0 + \tilde{p}_1y + \dots + \tilde{p}_n y^n +}{ +\tilde{q}_0 + \tilde{q}_1y + \dots + \tilde{q}_m y^m +} +\label{buch:integral:sqrat:eqn:ftilde} +\end{equation} +mit rationalen Koeffizienten $\tilde{p}_i,\tilde{q}_i\in\mathbb{Q}(x)$. +Gesucht ist eine Stammfunktion von $f$. + +% +% Algebraische Vereinfachungen +% +\subsubsection{Algebraische Vereinfachungen} +Da $x^2=ax^2+bx+c$ ein Polynom ist, sind auch alle geraden Potenzen +von $y$ Polynome in $\mathbb{Q}(x)$, +und die ungeraden Potenzen von $y$ lassen sich als Produkt aus einem +Polynom und dem Faktor $y$ schreiben. +Der Integrand~\eqref{buch:integral:sqrat:eqn:ftilde} +lässt sich daher vereinfachen zu einem Bruch der Form +\begin{equation} +f(x) += +\frac{p_0+p_1y}{q_0+q_1y}, +\label{buch:integral:sqrat:eqn:moebius} +\end{equation} +wobei $p_i$ und $q_i$ rationale Funktionen in $\mathbb{Q}(x)$ sind. + +% +% Rationalisieren +% +\subsubsection{Rationalisieren} +Unschön an der Form~\eqref{buch:integral:sqrat:eqn:moebius} ist die +Tatsache, dass $y$ sowohl im Nenner wie auch im Zähler auftreten kann. +Da aber $y$ die quadratische Identität $y^2=ax^2+bx+c$ erfüllt, +kann das $y$ im Nenner durch Erweitern mit $q_0-q_1y$ zum verschwinden +gebracht werden. +Die Rechnung ergibt +\begin{align*} +\frac{p_0+p_1y}{q_0+q_1y} +&= +\frac{p_0+p_1y}{q_0+q_1y} +\cdot +\frac{q_0-q_1y}{q_0-q_1y} += +\frac{(p_0+p_1y)(q_0-q_1y)}{q_0^2-q_1^2y^2} +\\ +&= +\frac{p_0q_0-p_1q_1(ax^2+bx+c)}{q_0^2-q_1^2(ax^2+bx+c)} ++ +\frac{q_0p_1-q_1p_0}{q_0^2-q_1^2(ax^2+bx+c)} y. +\end{align*} +Die Quotienten enthalten $y$ nicht mehr, sind also in $\mathbb{Q}(x)$. +In der späteren Rechnung stellt sich heraus, dass es praktischer ist, +das $y$ im Nenner zu haben, was man durch erweitern mit $y$ wieder +unter Ausnützung von $y^2=ax^2+bx+c$ erreichen kann. +Die zu integrierende Funktion kann also in der Form +\begin{equation} +f(x) += +W_1 + W_2\frac{1}{y} +\end{equation} +geschrieben werden mit rationalen Funktionen +$W_1,W_2\in\mathbb{Q}(x)$. +Eine Stammfunktion von $W_1$ kann mit der Methode von +Abschnitt~\ref{buch:integral:subsection:rationalefunktionen} +gefunden werden. +Im Folgenden kümmern wir uns daher nur noch um $W_1$. + +\subsubsection{Polynomdivision} + +\subsubsection{Integranden der Form $p(x)/y$} + +\subsubsection{Partialbruchzerlegung} + +\begin{equation} +\int +\frac{1}{(x-\alpha)^k \sqrt{ax^2+bx+c}} +\label{buch:integral:sqrat:eqn:2teart} +\end{equation} + +\subsubsection{Integrale der Form \eqref{buch:integral:sqrat:eqn:2teart}} + + + + -- cgit v1.2.1 From e8bb3fd399f2261c9b430ffa319626950499d4c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 23 May 2022 23:06:11 +0200 Subject: new spherical graph --- buch/papers/kugel/images/Makefile | 12 ++- buch/papers/kugel/images/spherecurve.m | 160 ++++++++++++++++++++++++++++ buch/papers/kugel/images/spherecurve.maxima | 13 +++ buch/papers/kugel/images/spherecurve.pov | 73 +++++++++++++ 4 files changed, 257 insertions(+), 1 deletion(-) create mode 100644 buch/papers/kugel/images/spherecurve.m create mode 100644 buch/papers/kugel/images/spherecurve.maxima create mode 100644 buch/papers/kugel/images/spherecurve.pov diff --git a/buch/papers/kugel/images/Makefile b/buch/papers/kugel/images/Makefile index e8bf919..6187fed 100644 --- a/buch/papers/kugel/images/Makefile +++ b/buch/papers/kugel/images/Makefile @@ -3,7 +3,7 @@ # # (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule # -all: curvature.jpg +all: curvature.jpg spherecurve.jpg curvature.inc: curvgraph.m octave curvgraph.m @@ -13,3 +13,13 @@ curvature.png: curvature.pov curvature.inc curvature.jpg: curvature.png convert curvature.png -density 300 -units PixelsPerInch curvature.jpg + +spherecurve.inc: spherecurve.m + octave spherecurve.m + +spherecurve.png: spherecurve.pov spherecurve.inc + povray +A0.1 +W1920 +H1080 +Ospherecurve.png spherecurve.pov + +spherecurve.jpg: spherecurve.png + convert spherecurve.png -density 300 -units PixelsPerInch spherecurve.jpg + diff --git a/buch/papers/kugel/images/spherecurve.m b/buch/papers/kugel/images/spherecurve.m new file mode 100644 index 0000000..ea9c901 --- /dev/null +++ b/buch/papers/kugel/images/spherecurve.m @@ -0,0 +1,160 @@ +# +# spherecurv.m +# +# (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +global a; +a = 5; +global A; +A = 10; + +phisteps = 400; +hphi = 2 * pi / phisteps; +thetasteps = 200; +htheta = pi / thetasteps; + +function retval = f(z) + global a; + global A; + retval = A * exp(a * (z^2 - 1)); +endfunction + +function retval = g(z) + global a; + retval = -f(z) * 2 * a * (2 * a * z^4 + (3 - 2*a) * z^2 - 1); + # 2 + # - a 2 4 2 2 a z + #(%o6) - %e (4 a z + (6 a - 4 a ) z - 2 a) %e +endfunction + +phi = (1 + sqrt(5)) / 2; + +global axes; +axes = [ + 0, 0, 1, -1, phi, -phi; + 1, -1, phi, phi, 0, 0; + phi, phi, 0, 0, 1, 1; +]; +axes = axes / (sqrt(phi^2+1)); + +function retval = kugel(theta, phi) + retval = [ + cos(phi) * sin(theta); + sin(phi) * sin(theta); + cos(theta) + ]; +endfunction + +function retval = F(v) + global axes; + s = 0; + for i = (1:6) + z = axes(:,i)' * v; + s = s + f(z); + endfor + retval = s / 6; +endfunction + +function retval = F2(theta, phi) + v = kugel(theta, phi); + retval = F(v); +endfunction + +function retval = G(v) + global axes; + s = 0; + for i = (1:6) + s = s + g(axes(:,i)' * v); + endfor + retval = s / 6; +endfunction + +function retval = G2(theta, phi) + v = kugel(theta, phi); + retval = G(v); +endfunction + +function retval = cnormalize(u) + utop = 11; + ubottom = -30; + retval = (u - ubottom) / (utop - ubottom); + if (retval > 1) + retval = 1; + endif + if (retval < 0) + retval = 0; + endif +endfunction + +global umin; +umin = 0; +global umax; +umax = 0; + +function color = farbe(v) + global umin; + global umax; + u = G(v); + if (u < umin) + umin = u; + endif + if (u > umax) + umax = u; + endif + u = cnormalize(u); + color = [ u, 0.5, 1-u ]; + color = color/max(color); +endfunction + +function dreieck(fn, v0, v1, v2) + fprintf(fn, " mesh {\n"); + c = (v0 + v1 + v2) / 3; + c = c / norm(c); + color = farbe(c); + v0 = v0 * (1 + F(v0)); + v1 = v1 * (1 + F(v1)); + v2 = v2 * (1 + F(v2)); + fprintf(fn, "\ttriangle {\n"); + fprintf(fn, "\t <%.6f,%.6f,%.6f>,\n", v0(1,1), v0(3,1), v0(2,1)); + fprintf(fn, "\t <%.6f,%.6f,%.6f>,\n", v1(1,1), v1(3,1), v1(2,1)); + fprintf(fn, "\t <%.6f,%.6f,%.6f>\n", v2(1,1), v2(3,1), v2(2,1)); + fprintf(fn, "\t}\n"); + fprintf(fn, "\tpigment { color rgb<%.4f,%.4f,%.4f> }\n", + color(1,1), color(1,2), color(1,3)); + fprintf(fn, "\tfinish { metallic specular 0.5 }\n"); + fprintf(fn, " }\n"); +endfunction + +fn = fopen("spherecurve.inc", "w"); + + for i = (1:phisteps) + # Polkappe nord + v0 = [ 0; 0; 1 ]; + v1 = kugel(htheta, (i-1) * hphi); + v2 = kugel(htheta, i * hphi); + fprintf(fn, " // i = %d\n", i); + dreieck(fn, v0, v1, v2); + + # Polkappe sued + v0 = [ 0; 0; -1 ]; + v1 = kugel(pi-htheta, (i-1) * hphi); + v2 = kugel(pi-htheta, i * hphi); + dreieck(fn, v0, v1, v2); + endfor + + for j = (1:thetasteps-2) + for i = (1:phisteps) + v0 = kugel( j * htheta, (i-1) * hphi); + v1 = kugel((j+1) * htheta, (i-1) * hphi); + v2 = kugel( j * htheta, i * hphi); + v3 = kugel((j+1) * htheta, i * hphi); + fprintf(fn, " // i = %d, j = %d\n", i, j); + dreieck(fn, v0, v1, v2); + dreieck(fn, v1, v2, v3); + endfor + endfor + +fclose(fn); + +umin +umax diff --git a/buch/papers/kugel/images/spherecurve.maxima b/buch/papers/kugel/images/spherecurve.maxima new file mode 100644 index 0000000..1e9077c --- /dev/null +++ b/buch/papers/kugel/images/spherecurve.maxima @@ -0,0 +1,13 @@ +/* + * spherecurv.maxima + * + * (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule + */ +f: exp(-a * sin(theta)^2); + +g: ratsimp(diff(sin(theta) * diff(f, theta), theta)/sin(theta)); +g: subst(z, cos(theta), g); +g: subst(sqrt(1-z^2), sin(theta), g); +ratsimp(g); + +f: ratsimp(subst(sqrt(1-z^2), sin(theta), f)); diff --git a/buch/papers/kugel/images/spherecurve.pov b/buch/papers/kugel/images/spherecurve.pov new file mode 100644 index 0000000..86c3745 --- /dev/null +++ b/buch/papers/kugel/images/spherecurve.pov @@ -0,0 +1,73 @@ +// +// curvature.pov +// +// (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +// + +#version 3.7; +#include "colors.inc" + +global_settings { + assumed_gamma 1 +} + +#declare imagescale = 0.14; + +camera { + location <10, 10, -40> + look_at <0, 0, 0> + right 16/9 * x * imagescale + up y * imagescale +} + +light_source { + <-10, 10, -40> color White + area_light <1,0,0> <0,0,1>, 10, 10 + adaptive 1 + jitter +} + +sky_sphere { + pigment { + color rgb<1,1,1> + } +} + +// +// draw an arrow from to with thickness with +// color +// +#macro arrow(from, to, arrowthickness, c) +#declare arrowdirection = vnormalize(to - from); +#declare arrowlength = vlength(to - from); +union { + sphere { + from, 1.1 * arrowthickness + } + cylinder { + from, + from + (arrowlength - 5 * arrowthickness) * arrowdirection, + arrowthickness + } + cone { + from + (arrowlength - 5 * arrowthickness) * arrowdirection, + 2 * arrowthickness, + to, + 0 + } + pigment { + color c + } + finish { + specular 0.9 + metallic + } +} +#end + +arrow(<-2.7,0,0>, <2.7,0,0>, 0.03, White) +arrow(<0,-2.7,0>, <0,2.7,0>, 0.03, White) +arrow(<0,0,-2.7>, <0,0,2.7>, 0.03, White) + +#include "spherecurve.inc" + -- cgit v1.2.1 From 6ee6a7b0cf91469c7a79827293b8e3b880a6a0aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 24 May 2022 11:45:50 +0200 Subject: add C++ program to compute the surface --- buch/papers/kugel/images/Makefile | 9 +- buch/papers/kugel/images/spherecurve.cpp | 292 +++++++++++++++++++++++++++++++ buch/papers/kugel/images/spherecurve.m | 4 +- buch/papers/kugel/images/spherecurve.pov | 4 +- 4 files changed, 303 insertions(+), 6 deletions(-) create mode 100644 buch/papers/kugel/images/spherecurve.cpp diff --git a/buch/papers/kugel/images/Makefile b/buch/papers/kugel/images/Makefile index 6187fed..4226dab 100644 --- a/buch/papers/kugel/images/Makefile +++ b/buch/papers/kugel/images/Makefile @@ -14,12 +14,17 @@ curvature.png: curvature.pov curvature.inc curvature.jpg: curvature.png convert curvature.png -density 300 -units PixelsPerInch curvature.jpg -spherecurve.inc: spherecurve.m +spherecurve2.inc: spherecurve.m octave spherecurve.m spherecurve.png: spherecurve.pov spherecurve.inc - povray +A0.1 +W1920 +H1080 +Ospherecurve.png spherecurve.pov + povray +A0.1 +W1080 +H1080 +Ospherecurve.png spherecurve.pov spherecurve.jpg: spherecurve.png convert spherecurve.png -density 300 -units PixelsPerInch spherecurve.jpg +spherecurve: spherecurve.cpp + g++ -o spherecurve -g -Wall -O spherecurve.cpp + +spherecurve.inc: spherecurve + ./spherecurve diff --git a/buch/papers/kugel/images/spherecurve.cpp b/buch/papers/kugel/images/spherecurve.cpp new file mode 100644 index 0000000..eff8c33 --- /dev/null +++ b/buch/papers/kugel/images/spherecurve.cpp @@ -0,0 +1,292 @@ +/* + * spherecurve.cpp + * + * (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule + */ +#include +#include +#include +#include +#include + +inline double sqr(double x) { return x * x; } + +/** + * \brief Class for 3d vectors (also used as colors) + */ +class vector { + double X[3]; +public: + vector() { X[0] = X[1] = X[2] = 0; } + vector(double a) { X[0] = X[1] = X[2] = a; } + vector(double x, double y, double z) { + X[0] = x; X[1] = y; X[2] = z; + } + vector(double theta, double phi) { + double s = sin(theta); + X[0] = cos(phi) * s; + X[1] = sin(phi) * s; + X[2] = cos(theta); + } + vector(const vector& other) { + for (int i = 0; i < 3; i++) { + X[i] = other.X[i]; + } + } + vector operator+(const vector& other) const { + return vector(X[0] + other.X[0], + X[1] + other.X[1], + X[2] + other.X[2]); + } + vector operator*(double l) const { + return vector(X[0] * l, X[1] * l, X[2] * l); + } + double operator*(const vector& other) const { + double s = 0; + for (int i = 0; i < 3; i++) { + s += X[i] * other.X[i]; + } + return s; + } + double norm() const { + double s = 0; + for (int i = 0; i < 3; i++) { + s += sqr(X[i]); + } + return sqrt(s); + } + vector normalize() const { + double l = norm(); + return vector(X[0]/l, X[1]/l, X[2]/l); + } + double max() const { + return std::max(X[0], std::max(X[1], X[2])); + } + double l0norm() const { + double l = 0; + for (int i = 0; i < 3; i++) { + if (fabs(X[i]) > l) { + l = fabs(X[i]); + } + } + return l; + } + vector l0normalize() const { + double l = l0norm(); + vector result(X[0]/l, X[1]/l, X[2]/l); + return result; + } + const double& operator[](int i) const { return X[i]; } + double& operator[](int i) { return X[i]; } +}; + +/** + * \brief Derived 3d vector class implementing color + * + * The constructor in this class converts a single value into a + * color on a suitable gradient. + */ +class color : public vector { +public: + static double utop; + static double ubottom; + static double green; +public: + color(double u) { + u = (u - ubottom) / (utop - ubottom); + if (u > 1) { + u = 1; + } + if (u < 0) { + u = 0; + } + u = pow(u,2); + (*this)[0] = u; + (*this)[1] = green; + (*this)[2] = 1-u; + double l = l0norm(); + for (int i = 0; i < 3; i++) { + (*this)[i] /= l; + } + } +}; + +double color::utop = 12; +double color::ubottom = -31; +double color::green = 0.5; + +/** + * \brief Surface model + * + * This class contains the definitions of the functions to plot + * and the parameters to + */ +class surfacefunction { + static vector axes[6]; + + double _a; + double _A; + + double _umin; + double _umax; +public: + double a() const { return _a; } + double A() const { return _A; } + + double umin() const { return _umin; } + double umax() const { return _umax; } + + surfacefunction(double a, double A) : _a(a), _A(A), _umin(0), _umax(0) { + } + + double f(double z) { + return A() * exp(a() * (sqr(z) - 1)); + } + + double g(double z) { + return -f(z) * 2*a() * ((2*a()*sqr(z) + (3-2*a()))*sqr(z) - 1); + } + + double F(const vector& v) { + double s = 0; + for (int i = 0; i < 6; i++) { + s += f(axes[i] * v); + } + return s / 6; + } + + double G(const vector& v) { + double s = 0; + for (int i = 0; i < 6; i++) { + s += g(axes[i] * v); + } + return s / 6; + } +protected: + color farbe(const vector& v) { + double u = G(v); + if (u < _umin) { + _umin = u; + } + if (u > _umax) { + _umax = u; + } + return color(u); + } +}; + +static double phi = (1 + sqrt(5)) / 2; +static double sl = sqrt(sqr(phi) + 1); +vector surfacefunction::axes[6] = { + vector( 0. , -1./sl, phi/sl ), + vector( 0. , 1./sl, phi/sl ), + vector( 1./sl, phi/sl, 0. ), + vector( -1./sl, phi/sl, 0. ), + vector( phi/sl, 0. , 1./sl ), + vector( -phi/sl, 0. , 1./sl ) +}; + +/** + * \brief Class to construct the plot + */ +class surface : public surfacefunction { + FILE *outfile; + + int _phisteps; + int _thetasteps; + double _hphi; + double _htheta; +public: + int phisteps() const { return _phisteps; } + int thetasteps() const { return _thetasteps; } + double hphi() const { return _hphi; } + double htheta() const { return _htheta; } + void phisteps(int s) { _phisteps = s; _hphi = 2 * M_PI / s; } + void thetasteps(int s) { _thetasteps = s; _htheta = M_PI / s; } + + surface(const std::string& filename, double a, double A) + : surfacefunction(a, A) { + outfile = fopen(filename.c_str(), "w"); + phisteps(400); + thetasteps(200); + } + + ~surface() { + fclose(outfile); + } + +private: + void triangle(const vector& v0, const vector& v1, const vector& v2) { + fprintf(outfile, " mesh {\n"); + vector c = (v0 + v1 + v2) * (1./3.); + vector color = farbe(c.normalize()); + vector V0 = v0 * (1 + F(v0)); + vector V1 = v1 * (1 + F(v1)); + vector V2 = v2 * (1 + F(v2)); + fprintf(outfile, "\ttriangle {\n"); + fprintf(outfile, "\t <%.6f,%.6f,%.6f>,\n", + V0[0], V0[2], V0[1]); + fprintf(outfile, "\t <%.6f,%.6f,%.6f>,\n", + V1[0], V1[2], V1[1]); + fprintf(outfile, "\t <%.6f,%.6f,%.6f>\n", + V2[0], V2[2], V2[1]); + fprintf(outfile, "\t}\n"); + fprintf(outfile, "\tpigment { color rgb<%.4f,%.4f,%.4f> }\n", + color[0], color[1], color[2]); + fprintf(outfile, "\tfinish { metallic specular 0.5 }\n"); + fprintf(outfile, " }\n"); + } + + void northcap() { + vector v0(0, 0, 1); + for (int i = 1; i <= phisteps(); i++) { + fprintf(outfile, " // northcap i = %d\n", i); + vector v1(htheta(), (i - 1) * hphi()); + vector v2(htheta(), i * hphi()); + triangle(v0, v1, v2); + } + } + + void southcap() { + vector v0(0, 0, -1); + for (int i = 1; i <= phisteps(); i++) { + fprintf(outfile, " // southcap i = %d\n", i); + vector v1(M_PI - htheta(), (i - 1) * hphi()); + vector v2(M_PI - htheta(), i * hphi()); + triangle(v0, v1, v2); + } + } + + void zone() { + for (int j = 1; j < thetasteps() - 1; j++) { + for (int i = 1; i <= phisteps(); i++) { + fprintf(outfile, " // zone j = %d, i = %d\n", + j, i); + vector v0( j * htheta(), (i-1) * hphi()); + vector v1((j+1) * htheta(), (i-1) * hphi()); + vector v2( j * htheta(), i * hphi()); + vector v3((j+1) * htheta(), i * hphi()); + triangle(v0, v1, v2); + triangle(v1, v2, v3); + } + } + } +public: + void draw() { + northcap(); + southcap(); + zone(); + } +}; + +/** + * \brief main function + */ +int main(int argc, char *argv[]) { + surface S("spherecurve.inc", 5, 10); + color::green = 0.3; + S.draw(); + std::cout << "umin: " << S.umin() << std::endl; + std::cout << "umax: " << S.umax() << std::endl; + return EXIT_SUCCESS; +} diff --git a/buch/papers/kugel/images/spherecurve.m b/buch/papers/kugel/images/spherecurve.m index ea9c901..99d5c9a 100644 --- a/buch/papers/kugel/images/spherecurve.m +++ b/buch/papers/kugel/images/spherecurve.m @@ -1,5 +1,5 @@ # -# spherecurv.m +# spherecurve.m # # (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule # @@ -125,7 +125,7 @@ function dreieck(fn, v0, v1, v2) fprintf(fn, " }\n"); endfunction -fn = fopen("spherecurve.inc", "w"); +fn = fopen("spherecurve2.inc", "w"); for i = (1:phisteps) # Polkappe nord diff --git a/buch/papers/kugel/images/spherecurve.pov b/buch/papers/kugel/images/spherecurve.pov index 86c3745..b1bf4b8 100644 --- a/buch/papers/kugel/images/spherecurve.pov +++ b/buch/papers/kugel/images/spherecurve.pov @@ -11,12 +11,12 @@ global_settings { assumed_gamma 1 } -#declare imagescale = 0.14; +#declare imagescale = 0.13; camera { location <10, 10, -40> look_at <0, 0, 0> - right 16/9 * x * imagescale + right x * imagescale up y * imagescale } -- cgit v1.2.1 From d08813723e1cab4bca4a527218610023775a4634 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 24 May 2022 11:53:56 +0200 Subject: better color coding --- buch/papers/kugel/images/spherecurve.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/buch/papers/kugel/images/spherecurve.cpp b/buch/papers/kugel/images/spherecurve.cpp index eff8c33..8ddf5e5 100644 --- a/buch/papers/kugel/images/spherecurve.cpp +++ b/buch/papers/kugel/images/spherecurve.cpp @@ -102,7 +102,7 @@ public: } u = pow(u,2); (*this)[0] = u; - (*this)[1] = green; + (*this)[1] = green * u * (1 - u); (*this)[2] = 1-u; double l = l0norm(); for (int i = 0; i < 3; i++) { @@ -284,7 +284,7 @@ public: */ int main(int argc, char *argv[]) { surface S("spherecurve.inc", 5, 10); - color::green = 0.3; + color::green = 1.0; S.draw(); std::cout << "umin: " << S.umin() << std::endl; std::cout << "umax: " << S.umax() << std::endl; -- cgit v1.2.1 From c9c9f97f5cf1bbe669acfdb8aae1e6c81f8faed9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 24 May 2022 16:23:27 +0200 Subject: Integrale von R(x,y) --- buch/chapters/060-integral/differentialkoerper.tex | 12 +- buch/chapters/060-integral/sqrat.tex | 365 ++++++++++++++++++++- 2 files changed, 374 insertions(+), 3 deletions(-) diff --git a/buch/chapters/060-integral/differentialkoerper.tex b/buch/chapters/060-integral/differentialkoerper.tex index 66bb0c1..a071ae2 100644 --- a/buch/chapters/060-integral/differentialkoerper.tex +++ b/buch/chapters/060-integral/differentialkoerper.tex @@ -3,9 +3,19 @@ % % (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule % -\section{Differentialkörper +\section{Differentialkörper und das Integrationsproblem \label{buch:integrale:section:dkoerper}} \rhead{Differentialkörper} +Die Einführung einer neuen Funktion $\operatorname{erf}(x)$ wurde +durch die Behauptung gerechtfertigt, dass es für den Integranden +$e^{-x^2}$ keine Stammfunktion in geschlossener Form gäbe. +Die Fehlerfunktion ist bei weitem nicht die einzige mit dieser +Eigenschaft. +Doch woher weiss man, dass es keine solche Funktion gibt, und +was heisst überhaupt ``Stammfunktion in geschlossener Form''? +In diesem Abschnitt wird daher ein algebraischer Rahmen entwickelt, +in dem diese Frage sinnvoll gestellt werden kann. + \input{chapters/060-integral/rational.tex} \input{chapters/060-integral/erweiterungen.tex} \input{chapters/060-integral/diffke.tex} diff --git a/buch/chapters/060-integral/sqrat.tex b/buch/chapters/060-integral/sqrat.tex index 38b1504..20f1ef7 100644 --- a/buch/chapters/060-integral/sqrat.tex +++ b/buch/chapters/060-integral/sqrat.tex @@ -90,6 +90,7 @@ Die zu integrierende Funktion kann also in der Form f(x) = W_1 + W_2\frac{1}{y} +\label{buch:integral:sqint:eqn:w1w2y} \end{equation} geschrieben werden mit rationalen Funktionen $W_1,W_2\in\mathbb{Q}(x)$. @@ -98,20 +99,380 @@ Abschnitt~\ref{buch:integral:subsection:rationalefunktionen} gefunden werden. Im Folgenden kümmern wir uns daher nur noch um $W_1$. +% +% Polynomdivision +% \subsubsection{Polynomdivision} +Die Funktion $W_2$ in \eqref{buch:integral:sqint:eqn:w1w2y} ist eine +rationale Funktion $W_2\in \mathbb{K}(x)$, also ein Bruch mit Polynomen +in $x$ als Zähler und Nenner. +Durch Polynomdivision mit Rest können wir $W_2$ schreiben als +\[ +W_1 = \varphi + W_3, +\] +wobei $\varphi$ ein Polynom in $x$ ist und $W_3$ eine rationale +Funktion, deren Zählergrad kleiner ist als der Nennergrad. +Zur Bestimmung der Stammfunktion bleibt jetzt nur noch +\begin{equation} +\int W_2\frac{1}{y} += +\int \frac{\varphi}{y} ++ +\int W_3\frac1{y} +\label{buch:integral:sqint:eqn:Wy} +\end{equation} +zu berechnen. -\subsubsection{Integranden der Form $p(x)/y$} +% +% Integranden der Form $\varphi(x)/y$ +% +\subsubsection{Integranden der Form $\varphi(x)/y$} +Der erste Term in~\eqref{buch:integral:sqint:eqn:Wy} ist ein Integral eines +Quotienten eines Polynoms geteilt durch $y$. +Solche Integrale können, wie im Folgenden gezeigt werden soll, reduziert +werden auf das Integral von $1/y$. +Genauer gilt der folgende Satz. -\subsubsection{Partialbruchzerlegung} +\begin{satz} +\label{buch:integral:sqint:satz:polyy} +Sei $\varphi\in\mathcal{K}(x)$ ein Polynom in $x$, dann gibt +es ein Polynom $\psi\in\mathcal{K}(x)$ vom Grad $\deg\psi < \deg\varphi$, +und $A\in\mathcal{K}$ derart, dass +\begin{equation} +\int \frac{\varphi}{y} += +\psi y + A\int\frac{1}{y}. +\label{buch:integral:sqint:eqn:phipsi} +\end{equation} +\end{satz} + +\begin{proof}[Beweis] +Wir schreiben die Polynome in der Form +\begin{align*} +\varphi +&= +\varphi_mx^m + \varphi_{m-1}x^{m-1} + \dots + \varphi_2x^2 + \varphi_1x + \varphi_0 +\\ +\psi +&= +\phantom{\varphi_mx^m+\mathstrut} +\psi_{m-1}x^{m-1} + \dots + \psi_2x^2 + \psi_1x + \psi_0 +\intertext{mit der Ableitung} +\psi' +&= +\phantom{\varphi_mx^m+\mathstrut} +\psi_{m-1}(m-1)x^{m-2} + \dots + 2\psi_2x + \psi_1. +\end{align*} +Wir leiten die Gleichung~\eqref{buch:integral:sqint:eqn:phipsi} +nach $x$ ab und erhalten +\begin{align*} +\frac{\varphi}{y} +&= +\psi'y + \psi y' + \frac{A}{y} += +\psi'y + \psi \frac{ax+b/2}{y} + \frac{A}{y}. +\intertext{Durch Multiplikation mit $y$ wird die Gleichung wesentlich +vereinfacht zu} +\varphi +&= +\psi' y^2 + \psi y' y + A += +\psi' \cdot(ax^2+bx+c) + \psi\cdot (ax+b/2) + A. +\end{align*} +Auf beiden Seiten stehen Polynome, man kann daher versuchen, die +Koeffizienten von $\psi$ mit Hilfe eines Koeffizientenvergleichs zu +bestimmen. +Dazu müssen die Produkte auf der rechten Seite ausmultipliziert werden. +So ergeben sich die Gleichungen +\begin{equation} +\renewcommand{\arraycolsep}{2pt} +\begin{array}{lcrcrcrcrcrcrcr} +\varphi_m +&=& +(m-1)\psi_{m-1} a &+& & & +&+& +\psi_{m-1} a & & & & +\\ +\varphi_{m-1} +&=& +(m-2)\psi_{m-2}a +&+& +(m-1)\psi_{m-1}b +& & +&+& +\psi_{m-2}a +&+& +\psi_{m-1}\frac{b}2 +& & +\\ +\varphi_{m-2} +&=& +(m-3)\psi_{m-3}a +&+& +(m-2)\psi_{m-2}b +&+& +(m-1)\psi_{m-1}c +&+& +\psi_{m-3}a +&+& +\psi_{m-2}\frac{b}2 +& & +\\ +&\vdots&&&&&&&&&&& +\\ +\varphi_2 +&=& +\psi_{1\phantom{-m}}a +&+& +2\psi_{2\phantom{-m}}b +&+& +3\psi_{3\phantom{-m}}c +&+& +\psi_{1\phantom{-m}}a +&+& +\psi_{2\phantom{-m}}\frac{b}2 +& & +\\ +\varphi_1 +&=& +& & +\psi_{1\phantom{-m}}b +& & +2\psi_{2\phantom{-m}}c +&+& +\psi_{0\phantom{-m}}a +&+& +\psi_{1\phantom{-m}}\frac{b}2 +\\ +\varphi_0 +&=& +& & +& & +\psi_{1\phantom{-m}}c +& & +&+& +\psi_{0\phantom{-m}}\frac{b}2 +&+&A +\end{array} +\end{equation} +In jeder Gleichung kommen hächstens drei der Koeffizienten von $\psi$ vor. +Fasst man sie zusammen und stellt die Terme etwas um, +erhält man die einfacheren Gleichungen +\begin{equation} +\renewcommand{\arraycolsep}{2pt} +\renewcommand{\arraystretch}{1.3} +\begin{array}{lcrcrcrcrcrcrcr} +\varphi_m +&=& +(m-0){\color{red}\psi_{m-1}}a & & & & +& & +\\ +\varphi_{m-1} +&=& +(m-1+\frac12)\psi_{m-1}b +&+& +(m-1){\color{red}\psi_{m-2}}a +& & +& & +\\ +\varphi_{m-2} +&=& +(m-1)\psi_{m-1}c +&+& +(m-2+\frac12)\psi_{m-2}b +&+& +(m-2){\color{red}\psi_{m-3}}a +& & +\\ +&\vdots&&&&&&&&&&& +\\ +\varphi_2 +&=& +3\psi_{3\phantom{-m}}c +&+& +(2+\frac12)\psi_{2\phantom{-m}}b +&+& +2{\color{red}\psi_{1\phantom{-m}}}a +& & +\\ +\varphi_1 +&=& +2\psi_{2\phantom{-m}}c +&+& +(1+\frac12)\psi_{1\phantom{-m}}b +&+& +{\color{red}\psi_{0\phantom{-m}}}a +& & +\\ +\varphi_0 +&=& +\psi_{1\phantom{-m}}c +& & +&+& +(0+\frac12) \psi_{0\phantom{-m}}b +&+&{\color{red}A} +\end{array} +\end{equation} +Die erste Gleichung kann wegen $a\ne 0$ nach $\psi_{m-1}$ aufgelöst werden, +dadurch ist $\psi_{m-1}$ bestimmt. +In allen folgenden Gleichungen taucht jeweils ein neuer Koeffizient +von $\psi$ auf, der rot hervorgehoben ist. +Wieder wegen $a\ne 0$ kann die Gleichung immer nach dieser Variablen +aufgelöst werden. +Die Gleichungen zeigen daher, dass die Koeffizienten des Polynoms $\psi$ +in absteigender Folge und die Konstanten $A$ eindeutig bestimmt werden. +\end{proof} + +Mit diesem Satz ist das Integral über den Teil $\varphi/y$ auf den +Fall des Integrals von $1/y$ reduziert. +Letzteres wird im nächsten Abschnitt berechnet. +% +% Das Integral von $1/y$ +% +\subsubsection{Das Integral von $1/y$} +Eine Stammfunktion von $1/y$ kann mit etwas Geschick bekannten +Interationstechnikgen gefunden werden. +Durch Ableitung der Funktion +\[ +F += +\frac{1}{\sqrt{a}}\log\biggl(x+\frac{b}{2a}+\frac{y}{\sqrt{y}}\biggr) +\] +kann man nachprüfen, dass $F$ eine Stammfunktion von $1/y$ ist, +also +\begin{equation} +\int +\frac{1}{y} += +\frac{1}{\sqrt{a}}\log\biggl(x+\frac{b}{2a}+\frac{y}{\sqrt{y}}\biggr). +\end{equation} + +% +% Partialbruchzerlegung +% +\subsubsection{Partialbruchzerlegung} +In der rationalen Funktion $W_3$ in \eqref{buch:integral:sqint:eqn:Wy} +hat der Zähler kleineren Grad als der Nenner, sie kann daher wieder +in Partialbrüche +\[ +W_3 += +\sum_{i=1}^n +\sum_{k=1}^{k_i} +\frac{A_{ik}}{(x-\alpha_i)^k} +\] +mit den Nullstellen $\alpha_i$ des Nenners von $W_3$ mit Vielfachheiten +$k_i$ zerlegt werden. +Die Stammfunktion von $W_3/y$ wird damit zu +\begin{equation} +\int W_3\frac{1}{y} += +\sum_{i=1}^n +\sum_{k=1}^{k_i} +A_{ik} +\int +\frac{1}{(x-\alpha_i)^ky} += +\sum_{i=1}^n +\sum_{k=1}^{k_i} +A_{ik} +\int +\frac{1}{(x-\alpha_i)^k \sqrt{ax^2+bx+c}}. +\end{equation} +Die Stammfunktion ist damit reduziert auf Integrale der Form \begin{equation} \int \frac{1}{(x-\alpha)^k \sqrt{ax^2+bx+c}} \label{buch:integral:sqrat:eqn:2teart} \end{equation} +mit $k>0$. +% +% Integrale der Form \eqref{buch:integral:sqrat:eqn:2teart} +% \subsubsection{Integrale der Form \eqref{buch:integral:sqrat:eqn:2teart}} +Die Integrale~\eqref{buch:integral:sqrat:eqn:2teart} +können mit Hilfe der Substution +\[ +t=\frac{1}{x-\alpha} +\qquad\text{oder}\qquad +x=\frac1t+\alpha +\] +In ein Integral verwandelt werden, für welches bereits eine +Berechnungsmethode entwickelt wurde. +Dazu berechnet man +\begin{align*} +y^2 +&= a\biggl(\frac1t+\alpha\biggr)^2 + b\biggl(\frac1t+\alpha\biggr) + c +\\ +&= +a\biggl(\frac{1}{t^2}+2\frac{\alpha}{t}+\alpha^2\biggr) ++\frac{b}{t}+b\alpha+c += +\frac{1}{t^2}\bigl( +\underbrace{a+(2a\alpha+b)t+(a\alpha^2+c)t^2}_{\displaystyle=Y^2} +\bigr) +\intertext{und damit} +y&=\frac{Y}{t}. +\end{align*} +Führt man die Substition +$dx = -dt/t^2$ im Integral aus, erhält man +\begin{align*} +\int\frac{dx}{(x-\alpha)^ky} +&= +- +\int +t^k\cdot\frac{t}{Y}\frac{dt}{t^2} += +-\int\frac{t^{k-1}}{Y}\,dt. +\end{align*} +Das letzte Integral ist wieder von der Form, die in +Satz~\ref{buch:integral:sqint:satz:polyy} behandelt wurde. +Insbesondere gibt es ein Polynom $\psi$ vom Grad $k-2$ und +eine Konstante $A$ derart, dass +\[ +\int\frac{1}{(x-\alpha)^ky} += +\psi Y + A\int\frac{1}{Y} +\] +ist. +Damit ist das Integral von $R(x,y)$ vollständig bestimmt. +\subsubsection{Beobachtungen} +Die eben dargestellte Berechnung des Integrals von $R(x,y)$ zeigt einige +Gemeinsamkeiten mit der entsprechenden Rechnung für rationale +Integranden, aber auch einige wesentliche Unterschiede. +Wieder zeigt sich, dass Polynomdivision und Partialbruchzerlegung +die zentralen Werkzeuge sind, mit denen der Integrand zerlegt und +leichter integrierbare Funktionen umgeformt werden kann. +Andererseits ist der in +Satz~\ref{buch:integral:sqint:satz:polyy} +zusammengefasste Schritt eine wesentliche zusätzliche Vereinfachung, +die keine Entsprechung bei rationalen Integranden hat. + +Die gefunden Form der Stammfunktion hat jedoch die allgemeine +Form +\[ +\int R(x,y) += +v_0 + +C +\log\biggl(x+\frac{b}{2a}+\frac{y}{\sqrt{y}}\biggr) ++ +\sum_{i=1}^n c_i +\log v_i, +\] +die ganz der bei rationalen Integranden gefunden Form entspricht. +Darin ist $v_0$ die Summe der angefallenen rationalen Teilintegrale, +also $v_0\in\mathcal{K}(x,y)$. +Die $v_i\in\mathcal{K}(x,y)$ sind die entsprechenden Logarithmusfunktionen, +die bei der Berechnung der Integrale \eqref{buch:integral:sqrat:eqn:2teart} +auftreten. +Insbesondere liefert die Rechnung eine Körpererweiterung von +$\mathcal{K}(x,y)$ um die logarithmische Funktionen +$\log(x+b/2a+y/\sqrt{y})$ und $\log v_i$, in der $R(x,y)$ eine +Stammfunktion hat. -- cgit v1.2.1 From 2dd23cdeef2889a5b3210e324c159ab462bb267c Mon Sep 17 00:00:00 2001 From: "ENEZ-PC\\erdem" Date: Tue, 24 May 2022 16:20:10 +0200 Subject: Korrektur (noch nicht fertig) --- buch/papers/nav/einleitung.tex | 2 +- buch/papers/nav/flatearth.tex | 3 +- buch/papers/nav/main.tex | 1 + buch/papers/nav/nautischesdreieck.tex | 89 +++++++++++++++---------------- buch/papers/nav/packages.tex | 3 +- buch/papers/nav/sincos.tex | 6 ++- buch/papers/nav/trigo.tex | 99 ++++++++++++++++++++++------------- 7 files changed, 116 insertions(+), 87 deletions(-) diff --git a/buch/papers/nav/einleitung.tex b/buch/papers/nav/einleitung.tex index aafa107..8eb4481 100644 --- a/buch/papers/nav/einleitung.tex +++ b/buch/papers/nav/einleitung.tex @@ -3,7 +3,7 @@ \section{Einleitung} Heutzutage ist die Navigation ein Teil des Lebens. Man sendet dem Kollegen seinen eigenen Standort, um sich das ewige Erklären zu sparen oder gibt die Adresse des Ziels ein, damit man seinen Aufenthaltsort zum Beispiel auf einer riesigen Wiese am See findet. -Dies wird durch Technologien wie Funknavigation, welches ein auf Langzeitmessung beruhendes Hyperbelverfahren mit Langwellen ist oder die verbreitete Satellitennavigation, welche vier Satelliten für eine Messung zur Standortbestimmung nutzt. +Dies wird durch Technologien wie Funknavigation, welches ein auf Laufzeitmessung beruhendes Hyperbelverfahren mit Langwellen ist, oder die verbreitete Satellitennavigation, welche vier Satelliten für eine Messung zur Standortbestimmung nutzt. Vor all diesen technologischen Fortschritten gab es lediglich die Astronavigation, welche heute noch auf Schiffen verwendet wird im Falle eines Stromausfalls. Aber wie funktioniert die Navigation mit den Sternen? Welche Hilfsmittel benötigt man, welche Rolle spielt die Mathematik und weshalb kann die Erde nicht flach sein? In diesem Kapitel werden genau diese Fragen mithilfe des nautischen Dreiecks, der sphärischen Trigonometrie und einigen Hilfsmitteln und Messgeräten beantwortet. \ No newline at end of file diff --git a/buch/papers/nav/flatearth.tex b/buch/papers/nav/flatearth.tex index 5bfc1b7..3b08e8d 100644 --- a/buch/papers/nav/flatearth.tex +++ b/buch/papers/nav/flatearth.tex @@ -17,10 +17,9 @@ Eratosthenes konnte etwa 100 Jahre später den Erdumfang berechnen. Er beobachtete, dass die Sonne in Syene mittags im Zenit steht und gleichzeitig in Alexandria unter einem Winkel einfällt. Mithilfe der Trigonometrie konnte er mit dem Abstand der Städte und dem Einfallswinkel den Umfang berechnen. -Der Kartograph Gerhard Mercator projizierte die Erdkugel auf ein Papier und erstellte so eine winkeltreue Karte. +Der Kartograph Gerhard Mercator projizierte die Erdkugel wie in Abbildung 21.1 dargestellt auf ein Papier und erstellte so eine winkeltreue Karte. Jedoch wurden die Länder, die einen grösseren Abstand zum Äquator haben vergrössert, damit die Winkel stimmen können. Wurde man also nun davon ausgehen, dass die Erde flach ist so würden wir nie dort ankommen wo wir es wollen. - Dies sieht man zum Beispiel sehr gut, wenn man die Anwendung Google Earth und eine Weltkarte vergleicht. Grönland ist auf der Weltkarte so gross wie Afrika. In der Anwendung Google Earth jedoch ist Grönland etwa so gross wie Algerien. diff --git a/buch/papers/nav/main.tex b/buch/papers/nav/main.tex index e16dc2a..4c52547 100644 --- a/buch/papers/nav/main.tex +++ b/buch/papers/nav/main.tex @@ -19,3 +19,4 @@ \printbibliography[heading=subbibliography] \end{refsection} + diff --git a/buch/papers/nav/nautischesdreieck.tex b/buch/papers/nav/nautischesdreieck.tex index c239d64..36e9c99 100644 --- a/buch/papers/nav/nautischesdreieck.tex +++ b/buch/papers/nav/nautischesdreieck.tex @@ -4,49 +4,26 @@ Die Himmelskugel ist eine gedachte Kugel, welche die Erde und dessen Beobachter Der Zenit ist jener Punkt, der vom Erdmittelpunkt durch denn eigenen Standort an die Himmelskugel verlängert wird. Ein Gestirn ist ein Planet oder ein Fixstern, zu welchen es diverse Jahrbücher mit allen astronomischen Eigenschaften gibt. Der Himmelspol ist der Nordpol an die Himmelskugel projiziert. -Das nautische Dreieck definiert sich durch folgende Ecken: Zenit, Gestirn und Himmelspol. +Das nautische Dreieck hat die Ecken Zenit, Gestirn und Himmelspol, wie man in der Abbildung 21.5 sehen kann. Ursprünglich ist das nautische Dreieck ein Hilfsmittel der sphärischen Astronomie um die momentane Position eines Fixsterns oder Planeten an der Himmelskugel zu bestimmen. -Für die Definition gilt: -\begin{center} - \begin{tabular}{ c c c } - Winkel && Name / Beziehung \\ - \hline - $\alpha$ && Rektaszension \\ - $\delta$ && Deklination \\ - $\theta$ && Sternzeit von Greenwich\\ - $\phi$ && Geographische Breite\\ - $\tau=\theta-\alpha$ && Stundenwinkel und Längengrad des Gestirns. \\ - $a$ && Azimut\\ - $h$ && Höhe - \end{tabular} -\end{center} - -\begin{itemize} - \item Seitenlänge Zenit zu Himmelspol $= \frac{\pi}{2} - \phi $ - \item Seitenlänge Himmelspol zu Gestirn $= \frac{\pi}{2} - \delta$ - \item Seitenlänge Zenit zu Gestirn $= \frac{\pi}{2} - h$ - \item Winkel von Zenit zu Himmelsnordpol zu Gestirn$=\pi - \alpha$ - \item Winkel von Himmelsnordpol zu Zenit und Gestirn$= \tau$ -\end{itemize} - - -\subsection{Zusammenhang des nautischen Dreiecks und des Kugeldreiecks auf der Erdkugel} +\subsection{Das Bilddreieck} \begin{figure} \begin{center} - \includegraphics[height=5cm,width=8cm]{papers/nav/bilder/kugel3.png} + \includegraphics[width=8cm]{papers/nav/bilder/kugel3.png} \caption[Nautisches Dreieck]{Nautisches Dreieck} \end{center} \end{figure} - -Wie man in der Abbildung 21.4 sieht, liegt das nautische Dreieck auf der Himmelskugel mit den Ecken Zenit, Gestirn und Himmelsnordpol. -Das selbe Dreieck kann man aber auch auf die Erdkugel projizieren. Als Bildpunkt wird in der astronomischen Navigation der Punkt bezeichnet, an dem eine gedachte Linie vom Mittelpunkt eines beobachteten Gestirns zum Mittelpunkt der Erde die Erdoberfläche schneidet. Die Projektion auf der Erdkugel hat die Ecken Nordpol, Standort und Bildpunkt. + Man kann das nautische Dreieck auf die Erdkugel projizieren. +Dieses Dreieck nennt man dann Bilddreieck. +Als Bildpunkt wird in der astronomischen Navigation der Punkt bezeichnet, an dem eine gedachte Linie vom Mittelpunkt eines beobachteten Gestirns zum Mittelpunkt der Erde die Erdoberfläche schneidet. +Die Projektion auf der Erdkugel hat die Ecken Nordpol, Standort und Bildpunkt. \section{Standortbestimmung ohne elektronische Hilfsmittel} Um den eigenen Standort herauszufinden, wird in diesem Kapitel die Projektion des nautische Dreiecks auf die Erdkugel zur Hilfe genommen. Mithilfe eines Sextanten, einem Jahrbuch und der sphärischen Trigonometrie kann man dann die Längen- und Breitengrade des eigenen Standortes bestimmen. -Was ein Sextant und ein Jahrbuch ist, wird im Kapitel 21.6 erklärt. +Was ein Sextant und ein Jahrbuch ist, wird im Abschnitt 21.6.3 erklärt. \begin{figure} \begin{center} \includegraphics[width=10cm]{papers/nav/bilder/dreieck.pdf} @@ -59,8 +36,8 @@ Was ein Sextant und ein Jahrbuch ist, wird im Kapitel 21.6 erklärt. \subsection{Ecke $P$ und $A$} Unser eigener Standort ist der gesuchte Ecke $P$ und die Ecke $A$ ist in unserem Fall der Nordpol. -Der Vorteil ander Idee des nautischen Dreiecks ist, dass eine Ecke immer der Nordpol ist. -Somit ist diese Ecke immer bekannt und nur deswegen sind die Zusammenhänge von Rektaszension, Sternzeit und Deklination so simpel. +Der Vorteil an der Idee des nautischen Dreiecks ist, dass eine Ecke immer der Nordpol ist. +Somit ist diese Ecke immer bekannt und nur deswegen sind die Zusammenhänge von Rektaszension, Sternzeit und Deklination so einfach. \subsection{Ecke $B$ und $C$ - Bildpunkt $X$ und $Y$} Für die Standortermittlung benötigt man als weiteren Punkt ein Gestirn bzw. seinen Bildpunkt auf der Erdkugel. @@ -69,8 +46,8 @@ Es gibt diverse Gestirne, die man nutzen kann wie zum Beispiel die Sonne, der Mo Die Bildpunkte von den beiden Gestirnen $X$ und $Y$ bilden die beiden Ecken $B$ und $C$ im Dreieck der Abbildung 21.5. \subsection{Ephemeriden} -Zu all diesen Gestirnen gibt es Ephemeriden, die man auch Jahrbücher nennt. -In diesen findet man Begriffe wie Rektaszension, Deklination und Sternzeit. +Zu all diesen Gestirnen gibt es Ephemeriden. +Diese enthalten die Rektaszensionen und Deklinationen in Abhängigkeit von der Zeit. \begin{figure} \begin{center} @@ -83,25 +60,24 @@ In diesen findet man Begriffe wie Rektaszension, Deklination und Sternzeit. Die Deklination $\delta$ beschreibt den Winkel zwischen dem Himmelsäquator und Gestirn und entspricht dem Breitengrad des Gestirns. \subsubsection{Rektaszension und Sternzeit} -Die Rektaszension $\alpha$ gibt an, in welchem Winkel das Gestirn zum Frühlingspunkt steht und geht vom Koordinatensystem der Himmelskugel aus. -Der Frühlungspunkt ist der Nullpunkt auf dem Himmelsäquator. +Die Rektaszension $\alpha$ gibt an, in welchem Winkel das Gestirn zum Frühlingspunkt, welcher der Nullpunkt auf dem Himmelsäquator ist, steht und geht vom Koordinatensystem der Himmelskugel aus. + Die Tatsache, dass sich die Himmelskugel ca. vier Minuten schneller um die eigene Achse dreht als die Erdkugel, stellt hier ein kleines Problem dar. Die Lösung ist die Sternzeit. -Mit dieser können wir die schnellere Drehung der Himmelskugel ausgleichen und können die -Am Frühlingspunkt (21. März) 12:00 Uhr ist die Sternzeit -$\theta = 0$. +Mit dieser können wir die schnellere Drehung der Himmelskugel ausgleichen und können die am Frühlingspunkt (21. März) 12:00 Uhr ist die Sternzeit $\theta = 0$. Die Sternzeit geht vom Frühlungspunkt aus, an welchem die Sonne den Himmelsäquator schneidet. Für die Standortermittlung auf der Erdkugel ist es am einfachsten, wenn man die Sternzeit von Greenwich berechnet. -Für die Sternzeit von Greenwich $\theta $braucht man als erstes das Julianische Datum $T$ vom aktuellen Tag, welches sich leicht recherchieren lässt. +Für die Sternzeit von Greenwich $\theta$ braucht man als erstes das Julianische Datum $T$ vom aktuellen Tag, welches sich leicht nachschlagen lässt. Im Anschluss berechnet man die Sternzeit von Greenwich \[\theta = 6^h 41^m 50^s,54841 + 8640184^s,812866 \cdot T + 0^s,093104 \cdot T^2 - 0^s,0000062 \cdot T^3.\] -Wenn man die Sternzeit von Greenwich ausgerechnet hat, kann man den Längengrad des Gestirns $\lambda = \theta - \alpha$ mithilfe der Rektaszension und Sternzeit von Greenwich bestimmen. +Wenn man die Sternzeit von Greenwich ausgerechnet hat, kann man den Längengrad des Gestirns $\lambda = \theta - \alpha$ bestimmen, wobei $\alpha$ die Rektaszension und $\theta$ die Sternzeit von Greenwich ist. Dies gilt analog auch für das zweite Gestirn. \subsubsection{Sextant} -Ein Sextant ist ein nautisches Messinstrument, mit dem man den Winkel zwischen der Blickrichtung zu weit entfernten Objekten bestimmen kann, insbesondere den Winkelabstand zu einem Gestirn vom Horizont. Man nutze ihn vor allem für die astronomische Navigation auf See. +Ein Sextant ist ein nautisches Messinstrument, mit dem man den Winkel zwischen der Blickrichtung zu weit entfernten Objekten bestimmen kann. Es wird vor allem der Winkelabstand zu Gestirnen gemessen. +Man benutzt ihn vor allem für die astronomische Navigation auf See. \begin{figure} \begin{center} @@ -109,7 +85,32 @@ Ein Sextant ist ein nautisches Messinstrument, mit dem man den Winkel zwischen d \caption[Sextant]{Sextant} \end{center} \end{figure} - +\subsubsection{Eingeschaften} +Für das nautische Dreieck gibt es folgende Eigenschaften: +\begin{center} + \begin{tabular}{ l c l } + Legende && Name / Beziehung \\ + \hline + $\alpha$ && Rektaszension \\ + $\delta$ && Deklination \\ + $\theta$ && Sternzeit von Greenwich\\ + $\phi$ && Geographische Breite\\ + $\tau=\theta-\alpha$ && Stundenwinkel und Längengrad des Gestirns. \\ + $a$ && Azimut\\ + $h$ && Höhe + \end{tabular} +\end{center} +\begin{center} + \begin{tabular}{ l c l } + Eigenschaften \\ + \hline + Seitenlänge Zenit zu Himmelspol= && $\frac{\pi}{2} - \phi$ \\ + Seitenlänge Himmelspol zu Gestirn= && $\frac{\pi}{2} - \delta$ \\ + Seitenlänge Himmelspol zu Gestirn= && $\frac{\pi}{2} - h$ \\ + Winkel von Zenit zu Himmelsnordpol zu Gestirn= && $\pi-\alpha$\\ + Winkel von Himmelsnordpol zu Zenit zu Gestirn= && $\tau$\\ + \end{tabular} +\end{center} \subsection{Bestimmung des eigenen Standortes $P$} Nun hat man die Koordinaten der beiden Gestirne und man weiss die Koordinaten des Nordpols. Damit wir unseren Standort bestimmen können, bilden wir zuerst das Dreieck $ABC$, dann das Dreieck $BPC$ und zum Schluss noch das Dreieck $ABP$. diff --git a/buch/papers/nav/packages.tex b/buch/papers/nav/packages.tex index 5b87303..f2e6132 100644 --- a/buch/papers/nav/packages.tex +++ b/buch/papers/nav/packages.tex @@ -8,4 +8,5 @@ % following example %\usepackage{packagename} -\usepackage{amsmath} \ No newline at end of file +\usepackage{amsmath} +\usepackage{cancel} \ No newline at end of file diff --git a/buch/papers/nav/sincos.tex b/buch/papers/nav/sincos.tex index d56d482..a1653e8 100644 --- a/buch/papers/nav/sincos.tex +++ b/buch/papers/nav/sincos.tex @@ -7,12 +7,14 @@ Jedoch konnten sie dieses Problem nicht lösen. Die Geschichte der sphärischen Trigonometrie ist daher eng mit der Astronomie verknüpft. Ca. 350 vor Christus dachten die Griechen über Kugelgeometrie nach und sie wurde zu einer Hilfswissenschaft der Astronomen. Zwischen 190 v. Chr. und 120 v. Chr. lebte ein griechischer Astronom names Hipparchos. -Dieser entwickelte unter anderem die Chordentafeln, welche die Chord - Funktionen, auch Chord genannt, beinhalten. +Dieser entwickelte unter anderem die Chordentafeln, welche die Chord - Funktionen, auch Chord genannt, beinhalten und im Abschnitt 3.1.1 beschrieben sind. Chord ist der Vorgänger der Sinusfunktion und galt damals als wichtigste Grundlage der Trigonometrie. -In dieser Zeit wurden auch die ersten Sternenkarten angefertigt, jedoch kannte man damals die Sinusfunktion noch nicht. +In dieser Zeit wurden auch die ersten Sternenkarten angefertigt. Damals kannte man die Sinusfunktionen noch nicht. Aus Indien stammten die ersten Ansätze zu den Kosinussätzen. Aufbauend auf den indischen und griechischen Forschungen entwickeln die Araber um das 9. Jahrhundert den Sinussatz. +Die Definition der trigonometrischen Funktionen ermöglicht nur, rechtwinklige Dreiecke zu berechnen. +Die Beziehung zwischen Seiten und Winkeln sind komplizierter und als Sinus- und Kosinussätze bekannt. Doch ein paar weitere Jahrhunderte vergingen bis zu diesem Thema wieder verstärkt Forschung betrieben wurde, da im 15. Jahrhundert grosse Entdeckungsreisen, hauptsächlich per Schiff, erfolgten und die Orientierung mit Sternen vermehrt an Wichtigkeit gewann. Man nutzte für die Kartographie nun die Kugelgeometrie, um die Genauigkeit zu erhöhen. Der Sinussatz, die Tangensfunktion und der neu entwickelte Seitenkosinussatz wurden in dieser Zeit bereits verwendet und im darauffolgenden Jahrhundert folgte der Winkelkosinussatz. diff --git a/buch/papers/nav/trigo.tex b/buch/papers/nav/trigo.tex index ce367f6..aca8bd2 100644 --- a/buch/papers/nav/trigo.tex +++ b/buch/papers/nav/trigo.tex @@ -1,16 +1,13 @@ \section{Sphärische Trigonometrie} -In der sphärischen Trigonometrie gibt es eine Symetrie zwischen Seiten und Winkel, also zu jedem Satz über Seiten und Winkel gibt es einen entsprechenden Satz, mit dem man Winkel durch Seiten und Seiten durch Winkel ersetzt hat. -Dabei gibt es folgenden Zusammenhang zwischen der ebenen- und sphärischen Trigonometrie: - \subsection{Das Kugeldreieck} -Damit man die Definition des Kugeldreiecks versteht, müssen wir zuerst Begriffe wie "Grosskreisebene" und "Grosskreisbögen" verstehen. -Ein Grosskreis ist ein größtmöglicher Kreis auf einer Kugeloberfläche. +Damit man die Definition des Kugeldreiecks versteht, müssen wir zuerst Begriffe wie Grosskreisebene und Grosskreisbögen verstehen. +Ein Grosskreis ist ein grösstmöglicher Kreis auf einer Kugeloberfläche. Sein Mittelpunkt fällt immer mit dem Mittelpunkt der Kugel zusammen und ein Schnitt auf dem Großkreis teilt die Kugel in jedem Fall in zwei gleich grosse Hälften. Da es unendlich viele Möglichkeiten gibt, eine Kugel so zu zerschneiden, dass die Schnittebene den Kugelmittelpunkt trifft, gibt es auch unendlich viele Grosskreise. -Grosskreisbögen sind die Verbindungslinien zwischen zwei Punkten auf der Kugel, welche auch "Seiten" eines Kugeldreiecks gennant werden. +Grosskreisbögen sind die kürzesten Verbindungslinien zwischen zwei Punkten auf der Kugel. -Werden drei voneinander verschiedene Punkte, die sich nicht auf derselben Grosskreisebene befinden, mit Grosskreisbögen verbunden, so entsteht ein Kugeldreieck $ABC$. +Werden drei voneinander verschiedene Punkte, die sich nicht auf derselben Grosskreisebene befinden, mit Grosskreisbögen verbunden werden, so entsteht ein Kugeldreieck $ABC$. Für ein Kugeldreieck gilt, dass die Summe der drei Seiten kleiner als $2\pi$ aber grösser als 0 ist. $A$, $B$ und $C$ sind die Ecken des Dreiecks und dessen Seiten sind die Grosskreisbögen zwischen den Eckpunkten (siehe Abbildung 21.2). @@ -19,18 +16,6 @@ Laut dieser Definition ist die Seite $c$ der Winkel $AMB$, wobei der Punkt $M$ d Man kann bei Kugeldreiecken nicht so einfach unterscheiden, was Innen oder Aussen ist. Wenn man drei Eckpunkte miteinander verbindet, ergeben sich immer 16 Kugeldreiecke. -Jenes Kugeldreieck mit den Seitenlängen $a, b, c < \pi$ und den Winkeln $\alpha, \beta, \gamma < \pi$ nennt man Eulersches Dreieck. - -Es gibt einen Zusammenhang zwischen der ebenen- und sphärischen Trigonometrie, wobei folgend $a$ eine Seite beschreibt: -\begin{center} - \begin{tabular}{ccc} - Eben & $\leftrightarrow$ & sphärisch \\ - \hline - $a$ & $\leftrightarrow$ & $\sin \ a$ \\ - - $a^2$ & $\leftrightarrow$ & $-\cos \ a$ \\ - \end{tabular} -\end{center} \begin{figure} \begin{center} @@ -41,8 +26,11 @@ Es gibt einen Zusammenhang zwischen der ebenen- und sphärischen Trigonometrie, \end{figure} \subsection{Rechtwinkliges Dreieck und rechtseitiges Dreieck} +In der sphärischen Trigonometrie gibt es eine Symetrie zwischen Seiten und Winkel, also zu jedem Satz über Seiten und Winkel gibt es einen entsprechenden Satz, mit dem man Winkel durch Seiten und Seiten durch Winkel ersetzt hat. + Wie auch im ebenen Dreieck gibt es beim Kugeldreieck auch ein rechtwinkliges Kugeldreieck, bei dem ein Winkel $\frac{\pi}{2}$ ist. -Ein Rechtseitiges Dreieck gibt es jedoch nur beim Kugeldreieck, weil dort eine Seitenlänge $\frac{\pi}{2}$ lang sein muss. +Ein Rechtseitiges Dreieck gibt es jedoch nur beim Kugeldreieck, weil dort eine Seitenlänge $\frac{\pi}{2}$ lang sein muss, wie man in der Abbildung 21.3 sehen kann. + \begin{figure} \begin{center} @@ -51,7 +39,7 @@ Ein Rechtseitiges Dreieck gibt es jedoch nur beim Kugeldreieck, weil dort eine S \end{center} \end{figure} -\subsection{Winkelsumme} +\subsection{Winkelsumme und Flächeninhalt} \begin{figure} \begin{center} @@ -64,9 +52,9 @@ Ein Rechtseitiges Dreieck gibt es jedoch nur beim Kugeldreieck, weil dort eine S Die Winkel eines Kugeldreiecks sind die, welche die Halbtangenten in den Eckpunkten einschliessen. Für die Summe der Innenwinkel gilt \begin{align} - \alpha+\beta+\gamma &= \frac{F}{r^2} + \pi \ \text{und} \ \alpha+\beta+\gamma > \pi, \nonumber + \alpha+\beta+\gamma &= \frac{F}{r^2} + \pi \quad \text{und} \quad \alpha+\beta+\gamma > \pi, \nonumber \end{align} -wobei F der Flächeninhalt des Kugeldreiecks ist. +wobei $F$ der Flächeninhalt des Kugeldreiecks ist. \subsubsection{Sphärischer Exzess} Der sphärische Exzess \begin{align} @@ -77,32 +65,69 @@ beschreibt die Abweichung der Innenwinkelsumme von $\pi$ und ist proportional zu \subsubsection{Flächeninnhalt} Mithilfe des Radius $r$ und dem sphärischen Exzess $\epsilon$ gilt für den Flächeninhalt \[ F=\frac{\pi \cdot r^2}{\frac{\pi}{2}} \cdot \epsilon\]. -\subsection{Sphärischer Sinussatz} -In jedem Dreieck ist das Verhältnis des Sinus einer Seite zum Sinus des Gegenwinkels konstant. -Das bedeutet, dass +\subsection{Seiten und Winkelberechnung} +Es gibt in der sphärischen Trigonometrie eigentlich gar keinen Satz des Pythagoras, wie man ihn aus der zweidimensionalen Geometrie kennt. +Es gibt aber auch einen Satz, der alle drei Seiten eines rechtwinkligen Kugeldreiecks, nicht aber für das rechtseitige Kugeldreieck, in eine Beziehung bringt und zum jetzigen Punkt noch unklar ist, weshalb dieser Satz so aussieht. +Die Approximation folgt noch. +Es gilt nämlich: +\begin{align} + \cos c = \cos a \cdot \cos b \quad \text{wenn} \nonumber & + \quad \alpha = \frac{\pi}{2} \nonumber +\end{align} + +\subsubsection{Approximation von kleinen Dreiecken} +Die Sätze in der ebenen Trigonometrie sind eigentlich Approximationen der sphärischen Trigonometrie. +So ist der Sinussatz in der Ebene nur eine Annäherung des sphärischen Sinussatzes. Das Gleiche gilt für den Kosinussatz und dem Satz des Pythagoras. +So kann mit dem Taylorpolynom 2. Grades den Sinus und den Kosinus vom Sphärischen in die Ebene approximieren: +\begin{align} + \sin(a) &\approx a \nonumber \intertext{und} + \cos(a)&\approx 1-\frac{a^2}{2}.\nonumber +\end{align} +Es gibt ebenfalls folgende Approximierung der Seiten von der Sphäre in die Ebene: +\begin{align} + a &\approx \sin(a) \nonumber \intertext{und} + a^2 &\approx 1-\cos(a). \nonumber +\end{align} +Die Korrespondenzen zwischen der ebenen- und sphärischen Trigonometrie werden in den kommenden Abschnitten erläutert. + +\subsubsection{Sphärischer Satz des Pythagoras} +Die Korrespondenz \[ a^2 \approx 1-cos(a)\] liefert unter Anderem einen entsprechenden Satz des Pythagoras, nämlich + +\begin{align} + \cos(a)\cdot \cos(b) &= \cos(c) \\ + \bigg[1-\frac{a^2}{2}\bigg] \cdot \bigg[1-\frac{b^2}{2}\bigg] &= 1-\frac{c^2}{2} \\ + \xcancel{1}- \frac{a^2}{2} - \frac{b^2}{2} + \xcancel{\frac{a^2b^2}{4}}&= \xcancel{1}- \frac{c^2}{2} \intertext{Höhere Potenzen vernachlässigen} + -a^2-b^2 &=-c^2\\ + a^2+b^2&=c^2 +\end{align} + +\subsubsection{Sphärischer Sinussatz} +Den sphärischen Sinussatz \begin{align} \frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)} \nonumber \end{align} -auch beim Kugeldreieck gilt. +kann man ebenfalls mit der Korrespondenz \[a \approx \sin(a) \] zum entsprechenden ebenen Sinussatz \[\frac{a}{\sin (\alpha)} =\frac{b}{\sin (\beta)} = \frac{c}{\sin (\gamma)}\] approximieren. -\subsection{Sphärische Kosinussätze} -Auch in der sphärischen Trigonometrie gibt es den Seitenkosinussatz + +\subsubsection{Sphärische Kosinussätze} +In der sphärischen Trigonometrie gibt es den Seitenkosinussatz \begin{align} \cos \ a = \cos b \cdot \cos c + \sin b \cdot \sin c \cdot \cos \alpha \nonumber \end{align} %Seitenkosinussatz und den Winkelkosinussatz \begin{align} - \cos \gamma = -\cos \alpha \cdot \cos \beta + \sin \alpha \cdot \sin \beta \cdot \cos c. \nonumber -\end{align} + \cos \gamma = -\cos \alpha \cdot \cos \beta + \sin \alpha \cdot \sin \beta \cdot \cos c, \nonumber +\end{align} der nur in der sphärischen Trigonometrie vorhanden ist. -\subsection{Sphärischer Satz des Pythagoras für das rechtwinklige Kugeldreieck} -Es gibt in der sphärischen Trigonometrie eigentlich garkeinen "Satz des Pythagoras", wie man ihn aus der zweidimensionalen Geometrie kennt. -In der sphärischen Trigonometrie gibt es aber auch einen Satz, der alle drei Seiten eines rechtwinkligen Kugeldreiecks, nicht aber für das rechtseitige Kugeldreieck, in eine Beziehung bringt. -Es gilt nämlich: +Analog gibt es auch beim Seitenkosinussatz eine Korrespondenz zu \[ a^2 \leftrightarrow 1-\cos(a),\] die den ebenen Kosinussatz herleiten lässt, nämlich \begin{align} - \cos c = \cos a \cdot \cos b \ \text{wenn} \nonumber & - \alpha = \frac{\pi}{2} \nonumber + \cos(a)&= \cos(b)\cdot \cos(c) + \sin(b) \cdot \sin(c)\cdot \cos(\alpha) \\ + 1-\frac{a^2}{2} &= \bigg[1-\frac{b^2}{2}\bigg]\bigg[1-\frac{c^2}{2}\bigg]+bc\cdot\cos(\alpha) \\ + \xcancel{1}-\frac{a^2}{2} &= \xcancel{1}-\frac{b^2}{2}-\frac{c^2}{2} \xcancel{+\frac{b^2c^2}{4}}+bc \cdot \cos(\alpha)\intertext{Höhere Potenzen vernachlässigen} + a^2&=b^2+c^2-2bc \cdot \cos(\alpha) \end{align} + + \ No newline at end of file -- cgit v1.2.1 From 537a80724031881b7ca7e84873d8f189fe70db45 Mon Sep 17 00:00:00 2001 From: "ENEZ-PC\\erdem" Date: Tue, 24 May 2022 16:23:00 +0200 Subject: Revert "Korrektur (noch nicht fertig)" This reverts commit ebe0085df81f3190423e14e6a48fc9d17550e417. --- buch/papers/nav/einleitung.tex | 2 +- buch/papers/nav/flatearth.tex | 3 +- buch/papers/nav/main.tex | 1 - buch/papers/nav/nautischesdreieck.tex | 89 ++++++++++++++++--------------- buch/papers/nav/packages.tex | 3 +- buch/papers/nav/sincos.tex | 6 +-- buch/papers/nav/trigo.tex | 99 +++++++++++++---------------------- 7 files changed, 87 insertions(+), 116 deletions(-) diff --git a/buch/papers/nav/einleitung.tex b/buch/papers/nav/einleitung.tex index 8eb4481..aafa107 100644 --- a/buch/papers/nav/einleitung.tex +++ b/buch/papers/nav/einleitung.tex @@ -3,7 +3,7 @@ \section{Einleitung} Heutzutage ist die Navigation ein Teil des Lebens. Man sendet dem Kollegen seinen eigenen Standort, um sich das ewige Erklären zu sparen oder gibt die Adresse des Ziels ein, damit man seinen Aufenthaltsort zum Beispiel auf einer riesigen Wiese am See findet. -Dies wird durch Technologien wie Funknavigation, welches ein auf Laufzeitmessung beruhendes Hyperbelverfahren mit Langwellen ist, oder die verbreitete Satellitennavigation, welche vier Satelliten für eine Messung zur Standortbestimmung nutzt. +Dies wird durch Technologien wie Funknavigation, welches ein auf Langzeitmessung beruhendes Hyperbelverfahren mit Langwellen ist oder die verbreitete Satellitennavigation, welche vier Satelliten für eine Messung zur Standortbestimmung nutzt. Vor all diesen technologischen Fortschritten gab es lediglich die Astronavigation, welche heute noch auf Schiffen verwendet wird im Falle eines Stromausfalls. Aber wie funktioniert die Navigation mit den Sternen? Welche Hilfsmittel benötigt man, welche Rolle spielt die Mathematik und weshalb kann die Erde nicht flach sein? In diesem Kapitel werden genau diese Fragen mithilfe des nautischen Dreiecks, der sphärischen Trigonometrie und einigen Hilfsmitteln und Messgeräten beantwortet. \ No newline at end of file diff --git a/buch/papers/nav/flatearth.tex b/buch/papers/nav/flatearth.tex index 3b08e8d..5bfc1b7 100644 --- a/buch/papers/nav/flatearth.tex +++ b/buch/papers/nav/flatearth.tex @@ -17,9 +17,10 @@ Eratosthenes konnte etwa 100 Jahre später den Erdumfang berechnen. Er beobachtete, dass die Sonne in Syene mittags im Zenit steht und gleichzeitig in Alexandria unter einem Winkel einfällt. Mithilfe der Trigonometrie konnte er mit dem Abstand der Städte und dem Einfallswinkel den Umfang berechnen. -Der Kartograph Gerhard Mercator projizierte die Erdkugel wie in Abbildung 21.1 dargestellt auf ein Papier und erstellte so eine winkeltreue Karte. +Der Kartograph Gerhard Mercator projizierte die Erdkugel auf ein Papier und erstellte so eine winkeltreue Karte. Jedoch wurden die Länder, die einen grösseren Abstand zum Äquator haben vergrössert, damit die Winkel stimmen können. Wurde man also nun davon ausgehen, dass die Erde flach ist so würden wir nie dort ankommen wo wir es wollen. + Dies sieht man zum Beispiel sehr gut, wenn man die Anwendung Google Earth und eine Weltkarte vergleicht. Grönland ist auf der Weltkarte so gross wie Afrika. In der Anwendung Google Earth jedoch ist Grönland etwa so gross wie Algerien. diff --git a/buch/papers/nav/main.tex b/buch/papers/nav/main.tex index 4c52547..e16dc2a 100644 --- a/buch/papers/nav/main.tex +++ b/buch/papers/nav/main.tex @@ -19,4 +19,3 @@ \printbibliography[heading=subbibliography] \end{refsection} - diff --git a/buch/papers/nav/nautischesdreieck.tex b/buch/papers/nav/nautischesdreieck.tex index 36e9c99..c239d64 100644 --- a/buch/papers/nav/nautischesdreieck.tex +++ b/buch/papers/nav/nautischesdreieck.tex @@ -4,26 +4,49 @@ Die Himmelskugel ist eine gedachte Kugel, welche die Erde und dessen Beobachter Der Zenit ist jener Punkt, der vom Erdmittelpunkt durch denn eigenen Standort an die Himmelskugel verlängert wird. Ein Gestirn ist ein Planet oder ein Fixstern, zu welchen es diverse Jahrbücher mit allen astronomischen Eigenschaften gibt. Der Himmelspol ist der Nordpol an die Himmelskugel projiziert. -Das nautische Dreieck hat die Ecken Zenit, Gestirn und Himmelspol, wie man in der Abbildung 21.5 sehen kann. +Das nautische Dreieck definiert sich durch folgende Ecken: Zenit, Gestirn und Himmelspol. Ursprünglich ist das nautische Dreieck ein Hilfsmittel der sphärischen Astronomie um die momentane Position eines Fixsterns oder Planeten an der Himmelskugel zu bestimmen. -\subsection{Das Bilddreieck} +Für die Definition gilt: +\begin{center} + \begin{tabular}{ c c c } + Winkel && Name / Beziehung \\ + \hline + $\alpha$ && Rektaszension \\ + $\delta$ && Deklination \\ + $\theta$ && Sternzeit von Greenwich\\ + $\phi$ && Geographische Breite\\ + $\tau=\theta-\alpha$ && Stundenwinkel und Längengrad des Gestirns. \\ + $a$ && Azimut\\ + $h$ && Höhe + \end{tabular} +\end{center} + +\begin{itemize} + \item Seitenlänge Zenit zu Himmelspol $= \frac{\pi}{2} - \phi $ + \item Seitenlänge Himmelspol zu Gestirn $= \frac{\pi}{2} - \delta$ + \item Seitenlänge Zenit zu Gestirn $= \frac{\pi}{2} - h$ + \item Winkel von Zenit zu Himmelsnordpol zu Gestirn$=\pi - \alpha$ + \item Winkel von Himmelsnordpol zu Zenit und Gestirn$= \tau$ +\end{itemize} + + +\subsection{Zusammenhang des nautischen Dreiecks und des Kugeldreiecks auf der Erdkugel} \begin{figure} \begin{center} - \includegraphics[width=8cm]{papers/nav/bilder/kugel3.png} + \includegraphics[height=5cm,width=8cm]{papers/nav/bilder/kugel3.png} \caption[Nautisches Dreieck]{Nautisches Dreieck} \end{center} \end{figure} - Man kann das nautische Dreieck auf die Erdkugel projizieren. -Dieses Dreieck nennt man dann Bilddreieck. -Als Bildpunkt wird in der astronomischen Navigation der Punkt bezeichnet, an dem eine gedachte Linie vom Mittelpunkt eines beobachteten Gestirns zum Mittelpunkt der Erde die Erdoberfläche schneidet. -Die Projektion auf der Erdkugel hat die Ecken Nordpol, Standort und Bildpunkt. + +Wie man in der Abbildung 21.4 sieht, liegt das nautische Dreieck auf der Himmelskugel mit den Ecken Zenit, Gestirn und Himmelsnordpol. +Das selbe Dreieck kann man aber auch auf die Erdkugel projizieren. Als Bildpunkt wird in der astronomischen Navigation der Punkt bezeichnet, an dem eine gedachte Linie vom Mittelpunkt eines beobachteten Gestirns zum Mittelpunkt der Erde die Erdoberfläche schneidet. Die Projektion auf der Erdkugel hat die Ecken Nordpol, Standort und Bildpunkt. \section{Standortbestimmung ohne elektronische Hilfsmittel} Um den eigenen Standort herauszufinden, wird in diesem Kapitel die Projektion des nautische Dreiecks auf die Erdkugel zur Hilfe genommen. Mithilfe eines Sextanten, einem Jahrbuch und der sphärischen Trigonometrie kann man dann die Längen- und Breitengrade des eigenen Standortes bestimmen. -Was ein Sextant und ein Jahrbuch ist, wird im Abschnitt 21.6.3 erklärt. +Was ein Sextant und ein Jahrbuch ist, wird im Kapitel 21.6 erklärt. \begin{figure} \begin{center} \includegraphics[width=10cm]{papers/nav/bilder/dreieck.pdf} @@ -36,8 +59,8 @@ Was ein Sextant und ein Jahrbuch ist, wird im Abschnitt 21.6.3 erklärt. \subsection{Ecke $P$ und $A$} Unser eigener Standort ist der gesuchte Ecke $P$ und die Ecke $A$ ist in unserem Fall der Nordpol. -Der Vorteil an der Idee des nautischen Dreiecks ist, dass eine Ecke immer der Nordpol ist. -Somit ist diese Ecke immer bekannt und nur deswegen sind die Zusammenhänge von Rektaszension, Sternzeit und Deklination so einfach. +Der Vorteil ander Idee des nautischen Dreiecks ist, dass eine Ecke immer der Nordpol ist. +Somit ist diese Ecke immer bekannt und nur deswegen sind die Zusammenhänge von Rektaszension, Sternzeit und Deklination so simpel. \subsection{Ecke $B$ und $C$ - Bildpunkt $X$ und $Y$} Für die Standortermittlung benötigt man als weiteren Punkt ein Gestirn bzw. seinen Bildpunkt auf der Erdkugel. @@ -46,8 +69,8 @@ Es gibt diverse Gestirne, die man nutzen kann wie zum Beispiel die Sonne, der Mo Die Bildpunkte von den beiden Gestirnen $X$ und $Y$ bilden die beiden Ecken $B$ und $C$ im Dreieck der Abbildung 21.5. \subsection{Ephemeriden} -Zu all diesen Gestirnen gibt es Ephemeriden. -Diese enthalten die Rektaszensionen und Deklinationen in Abhängigkeit von der Zeit. +Zu all diesen Gestirnen gibt es Ephemeriden, die man auch Jahrbücher nennt. +In diesen findet man Begriffe wie Rektaszension, Deklination und Sternzeit. \begin{figure} \begin{center} @@ -60,24 +83,25 @@ Diese enthalten die Rektaszensionen und Deklinationen in Abhängigkeit von der Z Die Deklination $\delta$ beschreibt den Winkel zwischen dem Himmelsäquator und Gestirn und entspricht dem Breitengrad des Gestirns. \subsubsection{Rektaszension und Sternzeit} -Die Rektaszension $\alpha$ gibt an, in welchem Winkel das Gestirn zum Frühlingspunkt, welcher der Nullpunkt auf dem Himmelsäquator ist, steht und geht vom Koordinatensystem der Himmelskugel aus. - +Die Rektaszension $\alpha$ gibt an, in welchem Winkel das Gestirn zum Frühlingspunkt steht und geht vom Koordinatensystem der Himmelskugel aus. +Der Frühlungspunkt ist der Nullpunkt auf dem Himmelsäquator. Die Tatsache, dass sich die Himmelskugel ca. vier Minuten schneller um die eigene Achse dreht als die Erdkugel, stellt hier ein kleines Problem dar. Die Lösung ist die Sternzeit. -Mit dieser können wir die schnellere Drehung der Himmelskugel ausgleichen und können die am Frühlingspunkt (21. März) 12:00 Uhr ist die Sternzeit $\theta = 0$. +Mit dieser können wir die schnellere Drehung der Himmelskugel ausgleichen und können die +Am Frühlingspunkt (21. März) 12:00 Uhr ist die Sternzeit +$\theta = 0$. Die Sternzeit geht vom Frühlungspunkt aus, an welchem die Sonne den Himmelsäquator schneidet. Für die Standortermittlung auf der Erdkugel ist es am einfachsten, wenn man die Sternzeit von Greenwich berechnet. -Für die Sternzeit von Greenwich $\theta$ braucht man als erstes das Julianische Datum $T$ vom aktuellen Tag, welches sich leicht nachschlagen lässt. +Für die Sternzeit von Greenwich $\theta $braucht man als erstes das Julianische Datum $T$ vom aktuellen Tag, welches sich leicht recherchieren lässt. Im Anschluss berechnet man die Sternzeit von Greenwich \[\theta = 6^h 41^m 50^s,54841 + 8640184^s,812866 \cdot T + 0^s,093104 \cdot T^2 - 0^s,0000062 \cdot T^3.\] -Wenn man die Sternzeit von Greenwich ausgerechnet hat, kann man den Längengrad des Gestirns $\lambda = \theta - \alpha$ bestimmen, wobei $\alpha$ die Rektaszension und $\theta$ die Sternzeit von Greenwich ist. +Wenn man die Sternzeit von Greenwich ausgerechnet hat, kann man den Längengrad des Gestirns $\lambda = \theta - \alpha$ mithilfe der Rektaszension und Sternzeit von Greenwich bestimmen. Dies gilt analog auch für das zweite Gestirn. \subsubsection{Sextant} -Ein Sextant ist ein nautisches Messinstrument, mit dem man den Winkel zwischen der Blickrichtung zu weit entfernten Objekten bestimmen kann. Es wird vor allem der Winkelabstand zu Gestirnen gemessen. -Man benutzt ihn vor allem für die astronomische Navigation auf See. +Ein Sextant ist ein nautisches Messinstrument, mit dem man den Winkel zwischen der Blickrichtung zu weit entfernten Objekten bestimmen kann, insbesondere den Winkelabstand zu einem Gestirn vom Horizont. Man nutze ihn vor allem für die astronomische Navigation auf See. \begin{figure} \begin{center} @@ -85,32 +109,7 @@ Man benutzt ihn vor allem für die astronomische Navigation auf See. \caption[Sextant]{Sextant} \end{center} \end{figure} -\subsubsection{Eingeschaften} -Für das nautische Dreieck gibt es folgende Eigenschaften: -\begin{center} - \begin{tabular}{ l c l } - Legende && Name / Beziehung \\ - \hline - $\alpha$ && Rektaszension \\ - $\delta$ && Deklination \\ - $\theta$ && Sternzeit von Greenwich\\ - $\phi$ && Geographische Breite\\ - $\tau=\theta-\alpha$ && Stundenwinkel und Längengrad des Gestirns. \\ - $a$ && Azimut\\ - $h$ && Höhe - \end{tabular} -\end{center} -\begin{center} - \begin{tabular}{ l c l } - Eigenschaften \\ - \hline - Seitenlänge Zenit zu Himmelspol= && $\frac{\pi}{2} - \phi$ \\ - Seitenlänge Himmelspol zu Gestirn= && $\frac{\pi}{2} - \delta$ \\ - Seitenlänge Himmelspol zu Gestirn= && $\frac{\pi}{2} - h$ \\ - Winkel von Zenit zu Himmelsnordpol zu Gestirn= && $\pi-\alpha$\\ - Winkel von Himmelsnordpol zu Zenit zu Gestirn= && $\tau$\\ - \end{tabular} -\end{center} + \subsection{Bestimmung des eigenen Standortes $P$} Nun hat man die Koordinaten der beiden Gestirne und man weiss die Koordinaten des Nordpols. Damit wir unseren Standort bestimmen können, bilden wir zuerst das Dreieck $ABC$, dann das Dreieck $BPC$ und zum Schluss noch das Dreieck $ABP$. diff --git a/buch/papers/nav/packages.tex b/buch/papers/nav/packages.tex index f2e6132..5b87303 100644 --- a/buch/papers/nav/packages.tex +++ b/buch/papers/nav/packages.tex @@ -8,5 +8,4 @@ % following example %\usepackage{packagename} -\usepackage{amsmath} -\usepackage{cancel} \ No newline at end of file +\usepackage{amsmath} \ No newline at end of file diff --git a/buch/papers/nav/sincos.tex b/buch/papers/nav/sincos.tex index a1653e8..d56d482 100644 --- a/buch/papers/nav/sincos.tex +++ b/buch/papers/nav/sincos.tex @@ -7,14 +7,12 @@ Jedoch konnten sie dieses Problem nicht lösen. Die Geschichte der sphärischen Trigonometrie ist daher eng mit der Astronomie verknüpft. Ca. 350 vor Christus dachten die Griechen über Kugelgeometrie nach und sie wurde zu einer Hilfswissenschaft der Astronomen. Zwischen 190 v. Chr. und 120 v. Chr. lebte ein griechischer Astronom names Hipparchos. -Dieser entwickelte unter anderem die Chordentafeln, welche die Chord - Funktionen, auch Chord genannt, beinhalten und im Abschnitt 3.1.1 beschrieben sind. +Dieser entwickelte unter anderem die Chordentafeln, welche die Chord - Funktionen, auch Chord genannt, beinhalten. Chord ist der Vorgänger der Sinusfunktion und galt damals als wichtigste Grundlage der Trigonometrie. -In dieser Zeit wurden auch die ersten Sternenkarten angefertigt. Damals kannte man die Sinusfunktionen noch nicht. +In dieser Zeit wurden auch die ersten Sternenkarten angefertigt, jedoch kannte man damals die Sinusfunktion noch nicht. Aus Indien stammten die ersten Ansätze zu den Kosinussätzen. Aufbauend auf den indischen und griechischen Forschungen entwickeln die Araber um das 9. Jahrhundert den Sinussatz. -Die Definition der trigonometrischen Funktionen ermöglicht nur, rechtwinklige Dreiecke zu berechnen. -Die Beziehung zwischen Seiten und Winkeln sind komplizierter und als Sinus- und Kosinussätze bekannt. Doch ein paar weitere Jahrhunderte vergingen bis zu diesem Thema wieder verstärkt Forschung betrieben wurde, da im 15. Jahrhundert grosse Entdeckungsreisen, hauptsächlich per Schiff, erfolgten und die Orientierung mit Sternen vermehrt an Wichtigkeit gewann. Man nutzte für die Kartographie nun die Kugelgeometrie, um die Genauigkeit zu erhöhen. Der Sinussatz, die Tangensfunktion und der neu entwickelte Seitenkosinussatz wurden in dieser Zeit bereits verwendet und im darauffolgenden Jahrhundert folgte der Winkelkosinussatz. diff --git a/buch/papers/nav/trigo.tex b/buch/papers/nav/trigo.tex index aca8bd2..ce367f6 100644 --- a/buch/papers/nav/trigo.tex +++ b/buch/papers/nav/trigo.tex @@ -1,13 +1,16 @@ \section{Sphärische Trigonometrie} +In der sphärischen Trigonometrie gibt es eine Symetrie zwischen Seiten und Winkel, also zu jedem Satz über Seiten und Winkel gibt es einen entsprechenden Satz, mit dem man Winkel durch Seiten und Seiten durch Winkel ersetzt hat. +Dabei gibt es folgenden Zusammenhang zwischen der ebenen- und sphärischen Trigonometrie: + \subsection{Das Kugeldreieck} -Damit man die Definition des Kugeldreiecks versteht, müssen wir zuerst Begriffe wie Grosskreisebene und Grosskreisbögen verstehen. -Ein Grosskreis ist ein grösstmöglicher Kreis auf einer Kugeloberfläche. +Damit man die Definition des Kugeldreiecks versteht, müssen wir zuerst Begriffe wie "Grosskreisebene" und "Grosskreisbögen" verstehen. +Ein Grosskreis ist ein größtmöglicher Kreis auf einer Kugeloberfläche. Sein Mittelpunkt fällt immer mit dem Mittelpunkt der Kugel zusammen und ein Schnitt auf dem Großkreis teilt die Kugel in jedem Fall in zwei gleich grosse Hälften. Da es unendlich viele Möglichkeiten gibt, eine Kugel so zu zerschneiden, dass die Schnittebene den Kugelmittelpunkt trifft, gibt es auch unendlich viele Grosskreise. -Grosskreisbögen sind die kürzesten Verbindungslinien zwischen zwei Punkten auf der Kugel. +Grosskreisbögen sind die Verbindungslinien zwischen zwei Punkten auf der Kugel, welche auch "Seiten" eines Kugeldreiecks gennant werden. -Werden drei voneinander verschiedene Punkte, die sich nicht auf derselben Grosskreisebene befinden, mit Grosskreisbögen verbunden werden, so entsteht ein Kugeldreieck $ABC$. +Werden drei voneinander verschiedene Punkte, die sich nicht auf derselben Grosskreisebene befinden, mit Grosskreisbögen verbunden, so entsteht ein Kugeldreieck $ABC$. Für ein Kugeldreieck gilt, dass die Summe der drei Seiten kleiner als $2\pi$ aber grösser als 0 ist. $A$, $B$ und $C$ sind die Ecken des Dreiecks und dessen Seiten sind die Grosskreisbögen zwischen den Eckpunkten (siehe Abbildung 21.2). @@ -16,6 +19,18 @@ Laut dieser Definition ist die Seite $c$ der Winkel $AMB$, wobei der Punkt $M$ d Man kann bei Kugeldreiecken nicht so einfach unterscheiden, was Innen oder Aussen ist. Wenn man drei Eckpunkte miteinander verbindet, ergeben sich immer 16 Kugeldreiecke. +Jenes Kugeldreieck mit den Seitenlängen $a, b, c < \pi$ und den Winkeln $\alpha, \beta, \gamma < \pi$ nennt man Eulersches Dreieck. + +Es gibt einen Zusammenhang zwischen der ebenen- und sphärischen Trigonometrie, wobei folgend $a$ eine Seite beschreibt: +\begin{center} + \begin{tabular}{ccc} + Eben & $\leftrightarrow$ & sphärisch \\ + \hline + $a$ & $\leftrightarrow$ & $\sin \ a$ \\ + + $a^2$ & $\leftrightarrow$ & $-\cos \ a$ \\ + \end{tabular} +\end{center} \begin{figure} \begin{center} @@ -26,11 +41,8 @@ Wenn man drei Eckpunkte miteinander verbindet, ergeben sich immer 16 Kugeldreiec \end{figure} \subsection{Rechtwinkliges Dreieck und rechtseitiges Dreieck} -In der sphärischen Trigonometrie gibt es eine Symetrie zwischen Seiten und Winkel, also zu jedem Satz über Seiten und Winkel gibt es einen entsprechenden Satz, mit dem man Winkel durch Seiten und Seiten durch Winkel ersetzt hat. - Wie auch im ebenen Dreieck gibt es beim Kugeldreieck auch ein rechtwinkliges Kugeldreieck, bei dem ein Winkel $\frac{\pi}{2}$ ist. -Ein Rechtseitiges Dreieck gibt es jedoch nur beim Kugeldreieck, weil dort eine Seitenlänge $\frac{\pi}{2}$ lang sein muss, wie man in der Abbildung 21.3 sehen kann. - +Ein Rechtseitiges Dreieck gibt es jedoch nur beim Kugeldreieck, weil dort eine Seitenlänge $\frac{\pi}{2}$ lang sein muss. \begin{figure} \begin{center} @@ -39,7 +51,7 @@ Ein Rechtseitiges Dreieck gibt es jedoch nur beim Kugeldreieck, weil dort eine S \end{center} \end{figure} -\subsection{Winkelsumme und Flächeninhalt} +\subsection{Winkelsumme} \begin{figure} \begin{center} @@ -52,9 +64,9 @@ Ein Rechtseitiges Dreieck gibt es jedoch nur beim Kugeldreieck, weil dort eine S Die Winkel eines Kugeldreiecks sind die, welche die Halbtangenten in den Eckpunkten einschliessen. Für die Summe der Innenwinkel gilt \begin{align} - \alpha+\beta+\gamma &= \frac{F}{r^2} + \pi \quad \text{und} \quad \alpha+\beta+\gamma > \pi, \nonumber + \alpha+\beta+\gamma &= \frac{F}{r^2} + \pi \ \text{und} \ \alpha+\beta+\gamma > \pi, \nonumber \end{align} -wobei $F$ der Flächeninhalt des Kugeldreiecks ist. +wobei F der Flächeninhalt des Kugeldreiecks ist. \subsubsection{Sphärischer Exzess} Der sphärische Exzess \begin{align} @@ -65,69 +77,32 @@ beschreibt die Abweichung der Innenwinkelsumme von $\pi$ und ist proportional zu \subsubsection{Flächeninnhalt} Mithilfe des Radius $r$ und dem sphärischen Exzess $\epsilon$ gilt für den Flächeninhalt \[ F=\frac{\pi \cdot r^2}{\frac{\pi}{2}} \cdot \epsilon\]. +\subsection{Sphärischer Sinussatz} +In jedem Dreieck ist das Verhältnis des Sinus einer Seite zum Sinus des Gegenwinkels konstant. +Das bedeutet, dass -\subsection{Seiten und Winkelberechnung} -Es gibt in der sphärischen Trigonometrie eigentlich gar keinen Satz des Pythagoras, wie man ihn aus der zweidimensionalen Geometrie kennt. -Es gibt aber auch einen Satz, der alle drei Seiten eines rechtwinkligen Kugeldreiecks, nicht aber für das rechtseitige Kugeldreieck, in eine Beziehung bringt und zum jetzigen Punkt noch unklar ist, weshalb dieser Satz so aussieht. -Die Approximation folgt noch. -Es gilt nämlich: -\begin{align} - \cos c = \cos a \cdot \cos b \quad \text{wenn} \nonumber & - \quad \alpha = \frac{\pi}{2} \nonumber -\end{align} - -\subsubsection{Approximation von kleinen Dreiecken} -Die Sätze in der ebenen Trigonometrie sind eigentlich Approximationen der sphärischen Trigonometrie. -So ist der Sinussatz in der Ebene nur eine Annäherung des sphärischen Sinussatzes. Das Gleiche gilt für den Kosinussatz und dem Satz des Pythagoras. -So kann mit dem Taylorpolynom 2. Grades den Sinus und den Kosinus vom Sphärischen in die Ebene approximieren: -\begin{align} - \sin(a) &\approx a \nonumber \intertext{und} - \cos(a)&\approx 1-\frac{a^2}{2}.\nonumber -\end{align} -Es gibt ebenfalls folgende Approximierung der Seiten von der Sphäre in die Ebene: -\begin{align} - a &\approx \sin(a) \nonumber \intertext{und} - a^2 &\approx 1-\cos(a). \nonumber -\end{align} -Die Korrespondenzen zwischen der ebenen- und sphärischen Trigonometrie werden in den kommenden Abschnitten erläutert. - -\subsubsection{Sphärischer Satz des Pythagoras} -Die Korrespondenz \[ a^2 \approx 1-cos(a)\] liefert unter Anderem einen entsprechenden Satz des Pythagoras, nämlich - -\begin{align} - \cos(a)\cdot \cos(b) &= \cos(c) \\ - \bigg[1-\frac{a^2}{2}\bigg] \cdot \bigg[1-\frac{b^2}{2}\bigg] &= 1-\frac{c^2}{2} \\ - \xcancel{1}- \frac{a^2}{2} - \frac{b^2}{2} + \xcancel{\frac{a^2b^2}{4}}&= \xcancel{1}- \frac{c^2}{2} \intertext{Höhere Potenzen vernachlässigen} - -a^2-b^2 &=-c^2\\ - a^2+b^2&=c^2 -\end{align} - -\subsubsection{Sphärischer Sinussatz} -Den sphärischen Sinussatz \begin{align} \frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)} \nonumber \end{align} -kann man ebenfalls mit der Korrespondenz \[a \approx \sin(a) \] zum entsprechenden ebenen Sinussatz \[\frac{a}{\sin (\alpha)} =\frac{b}{\sin (\beta)} = \frac{c}{\sin (\gamma)}\] approximieren. +auch beim Kugeldreieck gilt. - -\subsubsection{Sphärische Kosinussätze} -In der sphärischen Trigonometrie gibt es den Seitenkosinussatz +\subsection{Sphärische Kosinussätze} +Auch in der sphärischen Trigonometrie gibt es den Seitenkosinussatz \begin{align} \cos \ a = \cos b \cdot \cos c + \sin b \cdot \sin c \cdot \cos \alpha \nonumber \end{align} %Seitenkosinussatz und den Winkelkosinussatz \begin{align} - \cos \gamma = -\cos \alpha \cdot \cos \beta + \sin \alpha \cdot \sin \beta \cdot \cos c, \nonumber -\end{align} der nur in der sphärischen Trigonometrie vorhanden ist. + \cos \gamma = -\cos \alpha \cdot \cos \beta + \sin \alpha \cdot \sin \beta \cdot \cos c. \nonumber +\end{align} -Analog gibt es auch beim Seitenkosinussatz eine Korrespondenz zu \[ a^2 \leftrightarrow 1-\cos(a),\] die den ebenen Kosinussatz herleiten lässt, nämlich +\subsection{Sphärischer Satz des Pythagoras für das rechtwinklige Kugeldreieck} +Es gibt in der sphärischen Trigonometrie eigentlich garkeinen "Satz des Pythagoras", wie man ihn aus der zweidimensionalen Geometrie kennt. +In der sphärischen Trigonometrie gibt es aber auch einen Satz, der alle drei Seiten eines rechtwinkligen Kugeldreiecks, nicht aber für das rechtseitige Kugeldreieck, in eine Beziehung bringt. +Es gilt nämlich: \begin{align} - \cos(a)&= \cos(b)\cdot \cos(c) + \sin(b) \cdot \sin(c)\cdot \cos(\alpha) \\ - 1-\frac{a^2}{2} &= \bigg[1-\frac{b^2}{2}\bigg]\bigg[1-\frac{c^2}{2}\bigg]+bc\cdot\cos(\alpha) \\ - \xcancel{1}-\frac{a^2}{2} &= \xcancel{1}-\frac{b^2}{2}-\frac{c^2}{2} \xcancel{+\frac{b^2c^2}{4}}+bc \cdot \cos(\alpha)\intertext{Höhere Potenzen vernachlässigen} - a^2&=b^2+c^2-2bc \cdot \cos(\alpha) + \cos c = \cos a \cdot \cos b \ \text{wenn} \nonumber & + \alpha = \frac{\pi}{2} \nonumber \end{align} - - \ No newline at end of file -- cgit v1.2.1 From 7776e5829bf5da82b6b3fc5478ed05c6c9a66d29 Mon Sep 17 00:00:00 2001 From: "ENEZ-PC\\erdem" Date: Tue, 24 May 2022 16:23:21 +0200 Subject: Revert "Revert "Korrektur (noch nicht fertig)"" This reverts commit 2fd00f1b2f0d123fdb1fb1a93b5e4d361587329c. --- buch/papers/nav/einleitung.tex | 2 +- buch/papers/nav/flatearth.tex | 3 +- buch/papers/nav/main.tex | 1 + buch/papers/nav/nautischesdreieck.tex | 89 +++++++++++++++---------------- buch/papers/nav/packages.tex | 3 +- buch/papers/nav/sincos.tex | 6 ++- buch/papers/nav/trigo.tex | 99 ++++++++++++++++++++++------------- 7 files changed, 116 insertions(+), 87 deletions(-) diff --git a/buch/papers/nav/einleitung.tex b/buch/papers/nav/einleitung.tex index aafa107..8eb4481 100644 --- a/buch/papers/nav/einleitung.tex +++ b/buch/papers/nav/einleitung.tex @@ -3,7 +3,7 @@ \section{Einleitung} Heutzutage ist die Navigation ein Teil des Lebens. Man sendet dem Kollegen seinen eigenen Standort, um sich das ewige Erklären zu sparen oder gibt die Adresse des Ziels ein, damit man seinen Aufenthaltsort zum Beispiel auf einer riesigen Wiese am See findet. -Dies wird durch Technologien wie Funknavigation, welches ein auf Langzeitmessung beruhendes Hyperbelverfahren mit Langwellen ist oder die verbreitete Satellitennavigation, welche vier Satelliten für eine Messung zur Standortbestimmung nutzt. +Dies wird durch Technologien wie Funknavigation, welches ein auf Laufzeitmessung beruhendes Hyperbelverfahren mit Langwellen ist, oder die verbreitete Satellitennavigation, welche vier Satelliten für eine Messung zur Standortbestimmung nutzt. Vor all diesen technologischen Fortschritten gab es lediglich die Astronavigation, welche heute noch auf Schiffen verwendet wird im Falle eines Stromausfalls. Aber wie funktioniert die Navigation mit den Sternen? Welche Hilfsmittel benötigt man, welche Rolle spielt die Mathematik und weshalb kann die Erde nicht flach sein? In diesem Kapitel werden genau diese Fragen mithilfe des nautischen Dreiecks, der sphärischen Trigonometrie und einigen Hilfsmitteln und Messgeräten beantwortet. \ No newline at end of file diff --git a/buch/papers/nav/flatearth.tex b/buch/papers/nav/flatearth.tex index 5bfc1b7..3b08e8d 100644 --- a/buch/papers/nav/flatearth.tex +++ b/buch/papers/nav/flatearth.tex @@ -17,10 +17,9 @@ Eratosthenes konnte etwa 100 Jahre später den Erdumfang berechnen. Er beobachtete, dass die Sonne in Syene mittags im Zenit steht und gleichzeitig in Alexandria unter einem Winkel einfällt. Mithilfe der Trigonometrie konnte er mit dem Abstand der Städte und dem Einfallswinkel den Umfang berechnen. -Der Kartograph Gerhard Mercator projizierte die Erdkugel auf ein Papier und erstellte so eine winkeltreue Karte. +Der Kartograph Gerhard Mercator projizierte die Erdkugel wie in Abbildung 21.1 dargestellt auf ein Papier und erstellte so eine winkeltreue Karte. Jedoch wurden die Länder, die einen grösseren Abstand zum Äquator haben vergrössert, damit die Winkel stimmen können. Wurde man also nun davon ausgehen, dass die Erde flach ist so würden wir nie dort ankommen wo wir es wollen. - Dies sieht man zum Beispiel sehr gut, wenn man die Anwendung Google Earth und eine Weltkarte vergleicht. Grönland ist auf der Weltkarte so gross wie Afrika. In der Anwendung Google Earth jedoch ist Grönland etwa so gross wie Algerien. diff --git a/buch/papers/nav/main.tex b/buch/papers/nav/main.tex index e16dc2a..4c52547 100644 --- a/buch/papers/nav/main.tex +++ b/buch/papers/nav/main.tex @@ -19,3 +19,4 @@ \printbibliography[heading=subbibliography] \end{refsection} + diff --git a/buch/papers/nav/nautischesdreieck.tex b/buch/papers/nav/nautischesdreieck.tex index c239d64..36e9c99 100644 --- a/buch/papers/nav/nautischesdreieck.tex +++ b/buch/papers/nav/nautischesdreieck.tex @@ -4,49 +4,26 @@ Die Himmelskugel ist eine gedachte Kugel, welche die Erde und dessen Beobachter Der Zenit ist jener Punkt, der vom Erdmittelpunkt durch denn eigenen Standort an die Himmelskugel verlängert wird. Ein Gestirn ist ein Planet oder ein Fixstern, zu welchen es diverse Jahrbücher mit allen astronomischen Eigenschaften gibt. Der Himmelspol ist der Nordpol an die Himmelskugel projiziert. -Das nautische Dreieck definiert sich durch folgende Ecken: Zenit, Gestirn und Himmelspol. +Das nautische Dreieck hat die Ecken Zenit, Gestirn und Himmelspol, wie man in der Abbildung 21.5 sehen kann. Ursprünglich ist das nautische Dreieck ein Hilfsmittel der sphärischen Astronomie um die momentane Position eines Fixsterns oder Planeten an der Himmelskugel zu bestimmen. -Für die Definition gilt: -\begin{center} - \begin{tabular}{ c c c } - Winkel && Name / Beziehung \\ - \hline - $\alpha$ && Rektaszension \\ - $\delta$ && Deklination \\ - $\theta$ && Sternzeit von Greenwich\\ - $\phi$ && Geographische Breite\\ - $\tau=\theta-\alpha$ && Stundenwinkel und Längengrad des Gestirns. \\ - $a$ && Azimut\\ - $h$ && Höhe - \end{tabular} -\end{center} - -\begin{itemize} - \item Seitenlänge Zenit zu Himmelspol $= \frac{\pi}{2} - \phi $ - \item Seitenlänge Himmelspol zu Gestirn $= \frac{\pi}{2} - \delta$ - \item Seitenlänge Zenit zu Gestirn $= \frac{\pi}{2} - h$ - \item Winkel von Zenit zu Himmelsnordpol zu Gestirn$=\pi - \alpha$ - \item Winkel von Himmelsnordpol zu Zenit und Gestirn$= \tau$ -\end{itemize} - - -\subsection{Zusammenhang des nautischen Dreiecks und des Kugeldreiecks auf der Erdkugel} +\subsection{Das Bilddreieck} \begin{figure} \begin{center} - \includegraphics[height=5cm,width=8cm]{papers/nav/bilder/kugel3.png} + \includegraphics[width=8cm]{papers/nav/bilder/kugel3.png} \caption[Nautisches Dreieck]{Nautisches Dreieck} \end{center} \end{figure} - -Wie man in der Abbildung 21.4 sieht, liegt das nautische Dreieck auf der Himmelskugel mit den Ecken Zenit, Gestirn und Himmelsnordpol. -Das selbe Dreieck kann man aber auch auf die Erdkugel projizieren. Als Bildpunkt wird in der astronomischen Navigation der Punkt bezeichnet, an dem eine gedachte Linie vom Mittelpunkt eines beobachteten Gestirns zum Mittelpunkt der Erde die Erdoberfläche schneidet. Die Projektion auf der Erdkugel hat die Ecken Nordpol, Standort und Bildpunkt. + Man kann das nautische Dreieck auf die Erdkugel projizieren. +Dieses Dreieck nennt man dann Bilddreieck. +Als Bildpunkt wird in der astronomischen Navigation der Punkt bezeichnet, an dem eine gedachte Linie vom Mittelpunkt eines beobachteten Gestirns zum Mittelpunkt der Erde die Erdoberfläche schneidet. +Die Projektion auf der Erdkugel hat die Ecken Nordpol, Standort und Bildpunkt. \section{Standortbestimmung ohne elektronische Hilfsmittel} Um den eigenen Standort herauszufinden, wird in diesem Kapitel die Projektion des nautische Dreiecks auf die Erdkugel zur Hilfe genommen. Mithilfe eines Sextanten, einem Jahrbuch und der sphärischen Trigonometrie kann man dann die Längen- und Breitengrade des eigenen Standortes bestimmen. -Was ein Sextant und ein Jahrbuch ist, wird im Kapitel 21.6 erklärt. +Was ein Sextant und ein Jahrbuch ist, wird im Abschnitt 21.6.3 erklärt. \begin{figure} \begin{center} \includegraphics[width=10cm]{papers/nav/bilder/dreieck.pdf} @@ -59,8 +36,8 @@ Was ein Sextant und ein Jahrbuch ist, wird im Kapitel 21.6 erklärt. \subsection{Ecke $P$ und $A$} Unser eigener Standort ist der gesuchte Ecke $P$ und die Ecke $A$ ist in unserem Fall der Nordpol. -Der Vorteil ander Idee des nautischen Dreiecks ist, dass eine Ecke immer der Nordpol ist. -Somit ist diese Ecke immer bekannt und nur deswegen sind die Zusammenhänge von Rektaszension, Sternzeit und Deklination so simpel. +Der Vorteil an der Idee des nautischen Dreiecks ist, dass eine Ecke immer der Nordpol ist. +Somit ist diese Ecke immer bekannt und nur deswegen sind die Zusammenhänge von Rektaszension, Sternzeit und Deklination so einfach. \subsection{Ecke $B$ und $C$ - Bildpunkt $X$ und $Y$} Für die Standortermittlung benötigt man als weiteren Punkt ein Gestirn bzw. seinen Bildpunkt auf der Erdkugel. @@ -69,8 +46,8 @@ Es gibt diverse Gestirne, die man nutzen kann wie zum Beispiel die Sonne, der Mo Die Bildpunkte von den beiden Gestirnen $X$ und $Y$ bilden die beiden Ecken $B$ und $C$ im Dreieck der Abbildung 21.5. \subsection{Ephemeriden} -Zu all diesen Gestirnen gibt es Ephemeriden, die man auch Jahrbücher nennt. -In diesen findet man Begriffe wie Rektaszension, Deklination und Sternzeit. +Zu all diesen Gestirnen gibt es Ephemeriden. +Diese enthalten die Rektaszensionen und Deklinationen in Abhängigkeit von der Zeit. \begin{figure} \begin{center} @@ -83,25 +60,24 @@ In diesen findet man Begriffe wie Rektaszension, Deklination und Sternzeit. Die Deklination $\delta$ beschreibt den Winkel zwischen dem Himmelsäquator und Gestirn und entspricht dem Breitengrad des Gestirns. \subsubsection{Rektaszension und Sternzeit} -Die Rektaszension $\alpha$ gibt an, in welchem Winkel das Gestirn zum Frühlingspunkt steht und geht vom Koordinatensystem der Himmelskugel aus. -Der Frühlungspunkt ist der Nullpunkt auf dem Himmelsäquator. +Die Rektaszension $\alpha$ gibt an, in welchem Winkel das Gestirn zum Frühlingspunkt, welcher der Nullpunkt auf dem Himmelsäquator ist, steht und geht vom Koordinatensystem der Himmelskugel aus. + Die Tatsache, dass sich die Himmelskugel ca. vier Minuten schneller um die eigene Achse dreht als die Erdkugel, stellt hier ein kleines Problem dar. Die Lösung ist die Sternzeit. -Mit dieser können wir die schnellere Drehung der Himmelskugel ausgleichen und können die -Am Frühlingspunkt (21. März) 12:00 Uhr ist die Sternzeit -$\theta = 0$. +Mit dieser können wir die schnellere Drehung der Himmelskugel ausgleichen und können die am Frühlingspunkt (21. März) 12:00 Uhr ist die Sternzeit $\theta = 0$. Die Sternzeit geht vom Frühlungspunkt aus, an welchem die Sonne den Himmelsäquator schneidet. Für die Standortermittlung auf der Erdkugel ist es am einfachsten, wenn man die Sternzeit von Greenwich berechnet. -Für die Sternzeit von Greenwich $\theta $braucht man als erstes das Julianische Datum $T$ vom aktuellen Tag, welches sich leicht recherchieren lässt. +Für die Sternzeit von Greenwich $\theta$ braucht man als erstes das Julianische Datum $T$ vom aktuellen Tag, welches sich leicht nachschlagen lässt. Im Anschluss berechnet man die Sternzeit von Greenwich \[\theta = 6^h 41^m 50^s,54841 + 8640184^s,812866 \cdot T + 0^s,093104 \cdot T^2 - 0^s,0000062 \cdot T^3.\] -Wenn man die Sternzeit von Greenwich ausgerechnet hat, kann man den Längengrad des Gestirns $\lambda = \theta - \alpha$ mithilfe der Rektaszension und Sternzeit von Greenwich bestimmen. +Wenn man die Sternzeit von Greenwich ausgerechnet hat, kann man den Längengrad des Gestirns $\lambda = \theta - \alpha$ bestimmen, wobei $\alpha$ die Rektaszension und $\theta$ die Sternzeit von Greenwich ist. Dies gilt analog auch für das zweite Gestirn. \subsubsection{Sextant} -Ein Sextant ist ein nautisches Messinstrument, mit dem man den Winkel zwischen der Blickrichtung zu weit entfernten Objekten bestimmen kann, insbesondere den Winkelabstand zu einem Gestirn vom Horizont. Man nutze ihn vor allem für die astronomische Navigation auf See. +Ein Sextant ist ein nautisches Messinstrument, mit dem man den Winkel zwischen der Blickrichtung zu weit entfernten Objekten bestimmen kann. Es wird vor allem der Winkelabstand zu Gestirnen gemessen. +Man benutzt ihn vor allem für die astronomische Navigation auf See. \begin{figure} \begin{center} @@ -109,7 +85,32 @@ Ein Sextant ist ein nautisches Messinstrument, mit dem man den Winkel zwischen d \caption[Sextant]{Sextant} \end{center} \end{figure} - +\subsubsection{Eingeschaften} +Für das nautische Dreieck gibt es folgende Eigenschaften: +\begin{center} + \begin{tabular}{ l c l } + Legende && Name / Beziehung \\ + \hline + $\alpha$ && Rektaszension \\ + $\delta$ && Deklination \\ + $\theta$ && Sternzeit von Greenwich\\ + $\phi$ && Geographische Breite\\ + $\tau=\theta-\alpha$ && Stundenwinkel und Längengrad des Gestirns. \\ + $a$ && Azimut\\ + $h$ && Höhe + \end{tabular} +\end{center} +\begin{center} + \begin{tabular}{ l c l } + Eigenschaften \\ + \hline + Seitenlänge Zenit zu Himmelspol= && $\frac{\pi}{2} - \phi$ \\ + Seitenlänge Himmelspol zu Gestirn= && $\frac{\pi}{2} - \delta$ \\ + Seitenlänge Himmelspol zu Gestirn= && $\frac{\pi}{2} - h$ \\ + Winkel von Zenit zu Himmelsnordpol zu Gestirn= && $\pi-\alpha$\\ + Winkel von Himmelsnordpol zu Zenit zu Gestirn= && $\tau$\\ + \end{tabular} +\end{center} \subsection{Bestimmung des eigenen Standortes $P$} Nun hat man die Koordinaten der beiden Gestirne und man weiss die Koordinaten des Nordpols. Damit wir unseren Standort bestimmen können, bilden wir zuerst das Dreieck $ABC$, dann das Dreieck $BPC$ und zum Schluss noch das Dreieck $ABP$. diff --git a/buch/papers/nav/packages.tex b/buch/papers/nav/packages.tex index 5b87303..f2e6132 100644 --- a/buch/papers/nav/packages.tex +++ b/buch/papers/nav/packages.tex @@ -8,4 +8,5 @@ % following example %\usepackage{packagename} -\usepackage{amsmath} \ No newline at end of file +\usepackage{amsmath} +\usepackage{cancel} \ No newline at end of file diff --git a/buch/papers/nav/sincos.tex b/buch/papers/nav/sincos.tex index d56d482..a1653e8 100644 --- a/buch/papers/nav/sincos.tex +++ b/buch/papers/nav/sincos.tex @@ -7,12 +7,14 @@ Jedoch konnten sie dieses Problem nicht lösen. Die Geschichte der sphärischen Trigonometrie ist daher eng mit der Astronomie verknüpft. Ca. 350 vor Christus dachten die Griechen über Kugelgeometrie nach und sie wurde zu einer Hilfswissenschaft der Astronomen. Zwischen 190 v. Chr. und 120 v. Chr. lebte ein griechischer Astronom names Hipparchos. -Dieser entwickelte unter anderem die Chordentafeln, welche die Chord - Funktionen, auch Chord genannt, beinhalten. +Dieser entwickelte unter anderem die Chordentafeln, welche die Chord - Funktionen, auch Chord genannt, beinhalten und im Abschnitt 3.1.1 beschrieben sind. Chord ist der Vorgänger der Sinusfunktion und galt damals als wichtigste Grundlage der Trigonometrie. -In dieser Zeit wurden auch die ersten Sternenkarten angefertigt, jedoch kannte man damals die Sinusfunktion noch nicht. +In dieser Zeit wurden auch die ersten Sternenkarten angefertigt. Damals kannte man die Sinusfunktionen noch nicht. Aus Indien stammten die ersten Ansätze zu den Kosinussätzen. Aufbauend auf den indischen und griechischen Forschungen entwickeln die Araber um das 9. Jahrhundert den Sinussatz. +Die Definition der trigonometrischen Funktionen ermöglicht nur, rechtwinklige Dreiecke zu berechnen. +Die Beziehung zwischen Seiten und Winkeln sind komplizierter und als Sinus- und Kosinussätze bekannt. Doch ein paar weitere Jahrhunderte vergingen bis zu diesem Thema wieder verstärkt Forschung betrieben wurde, da im 15. Jahrhundert grosse Entdeckungsreisen, hauptsächlich per Schiff, erfolgten und die Orientierung mit Sternen vermehrt an Wichtigkeit gewann. Man nutzte für die Kartographie nun die Kugelgeometrie, um die Genauigkeit zu erhöhen. Der Sinussatz, die Tangensfunktion und der neu entwickelte Seitenkosinussatz wurden in dieser Zeit bereits verwendet und im darauffolgenden Jahrhundert folgte der Winkelkosinussatz. diff --git a/buch/papers/nav/trigo.tex b/buch/papers/nav/trigo.tex index ce367f6..aca8bd2 100644 --- a/buch/papers/nav/trigo.tex +++ b/buch/papers/nav/trigo.tex @@ -1,16 +1,13 @@ \section{Sphärische Trigonometrie} -In der sphärischen Trigonometrie gibt es eine Symetrie zwischen Seiten und Winkel, also zu jedem Satz über Seiten und Winkel gibt es einen entsprechenden Satz, mit dem man Winkel durch Seiten und Seiten durch Winkel ersetzt hat. -Dabei gibt es folgenden Zusammenhang zwischen der ebenen- und sphärischen Trigonometrie: - \subsection{Das Kugeldreieck} -Damit man die Definition des Kugeldreiecks versteht, müssen wir zuerst Begriffe wie "Grosskreisebene" und "Grosskreisbögen" verstehen. -Ein Grosskreis ist ein größtmöglicher Kreis auf einer Kugeloberfläche. +Damit man die Definition des Kugeldreiecks versteht, müssen wir zuerst Begriffe wie Grosskreisebene und Grosskreisbögen verstehen. +Ein Grosskreis ist ein grösstmöglicher Kreis auf einer Kugeloberfläche. Sein Mittelpunkt fällt immer mit dem Mittelpunkt der Kugel zusammen und ein Schnitt auf dem Großkreis teilt die Kugel in jedem Fall in zwei gleich grosse Hälften. Da es unendlich viele Möglichkeiten gibt, eine Kugel so zu zerschneiden, dass die Schnittebene den Kugelmittelpunkt trifft, gibt es auch unendlich viele Grosskreise. -Grosskreisbögen sind die Verbindungslinien zwischen zwei Punkten auf der Kugel, welche auch "Seiten" eines Kugeldreiecks gennant werden. +Grosskreisbögen sind die kürzesten Verbindungslinien zwischen zwei Punkten auf der Kugel. -Werden drei voneinander verschiedene Punkte, die sich nicht auf derselben Grosskreisebene befinden, mit Grosskreisbögen verbunden, so entsteht ein Kugeldreieck $ABC$. +Werden drei voneinander verschiedene Punkte, die sich nicht auf derselben Grosskreisebene befinden, mit Grosskreisbögen verbunden werden, so entsteht ein Kugeldreieck $ABC$. Für ein Kugeldreieck gilt, dass die Summe der drei Seiten kleiner als $2\pi$ aber grösser als 0 ist. $A$, $B$ und $C$ sind die Ecken des Dreiecks und dessen Seiten sind die Grosskreisbögen zwischen den Eckpunkten (siehe Abbildung 21.2). @@ -19,18 +16,6 @@ Laut dieser Definition ist die Seite $c$ der Winkel $AMB$, wobei der Punkt $M$ d Man kann bei Kugeldreiecken nicht so einfach unterscheiden, was Innen oder Aussen ist. Wenn man drei Eckpunkte miteinander verbindet, ergeben sich immer 16 Kugeldreiecke. -Jenes Kugeldreieck mit den Seitenlängen $a, b, c < \pi$ und den Winkeln $\alpha, \beta, \gamma < \pi$ nennt man Eulersches Dreieck. - -Es gibt einen Zusammenhang zwischen der ebenen- und sphärischen Trigonometrie, wobei folgend $a$ eine Seite beschreibt: -\begin{center} - \begin{tabular}{ccc} - Eben & $\leftrightarrow$ & sphärisch \\ - \hline - $a$ & $\leftrightarrow$ & $\sin \ a$ \\ - - $a^2$ & $\leftrightarrow$ & $-\cos \ a$ \\ - \end{tabular} -\end{center} \begin{figure} \begin{center} @@ -41,8 +26,11 @@ Es gibt einen Zusammenhang zwischen der ebenen- und sphärischen Trigonometrie, \end{figure} \subsection{Rechtwinkliges Dreieck und rechtseitiges Dreieck} +In der sphärischen Trigonometrie gibt es eine Symetrie zwischen Seiten und Winkel, also zu jedem Satz über Seiten und Winkel gibt es einen entsprechenden Satz, mit dem man Winkel durch Seiten und Seiten durch Winkel ersetzt hat. + Wie auch im ebenen Dreieck gibt es beim Kugeldreieck auch ein rechtwinkliges Kugeldreieck, bei dem ein Winkel $\frac{\pi}{2}$ ist. -Ein Rechtseitiges Dreieck gibt es jedoch nur beim Kugeldreieck, weil dort eine Seitenlänge $\frac{\pi}{2}$ lang sein muss. +Ein Rechtseitiges Dreieck gibt es jedoch nur beim Kugeldreieck, weil dort eine Seitenlänge $\frac{\pi}{2}$ lang sein muss, wie man in der Abbildung 21.3 sehen kann. + \begin{figure} \begin{center} @@ -51,7 +39,7 @@ Ein Rechtseitiges Dreieck gibt es jedoch nur beim Kugeldreieck, weil dort eine S \end{center} \end{figure} -\subsection{Winkelsumme} +\subsection{Winkelsumme und Flächeninhalt} \begin{figure} \begin{center} @@ -64,9 +52,9 @@ Ein Rechtseitiges Dreieck gibt es jedoch nur beim Kugeldreieck, weil dort eine S Die Winkel eines Kugeldreiecks sind die, welche die Halbtangenten in den Eckpunkten einschliessen. Für die Summe der Innenwinkel gilt \begin{align} - \alpha+\beta+\gamma &= \frac{F}{r^2} + \pi \ \text{und} \ \alpha+\beta+\gamma > \pi, \nonumber + \alpha+\beta+\gamma &= \frac{F}{r^2} + \pi \quad \text{und} \quad \alpha+\beta+\gamma > \pi, \nonumber \end{align} -wobei F der Flächeninhalt des Kugeldreiecks ist. +wobei $F$ der Flächeninhalt des Kugeldreiecks ist. \subsubsection{Sphärischer Exzess} Der sphärische Exzess \begin{align} @@ -77,32 +65,69 @@ beschreibt die Abweichung der Innenwinkelsumme von $\pi$ und ist proportional zu \subsubsection{Flächeninnhalt} Mithilfe des Radius $r$ und dem sphärischen Exzess $\epsilon$ gilt für den Flächeninhalt \[ F=\frac{\pi \cdot r^2}{\frac{\pi}{2}} \cdot \epsilon\]. -\subsection{Sphärischer Sinussatz} -In jedem Dreieck ist das Verhältnis des Sinus einer Seite zum Sinus des Gegenwinkels konstant. -Das bedeutet, dass +\subsection{Seiten und Winkelberechnung} +Es gibt in der sphärischen Trigonometrie eigentlich gar keinen Satz des Pythagoras, wie man ihn aus der zweidimensionalen Geometrie kennt. +Es gibt aber auch einen Satz, der alle drei Seiten eines rechtwinkligen Kugeldreiecks, nicht aber für das rechtseitige Kugeldreieck, in eine Beziehung bringt und zum jetzigen Punkt noch unklar ist, weshalb dieser Satz so aussieht. +Die Approximation folgt noch. +Es gilt nämlich: +\begin{align} + \cos c = \cos a \cdot \cos b \quad \text{wenn} \nonumber & + \quad \alpha = \frac{\pi}{2} \nonumber +\end{align} + +\subsubsection{Approximation von kleinen Dreiecken} +Die Sätze in der ebenen Trigonometrie sind eigentlich Approximationen der sphärischen Trigonometrie. +So ist der Sinussatz in der Ebene nur eine Annäherung des sphärischen Sinussatzes. Das Gleiche gilt für den Kosinussatz und dem Satz des Pythagoras. +So kann mit dem Taylorpolynom 2. Grades den Sinus und den Kosinus vom Sphärischen in die Ebene approximieren: +\begin{align} + \sin(a) &\approx a \nonumber \intertext{und} + \cos(a)&\approx 1-\frac{a^2}{2}.\nonumber +\end{align} +Es gibt ebenfalls folgende Approximierung der Seiten von der Sphäre in die Ebene: +\begin{align} + a &\approx \sin(a) \nonumber \intertext{und} + a^2 &\approx 1-\cos(a). \nonumber +\end{align} +Die Korrespondenzen zwischen der ebenen- und sphärischen Trigonometrie werden in den kommenden Abschnitten erläutert. + +\subsubsection{Sphärischer Satz des Pythagoras} +Die Korrespondenz \[ a^2 \approx 1-cos(a)\] liefert unter Anderem einen entsprechenden Satz des Pythagoras, nämlich + +\begin{align} + \cos(a)\cdot \cos(b) &= \cos(c) \\ + \bigg[1-\frac{a^2}{2}\bigg] \cdot \bigg[1-\frac{b^2}{2}\bigg] &= 1-\frac{c^2}{2} \\ + \xcancel{1}- \frac{a^2}{2} - \frac{b^2}{2} + \xcancel{\frac{a^2b^2}{4}}&= \xcancel{1}- \frac{c^2}{2} \intertext{Höhere Potenzen vernachlässigen} + -a^2-b^2 &=-c^2\\ + a^2+b^2&=c^2 +\end{align} + +\subsubsection{Sphärischer Sinussatz} +Den sphärischen Sinussatz \begin{align} \frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)} \nonumber \end{align} -auch beim Kugeldreieck gilt. +kann man ebenfalls mit der Korrespondenz \[a \approx \sin(a) \] zum entsprechenden ebenen Sinussatz \[\frac{a}{\sin (\alpha)} =\frac{b}{\sin (\beta)} = \frac{c}{\sin (\gamma)}\] approximieren. -\subsection{Sphärische Kosinussätze} -Auch in der sphärischen Trigonometrie gibt es den Seitenkosinussatz + +\subsubsection{Sphärische Kosinussätze} +In der sphärischen Trigonometrie gibt es den Seitenkosinussatz \begin{align} \cos \ a = \cos b \cdot \cos c + \sin b \cdot \sin c \cdot \cos \alpha \nonumber \end{align} %Seitenkosinussatz und den Winkelkosinussatz \begin{align} - \cos \gamma = -\cos \alpha \cdot \cos \beta + \sin \alpha \cdot \sin \beta \cdot \cos c. \nonumber -\end{align} + \cos \gamma = -\cos \alpha \cdot \cos \beta + \sin \alpha \cdot \sin \beta \cdot \cos c, \nonumber +\end{align} der nur in der sphärischen Trigonometrie vorhanden ist. -\subsection{Sphärischer Satz des Pythagoras für das rechtwinklige Kugeldreieck} -Es gibt in der sphärischen Trigonometrie eigentlich garkeinen "Satz des Pythagoras", wie man ihn aus der zweidimensionalen Geometrie kennt. -In der sphärischen Trigonometrie gibt es aber auch einen Satz, der alle drei Seiten eines rechtwinkligen Kugeldreiecks, nicht aber für das rechtseitige Kugeldreieck, in eine Beziehung bringt. -Es gilt nämlich: +Analog gibt es auch beim Seitenkosinussatz eine Korrespondenz zu \[ a^2 \leftrightarrow 1-\cos(a),\] die den ebenen Kosinussatz herleiten lässt, nämlich \begin{align} - \cos c = \cos a \cdot \cos b \ \text{wenn} \nonumber & - \alpha = \frac{\pi}{2} \nonumber + \cos(a)&= \cos(b)\cdot \cos(c) + \sin(b) \cdot \sin(c)\cdot \cos(\alpha) \\ + 1-\frac{a^2}{2} &= \bigg[1-\frac{b^2}{2}\bigg]\bigg[1-\frac{c^2}{2}\bigg]+bc\cdot\cos(\alpha) \\ + \xcancel{1}-\frac{a^2}{2} &= \xcancel{1}-\frac{b^2}{2}-\frac{c^2}{2} \xcancel{+\frac{b^2c^2}{4}}+bc \cdot \cos(\alpha)\intertext{Höhere Potenzen vernachlässigen} + a^2&=b^2+c^2-2bc \cdot \cos(\alpha) \end{align} + + \ No newline at end of file -- cgit v1.2.1 From 76a5de291c288aa6e439fb97b0172dcfb5c9f1fe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Wed, 25 May 2022 10:30:01 +0200 Subject: rationale Funktionen --- buch/chapters/060-integral/rational.tex | 169 ++++++++++++++++++++++++++++++++ 1 file changed, 169 insertions(+) diff --git a/buch/chapters/060-integral/rational.tex b/buch/chapters/060-integral/rational.tex index 19f2ad9..989e65b 100644 --- a/buch/chapters/060-integral/rational.tex +++ b/buch/chapters/060-integral/rational.tex @@ -5,4 +5,173 @@ % \subsection{Rationale Funktionen und Funktionenkörper \label{buch:integral:subsection:rational}} +Welche Funktionen sollen als Antwort auf die Frage nach einer Stammfunktion +akzeptiert werden? +Polynome in der unabhängigen Variablen $x$ sollten sicher dazu gehören, +also alles, was man mit Hilfe der Multiplikation, Addition und Subtraktion +aus Koeffizienten zum Beispiel in den rationalen Zahlen $\mathbb{Q}$ und +der unabhängigen Variablen aufbauen kann. +Doch welche weiteren Operationen sollen zugelassen werden und was lässt +sich über die entstehende Funktionenmenge aussagen? + +\subsubsection{Körper} +Die kleinste Zahlenmenge, in der alle arithmetischen Operationen soweit +sinnvoll durchgeführt werden können, ist die Menge $\mathbb{Q}$ der +rationalen Zahlen. +Etwas formaler ist eine solche Menge, in der die Arithmetik uneingeschränkt +ausgeführt werden kann, ein Körper gemäss der folgenden Definition. +\index{Korper@Körper}% + +\begin{definition} +\label{buch:integral:definition:koerper} +Eine {\em Körper} ist eine Menge $K$ mit zwei Verknüpfungen $+$, die Addition, +und $\cdot$, die Multiplikation, +welche die folgenden Eigenschaften haben. +\begin{center} +\renewcommand{\tabcolsep}{0pt} +\begin{tabular}{p{68mm}p{4mm}p{68mm}} +%Eigenschaften der +Addition: +\begin{enumerate}[{\bf A}.1)] +\item assoziativ: $(a+b)+c=a+(b+c)$ +für alle $a,b,c\in K$ +\item kommutativ: $a+b=b+a$ +für alle $a,b\in K$ +\item Neutrales Element der Addition: es gibt ein Element $0\in K$ mit +der Eigenschaft $a+0=a$ für alle $a\in K$ +\item Additiv inverses Element: zu jedem Element $a\in K$ gibt es das Element +$-a$ mit der Eigenschaft $a+(-a)=0$. +\end{enumerate} +&&% +%Eigenschaften der +Multiplikation: +\begin{enumerate}[{\bf M}.1)] +\item assoziativ: $(a\cdot b)\cdot c=a\cdot (b\cdot c)$ +für alle $a,b,c\in K$ +\index{Assoziativgesetz}% +\index{assoziativ}% +\item kommutativ: $a\cdot b=b\cdot a$ +für alle $a,b\in K$ +\index{Kommutativgesetz}% +\index{kommutativ}% +\item Neutrales Element der Multiplikation: es gibt ein Element $1\in K$ mit +der Eigenschaft $a\cdot 1 =a$ für alle $a\in K$ +\index{neutrales Element}% +\item Multiplikativ inverses Element: zu jedem Element +\index{inverses Element}% +$a\in K^*=K\setminus\{0\}$ +gibt es das Element $a^{-1}$ mit der Eigenschaft $a\cdot a^{-1}=1$. +Die Menge $K^*$ heisst auch die {\em Einheitengruppe} oder die +{\em Gruppe der invertierbaren Elemente} des Körpers. +\index{Einheitengruppe}% +\index{Gruppe der invertierbaren Elemente}% +\end{enumerate} +\end{tabular} +\end{center} +\vspace{-10pt} +Ausserdem gilt das Distributivgesetz: für alle $a,b,c\in K$ gilt +$a\cdot(b+c)=a\cdot b + a\cdot c$. +\index{Disitributivgesetz}% +\end{definition} + +Das Assoziativgesetz {\bf A}.1 besagt, dass Summen mit beliebig +vielen Termen ohne Klammern geschrieben werden kann, weil es nicht +darauf ankommt, in welcher Reihenfolge die Additionen ausgeführt werden. +Ebenso für das Assoziativgesetz {\bf M}.1 der Multiplikation. +Die Kommutativgesetze {\bf A}.2 und {\bf M}.2 implizieren, dass man +nicht auf die Reihenfolge der Summanden oder Faktoren achten muss. +Das Distributivgesetz schliesslich besagt, dass man Produkte ausmultiplizieren +oder gemeinsame Faktoren ausklammern kann, wie man es in der Schule +gelernt hat. + +Die rellen Zahlen $\mathbb{R}$ und die komplexen Zahlen $\mathbb{C}$ +bilden ebenfalls einen Körper, die von den rationalen Zahlen geerbten +Eigenschaften der Verknüpfungen setzen sich auf $\mathbb{R}$ und +$\mathbb{C}$ fort. +Es lassen sich allerdings auch Zahlkörper zwischen $\mathbb{Q}$ und +$\mathbb{R}$ konstruieren, wie das folgende Beispiel zeigt. + +\begin{beispiel} +Die Menge +\[ +\mathbb{Q}(\!\sqrt{2}) += +\{ +a+b\sqrt{2} +\;|\; +a,b\in \mathbb{Q} +\} +\] +ist eine Teilmenge von $\mathbb{R}$. +Die Rechenoperationen haben alle verlangten Eigenschaften, wenn gezeigt +werden kann, dass Produkte und Quotienten von Zahlen in $\mathbb{Q}(\!\sqrt{2})$ +wieder in $\mathbb{Q}(\!\sqrt{2})$ sind. +Dazu rechnet man +\begin{align*} +(a+b\sqrt{2}) +(c+d\sqrt{2}) +&= +ac + 2bd + (ad+bc)\sqrt{2} \in \mathbb{Q}(\!\sqrt{2}) +\intertext{und} +\frac{a+b\sqrt{2}}{c+d\sqrt{2}} +&= +\frac{a+b\sqrt{2}}{c+d\sqrt{2}} +\cdot +\frac{c-d\sqrt{2}}{c-d\sqrt{2}} += +\frac{ac-2bd +(-ad+bc)\sqrt{2}}{c^2-2d^2} +\\ +&= +\underbrace{\frac{ac-2bd}{c^2-2d^2}}_{\displaystyle\in\mathbb{Q}} ++ +\underbrace{\frac{-ad+bc}{c^2-2d^2}}_{\displaystyle\in\mathbb{Q}} +\sqrt{2} +\in \mathbb{Q}(\!\sqrt{2}). +\qedhere +\end{align*} +\end{beispiel} + + +\subsubsection{Rationalen Funktionen} +Die als Antworten auf die Frage nach einer Stammfunktion akzeptablen +Funktionen sollten alle rationalen Zahlen sowie die unabhängige +Variable $x$ enthalten. +Ausserdem sollte man beliebige arithmetische Operationen mit +diesen Ausdrücken durchführen können. +Mit Addition, Subtraktion und Multiplikation entstehen aus den +rationalen Zahlen und der unabhängigen Variablen die Polynome $\mathbb{Q}[x]$ +(siehe auch Abschnitt~\ref{buch:potenzen:section:polynome}). + + +\begin{definition} +Die Menge +\[ +\mathbb{Q}(x) += +\biggl\{ +\frac{p(x)}{q(x)} +\;\bigg|\; +p(x),q(x)\in\mathbb{Q}[x] +\wedge +q(x)\ne 0 +\biggr\}, +\] +bestehenden aus allen Quotienten von Polynome, deren Nenner nicht +das Nullpolynom ist, heisst der Körper der {\em rationalen Funktionen} +\index{rationale Funktion}% +mit Koeffizienten in $\mathbb{Q}$. +\end{definition} + +Die Definition erlaubt, dass der Nenner Nullstellen hat, die sich in +Polen der Funktion äussern. +Die Eigenschaften eines Körpers sind sicher erfüllt, wenn wir uns +nur davon überzeugen können, +dass die arithmetischen Operationen nicht aus dieser Funktionenmenge +herausführen. +Dazu muss man nur verstehen, dass die Operation des gleichnamig Machens +zweier Brüche auch für Nenner funktioniert, die Polynome sind, und die +Summe wzeier Brüche von Polynomen wieder in einen Bruch von Polynomen +umwandelt. + + -- cgit v1.2.1 From 8453542b493fe8396a406c5a195dc0a4125f638d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Wed, 25 May 2022 11:59:00 +0200 Subject: Koerpererweiterungen --- buch/chapters/060-integral/erweiterungen.tex | 128 ++++++++++++++++++++++++++- buch/chapters/060-integral/rational.tex | 1 + 2 files changed, 128 insertions(+), 1 deletion(-) diff --git a/buch/chapters/060-integral/erweiterungen.tex b/buch/chapters/060-integral/erweiterungen.tex index f88f6e3..d5c7c72 100644 --- a/buch/chapters/060-integral/erweiterungen.tex +++ b/buch/chapters/060-integral/erweiterungen.tex @@ -5,8 +5,134 @@ % \subsection{Körpererweiterungen \label{buch:integral:subsection:koerpererweiterungen}} +Das Beispiel des Körpers $\mathbb{Q}(\!\sqrt{2})$ auf Seite +\pageref{buch:integral:beispiel:Qsqrt2} illustriert eine Möglichkeit, +einen kleinen Körper zu vergrössern. +Das Prinzip ist verallgemeinerungsfähig und soll in diesem Abschnitt +erarbeitet werden. + % % algebraische Zahl-Erweiterungen +\subsubsection{Algebraische Erweiterungen} +Der Körper $\mathbb{Q}(\!\sqrt{2})$ entsteht aus dem Körper $\mathbb{Q}$ +dadurch, dass man die Zahl $\sqrt{2}$ hinzufügt und alle erlaubten +arithmetischen Operationen zulässt. +Die Darstellung von Elementen von $\mathbb{Q}(\!\sqrt{2})$ als +$a+b\sqrt{2}$ ist möglich, weil die Zahl $\alpha=\sqrt{2}$ die +algebraische Relation +\[ +\alpha^2-2 = \sqrt{2}^2 -2 = 0 +\] +erfüllt. +Voraussetzung für diese Aussage ist, dass es die Zahl $\sqrt{2}$ in einem +geeigneten grösseren Körper gibt. +Die reellen oder komplexen Zahlen bilden einen solchen Körper. +Wir verallemeinern diese Situation wie folgt. + +\begin{definition} +Ist $K$ ein Körper, dann heisst ein Körper $L$ mit $K\subset L$ ein +{\em Erweiterungskörper} von $K$. +\index{Erweiterungskoerper@Erweiterungskörper} +\end{definition} + +\begin{definition} +\label{buch:integral:definition:algebraisch} +Sei $K\subset L$ eine Körpererweiterung. +Das Element $\alpha\in L$ heisst {\em algebraisch} über $K$, wenn es +ein Polynom $p(x)\in K[x]$ gibt derart, dass $\alpha$ eine Nullstelle +von $p(x)$ ist, also gibt mit $p(\alpha)=0$. +Das normierte Polynom $m(x)$ geringsten Grades, welches $m(\alpha)=0$ +erfüllt, heisst das {\em Minimalpolynom} von $\alpha$. +\index{Minimalpolynom}% +\end{definition} + +Man sagt auch $\alpha$ ist algebraisch vom Grad $n$, wenn das Minimalpolynom +den Grad $n$ hat. +Wenn $\alpha\ne 0$ algebraisch ist, dann ist auch $1/\alpha$ algebraisch, +wie das folgende Argument zeigt. +Für das Minimalpolynom $m(x)$ von $\alpha$, ist $m(\alpha)=0$. +Teilt man diese Gleichung durch $\alpha^n$ teilt, erhält man +\[ +m_0\frac{1}{\alpha^n} ++ +m_1\frac{1}{\alpha^{n-1}} ++ +\ldots ++ +m_{n-1}\frac{1}{\alpha} ++ +1 += +0, +\] +das Polynom +\[ +\hat{m}(x) += +m_0x^n + m_1x^{n-1} + \ldots m_{n-1} x + 1 +\in +K[x] +\] +hat also $\alpha^{-1}$ als Nullstelle. +Das Polynom $\hat{m}(x)$ beweist daher, dass $\alpha^{-1}$ algebraisch ist. + +Die Zahl $\sqrt{2}\in\mathbb{R}$ ist also algebraisch über $\mathbb{Q}$ +und jede andere Quadratwurzel von Elementen von $\mathbb{Q}$ ist +ebenfalls algebraisch über $\mathbb{Q}$. +Auch der Körper $\mathbb{Q}(\alpha)$ kann für jede andere Quadratwurzel +auf die genau gleiche Art wie für $\sqrt{2}$ konstruiert werden. + +\begin{definition} +\label{buch:integral:definition:algebraischeerweiterung} +Sei $K\subset L$ eine Körpererweiterung und $\alpha\in L$ ein algebraisches +Element mit Minimalpolynom $m(x)\in K[x]$. +Dann heisst die Menge +\begin{equation} +K(\alpha) += +\{ +a_0 + a_1\alpha + \ldots +a_n\alpha^n +\;|\; +a_i\in K +\} +\label{buch:integral:eqn:algelement} +\end{equation} +mit $n=\deg m(x) - 1$ der durch Adjunktion von $\alpha$ erhaltene +Erweiterungsköper. +\end{definition} + +Wieder muss nur überprüft werden, dass jedes Produkt oder jeder +Quotient von Ausdrücken der Form~\eqref{buch:integral:eqn:algelement} +wieder in diese Form gebracht werden kann. +Dazu sei +\[ +m(x) += +m_0+m_1x + m_2x^2 ++\ldots +m_{n-1}x^{n-1} + x^n +\] +das Minimalpolynom von $\alpha$. +Die Gleichung $m(\alpha)=0$ kann nach $\alpha^n$ aufgelöst werden und +liefert +\[ +\alpha^n = -m_0 - m_1\alpha - m_2\alpha^2 -\ldots -m_{n-1}\alpha^{n-1}. +\] +Damit kann jede Potenz von $\alpha$ mit einem Exponenten grösser als $n$ +in eine Linearkombination von Potenzen mit kleineren Exponenten +reduziert werden. +Ein Polynom in $\alpha$ kann also immer auf die +Form~\eqref{buch:integral:eqn:algelement} +gebracht werden. + +XXX Quotienten + % rationale Funktionen als Körpererweiterungen +\subsubsection{Rationale Funktionen als Körpererweiterung} + % Erweiterungen mit algebraischen Funktionen -% +\subsubsection{Algebraische Funktionen} + +% Transzendente Körpererweiterungen +\subsubsection{Transzendente Erweiterungen} + + diff --git a/buch/chapters/060-integral/rational.tex b/buch/chapters/060-integral/rational.tex index 989e65b..9cef3a7 100644 --- a/buch/chapters/060-integral/rational.tex +++ b/buch/chapters/060-integral/rational.tex @@ -92,6 +92,7 @@ Es lassen sich allerdings auch Zahlkörper zwischen $\mathbb{Q}$ und $\mathbb{R}$ konstruieren, wie das folgende Beispiel zeigt. \begin{beispiel} +\label{buch:integral:beispiel:Qsqrt2} Die Menge \[ \mathbb{Q}(\!\sqrt{2}) -- cgit v1.2.1 From 6e9f45ad084ca9341c2893bdfe1ddcb07ee8a45b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Wed, 25 May 2022 12:07:43 +0200 Subject: typo --- buch/chapters/060-integral/rational.tex | 6 +++--- buch/chapters/060-integral/sqrat.tex | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/buch/chapters/060-integral/rational.tex b/buch/chapters/060-integral/rational.tex index 9cef3a7..4cd7d7f 100644 --- a/buch/chapters/060-integral/rational.tex +++ b/buch/chapters/060-integral/rational.tex @@ -61,17 +61,17 @@ der Eigenschaft $a\cdot 1 =a$ für alle $a\in K$ \index{inverses Element}% $a\in K^*=K\setminus\{0\}$ gibt es das Element $a^{-1}$ mit der Eigenschaft $a\cdot a^{-1}=1$. -Die Menge $K^*$ heisst auch die {\em Einheitengruppe} oder die -{\em Gruppe der invertierbaren Elemente} des Körpers. \index{Einheitengruppe}% \index{Gruppe der invertierbaren Elemente}% \end{enumerate} \end{tabular} \end{center} -\vspace{-10pt} +\vspace{-22pt} Ausserdem gilt das Distributivgesetz: für alle $a,b,c\in K$ gilt $a\cdot(b+c)=a\cdot b + a\cdot c$. \index{Disitributivgesetz}% +Die Menge $K^*$ heisst auch die {\em Einheitengruppe} oder die +{\em Gruppe der invertierbaren Elemente} des Körpers. \end{definition} Das Assoziativgesetz {\bf A}.1 besagt, dass Summen mit beliebig diff --git a/buch/chapters/060-integral/sqrat.tex b/buch/chapters/060-integral/sqrat.tex index 20f1ef7..f6838e5 100644 --- a/buch/chapters/060-integral/sqrat.tex +++ b/buch/chapters/060-integral/sqrat.tex @@ -332,7 +332,7 @@ Letzteres wird im nächsten Abschnitt berechnet. % \subsubsection{Das Integral von $1/y$} Eine Stammfunktion von $1/y$ kann mit etwas Geschick bekannten -Interationstechnikgen gefunden werden. +Interationstechniken gefunden werden. Durch Ableitung der Funktion \[ F -- cgit v1.2.1 From 4197abc20216c15f11660d63549eb8b765f1c892 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Wed, 25 May 2022 12:08:44 +0200 Subject: typos --- buch/chapters/060-integral/sqrat.tex | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/buch/chapters/060-integral/sqrat.tex b/buch/chapters/060-integral/sqrat.tex index f6838e5..ceb8650 100644 --- a/buch/chapters/060-integral/sqrat.tex +++ b/buch/chapters/060-integral/sqrat.tex @@ -337,7 +337,7 @@ Durch Ableitung der Funktion \[ F = -\frac{1}{\sqrt{a}}\log\biggl(x+\frac{b}{2a}+\frac{y}{\sqrt{y}}\biggr) +\frac{1}{\sqrt{a}}\log\biggl(x+\frac{b}{2a}+\frac{y}{\sqrt{a}}\biggr) \] kann man nachprüfen, dass $F$ eine Stammfunktion von $1/y$ ist, also @@ -345,7 +345,7 @@ also \int \frac{1}{y} = -\frac{1}{\sqrt{a}}\log\biggl(x+\frac{b}{2a}+\frac{y}{\sqrt{y}}\biggr). +\frac{1}{\sqrt{a}}\log\biggl(x+\frac{b}{2a}+\frac{y}{\sqrt{a}}\biggr). \end{equation} % @@ -458,7 +458,7 @@ Form = v_0 + C -\log\biggl(x+\frac{b}{2a}+\frac{y}{\sqrt{y}}\biggr) +\log\biggl(x+\frac{b}{2a}+\frac{y}{\sqrt{a}}\biggr) + \sum_{i=1}^n c_i \log v_i, -- cgit v1.2.1 From 03881a82e1a30cfaea1709f4f3f50c5cd9dfd0ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Wed, 25 May 2022 17:40:27 +0200 Subject: algebraische Erweiterungen --- buch/chapters/060-integral/erweiterungen.tex | 109 ++++++++++++++++++++++++++- buch/chapters/060-integral/rational.tex | 2 +- 2 files changed, 106 insertions(+), 5 deletions(-) diff --git a/buch/chapters/060-integral/erweiterungen.tex b/buch/chapters/060-integral/erweiterungen.tex index d5c7c72..7039cc0 100644 --- a/buch/chapters/060-integral/erweiterungen.tex +++ b/buch/chapters/060-integral/erweiterungen.tex @@ -27,7 +27,7 @@ erfüllt. Voraussetzung für diese Aussage ist, dass es die Zahl $\sqrt{2}$ in einem geeigneten grösseren Körper gibt. Die reellen oder komplexen Zahlen bilden einen solchen Körper. -Wir verallemeinern diese Situation wie folgt. +Wir verallgemeinern diese Situation wie folgt. \begin{definition} Ist $K$ ein Körper, dann heisst ein Körper $L$ mit $K\subset L$ ein @@ -124,15 +124,116 @@ Ein Polynom in $\alpha$ kann also immer auf die Form~\eqref{buch:integral:eqn:algelement} gebracht werden. -XXX Quotienten +Es muss aber noch gezeigt werden, dass auch der Kehrwert eines Elements +der Form~\eqref{buch:integral:eqn:algelement} in dieser Form geschrieben +werden kann. +Sei also $a(\alpha)$ so ein Element, dann sind die beiden Polynome +$a(x)$ und $m(x)$ teilerfremd, der grösste gemeinsame Teiler ist $1$. +Mit dem erweiterten euklidischen Algorithmus kann man zwei Polynome +$s(x)$ und $t(x)$ finden derart, dass $s(x)a(x)+t(x)m(x)=1$. +Setzt man $\alpha$ für $x$ ein, verschwindet das Minimalpolynom und +es bleibt +\[ +s(\alpha)a(\alpha) = 1 +\qquad\Rightarrow\qquad +s(\alpha) = \frac{1}{a(\alpha)}. +\] +Damit ist $s(\alpha)$ eine Darstellung von $1/a(\alpha)$ in der +Form~\eqref{buch:integral:eqn:algelement}. + +% Transzendente Körpererweiterungen +\subsubsection{Transzendente Erweiterungen} +Nicht alle Zahlen in $\mathbb{R}$ sind algebraisch. +Lindemann bewies 1882 einen allgemeinen Satz, aus dem folgt, +dass $\pi$ und $e$ nicht algebraisch sind, es gibt also +kein Polynom mit rationalen Koeffizienten, welches $\pi$ +oder $e$ als Nullstelle hat. + +\begin{definition} +Eine Zahl $\alpha\in L$ in einer Körpererweiterung $K\subset L$ +heisst {\em transzendent}, wenn $\alpha$ nicht algebraisch ist, +wenn es also kein Polynom in $K[x]$ gibt, welches $\alpha$ als +Nullstelle hat. +\end{definition} + +Die Zahlen $\pi$ und $e$ sind also transzendent. +Eine andere Art, diese Eigenschaft zu beschreiben ist zu sagen, +dass die Potenzen +\[ +1=\pi^0, \pi, \pi^2,\pi^3,\dots +\] +linear unabhängig sind. +Gäbe es nämlich eine lineare Abhängigkeit, dann gäbe es Koeffizienten +$l_i$ derart, dass +\[ +l_0 + l_1\pi^1 + l_2\pi^2 + \ldots + l_{n-1}\pi^{n-1} + l_{n}\pi^n = l(\pi)=0, +\] +und damit wäre dann ein Polynom gefunden, welches $\pi$ als Nullstelle hat. + +Selbstverstländlich kann man zu einem transzendenten Element $\alpha$ +immer noch einen Körper konstruieren, der alle Zahlen enthält, welche man +mit den arithmetischen Operationen aus $\alpha$ bilden kann. +Man kann ihn schreiben als +\[ +K(\alpha) += +\biggl\{ +\frac{p(\alpha)}{q(\alpha)} +\;\bigg|\; +p(x),q(x)\in K[x] \wedge p(x)\ne 0 +\biggr\}, +\] +aber die Vereinfachungen zur +Form~\eqref{buch:integral:eqn:algelement}, die bei einem algebraischen +Element $\alpha$ möglich waren, können jetzt nicht mehr durchgeführt +werden. +$K\subset K(\alpha)$ ist zwar immer noch eine Körpererweiterung, aber +$K(\alpha)$ ist nicht mehr ein endlichdimensionaler Vektorraum. +Die Körpererweiterung $K\subset K(\alpha)$ heisst {\em transzendent}. % rationale Funktionen als Körpererweiterungen \subsubsection{Rationale Funktionen als Körpererweiterung} +Die unabhängige Variable wird bei Rechnen so behandelt, dass die +Potenzen alle linear unabhängig sind. +Dies ist die Grundlage für den Koeffizientenvergleich. +Der Körper der rationalen Funktion $K(x)$ +ist also eine transzendente Körpererweiterung von $K$. % Erweiterungen mit algebraischen Funktionen \subsubsection{Algebraische Funktionen} +Für das Integrationsproblem möchten wir nicht nur rationale Funktionen +verwenden können, sondern auch Wurzelfunktionen. +Wir möchten also zum Beispiel auch mit der Funktion $\sqrt{ax^2+bx+c}$ +und allem, was man mit arithmetischen Operationen daraus machen kann, +arbeiten können. +Eine Körpererweiterung, die $\sqrt{ax^2+bx+c}$ enthält, enthält auch +alles, was man daraus bilden kann. +Doch wie bekommen wir die Funktion $\sqrt{ax^2+bx+c}$ in den Körper? -% Transzendente Körpererweiterungen -\subsubsection{Transzendente Erweiterungen} +Die Art und Weise, wie man Wurzeln in der Schule kennenlernt ist als +eine neue Operation, die zu einer Zahl die Quadratwurzel liefert. +Diese Idee, den Körper mit einer weiteren Funktion anzureichern, +führt über nicht auf eine nützliche neue algebraische Struktur. +Wir dürfen daher $\sqrt{ax^2+bx+c}$ nicht als die Zusammensetzung +einer einzelnen neuen Funktion $\sqrt{\phantom{A}}$ mit +einem Polynom betrachten. + +Die Wurzel $\sqrt{ax^2+bx+c}$ ist aber auch die Nullstelle des Polynoms +\[ +p(z) += +z^2 - [ax^2+bx+c] +\in +K(x)[z] +\] +mit Koeffizienten in $K(x)$. +Die eckigen Klammern sollen helfen, die Koeffizienten in $K(x)$ +zu erkennen. +Die Funktion $\sqrt{ax^2+bx+c}$ ist also algebraisch über $K(x)$. +Einen Funktionenkörper, der die Funktion enthält, kann man also erhalten, +indem man den Körper $K(x)$ um das über $K(x)$ algebraische Element +$y=\sqrt{ax^2+bx+c}$ zu $K(x,y)=K(x,\sqrt{ax^2+bx+c}$ erweitert. +Wurzelfunktion werden daher nicht als Zusammensetzungen, sondern als +algebraische Erweiterungen eines Funktionenkörpers betrachtet. diff --git a/buch/chapters/060-integral/rational.tex b/buch/chapters/060-integral/rational.tex index 4cd7d7f..ae64c34 100644 --- a/buch/chapters/060-integral/rational.tex +++ b/buch/chapters/060-integral/rational.tex @@ -157,7 +157,7 @@ p(x),q(x)\in\mathbb{Q}[x] q(x)\ne 0 \biggr\}, \] -bestehenden aus allen Quotienten von Polynome, deren Nenner nicht +bestehend aus allen Quotienten von Polynome, deren Nenner nicht das Nullpolynom ist, heisst der Körper der {\em rationalen Funktionen} \index{rationale Funktion}% mit Koeffizienten in $\mathbb{Q}$. -- cgit v1.2.1 From 9a90404d081513254925c76b2fbaabb1a1c62982 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Wed, 25 May 2022 20:15:57 +0200 Subject: differenialkoerper --- buch/chapters/060-integral/diffke.tex | 33 ++++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/buch/chapters/060-integral/diffke.tex b/buch/chapters/060-integral/diffke.tex index 53b46ad..a943fa3 100644 --- a/buch/chapters/060-integral/diffke.tex +++ b/buch/chapters/060-integral/diffke.tex @@ -5,16 +5,47 @@ % \subsection{Differentialkörper und ihre Erweiterungen \label{buch:integral:subsection:diffke}} +Die Ableitung wird in den Grundvorlesungen der Analysis jeweils +als ein Grenzprozess eingeführt. +Die praktische Berechnung von Ableitungen verwendet aber praktisch +nie diese Definition, sondern fast ausschliesslich die rein algebraischen +Ableitungsregeln. +So wie die Wurzelfunktionen im letzten Abschnitt als algebraische +Körpererweiterungen erkannt wurden, muss jetzt auch für die Ableitung +eine rein algebraische Definition gefunden werden. +Die entstehende Struktur ist der Differentialkörper, der in diesem +Abschnitt definiert werden soll. + +% +% Derivation % \subsubsection{Derivation} -% Ableitungsaxiome +\begin{definition} +Sei $\mathscr{F}$ ein Funktionenkörper. +Eine {\em Derivation} ist eine lineare Abbildung +$D\colon \mathscr{F}\to\mathscr{F}$ +mit der Eigenschaft +\[ +D(fg) = (Df)g+f(Dg). +\] +\end{definition} + +% +% Ableitungsregeln +% \subsubsection{Ableitungsregeln} % Ableitungsregeln +% +% Konstantenkörper +% \subsubsection{Konstantenkörper} % Konstantenkörper +% +% Logarithmus und Exponantialfunktion +% \subsubsection{Logarithmus und Exponentialfunktion} % Logarithmus und Exponentialfunktion -- cgit v1.2.1 From f24e5bd9fda39e2f8bbfb0946aac2ee7dcda547d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Thu, 26 May 2022 08:35:55 +0200 Subject: new stuff --- buch/chapters/060-integral/diffke.tex | 96 +++++++++++++++++++- buch/chapters/060-integral/elementar.tex | 8 ++ buch/chapters/060-integral/erweiterungen.tex | 10 +++ buch/chapters/060-integral/logexp.tex | 127 +++++++++++++++++++++++++-- buch/chapters/060-integral/rational.tex | 2 +- buch/chapters/060-integral/sqrat.tex | 7 +- 6 files changed, 237 insertions(+), 13 deletions(-) diff --git a/buch/chapters/060-integral/diffke.tex b/buch/chapters/060-integral/diffke.tex index a943fa3..02e90f6 100644 --- a/buch/chapters/060-integral/diffke.tex +++ b/buch/chapters/060-integral/diffke.tex @@ -20,32 +20,120 @@ Abschnitt definiert werden soll. % Derivation % \subsubsection{Derivation} +Für die praktische Berechnung der Ableitung einer Funktion verwendet +man in erster Linie die bekannten Rechenregeln. +Dazu gehören für zwei Funktionen $f$ und $g$ +\begin{itemize} +\item Linearität: $(\alpha f+\beta g)' = \alpha f' + \beta g'$ für +Konstanten $\alpha$, $\beta$. +\item Produktregel: $(fg)'=f'g+fg'$. +\index{Produktregel}% +\item Quotientenregel: $(f/g)' = (f'g-fg')/g^2$. +\index{Quotientenregel}% +\end{itemize} +Die ebenfalls häufig verwendete Kettenregel $(f\circ g)' = (f'\circ g) g'$ +\index{Kettenregel}% +für zusammengesetzte Funktionen wird später kaum benötigt, da wir +Verkettungen durch Körpererweiterungen ersetzen wollen. +Die Ableitung hat somit die rein algebraischen Eigenschaften +einer Derivation gemäss folgender Definition. \begin{definition} -Sei $\mathscr{F}$ ein Funktionenkörper. +Sei $\mathscr{F}$ ein Körper. Eine {\em Derivation} ist eine lineare Abbildung +\index{Derivation}% $D\colon \mathscr{F}\to\mathscr{F}$ mit der Eigenschaft \[ D(fg) = (Df)g+f(Dg). \] +Ein {\em Differentialkörper} ist ein Körper mit einer Derivation. +\index{Differentialkoerper@Differentialkörper}% \end{definition} +Die Ableitung in einem Funktionenkörper ist eine Derivation, +die sich zusätzlich dadurch auszeichnet, dass $Dx=x'=1$. +Sie wird weiterhin mit dem Strich bezeichnet. + % % Ableitungsregeln % \subsubsection{Ableitungsregeln} -% Ableitungsregeln +Die Definition einer Derivation macht keine Aussagen über Quotienten, +diese kann man aber aus den Eigenschaften einer Derivation sofort +ableiten. +Wir schreiben $q=f/g$ für $f,g\in\mathscr{F}$, dann ist $f=qg$. +Nach der Kettenregel gilt +\( +f'=q'g+qg' +\). +Substituiert man darin $q=f/g$ und löst nach $q'$ auf, erhält man +\[ +f'=q'g+\frac{fg'}{g} +\qquad\Rightarrow\qquad +q'=\frac1{g}\biggl(f'-\frac{fg'}{g}\biggr) += +\frac{f'g-fg'}{g^2}. +\] + % % Konstantenkörper % \subsubsection{Konstantenkörper} -% Konstantenkörper +Die Ableitung einer Konstanten verschwindet. +Beim Hinzufügen von Funktionen zu einem Funktionenkörper können weitere +Konstanten hinzukommen, ohne dass dies auf den ersten Blick sichtbar wird. +Zum Beispiel enthält $\mathbb{Q}(x,\!\sqrt{x+\pi})$ wegen +$(\!\sqrt{x+\pi})^2-x=\pi$ auch die Konstante $\pi$. +Eine Derivation ermöglicht dank des nachfolgenden Satzes auch, +solche Konstanten zu erkennen. + +\begin{satz} +Sei $\mathscr{F}$ ein Körper und $D$ eine Derivation in $\mathscr{F}$. +Dann ist die Menge $C=\{a\in\mathscr{F}\;|\;Da=0\}$ ein Körper. +\end{satz} + +\begin{proof}[Beweis] +Es muss gezeigt werden, dass Summe und Produkt von Element von $C$ +wieder in $C$ liegen. +Wenn $Da=Db=0$, dann ist $D(a+b)=Da+Db=0$, also ist $a+b\in C$. +Für das Produkt gilt $D(ab)=(Da)b+a(Db)=0b+a0=0$, also ist auch +$ab\in C$. +\end{proof} + +Die Menge $C$ heisst der {\em Konstantenkörper} von $\mathscr{F}$. +\index{Konstantenkörper}% % % Logarithmus und Exponantialfunktion % \subsubsection{Logarithmus und Exponentialfunktion} -% Logarithmus und Exponentialfunktion +Die Exponentialfunktion und der Logarithmus sind nicht algebraisch +über $\mathbb{Q}(x)$, sie lassen sich nicht durch eine algebraische +Gleichung charakterisieren. +Sie zeichnen sich aber durch besondere Ableitungseigenschaften aus. +Die Theorie der gewöhnlichen Differentialgleichungen garantiert, +dass eine Funktion durch eine Differentialgleichung und Anfangsbedingungen +festgelegt ist. +Für die Exponentialfunktion und der Logarithmus haben die +Ableitungseigenschaften +\[ +\exp'(x) = \exp(x) +\qquad\text{und}\qquad +x \log'(x) = 1. +\] +\index{Exponentialfunktion}% +\index{Logarithmus}% +In der algebraischen Beschreibung eines Funktionenkörpers gibt es +das Konzept des Wertes einer Funktion an einer bestimmten Stelle nicht. +Somit können keine Anfangsbedingungen vorgegeben werden. +Da die Gleichungen linear sind, sind Vielfache einer Lösung wieder +Lösungen. +Insbesondere ist mit $\exp(x)$ auch $a\exp(x)$ eine Lösung und mit +$\log(x)$ auch $a\log(x)$ für alle Konstanten $a$. + +Die Eigenschaft, dass die Exponentialfunktion die Umkehrfunktion +des Logarithmus ist, lässt sich mit den Mitteln eines Differentialkörpers +nicht ausdrücken. diff --git a/buch/chapters/060-integral/elementar.tex b/buch/chapters/060-integral/elementar.tex index 2962178..854a875 100644 --- a/buch/chapters/060-integral/elementar.tex +++ b/buch/chapters/060-integral/elementar.tex @@ -5,3 +5,11 @@ % \subsection{Elementare Funktionen \label{buch:integral:subsection:elementar}} +Etwas allgemeiner kann man sagen, dass in den +Beispielen~\eqref{buch:integration:risch:eqn:integralbeispiel2} +algebraische Erweiterungen von $\mathbb{Q}(x)$ und Erweiterungen +um Logarithmen oder Exponentialfunktionen vorgekommen sind. +Die Stammfunktionen verwenden dieselben Funktionen oder höchstens +Erweiterungen um Logarithmen von Funktionen, die man schon im +Integranden gesehen hat. + diff --git a/buch/chapters/060-integral/erweiterungen.tex b/buch/chapters/060-integral/erweiterungen.tex index 7039cc0..a999ebb 100644 --- a/buch/chapters/060-integral/erweiterungen.tex +++ b/buch/chapters/060-integral/erweiterungen.tex @@ -141,6 +141,16 @@ s(\alpha) = \frac{1}{a(\alpha)}. Damit ist $s(\alpha)$ eine Darstellung von $1/a(\alpha)$ in der Form~\eqref{buch:integral:eqn:algelement}. +% +% Komplexe Zahlen +% +\subsubsection{Komplexe Zahlen} +Die imaginäre Einheit $i$ hat die Eigenschaft, dass $i^2=-1$, insbesondere +ist sie Nullstelle des Polynoms $m(x)=x^2+1\in\mathbb{Q}[x]$. +Die Menge $\mathbb{Q}(i)$ ist daher eine algebraische Körpererweiterung +von $\mathbb{Q}$ bestehend aus den komplexen Zahlen mit rationalem +Real- und Imaginärteil. + % Transzendente Körpererweiterungen \subsubsection{Transzendente Erweiterungen} Nicht alle Zahlen in $\mathbb{R}$ sind algebraisch. diff --git a/buch/chapters/060-integral/logexp.tex b/buch/chapters/060-integral/logexp.tex index 7cbb906..2bfe0e1 100644 --- a/buch/chapters/060-integral/logexp.tex +++ b/buch/chapters/060-integral/logexp.tex @@ -13,15 +13,132 @@ $\log(x-\alpha)$ hinzuzufügen. Es können jedoch noch ganz andere neue Funktionen auftreten, wie die folgende Zusammenstellung einiger Stammfunktionen zeigt: -\begin{align*} +\begin{equation} +\begin{aligned} \int\frac{dx}{1+x^2} &= -\arctan x +\arctan x, \\ -\end{align*} - - +\int \cos x\,dx +&= +\sin x, +\\ +\int\frac{dx}{\sqrt{1-x^2}} +&= +\arcsin x, +\\ +\int +\operatorname{arcosh} x\,dx +&= +x \operatorname{arcosh} x - \sqrt{x^2-1}. +\end{aligned} +\label{buch:integration:risch:allgform} +\end{equation} +In der Stammfunktion treten Funktionen auf, die auf den ersten +Blick nichts mit den Funktionen im Integranden zu tun haben. +Die trigonometrischen und hyperbolichen Funktionen +in~\eqref{buch:integration:risch:allgform} +lassen sich alle durch Exponentialfunktionen ausdrücken. +So gilt +\begin{equation} +\begin{aligned} +\sin x &= \frac{1}{2i}\bigl( e^{ix} - e^{-ix}\bigr), +& +&\qquad& +\cos x &= \frac{1}{2}\bigl( e^{ix} + e^{-ix}\bigr), +\\ +\sinh x &= \frac12\bigl( e^x - e^{-x} \bigr), +& +&\qquad& +\cosh x &= \frac12\bigl( e^x + e^{-x} \bigr). +\end{aligned} +\label{buch:integral:risch:trighypinv} +\end{equation} +Nach Multiplikation mit $e^{ix}$ bzw.~$e^{x}$ entsteht eine +quadratische Gleichung in $e^{ix}$ bzw.~$e^{x}$. +Die Lösungsformel für quadratische Gleichungen erlaubt daher, $e^{ix}$ +bzw.~$e^{x}$ zu finden und damit auch die Umkehrfunktionen. +Die Rechnung ergibt +\begin{equation} +\begin{aligned} +\arcsin y +&= +\frac{1}{i}\log\bigl( +iy\pm\sqrt{1-y^2} +\bigr) +& +&\qquad& +\arccos y +&= +\log\bigl( +y\pm \sqrt{y^2-1} +\bigr) +\\ +\operatorname{arsinh}y +&= +\log\bigl( +y \pm \sqrt{1+y^2} +\bigr) +& +&\qquad& +\operatorname{arcosh} y +&= +\log\bigl( +y\pm \sqrt{y^2-1} +\bigr) +\end{aligned} +\label{buch:integral:risch:trighypinv} +\end{equation} +Alle Funktionen, die man aus dem elementaren Analysisunterricht +kennt, können also mit Hilfe von Exponentialfunktionen und Logarithmen +geschrieben werden. +Man nennt dies die $\log$-$\exp$-Notation der trigonometrischen +und hyperbolischen Funktionen. +\index{logexpnotation@$\log$-$\exp$-Notation}% +Wendet man die Substitutionen +\eqref{buch:integral:risch:trighyp} +und +\eqref{buch:integral:risch:trighypinv} +auf die Integrale +\eqref{buch:integration:risch:allgform} +an, entstehen die Beziehungen +\begin{equation} +\begin{aligned} +\int\frac{1}{1+x^2} +&= +\frac12i\bigl( +\log(1-ix) - \log(1+ix) +\bigr) +\\ +\int\bigl( +{\textstyle\frac12} +e^{ix} ++ +{\textstyle\frac12} +e^{-ix} +\bigr) +&= +-{\textstyle\frac12}ie^{ix} ++{\textstyle\frac12}ie^{-ix} +\\ +\int +\frac{1}{\sqrt{1-x^2}} +&= +-i\log\bigl(ix+\sqrt{1-x^2}) +\\ +\int \log\bigl(x+\sqrt{x^2-1}\bigr) +&= +x\log\bigl(x+\sqrt{x^2-1}\bigr) - \sqrt{x^2-1}. +\end{aligned} +\label{buch:integration:risch:eqn:integralbeispiel2} +\end{equation} +Die in den Stammfuntionen auftretenden Funktionen treten entweder +schon im Integranden auf oder sind Logarithmen von solchen +Funktionen. +Zum Beispiel hat der Nenner im ersten Integral die Faktorisierung +$1+x^2=(1+ix)(1-ix)$, in der Stammfunktion findet man die Logarithmen +der Faktoren. diff --git a/buch/chapters/060-integral/rational.tex b/buch/chapters/060-integral/rational.tex index ae64c34..7b24e9f 100644 --- a/buch/chapters/060-integral/rational.tex +++ b/buch/chapters/060-integral/rational.tex @@ -157,7 +157,7 @@ p(x),q(x)\in\mathbb{Q}[x] q(x)\ne 0 \biggr\}, \] -bestehend aus allen Quotienten von Polynome, deren Nenner nicht +bestehend aus allen Quotienten von Polynomen, deren Nenner nicht das Nullpolynom ist, heisst der Körper der {\em rationalen Funktionen} \index{rationale Funktion}% mit Koeffizienten in $\mathbb{Q}$. diff --git a/buch/chapters/060-integral/sqrat.tex b/buch/chapters/060-integral/sqrat.tex index ceb8650..787cfc9 100644 --- a/buch/chapters/060-integral/sqrat.tex +++ b/buch/chapters/060-integral/sqrat.tex @@ -331,8 +331,9 @@ Letzteres wird im nächsten Abschnitt berechnet. % Das Integral von $1/y$ % \subsubsection{Das Integral von $1/y$} -Eine Stammfunktion von $1/y$ kann mit etwas Geschick bekannten -Interationstechniken gefunden werden. +Eine Stammfunktion von $1/y$ kann mit etwas Geschick mit den +Interationstechniken gefunden werden, die man in einem Analysis-Kurs +lernt. Durch Ableitung der Funktion \[ F @@ -471,7 +472,7 @@ die bei der Berechnung der Integrale \eqref{buch:integral:sqrat:eqn:2teart} auftreten. Insbesondere liefert die Rechnung eine Körpererweiterung von $\mathcal{K}(x,y)$ um die logarithmische Funktionen -$\log(x+b/2a+y/\sqrt{y})$ und $\log v_i$, in der $R(x,y)$ eine +$\log(x+b/2a+y/\!\sqrt{y})$ und $\log v_i$, in der $R(x,y)$ eine Stammfunktion hat. -- cgit v1.2.1 From 50ecdafd467b0ec21be5b3bffce1d4c5acbb4fe6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Thu, 26 May 2022 08:36:59 +0200 Subject: add missing file --- buch/SeminarSpezielleFunktionen.tex | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 buch/SeminarSpezielleFunktionen.tex diff --git a/buch/SeminarSpezielleFunktionen.tex b/buch/SeminarSpezielleFunktionen.tex new file mode 100644 index 0000000..4ee1900 --- /dev/null +++ b/buch/SeminarSpezielleFunktionen.tex @@ -0,0 +1,7 @@ +% +% buch.tex -- Buch zum mathematischen Seminar Spezielle Funktionen +% +% (c) 2022 Prof. Dr. Andreas Mueller, OST Ostschweizer Fachhochschule +% +\def\IncludeBookCover{1} +\input{common/content.tex} -- cgit v1.2.1 From 14b48dfeb636fe25b0745a2ab617cc5d307c06e6 Mon Sep 17 00:00:00 2001 From: runterer Date: Thu, 26 May 2022 20:38:30 +0200 Subject: =?UTF-8?q?tikz=20und=20eulerprodukt=20hinzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- buch/papers/zeta/analytic_continuation.tex | 23 ++++++- buch/papers/zeta/continuation_overview.tikz.tex | 7 +- buch/papers/zeta/euler_product.tex | 85 +++++++++++++++++++++++++ buch/papers/zeta/main.tex | 1 + buch/papers/zeta/zeta_gamma.tex | 7 +- 5 files changed, 114 insertions(+), 9 deletions(-) create mode 100644 buch/papers/zeta/euler_product.tex diff --git a/buch/papers/zeta/analytic_continuation.tex b/buch/papers/zeta/analytic_continuation.tex index 5e09e42..408a1f7 100644 --- a/buch/papers/zeta/analytic_continuation.tex +++ b/buch/papers/zeta/analytic_continuation.tex @@ -1,7 +1,26 @@ \section{Analytische Fortsetzung} \label{zeta:section:analytische_fortsetzung} \rhead{Analytische Fortsetzung} -%TODO missing Text +Die analytische Fortsetzung der Riemannschen Zetafunktion ist äusserst interessant. +Sie ermöglicht die Berechnung von $\zeta(-1)$ und weiterer spannender Werte. +So liegen zum Beispiel unendlich viele Nullstellen der Zetafunktion bei $\Re(s) = 0.5$. +Diese sind relevant für die Primzahlverteilung und sind Gegenstand der Riemannschen Vermutung. + +Es werden zwei verschiedene Fortsetzungen benötigt. +Die erste erweitert die Zetafunktion auf $\Re(s) > 0$. +Die zweite verwendet eine Spiegelung an der $\Re(s) = 0.5$ Linie und erschliesst damit die ganze komplexe Ebene. +Eine grafische Darstellung dieses Plans ist in Abbildung \ref{zeta:fig:continuation_overview} zu sehen. +\begin{figure} + \centering + \input{papers/zeta/continuation_overview.tikz.tex} + \caption{ + Die verschiedenen Abschnitte der Riemannschen Zetafunktion. + Die originale Definition von \eqref{zeta:equation1} ist im grünen Bereich gültig. + Für den blauen Bereich gilt \eqref{zeta:equation:fortsetzung1}. + Um den roten Bereich zu bekommen verwendet die Funktionalgleichung \eqref{zeta:equation:functional} eine Spiegelung an $\Re(s) = 0.5$. + } + \label{zeta:fig:continuation_overview} +\end{figure} \subsection{Fortsetzung auf $\Re(s) > 0$} \label{zeta:subsection:auf_bereich_ge_0} Zuerst definieren die Dirichletsche Etafunktion als @@ -42,7 +61,7 @@ Durch Subtraktion der beiden Gleichungen \eqref{zeta:align1} minus \eqref{zeta:a &= \eta(s). \end{align} Dies ist die Fortsetzung auf den noch unbekannten Bereich $0 < \Re(s) < 1$ -\begin{equation} +\begin{equation} \label{zeta:equation:fortsetzung1} \zeta(s) := \left(1 - \frac{1}{2^{s-1}} \right)^{-1} \eta(s). diff --git a/buch/papers/zeta/continuation_overview.tikz.tex b/buch/papers/zeta/continuation_overview.tikz.tex index 03224ff..836ab1d 100644 --- a/buch/papers/zeta/continuation_overview.tikz.tex +++ b/buch/papers/zeta/continuation_overview.tikz.tex @@ -1,12 +1,13 @@ \begin{tikzpicture}[>=stealth', auto, node distance=0.9cm, scale=2, dot/.style={fill, circle, inner sep=0, minimum size=0.1cm}] - \draw[->] (-2,0) -- (-1,0) node[dot]{} node[anchor=north]{$-1$} -- (0,0) node[anchor=north west]{$0$} -- (1,0) node[anchor=north west]{$1$} -- (2,0) node[anchor=west]{Re$(s)$}; + \draw[->] (-2,0) -- (-1,0) node[dot]{} node[anchor=north]{$-1$} -- (0,0) node[anchor=north west]{$0$} -- (0.5,0) node[anchor=north west]{$0.5$}-- (1,0) node[anchor=north west]{$1$} -- (2,0) node[anchor=west]{$\Re(s)$}; - \draw[->] (0,-1.2) -- (0,1.2) node[anchor=south]{Im$(s)$}; + \draw[->] (0,-1.2) -- (0,1.2) node[anchor=south]{$\Im(s)$}; \begin{scope}[yscale=0.1] \draw[] (1,-1) -- (1,1); \end{scope} + \draw[dotted] (0.5,-1) -- (0.5,1); \begin{scope}[] \fill[opacity=0.2, red] (-1.8,1) rectangle (0, -1); @@ -14,4 +15,4 @@ \fill[opacity=0.2, green] (1,1) rectangle (1.8, -1); \end{scope} -\end{tikzpicture} \ No newline at end of file +\end{tikzpicture} diff --git a/buch/papers/zeta/euler_product.tex b/buch/papers/zeta/euler_product.tex new file mode 100644 index 0000000..a6ed512 --- /dev/null +++ b/buch/papers/zeta/euler_product.tex @@ -0,0 +1,85 @@ +\section{Eulerprodukt} \label{zeta:section:eulerprodukt} +\rhead{Eulerprodukt} + +Das Eulerprodukt stellt die Verbindung der Zetafunktion und der Primzahlen her. +Diese Verbindung ist sehr wichtig, da durch sie eine Aussage zur Primzahlverteilung gemacht werden kann. +Die Verteilung der Primzahlen ist Gegenstand der Riemannschen Vermutung, welche eines der grössten ungelösten Probleme der Mathematik ist. + +\begin{satz} + Für alle Zahlen $s$ mit $\Re(s) > 1$ ist die Zetafunktion identisch mit dem unendlichen Eulerprodukt + \begin{equation}\label{zeta:eq:eulerprodukt} + \zeta(s) + = + \sum_{n=1}^\infty + \frac{1}{n^s} + = + \prod_{p \in P} + \frac{1}{1-p^{-s}} + \end{equation} + wobei $P$ die Menge aller Primzahlen darstellt. +\end{satz} + +\begin{proof}[Beweis] + Der Beweis startet mit dem Eulerprodukt und stellt dieses so um, dass die Zetafunktion erscheint. + Als erstes ersetzen wir die Faktoren durch geometrische Reihen + \begin{equation} + \prod_{i=1}^{\infty} + \frac{1}{1-p^{-s}} + = + \prod_{p \in P} + \sum_{k_i=0}^{\infty} + \left( + \frac{1}{p_i^s} + \right)^{k_i} + = + \prod_{p \in P} + \sum_{k_i=0}^{\infty} + \frac{1}{p_i^{s k_i}}, + \end{equation} + dabei iteriert der Index $i$ über alle Primzahlen $p_i$. + Durch Ausschreiben der Multiplikation und Ausklammern der Summen erhalten wir + \begin{align} + \prod_{p \in P} + \sum_{k_i=0}^{\infty} + \frac{1}{p_i^{s k_i}} + &= + \sum_{k_1=0}^{\infty} + \frac{1}{p_1^{s k_1}} + \sum_{k_2=0}^{\infty} + \frac{1}{p_2^{s k_2}} + \ldots + \nonumber \\ + &= + \sum_{k_1=0}^{\infty} + \sum_{k_2=0}^{\infty} + \ldots + \left( + \frac{1}{p_1^{k_1}} + \frac{1}{p_2^{k_2}} + \ldots + \right)^s. + \label{zeta:equation:eulerprodukt2} + \end{align} + Der Fundamentalsatz der Arithmetik (Primfaktorzerlegung) besagt, dass jede beliebige Zahl $n \in \mathbb{N}$ durch eine eindeutige Primfaktorzerlegung beschrieben werden kann + \begin{equation} + n = \prod_i p_i^{k_i} \quad \forall \quad n \in \mathbb{N}. + \end{equation} + Jeder Summand der Summen in \eqref{zeta:equation:eulerprodukt2} ist somit eine Zahl $n$. + Da die Summen alle möglichen Kombinationen von Exponenten und Primzahlen in \eqref{zeta:equation:eulerprodukt2} enthält haben wir + \begin{equation} + \sum_{k_1=0}^{\infty} + \sum_{k_2=0}^{\infty} + \ldots + \left( + \frac{1}{p_1^{k_1}} + \frac{1}{p_2^{k_2}} + \ldots + \right)^s + = + \sum_{n=1}^\infty + \frac{1}{n^s} + = + \zeta(s) + \end{equation} +\end{proof} + diff --git a/buch/papers/zeta/main.tex b/buch/papers/zeta/main.tex index e0ea8e1..caddace 100644 --- a/buch/papers/zeta/main.tex +++ b/buch/papers/zeta/main.tex @@ -11,6 +11,7 @@ %TODO Einleitung \input{papers/zeta/einleitung.tex} +\input{papers/zeta/euler_product.tex} \input{papers/zeta/zeta_gamma.tex} \input{papers/zeta/analytic_continuation.tex} diff --git a/buch/papers/zeta/zeta_gamma.tex b/buch/papers/zeta/zeta_gamma.tex index 49fea74..db41676 100644 --- a/buch/papers/zeta/zeta_gamma.tex +++ b/buch/papers/zeta/zeta_gamma.tex @@ -2,9 +2,8 @@ \rhead{Zusammenhang mit der Gammafunktion} In diesem Abschnitt wird gezeigt, wie sich die Zetafunktion durch die Gammafunktion $\Gamma(s)$ ausdrücken lässt. -Dieser Zusammenhang der Art $\zeta(s) = f(\Gamma(s))$ wird später für die Herleitung der analytischen Fortsetzung gebraucht. +Dieser Zusammenhang der Art $\zeta(s) = f(\Gamma(s))$ ist nicht nur interessant, er wird später auch für die Herleitung der analytischen Fortsetzung gebraucht. -%TODO ref Gamma Wir erinnern uns an die Definition der Gammafunktion in \eqref{buch:rekursion:gamma:integralbeweis} \begin{equation*} \Gamma(s) @@ -51,12 +50,12 @@ Die Summe über $e^{-nu}$ können wir als geometrische Reihe schreiben und erhal &= \frac{1}{e^u - 1}. \end{align} -Wenn wir dieses Resultat einsetzen in \eqref{zeta:equation:zeta_gamma1} und durch $\Gamma(s)$ teilen, erhalten wir %TODO formulieren als Satz +Wenn wir dieses Resultat einsetzen in \eqref{zeta:equation:zeta_gamma1} und durch $\Gamma(s)$ teilen, erhalten wir den gewünschten Zusammenhang \begin{equation}\label{zeta:equation:zeta_gamma_final} \zeta(s) = \frac{1}{\Gamma(s)} \int_0^{\infty} \frac{u^{s-1}}{e^u -1} - du. + du \qed \end{equation} -- cgit v1.2.1 From 7459c95431d89576126a6a0007238592a4f5f033 Mon Sep 17 00:00:00 2001 From: runterer Date: Fri, 27 May 2022 20:10:13 +0200 Subject: Minor improvements --- buch/papers/zeta/analytic_continuation.tex | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/buch/papers/zeta/analytic_continuation.tex b/buch/papers/zeta/analytic_continuation.tex index 408a1f7..40424e0 100644 --- a/buch/papers/zeta/analytic_continuation.tex +++ b/buch/papers/zeta/analytic_continuation.tex @@ -14,7 +14,7 @@ Eine grafische Darstellung dieses Plans ist in Abbildung \ref{zeta:fig:continuat \centering \input{papers/zeta/continuation_overview.tikz.tex} \caption{ - Die verschiedenen Abschnitte der Riemannschen Zetafunktion. + Die verschiedenen Abschnitte der Riemannschen Zetafunktion. Die originale Definition von \eqref{zeta:equation1} ist im grünen Bereich gültig. Für den blauen Bereich gilt \eqref{zeta:equation:fortsetzung1}. Um den roten Bereich zu bekommen verwendet die Funktionalgleichung \eqref{zeta:equation:functional} eine Spiegelung an $\Re(s) = 0.5$. @@ -76,33 +76,35 @@ Wir beginnen damit, die Gammafunktion für den halben Funktionswert zu berechnen \int_0^{\infty} t^{\frac{s}{2}-1} e^{-t} dt. \end{equation} Nun substituieren wir $t$ mit $t = \pi n^2 x$ und $dt=\pi n^2 dx$ und erhalten -\begin{align} +\begin{equation} \Gamma \left( \frac{s}{2} \right) - &= + = \int_0^{\infty} (\pi n^2)^{\frac{s}{2}} x^{\frac{s}{2}-1} e^{-\pi n^2 x} - \,dx - && \text{Division durch } (\pi n^2)^{\frac{s}{2}} - \\ + \,dx. +\end{equation} +Analog zum Abschnitt \ref{zeta:section:zusammenhang_mit_gammafunktion} teilen wir durch $(\pi n^2)^{\frac{s}{2}}$ +\begin{equation} \frac{\Gamma \left( \frac{s}{2} \right)}{\pi^{\frac{s}{2}} n^s} - &= + = \int_0^{\infty} x^{\frac{s}{2}-1} e^{-\pi n^2 x} - \,dx - && \text{Zeta durch Summenbildung } \sum_{n=1}^{\infty} - \\ + \,dx, +\end{equation} +und finden Zeta durch die Summenbildung $\sum_{n=1}^{\infty}$ +\begin{equation} \frac{\Gamma \left( \frac{s}{2} \right)}{\pi^{\frac{s}{2}}} \zeta(s) - &= + = \int_0^{\infty} x^{\frac{s}{2}-1} \sum_{n=1}^{\infty} e^{-\pi n^2 x} \,dx. \label{zeta:equation:integral1} -\end{align} +\end{equation} Die Summe kürzen wir ab als $\psi(x) = \sum_{n=1}^{\infty} e^{-\pi n^2 x}$. %TODO Wieso folgendes -> aus Fourier Signal Es gilt -- cgit v1.2.1 From 42a5955183a1bc0678158c61fd6189c39d305697 Mon Sep 17 00:00:00 2001 From: runterer Date: Fri, 27 May 2022 23:29:56 +0200 Subject: added poissonsche summenformel --- buch/papers/zeta/analytic_continuation.tex | 176 ++++++++++++++++++++++++++++- 1 file changed, 171 insertions(+), 5 deletions(-) diff --git a/buch/papers/zeta/analytic_continuation.tex b/buch/papers/zeta/analytic_continuation.tex index 40424e0..0ccc116 100644 --- a/buch/papers/zeta/analytic_continuation.tex +++ b/buch/papers/zeta/analytic_continuation.tex @@ -106,15 +106,65 @@ und finden Zeta durch die Summenbildung $\sum_{n=1}^{\infty}$ \,dx. \label{zeta:equation:integral1} \end{equation} Die Summe kürzen wir ab als $\psi(x) = \sum_{n=1}^{\infty} e^{-\pi n^2 x}$. -%TODO Wieso folgendes -> aus Fourier Signal -Es gilt +Im Abschnitt \ref{zeta:subsec:poisson_summation} wird die poissonsche Summenformel $\sum f(n) = \sum F(n)$ bewiesen. +In unserem Problem ist $f(n) = e^{-\pi n^2 x}$ und die zugehörige Fouriertransformation $F(n)$ ist +\begin{equation} + F(n) + = + \mathcal{F} + ( + e^{-\pi n^2 x} + ) + = + \frac{1}{\sqrt{x}} + e^{\frac{-n^2 \pi}{x}}. +\end{equation} +Dadurch ergibt sich \begin{equation}\label{zeta:equation:psi} - \psi(x) + \sum_{n=-\infty}^{\infty} + e^{-\pi n^2 x} = + \frac{1}{\sqrt{x}} + \sum_{n=-\infty}^{\infty} + e^{\frac{-n^2 \pi}{x}}, +\end{equation} +wobei wir die Summen so verändern müssen, dass sie bei $n=1$ beginnen und wir $\psi(x)$ erhalten als +\begin{align} + 2 + \sum_{n=1}^{\infty} + e^{-\pi n^2 x} + + + 1 + &= + \frac{1}{\sqrt{x}} + \left( + 2 + \sum_{n=1}^{\infty} + e^{\frac{-n^2 \pi}{x}} + + + 1 + \right) + \\ + 2 + \psi(x) + + + 1 + &= + \frac{1}{\sqrt{x}} + \left( + 2 + \psi\left(\frac{1}{x}\right) + + + 1 + \right) + \\ + \psi(x) + &= - \frac{1}{2} + \frac{\psi\left(\frac{1}{x} \right)}{\sqrt{x}} - + \frac{1}{2 \sqrt{x}}. -\end{equation} + + \frac{1}{2 \sqrt{x}}.\label{zeta:equation:psi} +\end{align} +Diese Gleichung wird später wichtig werden. Zunächst teilen wir nun das Integral aus \eqref{zeta:equation:integral1} auf als \begin{equation}\label{zeta:equation:integral2} @@ -309,3 +359,119 @@ Somit haben wir die analytische Fortsetzung gefunden als \zeta(1-s). \end{equation} %TODO Definitionen und Gleichungen klarer unterscheiden + +\subsection{Poissonsche Summenformel} \label{zeta:subsec:poisson_summation} + +Der Beweis für Gleichung \ref{zeta:equation:psi} folgt direkt durch die poissonsche Summenformel. +Um diese zu beweisen, berechnen wir zunächst die Fourierreihe der Dirac Delta Funktion. + +\begin{lemma} + Die Fourierreihe der periodischen Dirac Delta Funktion $\sum \delta(x - 2\pi k)$ ist + \begin{equation} \label{zeta:equation:fourier_dirac} + \sum_{k=-\infty}^{\infty} + \delta(x - 2\pi k) + = + \frac{1}{2\pi} + \sum_{n=-\infty}^{\infty} + e^{i n x}. + \end{equation} +\end{lemma} + +\begin{proof}[Beweis] + Eine Fourierreihe einer beliebigen periodischen Funktion $f(x)$ berechnet sich als + \begin{align} + f(x) + &= + \sum_{n=-\infty}^{\infty} + c_n + e^{i n x} \\ + c_n + &= + \frac{1}{2\pi} + \int_{-\pi}^{\pi} + f(x) + e^{-i n x} + \, dx. + \end{align} + Wenn $f(x)=\delta(x)$ eingesetz wird ergeben sich konstante Koeffizienten + \begin{equation} + c_n + = + \frac{1}{2\pi} + \int_{-\pi}^{\pi} + \delta(x) + e^{-i n x} + \, dx + = + \frac{1}{2\pi}, + \end{equation} + womit die sehr einfache Fourierreihe der Dirac Delta Funktion berechnet wäre. +\end{proof} + +\begin{satz}[Poissonsche Summernformel] + Die Summe einer Funktion $f(n)$ über alle ganzen Zahlen $n$ ist äquivalent zur Summe ihrer Fouriertransformation $F(k)$ über alle ganzen Zahlen $k$ + \begin{equation} + \sum_{n=-\infty}^{\infty} + f(n) + = + \sum_{k=-\infty}^{\infty} + F(k). + \end{equation} +\end{satz} + +\begin{proof}[Beweis] + Wir schreiben die Summe über die Fouriertransformation aus + \begin{align} + \sum_{k=-\infty}^{\infty} + F(k) + &= + \sum_{k=-\infty}^{\infty} + \int_{-\infty}^{\infty} + f(x) + e^{-i 2\pi x k} + \, dx + \\ + &= + \int_{-\infty}^{\infty} + f(x) + \underbrace{ + \sum_{k=-\infty}^{\infty} + e^{-i 2\pi x k} + }_{\text{\eqref{zeta:equation:fourier_dirac}}} + \, dx, + \end{align} + und verwenden die Fouriertransformation der Dirac Funktion aus \eqref{zeta:equation:fourier_dirac} + \begin{align} + \sum_{k=-\infty}^{\infty} + e^{-i 2\pi x k} + &= + 2 \pi + \sum_{k=-\infty}^{\infty} + \delta(-2\pi x - 2\pi k) + \\ + &= + \frac{2 \pi}{2 \pi} + \sum_{k=-\infty}^{\infty} + \delta(x + k). + \end{align} + Wenn wir dies einsetzen und erhalten wir den gesuchten Beweis für die poissonsche Summenformel + \begin{equation} + \sum_{k=-\infty}^{\infty} + F(k) + = + \int_{-\infty}^{\infty} + f(x) + \sum_{k=-\infty}^{\infty} + \delta(x + k) + \, dx + = + \sum_{k=-\infty}^{\infty} + \int_{-\infty}^{\infty} + f(x) + \delta(x + k) + \, dx + = + \sum_{k=-\infty}^{\infty} + f(k). + \end{equation} +\end{proof} -- cgit v1.2.1 From df8e535423f408f789f0cb624df7a4980572bc4d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sat, 28 May 2022 14:57:18 +0200 Subject: more onm integration and lemniscate --- buch/chapters/060-integral/differentialkoerper.tex | 5 + buch/chapters/060-integral/diffke.tex | 106 ++++++++++- buch/chapters/060-integral/elementar.tex | 199 +++++++++++++++++++++ buch/chapters/060-integral/erweiterungen.tex | 98 +++++++++- buch/chapters/060-integral/logexp.tex | 20 ++- buch/chapters/060-integral/rational.tex | 27 ++- buch/chapters/060-integral/risch.tex | 12 ++ buch/chapters/110-elliptisch/lemniskate.tex | 24 ++- buch/chapters/references.bib | 7 + 9 files changed, 475 insertions(+), 23 deletions(-) diff --git a/buch/chapters/060-integral/differentialkoerper.tex b/buch/chapters/060-integral/differentialkoerper.tex index a071ae2..a112e33 100644 --- a/buch/chapters/060-integral/differentialkoerper.tex +++ b/buch/chapters/060-integral/differentialkoerper.tex @@ -15,6 +15,11 @@ Doch woher weiss man, dass es keine solche Funktion gibt, und was heisst überhaupt ``Stammfunktion in geschlossener Form''? In diesem Abschnitt wird daher ein algebraischer Rahmen entwickelt, in dem diese Frage sinnvoll gestellt werden kann. +Das ultimative Ziel, welches aber erst in +Abschnitt~\ref{buch:integral:section:risch} in Angriff genommen +wird, ist ein Computer-Algorithmus, der Integrale in geschlossener +Form findet oder beweist, dass dies für einen gegebenen Integranden +nicht möglich ist. \input{chapters/060-integral/rational.tex} \input{chapters/060-integral/erweiterungen.tex} diff --git a/buch/chapters/060-integral/diffke.tex b/buch/chapters/060-integral/diffke.tex index 02e90f6..61badc8 100644 --- a/buch/chapters/060-integral/diffke.tex +++ b/buch/chapters/060-integral/diffke.tex @@ -105,6 +105,94 @@ $ab\in C$. Die Menge $C$ heisst der {\em Konstantenkörper} von $\mathscr{F}$. \index{Konstantenkörper}% +% +% Ableitung algebraischer Elemente +% +\subsubsection{Ableitung und algebraische Körpererweiterungen} +Die Rechenregeln in einem Differentialkörper $\mathscr{F}$ legen auch die +Ableitung eines algebraischen Elements fest. +Sei $m(z)=m_0+m_1z+\ldots+m_{n-1}z^{n-1}+z^n$ das Minimalpolynom eines +über $\mathscr{F}$ algebraischen Elements $f$. +Aus $m(f)=0$ folgt durch Ableiten +\[ +0 += +m(f)' += +m_0' ++ +(m_1'f+m_1f') ++ +(m_2'f + m_12f'f) ++ +\ldots ++ +(m_{n-1}'f^{n-1} + m_{n-1} (n-1)f'f^{n-2}) ++ +nf'f^{n-1}. +\] +Zusammenfassen der Ableitung $f'$ auf der linken Seite liefert die +Gleichung +\[ +f'( +m_1+2m_2f+\ldots+(n-1)m_{n-1}f^{n-2}+nf^{n-1} +) += +m_0' + m_1'f + m_2'f^2 + \ldots + m_{n-1}'f^{n-1} + f^n, +\] +aus der +\[ +f' += +\frac{ +m_0' + m_1'f + m_2'f^2 + \ldots + m_{n-1}'f^{n-1} + f^n +}{ +m_1+2m_2f+\ldots+(n-1)m_{n-1}f^{n-2}+nf^{n-1} +} +\] +als Element von $\mathscr{F}(g)$ berechnet werden kann. +Die Ableitungsoperation lässt sich somit auf die Körpererweiterung +$\mathscr{F}(f)$ fortsetzen. + +\begin{beispiel} +Das über $\mathbb{Q}(x)$ algebraische Element $y=\sqrt{ax^2+bx+c}$ +hat das Minimalpolynom +\[ +m(z) += +z^2 - [ax^2+bx+c] +\in +\mathbb{Q}(x)[z] +\] +mit Koeffizienten $m_0 = ax^2+bx+c,$ $m_1=0$ und $m_2=1$. +Es hat die Ableitung +\[ +y' += +\frac{m_0'}{2m_2y} += +\frac{ +2ax+b +}{ +2y +} +\in +\mathbb{Q}(x,y) +\] +wegen $m_0'=2ax+b$. +\end{beispiel} + +\begin{definition} +Eine differentielle Körpererweiterung ist eine Körpererweiterung +$\mathscr{K}\subset\mathscr{F}$ von Differentialkörpern derart, dass +die Ableitungen $D_{\mathscr{K}}$ in $\mathscr{K}$ +und $D_{\mathscr{F}}$ in $\mathscr{F}$ übereinstimmen: +\( +D_{\mathscr{K}}g= D_{\mathscr{F}} g +\) +für alle $g\in\mathscr{K}$. +\end{definition} + % % Logarithmus und Exponantialfunktion % @@ -116,6 +204,7 @@ Sie zeichnen sich aber durch besondere Ableitungseigenschaften aus. Die Theorie der gewöhnlichen Differentialgleichungen garantiert, dass eine Funktion durch eine Differentialgleichung und Anfangsbedingungen festgelegt ist. +\label{buch:integral:expundlog} Für die Exponentialfunktion und der Logarithmus haben die Ableitungseigenschaften \[ @@ -128,10 +217,19 @@ x \log'(x) = 1. In der algebraischen Beschreibung eines Funktionenkörpers gibt es das Konzept des Wertes einer Funktion an einer bestimmten Stelle nicht. Somit können keine Anfangsbedingungen vorgegeben werden. -Da die Gleichungen linear sind, sind Vielfache einer Lösung wieder -Lösungen. -Insbesondere ist mit $\exp(x)$ auch $a\exp(x)$ eine Lösung und mit -$\log(x)$ auch $a\log(x)$ für alle Konstanten $a$. +Da die Gleichung für $\exp$ linear sind, sind Vielfache einer Lösung wieder +Lösungen, +insbesondere ist mit $\exp(x)$ auch $a\exp(x)$ eine Lösung. +Die Gleichung für $\log$ ist nicht linear, aber es ist +$\log'(x) = 1/x$, $\log$ ist eine Stammfunktion von $1/x$, die +nur bis auf eine Konstante bestimmt ist. +Tatsächlich gilt +\[ +x(\log(x)+a)' += +x\log(x) + xa' = x\log(x)=1, +\] +die Funktion $\log(x)+a$ ist also auch eine Lösung für den Logarithmus. Die Eigenschaft, dass die Exponentialfunktion die Umkehrfunktion des Logarithmus ist, lässt sich mit den Mitteln eines Differentialkörpers diff --git a/buch/chapters/060-integral/elementar.tex b/buch/chapters/060-integral/elementar.tex index 854a875..fd5f051 100644 --- a/buch/chapters/060-integral/elementar.tex +++ b/buch/chapters/060-integral/elementar.tex @@ -13,3 +13,202 @@ Die Stammfunktionen verwenden dieselben Funktionen oder höchstens Erweiterungen um Logarithmen von Funktionen, die man schon im Integranden gesehen hat. +% +% Exponentielle und logarithmische Funktione +% +\subsubsection{Exponentielle und logarithmische Funktionen} +In Abschnitt~\ref{buch:integral:subsection:diffke} haben wir +bereits die Exponentialfunktion $e^x$ und die Logarithmusfunktion +$\log x$ charakterisiert als eine Körpererweiterung durch +Elemente, die der Differentialgleichung +\[ +\exp' = \exp +\qquad\text{und}\qquad +\log' = \frac{1}{x} +\] +genügen. +Für die Stammfunktionen, die in +Abschnitt~\ref{buch:integral:subsection:logexp} +gefunden wurden, sind aber Logarithmusfunktionen nicht von +$x$ sondern von beliebigen über $\mathbb{Q}$ algebraischen Elementen +nötig. +Um zu verstehen, wie wir diese Funktion als Körpererweiterung erhalten +könnten, betrachten wir die Ableitung einer Exponentialfunktion +$\vartheta(x) = \exp(f(x))$ und eines +Logarithmus +$\psi(x) = \log(f(x))$, wie man sie mit der Kettenregel +berechnet hätte: +\begin{align*} +\vartheta'(x) +&=\exp(f(x)) \cdot f'(x) +& +\psi'(x) +&= +\frac{f'(x)}{f(x)} +\quad\Leftrightarrow\quad +f(x)\psi'(x) += +f'(x). +\end{align*} +Dies motiviert die folgende Definition + +\begin{definition} +\label{buch:integral:def:explog} +Sei $\mathscr{F}$ ein Differentialklörper und $f\in\mathscr{F}$. +Ein Exponentialfunktion von $f$ ist ein $\vartheta\in \mathscr{F}$mit +$\vartheta' = \vartheta f'$. +Ein Logarithmus von $f$ ist ein $\vartheta\in\mathscr{F}$ mit +$f\vartheta'=f'$. +\end{definition} + +Für $f=x$ mit $f'=1$ reduziert sich die +Definition~\ref{buch:integral:def:explog} +auf die Definition der Exponentialfunktion $\exp(x)$ und +Logarithmusfunktion $\log(x)$ auf Seite~\pageref{buch:integral:expundlog}. + + +% +% +% +\subsubsection{Transzendente Körpererweiterungen} +Die Wurzelfunktionen haben wir früher als algebraische Erweiterungen +eines Differentialkörpers erkannt. +Die logarithmischen und exponentiellen Elemente gemäss +Definition~\ref{buch:integral:def:explog} sind nicht algebraisch. + +\begin{definition} +\label{buch:integral:def:transzendent} +Sei $\mathscr{F}\subset\mathscr{G}$ eine Körpererweiterung und +$\vartheta\in\mathscr{G}$. +$\vartheta$ heisst {\em transzendent}, wenn $\vartheta$ nicht +algebraisch ist. +\end{definition} + +\begin{beispiel} +Die Funktion $f = e^x + e^{2x} + e^{x/2}$ ist sicher transzendent, +in diesem Beispiel zeigen wir, dass es mindestens drei verschiedene +Möglichkeiten gibt, eine Körpererweiterung von $\mathbb{Q}(x)$ zu +konstruieren, die $f$ enthält. + +Erste Möglichkeit: $f=\vartheta_1 + \vartheta_2 + \vartheta_3$ mit +$\vartheta_1=e^x$, +$\vartheta_2=e^{2x}$ +und +$\vartheta_3=e^{x/2}$. +Jedes der Elemente $\vartheta_i$ ist exponentiell über $\mathbb{Q}(x)$ und +$f$ ist in +\[ +\mathbb{Q}(x) +\subset +\mathbb{Q}(x,\vartheta_1) +\subset +\mathbb{Q}(x,\vartheta_1,\vartheta_2) +\subset +\mathbb{Q}(x,\vartheta_1,\vartheta_2,\vartheta_3) +\ni +f. +\] +Jede dieser Körpererweiterungen ist transzendent. + +Zweite Möglichkeit: $\vartheta_1=e^x$ ist exponentiell über +$\mathbb{Q}(x)$ und $\mathbb{Q}(x,\vartheta_1)$ enthält wegen +\[ +(\vartheta_1^2)' += +2\vartheta_1\vartheta_1' += +2\vartheta_1^2, +\] +somit ist $\vartheta_1^2=\vartheta_2$ eine Exponentialfunktion von $2x$ +über $\mathbb{Q}(x)$. +Das Element $\vartheta_3=e^{x/2}$ ist zwar auch exponentiell über +$\mathbb{Q}(x)$, es ist aber auch eine Nullstelle des Polynoms +$m(z)=z^2-[\vartheta_1]$. +Die Erweiterung +$\mathbb{Q}(x,\vartheta_1)\subset\mathbb{Q}(x,\vartheta_1,\vartheta_3)$ +ist eine algebraische Erweiterung, die +$f=\vartheta_1 + \vartheta_1^2+\vartheta_3$ enthält. + +Dritte Möglichkeit: $\vartheta_3=e^{x/2}$ ist exponentiell über +$\mathbb{Q}(x)$. +Die transzendente Körpererweiterung +\[ +\mathbb{Q}(x) \subset \mathbb{Q}(x,\vartheta_3) +\] +enthält das Element +$f=\vartheta_3^4+\vartheta_3^2 + \vartheta_3 $. +\end{beispiel} + +Das Beispiel zeigt, dass man nicht sagen kann, dass eine Funktion +ausschliesslich in einer algebraischen oder transzendenten Körpererweiterung +zu finden ist. +Vielmehr gibt es für die gleiche Funktion möglicherweise verschiedene +Körpererweiterungen, die alle die Funktion enthalten können. + +% +% Elementare Funktionen +% +\subsubsection{Elementare Funktionen} +Die Stammfunktionen~\eqref{buch:integration:risch:eqn:integralbeispiel2} +können aufgebaut werden, indem man dem Körper $\mathbb{Q}(x)$ schrittweise +sowohl algebraische wie auch transzendente Elemente hinzufügt, +wie in der folgenden Definition, die dies für abstrakte +Differentialkörpererweiterungen formuliert. + +\begin{definition} +Eine Körpererweiterung $\mathscr{F}\subset\mathscr{G}$ heisst +{\em transzendente elementare Erweiterung}, wenn +$\mathscr{G} = \mathscr{F}(\vartheta_1,\dots,\vartheta_n)$ und +jedes der Element $\vartheta_i$ transzendent und logarithmisch oder +exponentiell ist über +$\mathscr{F}_{i-1}=\mathscr{F}(\vartheta_1,\dots,\vartheta_{i-1})$. +Die Körpererweiterung $\mathscr{F}\subset\mathscr{G}$ heisst +{\em elementare Erweiterung}, wenn +$\mathscr{G} = \mathscr{F}(\vartheta_1,\dots,\vartheta_n)$ und +jedes Element $\vartheta_i$ ist entweder logarithmisch, exponentiell +oder algebraisch über $\mathscr{F}_{i-1}$. +\end{definition} + +Die Funktionen, die als akzeptable Stammfunktionen für das Integrationsproblem +in Betracht kommen, sind also jene, die in einer geeigneten elementaren +Erweiterung des von $\mathbb{Q}(x)$ liegen. +Ausserdem können auch noch weitere Konstanten nötig sein, sowohl +algebraische Zahlen wie auch Konstanten wie $\pi$ oder $e$. + +\begin{definition} +Sei $\mathscr{K}(x)$ der Differentialklörper der rationalen Funktionen +über dem Konstantenkörper $\mathscr{K}\supset\mathbb{Q}$, der in $\mathbb{C}$ +enthalten ist. +Ist $\mathscr{F}\supset \mathscr{K}(x)$ eine transzendente elementare +Erweiterung von $\mathscr{K}(x)$, dann heisst $\mathscr{F}$ +ein Körper von {\em transzendenten elementaren Funktionen}. +Ist $\mathscr{F}$ eine elementare Erweiterung von $\mathscr{K}(x)$, dann +heisst $\mathscr{F}$ ein Körper von {\em elementaren Funktionen}. +\end{definition} + +\subsubsection{Das Integrationsproblem} +Die elementaren Funktionen enthalten alle Funktionen, die sich mit +arithmetischen Operationen, Wurzeln, Exponentialfunktionen, Logarithmen und +damit auch mit trigonometrischen und hyperbolischen Funktionen und ihren +Umkehrfunktionen aus den rationalen Zahlen, der unabhängigen Variablen $x$ +und möglicherweise einigen zusätzlichen Konstanten aufbauen lassen. +Sei also $f$ eine Funktion in einem Körper von elementaren +Funktionen +\[ +\mathscr(F) += +\mathbb{Q}(\alpha_1,\dots,\alpha_l)(x,\vartheta_1,\dots,\vartheta_n). +\] +Eine elementare Stammfunktion ist eine Funktion $F=\int f$ in einer +elementaren Körpererweiterung +\[ +\mathscr{G} += +\mathbb{Q}(\alpha_1,\dots,\alpha_l,\dots,\alpha_{l+k}) +(x,\vartheta_1,\dots,\vartheta_n,\dots,\vartheta_{n+m}) +\] +mit $F'=f$. +Das Ziel ist, $F$ mit Hilfe eines Algorithmus zu bestimmen. + + + diff --git a/buch/chapters/060-integral/erweiterungen.tex b/buch/chapters/060-integral/erweiterungen.tex index a999ebb..9138f3e 100644 --- a/buch/chapters/060-integral/erweiterungen.tex +++ b/buch/chapters/060-integral/erweiterungen.tex @@ -97,8 +97,8 @@ a_i\in K \} \label{buch:integral:eqn:algelement} \end{equation} -mit $n=\deg m(x) - 1$ der durch Adjunktion von $\alpha$ erhaltene -Erweiterungsköper. +mit $n=\deg m(x) - 1$ der durch {\em Adjunktion} oder Hinzufügen +von $\alpha$ erhaltene Erweiterungsköper. \end{definition} Wieder muss nur überprüft werden, dass jedes Produkt oder jeder @@ -151,7 +151,9 @@ Die Menge $\mathbb{Q}(i)$ ist daher eine algebraische Körpererweiterung von $\mathbb{Q}$ bestehend aus den komplexen Zahlen mit rationalem Real- und Imaginärteil. +% % Transzendente Körpererweiterungen +% \subsubsection{Transzendente Erweiterungen} Nicht alle Zahlen in $\mathbb{R}$ sind algebraisch. Lindemann bewies 1882 einen allgemeinen Satz, aus dem folgt, @@ -201,7 +203,9 @@ $K\subset K(\alpha)$ ist zwar immer noch eine Körpererweiterung, aber $K(\alpha)$ ist nicht mehr ein endlichdimensionaler Vektorraum. Die Körpererweiterung $K\subset K(\alpha)$ heisst {\em transzendent}. +% % rationale Funktionen als Körpererweiterungen +% \subsubsection{Rationale Funktionen als Körpererweiterung} Die unabhängige Variable wird bei Rechnen so behandelt, dass die Potenzen alle linear unabhängig sind. @@ -209,7 +213,9 @@ Dies ist die Grundlage für den Koeffizientenvergleich. Der Körper der rationalen Funktion $K(x)$ ist also eine transzendente Körpererweiterung von $K$. +% % Erweiterungen mit algebraischen Funktionen +% \subsubsection{Algebraische Funktionen} Für das Integrationsproblem möchten wir nicht nur rationale Funktionen verwenden können, sondern auch Wurzelfunktionen. @@ -246,4 +252,92 @@ $y=\sqrt{ax^2+bx+c}$ zu $K(x,y)=K(x,\sqrt{ax^2+bx+c}$ erweitert. Wurzelfunktion werden daher nicht als Zusammensetzungen, sondern als algebraische Erweiterungen eines Funktionenkörpers betrachtet. +% +% Konjugation +% +\subsubsection{Konjugation} +Die komplexen Zahlen sind die algebraische Erweiterung der reellen Zahlen +um die Nullstelle $i$ des Polynoms $m(x)=x^2+1$. +Die Zahl $-i$ ist aber auch eine Nullstelle von $m(x)$, die mit algebraischen +Mitteln nicht von $i$ unterscheidbar ist. +Die komplexe Konjugation $a+bi\mapsto a-bi$ vertauscht die beiden +\index{Konjugation, komplexe}% +\index{komplexe Konjugation}% +Nullstellen des Minimalpolynoms. + +Ähnliches gilt für die Körpererweiterung $\mathbb{Q}(\!\sqrt{2})$. +$\sqrt{2}$ und $\sqrt{2}$ sind beide Nullstellen des Minimalpolynoms +$m(x)=x^2-2$, die mit algebraischen Mitteln nicht unterschiedbar sind. +Sie haben zwar verschiedene Vorzeichen, doch ohne eine Ordnungsrelation +können diese nicht unterschieden werden. +\index{Ordnungsrelation}% +Eine Ordnungsrelation zwischen rationalen Zahlen lässt sich zwar +definieren, aber die Zahl $\sqrt{2}$ ist nicht rational, es braucht +also eine zusätzliche Annahme, zum Beispiel die Identifikation von +$\sqrt{2}$ mit einer reellen Zahl in $\mathbb{R}$, wo der Vergleich +möglich ist. + +Auch in $\mathbb{Q}(\!\sqrt{2})$ ist die Konjugation +$a+b\sqrt{2}\mapsto a-b\sqrt{2}$ eine Selbstabbildung, die +die Körperoperationen respektiert. + +Das Polynom $m(x)=x^2-x-1$ hat die Nullstellen +\[ +\frac12 \pm\sqrt{\biggl(\frac12\biggr)^2+1} += +\frac{1\pm\sqrt{5}}{2} += +\left\{ +\bgroup +\renewcommand{\arraystretch}{2.20} +\renewcommand{\arraycolsep}{2pt} +\begin{array}{lcl} +\displaystyle +\frac{1+\sqrt{5}}{2} &=& \phantom{-}\varphi \\ +\displaystyle +\frac{1-\sqrt{5}}{2} &=& \displaystyle-\frac{1}{\varphi}. +\end{array} +\egroup +\right. +\] +Sie erfüllen die gleiche algebraische Relation $x^2=x+1$. +Sie sind sowohl im Vorzeichen wie auch im absoluten Betrag +verschieden, beides verlangt jedoch eine Ordnungsrelation als +Voraussetzung, die uns fehlt. +Aus beiden kann man mit rationalen Operationen $\sqrt{5}$ gewinnen, +denn +\[ +\sqrt{5} += +4\varphi-1 += +-4\biggl(-\frac{1}{\varphi}\biggr)^2-1 +\qquad\Rightarrow\qquad +\mathbb{Q}(\!\sqrt{5}) += +\mathbb{Q}(\varphi) += +\mathbb{Q}(-1/\varphi). +\] +Die Abbildung $a+b\varphi\mapsto a-b/\varphi$ ist eine Selbstabbildung +des Körpers $\mathbb{Q}(\!\sqrt{5})$, welche die beiden Nullstellen +vertauscht. + +Dieses Phänomen gilt für jede algebraische Erweiterung. +Die Nullstellen des Minimalpolynoms, welches die Erweiterung +definiert, sind grundsätzlich nicht unterscheidbar. +Mit der Adjunktion einer Nullstelle enthält der Erweiterungskörper +auch alle anderen. +Sind $\alpha_1$ und $\alpha_2$ zwei Nullstellen des Minimalpolynoms, +dann definiert die Abbildung $\alpha_1\mapsto\alpha_2$ eine Selbstabbildung, +die die Nullstellen permutiert. + +Die algebraische Körpererweiterung +$\mathbb{Q}(x)\subset \mathbb{Q}(x,\sqrt{ax^2+bx+c})$ +ist nicht unterscheidbar von +$\mathbb{Q}(x)\subset \mathbb{Q}(x,-\!\sqrt{ax^2+bx+c})$. +Für das Integrationsproblem bedeutet dies, dass alle Methoden so +formuliert werden müssen, dass die Wahl der Nullstellen auf die +Lösung keinen Einfluss haben. + diff --git a/buch/chapters/060-integral/logexp.tex b/buch/chapters/060-integral/logexp.tex index 2bfe0e1..e0efab2 100644 --- a/buch/chapters/060-integral/logexp.tex +++ b/buch/chapters/060-integral/logexp.tex @@ -3,7 +3,7 @@ % % (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschlue % -\subsection{Log-Exp-Notation für elementare Funktionen +\subsection{Log-Exp-Notation für trigonometrische und hyperbolische Funktionen \label{buch:integral:subsection:logexp}} Die Integration rationaler Funktionen hat bereits gezeigt, dass eine Stammfunktion nicht immer im Körper der rationalen Funktionen @@ -37,6 +37,7 @@ x \operatorname{arcosh} x - \sqrt{x^2-1}. In der Stammfunktion treten Funktionen auf, die auf den ersten Blick nichts mit den Funktionen im Integranden zu tun haben. +\subsubsection{Trigonometrische und hyperbolische Funktionen} Die trigonometrischen und hyperbolichen Funktionen in~\eqref{buch:integration:risch:allgform} lassen sich alle durch Exponentialfunktionen ausdrücken. @@ -53,7 +54,7 @@ So gilt &\qquad& \cosh x &= \frac12\bigl( e^x + e^{-x} \bigr). \end{aligned} -\label{buch:integral:risch:trighypinv} +\label{buch:integral:risch:trighyp} \end{equation} Nach Multiplikation mit $e^{ix}$ bzw.~$e^{x}$ entsteht eine quadratische Gleichung in $e^{ix}$ bzw.~$e^{x}$. @@ -66,27 +67,27 @@ Die Rechnung ergibt &= \frac{1}{i}\log\bigl( iy\pm\sqrt{1-y^2} -\bigr) +\bigr), & &\qquad& \arccos y &= \log\bigl( y\pm \sqrt{y^2-1} -\bigr) +\bigr), \\ \operatorname{arsinh}y &= \log\bigl( y \pm \sqrt{1+y^2} -\bigr) +\bigr), & &\qquad& \operatorname{arcosh} y &= \log\bigl( y\pm \sqrt{y^2-1} -\bigr) +\bigr). \end{aligned} \label{buch:integral:risch:trighypinv} \end{equation} @@ -97,6 +98,7 @@ Man nennt dies die $\log$-$\exp$-Notation der trigonometrischen und hyperbolischen Funktionen. \index{logexpnotation@$\log$-$\exp$-Notation}% +\subsubsection{$\log$-$\exp$-Notation} Wendet man die Substitutionen \eqref{buch:integral:risch:trighyp} und @@ -110,7 +112,7 @@ an, entstehen die Beziehungen &= \frac12i\bigl( \log(1-ix) - \log(1+ix) -\bigr) +\bigr), \\ \int\bigl( {\textstyle\frac12} @@ -121,12 +123,12 @@ e^{-ix} \bigr) &= -{\textstyle\frac12}ie^{ix} -+{\textstyle\frac12}ie^{-ix} ++{\textstyle\frac12}ie^{-ix}, \\ \int \frac{1}{\sqrt{1-x^2}} &= --i\log\bigl(ix+\sqrt{1-x^2}) +-i\log\bigl(ix+\sqrt{1-x^2}), \\ \int \log\bigl(x+\sqrt{x^2-1}\bigr) &= diff --git a/buch/chapters/060-integral/rational.tex b/buch/chapters/060-integral/rational.tex index 7b24e9f..0ca164d 100644 --- a/buch/chapters/060-integral/rational.tex +++ b/buch/chapters/060-integral/rational.tex @@ -132,7 +132,9 @@ ac + 2bd + (ad+bc)\sqrt{2} \in \mathbb{Q}(\!\sqrt{2}) \end{align*} \end{beispiel} - +% +% Rationale Funktionen +% \subsubsection{Rationalen Funktionen} Die als Antworten auf die Frage nach einer Stammfunktion akzeptablen Funktionen sollten alle rationalen Zahlen sowie die unabhängige @@ -174,5 +176,28 @@ zweier Brüche auch für Nenner funktioniert, die Polynome sind, und die Summe wzeier Brüche von Polynomen wieder in einen Bruch von Polynomen umwandelt. +% +% Warum rationale Zahlen? +% +\subsubsection{Warum die Beschränkung auf rationale Zahlen?} +Aus mathematischer Sicht gibt es gute Gründe, Analysis im Körper $\mathbb{R}$ +oder $\mathbb{C}$ zu betreiben. +Da Ableitung und Integral als Grenzwerte definiert sind, stellt diese +Wahl des Körpers sicher, dass die Grenzwerte auch tatsächlich existieren. +Der Fundamentalsatz der Algebra garantiert, dass über $\mathbb{C}$ +jedes Polynome in Linearfaktoren zerlegt werden kann. + +Der Einfachheit der Analyse in $\mathbb{R}$ oder $\mathbb{C}$ steht +die Schwierigkeit gegenüber, beliebige Elemente von $\mathbb{R}$ in +einem Computer exakt darzustellen. +Für Brüche in $\mathbb{Q}$ gibt es eine solche Darstellung durch +Paare von Ganzzahlen, wie sie die GNU Multiprecision Arithmetic Library +\cite{buch:gmp} realisiert. +Irrationale Zahlen dagegen können nur exakt gehandhabt werden, wenn +man im wesentlichen symbolisch mit ihnen rechnet. +Die Grundlage dafür wird in +Abschnitt~\ref{buch:integral:subsection:koerpererweiterungen} +gelegt. + diff --git a/buch/chapters/060-integral/risch.tex b/buch/chapters/060-integral/risch.tex index 1ba746a..2080ce8 100644 --- a/buch/chapters/060-integral/risch.tex +++ b/buch/chapters/060-integral/risch.tex @@ -6,6 +6,18 @@ \section{Der Risch-Algorithmus \label{buch:integral:section:risch}} \rhead{Risch-Algorithmus} +Die Lösung des Integrationsproblem für $\mathbb{Q}(x)$ und für +$\mathbb{Q}(x,y)$ mit $y=\!\sqrt{ax^2+bx+c}$ hat gezeigt, dass +ein Differentialkörper genau die richtige Bühne für dieses Unterfangen +sein dürfte. +Die Stammfunktionen konnten in einem Erweiterungskörper gefunden +werden, der ein paar Logarithmen hinzugefügt worden sind. +Tatsächlich lässt sich in diesem Rahmen sogar ein Algorithmus +formulieren, der in einem noch zu definierenden Sinn ``elementare'' +Funktionen als Stammfunktionen finden kann oder beweisen kann, dass +eine solche nicht existiert. +Dieser Abschnitt soll einen Überblick darüber geben. + \input{chapters/060-integral/logexp.tex} \input{chapters/060-integral/elementar.tex} diff --git a/buch/chapters/110-elliptisch/lemniskate.tex b/buch/chapters/110-elliptisch/lemniskate.tex index 0df27a7..f750a82 100644 --- a/buch/chapters/110-elliptisch/lemniskate.tex +++ b/buch/chapters/110-elliptisch/lemniskate.tex @@ -20,7 +20,9 @@ elliptischen Funktionen hergestellt werden. \caption{Bogenlänge und Radius der Lemniskate von Bernoulli. \label{buch:elliptisch:fig:lemniskate}} \end{figure} -Die Lemniskate von Bernoulli ist die Kurve vierten Grades mit der Gleichung +Die {\em Lemniskate von Bernoulli} ist die Kurve vierten Grades +mit der Gleichung +\index{Lemniskate von Bernoulli}% \begin{equation} (X^2+Y^2)^2 = 2a^2(X^2-Y^2). \label{buch:elliptisch:eqn:lemniskate} @@ -161,13 +163,14 @@ Parameters $k$. Die Länge des rechten Blattes der Lemniskate wird mit $\varpi$ bezeichnet und hat den numerischen Wert -\[ +\begin{equation} \varpi = 2\int_0^1\sqrt{\frac{1}{1-t^4}}\,dt = 2.6220575542. -\] +\label{buch:elliptisch:eqn:varpi} +\end{equation} $\varpi$ ist auch als die {\em lemniskatische Konstante} bekannt. \index{lemniskatische Konstante}% Der Lemniskatenbogen zwischen dem Nullpunkt und $(1,0)$ hat die Länge @@ -179,7 +182,7 @@ $\varpi/2$. \subsection{Bogenlängenparametrisierung} Die Lemniskate mit der Gleichung \[ -(X^2+X^2)^2=2(X^2-X^2) +(X^2+Y^2)^2=2(X^2-Y^2) \] (der Fall $a=1$ in \eqref{buch:elliptisch:eqn:lemniskate}) kann mit Jacobischen elliptischen Funktionen @@ -332,7 +335,8 @@ Dies bedeutet, dass die Bogenlänge zwischen den Parameterwerten $0$ und $s$ = s, \] -der Parameter $t$ ist also ein Bogenlängenparameter. +der Parameter $t$ ist also ein Bogenlängenparameter, man darf also +$s=t$ schreiben. Die mit dem Faktor $1/\sqrt{2}$ skalierte Standard-Lemniskate mit der Gleichung @@ -355,10 +359,9 @@ y(t) \end{equation} \subsection{Der lemniskatische Sinus und Kosinus} -Der Sinus Berechnet die Gegenkathete zu einer gegebenen Bogenlänge des +Der Sinus berechnet die Gegenkathete zu einer gegebenen Bogenlänge des Kreises, er ist die Umkehrfunktion der Funktion, die der Gegenkathete die Bogenlänge zuordnet. - Daher ist es naheliegend, die Umkehrfunktion von $s(r)$ in \eqref{buch:elliptisch:eqn:lemniskatebogenlaenge} den {\em lemniskatischen Sinus} zu nennen mit der Bezeichnung @@ -368,6 +371,13 @@ Der Kosinus ist der Sinus des komplementären Winkels. Auch für die lemniskatische Bogenlänge $s(r)$ lässt sich eine komplementäre Bogenlänge definieren, nämlich die Bogenlänge zwischen dem Punkt $(x(r), y(r))$ und $(1,0)$. +Da die Bogenlänge zwischen $(0,0)$ und $(1,0)$ in +in \eqref{buch:elliptisch:eqn:varpi} bereits bereichnet wurde. +ist sie $\varpi/2-s$. +Der {\em lemniskatische Kosinus} ist daher +$\operatorname{cl}(s) = \operatorname{sl}(\varpi/2-s)$ +Graphen des lemniskatische Sinus und Kosinus sind in +Abbildung~\label{buch:elliptisch:figure:slcl} dargestellt. Da die Parametrisierung~\eqref{buch:elliptisch:lemniskate:bogenlaenge} eine Bogenlängenparametrisierung ist, darf man $t=s$ schreiben. diff --git a/buch/chapters/references.bib b/buch/chapters/references.bib index 17ef273..32a86ec 100644 --- a/buch/chapters/references.bib +++ b/buch/chapters/references.bib @@ -111,3 +111,10 @@ publisher = { Addison-Wesley } } +@online{buch:gmp, + title = {GNU Multiprecision Arithmetic Library}, + DAY = 26, + MONTH = 5, + YEAR = 2022, + url = {https://de.wikipedia.org/wiki/GNU_Multiple_Precision_Arithmetic_Library} +} -- cgit v1.2.1 From 2fad6877aa1883714a060e1204e6d4d3566541d9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sat, 28 May 2022 19:02:25 +0200 Subject: add example --- buch/papers/nav/beispiel.txt | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 buch/papers/nav/beispiel.txt diff --git a/buch/papers/nav/beispiel.txt b/buch/papers/nav/beispiel.txt new file mode 100644 index 0000000..c63525b --- /dev/null +++ b/buch/papers/nav/beispiel.txt @@ -0,0 +1,24 @@ +Datum: 28. 5. 2022 +Zeit: 15:29:49 UTC +Sternzeit: 7h 54m 26.593s + +Deneb + +RA 20h 42m 12.14s 10.703372h +DEC 45 21' 40.3" 45.361194 + +H 50g 15' 17.1" 50.254750h +Azi 59g 36' 02.0" 59.600555 + +Spica + +RA 13h 26m 23.44s 13.439844h +DEC -11g 16' 46.8" 11.279666 + +H 18g 27' 30.0" 18.458333 +Azi 240g 23' 52.5" 240.397916 + +Position: + +l = 140.228920 E +b = 35.734946 N -- cgit v1.2.1 From 082afe0e8250519008c73b947922be22afda3fd5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sat, 28 May 2022 19:14:50 +0200 Subject: beispiel korrektur --- buch/papers/nav/beispiel.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/buch/papers/nav/beispiel.txt b/buch/papers/nav/beispiel.txt index c63525b..853ae4e 100644 --- a/buch/papers/nav/beispiel.txt +++ b/buch/papers/nav/beispiel.txt @@ -20,5 +20,5 @@ Azi 240g 23' 52.5" 240.397916 Position: -l = 140.228920 E -b = 35.734946 N +l = 140 14' 00.01" E 140.233336 E +b = 35 43' 00.02" N 35.716672 N -- cgit v1.2.1 From f4e1f6e84837c77dd49e6ec055efb1b110f7d573 Mon Sep 17 00:00:00 2001 From: Nicolas Tobler Date: Mon, 30 May 2022 00:05:03 +0200 Subject: Added content, presentation --- buch/papers/ellfilter/main.tex | 316 ++++-- buch/papers/ellfilter/packages.tex | 18 +- .../papers/ellfilter/presentation/presentation.tex | 413 +++++++ buch/papers/ellfilter/python/F_N_butterworth.pgf | 1083 ++++++++++++++++++ buch/papers/ellfilter/python/F_N_chebychev.pgf | 1066 ++++++++++++++++++ buch/papers/ellfilter/python/F_N_chebychev2.pgf | 1023 +++++++++++++++++ buch/papers/ellfilter/python/F_N_elliptic.pgf | 847 ++++++++++++++ buch/papers/ellfilter/python/chebychef.py | 7 +- buch/papers/ellfilter/python/elliptic.pgf | 709 ++++++++++++ buch/papers/ellfilter/python/elliptic.py | 162 +-- buch/papers/ellfilter/python/elliptic2.py | 85 +- buch/papers/ellfilter/python/k.pgf | 1157 ++++++++++++++++++++ buch/papers/ellfilter/python/plot_params.py | 9 + buch/papers/ellfilter/references.bib | 9 + buch/papers/ellfilter/tikz/arccos.tikz.tex | 101 +- buch/papers/ellfilter/tikz/arccos2.tikz.tex | 7 +- buch/papers/ellfilter/tikz/cd.tikz.tex | 87 ++ buch/papers/ellfilter/tikz/cd2.tikz.tex | 84 ++ .../ellfilter/tikz/fundamental_rectangle.tikz.tex | 26 + buch/papers/ellfilter/tikz/sn.tikz.tex | 86 ++ 20 files changed, 7056 insertions(+), 239 deletions(-) create mode 100644 buch/papers/ellfilter/presentation/presentation.tex create mode 100644 buch/papers/ellfilter/python/F_N_butterworth.pgf create mode 100644 buch/papers/ellfilter/python/F_N_chebychev.pgf create mode 100644 buch/papers/ellfilter/python/F_N_chebychev2.pgf create mode 100644 buch/papers/ellfilter/python/F_N_elliptic.pgf create mode 100644 buch/papers/ellfilter/python/elliptic.pgf create mode 100644 buch/papers/ellfilter/python/k.pgf create mode 100644 buch/papers/ellfilter/python/plot_params.py create mode 100644 buch/papers/ellfilter/tikz/cd.tikz.tex create mode 100644 buch/papers/ellfilter/tikz/cd2.tikz.tex create mode 100644 buch/papers/ellfilter/tikz/fundamental_rectangle.tikz.tex create mode 100644 buch/papers/ellfilter/tikz/sn.tikz.tex diff --git a/buch/papers/ellfilter/main.tex b/buch/papers/ellfilter/main.tex index 29ebf7a..e9d6aba 100644 --- a/buch/papers/ellfilter/main.tex +++ b/buch/papers/ellfilter/main.tex @@ -11,16 +11,15 @@ \section{Einleitung} -Lineare filter +% Lineare filter -Filter, Signalverarbeitung +% Filter, Signalverarbeitung Der womöglich wichtigste Filtertyp ist das Tiefpassfilter. Dieses soll im Durchlassbereich unter der Grenzfrequenz $\Omega_p$ unverstärkt durchlassen und alle anderen Frequenzen vollständig auslöschen. -Bei der Implementierung von Filtern - +% Bei der Implementierung von Filtern In der Elektrotechnik führen Schaltungen mit linearen Bauelementen wie Kondensatoren, Spulen und Widerständen immer zu linearen zeitinvarianten Systemen (LTI-System von englich \textit{time-invariant system}). Die Übertragungsfunktion im Frequenzbereich $|H(\Omega)|$ eines solchen Systems ist dabei immer eine rationale Funktion, also eine Division von zwei Polynomen. @@ -39,15 +38,12 @@ Damit das Filter implementierbar und stabil ist, muss $H(\Omega)^2$ eine rationa $N \in \mathbb{N} $ gibt dabei die Ordnung des Filters vor, also die maximale Anzahl Pole oder Nullstellen. -% In \eqref{ellfilter:eq:h_omega} wird $F_N(w)$ so verzogen, dass $F_N(w) \forall |w| < 1$ - - Damit ein Filter die Passband Kondition erfüllt muss $|F_N(w)| \leq 1 \forall |w| \leq 1$ und für $|w| \geq 1$ sollte die Funktion möglichst schnell divergieren. Eine einfaches Polynom, dass das erfüllt, erhalten wir wenn $F_N(w) = w^N$. Tatsächlich erhalten wir damit das Butterworth Filter, wie in Abbildung \ref{ellfilter:fig:butterworth} ersichtlich. \begin{figure} \centering - \includegraphics[scale=1]{papers/ellfilter/python/F_N_butterworth.pdf} + \input{papers/ellfilter/python/F_N_butterworth.pgf} \caption{$F_N$ für Butterworth filter. Der grüne Bereich definiert die erlaubten Werte für alle $F_N$-Funktionen.} \label{ellfilter:fig:butterworth} \end{figure} @@ -60,7 +56,7 @@ wenn $F_N(w)$ eine rationale Funktion ist, ist auch $H(\Omega)$ eine rationale F w^N & \text{Butterworth} \\ T_N(w) & \text{Tschebyscheff, Typ 1} \\ [k_1 T_N (k^{-1} w^{-1})]^{-1} & \text{Tschebyscheff, Typ 2} \\ - R_N(w) & \text{Elliptisch (Cauer)} \\ + R_N(w, \xi) & \text{Elliptisch (Cauer)} \\ \end{cases} \end{align} @@ -73,9 +69,9 @@ Es scheint so als sind gewisse Eigenschaften dieser speziellen Funktionen verant \section{Tschebyscheff-Filter} Als Einstieg betrachent Wir das Tschebyscheff-Filter, welches sehr verwand ist mit dem elliptischen Filter. -Genauer ausgedrückt sind die Tschebyscheff-1 und -2 Fitler ein Spezialfall davon. +Genauer ausgedrückt sind die Tschebyscheff-1 und -2 Filter Spezialfälle davon. -Der Name des Filters deutet schon an, dass die Tschebyschff-Polynome $T_N$ relevant sind für das Filter: +Der Name des Filters deutet schon an, dass die Tschebyscheff-Polynome $T_N$ für das Filter relevant sind: \begin{align} T_{0}(x)&=1\\ T_{1}(x)&=x\\ @@ -83,15 +79,17 @@ Der Name des Filters deutet schon an, dass die Tschebyschff-Polynome $T_N$ relev T_{3}(x)&=4x^{3}-3x\\ T_{n+1}(x)&=2x~T_{n}(x)-T_{n-1}(x). \end{align} -Bemerkenswert ist, dass die Polynome im Intervall $[-1, 1]$ mit der Trigonometrischen Funktion -\begin{equation} \label{ellfilter:eq:chebychef_polynomials} - T_N(w) = \cos \left( N \cos^{-1}(w) \right) -\end{equation} +Bemerkenswert ist, dass die Polynome im Intervall $[-1, 1]$ mit der trigonometrischen Funktion +\begin{align} \label{ellfilter:eq:chebychef_polynomials} + T_N(w) &= \cos \left( N \cos^{-1}(w) \right) \\ + &= \cos \left(N~z \right), \quad w= \cos(z) +\end{align} übereinstimmt. +Der Zusammenhang lässt sich mit den Doppel- und Mehrfachwinkelfunktionen der trigonometrischen Funktionen erklären. Abbildung \ref{ellfilter:fig:chebychef_polynomials} zeigt einige Tschebyscheff-Polynome. \begin{figure} \centering - \includegraphics[scale=1]{papers/ellfilter/python/F_N_chebychev2.pdf} + \input{papers/ellfilter/python/F_N_chebychev2.pgf} \caption{Die Tschebyscheff-Polynome $C_N$.} \label{ellfilter:fig:chebychef_polynomials} \end{figure} @@ -101,103 +99,123 @@ Diese Eigenschaft ist sehr nützlich für ein Filter. Wenn wir die Tschebyscheff-Polynome quadrieren, passen sie perfekt in die Voraussetzungen für Filterfunktionen, wie es Abbildung \ref{ellfiter:fig:chebychef} demonstriert. \begin{figure} \centering - \includegraphics[scale=1]{papers/ellfilter/python/F_N_chebychev.pdf} + \input{papers/ellfilter/python/F_N_chebychev.pgf} \caption{Die Tschebyscheff-Polynome füllen den erlaubten Bereich besser, und erhalten dadurch eine steilere Flanke im Sperrbereich.} \label{ellfiter:fig:chebychef} \end{figure} Die analytische Fortsetzung von \eqref{ellfilter:eq:chebychef_polynomials} über das Intervall $[-1,1]$ hinaus stimmt mit den Polynomen überein, wie es zu erwarten ist. -Die genauere Betrachtung wird uns dann helfen die elliptischen Filter zu verstehen. +Die genauere Betrachtung wird uns dann helfen die elliptischen Filter besser zu verstehen. -\begin{equation} +Starten wir mit der Funktion, die als erstes auf $w$ angewendet wird, dem Arcuscosinus. +Die invertierte Funktion des Kosinus kann als definites Integral dargestellt werden: +\begin{align} \cos^{-1}(x) - = - \int_{0}^{x} + &= + \int_{x}^{1} \frac{ dz }{ \sqrt{ 1-z^2 } - } -\end{equation} %TOdO is it minus dz? - -\begin{equation} + }\\ + &= + \int_{0}^{x} \frac{ - 1 + -1 }{ \sqrt{ 1-z^2 } } - \in \mathbb{R} - \quad - \forall - \quad - -1 \leq z \leq 1 -\end{equation} -Wenn $|z|$ über 1 hinausgeht, wird der Term unter der Wurzel negativ. -Durch die Quadratwurzel entstehen zwei Reinkomplexe Lösungen + ~dz + + \frac{\pi}{2} +\end{align} +Der Integrand oder auch die Ableitung \begin{equation} \frac{ - 1 + -1 }{ \sqrt{ 1-z^2 } } - = i \xi \quad | \quad \xi \in \mathbb{R} - \quad - \forall - \quad - z \leq -1 \cup z \geq 1 \end{equation} - +bestimmt dabei die Richtung, in der die Funktion verläuft. +Der reelle Arcuscosinus is bekanntlich nur für $|z| \leq 1$ definiert. +Hier bleibt der Wert unter der Wurzel positiv und das Integral liefert reelle Werte. +Doch wenn $|z|$ über 1 hinausgeht, wird der Term unter der Wurzel negativ. +Durch die Quadratwurzel entstehen für den Integranden zwei rein komplexe Lösungen. +Der Wert des Arcuscosinus verlässt also bei $z= \pm 1$ den reellen Zahlenstrahl und knickt in die komplexe Ebene ab. +Abbildung \ref{ellfilter:fig:arccos} zeigt den $\arccos$ in der komplexen Ebene. \begin{figure} \centering \input{papers/ellfilter/tikz/arccos.tikz.tex} \caption{Die Funktion $z = \cos^{-1}(w)$ dargestellt in der komplexen ebene.} \label{ellfilter:fig:arccos} \end{figure} - - - +Wegen der Periodizität des Kosinus ist auch der Arcuscosinus $2\pi$-periodisch und es entstehen periodische Nullstellen. +% \begin{equation} +% \frac{ +% 1 +% }{ +% \sqrt{ +% 1-z^2 +% } +% } +% \in \mathbb{R} +% \quad +% \forall +% \quad +% -1 \leq z \leq 1 +% \end{equation} +% \begin{equation} +% \frac{ +% 1 +% }{ +% \sqrt{ +% 1-z^2 +% } +% } +% = i \xi \quad | \quad \xi \in \mathbb{R} +% \quad +% \forall +% \quad +% z \leq -1 \cup z \geq 1 +% \end{equation} + +Die Tschebyscheff-Polynome skalieren diese Nullstellen mit dem Ordnungsfaktor $N$, wie dargestellt in Abbildung \ref{ellfilter:fig:arccos2}. \begin{figure} \centering \input{papers/ellfilter/tikz/arccos2.tikz.tex} \caption{ - $z$-Ebene der Tschebyscheff-Funktion. - Je grösser die Ordnung $N$ gewählt wird, desto mehr Nullstellen werden hat das Tschebyscheff-Polynom. + $z_1=N \cos^{-1}(w)$-Ebene der Tschebyscheff-Funktion. + Die eingefärbten Pfade sind Verläufe von $w~\forall~[-\infty, \infty]$ für verschiedene Ordnungen $N$. + Je grösser die Ordnung $N$ gewählt wird, desto mehr Nullstellen werden passiert. } - % \label{ellfilter:fig:arccos} + \label{ellfilter:fig:arccos2} \end{figure} - - - - - -% Analytische Fortsetzung - - +Somit passert $\cos( N~\cos^{-1}(w))$ im Intervall $[-1, 1]$ $N$ Nullstellen. +Durch die spezielle Anordnung der Nullstellen hat die Funktion Equirippel-Verhalten und ist dennoch ein Polynom, was sich perfekt für linear Filter eignet. \section{Jacobische elliptische Funktionen} +%TODO $z$ or $u$ for parameter? -Für das elliptische Filter, wird statt der für das Tschebyscheff-Filter benutzen Kreis-Trigonometrie die elliptischen Funktionen gebraucht. -Der begriff elliptische Funktion wird für sehr viele Funktionen gebraucht, daher ist es hier wichtig zu erwähnen, dass es ausschliesslich um die Jacobischen elliptischen Funktionen geht. +Für das elliptische Filter wird statt der, für das Tschebyscheff-Filter benutzen Kreis-Trigonometrie die elliptischen Funktionen gebraucht. +Der Begriff elliptische Funktion wird für sehr viele Funktionen gebraucht, daher ist es hier wichtig zu erwähnen, dass es ausschliesslich um die Jacobischen elliptischen Funktionen geht. Im Wesentlichen erweitern die Jacobi elliptischen Funktionen die trigonometrische Funktionen für Ellipsen. - -%TODO $z$ or $u$ for parameter? - -neu zwei parameter -$sn(z, k)$ -$z$ ist das winkelargument +Zum Beispiel gibt es analog zum Sinus den elliptischen $\sn(z, k)$. +Im Gegensatz zum den trigonometrischen Funktionen haben die elliptischen Funktionen zwei parameter. +Zum einen gibt es den \textit{elliptische Modul} $k$, der die Exzentrizität der Ellipse parametrisiert. +Zum andern das Winkelargument $z$. Im Kreis ist der Radius für alle Winkel konstant, bei Ellipsen ändert sich das. Dies hat zur Folge, dass bei einer Ellipse die Kreisbodenstrecke nicht linear zum Winkel verläuft. Darum kann hier nicht der gewohnte Winkel verwendet werden. -An deren stelle kommt der parameter $k$ zum Einsatz, welcher durch das elliptische Integral erster Art +Das Winkelargument $z$ kann durch das elliptische Integral erster Art \begin{equation} z = @@ -211,12 +229,18 @@ An deren stelle kommt der parameter $k$ zum Einsatz, welcher durch das elliptisc 1-k^2 \sin^2 \theta } } + = + \int_{0}^{\phi} + \frac{ + dt + }{ + \sqrt{ + (1-t^2)(1-k^2 t^2) + } + } %TODO which is right? are both functions from phi? \end{equation} mit dem Winkel $\phi$ in Verbindung liegt. - - - Dabei wird das vollständige und unvollständige Elliptische integral unterschieden. Beim vollständigen Integral \begin{equation} @@ -231,25 +255,75 @@ Beim vollständigen Integral } } \end{equation} -wird über ein viertel Ellipsenbogen integriert also bis $\phi=\pi/2$. - -Die Jacobischen elliptischen Funktionen können mit der inversen Funktion +wird über ein viertel Ellipsenbogen integriert also bis $\phi=\pi/2$ und liefert das Winkelargument für eine Vierteldrehung. +Die Zahl wird oft auch abgekürzt mit $K = K(k)$ und ist für das elliptische Filter sehr relevant. +Alle elliptishen Funktionen sind somit $4K$-periodisch. + +Neben dem $\sn$ gibt es zwei weitere basis-elliptische Funktionen $\cn$ und $\dn$. +Dazu kommen noch weitere abgeleitete Funktionen, die durch Quotienten und Kehrwerte dieser Funktionen zustande kommen. +Insgesamt sind es die zwölf Funktionen +\begin{equation*} + \sn \quad + \ns \quad + \scelliptic \quad + \sd \quad + \cn \quad + \nc \quad + \cs \quad + \cd \quad + \dn \quad + \nd \quad + \ds \quad + \dc. +\end{equation*} + +Die Jacobischen elliptischen Funktionen können mit der inversen Funktion des kompletten elliptischen Integrals erster Art \begin{equation} \phi = F^{-1}(z, k) \end{equation} -definiert werden. Dabei ist zu beachten dass nur das $z$ Argument der Funktion invertiert wird also +definiert werden. Dabei ist zu beachten dass nur das $z$ Argument der Funktion invertiert wird, also \begin{equation} z = F(\phi, k) \Leftrightarrow \phi = F^{-1}(z, k). \end{equation} -Mithilfe von $F^{-1}$ kann $sn^{-1}$ mit dem Elliptischen integral dargestellt werden: +Mithilfe von $F^{-1}$ kann zum Beispiel $sn^{-1}$ mit dem Elliptischen integral dargestellt werden: \begin{equation} \sin(\phi) = \sin \left( F^{-1}(z, k) \right) = - \sn(u, k) + \sn(z, k) + = + w +\end{equation} + +\begin{equation} + \phi + = + F^{-1}(z, k) + = + \sin^{-1} \big( \sn (z, k ) \big) + = + \sin^{-1} ( w ) +\end{equation} + +\begin{equation} + F(\phi, k) + = + z + = + F( \sin^{-1} \big( \sn (z, k ) \big) , k) + = + F( \sin^{-1} ( w ), k) +\end{equation} + +\begin{equation} + \sn^{-1}(w, k) + = + F(\phi, k), + \quad + \phi = \sin^{-1}(w) \end{equation} \begin{align} @@ -306,28 +380,90 @@ In der reellen Richtung ist sie $4K(k)$-periodisch und in der imaginären Richtu %TODO sn^{-1} grafik +\begin{figure} + \centering + \input{papers/ellfilter/tikz/sn.tikz.tex} + \caption{ + $z$-Ebene der Funktion $z = \sn^{-1}(w, k)$. + Die Funktion ist in der realen Achse $4K$-periodisch und in der imaginären Achse $2jK^\prime$-periodisch. + } + % \label{ellfilter:fig:cd2} +\end{figure} \section{Elliptische rationale Funktionen} +Kommen wir nun zum eigentlichen Teil dieses Papers, den elliptischen rationalen Funktionen +\begin{align} + R_N(\xi, w) &= \cd \left(N~f_1(\xi)~\cd^{-1}(w, 1/\xi), f_2(\xi)\right) \\ + &= \cd \left(N~\frac{K_1}{K}~\cd^{-1}(w, k), k_1)\right) , \quad k= 1/\xi, k_1 = 1/f(\xi) \\ + &= \cd \left(N~K_1~z , k_1 \right), \quad w= \cd(z K, k) +\end{align} + -\begin{equation} - R_N(\xi, w) = \cd \left(N~f_1(\xi)~\cd^{-1}(w, 1/\xi), f_2(\xi)\right) -\end{equation} -\begin{equation} - R_N(\xi, w) = \cd (N~u K_1, k_1), \quad w= \cd(uK, k) -\end{equation} +sieht ähnlich aus wie die trigonometrische Darstellung der Tschebyschef-Polynome \eqref{ellfilter:eq:chebychef_polynomials} +Anstelle vom Kosinus kommt hier die $\cd$-Funktion zum Einsatz. +Die Ordnungszahl $N$ kommt auch als Faktor for. +Zusätzlich werden noch zwei verschiedene elliptische Module $k$ und $k_1$ gebraucht. + + + +Sinus entspricht $\sn$ + +Damit die Nullstellen an ähnlichen Positionen zu liegen kommen wie bei den Tschebyscheff-Polynomen, muss die $\cd$-Funktion gewählt werden. + +Die $\cd^{-1}(w, k)$-Funktion ist um $K$ verschoben zur $\sn^{-1}(w, k)$-Funktion, wie ersichtlich in Abbildung \ref{ellfilter:fig:cd}. +\begin{figure} + \centering + \input{papers/ellfilter/tikz/cd.tikz.tex} + \caption{ + $z$-Ebene der Funktion $z = \sn^{-1}(w, k)$. + Die Funktion ist in der realen Achse $4K$-periodisch und in der imaginären Achse $2jK^\prime$-periodisch. + } + \label{ellfilter:fig:cd} +\end{figure} +Auffallend ist, dass sich alle Nullstellen und Polstellen um $K$ verschoben haben. +Durch das Konzept vom fundamentalen Rechteck, siehe Abbildung \ref{ellfilter:fig:fundamental_rectangle} können für alle inversen Jaccobi elliptischen Funktionen die Positionen der Null- und Polstellen anhand eines Diagramms ermittelt werden. +Der erste Buchstabe bestimmt die Position der Nullstelle und der zweite Buchstabe die Polstelle. +\begin{figure} + \centering + \input{papers/ellfilter/tikz/fundamental_rectangle.tikz.tex} + \caption{ + Fundamentales Rechteck der inversen Jaccobi elliptischen Funktionen. + } + \label{ellfilter:fig:fundamental_rectangle} +\end{figure} -sieht ähnlich aus wie die trigonometrische darstellung der Tschebyschef-Polynome +Auffallend an der $w = \sn(z, k)$-Funktion ist, dass sich $w$ auf der reellen Achse wie der Kosinus immer zwischen $-1$ und $1$ bewegt, während bei $\mathrm{Im(z) = K^\prime}$ die Werte zwischen $\pm 1/k$ und $\pm \infty$ verlaufen. +Die Funktion hat also Equirippel-Verhalten um $w=0$ und um $w=\pm \infty$. +Falls es möglich ist diese Werte abzufahren im Sti der Tschebyscheff-Polynome, kann ein Filter gebaut werden, dass Equirippel-Verhalten im Durchlass- und Sperrbereich aufweist. -der Ordnungszahl $N$ kommt auch als Faktor for -%TODO cd^{-1} grafik mit +Analog zu Abbildung \ref{ellfilter:fig:arccos2} können wir auch bei den elliptisch rationalen Funktionen die komplexe $z$-Ebene betrachten, wie ersichtlich in Abbildung \ref{ellfilter:fig:cd2}, um die besser zu verstehen. +\begin{figure} + \centering + \input{papers/ellfilter/tikz/cd2.tikz.tex} + \caption{ + $z_1$-Ebene der elliptischen rationalen Funktionen. + Je grösser die Ordnung $N$ gewählt wird, desto mehr Nullstellen passiert. + } + \label{ellfilter:fig:cd2} +\end{figure} +% Da die $\cd^{-1}$-Funktion + + + +\begin{figure} + \centering + \input{papers/ellfilter/python/F_N_elliptic.pgf} + \caption{$F_N$ für ein elliptischs filter.} + \label{ellfilter:fig:elliptic} +\end{figure} \subsection{Degree Equation} -Der $cd^{-1}$ Term muss so verzogen werden, dass die umgebene $cd$ funktion die nullstellen und pole trifft. +Der $\cd^{-1}$ Term muss so verzogen werden, dass die umgebene $\cd$-Funktion die Nullstellen und Pole trifft. Dies trifft ein wenn die Degree Equation erfüllt ist. \begin{equation} @@ -345,19 +481,7 @@ Bei den Tschebyscheff-Polynomen haben wir gesehen, dass die Trigonometrische For Im gegensatz zum $\cos^{-1}$ hat der $\cd^{-1}$ nicht nur Nullstellen sondern auch Pole. Somit entstehen bei den elliptischen rationalen Funktionen, wie es der name auch deutet, rationale Funktionen, also ein Bruch von zwei Polynomen. - - - -\begin{figure} - \centering - \includegraphics[scale=1]{papers/ellfilter/python/F_N_elliptic.pdf} - \caption{$F_N$ für ein elliptischs filter.} - \label{ellfilter:fig:elliptic} -\end{figure} - - - - +Da Transformationen einer rationalen Funktionen mit Grundrechenarten, wie es in \eqref{ellfilter:eq:h_omega} der Fall ist, immer noch rationale Funktionen ergeben, stellt dies kein Problem für die Implementierung dar. \input{papers/ellfilter/teil0.tex} \input{papers/ellfilter/teil1.tex} diff --git a/buch/papers/ellfilter/packages.tex b/buch/papers/ellfilter/packages.tex index 8045a1a..9a550e2 100644 --- a/buch/papers/ellfilter/packages.tex +++ b/buch/papers/ellfilter/packages.tex @@ -8,6 +8,20 @@ % following example %\usepackage{packagename} +% \usepackage[dvipsnames]{xcolor} + +\usetikzlibrary{trees,shapes,decorations} + +\DeclareMathOperator{\sn}{\mathrm{sn}} +\DeclareMathOperator{\ns}{\mathrm{ns}} +\DeclareMathOperator{\scelliptic}{\mathrm{sc}} +\DeclareMathOperator{\sd}{\mathrm{sd}} +\DeclareMathOperator{\cn}{\mathrm{cn}} +\DeclareMathOperator{\nc}{\mathrm{nc}} +\DeclareMathOperator{\cs}{\mathrm{cs}} +\DeclareMathOperator{\cd}{\mathrm{cd}} +\DeclareMathOperator{\dn}{\mathrm{dn}} +\DeclareMathOperator{\nd}{\mathrm{nd}} +\DeclareMathOperator{\ds}{\mathrm{ds}} +\DeclareMathOperator{\dc}{\mathrm{dc}} -\DeclareMathOperator{\sn}{\text{sn}} -\DeclareMathOperator{\cd}{\text{cd}} diff --git a/buch/papers/ellfilter/presentation/presentation.tex b/buch/papers/ellfilter/presentation/presentation.tex new file mode 100644 index 0000000..7fdb864 --- /dev/null +++ b/buch/papers/ellfilter/presentation/presentation.tex @@ -0,0 +1,413 @@ +\documentclass[ngerman, aspectratio=169, xcolor={rgb}]{beamer} + +% style +\mode{ + \usetheme{Frankfurt} +} +%packages +\usepackage[utf8]{inputenc}\DeclareUnicodeCharacter{2212}{-} +\usepackage[english]{babel} +\usepackage{graphicx} +\usepackage{array} + +\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}m{#1}} +\usepackage{ragged2e} + +\usepackage{bm} % bold math +\usepackage{amsfonts} +\usepackage{amssymb} +\usepackage{mathtools} +\usepackage{amsmath} +\usepackage{multirow} % multi row in tables +\usepackage{booktabs} %toprule midrule bottomrue in tables +\usepackage{scrextend} +\usepackage{textgreek} +\usepackage[rgb]{xcolor} + +\usepackage{ marvosym } % \Lightning + +\usepackage{multimedia} % embedded videos + +\usepackage{tikz} +\usepackage{pgf} +\usepackage{pgfplots} + +\usepackage{algorithmic} + +%citations +\usepackage[style=verbose,backend=biber]{biblatex} +\addbibresource{references.bib} + + +%math font +\usefonttheme[onlymath]{serif} + +%Beamer Template modifications +%\definecolor{mainColor}{HTML}{0065A3} % HSR blue +\definecolor{mainColor}{HTML}{D72864} % OST pink +\definecolor{invColor}{HTML}{28d79b} % OST pink +\definecolor{dgreen}{HTML}{38ad36} % Dark green + +%\definecolor{mainColor}{HTML}{000000} % HSR blue +\setbeamercolor{palette primary}{bg=white,fg=mainColor} +\setbeamercolor{palette secondary}{bg=orange,fg=mainColor} +\setbeamercolor{palette tertiary}{bg=yellow,fg=red} +\setbeamercolor{palette quaternary}{bg=mainColor,fg=white} %bg = Top bar, fg = active top bar topic +\setbeamercolor{structure}{fg=black} % itemize, enumerate, etc (bullet points) +\setbeamercolor{section in toc}{fg=black} % TOC sections +\setbeamertemplate{section in toc}[sections numbered] +\setbeamertemplate{subsection in toc}{% + \hspace{1.2em}{$\bullet$}~\inserttocsubsection\par} + +\setbeamertemplate{itemize items}[circle] +\setbeamertemplate{description item}[circle] +\setbeamertemplate{title page}[default][colsep=-4bp,rounded=true] +\beamertemplatenavigationsymbolsempty + +\setbeamercolor{footline}{fg=gray} +\setbeamertemplate{footline}{% + \hfill\usebeamertemplate***{navigation symbols} + \hspace{0.5cm} + \insertframenumber{}\hspace{0.2cm}\vspace{0.2cm} +} + +\usepackage{caption} +\captionsetup{labelformat=empty} + +%Title Page +\title{Elliptische Filter} +\subtitle{Eine Anwendung der Jaccobi elliptischen Funktionen} +\author{Nicolas Tobler} +% \institute{OST Ostschweizer Fachhochschule} +% \institute{\includegraphics[scale=0.3]{../img/ost_logo.png}} +\date{\today} + +\input{../packages.tex} + +\newcommand*{\QED}{\hfill\ensuremath{\blacksquare}}% + +\newcommand*{\HL}{\textcolor{mainColor}} +\newcommand*{\RD}{\textcolor{red}} +\newcommand*{\BL}{\textcolor{blue}} +\newcommand*{\GN}{\textcolor{dgreen}} + +\definecolor{darkgreen}{rgb}{0,0.6,0} + + +\makeatletter +\newcount\my@repeat@count +\newcommand{\myrepeat}[2]{% + \begingroup + \my@repeat@count=\z@ + \@whilenum\my@repeat@count<#1\do{#2\advance\my@repeat@count\@ne}% + \endgroup +} +\makeatother + +\usetikzlibrary{automata,arrows,positioning,calc,shapes.geometric, fadings} + +\begin{document} + + \begin{frame} + \titlepage + \end{frame} + + \begin{frame} + \frametitle{Content} + \tableofcontents + \end{frame} + + \section{Linear Filter} + + \begin{frame} + \frametitle{Lineare Filter} + + + \begin{equation} + | H(\Omega)|^2 = \frac{1}{1 + \varepsilon_p^2 F_N^2(w)}, \quad w=\frac{\Omega}{\Omega_p} + \end{equation} + + \pause + + \begin{equation} + F_N(w) = w^N + \end{equation} + + \end{frame} + + \begin{frame} + \frametitle{Beispiel: Butterworth Filter} + + \begin{equation} + F_N(w) = w^N + \end{equation} + + \begin{center} + \input{../python/F_N_butterworth.pgf} + \end{center} + + \end{frame} + + + \begin{frame} + \frametitle{Arten von linearen filtern} + + \begin{align*} + F_N(w) & = + \begin{cases} + w^N & \text{Butterworth} \\ + T_N(w) & \text{Tschebyscheff, Typ 1} \\ + [k_1 T_N (k^{-1} w^{-1})]^{-1} & \text{Tschebyscheff, Typ 2} \\ + R_N(w,\xi) & \text{Elliptisch (Cauer)} \\ + \end{cases} + \end{align*} + + \end{frame} + + \section{Tschebycheff Filter} + + \begin{frame} + \frametitle{Tschebyscheff-Polynome} + + + \begin{columns} + \begin{column}[T]{0.35\textwidth} + + \begin{align*} + T_{0}(x)&=1\\ + T_{1}(x)&=x\\ + T_{2}(x)&=2x^{2}-1\\ + T_{3}(x)&=4x^{3}-3x\\ + T_{n+1}(x)&=2x~T_{n}(x)-T_{n-1}(x) + \end{align*} + + \end{column} + \begin{column}[T]{0.65\textwidth} + + \begin{center} + \resizebox{\textwidth}{!}{ + \input{../python/F_N_chebychev2.pgf} + } + \end{center} + + \end{column} + \end{columns} + + + + \end{frame} + + \begin{frame} + \frametitle{Tschebyscheff-Filter} + + \begin{equation*} + | H(\Omega)|^2 = \frac{1}{1 + \varepsilon_p^2 T_N^2(w)}, \quad w=\frac{\Omega}{\Omega_p} + \end{equation*} + + \begin{center} + \scalebox{0.9}{ + \input{../python/F_N_chebychev.pgf} + } + \end{center} + + \end{frame} + + + \begin{frame} + \frametitle{Tschebyscheff-Filter} + + Darstellung mit trigonometrischen Funktionen: + + \begin{align} \label{ellfilter:eq:chebychef_polynomials} + T_N(w) &= \cos \left( N \cos^{-1}(w) \right) \\ + &= \cos \left(N~z \right), \quad w= \cos(z) + \end{align} + + + \end{frame} + + \begin{frame} + \frametitle{Tschebyscheff-Filter} + + \begin{equation*} + z = \cos^{-1}(w) + \end{equation*} + + \begin{center} + \scalebox{0.85}{ + \input{../tikz/arccos.tikz.tex} + } + \end{center} + + \end{frame} + + \begin{frame} + \frametitle{Tschebyscheff-Filter} + + \begin{equation*} + z_1 = N~\cos^{-1}(w) + \end{equation*} + + \begin{center} + \scalebox{0.85}{ + \input{../tikz/arccos2.tikz.tex} + } + \end{center} + + \end{frame} + + + \section{Jaccobi elliptische Funktionen} + + \begin{frame} + \frametitle{Jaccobi elliptische Funktionen} + + + \begin{equation} + z + = + F(\phi, k) + = + \int_{0}^{\phi} + \frac{ + d\theta + }{ + \sqrt{ + 1-k^2 \sin^2 \theta + } + } + = + \int_{0}^{\phi} + \frac{ + dt + }{ + \sqrt{ + (1-t^2)(1-k^2 t^2) + } + } + \end{equation} + + \begin{equation} + K(k) + = + \int_{0}^{\pi / 2} + \frac{ + d\theta + }{ + \sqrt{ + 1-k^2 \sin^2 \theta + } + } + \end{equation} + + + + \end{frame} + + \begin{frame} + \frametitle{Jaccobi elliptische Funktionen} + + \begin{equation*} + z = \sn^{-1}(w, k) + \end{equation*} + + \begin{center} + \scalebox{0.7}{ + \input{../tikz/sn.tikz.tex} + } + \end{center} + + \end{frame} + + \begin{frame} + \frametitle{Fundamentales Rechteck} + + Nullstelle beim ersten Buchstabe, Polstelle beim zweiten Buchstabe + + \begin{center} + \scalebox{0.8}{ + \input{../tikz/fundamental_rectangle.tikz.tex} + } + \end{center} + + \end{frame} + + + \begin{frame} + \frametitle{Jaccobi elliptische Funktionen} + + \begin{equation*} + z = \cd^{-1}(w, k) + \end{equation*} + + \begin{center} + \scalebox{0.7}{ + \input{../tikz/cd.tikz.tex} + + } + \end{center} + + \end{frame} + + \begin{frame} + \frametitle{Periodizität in realer und imaginärer Richtung} + + \begin{center} + \input{../python/k.pgf} + \end{center} + + + \end{frame} + + \begin{frame} + \frametitle{Elliptisches Filter} + + \begin{equation*} + z_1 = N~\frac{K_1}{K}~\cd^{-1}(w, k) + \end{equation*} + + \begin{center} + \scalebox{0.8}{ + \input{../tikz/cd2.tikz.tex} + } + \end{center} + + \end{frame} + + \begin{frame} + \frametitle{Elliptisches Filter} + + \begin{columns} + + \begin{column}[T]{0.5\textwidth} + + \begin{center} + \resizebox{\textwidth}{!}{ + \input{../python/F_N_elliptic.pgf} + } + \end{center} + + \end{column} + \begin{column}[T]{0.5\textwidth} + + \begin{center} + \resizebox{\textwidth}{!}{ + \input{../python/elliptic.pgf} + } + \end{center} + + \end{column} + \end{columns} + + \end{frame} + + \begin{frame} + \frametitle{Gradgleichung} + + \begin{equation} + N \frac{K^\prime}{K} = \frac{K^\prime_1}{K_1} + \end{equation} + + \end{frame} + + \end{document} diff --git a/buch/papers/ellfilter/python/F_N_butterworth.pgf b/buch/papers/ellfilter/python/F_N_butterworth.pgf new file mode 100644 index 0000000..857e363 --- /dev/null +++ b/buch/papers/ellfilter/python/F_N_butterworth.pgf @@ -0,0 +1,1083 @@ +%% Creator: Matplotlib, PGF backend +%% +%% To include the figure in your LaTeX document, write +%% \input{.pgf} +%% +%% Make sure the required packages are loaded in your preamble +%% \usepackage{pgf} +%% +%% Also ensure that all the required font packages are loaded; for instance, +%% the lmodern package is sometimes necessary when using math font. +%% \usepackage{lmodern} +%% +%% Figures using additional raster images can only be included by \input if +%% they are in the same directory as the main LaTeX file. For loading figures +%% from other directories you can use the `import` package +%% \usepackage{import} +%% +%% and then include the figures with +%% \import{}{.pgf} +%% +%% Matplotlib used the following preamble +%% +\begingroup% +\makeatletter% +\begin{pgfpicture}% +\pgfpathrectangle{\pgfpointorigin}{\pgfqpoint{4.000000in}{2.500000in}}% +\pgfusepath{use as bounding box, clip}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{1.000000,1.000000,1.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.000000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{4.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{4.000000in}{2.500000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{2.500000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathclose% +\pgfusepath{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.000000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{0.630330in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{0.630330in}{0.548769in}}% +\pgfpathclose% +\pgfusepath{fill}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{0.000000,0.501961,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetfillopacity{0.200000}% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.200000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{2.694779in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{2.694779in}{1.425362in}}% +\pgfpathlineto{\pgfqpoint{0.630330in}{1.425362in}}% +\pgfpathlineto{\pgfqpoint{0.630330in}{0.548769in}}% +\pgfpathclose% +\pgfusepath{fill}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{1.000000,0.647059,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetfillopacity{0.200000}% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.200000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.694779in}{1.425362in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{1.425362in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{2.694779in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{2.694779in}{1.425362in}}% +\pgfpathclose% +\pgfusepath{fill}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.630330in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.630330in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.630330in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.00}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{1.146442in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{1.146442in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{1.146442in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=1.146442in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.25}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{1.662555in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{1.662555in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{1.662555in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=1.662555in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.50}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.178667in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{2.178667in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{2.178667in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.178667in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.75}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.694779in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{2.694779in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{2.694779in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.694779in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {1.00}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{3.210892in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.210892in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{3.210892in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=3.210892in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {1.25}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{3.727004in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{3.727004in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=3.727004in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {1.50}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.178667in,y=0.272534in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle w\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{0.548769in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.630330in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.355638in, y=0.500544in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.0}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{0.987065in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{0.987065in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.630330in}{0.987065in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.355638in, y=0.938840in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.5}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{1.425362in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{1.425362in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.630330in}{1.425362in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.355638in, y=1.377137in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {1.0}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{1.863658in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{1.863658in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.630330in}{1.863658in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.355638in, y=1.815433in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {1.5}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.630330in}{2.301955in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.355638in, y=2.253730in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {2.0}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.300082in,y=1.425362in,,bottom,rotate=90.000000]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle F^2_N(w)\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.661609in}{0.548970in}}% +\pgfpathlineto{\pgfqpoint{0.692889in}{0.549574in}}% +\pgfpathlineto{\pgfqpoint{0.724168in}{0.550580in}}% +\pgfpathlineto{\pgfqpoint{0.755448in}{0.551989in}}% +\pgfpathlineto{\pgfqpoint{0.786727in}{0.553800in}}% +\pgfpathlineto{\pgfqpoint{0.818007in}{0.556013in}}% +\pgfpathlineto{\pgfqpoint{0.849287in}{0.558629in}}% +\pgfpathlineto{\pgfqpoint{0.880566in}{0.561648in}}% +\pgfpathlineto{\pgfqpoint{0.911846in}{0.565069in}}% +\pgfpathlineto{\pgfqpoint{0.943125in}{0.568893in}}% +\pgfpathlineto{\pgfqpoint{0.974405in}{0.573119in}}% +\pgfpathlineto{\pgfqpoint{1.005684in}{0.577747in}}% +\pgfpathlineto{\pgfqpoint{1.036964in}{0.582778in}}% +\pgfpathlineto{\pgfqpoint{1.068243in}{0.588211in}}% +\pgfpathlineto{\pgfqpoint{1.099523in}{0.594047in}}% +\pgfpathlineto{\pgfqpoint{1.130802in}{0.600286in}}% +\pgfpathlineto{\pgfqpoint{1.162082in}{0.606927in}}% +\pgfpathlineto{\pgfqpoint{1.193361in}{0.613970in}}% +\pgfpathlineto{\pgfqpoint{1.224641in}{0.621416in}}% +\pgfpathlineto{\pgfqpoint{1.255921in}{0.629264in}}% +\pgfpathlineto{\pgfqpoint{1.287200in}{0.637515in}}% +\pgfpathlineto{\pgfqpoint{1.318480in}{0.646168in}}% +\pgfpathlineto{\pgfqpoint{1.349759in}{0.655224in}}% +\pgfpathlineto{\pgfqpoint{1.381039in}{0.664682in}}% +\pgfpathlineto{\pgfqpoint{1.412318in}{0.674543in}}% +\pgfpathlineto{\pgfqpoint{1.443598in}{0.684806in}}% +\pgfpathlineto{\pgfqpoint{1.474877in}{0.695471in}}% +\pgfpathlineto{\pgfqpoint{1.506157in}{0.706539in}}% +\pgfpathlineto{\pgfqpoint{1.537436in}{0.718010in}}% +\pgfpathlineto{\pgfqpoint{1.568716in}{0.729883in}}% +\pgfpathlineto{\pgfqpoint{1.599995in}{0.742159in}}% +\pgfpathlineto{\pgfqpoint{1.631275in}{0.754837in}}% +\pgfpathlineto{\pgfqpoint{1.662555in}{0.767917in}}% +\pgfpathlineto{\pgfqpoint{1.693834in}{0.781400in}}% +\pgfpathlineto{\pgfqpoint{1.725114in}{0.795285in}}% +\pgfpathlineto{\pgfqpoint{1.756393in}{0.809573in}}% +\pgfpathlineto{\pgfqpoint{1.787673in}{0.824264in}}% +\pgfpathlineto{\pgfqpoint{1.818952in}{0.839357in}}% +\pgfpathlineto{\pgfqpoint{1.850232in}{0.854852in}}% +\pgfpathlineto{\pgfqpoint{1.881511in}{0.870750in}}% +\pgfpathlineto{\pgfqpoint{1.912791in}{0.887050in}}% +\pgfpathlineto{\pgfqpoint{1.944070in}{0.903753in}}% +\pgfpathlineto{\pgfqpoint{1.975350in}{0.920858in}}% +\pgfpathlineto{\pgfqpoint{2.006629in}{0.938366in}}% +\pgfpathlineto{\pgfqpoint{2.037909in}{0.956276in}}% +\pgfpathlineto{\pgfqpoint{2.069189in}{0.974589in}}% +\pgfpathlineto{\pgfqpoint{2.100468in}{0.993304in}}% +\pgfpathlineto{\pgfqpoint{2.131748in}{1.012421in}}% +\pgfpathlineto{\pgfqpoint{2.163027in}{1.031941in}}% +\pgfpathlineto{\pgfqpoint{2.194307in}{1.051864in}}% +\pgfpathlineto{\pgfqpoint{2.225586in}{1.072189in}}% +\pgfpathlineto{\pgfqpoint{2.256866in}{1.092917in}}% +\pgfpathlineto{\pgfqpoint{2.288145in}{1.114047in}}% +\pgfpathlineto{\pgfqpoint{2.319425in}{1.135579in}}% +\pgfpathlineto{\pgfqpoint{2.350704in}{1.157514in}}% +\pgfpathlineto{\pgfqpoint{2.381984in}{1.179851in}}% +\pgfpathlineto{\pgfqpoint{2.413263in}{1.202591in}}% +\pgfpathlineto{\pgfqpoint{2.444543in}{1.225734in}}% +\pgfpathlineto{\pgfqpoint{2.475823in}{1.249279in}}% +\pgfpathlineto{\pgfqpoint{2.507102in}{1.273226in}}% +\pgfpathlineto{\pgfqpoint{2.538382in}{1.297576in}}% +\pgfpathlineto{\pgfqpoint{2.569661in}{1.322328in}}% +\pgfpathlineto{\pgfqpoint{2.600941in}{1.347483in}}% +\pgfpathlineto{\pgfqpoint{2.632220in}{1.373040in}}% +\pgfpathlineto{\pgfqpoint{2.663500in}{1.399000in}}% +\pgfpathlineto{\pgfqpoint{2.694779in}{1.425362in}}% +\pgfpathlineto{\pgfqpoint{2.726059in}{1.452126in}}% +\pgfpathlineto{\pgfqpoint{2.757338in}{1.479294in}}% +\pgfpathlineto{\pgfqpoint{2.788618in}{1.506863in}}% +\pgfpathlineto{\pgfqpoint{2.819897in}{1.534835in}}% +\pgfpathlineto{\pgfqpoint{2.851177in}{1.563210in}}% +\pgfpathlineto{\pgfqpoint{2.882457in}{1.591987in}}% +\pgfpathlineto{\pgfqpoint{2.913736in}{1.621166in}}% +\pgfpathlineto{\pgfqpoint{2.945016in}{1.650748in}}% +\pgfpathlineto{\pgfqpoint{2.976295in}{1.680733in}}% +\pgfpathlineto{\pgfqpoint{3.007575in}{1.711120in}}% +\pgfpathlineto{\pgfqpoint{3.038854in}{1.741909in}}% +\pgfpathlineto{\pgfqpoint{3.070134in}{1.773101in}}% +\pgfpathlineto{\pgfqpoint{3.101413in}{1.804696in}}% +\pgfpathlineto{\pgfqpoint{3.132693in}{1.836692in}}% +\pgfpathlineto{\pgfqpoint{3.163972in}{1.869092in}}% +\pgfpathlineto{\pgfqpoint{3.195252in}{1.901894in}}% +\pgfpathlineto{\pgfqpoint{3.226531in}{1.935098in}}% +\pgfpathlineto{\pgfqpoint{3.257811in}{1.968705in}}% +\pgfpathlineto{\pgfqpoint{3.289091in}{2.002714in}}% +\pgfpathlineto{\pgfqpoint{3.320370in}{2.037126in}}% +\pgfpathlineto{\pgfqpoint{3.351650in}{2.071940in}}% +\pgfpathlineto{\pgfqpoint{3.382929in}{2.107156in}}% +\pgfpathlineto{\pgfqpoint{3.414209in}{2.142776in}}% +\pgfpathlineto{\pgfqpoint{3.445488in}{2.178797in}}% +\pgfpathlineto{\pgfqpoint{3.476768in}{2.215221in}}% +\pgfpathlineto{\pgfqpoint{3.508047in}{2.252048in}}% +\pgfpathlineto{\pgfqpoint{3.539327in}{2.289277in}}% +\pgfpathlineto{\pgfqpoint{3.561409in}{2.315844in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.661609in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.692889in}{0.548770in}}% +\pgfpathlineto{\pgfqpoint{0.724168in}{0.548773in}}% +\pgfpathlineto{\pgfqpoint{0.755448in}{0.548781in}}% +\pgfpathlineto{\pgfqpoint{0.786727in}{0.548798in}}% +\pgfpathlineto{\pgfqpoint{0.818007in}{0.548829in}}% +\pgfpathlineto{\pgfqpoint{0.849287in}{0.548880in}}% +\pgfpathlineto{\pgfqpoint{0.880566in}{0.548958in}}% +\pgfpathlineto{\pgfqpoint{0.911846in}{0.549072in}}% +\pgfpathlineto{\pgfqpoint{0.943125in}{0.549231in}}% +\pgfpathlineto{\pgfqpoint{0.974405in}{0.549445in}}% +\pgfpathlineto{\pgfqpoint{1.005684in}{0.549727in}}% +\pgfpathlineto{\pgfqpoint{1.036964in}{0.550088in}}% +\pgfpathlineto{\pgfqpoint{1.068243in}{0.550544in}}% +\pgfpathlineto{\pgfqpoint{1.099523in}{0.551108in}}% +\pgfpathlineto{\pgfqpoint{1.130802in}{0.551796in}}% +\pgfpathlineto{\pgfqpoint{1.162082in}{0.552627in}}% +\pgfpathlineto{\pgfqpoint{1.193361in}{0.553618in}}% +\pgfpathlineto{\pgfqpoint{1.224641in}{0.554789in}}% +\pgfpathlineto{\pgfqpoint{1.255921in}{0.556160in}}% +\pgfpathlineto{\pgfqpoint{1.287200in}{0.557753in}}% +\pgfpathlineto{\pgfqpoint{1.318480in}{0.559591in}}% +\pgfpathlineto{\pgfqpoint{1.349759in}{0.561697in}}% +\pgfpathlineto{\pgfqpoint{1.381039in}{0.564096in}}% +\pgfpathlineto{\pgfqpoint{1.412318in}{0.566815in}}% +\pgfpathlineto{\pgfqpoint{1.443598in}{0.569880in}}% +\pgfpathlineto{\pgfqpoint{1.474877in}{0.573320in}}% +\pgfpathlineto{\pgfqpoint{1.506157in}{0.577165in}}% +\pgfpathlineto{\pgfqpoint{1.537436in}{0.581444in}}% +\pgfpathlineto{\pgfqpoint{1.568716in}{0.586189in}}% +\pgfpathlineto{\pgfqpoint{1.599995in}{0.591434in}}% +\pgfpathlineto{\pgfqpoint{1.631275in}{0.597211in}}% +\pgfpathlineto{\pgfqpoint{1.662555in}{0.603556in}}% +\pgfpathlineto{\pgfqpoint{1.693834in}{0.610505in}}% +\pgfpathlineto{\pgfqpoint{1.725114in}{0.618095in}}% +\pgfpathlineto{\pgfqpoint{1.756393in}{0.626364in}}% +\pgfpathlineto{\pgfqpoint{1.787673in}{0.635351in}}% +\pgfpathlineto{\pgfqpoint{1.818952in}{0.645098in}}% +\pgfpathlineto{\pgfqpoint{1.850232in}{0.655645in}}% +\pgfpathlineto{\pgfqpoint{1.881511in}{0.667035in}}% +\pgfpathlineto{\pgfqpoint{1.912791in}{0.679313in}}% +\pgfpathlineto{\pgfqpoint{1.944070in}{0.692523in}}% +\pgfpathlineto{\pgfqpoint{1.975350in}{0.706710in}}% +\pgfpathlineto{\pgfqpoint{2.006629in}{0.721923in}}% +\pgfpathlineto{\pgfqpoint{2.037909in}{0.738209in}}% +\pgfpathlineto{\pgfqpoint{2.069189in}{0.755618in}}% +\pgfpathlineto{\pgfqpoint{2.100468in}{0.774200in}}% +\pgfpathlineto{\pgfqpoint{2.131748in}{0.794006in}}% +\pgfpathlineto{\pgfqpoint{2.163027in}{0.815091in}}% +\pgfpathlineto{\pgfqpoint{2.194307in}{0.837506in}}% +\pgfpathlineto{\pgfqpoint{2.225586in}{0.861307in}}% +\pgfpathlineto{\pgfqpoint{2.256866in}{0.886550in}}% +\pgfpathlineto{\pgfqpoint{2.288145in}{0.913292in}}% +\pgfpathlineto{\pgfqpoint{2.319425in}{0.941592in}}% +\pgfpathlineto{\pgfqpoint{2.350704in}{0.971508in}}% +\pgfpathlineto{\pgfqpoint{2.381984in}{1.003102in}}% +\pgfpathlineto{\pgfqpoint{2.413263in}{1.036434in}}% +\pgfpathlineto{\pgfqpoint{2.444543in}{1.071567in}}% +\pgfpathlineto{\pgfqpoint{2.475823in}{1.108565in}}% +\pgfpathlineto{\pgfqpoint{2.507102in}{1.147494in}}% +\pgfpathlineto{\pgfqpoint{2.538382in}{1.188418in}}% +\pgfpathlineto{\pgfqpoint{2.569661in}{1.231405in}}% +\pgfpathlineto{\pgfqpoint{2.600941in}{1.276523in}}% +\pgfpathlineto{\pgfqpoint{2.632220in}{1.323841in}}% +\pgfpathlineto{\pgfqpoint{2.663500in}{1.373430in}}% +\pgfpathlineto{\pgfqpoint{2.694779in}{1.425362in}}% +\pgfpathlineto{\pgfqpoint{2.726059in}{1.479708in}}% +\pgfpathlineto{\pgfqpoint{2.757338in}{1.536544in}}% +\pgfpathlineto{\pgfqpoint{2.788618in}{1.595942in}}% +\pgfpathlineto{\pgfqpoint{2.819897in}{1.657980in}}% +\pgfpathlineto{\pgfqpoint{2.851177in}{1.722735in}}% +\pgfpathlineto{\pgfqpoint{2.882457in}{1.790285in}}% +\pgfpathlineto{\pgfqpoint{2.913736in}{1.860708in}}% +\pgfpathlineto{\pgfqpoint{2.945016in}{1.934086in}}% +\pgfpathlineto{\pgfqpoint{2.976295in}{2.010499in}}% +\pgfpathlineto{\pgfqpoint{3.007575in}{2.090031in}}% +\pgfpathlineto{\pgfqpoint{3.038854in}{2.172766in}}% +\pgfpathlineto{\pgfqpoint{3.070134in}{2.258787in}}% +\pgfpathlineto{\pgfqpoint{3.090098in}{2.315844in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.661609in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.692889in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.724168in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.755448in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.786727in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.818007in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.849287in}{0.548770in}}% +\pgfpathlineto{\pgfqpoint{0.880566in}{0.548772in}}% +\pgfpathlineto{\pgfqpoint{0.911846in}{0.548774in}}% +\pgfpathlineto{\pgfqpoint{0.943125in}{0.548779in}}% +\pgfpathlineto{\pgfqpoint{0.974405in}{0.548788in}}% +\pgfpathlineto{\pgfqpoint{1.005684in}{0.548800in}}% +\pgfpathlineto{\pgfqpoint{1.036964in}{0.548820in}}% +\pgfpathlineto{\pgfqpoint{1.068243in}{0.548849in}}% +\pgfpathlineto{\pgfqpoint{1.099523in}{0.548890in}}% +\pgfpathlineto{\pgfqpoint{1.130802in}{0.548947in}}% +\pgfpathlineto{\pgfqpoint{1.162082in}{0.549025in}}% +\pgfpathlineto{\pgfqpoint{1.193361in}{0.549130in}}% +\pgfpathlineto{\pgfqpoint{1.224641in}{0.549268in}}% +\pgfpathlineto{\pgfqpoint{1.255921in}{0.549448in}}% +\pgfpathlineto{\pgfqpoint{1.287200in}{0.549678in}}% +\pgfpathlineto{\pgfqpoint{1.318480in}{0.549971in}}% +\pgfpathlineto{\pgfqpoint{1.349759in}{0.550339in}}% +\pgfpathlineto{\pgfqpoint{1.381039in}{0.550796in}}% +\pgfpathlineto{\pgfqpoint{1.412318in}{0.551358in}}% +\pgfpathlineto{\pgfqpoint{1.443598in}{0.552045in}}% +\pgfpathlineto{\pgfqpoint{1.474877in}{0.552878in}}% +\pgfpathlineto{\pgfqpoint{1.506157in}{0.553880in}}% +\pgfpathlineto{\pgfqpoint{1.537436in}{0.555077in}}% +\pgfpathlineto{\pgfqpoint{1.568716in}{0.556500in}}% +\pgfpathlineto{\pgfqpoint{1.599995in}{0.558181in}}% +\pgfpathlineto{\pgfqpoint{1.631275in}{0.560156in}}% +\pgfpathlineto{\pgfqpoint{1.662555in}{0.562466in}}% +\pgfpathlineto{\pgfqpoint{1.693834in}{0.565152in}}% +\pgfpathlineto{\pgfqpoint{1.725114in}{0.568265in}}% +\pgfpathlineto{\pgfqpoint{1.756393in}{0.571855in}}% +\pgfpathlineto{\pgfqpoint{1.787673in}{0.575980in}}% +\pgfpathlineto{\pgfqpoint{1.818952in}{0.580702in}}% +\pgfpathlineto{\pgfqpoint{1.850232in}{0.586087in}}% +\pgfpathlineto{\pgfqpoint{1.881511in}{0.592209in}}% +\pgfpathlineto{\pgfqpoint{1.912791in}{0.599146in}}% +\pgfpathlineto{\pgfqpoint{1.944070in}{0.606983in}}% +\pgfpathlineto{\pgfqpoint{1.975350in}{0.615811in}}% +\pgfpathlineto{\pgfqpoint{2.006629in}{0.625726in}}% +\pgfpathlineto{\pgfqpoint{2.037909in}{0.636835in}}% +\pgfpathlineto{\pgfqpoint{2.069189in}{0.649249in}}% +\pgfpathlineto{\pgfqpoint{2.100468in}{0.663089in}}% +\pgfpathlineto{\pgfqpoint{2.131748in}{0.678481in}}% +\pgfpathlineto{\pgfqpoint{2.163027in}{0.695564in}}% +\pgfpathlineto{\pgfqpoint{2.194307in}{0.714481in}}% +\pgfpathlineto{\pgfqpoint{2.225586in}{0.735388in}}% +\pgfpathlineto{\pgfqpoint{2.256866in}{0.758448in}}% +\pgfpathlineto{\pgfqpoint{2.288145in}{0.783835in}}% +\pgfpathlineto{\pgfqpoint{2.319425in}{0.811733in}}% +\pgfpathlineto{\pgfqpoint{2.350704in}{0.842338in}}% +\pgfpathlineto{\pgfqpoint{2.381984in}{0.875855in}}% +\pgfpathlineto{\pgfqpoint{2.413263in}{0.912502in}}% +\pgfpathlineto{\pgfqpoint{2.444543in}{0.952509in}}% +\pgfpathlineto{\pgfqpoint{2.475823in}{0.996118in}}% +\pgfpathlineto{\pgfqpoint{2.507102in}{1.043583in}}% +\pgfpathlineto{\pgfqpoint{2.538382in}{1.095172in}}% +\pgfpathlineto{\pgfqpoint{2.569661in}{1.151168in}}% +\pgfpathlineto{\pgfqpoint{2.600941in}{1.211867in}}% +\pgfpathlineto{\pgfqpoint{2.632220in}{1.277579in}}% +\pgfpathlineto{\pgfqpoint{2.663500in}{1.348630in}}% +\pgfpathlineto{\pgfqpoint{2.694779in}{1.425362in}}% +\pgfpathlineto{\pgfqpoint{2.726059in}{1.508132in}}% +\pgfpathlineto{\pgfqpoint{2.757338in}{1.597316in}}% +\pgfpathlineto{\pgfqpoint{2.788618in}{1.693303in}}% +\pgfpathlineto{\pgfqpoint{2.819897in}{1.796505in}}% +\pgfpathlineto{\pgfqpoint{2.851177in}{1.907347in}}% +\pgfpathlineto{\pgfqpoint{2.882457in}{2.026275in}}% +\pgfpathlineto{\pgfqpoint{2.913736in}{2.153756in}}% +\pgfpathlineto{\pgfqpoint{2.945016in}{2.290274in}}% +\pgfpathlineto{\pgfqpoint{2.950492in}{2.315844in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.661609in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.692889in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.724168in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.755448in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.786727in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.818007in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.849287in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.880566in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.911846in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.943125in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.974405in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{1.005684in}{0.548770in}}% +\pgfpathlineto{\pgfqpoint{1.036964in}{0.548771in}}% +\pgfpathlineto{\pgfqpoint{1.068243in}{0.548772in}}% +\pgfpathlineto{\pgfqpoint{1.099523in}{0.548775in}}% +\pgfpathlineto{\pgfqpoint{1.130802in}{0.548779in}}% +\pgfpathlineto{\pgfqpoint{1.162082in}{0.548786in}}% +\pgfpathlineto{\pgfqpoint{1.193361in}{0.548796in}}% +\pgfpathlineto{\pgfqpoint{1.224641in}{0.548810in}}% +\pgfpathlineto{\pgfqpoint{1.255921in}{0.548831in}}% +\pgfpathlineto{\pgfqpoint{1.287200in}{0.548861in}}% +\pgfpathlineto{\pgfqpoint{1.318480in}{0.548902in}}% +\pgfpathlineto{\pgfqpoint{1.349759in}{0.548959in}}% +\pgfpathlineto{\pgfqpoint{1.381039in}{0.549037in}}% +\pgfpathlineto{\pgfqpoint{1.412318in}{0.549140in}}% +\pgfpathlineto{\pgfqpoint{1.443598in}{0.549277in}}% +\pgfpathlineto{\pgfqpoint{1.474877in}{0.549456in}}% +\pgfpathlineto{\pgfqpoint{1.506157in}{0.549689in}}% +\pgfpathlineto{\pgfqpoint{1.537436in}{0.549987in}}% +\pgfpathlineto{\pgfqpoint{1.568716in}{0.550366in}}% +\pgfpathlineto{\pgfqpoint{1.599995in}{0.550845in}}% +\pgfpathlineto{\pgfqpoint{1.631275in}{0.551446in}}% +\pgfpathlineto{\pgfqpoint{1.662555in}{0.552193in}}% +\pgfpathlineto{\pgfqpoint{1.693834in}{0.553117in}}% +\pgfpathlineto{\pgfqpoint{1.725114in}{0.554251in}}% +\pgfpathlineto{\pgfqpoint{1.756393in}{0.555637in}}% +\pgfpathlineto{\pgfqpoint{1.787673in}{0.557321in}}% +\pgfpathlineto{\pgfqpoint{1.818952in}{0.559354in}}% +\pgfpathlineto{\pgfqpoint{1.850232in}{0.561799in}}% +\pgfpathlineto{\pgfqpoint{1.881511in}{0.564725in}}% +\pgfpathlineto{\pgfqpoint{1.912791in}{0.568210in}}% +\pgfpathlineto{\pgfqpoint{1.944070in}{0.572343in}}% +\pgfpathlineto{\pgfqpoint{1.975350in}{0.577226in}}% +\pgfpathlineto{\pgfqpoint{2.006629in}{0.582972in}}% +\pgfpathlineto{\pgfqpoint{2.037909in}{0.589709in}}% +\pgfpathlineto{\pgfqpoint{2.069189in}{0.597579in}}% +\pgfpathlineto{\pgfqpoint{2.100468in}{0.606742in}}% +\pgfpathlineto{\pgfqpoint{2.131748in}{0.617377in}}% +\pgfpathlineto{\pgfqpoint{2.163027in}{0.629681in}}% +\pgfpathlineto{\pgfqpoint{2.194307in}{0.643875in}}% +\pgfpathlineto{\pgfqpoint{2.225586in}{0.660200in}}% +\pgfpathlineto{\pgfqpoint{2.256866in}{0.678928in}}% +\pgfpathlineto{\pgfqpoint{2.288145in}{0.700353in}}% +\pgfpathlineto{\pgfqpoint{2.319425in}{0.724803in}}% +\pgfpathlineto{\pgfqpoint{2.350704in}{0.752636in}}% +\pgfpathlineto{\pgfqpoint{2.381984in}{0.784247in}}% +\pgfpathlineto{\pgfqpoint{2.413263in}{0.820066in}}% +\pgfpathlineto{\pgfqpoint{2.444543in}{0.860565in}}% +\pgfpathlineto{\pgfqpoint{2.475823in}{0.906258in}}% +\pgfpathlineto{\pgfqpoint{2.507102in}{0.957706in}}% +\pgfpathlineto{\pgfqpoint{2.538382in}{1.015520in}}% +\pgfpathlineto{\pgfqpoint{2.569661in}{1.080363in}}% +\pgfpathlineto{\pgfqpoint{2.600941in}{1.152955in}}% +\pgfpathlineto{\pgfqpoint{2.632220in}{1.234078in}}% +\pgfpathlineto{\pgfqpoint{2.663500in}{1.324575in}}% +\pgfpathlineto{\pgfqpoint{2.694779in}{1.425362in}}% +\pgfpathlineto{\pgfqpoint{2.726059in}{1.537424in}}% +\pgfpathlineto{\pgfqpoint{2.757338in}{1.661827in}}% +\pgfpathlineto{\pgfqpoint{2.788618in}{1.799717in}}% +\pgfpathlineto{\pgfqpoint{2.819897in}{1.952328in}}% +\pgfpathlineto{\pgfqpoint{2.851177in}{2.120989in}}% +\pgfpathlineto{\pgfqpoint{2.882457in}{2.307124in}}% +\pgfpathlineto{\pgfqpoint{2.883786in}{2.315844in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.630330in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{3.727004in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{0.548769in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetfillopacity{0.800000}% +\pgfsetlinewidth{1.003750pt}% +\definecolor{currentstroke}{rgb}{0.800000,0.800000,0.800000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.800000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.727552in}{1.416153in}}% +\pgfpathlineto{\pgfqpoint{1.553360in}{1.416153in}}% +\pgfpathquadraticcurveto{\pgfqpoint{1.581138in}{1.416153in}}{\pgfqpoint{1.581138in}{1.443930in}}% +\pgfpathlineto{\pgfqpoint{1.581138in}{2.204733in}}% +\pgfpathquadraticcurveto{\pgfqpoint{1.581138in}{2.232510in}}{\pgfqpoint{1.553360in}{2.232510in}}% +\pgfpathlineto{\pgfqpoint{0.727552in}{2.232510in}}% +\pgfpathquadraticcurveto{\pgfqpoint{0.699774in}{2.232510in}}{\pgfqpoint{0.699774in}{2.204733in}}% +\pgfpathlineto{\pgfqpoint{0.699774in}{1.443930in}}% +\pgfpathquadraticcurveto{\pgfqpoint{0.699774in}{1.416153in}}{\pgfqpoint{0.727552in}{1.416153in}}% +\pgfpathlineto{\pgfqpoint{0.727552in}{1.416153in}}% +\pgfpathclose% +\pgfusepath{stroke,fill}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.755330in}{2.128344in}}% +\pgfpathlineto{\pgfqpoint{0.894219in}{2.128344in}}% +\pgfpathlineto{\pgfqpoint{1.033108in}{2.128344in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=1.144219in,y=2.079733in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle N=1\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.755330in}{1.934671in}}% +\pgfpathlineto{\pgfqpoint{0.894219in}{1.934671in}}% +\pgfpathlineto{\pgfqpoint{1.033108in}{1.934671in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=1.144219in,y=1.886060in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle N=2\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.755330in}{1.740998in}}% +\pgfpathlineto{\pgfqpoint{0.894219in}{1.740998in}}% +\pgfpathlineto{\pgfqpoint{1.033108in}{1.740998in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=1.144219in,y=1.692387in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle N=3\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.755330in}{1.547325in}}% +\pgfpathlineto{\pgfqpoint{0.894219in}{1.547325in}}% +\pgfpathlineto{\pgfqpoint{1.033108in}{1.547325in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=1.144219in,y=1.498714in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle N=4\)}% +\end{pgfscope}% +\end{pgfpicture}% +\makeatother% +\endgroup% diff --git a/buch/papers/ellfilter/python/F_N_chebychev.pgf b/buch/papers/ellfilter/python/F_N_chebychev.pgf new file mode 100644 index 0000000..72d5834 --- /dev/null +++ b/buch/papers/ellfilter/python/F_N_chebychev.pgf @@ -0,0 +1,1066 @@ +%% Creator: Matplotlib, PGF backend +%% +%% To include the figure in your LaTeX document, write +%% \input{.pgf} +%% +%% Make sure the required packages are loaded in your preamble +%% \usepackage{pgf} +%% +%% Also ensure that all the required font packages are loaded; for instance, +%% the lmodern package is sometimes necessary when using math font. +%% \usepackage{lmodern} +%% +%% Figures using additional raster images can only be included by \input if +%% they are in the same directory as the main LaTeX file. For loading figures +%% from other directories you can use the `import` package +%% \usepackage{import} +%% +%% and then include the figures with +%% \import{}{.pgf} +%% +%% Matplotlib used the following preamble +%% +\begingroup% +\makeatletter% +\begin{pgfpicture}% +\pgfpathrectangle{\pgfpointorigin}{\pgfqpoint{4.000000in}{2.500000in}}% +\pgfusepath{use as bounding box, clip}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{1.000000,1.000000,1.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.000000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{4.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{4.000000in}{2.500000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{2.500000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathclose% +\pgfusepath{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.000000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{0.630330in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{0.630330in}{0.548769in}}% +\pgfpathclose% +\pgfusepath{fill}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{0.000000,0.501961,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetfillopacity{0.200000}% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.200000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{2.694779in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{2.694779in}{1.425362in}}% +\pgfpathlineto{\pgfqpoint{0.630330in}{1.425362in}}% +\pgfpathlineto{\pgfqpoint{0.630330in}{0.548769in}}% +\pgfpathclose% +\pgfusepath{fill}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{1.000000,0.647059,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetfillopacity{0.200000}% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.200000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.694779in}{1.425362in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{1.425362in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{2.694779in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{2.694779in}{1.425362in}}% +\pgfpathclose% +\pgfusepath{fill}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.630330in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.630330in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.630330in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.00}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{1.146442in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{1.146442in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{1.146442in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=1.146442in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.25}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{1.662555in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{1.662555in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{1.662555in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=1.662555in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.50}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.178667in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{2.178667in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{2.178667in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.178667in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.75}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.694779in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{2.694779in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{2.694779in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.694779in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {1.00}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{3.210892in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.210892in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{3.210892in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=3.210892in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {1.25}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{3.727004in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{3.727004in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=3.727004in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {1.50}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.178667in,y=0.272534in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle w\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{0.548769in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.630330in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.355638in, y=0.500544in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.0}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{0.987065in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{0.987065in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.630330in}{0.987065in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.355638in, y=0.938840in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.5}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{1.425362in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{1.425362in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.630330in}{1.425362in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.355638in, y=1.377137in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {1.0}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{1.863658in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{1.863658in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.630330in}{1.863658in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.355638in, y=1.815433in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {1.5}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.630330in}{2.301955in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.355638in, y=2.253730in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {2.0}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.300082in,y=1.425362in,,bottom,rotate=90.000000]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle F^2_N(w)\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.661609in}{0.548970in}}% +\pgfpathlineto{\pgfqpoint{0.692889in}{0.549574in}}% +\pgfpathlineto{\pgfqpoint{0.724168in}{0.550580in}}% +\pgfpathlineto{\pgfqpoint{0.755448in}{0.551989in}}% +\pgfpathlineto{\pgfqpoint{0.786727in}{0.553800in}}% +\pgfpathlineto{\pgfqpoint{0.818007in}{0.556013in}}% +\pgfpathlineto{\pgfqpoint{0.849287in}{0.558629in}}% +\pgfpathlineto{\pgfqpoint{0.880566in}{0.561648in}}% +\pgfpathlineto{\pgfqpoint{0.911846in}{0.565069in}}% +\pgfpathlineto{\pgfqpoint{0.943125in}{0.568893in}}% +\pgfpathlineto{\pgfqpoint{0.974405in}{0.573119in}}% +\pgfpathlineto{\pgfqpoint{1.005684in}{0.577747in}}% +\pgfpathlineto{\pgfqpoint{1.036964in}{0.582778in}}% +\pgfpathlineto{\pgfqpoint{1.068243in}{0.588211in}}% +\pgfpathlineto{\pgfqpoint{1.099523in}{0.594047in}}% +\pgfpathlineto{\pgfqpoint{1.130802in}{0.600286in}}% +\pgfpathlineto{\pgfqpoint{1.162082in}{0.606927in}}% +\pgfpathlineto{\pgfqpoint{1.193361in}{0.613970in}}% +\pgfpathlineto{\pgfqpoint{1.224641in}{0.621416in}}% +\pgfpathlineto{\pgfqpoint{1.255921in}{0.629264in}}% +\pgfpathlineto{\pgfqpoint{1.287200in}{0.637515in}}% +\pgfpathlineto{\pgfqpoint{1.318480in}{0.646168in}}% +\pgfpathlineto{\pgfqpoint{1.349759in}{0.655224in}}% +\pgfpathlineto{\pgfqpoint{1.381039in}{0.664682in}}% +\pgfpathlineto{\pgfqpoint{1.412318in}{0.674543in}}% +\pgfpathlineto{\pgfqpoint{1.443598in}{0.684806in}}% +\pgfpathlineto{\pgfqpoint{1.474877in}{0.695471in}}% +\pgfpathlineto{\pgfqpoint{1.506157in}{0.706539in}}% +\pgfpathlineto{\pgfqpoint{1.537436in}{0.718010in}}% +\pgfpathlineto{\pgfqpoint{1.568716in}{0.729883in}}% +\pgfpathlineto{\pgfqpoint{1.599995in}{0.742159in}}% +\pgfpathlineto{\pgfqpoint{1.631275in}{0.754837in}}% +\pgfpathlineto{\pgfqpoint{1.662555in}{0.767917in}}% +\pgfpathlineto{\pgfqpoint{1.693834in}{0.781400in}}% +\pgfpathlineto{\pgfqpoint{1.725114in}{0.795285in}}% +\pgfpathlineto{\pgfqpoint{1.756393in}{0.809573in}}% +\pgfpathlineto{\pgfqpoint{1.787673in}{0.824264in}}% +\pgfpathlineto{\pgfqpoint{1.818952in}{0.839357in}}% +\pgfpathlineto{\pgfqpoint{1.850232in}{0.854852in}}% +\pgfpathlineto{\pgfqpoint{1.881511in}{0.870750in}}% +\pgfpathlineto{\pgfqpoint{1.912791in}{0.887050in}}% +\pgfpathlineto{\pgfqpoint{1.944070in}{0.903753in}}% +\pgfpathlineto{\pgfqpoint{1.975350in}{0.920858in}}% +\pgfpathlineto{\pgfqpoint{2.006629in}{0.938366in}}% +\pgfpathlineto{\pgfqpoint{2.037909in}{0.956276in}}% +\pgfpathlineto{\pgfqpoint{2.069189in}{0.974589in}}% +\pgfpathlineto{\pgfqpoint{2.100468in}{0.993304in}}% +\pgfpathlineto{\pgfqpoint{2.131748in}{1.012421in}}% +\pgfpathlineto{\pgfqpoint{2.163027in}{1.031941in}}% +\pgfpathlineto{\pgfqpoint{2.194307in}{1.051864in}}% +\pgfpathlineto{\pgfqpoint{2.225586in}{1.072189in}}% +\pgfpathlineto{\pgfqpoint{2.256866in}{1.092917in}}% +\pgfpathlineto{\pgfqpoint{2.288145in}{1.114047in}}% +\pgfpathlineto{\pgfqpoint{2.319425in}{1.135579in}}% +\pgfpathlineto{\pgfqpoint{2.350704in}{1.157514in}}% +\pgfpathlineto{\pgfqpoint{2.381984in}{1.179851in}}% +\pgfpathlineto{\pgfqpoint{2.413263in}{1.202591in}}% +\pgfpathlineto{\pgfqpoint{2.444543in}{1.225734in}}% +\pgfpathlineto{\pgfqpoint{2.475823in}{1.249279in}}% +\pgfpathlineto{\pgfqpoint{2.507102in}{1.273226in}}% +\pgfpathlineto{\pgfqpoint{2.538382in}{1.297576in}}% +\pgfpathlineto{\pgfqpoint{2.569661in}{1.322328in}}% +\pgfpathlineto{\pgfqpoint{2.600941in}{1.347483in}}% +\pgfpathlineto{\pgfqpoint{2.632220in}{1.373040in}}% +\pgfpathlineto{\pgfqpoint{2.663500in}{1.399000in}}% +\pgfpathlineto{\pgfqpoint{2.694779in}{1.425362in}}% +\pgfpathlineto{\pgfqpoint{2.726059in}{1.452126in}}% +\pgfpathlineto{\pgfqpoint{2.757338in}{1.479294in}}% +\pgfpathlineto{\pgfqpoint{2.788618in}{1.506863in}}% +\pgfpathlineto{\pgfqpoint{2.819897in}{1.534835in}}% +\pgfpathlineto{\pgfqpoint{2.851177in}{1.563210in}}% +\pgfpathlineto{\pgfqpoint{2.882457in}{1.591987in}}% +\pgfpathlineto{\pgfqpoint{2.913736in}{1.621166in}}% +\pgfpathlineto{\pgfqpoint{2.945016in}{1.650748in}}% +\pgfpathlineto{\pgfqpoint{2.976295in}{1.680733in}}% +\pgfpathlineto{\pgfqpoint{3.007575in}{1.711120in}}% +\pgfpathlineto{\pgfqpoint{3.038854in}{1.741909in}}% +\pgfpathlineto{\pgfqpoint{3.070134in}{1.773101in}}% +\pgfpathlineto{\pgfqpoint{3.101413in}{1.804696in}}% +\pgfpathlineto{\pgfqpoint{3.132693in}{1.836692in}}% +\pgfpathlineto{\pgfqpoint{3.163972in}{1.869092in}}% +\pgfpathlineto{\pgfqpoint{3.195252in}{1.901894in}}% +\pgfpathlineto{\pgfqpoint{3.226531in}{1.935098in}}% +\pgfpathlineto{\pgfqpoint{3.257811in}{1.968705in}}% +\pgfpathlineto{\pgfqpoint{3.289091in}{2.002714in}}% +\pgfpathlineto{\pgfqpoint{3.320370in}{2.037126in}}% +\pgfpathlineto{\pgfqpoint{3.351650in}{2.071940in}}% +\pgfpathlineto{\pgfqpoint{3.382929in}{2.107156in}}% +\pgfpathlineto{\pgfqpoint{3.414209in}{2.142776in}}% +\pgfpathlineto{\pgfqpoint{3.445488in}{2.178797in}}% +\pgfpathlineto{\pgfqpoint{3.476768in}{2.215221in}}% +\pgfpathlineto{\pgfqpoint{3.508047in}{2.252048in}}% +\pgfpathlineto{\pgfqpoint{3.539327in}{2.289277in}}% +\pgfpathlineto{\pgfqpoint{3.561409in}{2.315844in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{1.425362in}}% +\pgfpathlineto{\pgfqpoint{0.661609in}{1.424557in}}% +\pgfpathlineto{\pgfqpoint{0.692889in}{1.422145in}}% +\pgfpathlineto{\pgfqpoint{0.724168in}{1.418132in}}% +\pgfpathlineto{\pgfqpoint{0.755448in}{1.412530in}}% +\pgfpathlineto{\pgfqpoint{0.786727in}{1.405354in}}% +\pgfpathlineto{\pgfqpoint{0.818007in}{1.396623in}}% +\pgfpathlineto{\pgfqpoint{0.849287in}{1.386363in}}% +\pgfpathlineto{\pgfqpoint{0.880566in}{1.374602in}}% +\pgfpathlineto{\pgfqpoint{0.911846in}{1.361373in}}% +\pgfpathlineto{\pgfqpoint{0.943125in}{1.346715in}}% +\pgfpathlineto{\pgfqpoint{0.974405in}{1.330668in}}% +\pgfpathlineto{\pgfqpoint{1.005684in}{1.313281in}}% +\pgfpathlineto{\pgfqpoint{1.036964in}{1.294603in}}% +\pgfpathlineto{\pgfqpoint{1.068243in}{1.274690in}}% +\pgfpathlineto{\pgfqpoint{1.099523in}{1.253603in}}% +\pgfpathlineto{\pgfqpoint{1.130802in}{1.231405in}}% +\pgfpathlineto{\pgfqpoint{1.162082in}{1.208165in}}% +\pgfpathlineto{\pgfqpoint{1.193361in}{1.183956in}}% +\pgfpathlineto{\pgfqpoint{1.224641in}{1.158856in}}% +\pgfpathlineto{\pgfqpoint{1.255921in}{1.132948in}}% +\pgfpathlineto{\pgfqpoint{1.287200in}{1.106316in}}% +\pgfpathlineto{\pgfqpoint{1.318480in}{1.079053in}}% +\pgfpathlineto{\pgfqpoint{1.349759in}{1.051254in}}% +\pgfpathlineto{\pgfqpoint{1.381039in}{1.023019in}}% +\pgfpathlineto{\pgfqpoint{1.412318in}{0.994451in}}% +\pgfpathlineto{\pgfqpoint{1.443598in}{0.965659in}}% +\pgfpathlineto{\pgfqpoint{1.474877in}{0.936757in}}% +\pgfpathlineto{\pgfqpoint{1.506157in}{0.907863in}}% +\pgfpathlineto{\pgfqpoint{1.537436in}{0.879097in}}% +\pgfpathlineto{\pgfqpoint{1.568716in}{0.850586in}}% +\pgfpathlineto{\pgfqpoint{1.599995in}{0.822462in}}% +\pgfpathlineto{\pgfqpoint{1.631275in}{0.794859in}}% +\pgfpathlineto{\pgfqpoint{1.662555in}{0.767917in}}% +\pgfpathlineto{\pgfqpoint{1.693834in}{0.741781in}}% +\pgfpathlineto{\pgfqpoint{1.725114in}{0.716598in}}% +\pgfpathlineto{\pgfqpoint{1.756393in}{0.692523in}}% +\pgfpathlineto{\pgfqpoint{1.787673in}{0.669711in}}% +\pgfpathlineto{\pgfqpoint{1.818952in}{0.648326in}}% +\pgfpathlineto{\pgfqpoint{1.850232in}{0.628534in}}% +\pgfpathlineto{\pgfqpoint{1.881511in}{0.610505in}}% +\pgfpathlineto{\pgfqpoint{1.912791in}{0.594414in}}% +\pgfpathlineto{\pgfqpoint{1.944070in}{0.580441in}}% +\pgfpathlineto{\pgfqpoint{1.975350in}{0.568771in}}% +\pgfpathlineto{\pgfqpoint{2.006629in}{0.559591in}}% +\pgfpathlineto{\pgfqpoint{2.037909in}{0.553095in}}% +\pgfpathlineto{\pgfqpoint{2.069189in}{0.549479in}}% +\pgfpathlineto{\pgfqpoint{2.100468in}{0.548946in}}% +\pgfpathlineto{\pgfqpoint{2.131748in}{0.551703in}}% +\pgfpathlineto{\pgfqpoint{2.163027in}{0.557958in}}% +\pgfpathlineto{\pgfqpoint{2.194307in}{0.567929in}}% +\pgfpathlineto{\pgfqpoint{2.225586in}{0.581833in}}% +\pgfpathlineto{\pgfqpoint{2.256866in}{0.599896in}}% +\pgfpathlineto{\pgfqpoint{2.288145in}{0.622346in}}% +\pgfpathlineto{\pgfqpoint{2.319425in}{0.649414in}}% +\pgfpathlineto{\pgfqpoint{2.350704in}{0.681340in}}% +\pgfpathlineto{\pgfqpoint{2.381984in}{0.718364in}}% +\pgfpathlineto{\pgfqpoint{2.413263in}{0.760732in}}% +\pgfpathlineto{\pgfqpoint{2.444543in}{0.808696in}}% +\pgfpathlineto{\pgfqpoint{2.475823in}{0.862510in}}% +\pgfpathlineto{\pgfqpoint{2.507102in}{0.922433in}}% +\pgfpathlineto{\pgfqpoint{2.538382in}{0.988730in}}% +\pgfpathlineto{\pgfqpoint{2.569661in}{1.061668in}}% +\pgfpathlineto{\pgfqpoint{2.600941in}{1.141521in}}% +\pgfpathlineto{\pgfqpoint{2.632220in}{1.228566in}}% +\pgfpathlineto{\pgfqpoint{2.663500in}{1.323084in}}% +\pgfpathlineto{\pgfqpoint{2.694779in}{1.425362in}}% +\pgfpathlineto{\pgfqpoint{2.726059in}{1.535689in}}% +\pgfpathlineto{\pgfqpoint{2.757338in}{1.654362in}}% +\pgfpathlineto{\pgfqpoint{2.788618in}{1.781678in}}% +\pgfpathlineto{\pgfqpoint{2.819897in}{1.917942in}}% +\pgfpathlineto{\pgfqpoint{2.851177in}{2.063463in}}% +\pgfpathlineto{\pgfqpoint{2.882457in}{2.218553in}}% +\pgfpathlineto{\pgfqpoint{2.900903in}{2.315844in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.661609in}{0.550579in}}% +\pgfpathlineto{\pgfqpoint{0.692889in}{0.555996in}}% +\pgfpathlineto{\pgfqpoint{0.724168in}{0.564979in}}% +\pgfpathlineto{\pgfqpoint{0.755448in}{0.577464in}}% +\pgfpathlineto{\pgfqpoint{0.786727in}{0.593357in}}% +\pgfpathlineto{\pgfqpoint{0.818007in}{0.612541in}}% +\pgfpathlineto{\pgfqpoint{0.849287in}{0.634873in}}% +\pgfpathlineto{\pgfqpoint{0.880566in}{0.660185in}}% +\pgfpathlineto{\pgfqpoint{0.911846in}{0.688287in}}% +\pgfpathlineto{\pgfqpoint{0.943125in}{0.718965in}}% +\pgfpathlineto{\pgfqpoint{0.974405in}{0.751984in}}% +\pgfpathlineto{\pgfqpoint{1.005684in}{0.787089in}}% +\pgfpathlineto{\pgfqpoint{1.036964in}{0.824004in}}% +\pgfpathlineto{\pgfqpoint{1.068243in}{0.862437in}}% +\pgfpathlineto{\pgfqpoint{1.099523in}{0.902078in}}% +\pgfpathlineto{\pgfqpoint{1.130802in}{0.942605in}}% +\pgfpathlineto{\pgfqpoint{1.162082in}{0.983681in}}% +\pgfpathlineto{\pgfqpoint{1.193361in}{1.024958in}}% +\pgfpathlineto{\pgfqpoint{1.224641in}{1.066081in}}% +\pgfpathlineto{\pgfqpoint{1.255921in}{1.106686in}}% +\pgfpathlineto{\pgfqpoint{1.287200in}{1.146406in}}% +\pgfpathlineto{\pgfqpoint{1.318480in}{1.184870in}}% +\pgfpathlineto{\pgfqpoint{1.349759in}{1.221710in}}% +\pgfpathlineto{\pgfqpoint{1.381039in}{1.256559in}}% +\pgfpathlineto{\pgfqpoint{1.412318in}{1.289056in}}% +\pgfpathlineto{\pgfqpoint{1.443598in}{1.318849in}}% +\pgfpathlineto{\pgfqpoint{1.474877in}{1.345598in}}% +\pgfpathlineto{\pgfqpoint{1.506157in}{1.368977in}}% +\pgfpathlineto{\pgfqpoint{1.537436in}{1.388677in}}% +\pgfpathlineto{\pgfqpoint{1.568716in}{1.404413in}}% +\pgfpathlineto{\pgfqpoint{1.599995in}{1.415923in}}% +\pgfpathlineto{\pgfqpoint{1.631275in}{1.422973in}}% +\pgfpathlineto{\pgfqpoint{1.662555in}{1.425362in}}% +\pgfpathlineto{\pgfqpoint{1.693834in}{1.422924in}}% +\pgfpathlineto{\pgfqpoint{1.725114in}{1.415535in}}% +\pgfpathlineto{\pgfqpoint{1.756393in}{1.403113in}}% +\pgfpathlineto{\pgfqpoint{1.787673in}{1.385624in}}% +\pgfpathlineto{\pgfqpoint{1.818952in}{1.363088in}}% +\pgfpathlineto{\pgfqpoint{1.850232in}{1.335583in}}% +\pgfpathlineto{\pgfqpoint{1.881511in}{1.303245in}}% +\pgfpathlineto{\pgfqpoint{1.912791in}{1.266280in}}% +\pgfpathlineto{\pgfqpoint{1.944070in}{1.224962in}}% +\pgfpathlineto{\pgfqpoint{1.975350in}{1.179644in}}% +\pgfpathlineto{\pgfqpoint{2.006629in}{1.130759in}}% +\pgfpathlineto{\pgfqpoint{2.037909in}{1.078826in}}% +\pgfpathlineto{\pgfqpoint{2.069189in}{1.024455in}}% +\pgfpathlineto{\pgfqpoint{2.100468in}{0.968355in}}% +\pgfpathlineto{\pgfqpoint{2.131748in}{0.911337in}}% +\pgfpathlineto{\pgfqpoint{2.163027in}{0.854319in}}% +\pgfpathlineto{\pgfqpoint{2.194307in}{0.798335in}}% +\pgfpathlineto{\pgfqpoint{2.225586in}{0.744537in}}% +\pgfpathlineto{\pgfqpoint{2.256866in}{0.694207in}}% +\pgfpathlineto{\pgfqpoint{2.288145in}{0.648754in}}% +\pgfpathlineto{\pgfqpoint{2.319425in}{0.609730in}}% +\pgfpathlineto{\pgfqpoint{2.350704in}{0.578830in}}% +\pgfpathlineto{\pgfqpoint{2.381984in}{0.557901in}}% +\pgfpathlineto{\pgfqpoint{2.413263in}{0.548947in}}% +\pgfpathlineto{\pgfqpoint{2.444543in}{0.554140in}}% +\pgfpathlineto{\pgfqpoint{2.475823in}{0.575820in}}% +\pgfpathlineto{\pgfqpoint{2.507102in}{0.616509in}}% +\pgfpathlineto{\pgfqpoint{2.538382in}{0.678913in}}% +\pgfpathlineto{\pgfqpoint{2.569661in}{0.765934in}}% +\pgfpathlineto{\pgfqpoint{2.600941in}{0.880671in}}% +\pgfpathlineto{\pgfqpoint{2.632220in}{1.026434in}}% +\pgfpathlineto{\pgfqpoint{2.663500in}{1.206748in}}% +\pgfpathlineto{\pgfqpoint{2.694779in}{1.425362in}}% +\pgfpathlineto{\pgfqpoint{2.726059in}{1.686256in}}% +\pgfpathlineto{\pgfqpoint{2.757338in}{1.993649in}}% +\pgfpathlineto{\pgfqpoint{2.785461in}{2.315844in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.630330in}{0.548769in}}{\pgfqpoint{3.096674in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{1.425362in}}% +\pgfpathlineto{\pgfqpoint{0.661609in}{1.422146in}}% +\pgfpathlineto{\pgfqpoint{0.692889in}{1.412542in}}% +\pgfpathlineto{\pgfqpoint{0.724168in}{1.396682in}}% +\pgfpathlineto{\pgfqpoint{0.755448in}{1.374785in}}% +\pgfpathlineto{\pgfqpoint{0.786727in}{1.347155in}}% +\pgfpathlineto{\pgfqpoint{0.818007in}{1.314175in}}% +\pgfpathlineto{\pgfqpoint{0.849287in}{1.276306in}}% +\pgfpathlineto{\pgfqpoint{0.880566in}{1.234079in}}% +\pgfpathlineto{\pgfqpoint{0.911846in}{1.188091in}}% +\pgfpathlineto{\pgfqpoint{0.943125in}{1.138997in}}% +\pgfpathlineto{\pgfqpoint{0.974405in}{1.087504in}}% +\pgfpathlineto{\pgfqpoint{1.005684in}{1.034360in}}% +\pgfpathlineto{\pgfqpoint{1.036964in}{0.980345in}}% +\pgfpathlineto{\pgfqpoint{1.068243in}{0.926267in}}% +\pgfpathlineto{\pgfqpoint{1.099523in}{0.872943in}}% +\pgfpathlineto{\pgfqpoint{1.130802in}{0.821195in}}% +\pgfpathlineto{\pgfqpoint{1.162082in}{0.771836in}}% +\pgfpathlineto{\pgfqpoint{1.193361in}{0.725662in}}% +\pgfpathlineto{\pgfqpoint{1.224641in}{0.683436in}}% +\pgfpathlineto{\pgfqpoint{1.255921in}{0.645879in}}% +\pgfpathlineto{\pgfqpoint{1.287200in}{0.613660in}}% +\pgfpathlineto{\pgfqpoint{1.318480in}{0.587381in}}% +\pgfpathlineto{\pgfqpoint{1.349759in}{0.567570in}}% +\pgfpathlineto{\pgfqpoint{1.381039in}{0.554667in}}% +\pgfpathlineto{\pgfqpoint{1.412318in}{0.549018in}}% +\pgfpathlineto{\pgfqpoint{1.443598in}{0.550860in}}% +\pgfpathlineto{\pgfqpoint{1.474877in}{0.560318in}}% +\pgfpathlineto{\pgfqpoint{1.506157in}{0.577394in}}% +\pgfpathlineto{\pgfqpoint{1.537436in}{0.601962in}}% +\pgfpathlineto{\pgfqpoint{1.568716in}{0.633764in}}% +\pgfpathlineto{\pgfqpoint{1.599995in}{0.672404in}}% +\pgfpathlineto{\pgfqpoint{1.631275in}{0.717346in}}% +\pgfpathlineto{\pgfqpoint{1.662555in}{0.767917in}}% +\pgfpathlineto{\pgfqpoint{1.693834in}{0.823307in}}% +\pgfpathlineto{\pgfqpoint{1.725114in}{0.882572in}}% +\pgfpathlineto{\pgfqpoint{1.756393in}{0.944644in}}% +\pgfpathlineto{\pgfqpoint{1.787673in}{1.008337in}}% +\pgfpathlineto{\pgfqpoint{1.818952in}{1.072360in}}% +\pgfpathlineto{\pgfqpoint{1.850232in}{1.135334in}}% +\pgfpathlineto{\pgfqpoint{1.881511in}{1.195810in}}% +\pgfpathlineto{\pgfqpoint{1.912791in}{1.252288in}}% +\pgfpathlineto{\pgfqpoint{1.944070in}{1.303249in}}% +\pgfpathlineto{\pgfqpoint{1.975350in}{1.347179in}}% +\pgfpathlineto{\pgfqpoint{2.006629in}{1.382608in}}% +\pgfpathlineto{\pgfqpoint{2.037909in}{1.408144in}}% +\pgfpathlineto{\pgfqpoint{2.069189in}{1.422523in}}% +\pgfpathlineto{\pgfqpoint{2.100468in}{1.424652in}}% +\pgfpathlineto{\pgfqpoint{2.131748in}{1.413666in}}% +\pgfpathlineto{\pgfqpoint{2.163027in}{1.388989in}}% +\pgfpathlineto{\pgfqpoint{2.194307in}{1.350397in}}% +\pgfpathlineto{\pgfqpoint{2.225586in}{1.298092in}}% +\pgfpathlineto{\pgfqpoint{2.256866in}{1.232780in}}% +\pgfpathlineto{\pgfqpoint{2.288145in}{1.155757in}}% +\pgfpathlineto{\pgfqpoint{2.319425in}{1.069002in}}% +\pgfpathlineto{\pgfqpoint{2.350704in}{0.975275in}}% +\pgfpathlineto{\pgfqpoint{2.381984in}{0.878228in}}% +\pgfpathlineto{\pgfqpoint{2.413263in}{0.782522in}}% +\pgfpathlineto{\pgfqpoint{2.444543in}{0.693947in}}% +\pgfpathlineto{\pgfqpoint{2.475823in}{0.619562in}}% +\pgfpathlineto{\pgfqpoint{2.507102in}{0.567831in}}% +\pgfpathlineto{\pgfqpoint{2.538382in}{0.548781in}}% +\pgfpathlineto{\pgfqpoint{2.569661in}{0.574165in}}% +\pgfpathlineto{\pgfqpoint{2.600941in}{0.657630in}}% +\pgfpathlineto{\pgfqpoint{2.632220in}{0.814902in}}% +\pgfpathlineto{\pgfqpoint{2.663500in}{1.063985in}}% +\pgfpathlineto{\pgfqpoint{2.694779in}{1.425362in}}% +\pgfpathlineto{\pgfqpoint{2.726059in}{1.922215in}}% +\pgfpathlineto{\pgfqpoint{2.744758in}{2.315844in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.630330in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{3.727004in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{0.548769in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.630330in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{3.727004in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetfillopacity{0.800000}% +\pgfsetlinewidth{1.003750pt}% +\definecolor{currentstroke}{rgb}{0.800000,0.800000,0.800000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.800000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.803974in}{0.618213in}}% +\pgfpathlineto{\pgfqpoint{3.629782in}{0.618213in}}% +\pgfpathquadraticcurveto{\pgfqpoint{3.657560in}{0.618213in}}{\pgfqpoint{3.657560in}{0.645991in}}% +\pgfpathlineto{\pgfqpoint{3.657560in}{1.406793in}}% +\pgfpathquadraticcurveto{\pgfqpoint{3.657560in}{1.434571in}}{\pgfqpoint{3.629782in}{1.434571in}}% +\pgfpathlineto{\pgfqpoint{2.803974in}{1.434571in}}% +\pgfpathquadraticcurveto{\pgfqpoint{2.776196in}{1.434571in}}{\pgfqpoint{2.776196in}{1.406793in}}% +\pgfpathlineto{\pgfqpoint{2.776196in}{0.645991in}}% +\pgfpathquadraticcurveto{\pgfqpoint{2.776196in}{0.618213in}}{\pgfqpoint{2.803974in}{0.618213in}}% +\pgfpathlineto{\pgfqpoint{2.803974in}{0.618213in}}% +\pgfpathclose% +\pgfusepath{stroke,fill}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.831751in}{1.330404in}}% +\pgfpathlineto{\pgfqpoint{2.970640in}{1.330404in}}% +\pgfpathlineto{\pgfqpoint{3.109529in}{1.330404in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=3.220640in,y=1.281793in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle N=1\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.831751in}{1.136732in}}% +\pgfpathlineto{\pgfqpoint{2.970640in}{1.136732in}}% +\pgfpathlineto{\pgfqpoint{3.109529in}{1.136732in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=3.220640in,y=1.088120in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle N=2\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.831751in}{0.943059in}}% +\pgfpathlineto{\pgfqpoint{2.970640in}{0.943059in}}% +\pgfpathlineto{\pgfqpoint{3.109529in}{0.943059in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=3.220640in,y=0.894448in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle N=3\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.831751in}{0.749386in}}% +\pgfpathlineto{\pgfqpoint{2.970640in}{0.749386in}}% +\pgfpathlineto{\pgfqpoint{3.109529in}{0.749386in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=3.220640in,y=0.700775in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle N=4\)}% +\end{pgfscope}% +\end{pgfpicture}% +\makeatother% +\endgroup% diff --git a/buch/papers/ellfilter/python/F_N_chebychev2.pgf b/buch/papers/ellfilter/python/F_N_chebychev2.pgf new file mode 100644 index 0000000..43ebb91 --- /dev/null +++ b/buch/papers/ellfilter/python/F_N_chebychev2.pgf @@ -0,0 +1,1023 @@ +%% Creator: Matplotlib, PGF backend +%% +%% To include the figure in your LaTeX document, write +%% \input{.pgf} +%% +%% Make sure the required packages are loaded in your preamble +%% \usepackage{pgf} +%% +%% Also ensure that all the required font packages are loaded; for instance, +%% the lmodern package is sometimes necessary when using math font. +%% \usepackage{lmodern} +%% +%% Figures using additional raster images can only be included by \input if +%% they are in the same directory as the main LaTeX file. For loading figures +%% from other directories you can use the `import` package +%% \usepackage{import} +%% +%% and then include the figures with +%% \import{}{.pgf} +%% +%% Matplotlib used the following preamble +%% +\begingroup% +\makeatletter% +\begin{pgfpicture}% +\pgfpathrectangle{\pgfpointorigin}{\pgfqpoint{5.500000in}{2.500000in}}% +\pgfusepath{use as bounding box, clip}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{1.000000,1.000000,1.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.000000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{5.500000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{5.500000in}{2.500000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{2.500000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathclose% +\pgfusepath{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.000000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.617954in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{5.350000in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{5.350000in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{0.617954in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{0.617954in}{0.548769in}}% +\pgfpathclose% +\pgfusepath{fill}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{4.732046in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{1.012292in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{1.012292in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{1.012292in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=1.012292in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {\ensuremath{-}1.0}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{4.732046in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{1.998134in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{1.998134in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{1.998134in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=1.998134in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {\ensuremath{-}0.5}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{4.732046in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.983977in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{2.983977in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{2.983977in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.983977in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.0}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{4.732046in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{3.969820in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.969820in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{3.969820in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=3.969820in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.5}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{4.732046in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{4.955663in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{4.955663in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{4.955663in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=4.955663in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {1.0}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.983977in,y=0.272534in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle w\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{4.732046in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.617954in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{5.350000in}{0.548769in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.617954in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.343262in, y=0.500544in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {\ensuremath{-}2}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{4.732046in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.617954in}{0.987065in}}% +\pgfpathlineto{\pgfqpoint{5.350000in}{0.987065in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.617954in}{0.987065in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.343262in, y=0.938840in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {\ensuremath{-}1}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{4.732046in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.617954in}{1.425362in}}% +\pgfpathlineto{\pgfqpoint{5.350000in}{1.425362in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.617954in}{1.425362in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.451287in, y=1.377137in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{4.732046in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.617954in}{1.863658in}}% +\pgfpathlineto{\pgfqpoint{5.350000in}{1.863658in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.617954in}{1.863658in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.451287in, y=1.815433in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {1}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{4.732046in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.617954in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{5.350000in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.617954in}{2.301955in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.451287in, y=2.253730in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {2}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.287707in,y=1.425362in,,bottom,rotate=90.000000]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle T_N(w)\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{4.732046in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.815123in}{0.538250in}}% +\pgfpathlineto{\pgfqpoint{0.867228in}{0.667673in}}% +\pgfpathlineto{\pgfqpoint{0.919332in}{0.789210in}}% +\pgfpathlineto{\pgfqpoint{0.971437in}{0.903055in}}% +\pgfpathlineto{\pgfqpoint{1.023541in}{1.009402in}}% +\pgfpathlineto{\pgfqpoint{1.075646in}{1.108444in}}% +\pgfpathlineto{\pgfqpoint{1.123409in}{1.192982in}}% +\pgfpathlineto{\pgfqpoint{1.171171in}{1.271695in}}% +\pgfpathlineto{\pgfqpoint{1.218934in}{1.344733in}}% +\pgfpathlineto{\pgfqpoint{1.266696in}{1.412244in}}% +\pgfpathlineto{\pgfqpoint{1.314459in}{1.474380in}}% +\pgfpathlineto{\pgfqpoint{1.362221in}{1.531289in}}% +\pgfpathlineto{\pgfqpoint{1.409984in}{1.583121in}}% +\pgfpathlineto{\pgfqpoint{1.453404in}{1.625960in}}% +\pgfpathlineto{\pgfqpoint{1.496825in}{1.664840in}}% +\pgfpathlineto{\pgfqpoint{1.540245in}{1.699871in}}% +\pgfpathlineto{\pgfqpoint{1.583666in}{1.731168in}}% +\pgfpathlineto{\pgfqpoint{1.627086in}{1.758841in}}% +\pgfpathlineto{\pgfqpoint{1.670507in}{1.783003in}}% +\pgfpathlineto{\pgfqpoint{1.713927in}{1.803767in}}% +\pgfpathlineto{\pgfqpoint{1.757348in}{1.821245in}}% +\pgfpathlineto{\pgfqpoint{1.800768in}{1.835549in}}% +\pgfpathlineto{\pgfqpoint{1.844189in}{1.846792in}}% +\pgfpathlineto{\pgfqpoint{1.887609in}{1.855086in}}% +\pgfpathlineto{\pgfqpoint{1.935372in}{1.860937in}}% +\pgfpathlineto{\pgfqpoint{1.983135in}{1.863505in}}% +\pgfpathlineto{\pgfqpoint{2.030897in}{1.862940in}}% +\pgfpathlineto{\pgfqpoint{2.078660in}{1.859391in}}% +\pgfpathlineto{\pgfqpoint{2.130764in}{1.852293in}}% +\pgfpathlineto{\pgfqpoint{2.182869in}{1.842015in}}% +\pgfpathlineto{\pgfqpoint{2.239316in}{1.827518in}}% +\pgfpathlineto{\pgfqpoint{2.295762in}{1.809766in}}% +\pgfpathlineto{\pgfqpoint{2.356551in}{1.787290in}}% +\pgfpathlineto{\pgfqpoint{2.421682in}{1.759685in}}% +\pgfpathlineto{\pgfqpoint{2.491154in}{1.726641in}}% +\pgfpathlineto{\pgfqpoint{2.564969in}{1.687966in}}% +\pgfpathlineto{\pgfqpoint{2.647468in}{1.641059in}}% +\pgfpathlineto{\pgfqpoint{2.738651in}{1.585589in}}% +\pgfpathlineto{\pgfqpoint{2.851545in}{1.513148in}}% +\pgfpathlineto{\pgfqpoint{3.064305in}{1.371911in}}% +\pgfpathlineto{\pgfqpoint{3.207593in}{1.278793in}}% +\pgfpathlineto{\pgfqpoint{3.307460in}{1.217378in}}% +\pgfpathlineto{\pgfqpoint{3.394301in}{1.167524in}}% +\pgfpathlineto{\pgfqpoint{3.472458in}{1.126261in}}% +\pgfpathlineto{\pgfqpoint{3.541931in}{1.093000in}}% +\pgfpathlineto{\pgfqpoint{3.607061in}{1.065165in}}% +\pgfpathlineto{\pgfqpoint{3.667850in}{1.042451in}}% +\pgfpathlineto{\pgfqpoint{3.724297in}{1.024458in}}% +\pgfpathlineto{\pgfqpoint{3.780743in}{1.009703in}}% +\pgfpathlineto{\pgfqpoint{3.832848in}{0.999169in}}% +\pgfpathlineto{\pgfqpoint{3.884953in}{0.991798in}}% +\pgfpathlineto{\pgfqpoint{3.932715in}{0.987985in}}% +\pgfpathlineto{\pgfqpoint{3.980478in}{0.987142in}}% +\pgfpathlineto{\pgfqpoint{4.028240in}{0.989420in}}% +\pgfpathlineto{\pgfqpoint{4.076003in}{0.994966in}}% +\pgfpathlineto{\pgfqpoint{4.119423in}{1.002971in}}% +\pgfpathlineto{\pgfqpoint{4.162844in}{1.013914in}}% +\pgfpathlineto{\pgfqpoint{4.206264in}{1.027907in}}% +\pgfpathlineto{\pgfqpoint{4.249685in}{1.045063in}}% +\pgfpathlineto{\pgfqpoint{4.293105in}{1.065493in}}% +\pgfpathlineto{\pgfqpoint{4.336526in}{1.089310in}}% +\pgfpathlineto{\pgfqpoint{4.379946in}{1.116627in}}% +\pgfpathlineto{\pgfqpoint{4.423367in}{1.147556in}}% +\pgfpathlineto{\pgfqpoint{4.466787in}{1.182209in}}% +\pgfpathlineto{\pgfqpoint{4.510208in}{1.220699in}}% +\pgfpathlineto{\pgfqpoint{4.553628in}{1.263138in}}% +\pgfpathlineto{\pgfqpoint{4.597049in}{1.309638in}}% +\pgfpathlineto{\pgfqpoint{4.644812in}{1.365612in}}% +\pgfpathlineto{\pgfqpoint{4.692574in}{1.426786in}}% +\pgfpathlineto{\pgfqpoint{4.740337in}{1.493310in}}% +\pgfpathlineto{\pgfqpoint{4.788099in}{1.565332in}}% +\pgfpathlineto{\pgfqpoint{4.835862in}{1.643002in}}% +\pgfpathlineto{\pgfqpoint{4.883624in}{1.726469in}}% +\pgfpathlineto{\pgfqpoint{4.931387in}{1.815884in}}% +\pgfpathlineto{\pgfqpoint{4.983491in}{1.920387in}}% +\pgfpathlineto{\pgfqpoint{5.035596in}{2.032338in}}% +\pgfpathlineto{\pgfqpoint{5.087701in}{2.151934in}}% +\pgfpathlineto{\pgfqpoint{5.139805in}{2.279368in}}% +\pgfpathlineto{\pgfqpoint{5.152831in}{2.312474in}}% +\pgfpathlineto{\pgfqpoint{5.152831in}{2.312474in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{4.732046in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.963285in}{2.315844in}}% +\pgfpathlineto{\pgfqpoint{0.988805in}{2.065008in}}% +\pgfpathlineto{\pgfqpoint{1.014857in}{1.843281in}}% +\pgfpathlineto{\pgfqpoint{1.036568in}{1.682977in}}% +\pgfpathlineto{\pgfqpoint{1.058278in}{1.543280in}}% +\pgfpathlineto{\pgfqpoint{1.079988in}{1.422723in}}% +\pgfpathlineto{\pgfqpoint{1.101698in}{1.319903in}}% +\pgfpathlineto{\pgfqpoint{1.123409in}{1.233476in}}% +\pgfpathlineto{\pgfqpoint{1.140777in}{1.175276in}}% +\pgfpathlineto{\pgfqpoint{1.158145in}{1.126117in}}% +\pgfpathlineto{\pgfqpoint{1.175513in}{1.085395in}}% +\pgfpathlineto{\pgfqpoint{1.192881in}{1.052526in}}% +\pgfpathlineto{\pgfqpoint{1.210250in}{1.026952in}}% +\pgfpathlineto{\pgfqpoint{1.223276in}{1.012233in}}% +\pgfpathlineto{\pgfqpoint{1.236302in}{1.001095in}}% +\pgfpathlineto{\pgfqpoint{1.249328in}{0.993325in}}% +\pgfpathlineto{\pgfqpoint{1.262354in}{0.988718in}}% +\pgfpathlineto{\pgfqpoint{1.275380in}{0.987075in}}% +\pgfpathlineto{\pgfqpoint{1.288407in}{0.988202in}}% +\pgfpathlineto{\pgfqpoint{1.301433in}{0.991914in}}% +\pgfpathlineto{\pgfqpoint{1.318801in}{1.000572in}}% +\pgfpathlineto{\pgfqpoint{1.336169in}{1.013093in}}% +\pgfpathlineto{\pgfqpoint{1.353537in}{1.029086in}}% +\pgfpathlineto{\pgfqpoint{1.375248in}{1.053389in}}% +\pgfpathlineto{\pgfqpoint{1.401300in}{1.087971in}}% +\pgfpathlineto{\pgfqpoint{1.431694in}{1.134386in}}% +\pgfpathlineto{\pgfqpoint{1.466431in}{1.193454in}}% +\pgfpathlineto{\pgfqpoint{1.514193in}{1.281335in}}% +\pgfpathlineto{\pgfqpoint{1.648797in}{1.533319in}}% +\pgfpathlineto{\pgfqpoint{1.692217in}{1.606504in}}% +\pgfpathlineto{\pgfqpoint{1.731296in}{1.666194in}}% +\pgfpathlineto{\pgfqpoint{1.766032in}{1.713499in}}% +\pgfpathlineto{\pgfqpoint{1.796426in}{1.750004in}}% +\pgfpathlineto{\pgfqpoint{1.826821in}{1.781659in}}% +\pgfpathlineto{\pgfqpoint{1.852873in}{1.804782in}}% +\pgfpathlineto{\pgfqpoint{1.878925in}{1.824113in}}% +\pgfpathlineto{\pgfqpoint{1.904978in}{1.839604in}}% +\pgfpathlineto{\pgfqpoint{1.931030in}{1.851242in}}% +\pgfpathlineto{\pgfqpoint{1.957082in}{1.859041in}}% +\pgfpathlineto{\pgfqpoint{1.983135in}{1.863047in}}% +\pgfpathlineto{\pgfqpoint{2.009187in}{1.863329in}}% +\pgfpathlineto{\pgfqpoint{2.035239in}{1.859984in}}% +\pgfpathlineto{\pgfqpoint{2.061291in}{1.853128in}}% +\pgfpathlineto{\pgfqpoint{2.087344in}{1.842898in}}% +\pgfpathlineto{\pgfqpoint{2.113396in}{1.829452in}}% +\pgfpathlineto{\pgfqpoint{2.143790in}{1.809929in}}% +\pgfpathlineto{\pgfqpoint{2.174185in}{1.786560in}}% +\pgfpathlineto{\pgfqpoint{2.208921in}{1.755558in}}% +\pgfpathlineto{\pgfqpoint{2.243658in}{1.720467in}}% +\pgfpathlineto{\pgfqpoint{2.282736in}{1.676770in}}% +\pgfpathlineto{\pgfqpoint{2.330499in}{1.618420in}}% +\pgfpathlineto{\pgfqpoint{2.386945in}{1.544378in}}% +\pgfpathlineto{\pgfqpoint{2.491154in}{1.401257in}}% +\pgfpathlineto{\pgfqpoint{2.573653in}{1.290423in}}% +\pgfpathlineto{\pgfqpoint{2.630100in}{1.219842in}}% +\pgfpathlineto{\pgfqpoint{2.677863in}{1.165204in}}% +\pgfpathlineto{\pgfqpoint{2.716941in}{1.124786in}}% +\pgfpathlineto{\pgfqpoint{2.756020in}{1.088796in}}% +\pgfpathlineto{\pgfqpoint{2.790756in}{1.060903in}}% +\pgfpathlineto{\pgfqpoint{2.825492in}{1.037164in}}% +\pgfpathlineto{\pgfqpoint{2.855887in}{1.019988in}}% +\pgfpathlineto{\pgfqpoint{2.886281in}{1.006308in}}% +\pgfpathlineto{\pgfqpoint{2.916675in}{0.996229in}}% +\pgfpathlineto{\pgfqpoint{2.947070in}{0.989827in}}% +\pgfpathlineto{\pgfqpoint{2.973122in}{0.987304in}}% +\pgfpathlineto{\pgfqpoint{2.999174in}{0.987534in}}% +\pgfpathlineto{\pgfqpoint{3.025227in}{0.990514in}}% +\pgfpathlineto{\pgfqpoint{3.051279in}{0.996229in}}% +\pgfpathlineto{\pgfqpoint{3.081673in}{1.006308in}}% +\pgfpathlineto{\pgfqpoint{3.112068in}{1.019988in}}% +\pgfpathlineto{\pgfqpoint{3.142462in}{1.037164in}}% +\pgfpathlineto{\pgfqpoint{3.172856in}{1.057704in}}% +\pgfpathlineto{\pgfqpoint{3.207593in}{1.085092in}}% +\pgfpathlineto{\pgfqpoint{3.242329in}{1.116388in}}% +\pgfpathlineto{\pgfqpoint{3.281408in}{1.155866in}}% +\pgfpathlineto{\pgfqpoint{3.324828in}{1.204423in}}% +\pgfpathlineto{\pgfqpoint{3.372591in}{1.262618in}}% +\pgfpathlineto{\pgfqpoint{3.433379in}{1.342111in}}% +\pgfpathlineto{\pgfqpoint{3.533247in}{1.479174in}}% +\pgfpathlineto{\pgfqpoint{3.615746in}{1.590473in}}% +\pgfpathlineto{\pgfqpoint{3.667850in}{1.656113in}}% +\pgfpathlineto{\pgfqpoint{3.711271in}{1.706362in}}% +\pgfpathlineto{\pgfqpoint{3.750349in}{1.747148in}}% +\pgfpathlineto{\pgfqpoint{3.785086in}{1.779222in}}% +\pgfpathlineto{\pgfqpoint{3.815480in}{1.803631in}}% +\pgfpathlineto{\pgfqpoint{3.845874in}{1.824284in}}% +\pgfpathlineto{\pgfqpoint{3.876269in}{1.840876in}}% +\pgfpathlineto{\pgfqpoint{3.902321in}{1.851653in}}% +\pgfpathlineto{\pgfqpoint{3.928373in}{1.859081in}}% +\pgfpathlineto{\pgfqpoint{3.954425in}{1.863021in}}% +\pgfpathlineto{\pgfqpoint{3.980478in}{1.863350in}}% +\pgfpathlineto{\pgfqpoint{4.002188in}{1.860795in}}% +\pgfpathlineto{\pgfqpoint{4.023898in}{1.855619in}}% +\pgfpathlineto{\pgfqpoint{4.049951in}{1.845904in}}% +\pgfpathlineto{\pgfqpoint{4.076003in}{1.832340in}}% +\pgfpathlineto{\pgfqpoint{4.102055in}{1.814925in}}% +\pgfpathlineto{\pgfqpoint{4.128108in}{1.793690in}}% +\pgfpathlineto{\pgfqpoint{4.154160in}{1.768700in}}% +\pgfpathlineto{\pgfqpoint{4.184554in}{1.734938in}}% +\pgfpathlineto{\pgfqpoint{4.214949in}{1.696434in}}% +\pgfpathlineto{\pgfqpoint{4.249685in}{1.647018in}}% +\pgfpathlineto{\pgfqpoint{4.288763in}{1.585242in}}% +\pgfpathlineto{\pgfqpoint{4.332184in}{1.510192in}}% +\pgfpathlineto{\pgfqpoint{4.388631in}{1.405562in}}% +\pgfpathlineto{\pgfqpoint{4.505866in}{1.185791in}}% +\pgfpathlineto{\pgfqpoint{4.544944in}{1.120547in}}% +\pgfpathlineto{\pgfqpoint{4.575339in}{1.075851in}}% +\pgfpathlineto{\pgfqpoint{4.601391in}{1.043132in}}% +\pgfpathlineto{\pgfqpoint{4.623101in}{1.020680in}}% +\pgfpathlineto{\pgfqpoint{4.640469in}{1.006375in}}% +\pgfpathlineto{\pgfqpoint{4.657838in}{0.995735in}}% +\pgfpathlineto{\pgfqpoint{4.675206in}{0.989161in}}% +\pgfpathlineto{\pgfqpoint{4.688232in}{0.987152in}}% +\pgfpathlineto{\pgfqpoint{4.701258in}{0.987850in}}% +\pgfpathlineto{\pgfqpoint{4.714284in}{0.991448in}}% +\pgfpathlineto{\pgfqpoint{4.727310in}{0.998141in}}% +\pgfpathlineto{\pgfqpoint{4.740337in}{1.008133in}}% +\pgfpathlineto{\pgfqpoint{4.753363in}{1.021634in}}% +\pgfpathlineto{\pgfqpoint{4.766389in}{1.038861in}}% +\pgfpathlineto{\pgfqpoint{4.783757in}{1.068014in}}% +\pgfpathlineto{\pgfqpoint{4.801125in}{1.104738in}}% +\pgfpathlineto{\pgfqpoint{4.818494in}{1.149605in}}% +\pgfpathlineto{\pgfqpoint{4.835862in}{1.203207in}}% +\pgfpathlineto{\pgfqpoint{4.853230in}{1.266163in}}% +\pgfpathlineto{\pgfqpoint{4.870598in}{1.339113in}}% +\pgfpathlineto{\pgfqpoint{4.892308in}{1.445372in}}% +\pgfpathlineto{\pgfqpoint{4.914019in}{1.569642in}}% +\pgfpathlineto{\pgfqpoint{4.935729in}{1.713341in}}% +\pgfpathlineto{\pgfqpoint{4.957439in}{1.877948in}}% +\pgfpathlineto{\pgfqpoint{4.979149in}{2.065008in}}% +\pgfpathlineto{\pgfqpoint{5.004669in}{2.315844in}}% +\pgfpathlineto{\pgfqpoint{5.004669in}{2.315844in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{4.732046in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.997762in}{0.534880in}}% +\pgfpathlineto{\pgfqpoint{1.010515in}{0.938420in}}% +\pgfpathlineto{\pgfqpoint{1.023541in}{1.256633in}}% +\pgfpathlineto{\pgfqpoint{1.036568in}{1.493946in}}% +\pgfpathlineto{\pgfqpoint{1.049594in}{1.662731in}}% +\pgfpathlineto{\pgfqpoint{1.058278in}{1.742696in}}% +\pgfpathlineto{\pgfqpoint{1.066962in}{1.800120in}}% +\pgfpathlineto{\pgfqpoint{1.075646in}{1.837754in}}% +\pgfpathlineto{\pgfqpoint{1.084330in}{1.858134in}}% +\pgfpathlineto{\pgfqpoint{1.088672in}{1.862591in}}% +\pgfpathlineto{\pgfqpoint{1.093014in}{1.863596in}}% +\pgfpathlineto{\pgfqpoint{1.097356in}{1.861410in}}% +\pgfpathlineto{\pgfqpoint{1.101698in}{1.856284in}}% +\pgfpathlineto{\pgfqpoint{1.110382in}{1.838165in}}% +\pgfpathlineto{\pgfqpoint{1.119067in}{1.811034in}}% +\pgfpathlineto{\pgfqpoint{1.132093in}{1.756980in}}% +\pgfpathlineto{\pgfqpoint{1.149461in}{1.667415in}}% +\pgfpathlineto{\pgfqpoint{1.179855in}{1.488530in}}% +\pgfpathlineto{\pgfqpoint{1.214592in}{1.289910in}}% +\pgfpathlineto{\pgfqpoint{1.236302in}{1.184400in}}% +\pgfpathlineto{\pgfqpoint{1.253670in}{1.114719in}}% +\pgfpathlineto{\pgfqpoint{1.266696in}{1.072074in}}% +\pgfpathlineto{\pgfqpoint{1.279722in}{1.038054in}}% +\pgfpathlineto{\pgfqpoint{1.292749in}{1.012779in}}% +\pgfpathlineto{\pgfqpoint{1.301433in}{1.000762in}}% +\pgfpathlineto{\pgfqpoint{1.310117in}{0.992549in}}% +\pgfpathlineto{\pgfqpoint{1.318801in}{0.988057in}}% +\pgfpathlineto{\pgfqpoint{1.327485in}{0.987177in}}% +\pgfpathlineto{\pgfqpoint{1.336169in}{0.989782in}}% +\pgfpathlineto{\pgfqpoint{1.344853in}{0.995723in}}% +\pgfpathlineto{\pgfqpoint{1.353537in}{1.004838in}}% +\pgfpathlineto{\pgfqpoint{1.366563in}{1.024074in}}% +\pgfpathlineto{\pgfqpoint{1.379590in}{1.049416in}}% +\pgfpathlineto{\pgfqpoint{1.396958in}{1.091524in}}% +\pgfpathlineto{\pgfqpoint{1.418668in}{1.155158in}}% +\pgfpathlineto{\pgfqpoint{1.444720in}{1.243239in}}% +\pgfpathlineto{\pgfqpoint{1.488141in}{1.403898in}}% +\pgfpathlineto{\pgfqpoint{1.531561in}{1.561511in}}% +\pgfpathlineto{\pgfqpoint{1.557614in}{1.646386in}}% +\pgfpathlineto{\pgfqpoint{1.579324in}{1.708574in}}% +\pgfpathlineto{\pgfqpoint{1.601034in}{1.761436in}}% +\pgfpathlineto{\pgfqpoint{1.618402in}{1.796276in}}% +\pgfpathlineto{\pgfqpoint{1.635771in}{1.824067in}}% +\pgfpathlineto{\pgfqpoint{1.648797in}{1.840132in}}% +\pgfpathlineto{\pgfqpoint{1.661823in}{1.852039in}}% +\pgfpathlineto{\pgfqpoint{1.674849in}{1.859776in}}% +\pgfpathlineto{\pgfqpoint{1.687875in}{1.863368in}}% +\pgfpathlineto{\pgfqpoint{1.700901in}{1.862878in}}% +\pgfpathlineto{\pgfqpoint{1.713927in}{1.858401in}}% +\pgfpathlineto{\pgfqpoint{1.726954in}{1.850065in}}% +\pgfpathlineto{\pgfqpoint{1.739980in}{1.838024in}}% +\pgfpathlineto{\pgfqpoint{1.757348in}{1.816524in}}% +\pgfpathlineto{\pgfqpoint{1.774716in}{1.789256in}}% +\pgfpathlineto{\pgfqpoint{1.796426in}{1.747911in}}% +\pgfpathlineto{\pgfqpoint{1.818137in}{1.699616in}}% +\pgfpathlineto{\pgfqpoint{1.844189in}{1.634299in}}% +\pgfpathlineto{\pgfqpoint{1.878925in}{1.538536in}}% +\pgfpathlineto{\pgfqpoint{1.983135in}{1.243956in}}% +\pgfpathlineto{\pgfqpoint{2.013529in}{1.169800in}}% +\pgfpathlineto{\pgfqpoint{2.039581in}{1.114392in}}% +\pgfpathlineto{\pgfqpoint{2.061291in}{1.074988in}}% +\pgfpathlineto{\pgfqpoint{2.083002in}{1.042391in}}% +\pgfpathlineto{\pgfqpoint{2.100370in}{1.021533in}}% +\pgfpathlineto{\pgfqpoint{2.117738in}{1.005506in}}% +\pgfpathlineto{\pgfqpoint{2.135106in}{0.994424in}}% +\pgfpathlineto{\pgfqpoint{2.148132in}{0.989394in}}% +\pgfpathlineto{\pgfqpoint{2.161159in}{0.987181in}}% +\pgfpathlineto{\pgfqpoint{2.174185in}{0.987773in}}% +\pgfpathlineto{\pgfqpoint{2.187211in}{0.991136in}}% +\pgfpathlineto{\pgfqpoint{2.200237in}{0.997224in}}% +\pgfpathlineto{\pgfqpoint{2.217605in}{1.009467in}}% +\pgfpathlineto{\pgfqpoint{2.234974in}{1.026248in}}% +\pgfpathlineto{\pgfqpoint{2.252342in}{1.047331in}}% +\pgfpathlineto{\pgfqpoint{2.274052in}{1.079308in}}% +\pgfpathlineto{\pgfqpoint{2.295762in}{1.116953in}}% +\pgfpathlineto{\pgfqpoint{2.321815in}{1.168623in}}% +\pgfpathlineto{\pgfqpoint{2.352209in}{1.236174in}}% +\pgfpathlineto{\pgfqpoint{2.391287in}{1.331016in}}% +\pgfpathlineto{\pgfqpoint{2.504181in}{1.611124in}}% +\pgfpathlineto{\pgfqpoint{2.534575in}{1.677221in}}% +\pgfpathlineto{\pgfqpoint{2.560627in}{1.727693in}}% +\pgfpathlineto{\pgfqpoint{2.586680in}{1.771344in}}% +\pgfpathlineto{\pgfqpoint{2.608390in}{1.801859in}}% +\pgfpathlineto{\pgfqpoint{2.630100in}{1.826589in}}% +\pgfpathlineto{\pgfqpoint{2.647468in}{1.841982in}}% +\pgfpathlineto{\pgfqpoint{2.664837in}{1.853327in}}% +\pgfpathlineto{\pgfqpoint{2.682205in}{1.860536in}}% +\pgfpathlineto{\pgfqpoint{2.699573in}{1.863558in}}% +\pgfpathlineto{\pgfqpoint{2.712599in}{1.863067in}}% +\pgfpathlineto{\pgfqpoint{2.725625in}{1.860222in}}% +\pgfpathlineto{\pgfqpoint{2.742993in}{1.852807in}}% +\pgfpathlineto{\pgfqpoint{2.760362in}{1.841331in}}% +\pgfpathlineto{\pgfqpoint{2.777730in}{1.825916in}}% +\pgfpathlineto{\pgfqpoint{2.795098in}{1.806716in}}% +\pgfpathlineto{\pgfqpoint{2.816808in}{1.777690in}}% +\pgfpathlineto{\pgfqpoint{2.838519in}{1.743493in}}% +\pgfpathlineto{\pgfqpoint{2.864571in}{1.696359in}}% +\pgfpathlineto{\pgfqpoint{2.894965in}{1.634247in}}% +\pgfpathlineto{\pgfqpoint{2.929702in}{1.556076in}}% +\pgfpathlineto{\pgfqpoint{2.986148in}{1.420053in}}% +\pgfpathlineto{\pgfqpoint{3.051279in}{1.264602in}}% +\pgfpathlineto{\pgfqpoint{3.086015in}{1.189019in}}% +\pgfpathlineto{\pgfqpoint{3.116410in}{1.130020in}}% +\pgfpathlineto{\pgfqpoint{3.142462in}{1.086119in}}% +\pgfpathlineto{\pgfqpoint{3.164172in}{1.054967in}}% +\pgfpathlineto{\pgfqpoint{3.185883in}{1.029260in}}% +\pgfpathlineto{\pgfqpoint{3.203251in}{1.012882in}}% +\pgfpathlineto{\pgfqpoint{3.220619in}{1.000409in}}% +\pgfpathlineto{\pgfqpoint{3.237987in}{0.991969in}}% +\pgfpathlineto{\pgfqpoint{3.255355in}{0.987657in}}% +\pgfpathlineto{\pgfqpoint{3.268382in}{0.987166in}}% +\pgfpathlineto{\pgfqpoint{3.281408in}{0.989038in}}% +\pgfpathlineto{\pgfqpoint{3.298776in}{0.995204in}}% +\pgfpathlineto{\pgfqpoint{3.316144in}{1.005522in}}% +\pgfpathlineto{\pgfqpoint{3.333512in}{1.019913in}}% +\pgfpathlineto{\pgfqpoint{3.350880in}{1.038258in}}% +\pgfpathlineto{\pgfqpoint{3.372591in}{1.066505in}}% +\pgfpathlineto{\pgfqpoint{3.394301in}{1.100293in}}% +\pgfpathlineto{\pgfqpoint{3.420353in}{1.147476in}}% +\pgfpathlineto{\pgfqpoint{3.446406in}{1.200975in}}% +\pgfpathlineto{\pgfqpoint{3.481142in}{1.280166in}}% +\pgfpathlineto{\pgfqpoint{3.528905in}{1.398487in}}% +\pgfpathlineto{\pgfqpoint{3.611404in}{1.604382in}}% +\pgfpathlineto{\pgfqpoint{3.646140in}{1.682101in}}% +\pgfpathlineto{\pgfqpoint{3.672192in}{1.733770in}}% +\pgfpathlineto{\pgfqpoint{3.698245in}{1.778285in}}% +\pgfpathlineto{\pgfqpoint{3.719955in}{1.809052in}}% +\pgfpathlineto{\pgfqpoint{3.737323in}{1.829084in}}% +\pgfpathlineto{\pgfqpoint{3.754691in}{1.844751in}}% +\pgfpathlineto{\pgfqpoint{3.772059in}{1.855828in}}% +\pgfpathlineto{\pgfqpoint{3.785086in}{1.861014in}}% +\pgfpathlineto{\pgfqpoint{3.798112in}{1.863458in}}% +\pgfpathlineto{\pgfqpoint{3.811138in}{1.863117in}}% +\pgfpathlineto{\pgfqpoint{3.824164in}{1.859967in}}% +\pgfpathlineto{\pgfqpoint{3.837190in}{1.853997in}}% +\pgfpathlineto{\pgfqpoint{3.850216in}{1.845218in}}% +\pgfpathlineto{\pgfqpoint{3.867584in}{1.829191in}}% +\pgfpathlineto{\pgfqpoint{3.884953in}{1.808333in}}% +\pgfpathlineto{\pgfqpoint{3.902321in}{1.782817in}}% +\pgfpathlineto{\pgfqpoint{3.924031in}{1.744730in}}% +\pgfpathlineto{\pgfqpoint{3.945741in}{1.700309in}}% +\pgfpathlineto{\pgfqpoint{3.971794in}{1.639665in}}% +\pgfpathlineto{\pgfqpoint{4.002188in}{1.560701in}}% +\pgfpathlineto{\pgfqpoint{4.045609in}{1.437971in}}% +\pgfpathlineto{\pgfqpoint{4.119423in}{1.227942in}}% +\pgfpathlineto{\pgfqpoint{4.149818in}{1.151107in}}% +\pgfpathlineto{\pgfqpoint{4.175870in}{1.093948in}}% +\pgfpathlineto{\pgfqpoint{4.197580in}{1.054139in}}% +\pgfpathlineto{\pgfqpoint{4.214949in}{1.028264in}}% +\pgfpathlineto{\pgfqpoint{4.232317in}{1.008285in}}% +\pgfpathlineto{\pgfqpoint{4.245343in}{0.997460in}}% +\pgfpathlineto{\pgfqpoint{4.258369in}{0.990394in}}% +\pgfpathlineto{\pgfqpoint{4.271395in}{0.987234in}}% +\pgfpathlineto{\pgfqpoint{4.284421in}{0.988096in}}% +\pgfpathlineto{\pgfqpoint{4.297447in}{0.993064in}}% +\pgfpathlineto{\pgfqpoint{4.310474in}{1.002190in}}% +\pgfpathlineto{\pgfqpoint{4.323500in}{1.015487in}}% +\pgfpathlineto{\pgfqpoint{4.336526in}{1.032928in}}% +\pgfpathlineto{\pgfqpoint{4.353894in}{1.062510in}}% +\pgfpathlineto{\pgfqpoint{4.371262in}{1.099057in}}% +\pgfpathlineto{\pgfqpoint{4.392973in}{1.153882in}}% +\pgfpathlineto{\pgfqpoint{4.414683in}{1.217773in}}% +\pgfpathlineto{\pgfqpoint{4.440735in}{1.304246in}}% +\pgfpathlineto{\pgfqpoint{4.479814in}{1.446826in}}% +\pgfpathlineto{\pgfqpoint{4.536260in}{1.652803in}}% +\pgfpathlineto{\pgfqpoint{4.562313in}{1.735052in}}% +\pgfpathlineto{\pgfqpoint{4.579681in}{1.781356in}}% +\pgfpathlineto{\pgfqpoint{4.597049in}{1.818848in}}% +\pgfpathlineto{\pgfqpoint{4.610075in}{1.840192in}}% +\pgfpathlineto{\pgfqpoint{4.623101in}{1.855001in}}% +\pgfpathlineto{\pgfqpoint{4.631785in}{1.860942in}}% +\pgfpathlineto{\pgfqpoint{4.640469in}{1.863546in}}% +\pgfpathlineto{\pgfqpoint{4.649154in}{1.862667in}}% +\pgfpathlineto{\pgfqpoint{4.657838in}{1.858175in}}% +\pgfpathlineto{\pgfqpoint{4.666522in}{1.849962in}}% +\pgfpathlineto{\pgfqpoint{4.675206in}{1.837945in}}% +\pgfpathlineto{\pgfqpoint{4.688232in}{1.812669in}}% +\pgfpathlineto{\pgfqpoint{4.701258in}{1.778650in}}% +\pgfpathlineto{\pgfqpoint{4.714284in}{1.736005in}}% +\pgfpathlineto{\pgfqpoint{4.731653in}{1.666324in}}% +\pgfpathlineto{\pgfqpoint{4.749021in}{1.583371in}}% +\pgfpathlineto{\pgfqpoint{4.770731in}{1.464716in}}% +\pgfpathlineto{\pgfqpoint{4.835862in}{1.093743in}}% +\pgfpathlineto{\pgfqpoint{4.848888in}{1.039690in}}% +\pgfpathlineto{\pgfqpoint{4.857572in}{1.012559in}}% +\pgfpathlineto{\pgfqpoint{4.866256in}{0.994439in}}% +\pgfpathlineto{\pgfqpoint{4.870598in}{0.989314in}}% +\pgfpathlineto{\pgfqpoint{4.874940in}{0.987128in}}% +\pgfpathlineto{\pgfqpoint{4.879282in}{0.988132in}}% +\pgfpathlineto{\pgfqpoint{4.883624in}{0.992590in}}% +\pgfpathlineto{\pgfqpoint{4.887966in}{1.000774in}}% +\pgfpathlineto{\pgfqpoint{4.896650in}{1.029477in}}% +\pgfpathlineto{\pgfqpoint{4.905335in}{1.076675in}}% +\pgfpathlineto{\pgfqpoint{4.914019in}{1.145012in}}% +\pgfpathlineto{\pgfqpoint{4.922703in}{1.237348in}}% +\pgfpathlineto{\pgfqpoint{4.931387in}{1.356777in}}% +\pgfpathlineto{\pgfqpoint{4.944413in}{1.594091in}}% +\pgfpathlineto{\pgfqpoint{4.957439in}{1.912304in}}% +\pgfpathlineto{\pgfqpoint{4.970193in}{2.315844in}}% +\pgfpathlineto{\pgfqpoint{4.970193in}{2.315844in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.617954in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.617954in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{5.350000in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{5.350000in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.617954in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{5.350000in}{0.548769in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.617954in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{5.350000in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetfillopacity{0.800000}% +\pgfsetlinewidth{1.003750pt}% +\definecolor{currentstroke}{rgb}{0.800000,0.800000,0.800000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.800000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.715177in}{1.609825in}}% +\pgfpathlineto{\pgfqpoint{1.610430in}{1.609825in}}% +\pgfpathquadraticcurveto{\pgfqpoint{1.638207in}{1.609825in}}{\pgfqpoint{1.638207in}{1.637603in}}% +\pgfpathlineto{\pgfqpoint{1.638207in}{2.204733in}}% +\pgfpathquadraticcurveto{\pgfqpoint{1.638207in}{2.232510in}}{\pgfqpoint{1.610430in}{2.232510in}}% +\pgfpathlineto{\pgfqpoint{0.715177in}{2.232510in}}% +\pgfpathquadraticcurveto{\pgfqpoint{0.687399in}{2.232510in}}{\pgfqpoint{0.687399in}{2.204733in}}% +\pgfpathlineto{\pgfqpoint{0.687399in}{1.637603in}}% +\pgfpathquadraticcurveto{\pgfqpoint{0.687399in}{1.609825in}}{\pgfqpoint{0.715177in}{1.609825in}}% +\pgfpathlineto{\pgfqpoint{0.715177in}{1.609825in}}% +\pgfpathclose% +\pgfusepath{stroke,fill}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.742954in}{2.128344in}}% +\pgfpathlineto{\pgfqpoint{0.881843in}{2.128344in}}% +\pgfpathlineto{\pgfqpoint{1.020732in}{2.128344in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=1.131843in,y=2.079733in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle N=3\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.742954in}{1.934671in}}% +\pgfpathlineto{\pgfqpoint{0.881843in}{1.934671in}}% +\pgfpathlineto{\pgfqpoint{1.020732in}{1.934671in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=1.131843in,y=1.886060in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle N=6\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.505625pt}% +\definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.742954in}{1.740998in}}% +\pgfpathlineto{\pgfqpoint{0.881843in}{1.740998in}}% +\pgfpathlineto{\pgfqpoint{1.020732in}{1.740998in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=1.131843in,y=1.692387in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle N=11\)}% +\end{pgfscope}% +\end{pgfpicture}% +\makeatother% +\endgroup% diff --git a/buch/papers/ellfilter/python/F_N_elliptic.pgf b/buch/papers/ellfilter/python/F_N_elliptic.pgf new file mode 100644 index 0000000..03084c6 --- /dev/null +++ b/buch/papers/ellfilter/python/F_N_elliptic.pgf @@ -0,0 +1,847 @@ +%% Creator: Matplotlib, PGF backend +%% +%% To include the figure in your LaTeX document, write +%% \input{.pgf} +%% +%% Make sure the required packages are loaded in your preamble +%% \usepackage{pgf} +%% +%% Also ensure that all the required font packages are loaded; for instance, +%% the lmodern package is sometimes necessary when using math font. +%% \usepackage{lmodern} +%% +%% Figures using additional raster images can only be included by \input if +%% they are in the same directory as the main LaTeX file. For loading figures +%% from other directories you can use the `import` package +%% \usepackage{import} +%% +%% and then include the figures with +%% \import{}{.pgf} +%% +%% Matplotlib used the following preamble +%% +\begingroup% +\makeatletter% +\begin{pgfpicture}% +\pgfpathrectangle{\pgfpointorigin}{\pgfqpoint{4.000000in}{2.500000in}}% +\pgfusepath{use as bounding box, clip}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{1.000000,1.000000,1.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.000000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{4.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{4.000000in}{2.500000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{2.500000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathclose% +\pgfusepath{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.000000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.733531in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{0.733531in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{0.733531in}{0.548769in}}% +\pgfpathclose% +\pgfusepath{fill}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.733531in}{0.548769in}}{\pgfqpoint{3.028066in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{0.000000,0.501961,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetfillopacity{0.200000}% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.200000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.733531in}{-174.068564in}}% +\pgfpathlineto{\pgfqpoint{2.247564in}{-174.068564in}}% +\pgfpathlineto{\pgfqpoint{2.247564in}{1.250043in}}% +\pgfpathlineto{\pgfqpoint{0.733531in}{1.250043in}}% +\pgfpathlineto{\pgfqpoint{0.733531in}{-174.068564in}}% +\pgfpathclose% +\pgfusepath{fill}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.733531in}{0.548769in}}{\pgfqpoint{3.028066in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{1.000000,0.647059,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetfillopacity{0.200000}% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.200000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.247564in}{1.250043in}}% +\pgfpathlineto{\pgfqpoint{2.262704in}{1.250043in}}% +\pgfpathlineto{\pgfqpoint{2.262704in}{1.600680in}}% +\pgfpathlineto{\pgfqpoint{2.247564in}{1.600680in}}% +\pgfpathlineto{\pgfqpoint{2.247564in}{1.250043in}}% +\pgfpathclose% +\pgfusepath{fill}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.733531in}{0.548769in}}{\pgfqpoint{3.028066in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{1.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetfillopacity{0.200000}% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.200000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.262704in}{1.600680in}}% +\pgfpathlineto{\pgfqpoint{3.776737in}{1.600680in}}% +\pgfpathlineto{\pgfqpoint{3.776737in}{2.301962in}}% +\pgfpathlineto{\pgfqpoint{2.262704in}{2.301962in}}% +\pgfpathlineto{\pgfqpoint{2.262704in}{1.600680in}}% +\pgfpathclose% +\pgfusepath{fill}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.733531in}{0.548769in}}{\pgfqpoint{3.028066in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.733531in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.733531in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.733531in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.733531in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.0}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.733531in}{0.548769in}}{\pgfqpoint{3.028066in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{1.490547in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{1.490547in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{1.490547in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=1.490547in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.5}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.733531in}{0.548769in}}{\pgfqpoint{3.028066in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.247564in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{2.247564in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{2.247564in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.247564in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {1.0}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.733531in}{0.548769in}}{\pgfqpoint{3.028066in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{3.004580in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.004580in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{3.004580in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=3.004580in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {1.5}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.733531in}{0.548769in}}{\pgfqpoint{3.028066in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{3.761597in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{3.761597in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=3.761597in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {2.0}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.247564in,y=0.272534in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle w\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.733531in}{0.548769in}}{\pgfqpoint{3.028066in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.733531in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{0.548769in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.733531in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.348306in, y=0.500544in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {10^{-4}}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.733531in}{0.548769in}}{\pgfqpoint{3.028066in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.733531in}{0.899406in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{0.899406in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.733531in}{0.899406in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.348306in, y=0.851181in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {10^{-2}}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.733531in}{0.548769in}}{\pgfqpoint{3.028066in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.733531in}{1.250043in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{1.250043in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.733531in}{1.250043in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.435112in, y=1.201818in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {10^{0}}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.733531in}{0.548769in}}{\pgfqpoint{3.028066in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.733531in}{1.600680in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{1.600680in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.733531in}{1.600680in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.435112in, y=1.552455in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {10^{2}}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.733531in}{0.548769in}}{\pgfqpoint{3.028066in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.733531in}{1.951318in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{1.951318in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.733531in}{1.951318in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.435112in, y=1.903092in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {10^{4}}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.733531in}{0.548769in}}{\pgfqpoint{3.028066in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.733531in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.733531in}{2.301955in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.435112in, y=2.253730in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {10^{6}}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.292751in,y=1.425362in,,bottom,rotate=90.000000]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle F^2_N(w)\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.733531in}{0.548769in}}{\pgfqpoint{3.028066in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.003750pt}% +\definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.739446in}{0.534880in}}% +\pgfpathlineto{\pgfqpoint{0.744132in}{0.623916in}}% +\pgfpathlineto{\pgfqpoint{0.750947in}{0.699506in}}% +\pgfpathlineto{\pgfqpoint{0.759276in}{0.759013in}}% +\pgfpathlineto{\pgfqpoint{0.769120in}{0.808295in}}% +\pgfpathlineto{\pgfqpoint{0.781235in}{0.852871in}}% +\pgfpathlineto{\pgfqpoint{0.794865in}{0.891083in}}% +\pgfpathlineto{\pgfqpoint{0.810009in}{0.924604in}}% +\pgfpathlineto{\pgfqpoint{0.827425in}{0.955729in}}% +\pgfpathlineto{\pgfqpoint{0.847112in}{0.984554in}}% +\pgfpathlineto{\pgfqpoint{0.869071in}{1.011252in}}% +\pgfpathlineto{\pgfqpoint{0.894059in}{1.036721in}}% +\pgfpathlineto{\pgfqpoint{0.922075in}{1.060823in}}% +\pgfpathlineto{\pgfqpoint{0.953878in}{1.084028in}}% +\pgfpathlineto{\pgfqpoint{0.989467in}{1.106127in}}% +\pgfpathlineto{\pgfqpoint{1.029598in}{1.127375in}}% +\pgfpathlineto{\pgfqpoint{1.075031in}{1.147865in}}% +\pgfpathlineto{\pgfqpoint{1.125764in}{1.167300in}}% +\pgfpathlineto{\pgfqpoint{1.182554in}{1.185675in}}% +\pgfpathlineto{\pgfqpoint{1.244645in}{1.202480in}}% +\pgfpathlineto{\pgfqpoint{1.312036in}{1.217494in}}% +\pgfpathlineto{\pgfqpoint{1.383214in}{1.230171in}}% +\pgfpathlineto{\pgfqpoint{1.455905in}{1.239991in}}% +\pgfpathlineto{\pgfqpoint{1.527083in}{1.246540in}}% +\pgfpathlineto{\pgfqpoint{1.594474in}{1.249707in}}% +\pgfpathlineto{\pgfqpoint{1.655808in}{1.249589in}}% +\pgfpathlineto{\pgfqpoint{1.711084in}{1.246442in}}% +\pgfpathlineto{\pgfqpoint{1.758788in}{1.240733in}}% +\pgfpathlineto{\pgfqpoint{1.800434in}{1.232740in}}% +\pgfpathlineto{\pgfqpoint{1.836780in}{1.222684in}}% +\pgfpathlineto{\pgfqpoint{1.867825in}{1.211013in}}% +\pgfpathlineto{\pgfqpoint{1.895085in}{1.197575in}}% +\pgfpathlineto{\pgfqpoint{1.919315in}{1.182199in}}% +\pgfpathlineto{\pgfqpoint{1.940517in}{1.165082in}}% +\pgfpathlineto{\pgfqpoint{1.959447in}{1.145758in}}% +\pgfpathlineto{\pgfqpoint{1.976106in}{1.124277in}}% +\pgfpathlineto{\pgfqpoint{1.991250in}{1.099472in}}% +\pgfpathlineto{\pgfqpoint{2.004122in}{1.072523in}}% +\pgfpathlineto{\pgfqpoint{2.015480in}{1.041896in}}% +\pgfpathlineto{\pgfqpoint{2.026081in}{1.004016in}}% +\pgfpathlineto{\pgfqpoint{2.035168in}{0.959254in}}% +\pgfpathlineto{\pgfqpoint{2.042740in}{0.905583in}}% +\pgfpathlineto{\pgfqpoint{2.048797in}{0.840043in}}% +\pgfpathlineto{\pgfqpoint{2.053341in}{0.758643in}}% +\pgfpathlineto{\pgfqpoint{2.056369in}{0.659102in}}% +\pgfpathlineto{\pgfqpoint{2.058129in}{0.534880in}}% +\pgfpathmoveto{\pgfqpoint{2.061041in}{0.534880in}}% +\pgfpathlineto{\pgfqpoint{2.064699in}{0.731366in}}% +\pgfpathlineto{\pgfqpoint{2.069999in}{0.841854in}}% +\pgfpathlineto{\pgfqpoint{2.076814in}{0.921040in}}% +\pgfpathlineto{\pgfqpoint{2.085143in}{0.984050in}}% +\pgfpathlineto{\pgfqpoint{2.095744in}{1.040507in}}% +\pgfpathlineto{\pgfqpoint{2.107859in}{1.088435in}}% +\pgfpathlineto{\pgfqpoint{2.121489in}{1.130355in}}% +\pgfpathlineto{\pgfqpoint{2.136633in}{1.167522in}}% +\pgfpathlineto{\pgfqpoint{2.153292in}{1.200289in}}% +\pgfpathlineto{\pgfqpoint{2.169193in}{1.224889in}}% +\pgfpathlineto{\pgfqpoint{2.182823in}{1.240496in}}% +\pgfpathlineto{\pgfqpoint{2.192666in}{1.247725in}}% +\pgfpathlineto{\pgfqpoint{2.200239in}{1.250017in}}% +\pgfpathlineto{\pgfqpoint{2.206296in}{1.248902in}}% +\pgfpathlineto{\pgfqpoint{2.211597in}{1.244804in}}% +\pgfpathlineto{\pgfqpoint{2.216897in}{1.236352in}}% +\pgfpathlineto{\pgfqpoint{2.222197in}{1.220917in}}% +\pgfpathlineto{\pgfqpoint{2.226741in}{1.197982in}}% +\pgfpathlineto{\pgfqpoint{2.231284in}{1.157051in}}% +\pgfpathlineto{\pgfqpoint{2.235070in}{1.089329in}}% +\pgfpathlineto{\pgfqpoint{2.237342in}{1.003949in}}% +\pgfpathlineto{\pgfqpoint{2.238856in}{0.869518in}}% +\pgfpathlineto{\pgfqpoint{2.239613in}{0.638914in}}% +\pgfpathlineto{\pgfqpoint{2.240370in}{0.794881in}}% +\pgfpathlineto{\pgfqpoint{2.243399in}{1.100517in}}% +\pgfpathlineto{\pgfqpoint{2.248700in}{1.280424in}}% +\pgfpathlineto{\pgfqpoint{2.266873in}{1.753784in}}% +\pgfpathlineto{\pgfqpoint{2.269144in}{1.924021in}}% +\pgfpathlineto{\pgfqpoint{2.270659in}{2.202839in}}% +\pgfpathlineto{\pgfqpoint{2.272930in}{1.848446in}}% +\pgfpathlineto{\pgfqpoint{2.276716in}{1.730165in}}% +\pgfpathlineto{\pgfqpoint{2.281260in}{1.672036in}}% +\pgfpathlineto{\pgfqpoint{2.286560in}{1.637950in}}% +\pgfpathlineto{\pgfqpoint{2.292618in}{1.617444in}}% +\pgfpathlineto{\pgfqpoint{2.298675in}{1.606779in}}% +\pgfpathlineto{\pgfqpoint{2.304733in}{1.601737in}}% +\pgfpathlineto{\pgfqpoint{2.311548in}{1.600286in}}% +\pgfpathlineto{\pgfqpoint{2.319120in}{1.602150in}}% +\pgfpathlineto{\pgfqpoint{2.328206in}{1.607676in}}% +\pgfpathlineto{\pgfqpoint{2.340322in}{1.618928in}}% +\pgfpathlineto{\pgfqpoint{2.355466in}{1.637536in}}% +\pgfpathlineto{\pgfqpoint{2.372881in}{1.664058in}}% +\pgfpathlineto{\pgfqpoint{2.391054in}{1.697587in}}% +\pgfpathlineto{\pgfqpoint{2.407713in}{1.734758in}}% +\pgfpathlineto{\pgfqpoint{2.422857in}{1.776122in}}% +\pgfpathlineto{\pgfqpoint{2.435729in}{1.820082in}}% +\pgfpathlineto{\pgfqpoint{2.447088in}{1.870149in}}% +\pgfpathlineto{\pgfqpoint{2.456174in}{1.923894in}}% +\pgfpathlineto{\pgfqpoint{2.463746in}{1.987030in}}% +\pgfpathlineto{\pgfqpoint{2.469804in}{2.064340in}}% +\pgfpathlineto{\pgfqpoint{2.474347in}{2.165039in}}% +\pgfpathlineto{\pgfqpoint{2.477435in}{2.315844in}}% +\pgfpathmoveto{\pgfqpoint{2.481180in}{2.315844in}}% +\pgfpathlineto{\pgfqpoint{2.484948in}{2.149178in}}% +\pgfpathlineto{\pgfqpoint{2.490248in}{2.050240in}}% +\pgfpathlineto{\pgfqpoint{2.497063in}{1.978983in}}% +\pgfpathlineto{\pgfqpoint{2.505392in}{1.923413in}}% +\pgfpathlineto{\pgfqpoint{2.515236in}{1.878185in}}% +\pgfpathlineto{\pgfqpoint{2.526594in}{1.840393in}}% +\pgfpathlineto{\pgfqpoint{2.539467in}{1.808260in}}% +\pgfpathlineto{\pgfqpoint{2.553854in}{1.780613in}}% +\pgfpathlineto{\pgfqpoint{2.569755in}{1.756622in}}% +\pgfpathlineto{\pgfqpoint{2.587928in}{1.734871in}}% +\pgfpathlineto{\pgfqpoint{2.608372in}{1.715370in}}% +\pgfpathlineto{\pgfqpoint{2.631089in}{1.698028in}}% +\pgfpathlineto{\pgfqpoint{2.656834in}{1.682284in}}% +\pgfpathlineto{\pgfqpoint{2.686365in}{1.667895in}}% +\pgfpathlineto{\pgfqpoint{2.720439in}{1.654789in}}% +\pgfpathlineto{\pgfqpoint{2.759814in}{1.642992in}}% +\pgfpathlineto{\pgfqpoint{2.806760in}{1.632261in}}% +\pgfpathlineto{\pgfqpoint{2.862036in}{1.622901in}}% +\pgfpathlineto{\pgfqpoint{2.928670in}{1.614877in}}% +\pgfpathlineto{\pgfqpoint{3.008934in}{1.608422in}}% +\pgfpathlineto{\pgfqpoint{3.108128in}{1.603650in}}% +\pgfpathlineto{\pgfqpoint{3.233824in}{1.600841in}}% +\pgfpathlineto{\pgfqpoint{3.396624in}{1.600449in}}% +\pgfpathlineto{\pgfqpoint{3.619242in}{1.603198in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{1.606074in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{1.606074in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.733531in}{0.548769in}}{\pgfqpoint{3.028066in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetfillopacity{0.000000}% +\pgfsetlinewidth{1.003750pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% +\pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% +\pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% +\pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% +\pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% +\pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% +\pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% +\pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% +\pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.041667in}}% +\pgfpathclose% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.733531in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{2.050740in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{2.247564in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.733531in}{0.548769in}}{\pgfqpoint{3.028066in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetfillopacity{0.000000}% +\pgfsetlinewidth{1.003750pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% +\pgfpathmoveto{\pgfqpoint{-0.041667in}{-0.041667in}}% +\pgfpathlineto{\pgfqpoint{0.041667in}{0.041667in}}% +\pgfpathmoveto{\pgfqpoint{-0.041667in}{0.041667in}}% +\pgfpathlineto{\pgfqpoint{0.041667in}{-0.041667in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{2.262704in}{2.301955in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{2.482239in}{2.301955in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.733531in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.733531in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{3.761597in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.733531in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{0.548769in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.733531in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetfillopacity{0.800000}% +\pgfsetlinewidth{1.003750pt}% +\definecolor{currentstroke}{rgb}{0.800000,0.800000,0.800000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.800000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.830753in}{1.997171in}}% +\pgfpathlineto{\pgfqpoint{2.157621in}{1.997171in}}% +\pgfpathquadraticcurveto{\pgfqpoint{2.185399in}{1.997171in}}{\pgfqpoint{2.185399in}{2.024949in}}% +\pgfpathlineto{\pgfqpoint{2.185399in}{2.204733in}}% +\pgfpathquadraticcurveto{\pgfqpoint{2.185399in}{2.232510in}}{\pgfqpoint{2.157621in}{2.232510in}}% +\pgfpathlineto{\pgfqpoint{0.830753in}{2.232510in}}% +\pgfpathquadraticcurveto{\pgfqpoint{0.802975in}{2.232510in}}{\pgfqpoint{0.802975in}{2.204733in}}% +\pgfpathlineto{\pgfqpoint{0.802975in}{2.024949in}}% +\pgfpathquadraticcurveto{\pgfqpoint{0.802975in}{1.997171in}}{\pgfqpoint{0.830753in}{1.997171in}}% +\pgfpathlineto{\pgfqpoint{0.830753in}{1.997171in}}% +\pgfpathclose% +\pgfusepath{stroke,fill}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.003750pt}% +\definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.858531in}{2.128344in}}% +\pgfpathlineto{\pgfqpoint{0.997420in}{2.128344in}}% +\pgfpathlineto{\pgfqpoint{1.136309in}{2.128344in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=1.247420in,y=2.079733in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle N=5, k=0.1\)}% +\end{pgfscope}% +\end{pgfpicture}% +\makeatother% +\endgroup% diff --git a/buch/papers/ellfilter/python/chebychef.py b/buch/papers/ellfilter/python/chebychef.py index a278989..254ad4b 100644 --- a/buch/papers/ellfilter/python/chebychef.py +++ b/buch/papers/ellfilter/python/chebychef.py @@ -35,7 +35,7 @@ plt.show() # %% Cheychev filter F_N plot w = np.linspace(-1.1,1.1, 1000) -plt.figure(figsize=(5.5,2)) +plt.figure(figsize=(5.5,2.5)) for N in [3,6,11]: # F_N = np.cos(N * np.arccos(w)) F_N = scipy.special.eval_chebyt(N, w) @@ -44,9 +44,10 @@ plt.xlim([-1.2,1.2]) plt.ylim([-2,2]) plt.grid() plt.xlabel("$w$") -plt.ylabel("$C_N(w)$") +plt.ylabel("$T_N(w)$") plt.legend() -plt.savefig("F_N_chebychev2.pdf") +plt.tight_layout() +plt.savefig("F_N_chebychev2.pgf") plt.show() # %% Build Chebychev polynomials diff --git a/buch/papers/ellfilter/python/elliptic.pgf b/buch/papers/ellfilter/python/elliptic.pgf new file mode 100644 index 0000000..31b77d4 --- /dev/null +++ b/buch/papers/ellfilter/python/elliptic.pgf @@ -0,0 +1,709 @@ +%% Creator: Matplotlib, PGF backend +%% +%% To include the figure in your LaTeX document, write +%% \input{.pgf} +%% +%% Make sure the required packages are loaded in your preamble +%% \usepackage{pgf} +%% +%% Also ensure that all the required font packages are loaded; for instance, +%% the lmodern package is sometimes necessary when using math font. +%% \usepackage{lmodern} +%% +%% Figures using additional raster images can only be included by \input if +%% they are in the same directory as the main LaTeX file. For loading figures +%% from other directories you can use the `import` package +%% \usepackage{import} +%% +%% and then include the figures with +%% \import{}{.pgf} +%% +%% Matplotlib used the following preamble +%% +\begingroup% +\makeatletter% +\begin{pgfpicture}% +\pgfpathrectangle{\pgfpointorigin}{\pgfqpoint{4.000000in}{2.500000in}}% +\pgfusepath{use as bounding box, clip}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{1.000000,1.000000,1.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.000000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{4.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{4.000000in}{2.500000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{2.500000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathclose% +\pgfusepath{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.000000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.617954in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{0.617954in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{0.617954in}{0.548769in}}% +\pgfpathclose% +\pgfusepath{fill}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{3.143642in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{0.000000,0.501961,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetfillopacity{0.200000}% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.200000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.617954in}{1.788459in}}% +\pgfpathlineto{\pgfqpoint{2.189776in}{1.788459in}}% +\pgfpathlineto{\pgfqpoint{2.189776in}{3.541645in}}% +\pgfpathlineto{\pgfqpoint{0.617954in}{3.541645in}}% +\pgfpathlineto{\pgfqpoint{0.617954in}{1.788459in}}% +\pgfpathclose% +\pgfusepath{fill}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{3.143642in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{1.000000,0.647059,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetfillopacity{0.200000}% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.200000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.189776in}{0.724087in}}% +\pgfpathlineto{\pgfqpoint{2.205494in}{0.724087in}}% +\pgfpathlineto{\pgfqpoint{2.205494in}{1.788459in}}% +\pgfpathlineto{\pgfqpoint{2.189776in}{1.788459in}}% +\pgfpathlineto{\pgfqpoint{2.189776in}{0.724087in}}% +\pgfpathclose% +\pgfusepath{fill}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{3.143642in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{1.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetfillopacity{0.200000}% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.200000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.205494in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.777315in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.777315in}{0.724087in}}% +\pgfpathlineto{\pgfqpoint{2.205494in}{0.724087in}}% +\pgfpathlineto{\pgfqpoint{2.205494in}{0.548769in}}% +\pgfpathclose% +\pgfusepath{fill}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{3.143642in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.617954in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.617954in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.617954in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.617954in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.0}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{3.143642in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{1.403865in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{1.403865in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{1.403865in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=1.403865in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.5}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{3.143642in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.189776in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{2.189776in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{2.189776in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.189776in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {1.0}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{3.143642in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.975686in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{2.975686in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{2.975686in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.975686in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {1.5}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{3.143642in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{3.761597in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{3.761597in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=3.761597in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {2.0}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.189776in,y=0.272534in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle w\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{3.143642in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.617954in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{0.548769in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.617954in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.343262in, y=0.500544in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.0}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{3.143642in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.617954in}{0.899406in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{0.899406in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.617954in}{0.899406in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.343262in, y=0.851181in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.2}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{3.143642in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.617954in}{1.250043in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{1.250043in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.617954in}{1.250043in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.343262in, y=1.201818in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.4}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{3.143642in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.617954in}{1.600680in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{1.600680in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.617954in}{1.600680in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.343262in, y=1.552455in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.6}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{3.143642in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.617954in}{1.951318in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{1.951318in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.617954in}{1.951318in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.343262in, y=1.903092in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.8}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{3.143642in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.690196,0.690196,0.690196}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.617954in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.617954in}{2.301955in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.343262in, y=2.253730in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {1.0}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.287707in,y=1.425362in,,bottom,rotate=90.000000]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle |H(w)|\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.617954in}{0.548769in}}{\pgfqpoint{3.143642in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.003750pt}% +\definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.617954in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{0.646254in}{2.300410in}}% +\pgfpathlineto{\pgfqpoint{0.674554in}{2.295805in}}% +\pgfpathlineto{\pgfqpoint{0.703640in}{2.287983in}}% +\pgfpathlineto{\pgfqpoint{0.734298in}{2.276528in}}% +\pgfpathlineto{\pgfqpoint{0.767315in}{2.260797in}}% +\pgfpathlineto{\pgfqpoint{0.802690in}{2.240472in}}% +\pgfpathlineto{\pgfqpoint{0.842781in}{2.213774in}}% +\pgfpathlineto{\pgfqpoint{0.889947in}{2.178486in}}% +\pgfpathlineto{\pgfqpoint{0.952050in}{2.127836in}}% +\pgfpathlineto{\pgfqpoint{1.147791in}{1.965399in}}% +\pgfpathlineto{\pgfqpoint{1.205963in}{1.922684in}}% +\pgfpathlineto{\pgfqpoint{1.257846in}{1.888382in}}% +\pgfpathlineto{\pgfqpoint{1.305012in}{1.860803in}}% +\pgfpathlineto{\pgfqpoint{1.349034in}{1.838524in}}% +\pgfpathlineto{\pgfqpoint{1.390698in}{1.820826in}}% +\pgfpathlineto{\pgfqpoint{1.430003in}{1.807434in}}% +\pgfpathlineto{\pgfqpoint{1.466950in}{1.798051in}}% +\pgfpathlineto{\pgfqpoint{1.501539in}{1.792361in}}% +\pgfpathlineto{\pgfqpoint{1.534555in}{1.790011in}}% +\pgfpathlineto{\pgfqpoint{1.566000in}{1.790875in}}% +\pgfpathlineto{\pgfqpoint{1.595872in}{1.794823in}}% +\pgfpathlineto{\pgfqpoint{1.624172in}{1.801709in}}% +\pgfpathlineto{\pgfqpoint{1.650899in}{1.811365in}}% +\pgfpathlineto{\pgfqpoint{1.676841in}{1.824030in}}% +\pgfpathlineto{\pgfqpoint{1.701996in}{1.839797in}}% +\pgfpathlineto{\pgfqpoint{1.726365in}{1.858757in}}% +\pgfpathlineto{\pgfqpoint{1.749949in}{1.880985in}}% +\pgfpathlineto{\pgfqpoint{1.773532in}{1.907483in}}% +\pgfpathlineto{\pgfqpoint{1.797115in}{1.938719in}}% +\pgfpathlineto{\pgfqpoint{1.820698in}{1.975139in}}% +\pgfpathlineto{\pgfqpoint{1.845068in}{2.018557in}}% +\pgfpathlineto{\pgfqpoint{1.871009in}{2.071217in}}% +\pgfpathlineto{\pgfqpoint{1.903240in}{2.144258in}}% +\pgfpathlineto{\pgfqpoint{1.949620in}{2.249449in}}% +\pgfpathlineto{\pgfqpoint{1.965342in}{2.277408in}}% +\pgfpathlineto{\pgfqpoint{1.977134in}{2.292569in}}% +\pgfpathlineto{\pgfqpoint{1.986567in}{2.299856in}}% +\pgfpathlineto{\pgfqpoint{1.993642in}{2.301922in}}% +\pgfpathlineto{\pgfqpoint{2.000717in}{2.300685in}}% +\pgfpathlineto{\pgfqpoint{2.007792in}{2.295839in}}% +\pgfpathlineto{\pgfqpoint{2.014867in}{2.287135in}}% +\pgfpathlineto{\pgfqpoint{2.023514in}{2.271025in}}% +\pgfpathlineto{\pgfqpoint{2.032947in}{2.246492in}}% +\pgfpathlineto{\pgfqpoint{2.043953in}{2.209014in}}% +\pgfpathlineto{\pgfqpoint{2.057317in}{2.152165in}}% +\pgfpathlineto{\pgfqpoint{2.076183in}{2.056775in}}% +\pgfpathlineto{\pgfqpoint{2.114702in}{1.858945in}}% +\pgfpathlineto{\pgfqpoint{2.126494in}{1.815249in}}% +\pgfpathlineto{\pgfqpoint{2.134355in}{1.796399in}}% +\pgfpathlineto{\pgfqpoint{2.139858in}{1.790308in}}% +\pgfpathlineto{\pgfqpoint{2.143002in}{1.790254in}}% +\pgfpathlineto{\pgfqpoint{2.146147in}{1.793264in}}% +\pgfpathlineto{\pgfqpoint{2.150077in}{1.802263in}}% +\pgfpathlineto{\pgfqpoint{2.154794in}{1.822852in}}% +\pgfpathlineto{\pgfqpoint{2.159510in}{1.857784in}}% +\pgfpathlineto{\pgfqpoint{2.165013in}{1.924261in}}% +\pgfpathlineto{\pgfqpoint{2.170516in}{2.030210in}}% +\pgfpathlineto{\pgfqpoint{2.181521in}{2.301670in}}% +\pgfpathlineto{\pgfqpoint{2.182308in}{2.299748in}}% +\pgfpathlineto{\pgfqpoint{2.183880in}{2.267565in}}% +\pgfpathlineto{\pgfqpoint{2.186238in}{2.135783in}}% +\pgfpathlineto{\pgfqpoint{2.192527in}{1.496420in}}% +\pgfpathlineto{\pgfqpoint{2.198816in}{1.001269in}}% +\pgfpathlineto{\pgfqpoint{2.205105in}{0.731898in}}% +\pgfpathlineto{\pgfqpoint{2.211393in}{0.583247in}}% +\pgfpathlineto{\pgfqpoint{2.213752in}{0.552138in}}% +\pgfpathlineto{\pgfqpoint{2.220827in}{0.630495in}}% +\pgfpathlineto{\pgfqpoint{2.227902in}{0.675607in}}% +\pgfpathlineto{\pgfqpoint{2.234977in}{0.701566in}}% +\pgfpathlineto{\pgfqpoint{2.241266in}{0.714626in}}% +\pgfpathlineto{\pgfqpoint{2.247554in}{0.721456in}}% +\pgfpathlineto{\pgfqpoint{2.253843in}{0.723972in}}% +\pgfpathlineto{\pgfqpoint{2.260918in}{0.723210in}}% +\pgfpathlineto{\pgfqpoint{2.269565in}{0.718770in}}% +\pgfpathlineto{\pgfqpoint{2.281357in}{0.708826in}}% +\pgfpathlineto{\pgfqpoint{2.300224in}{0.688160in}}% +\pgfpathlineto{\pgfqpoint{2.385123in}{0.590361in}}% +\pgfpathlineto{\pgfqpoint{2.417354in}{0.559882in}}% +\pgfpathlineto{\pgfqpoint{2.430717in}{0.549063in}}% +\pgfpathlineto{\pgfqpoint{2.463734in}{0.574407in}}% +\pgfpathlineto{\pgfqpoint{2.498323in}{0.597083in}}% +\pgfpathlineto{\pgfqpoint{2.535270in}{0.617584in}}% +\pgfpathlineto{\pgfqpoint{2.574575in}{0.635868in}}% +\pgfpathlineto{\pgfqpoint{2.617811in}{0.652529in}}% +\pgfpathlineto{\pgfqpoint{2.664977in}{0.667359in}}% +\pgfpathlineto{\pgfqpoint{2.717646in}{0.680619in}}% +\pgfpathlineto{\pgfqpoint{2.776604in}{0.692216in}}% +\pgfpathlineto{\pgfqpoint{2.843424in}{0.702155in}}% +\pgfpathlineto{\pgfqpoint{2.920462in}{0.710422in}}% +\pgfpathlineto{\pgfqpoint{3.010864in}{0.716921in}}% +\pgfpathlineto{\pgfqpoint{3.118561in}{0.721464in}}% +\pgfpathlineto{\pgfqpoint{3.250627in}{0.723829in}}% +\pgfpathlineto{\pgfqpoint{3.419640in}{0.723619in}}% +\pgfpathlineto{\pgfqpoint{3.651542in}{0.720038in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{0.717600in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{0.717600in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.617954in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.617954in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{3.761597in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.617954in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{0.548769in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.617954in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{3.761597in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\end{pgfpicture}% +\makeatother% +\endgroup% diff --git a/buch/papers/ellfilter/python/elliptic.py b/buch/papers/ellfilter/python/elliptic.py index 9f209e9..b3336a1 100644 --- a/buch/papers/ellfilter/python/elliptic.py +++ b/buch/papers/ellfilter/python/elliptic.py @@ -5,19 +5,62 @@ import scipy.special import scipyx as spx import numpy as np import matplotlib.pyplot as plt -import matplotlib from matplotlib.patches import Rectangle -matplotlib.rcParams.update({ - "pgf.texsystem": "pdflatex", - 'font.family': 'serif', - 'font.size': 9, - 'text.usetex': True, - 'pgf.rcfonts': False, -}) +import plot_params def last_color(): - plt.gca().lines[-1].get_color() + return plt.gca().lines[-1].get_color() + +# define elliptic functions + +def ell_int(k): + """ Calculate K(k) """ + m = k**2 + return scipy.special.ellipk(m) + +def sn(z, k): + return spx.ellipj(z, k**2)[0] + +def cn(z, k): + return spx.ellipj(z, k**2)[1] + +def dn(z, k): + return spx.ellipj(z, k**2)[2] + +def cd(z, k): + sn, cn, dn, ph = spx.ellipj(z, k**2) + return cn / dn + +# https://mathworld.wolfram.com/JacobiEllipticFunctions.html eq 3-8 + +def sn_inv(z, k): + m = k**2 + return scipy.special.ellipkinc(np.arcsin(z), m) + +def cn_inv(z, k): + m = k**2 + return scipy.special.ellipkinc(np.arccos(z), m) + +def dn_inv(z, k): + m = k**2 + x = np.sqrt((1-z**2) / k**2) + return scipy.special.ellipkinc(np.arcsin(x), m) + +def cd_inv(z, k): + m = k**2 + x = np.sqrt(((m - 1) * z**2) / (m*z**2 - 1)) + return scipy.special.ellipkinc(np.arccos(x), m) + + +k = 0.8 +z = 0.5 + +assert np.allclose(sn_inv(sn(z ,k), k), z) +assert np.allclose(cn_inv(cn(z ,k), k), z) +assert np.allclose(dn_inv(dn(z ,k), k), z) +assert np.allclose(cd_inv(cd(z ,k), k), z) + # %% Buttwerworth filter F_N plot @@ -37,7 +80,7 @@ plt.gca().add_patch(Rectangle( plt.gca().add_patch(Rectangle( (1, 1), 0.5, 1, - fc ='green', + fc ='orange', alpha=0.2, lw = 10, )) @@ -47,7 +90,8 @@ plt.grid() plt.xlabel("$w$") plt.ylabel("$F^2_N(w)$") plt.legend() -plt.savefig("F_N_butterworth.pdf") +plt.tight_layout() +plt.savefig("F_N_butterworth.pgf") plt.show() # %% Cheychev filter F_N plot @@ -69,7 +113,7 @@ plt.gca().add_patch(Rectangle( plt.gca().add_patch(Rectangle( (1, 1), 0.5, 1, - fc ='green', + fc ='orange', alpha=0.2, lw = 10, )) @@ -79,57 +123,10 @@ plt.grid() plt.xlabel("$w$") plt.ylabel("$F^2_N(w)$") plt.legend() -plt.savefig("F_N_chebychev.pdf") +plt.tight_layout() +plt.savefig("F_N_chebychev.pgf") plt.show() -# %% define elliptic functions - -def ell_int(k): - """ Calculate K(k) """ - m = k**2 - return scipy.special.ellipk(m) - -def sn(z, k): - return spx.ellipj(z, k**2)[0] - -def cn(z, k): - return spx.ellipj(z, k**2)[1] - -def dn(z, k): - return spx.ellipj(z, k**2)[2] - -def cd(z, k): - sn, cn, dn, ph = spx.ellipj(z, k**2) - return cn / dn - -# https://mathworld.wolfram.com/JacobiEllipticFunctions.html eq 3-8 - -def sn_inv(z, k): - m = k**2 - return scipy.special.ellipkinc(np.arcsin(z), m) - -def cn_inv(z, k): - m = k**2 - return scipy.special.ellipkinc(np.arccos(z), m) - -def dn_inv(z, k): - m = k**2 - x = np.sqrt((1-z**2) / k**2) - return scipy.special.ellipkinc(np.arcsin(x), m) - -def cd_inv(z, k): - m = k**2 - x = np.sqrt(((m - 1) * z**2) / (m*z**2 - 1)) - return scipy.special.ellipkinc(np.arccos(x), m) - - -k = 0.8 -z = 0.5 - -assert np.allclose(sn_inv(sn(z ,k), k), z) -assert np.allclose(cn_inv(cn(z ,k), k), z) -assert np.allclose(dn_inv(dn(z ,k), k), z) -assert np.allclose(cd_inv(cd(z ,k), k), z) # %% plot arcsin @@ -314,3 +311,46 @@ for n in (1,2,3,4): plt.plot(omega, np.abs(G)) plt.grid() plt.show() + + + + +# %% + + +k = np.concatenate(([0.00001,0.0001,0.001], np.linspace(0,1,101)[1:-1], [0.999,0.9999, 0.99999]), axis=0) +K = ell_int(k) +K_prime = ell_int(np.sqrt(1-k**2)) + + +f, axs = plt.subplots(1,2, figsize=(5,2.5)) +axs[0].plot(k, K, linewidth=0.1) +axs[0].text(k[30], K[30]+0.1, f"$K$") +axs[0].plot(k, K_prime, linewidth=0.1) +axs[0].text(k[30], K_prime[30]+0.1, f"$K^\prime$") +axs[0].set_xlim([0,1]) +axs[0].set_ylim([0,4]) +axs[0].set_xlabel("$k$") + +axs[1].axvline(x=np.pi/2, color="gray", linewidth=0.5) +axs[1].axhline(y=np.pi/2, color="gray", linewidth=0.5) +axs[1].text(0.1, np.pi/2 + 0.1, "$\pi/2$") +axs[1].text(np.pi/2+0.1, 0.1, "$\pi/2$") +axs[1].plot(K, K_prime, linewidth=1) + +k = np.array([0.1,0.2,0.4,0.6,0.9,0.99]) +K = ell_int(k) +K_prime = ell_int(np.sqrt(1-k**2)) + +axs[1].plot(K, K_prime, '.', color=last_color(), markersize=2) +for x, y, n in zip(K, K_prime, k): + axs[1].text(x+0.1, y+0.1, f"$k={n:.2f}$", rotation_mode="anchor") +axs[1].set_ylabel("$K^\prime$") +axs[1].set_xlabel("$K$") +axs[1].set_xlim([0,6]) +axs[1].set_ylim([0,5]) +plt.tight_layout() +plt.savefig("k.pgf") +plt.show() + +print(K[0], K[-1]) diff --git a/buch/papers/ellfilter/python/elliptic2.py b/buch/papers/ellfilter/python/elliptic2.py index 92fefd9..29c6f47 100644 --- a/buch/papers/ellfilter/python/elliptic2.py +++ b/buch/papers/ellfilter/python/elliptic2.py @@ -6,13 +6,14 @@ import numpy as np import matplotlib from matplotlib.patches import Rectangle +import plot_params def ellip_filter(N): order = N passband_ripple_db = 3 stopband_attenuation_db = 20 - omega_c = 1000 + omega_c = 1 a, b = scipy.signal.ellip( order, @@ -34,14 +35,14 @@ def ellip_filter(N): FN2 = ((1/mag**2) - 1) - return w/omega_c, FN2 / epsilon2 + return w/omega_c, FN2 / epsilon2, mag, a, b plt.figure(figsize=(4,2.5)) for N in [5]: - w, FN2 = ellip_filter(N) - plt.semilogy(w, FN2, label=f"$N={N}$") + w, FN2, mag, a, b = ellip_filter(N) + plt.semilogy(w, FN2, label=f"$N={N}, k=0.1$", linewidth=1) plt.gca().add_patch(Rectangle( (0, 0), @@ -53,7 +54,7 @@ plt.gca().add_patch(Rectangle( plt.gca().add_patch(Rectangle( (1, 1), 0.01, 1e2-1, - fc ='green', + fc ='orange', alpha=0.2, lw = 10, )) @@ -61,18 +62,88 @@ plt.gca().add_patch(Rectangle( plt.gca().add_patch(Rectangle( (1.01, 100), 1, 1e6, - fc ='green', + fc ='red', alpha=0.2, lw = 10, )) + +zeros = [0,0.87,1] +poles = [1.01,1.155] + +import matplotlib.transforms +plt.plot( # mark errors as vertical bars + zeros, + np.zeros_like(zeros), + "o", + mfc='none', + color='black', + transform=matplotlib.transforms.blended_transform_factory( + plt.gca().transData, + plt.gca().transAxes, + ), +) +plt.plot( # mark errors as vertical bars + poles, + np.ones_like(poles), + "x", + mfc='none', + color='black', + transform=matplotlib.transforms.blended_transform_factory( + plt.gca().transData, + plt.gca().transAxes, + ), +) + plt.xlim([0,2]) plt.ylim([1e-4,1e6]) plt.grid() plt.xlabel("$w$") plt.ylabel("$F^2_N(w)$") plt.legend() -plt.savefig("F_N_elliptic.pdf") +plt.tight_layout() +plt.savefig("F_N_elliptic.pgf") plt.show() +plt.figure(figsize=(4,2.5)) +plt.plot(w, mag, linewidth=1) + +plt.gca().add_patch(Rectangle( + (0, np.sqrt(2)/2), + 1, 1, + fc ='green', + alpha=0.2, + lw = 10, +)) +plt.gca().add_patch(Rectangle( + (1, 0.1), + 0.01, np.sqrt(2)/2 - 0.1, + fc ='orange', + alpha=0.2, + lw = 10, +)) + +plt.gca().add_patch(Rectangle( + (1.01, 0), + 1, 0.1, + fc ='red', + alpha=0.2, + lw = 10, +)) + +plt.grid() +plt.xlim([0,2]) +plt.ylim([0,1]) +plt.xlabel("$w$") +plt.ylabel("$|H(w)|$") +plt.tight_layout() +plt.savefig("elliptic.pgf") +plt.show() + +print("zeros", a) +print("poles", b) + + + + diff --git a/buch/papers/ellfilter/python/k.pgf b/buch/papers/ellfilter/python/k.pgf new file mode 100644 index 0000000..95d61d4 --- /dev/null +++ b/buch/papers/ellfilter/python/k.pgf @@ -0,0 +1,1157 @@ +%% Creator: Matplotlib, PGF backend +%% +%% To include the figure in your LaTeX document, write +%% \input{.pgf} +%% +%% Make sure the required packages are loaded in your preamble +%% \usepackage{pgf} +%% +%% Also ensure that all the required font packages are loaded; for instance, +%% the lmodern package is sometimes necessary when using math font. +%% \usepackage{lmodern} +%% +%% Figures using additional raster images can only be included by \input if +%% they are in the same directory as the main LaTeX file. For loading figures +%% from other directories you can use the `import` package +%% \usepackage{import} +%% +%% and then include the figures with +%% \import{}{.pgf} +%% +%% Matplotlib used the following preamble +%% +\begingroup% +\makeatletter% +\begin{pgfpicture}% +\pgfpathrectangle{\pgfpointorigin}{\pgfqpoint{5.000000in}{2.500000in}}% +\pgfusepath{use as bounding box, clip}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{1.000000,1.000000,1.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.000000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{5.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{5.000000in}{2.500000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{2.500000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathclose% +\pgfusepath{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.000000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.316407in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{2.256930in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{2.256930in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{0.316407in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{0.316407in}{0.548769in}}% +\pgfpathclose% +\pgfusepath{fill}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.316407in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.316407in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.00}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.801538in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.801538in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.25}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{1.286669in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=1.286669in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.50}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{1.771800in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=1.771800in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0.75}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{2.256930in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.256930in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {1.00}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=1.286669in,y=0.272534in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle k\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.316407in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.149740in, y=0.500544in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.316407in}{0.987065in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.149740in, y=0.938840in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {1}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.316407in}{1.425362in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.149740in, y=1.377137in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {2}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.316407in}{1.863658in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.149740in, y=1.815433in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {3}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{0.316407in}{2.301955in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.149740in, y=2.253730in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {4}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.316407in}{0.548769in}}{\pgfqpoint{1.940523in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.100375pt}% +\definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.316427in}{1.237243in}}% +\pgfpathlineto{\pgfqpoint{0.316601in}{1.237243in}}% +\pgfpathlineto{\pgfqpoint{0.318348in}{1.237244in}}% +\pgfpathlineto{\pgfqpoint{0.335813in}{1.237261in}}% +\pgfpathlineto{\pgfqpoint{0.355218in}{1.237312in}}% +\pgfpathlineto{\pgfqpoint{0.374623in}{1.237398in}}% +\pgfpathlineto{\pgfqpoint{0.394028in}{1.237519in}}% +\pgfpathlineto{\pgfqpoint{0.413434in}{1.237674in}}% +\pgfpathlineto{\pgfqpoint{0.432839in}{1.237864in}}% +\pgfpathlineto{\pgfqpoint{0.452244in}{1.238089in}}% +\pgfpathlineto{\pgfqpoint{0.471649in}{1.238349in}}% +\pgfpathlineto{\pgfqpoint{0.491054in}{1.238644in}}% +\pgfpathlineto{\pgfqpoint{0.510460in}{1.238974in}}% +\pgfpathlineto{\pgfqpoint{0.529865in}{1.239340in}}% +\pgfpathlineto{\pgfqpoint{0.549270in}{1.239742in}}% +\pgfpathlineto{\pgfqpoint{0.568675in}{1.240180in}}% +\pgfpathlineto{\pgfqpoint{0.588081in}{1.240655in}}% +\pgfpathlineto{\pgfqpoint{0.607486in}{1.241166in}}% +\pgfpathlineto{\pgfqpoint{0.626891in}{1.241714in}}% +\pgfpathlineto{\pgfqpoint{0.646296in}{1.242300in}}% +\pgfpathlineto{\pgfqpoint{0.665702in}{1.242924in}}% +\pgfpathlineto{\pgfqpoint{0.685107in}{1.243586in}}% +\pgfpathlineto{\pgfqpoint{0.704512in}{1.244287in}}% +\pgfpathlineto{\pgfqpoint{0.723917in}{1.245028in}}% +\pgfpathlineto{\pgfqpoint{0.743322in}{1.245809in}}% +\pgfpathlineto{\pgfqpoint{0.762728in}{1.246630in}}% +\pgfpathlineto{\pgfqpoint{0.782133in}{1.247492in}}% +\pgfpathlineto{\pgfqpoint{0.801538in}{1.248396in}}% +\pgfpathlineto{\pgfqpoint{0.820943in}{1.249343in}}% +\pgfpathlineto{\pgfqpoint{0.840349in}{1.250333in}}% +\pgfpathlineto{\pgfqpoint{0.859754in}{1.251367in}}% +\pgfpathlineto{\pgfqpoint{0.879159in}{1.252446in}}% +\pgfpathlineto{\pgfqpoint{0.898564in}{1.253571in}}% +\pgfpathlineto{\pgfqpoint{0.917969in}{1.254743in}}% +\pgfpathlineto{\pgfqpoint{0.937375in}{1.255962in}}% +\pgfpathlineto{\pgfqpoint{0.956780in}{1.257230in}}% +\pgfpathlineto{\pgfqpoint{0.976185in}{1.258548in}}% +\pgfpathlineto{\pgfqpoint{0.995590in}{1.259917in}}% +\pgfpathlineto{\pgfqpoint{1.014996in}{1.261339in}}% +\pgfpathlineto{\pgfqpoint{1.034401in}{1.262814in}}% +\pgfpathlineto{\pgfqpoint{1.053806in}{1.264344in}}% +\pgfpathlineto{\pgfqpoint{1.073211in}{1.265930in}}% +\pgfpathlineto{\pgfqpoint{1.092617in}{1.267575in}}% +\pgfpathlineto{\pgfqpoint{1.112022in}{1.269279in}}% +\pgfpathlineto{\pgfqpoint{1.131427in}{1.271045in}}% +\pgfpathlineto{\pgfqpoint{1.150832in}{1.272874in}}% +\pgfpathlineto{\pgfqpoint{1.170237in}{1.274768in}}% +\pgfpathlineto{\pgfqpoint{1.189643in}{1.276729in}}% +\pgfpathlineto{\pgfqpoint{1.209048in}{1.278760in}}% +\pgfpathlineto{\pgfqpoint{1.228453in}{1.280863in}}% +\pgfpathlineto{\pgfqpoint{1.247858in}{1.283040in}}% +\pgfpathlineto{\pgfqpoint{1.267264in}{1.285294in}}% +\pgfpathlineto{\pgfqpoint{1.286669in}{1.287627in}}% +\pgfpathlineto{\pgfqpoint{1.306074in}{1.290044in}}% +\pgfpathlineto{\pgfqpoint{1.325479in}{1.292546in}}% +\pgfpathlineto{\pgfqpoint{1.344884in}{1.295137in}}% +\pgfpathlineto{\pgfqpoint{1.364290in}{1.297822in}}% +\pgfpathlineto{\pgfqpoint{1.383695in}{1.300603in}}% +\pgfpathlineto{\pgfqpoint{1.403100in}{1.303485in}}% +\pgfpathlineto{\pgfqpoint{1.422505in}{1.306473in}}% +\pgfpathlineto{\pgfqpoint{1.441911in}{1.309570in}}% +\pgfpathlineto{\pgfqpoint{1.461316in}{1.312784in}}% +\pgfpathlineto{\pgfqpoint{1.480721in}{1.316118in}}% +\pgfpathlineto{\pgfqpoint{1.500126in}{1.319579in}}% +\pgfpathlineto{\pgfqpoint{1.519532in}{1.323174in}}% +\pgfpathlineto{\pgfqpoint{1.538937in}{1.326910in}}% +\pgfpathlineto{\pgfqpoint{1.558342in}{1.330793in}}% +\pgfpathlineto{\pgfqpoint{1.577747in}{1.334833in}}% +\pgfpathlineto{\pgfqpoint{1.597152in}{1.339039in}}% +\pgfpathlineto{\pgfqpoint{1.616558in}{1.343420in}}% +\pgfpathlineto{\pgfqpoint{1.635963in}{1.347988in}}% +\pgfpathlineto{\pgfqpoint{1.655368in}{1.352753in}}% +\pgfpathlineto{\pgfqpoint{1.674773in}{1.357730in}}% +\pgfpathlineto{\pgfqpoint{1.694179in}{1.362933in}}% +\pgfpathlineto{\pgfqpoint{1.713584in}{1.368377in}}% +\pgfpathlineto{\pgfqpoint{1.732989in}{1.374081in}}% +\pgfpathlineto{\pgfqpoint{1.752394in}{1.380064in}}% +\pgfpathlineto{\pgfqpoint{1.771800in}{1.386349in}}% +\pgfpathlineto{\pgfqpoint{1.791205in}{1.392961in}}% +\pgfpathlineto{\pgfqpoint{1.810610in}{1.399927in}}% +\pgfpathlineto{\pgfqpoint{1.830015in}{1.407281in}}% +\pgfpathlineto{\pgfqpoint{1.849420in}{1.415059in}}% +\pgfpathlineto{\pgfqpoint{1.868826in}{1.423303in}}% +\pgfpathlineto{\pgfqpoint{1.888231in}{1.432062in}}% +\pgfpathlineto{\pgfqpoint{1.907636in}{1.441392in}}% +\pgfpathlineto{\pgfqpoint{1.927041in}{1.451361in}}% +\pgfpathlineto{\pgfqpoint{1.946447in}{1.462048in}}% +\pgfpathlineto{\pgfqpoint{1.965852in}{1.473546in}}% +\pgfpathlineto{\pgfqpoint{1.985257in}{1.485971in}}% +\pgfpathlineto{\pgfqpoint{2.004662in}{1.499462in}}% +\pgfpathlineto{\pgfqpoint{2.024067in}{1.514194in}}% +\pgfpathlineto{\pgfqpoint{2.043473in}{1.530388in}}% +\pgfpathlineto{\pgfqpoint{2.062878in}{1.548326in}}% +\pgfpathlineto{\pgfqpoint{2.082283in}{1.568383in}}% +\pgfpathlineto{\pgfqpoint{2.101688in}{1.591069in}}% +\pgfpathlineto{\pgfqpoint{2.121094in}{1.617098in}}% +\pgfpathlineto{\pgfqpoint{2.140499in}{1.647519in}}% +\pgfpathlineto{\pgfqpoint{2.159904in}{1.683962in}}% +\pgfpathlineto{\pgfqpoint{2.179309in}{1.729164in}}% +\pgfpathlineto{\pgfqpoint{2.198715in}{1.788269in}}% +\pgfpathlineto{\pgfqpoint{2.218120in}{1.872854in}}% +\pgfpathlineto{\pgfqpoint{2.237525in}{2.019955in}}% +\pgfpathlineto{\pgfqpoint{2.247876in}{2.315844in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{0.316407in}{0.548769in}}{\pgfqpoint{1.940523in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.100375pt}% +\definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.454821in}{2.315844in}}% +\pgfpathlineto{\pgfqpoint{0.471649in}{2.265444in}}% +\pgfpathlineto{\pgfqpoint{0.491054in}{2.214262in}}% +\pgfpathlineto{\pgfqpoint{0.510460in}{2.168554in}}% +\pgfpathlineto{\pgfqpoint{0.529865in}{2.127278in}}% +\pgfpathlineto{\pgfqpoint{0.549270in}{2.089666in}}% +\pgfpathlineto{\pgfqpoint{0.568675in}{2.055132in}}% +\pgfpathlineto{\pgfqpoint{0.588081in}{2.023222in}}% +\pgfpathlineto{\pgfqpoint{0.607486in}{1.993575in}}% +\pgfpathlineto{\pgfqpoint{0.626891in}{1.965899in}}% +\pgfpathlineto{\pgfqpoint{0.646296in}{1.939958in}}% +\pgfpathlineto{\pgfqpoint{0.665702in}{1.915554in}}% +\pgfpathlineto{\pgfqpoint{0.685107in}{1.892522in}}% +\pgfpathlineto{\pgfqpoint{0.704512in}{1.870720in}}% +\pgfpathlineto{\pgfqpoint{0.723917in}{1.850031in}}% +\pgfpathlineto{\pgfqpoint{0.743322in}{1.830351in}}% +\pgfpathlineto{\pgfqpoint{0.762728in}{1.811591in}}% +\pgfpathlineto{\pgfqpoint{0.782133in}{1.793672in}}% +\pgfpathlineto{\pgfqpoint{0.801538in}{1.776528in}}% +\pgfpathlineto{\pgfqpoint{0.820943in}{1.760096in}}% +\pgfpathlineto{\pgfqpoint{0.840349in}{1.744324in}}% +\pgfpathlineto{\pgfqpoint{0.859754in}{1.729164in}}% +\pgfpathlineto{\pgfqpoint{0.879159in}{1.714573in}}% +\pgfpathlineto{\pgfqpoint{0.898564in}{1.700513in}}% +\pgfpathlineto{\pgfqpoint{0.917969in}{1.686948in}}% +\pgfpathlineto{\pgfqpoint{0.937375in}{1.673849in}}% +\pgfpathlineto{\pgfqpoint{0.956780in}{1.661185in}}% +\pgfpathlineto{\pgfqpoint{0.976185in}{1.648932in}}% +\pgfpathlineto{\pgfqpoint{0.995590in}{1.637065in}}% +\pgfpathlineto{\pgfqpoint{1.014996in}{1.625563in}}% +\pgfpathlineto{\pgfqpoint{1.034401in}{1.614406in}}% +\pgfpathlineto{\pgfqpoint{1.053806in}{1.603575in}}% +\pgfpathlineto{\pgfqpoint{1.073211in}{1.593053in}}% +\pgfpathlineto{\pgfqpoint{1.092617in}{1.582826in}}% +\pgfpathlineto{\pgfqpoint{1.112022in}{1.572877in}}% +\pgfpathlineto{\pgfqpoint{1.131427in}{1.563195in}}% +\pgfpathlineto{\pgfqpoint{1.150832in}{1.553766in}}% +\pgfpathlineto{\pgfqpoint{1.170237in}{1.544578in}}% +\pgfpathlineto{\pgfqpoint{1.189643in}{1.535621in}}% +\pgfpathlineto{\pgfqpoint{1.209048in}{1.526884in}}% +\pgfpathlineto{\pgfqpoint{1.228453in}{1.518359in}}% +\pgfpathlineto{\pgfqpoint{1.247858in}{1.510036in}}% +\pgfpathlineto{\pgfqpoint{1.267264in}{1.501906in}}% +\pgfpathlineto{\pgfqpoint{1.286669in}{1.493962in}}% +\pgfpathlineto{\pgfqpoint{1.306074in}{1.486197in}}% +\pgfpathlineto{\pgfqpoint{1.325479in}{1.478603in}}% +\pgfpathlineto{\pgfqpoint{1.344884in}{1.471174in}}% +\pgfpathlineto{\pgfqpoint{1.364290in}{1.463903in}}% +\pgfpathlineto{\pgfqpoint{1.383695in}{1.456785in}}% +\pgfpathlineto{\pgfqpoint{1.403100in}{1.449815in}}% +\pgfpathlineto{\pgfqpoint{1.422505in}{1.442986in}}% +\pgfpathlineto{\pgfqpoint{1.441911in}{1.436294in}}% +\pgfpathlineto{\pgfqpoint{1.461316in}{1.429735in}}% +\pgfpathlineto{\pgfqpoint{1.480721in}{1.423303in}}% +\pgfpathlineto{\pgfqpoint{1.500126in}{1.416995in}}% +\pgfpathlineto{\pgfqpoint{1.519532in}{1.410805in}}% +\pgfpathlineto{\pgfqpoint{1.538937in}{1.404732in}}% +\pgfpathlineto{\pgfqpoint{1.558342in}{1.398770in}}% +\pgfpathlineto{\pgfqpoint{1.577747in}{1.392916in}}% +\pgfpathlineto{\pgfqpoint{1.597152in}{1.387167in}}% +\pgfpathlineto{\pgfqpoint{1.616558in}{1.381520in}}% +\pgfpathlineto{\pgfqpoint{1.635963in}{1.375971in}}% +\pgfpathlineto{\pgfqpoint{1.655368in}{1.370518in}}% +\pgfpathlineto{\pgfqpoint{1.674773in}{1.365158in}}% +\pgfpathlineto{\pgfqpoint{1.694179in}{1.359888in}}% +\pgfpathlineto{\pgfqpoint{1.713584in}{1.354705in}}% +\pgfpathlineto{\pgfqpoint{1.732989in}{1.349607in}}% +\pgfpathlineto{\pgfqpoint{1.752394in}{1.344593in}}% +\pgfpathlineto{\pgfqpoint{1.771800in}{1.339658in}}% +\pgfpathlineto{\pgfqpoint{1.791205in}{1.334802in}}% +\pgfpathlineto{\pgfqpoint{1.810610in}{1.330022in}}% +\pgfpathlineto{\pgfqpoint{1.830015in}{1.325316in}}% +\pgfpathlineto{\pgfqpoint{1.849420in}{1.320682in}}% +\pgfpathlineto{\pgfqpoint{1.868826in}{1.316118in}}% +\pgfpathlineto{\pgfqpoint{1.888231in}{1.311623in}}% +\pgfpathlineto{\pgfqpoint{1.907636in}{1.307195in}}% +\pgfpathlineto{\pgfqpoint{1.927041in}{1.302831in}}% +\pgfpathlineto{\pgfqpoint{1.946447in}{1.298531in}}% +\pgfpathlineto{\pgfqpoint{1.965852in}{1.294293in}}% +\pgfpathlineto{\pgfqpoint{1.985257in}{1.290116in}}% +\pgfpathlineto{\pgfqpoint{2.004662in}{1.285997in}}% +\pgfpathlineto{\pgfqpoint{2.024067in}{1.281936in}}% +\pgfpathlineto{\pgfqpoint{2.043473in}{1.277931in}}% +\pgfpathlineto{\pgfqpoint{2.062878in}{1.273982in}}% +\pgfpathlineto{\pgfqpoint{2.082283in}{1.270085in}}% +\pgfpathlineto{\pgfqpoint{2.101688in}{1.266241in}}% +\pgfpathlineto{\pgfqpoint{2.121094in}{1.262449in}}% +\pgfpathlineto{\pgfqpoint{2.140499in}{1.258706in}}% +\pgfpathlineto{\pgfqpoint{2.159904in}{1.255013in}}% +\pgfpathlineto{\pgfqpoint{2.179309in}{1.251367in}}% +\pgfpathlineto{\pgfqpoint{2.198715in}{1.247768in}}% +\pgfpathlineto{\pgfqpoint{2.218120in}{1.244215in}}% +\pgfpathlineto{\pgfqpoint{2.237525in}{1.240707in}}% +\pgfpathlineto{\pgfqpoint{2.254990in}{1.237588in}}% +\pgfpathlineto{\pgfqpoint{2.256736in}{1.237278in}}% +\pgfpathlineto{\pgfqpoint{2.256911in}{1.237247in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.316407in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{0.316407in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.256930in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{2.256930in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.316407in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{2.256930in}{0.548769in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{0.316407in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{2.256930in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.859754in,y=1.295197in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle K\)}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=0.859754in,y=1.772994in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle K^\prime\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetmiterjoin% +\definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.000000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetstrokeopacity{0.000000}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.874885in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{4.815407in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{4.815407in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{2.874885in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{2.874885in}{0.548769in}}% +\pgfpathclose% +\pgfusepath{fill}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{2.874885in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.874885in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{3.521726in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=3.521726in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {2}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{4.168566in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=4.168566in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {4}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{0.000000in}{-0.048611in}}{\pgfqpoint{0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.048611in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{4.815407in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=4.815407in,y=0.451547in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {6}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=3.845146in,y=0.272534in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle K\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{2.874885in}{0.548769in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.708218in, y=0.500544in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {0}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{2.874885in}{0.899406in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.708218in, y=0.851181in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {1}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{2.874885in}{1.250043in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.708218in, y=1.201818in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {2}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{2.874885in}{1.600680in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.708218in, y=1.552455in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {3}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{2.874885in}{1.951318in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.708218in, y=1.903092in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {4}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.048611in}{0.000000in}}{\pgfqpoint{-0.000000in}{0.000000in}}{% +\pgfpathmoveto{\pgfqpoint{-0.000000in}{0.000000in}}% +\pgfpathlineto{\pgfqpoint{-0.048611in}{0.000000in}}% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{2.874885in}{2.301955in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.708218in, y=2.253730in, left, base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle {5}\)}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.652662in,y=1.425362in,,bottom,rotate=90.000000]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle K^\prime\)}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{2.874885in}{0.548769in}}{\pgfqpoint{1.940523in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.501875pt}% +\definecolor{currentstroke}{rgb}{0.501961,0.501961,0.501961}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{3.382912in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{3.382912in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{2.874885in}{0.548769in}}{\pgfqpoint{1.940523in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{0.501875pt}% +\definecolor{currentstroke}{rgb}{0.501961,0.501961,0.501961}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.874885in}{1.099548in}}% +\pgfpathlineto{\pgfqpoint{4.815407in}{1.099548in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{2.874885in}{0.548769in}}{\pgfqpoint{1.940523in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetrectcap% +\pgfsetroundjoin% +\pgfsetlinewidth{1.003750pt}% +\definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{3.383004in}{2.315844in}}% +\pgfpathlineto{\pgfqpoint{3.383027in}{2.264692in}}% +\pgfpathlineto{\pgfqpoint{3.383116in}{2.164019in}}% +\pgfpathlineto{\pgfqpoint{3.383230in}{2.086013in}}% +\pgfpathlineto{\pgfqpoint{3.383370in}{2.022353in}}% +\pgfpathlineto{\pgfqpoint{3.383536in}{1.968602in}}% +\pgfpathlineto{\pgfqpoint{3.383728in}{1.922109in}}% +\pgfpathlineto{\pgfqpoint{3.383946in}{1.881163in}}% +\pgfpathlineto{\pgfqpoint{3.384190in}{1.844597in}}% +\pgfpathlineto{\pgfqpoint{3.384460in}{1.811577in}}% +\pgfpathlineto{\pgfqpoint{3.384756in}{1.781487in}}% +\pgfpathlineto{\pgfqpoint{3.385079in}{1.753859in}}% +\pgfpathlineto{\pgfqpoint{3.385429in}{1.728331in}}% +\pgfpathlineto{\pgfqpoint{3.385807in}{1.704613in}}% +\pgfpathlineto{\pgfqpoint{3.386211in}{1.682473in}}% +\pgfpathlineto{\pgfqpoint{3.386644in}{1.661720in}}% +\pgfpathlineto{\pgfqpoint{3.387104in}{1.642197in}}% +\pgfpathlineto{\pgfqpoint{3.387593in}{1.623771in}}% +\pgfpathlineto{\pgfqpoint{3.388110in}{1.606330in}}% +\pgfpathlineto{\pgfqpoint{3.388657in}{1.589779in}}% +\pgfpathlineto{\pgfqpoint{3.389233in}{1.574035in}}% +\pgfpathlineto{\pgfqpoint{3.389839in}{1.559026in}}% +\pgfpathlineto{\pgfqpoint{3.390475in}{1.544692in}}% +\pgfpathlineto{\pgfqpoint{3.391142in}{1.530976in}}% +\pgfpathlineto{\pgfqpoint{3.391841in}{1.517831in}}% +\pgfpathlineto{\pgfqpoint{3.392571in}{1.505213in}}% +\pgfpathlineto{\pgfqpoint{3.393334in}{1.493085in}}% +\pgfpathlineto{\pgfqpoint{3.394130in}{1.481412in}}% +\pgfpathlineto{\pgfqpoint{3.394960in}{1.470164in}}% +\pgfpathlineto{\pgfqpoint{3.395825in}{1.459313in}}% +\pgfpathlineto{\pgfqpoint{3.396725in}{1.448833in}}% +\pgfpathlineto{\pgfqpoint{3.397661in}{1.438702in}}% +\pgfpathlineto{\pgfqpoint{3.398633in}{1.428899in}}% +\pgfpathlineto{\pgfqpoint{3.399643in}{1.419406in}}% +\pgfpathlineto{\pgfqpoint{3.400692in}{1.410204in}}% +\pgfpathlineto{\pgfqpoint{3.401781in}{1.401278in}}% +\pgfpathlineto{\pgfqpoint{3.402910in}{1.392614in}}% +\pgfpathlineto{\pgfqpoint{3.404081in}{1.384197in}}% +\pgfpathlineto{\pgfqpoint{3.405294in}{1.376014in}}% +\pgfpathlineto{\pgfqpoint{3.406552in}{1.368056in}}% +\pgfpathlineto{\pgfqpoint{3.407855in}{1.360310in}}% +\pgfpathlineto{\pgfqpoint{3.409204in}{1.352766in}}% +\pgfpathlineto{\pgfqpoint{3.410602in}{1.345416in}}% +\pgfpathlineto{\pgfqpoint{3.412049in}{1.338250in}}% +\pgfpathlineto{\pgfqpoint{3.413548in}{1.331261in}}% +\pgfpathlineto{\pgfqpoint{3.415099in}{1.324441in}}% +\pgfpathlineto{\pgfqpoint{3.416706in}{1.317782in}}% +\pgfpathlineto{\pgfqpoint{3.418369in}{1.311279in}}% +\pgfpathlineto{\pgfqpoint{3.420091in}{1.304923in}}% +\pgfpathlineto{\pgfqpoint{3.421874in}{1.298711in}}% +\pgfpathlineto{\pgfqpoint{3.423720in}{1.292636in}}% +\pgfpathlineto{\pgfqpoint{3.425632in}{1.286693in}}% +\pgfpathlineto{\pgfqpoint{3.427613in}{1.280876in}}% +\pgfpathlineto{\pgfqpoint{3.429665in}{1.275182in}}% +\pgfpathlineto{\pgfqpoint{3.431792in}{1.269606in}}% +\pgfpathlineto{\pgfqpoint{3.433997in}{1.264143in}}% +\pgfpathlineto{\pgfqpoint{3.436283in}{1.258789in}}% +\pgfpathlineto{\pgfqpoint{3.438654in}{1.253542in}}% +\pgfpathlineto{\pgfqpoint{3.441114in}{1.248396in}}% +\pgfpathlineto{\pgfqpoint{3.443668in}{1.243349in}}% +\pgfpathlineto{\pgfqpoint{3.446321in}{1.238398in}}% +\pgfpathlineto{\pgfqpoint{3.449077in}{1.233539in}}% +\pgfpathlineto{\pgfqpoint{3.451943in}{1.228770in}}% +\pgfpathlineto{\pgfqpoint{3.454924in}{1.224087in}}% +\pgfpathlineto{\pgfqpoint{3.458028in}{1.219487in}}% +\pgfpathlineto{\pgfqpoint{3.461261in}{1.214970in}}% +\pgfpathlineto{\pgfqpoint{3.464631in}{1.210531in}}% +\pgfpathlineto{\pgfqpoint{3.468147in}{1.206168in}}% +\pgfpathlineto{\pgfqpoint{3.471820in}{1.201880in}}% +\pgfpathlineto{\pgfqpoint{3.475659in}{1.197664in}}% +\pgfpathlineto{\pgfqpoint{3.479676in}{1.193518in}}% +\pgfpathlineto{\pgfqpoint{3.483885in}{1.189440in}}% +\pgfpathlineto{\pgfqpoint{3.488300in}{1.185428in}}% +\pgfpathlineto{\pgfqpoint{3.492938in}{1.181480in}}% +\pgfpathlineto{\pgfqpoint{3.497817in}{1.177595in}}% +\pgfpathlineto{\pgfqpoint{3.502957in}{1.173771in}}% +\pgfpathlineto{\pgfqpoint{3.508384in}{1.170006in}}% +\pgfpathlineto{\pgfqpoint{3.514123in}{1.166299in}}% +\pgfpathlineto{\pgfqpoint{3.520206in}{1.162648in}}% +\pgfpathlineto{\pgfqpoint{3.526670in}{1.159052in}}% +\pgfpathlineto{\pgfqpoint{3.533555in}{1.155509in}}% +\pgfpathlineto{\pgfqpoint{3.540911in}{1.152019in}}% +\pgfpathlineto{\pgfqpoint{3.548796in}{1.148579in}}% +\pgfpathlineto{\pgfqpoint{3.557281in}{1.145189in}}% +\pgfpathlineto{\pgfqpoint{3.566449in}{1.141846in}}% +\pgfpathlineto{\pgfqpoint{3.576405in}{1.138552in}}% +\pgfpathlineto{\pgfqpoint{3.587275in}{1.135303in}}% +\pgfpathlineto{\pgfqpoint{3.599224in}{1.132099in}}% +\pgfpathlineto{\pgfqpoint{3.612461in}{1.128939in}}% +\pgfpathlineto{\pgfqpoint{3.627261in}{1.125822in}}% +\pgfpathlineto{\pgfqpoint{3.644002in}{1.122747in}}% +\pgfpathlineto{\pgfqpoint{3.663208in}{1.119713in}}% +\pgfpathlineto{\pgfqpoint{3.685656in}{1.116719in}}% +\pgfpathlineto{\pgfqpoint{3.712547in}{1.113764in}}% +\pgfpathlineto{\pgfqpoint{3.745902in}{1.110847in}}% +\pgfpathlineto{\pgfqpoint{3.789516in}{1.107968in}}% +\pgfpathlineto{\pgfqpoint{3.851932in}{1.105126in}}% +\pgfpathlineto{\pgfqpoint{3.960478in}{1.102320in}}% +\pgfpathlineto{\pgfqpoint{4.328852in}{1.099824in}}% +\pgfpathlineto{\pgfqpoint{4.700641in}{1.099576in}}% +\pgfpathlineto{\pgfqpoint{4.829296in}{1.099567in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfpathrectangle{\pgfqpoint{2.874885in}{0.548769in}}{\pgfqpoint{1.940523in}{1.753186in}}% +\pgfusepath{clip}% +\pgfsetbuttcap% +\pgfsetroundjoin% +\definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% +\pgfsetfillcolor{currentfill}% +\pgfsetlinewidth{1.003750pt}% +\definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfsys@defobject{currentmarker}{\pgfqpoint{-0.006944in}{-0.006944in}}{\pgfqpoint{0.006944in}{0.006944in}}{% +\pgfpathmoveto{\pgfqpoint{0.000000in}{-0.006944in}}% +\pgfpathcurveto{\pgfqpoint{0.001842in}{-0.006944in}}{\pgfqpoint{0.003608in}{-0.006213in}}{\pgfqpoint{0.004910in}{-0.004910in}}% +\pgfpathcurveto{\pgfqpoint{0.006213in}{-0.003608in}}{\pgfqpoint{0.006944in}{-0.001842in}}{\pgfqpoint{0.006944in}{0.000000in}}% +\pgfpathcurveto{\pgfqpoint{0.006944in}{0.001842in}}{\pgfqpoint{0.006213in}{0.003608in}}{\pgfqpoint{0.004910in}{0.004910in}}% +\pgfpathcurveto{\pgfqpoint{0.003608in}{0.006213in}}{\pgfqpoint{0.001842in}{0.006944in}}{\pgfqpoint{0.000000in}{0.006944in}}% +\pgfpathcurveto{\pgfqpoint{-0.001842in}{0.006944in}}{\pgfqpoint{-0.003608in}{0.006213in}}{\pgfqpoint{-0.004910in}{0.004910in}}% +\pgfpathcurveto{\pgfqpoint{-0.006213in}{0.003608in}}{\pgfqpoint{-0.006944in}{0.001842in}}{\pgfqpoint{-0.006944in}{0.000000in}}% +\pgfpathcurveto{\pgfqpoint{-0.006944in}{-0.001842in}}{\pgfqpoint{-0.006213in}{-0.003608in}}{\pgfqpoint{-0.004910in}{-0.004910in}}% +\pgfpathcurveto{\pgfqpoint{-0.003608in}{-0.006213in}}{\pgfqpoint{-0.001842in}{-0.006944in}}{\pgfqpoint{0.000000in}{-0.006944in}}% +\pgfpathlineto{\pgfqpoint{0.000000in}{-0.006944in}}% +\pgfpathclose% +\pgfusepath{stroke,fill}% +}% +\begin{pgfscope}% +\pgfsys@transformshift{3.384190in}{1.844597in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{3.388110in}{1.606330in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{3.405294in}{1.376014in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{3.441114in}{1.248396in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{3.612461in}{1.128939in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsys@transformshift{3.960478in}{1.102320in}% +\pgfsys@useobject{currentmarker}{}% +\end{pgfscope}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.874885in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{2.874885in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{4.815407in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{4.815407in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.874885in}{0.548769in}}% +\pgfpathlineto{\pgfqpoint{4.815407in}{0.548769in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\pgfsetrectcap% +\pgfsetmiterjoin% +\pgfsetlinewidth{0.803000pt}% +\definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{currentstroke}% +\pgfsetdash{}{0pt}% +\pgfpathmoveto{\pgfqpoint{2.874885in}{2.301955in}}% +\pgfpathlineto{\pgfqpoint{4.815407in}{2.301955in}}% +\pgfusepath{stroke}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=2.907227in,y=1.134612in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle \pi/2\)}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=3.415254in,y=0.583833in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle \pi/2\)}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=3.416532in,y=1.879661in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle k=0.10\)}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=3.420452in,y=1.641394in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle k=0.20\)}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=3.437636in,y=1.411078in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle k=0.40\)}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=3.473456in,y=1.283460in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle k=0.60\)}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=3.644803in,y=1.164003in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle k=0.90\)}% +\end{pgfscope}% +\begin{pgfscope}% +\definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% +\pgfsetstrokecolor{textcolor}% +\pgfsetfillcolor{textcolor}% +\pgftext[x=3.992820in,y=1.137383in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle k=0.99\)}% +\end{pgfscope}% +\end{pgfpicture}% +\makeatother% +\endgroup% diff --git a/buch/papers/ellfilter/python/plot_params.py b/buch/papers/ellfilter/python/plot_params.py new file mode 100644 index 0000000..4ddd1d8 --- /dev/null +++ b/buch/papers/ellfilter/python/plot_params.py @@ -0,0 +1,9 @@ +import matplotlib + +matplotlib.rcParams.update({ + "pgf.texsystem": "pdflatex", + 'font.family': 'serif', + 'font.size': 9, + 'text.usetex': True, + 'pgf.rcfonts': False, +}) diff --git a/buch/papers/ellfilter/references.bib b/buch/papers/ellfilter/references.bib index 2b873af..8f21971 100644 --- a/buch/papers/ellfilter/references.bib +++ b/buch/papers/ellfilter/references.bib @@ -11,3 +11,12 @@ url = {https://www.ece.rutgers.edu/~orfanidi/ece521/notes.pdf} } +% Schwalm +% https://en.wikipedia.org/wiki/Elliptic_rational_functions +% https://en.wikipedia.org/wiki/Rational_function +% https://en.wikipedia.org/wiki/Jacobi_elliptic_functions +% https://de.wikipedia.org/wiki/Elliptisches_Integral +% https://de.wikipedia.org/wiki/Tschebyschow-Polynom +% https://en.wikipedia.org/wiki/Chebyshev_filter +% https://mathworld.wolfram.com/JacobiEllipticFunctions.html +% https://mathworld.wolfram.com/EllipticIntegraloftheFirstKind.html diff --git a/buch/papers/ellfilter/tikz/arccos.tikz.tex b/buch/papers/ellfilter/tikz/arccos.tikz.tex index 2bdcc2d..2772620 100644 --- a/buch/papers/ellfilter/tikz/arccos.tikz.tex +++ b/buch/papers/ellfilter/tikz/arccos.tikz.tex @@ -1,81 +1,49 @@ \begin{tikzpicture}[>=stealth', auto, node distance=2cm, scale=1.2] + \tikzstyle{zero} = [draw, circle, inner sep =0, minimum height=0.15cm] + \tikzset{pole/.style={cross out, draw=black, minimum size=(0.15cm-\pgflinewidth), inner sep=0pt, outer sep=0pt}} - \draw[gray, ->] (0,-2) -- (0,2) node[anchor=south]{Im $z$}; - \draw[gray, ->] (-5,0) -- (5,0) node[anchor=west]{Re $z$}; + \draw[gray, ->] (0,-2) -- (0,2) node[anchor=south]{$\mathrm{Im}~z$}; + \draw[gray, ->] (-5,0) -- (5,0) node[anchor=west]{$\mathrm{Re}~z$}; - \begin{scope} - \draw[thick, ->, orange] (-1, 0) -- (0,0); - \draw[thick, ->, darkgreen] (0, 0) -- (0,1.5); - \draw[thick, ->, darkgreen] (0, 0) -- (0,-1.5); - \draw[thick, ->, orange] (1, 0) -- (0,0); - \draw[thick, ->, red] (2, 0) -- (1,0); - \draw[thick, ->, blue] (2,1.5) -- (2, 0); - \draw[thick, ->, blue] (2,-1.5) -- (2, 0); - \draw[thick, ->, red] (2, 0) -- (3,0); - - \node[anchor=south west] at (0,1.5) {$\infty$}; - \node[anchor=south west] at (0,-1.5) {$\infty$}; - \node[anchor=south west] at (0,0) {$1$}; - \node[anchor=south] at (1,0) {$0$}; - \node[anchor=south west] at (2,0) {$-1$}; - \node[anchor=south west] at (2,1.5) {$-\infty$}; - \node[anchor=south west] at (2,-1.5) {$-\infty$}; - \node[anchor=south west] at (3,0) {$0$}; - \end{scope} + \begin{scope}[xscale=0.6] - \begin{scope}[xshift=4cm] - \draw[thick, ->, orange] (-1, 0) -- (0,0); - \draw[thick, ->, darkgreen] (0, 0) -- (0,1.5); - \draw[thick, ->, darkgreen] (0, 0) -- (0,-1.5); - % \draw[thick, ->, orange] (1, 0) -- (0,0); - % \draw[thick, ->, red] (2, 0) -- (1,0); - % \draw[thick, ->, blue] (2,1.5) -- (2, 0); - % \draw[thick, ->, blue] (2,-1.5) -- (2, 0); - % \draw[thick, ->, red] (2, 0) -- (3,0); - - \node[anchor=south west] at (0,1.5) {$\infty$}; - \node[anchor=south west] at (0,-1.5) {$\infty$}; - \node[anchor=south west] at (0,0) {$1$}; - % \node[anchor=south] at (1,0) {$0$}; - % \node[anchor=south west] at (2,0) {$-1$}; - % \node[anchor=south west] at (2,1.5) {$-\infty$}; - % \node[anchor=south west] at (2,-1.5) {$-\infty$}; - % \node[anchor=south west] at (3,0) {$0$}; - \end{scope} + \clip(-7.5,-2) rectangle (7.5,2); - \begin{scope}[xshift=-4cm] - % \draw[thick, ->, orange] (-1, 0) -- (0,0); \draw[thick, ->, darkgreen] (0, 0) -- (0,1.5); - \draw[thick, ->, darkgreen] (0, 0) -- (0,-1.5); \draw[thick, ->, orange] (1, 0) -- (0,0); \draw[thick, ->, red] (2, 0) -- (1,0); \draw[thick, ->, blue] (2,1.5) -- (2, 0); - \draw[thick, ->, blue] (2,-1.5) -- (2, 0); - \draw[thick, ->, red] (2, 0) -- (3,0); - - \node[anchor=south west] at (0,1.5) {$\infty$}; - \node[anchor=south west] at (0,-1.5) {$\infty$}; - \node[anchor=south west] at (0,0) {$1$}; - \node[anchor=south] at (1,0) {$0$}; - \node[anchor=south west] at (2,0) {$-1$}; - \node[anchor=south west] at (2,1.5) {$-\infty$}; - \node[anchor=south west] at (2,-1.5) {$-\infty$}; - \node[anchor=south west] at (3,0) {$0$}; - \end{scope} - - \node[gray, anchor=north west] at (-4,0) {$-2\pi$}; - \node[gray, anchor=north west] at (-2,0) {$-\pi$}; - \node[gray, anchor=north west] at (0,0) {$0$}; - \node[gray, anchor=north west] at (2,0) {$\pi$}; - \node[gray, anchor=north west] at (4,0) {$2\pi$}; - - - \node[gray, anchor=south east] at (0,-1.5) {$-\infty$}; - \node[gray, anchor=south east] at (0, 0) {$0$}; - \node[gray, anchor=south east] at (0, 1.5) {$\infty$}; + \foreach \i in {-2,...,1} { + \begin{scope}[opacity=0.5, xshift=\i*4cm] + \draw[->, orange] (-1, 0) -- (0,0); + \draw[->, darkgreen] (0, 0) -- (0,1.5); + \draw[->, darkgreen] (0, 0) -- (0,-1.5); + \draw[->, orange] (1, 0) -- (0,0); + \draw[->, red] (2, 0) -- (1,0); + \draw[->, blue] (2,1.5) -- (2, 0); + \draw[->, blue] (2,-1.5) -- (2, 0); + \draw[->, red] (2, 0) -- (3,0); + + \node[zero] at (1,0) {}; + \node[zero] at (3,0) {}; + \end{scope} + } + + \node[gray, anchor=north] at (-6,0) {$-3\pi$}; + \node[gray, anchor=north] at (-4,0) {$-2\pi$}; + \node[gray, anchor=north] at (-2,0) {$-\pi$}; + % \node[gray, anchor=north] at (0,0) {$0$}; + \node[gray, anchor=north] at (2,0) {$\pi$}; + \node[gray, anchor=north] at (4,0) {$2\pi$}; + \node[gray, anchor=north] at (6,0) {$3\pi$}; + + \node[gray, anchor=east] at (0,-1.5) {$-\infty$}; + % \node[gray, anchor=south east] at (0, 0) {$0$}; + \node[gray, anchor=east] at (0, 1.5) {$\infty$}; + \end{scope} \begin{scope}[yshift=-2.5cm] @@ -94,4 +62,5 @@ \end{scope} + \end{tikzpicture} \ No newline at end of file diff --git a/buch/papers/ellfilter/tikz/arccos2.tikz.tex b/buch/papers/ellfilter/tikz/arccos2.tikz.tex index dcf02fd..3fc3cc6 100644 --- a/buch/papers/ellfilter/tikz/arccos2.tikz.tex +++ b/buch/papers/ellfilter/tikz/arccos2.tikz.tex @@ -1,19 +1,18 @@ \begin{tikzpicture}[>=stealth', auto, node distance=2cm, scale=1.2] \tikzstyle{zero} = [draw, circle, inner sep =0, minimum height=0.15cm] - \tikzset{pole/.style={cross out, draw=black, minimum size=(0.15cm-\pgflinewidth), inner sep=0pt, outer sep=0pt}} \begin{scope}[xscale=0.5] - \draw[gray, ->] (0,-2) -- (0,2) node[anchor=south]{Im $z$}; - \draw[gray, ->] (-10,0) -- (10,0) node[anchor=west]{Re $z$}; + \draw[gray, ->] (0,-2) -- (0,2) node[anchor=south]{$\mathrm{Im}~z_1$}; + \draw[gray, ->] (-10,0) -- (10,0) node[anchor=west]{$\mathrm{Re}~z_1$}; \begin{scope} \draw[>->, line width=0.05, thick, blue] (2, 1.5) -- (2,0.05) -- node[anchor=south, pos=0.5]{$N=1$} (0.1,0.05) -- (0.1,1.5); \draw[>->, line width=0.05, thick, orange] (4, 1.5) -- (4,0) -- node[anchor=south, pos=0.25]{$N=2$} (0,0) -- (0,1.5); - \draw[>->, line width=0.05, thick, red] (6, 1.5) -- (6,-0.05) -- node[anchor=south, pos=0.1666]{$N=3$} (-0.1,-0.05) -- (-0.1,1.5); + \draw[>->, line width=0.05, thick, red] (6, 1.5) node[anchor=north west]{$-\infty$} -- (6,-0.05) node[anchor=west]{$-1$} -- node[anchor=north]{$0$} node[anchor=south, pos=0.1666]{$N=3$} (-0.1,-0.05) node[anchor=east]{$1$} -- (-0.1,1.5) node[anchor=north east]{$\infty$}; \node[zero] at (-7,0) {}; diff --git a/buch/papers/ellfilter/tikz/cd.tikz.tex b/buch/papers/ellfilter/tikz/cd.tikz.tex new file mode 100644 index 0000000..7155a85 --- /dev/null +++ b/buch/papers/ellfilter/tikz/cd.tikz.tex @@ -0,0 +1,87 @@ +\begin{tikzpicture}[>=stealth', auto, node distance=2cm, scale=1.2] + + \tikzstyle{zero} = [draw, circle, inner sep =0, minimum height=0.15cm] + + \tikzset{pole/.style={cross out, draw=black, minimum size=(0.15cm-\pgflinewidth), inner sep=0pt, outer sep=0pt}} + + \begin{scope}[xscale=1, yscale=2] + + \draw[gray, ->] (0,-1.5) -- (0,1.5) node[anchor=south]{$\mathrm{Im}~z$}; + \draw[gray, ->] (-5,0) -- (5,0) node[anchor=west]{$\mathrm{Re}~z$}; + + \draw[gray] ( 1,0) +(0,0.1) -- +(0, -0.1) node[inner sep=0, anchor=north] {\small $K$}; + + \draw[gray] (0, 0.5) +(0.1, 0) -- +(-0.1, 0) node[inner sep=0, anchor=east]{\small $jK^\prime$}; + + + \begin{scope} + + \begin{scope}[xshift=0cm] + + \clip(-4.5,-1.25) rectangle (4.5,1.25); + + \fill[yellow!30] (0,0) rectangle (1, 0.5); + + + \draw[thick, ->, darkgreen] (0, 0) -- (0,0.5); + \draw[thick, ->, orange] (1, 0) -- (0,0); + \draw[thick, ->, red] (2, 0) -- (1,0); + \draw[thick, ->, blue] (2,0.5) -- (2, 0); + \draw[thick, ->, purple] (1, 0.5) -- (2,0.5); + \draw[thick, ->, cyan] (0, 0.5) -- (1,0.5); + + + + \foreach \i in {-2,...,1} { + \foreach \j in {-2,...,1} { + \begin{scope}[xshift=\i*4cm, yshift=\j*1cm] + \draw[opacity=0.5, ->, darkgreen] (0, 0) -- (0,0.5); + \draw[opacity=0.5, ->, orange] (1, 0) -- (0,0); + \draw[opacity=0.5, ->, red] (2, 0) -- (1,0); + \draw[opacity=0.5, ->, blue] (2,0.5) -- (2, 0); + \draw[opacity=0.5, ->, purple] (1, 0.5) -- (2,0.5); + \draw[opacity=0.5, ->, cyan] (0, 0.5) -- (1,0.5); + \draw[opacity=0.5, ->, darkgreen] (0,1) -- (0,0.5); + \draw[opacity=0.5, ->, blue] (2,0.5) -- (2, 1); + \draw[opacity=0.5, ->, purple] (3, 0.5) -- (2,0.5); + \draw[opacity=0.5, ->, cyan] (4, 0.5) -- (3,0.5); + \draw[opacity=0.5, ->, red] (2, 0) -- (3,0); + \draw[opacity=0.5, ->, orange] (3, 0) -- (4,0); + + \node[zero] at ( 1, 0) {}; + \node[zero] at ( 3, 0) {}; + \node[pole] at ( 1,0.5) {}; + \node[pole] at ( 3,0.5) {}; + + \end{scope} + } + } + + \end{scope} + + \end{scope} + + \end{scope} + + \begin{scope}[yshift=-3.5cm, xscale=0.75] + + \draw[gray, ->] (-6,0) -- (6,0) node[anchor=west]{$w$}; + + \draw[thick, ->, purple] (-5, 0) -- (-3, 0); + \draw[thick, ->, blue] (-3, 0) -- (-2, 0); + \draw[thick, ->, red] (-2, 0) -- (0, 0); + \draw[thick, ->, orange] (0, 0) -- (2, 0); + \draw[thick, ->, darkgreen] (2, 0) -- (3, 0); + \draw[thick, ->, cyan] (3, 0) -- (5, 0); + + \node[anchor=south] at (-5,0) {$-\infty$}; + \node[anchor=south] at (-3,0) {$-1/k$}; + \node[anchor=south] at (-2,0) {$-1$}; + \node[anchor=south] at (0,0) {$0$}; + \node[anchor=south] at (2,0) {$1$}; + \node[anchor=south] at (3,0) {$1/k$}; + \node[anchor=south] at (5,0) {$\infty$}; + + \end{scope} + +\end{tikzpicture} \ No newline at end of file diff --git a/buch/papers/ellfilter/tikz/cd2.tikz.tex b/buch/papers/ellfilter/tikz/cd2.tikz.tex new file mode 100644 index 0000000..0743f7d --- /dev/null +++ b/buch/papers/ellfilter/tikz/cd2.tikz.tex @@ -0,0 +1,84 @@ +\begin{tikzpicture}[>=stealth', auto, node distance=2cm, scale=1.2] + + \tikzstyle{zero} = [draw, circle, inner sep =0, minimum height=0.15cm] + \tikzstyle{dot} = [fill, circle, inner sep =0, minimum height=0.1cm] + + \tikzset{pole/.style={cross out, draw=black, minimum size=(0.15cm-\pgflinewidth), inner sep=0pt, outer sep=0pt}} + + \begin{scope}[xscale=1.25, yscale=2.5] + + \draw[gray, ->] (0,-0.75) -- (0,1.25) node[anchor=south]{$\mathrm{Im}~z_1$}; + \draw[gray, ->] (-1.5,0) -- (6,0) node[anchor=west]{$\mathrm{Re}~z_1$}; + + \draw[gray] ( 1,0) +(0,0.05) -- +(0, -0.05) node[inner sep=0, anchor=north] {\small $K_1$}; + \draw[gray] ( 5,0) +(0,0.05) -- +(0, -0.05) node[inner sep=0, anchor=north] {\small $5K_1$}; + \draw[gray] (0, 0.5) +(0.1, 0) -- +(-0.1, 0) node[inner sep=0, anchor=east]{\small $jK^\prime_1$}; + + \begin{scope} + + \clip(-1.5,-0.75) rectangle (6.8,1.25); + + % \draw[>->, line width=0.05, thick, blue] (1, 0.45) -- (2, 0.45) -- (2, 0.05) -- ( 0.1, 0.05) -- ( 0.1,0.45) -- (1, 0.45); + % \draw[>->, line width=0.05, thick, orange] (2, 0.5 ) -- (4, 0.5 ) -- (4, 0 ) -- ( 0 , 0 ) -- ( 0 ,0.5 ) -- (2, 0.5 ); + % \draw[>->, line width=0.05, thick, red] (3, 0.55) -- (6, 0.55) -- (6,-0.05) -- (-0.1,-0.05) -- (-0.1,0.55) -- (3, 0.55); + % \node[blue] at (1, 0.25) {$N=1$}; + % \node[orange] at (3, 0.25) {$N=2$}; + % \node[red] at (5, 0.25) {$N=3$}; + + + + % \draw[line width=0.1cm, fill, red!50] (0,0) rectangle (3, 0.5); + % \draw[line width=0.05cm, fill, orange!50] (0,0) rectangle (2, 0.5); + % \fill[yellow!50] (0,0) rectangle (1, 0.5); + % \node[] at (0.5, 0.25) {\small $N=1$}; + % \node[] at (1.5, 0.25) {\small $N=2$}; + % \node[] at (2.5, 0.25) {\small $N=3$}; + + \fill[orange!30] (0,0) rectangle (5, 0.5); + \fill[yellow!30] (0,0) rectangle (1, 0.5); + \node[] at (2.5, 0.25) {\small $N=5$}; + + + \draw[decorate,decoration={brace,amplitude=3pt,mirror}, yshift=0.05cm] + (5,0.5) node(t_k_unten){} -- node[above, yshift=0.1cm]{$NK$} + (0,0.5) node(t_k_opt_unten){}; + + \draw[decorate,decoration={brace,amplitude=3pt,mirror}, xshift=0.1cm] + (5,0) node(t_k_unten){} -- node[right, xshift=0.1cm]{$K^\prime \frac{K_1N}{K} = K^\prime_1$} + (5,0.5) node(t_k_opt_unten){}; + + \foreach \i in {-2,...,1} { + \foreach \j in {-2,...,1} { + \begin{scope}[xshift=\i*4cm, yshift=\j*1cm] + + \node[zero] at ( 1, 0) {}; + \node[zero] at ( 3, 0) {}; + \node[pole] at ( 1,0.5) {}; + \node[pole] at ( 3,0.5) {}; + + \end{scope} + } + } + + + + + \draw[thick, ->, darkgreen] (5, 0) -- node[yshift=-0.5cm]{Durchlassbereich} (0,0); + \draw[thick, ->, orange] (-0, 0) -- node[align=center]{Übergangs-\\berech} (0,0.5); + \draw[thick, ->, red] (0,0.5) -- node[align=center, yshift=0.5cm]{Sperrbereich} (5, 0.5); + + \draw (4,0 ) node[dot]{} node[anchor=south] {\small $1$}; + \draw (2,0 ) node[dot]{} node[anchor=south] {\small $-1$}; + \draw (0,0 ) node[dot]{} node[anchor=south west] {\small $1$}; + \draw (0,0.5) node[dot]{} node[anchor=north west] {\small $1/k$}; + \draw (2,0.5) node[dot]{} node[anchor=north] {\small $-1/k$}; + \draw (4,0.5) node[dot]{} node[anchor=north] {\small $1/k$}; + + + + \end{scope} + + + \end{scope} + +\end{tikzpicture} \ No newline at end of file diff --git a/buch/papers/ellfilter/tikz/fundamental_rectangle.tikz.tex b/buch/papers/ellfilter/tikz/fundamental_rectangle.tikz.tex new file mode 100644 index 0000000..921dbfa --- /dev/null +++ b/buch/papers/ellfilter/tikz/fundamental_rectangle.tikz.tex @@ -0,0 +1,26 @@ +\begin{tikzpicture}[>=stealth', auto, node distance=2cm, scale=1.2] + + \tikzstyle{zero} = [draw, circle, inner sep =0, minimum height=0.15cm] + + \tikzset{pole/.style={cross out, draw=black, minimum size=(0.15cm-\pgflinewidth), inner sep=0pt, outer sep=0pt}} + + \begin{scope}[xscale=2, yscale=2] + + \draw[gray, ->] (0,-0.25) -- (0,1.25) node[anchor=south]{$\mathrm{Im}~z$}; + \draw[gray, ->] (-0.25,0) -- (1.5,0) node[anchor=west]{$\mathrm{Re}~z$}; + + \draw[gray] ( 1,0) +(0,0.05) -- +(0, -0.05) node[inner sep=0, anchor=north] {\small $K$}; + + \draw[gray] (0, 1) +(0.05, 0) -- +(-0.05, 0) node[inner sep=0, anchor=east]{\small $jK^\prime$}; + + \fill[yellow!50] (0,0) rectangle (1, 1); + + \node[anchor=south east] at ( 1,0) {$c$}; + \node[anchor=north east] at ( 1,1) {$d$}; + \node[anchor=north west] at ( 0,1) {$n$}; + \node[anchor=south west] at ( 0,0) {$s$}; + + \end{scope} + + +\end{tikzpicture} \ No newline at end of file diff --git a/buch/papers/ellfilter/tikz/sn.tikz.tex b/buch/papers/ellfilter/tikz/sn.tikz.tex new file mode 100644 index 0000000..87c63c0 --- /dev/null +++ b/buch/papers/ellfilter/tikz/sn.tikz.tex @@ -0,0 +1,86 @@ +\begin{tikzpicture}[>=stealth', auto, node distance=2cm, scale=1.2] + + \tikzstyle{zero} = [draw, circle, inner sep =0, minimum height=0.15cm] + + \tikzset{pole/.style={cross out, draw=black, minimum size=(0.15cm-\pgflinewidth), inner sep=0pt, outer sep=0pt}} + + \begin{scope}[xscale=1, yscale=2] + + \draw[gray, ->] (0,-1.5) -- (0,1.5) node[anchor=south]{$\mathrm{Im}~z$}; + \draw[gray, ->] (-5,0) -- (5,0) node[anchor=west]{$\mathrm{Re}~z$}; + + \begin{scope} + + \clip(-4.5,-1.25) rectangle (4.5,1.25); + + \fill[yellow!30] (0,0) rectangle (1, 0.5); + + \begin{scope}[xshift=-1cm] + + \draw[thick, ->, darkgreen] (0, 0) -- (0,0.5); + \draw[thick, ->, orange] (1, 0) -- (0,0); + \draw[thick, ->, red] (2, 0) -- (1,0); + \draw[thick, ->, blue] (2,0.5) -- (2, 0); + \draw[thick, ->, purple] (1, 0.5) -- (2,0.5); + \draw[thick, ->, cyan] (0, 0.5) -- (1,0.5); + + + \foreach \i in {-2,...,2} { + \foreach \j in {-2,...,1} { + \begin{scope}[xshift=\i*4cm, yshift=\j*1cm] + \draw[opacity=0.5, ->, darkgreen] (0, 0) -- (0,0.5); + \draw[opacity=0.5, ->, orange] (1, 0) -- (0,0); + \draw[opacity=0.5, ->, red] (2, 0) -- (1,0); + \draw[opacity=0.5, ->, blue] (2,0.5) -- (2, 0); + \draw[opacity=0.5, ->, purple] (1, 0.5) -- (2,0.5); + \draw[opacity=0.5, ->, cyan] (0, 0.5) -- (1,0.5); + \draw[opacity=0.5, ->, darkgreen] (0,1) -- (0,0.5); + \draw[opacity=0.5, ->, blue] (2,0.5) -- (2, 1); + \draw[opacity=0.5, ->, purple] (3, 0.5) -- (2,0.5); + \draw[opacity=0.5, ->, cyan] (4, 0.5) -- (3,0.5); + \draw[opacity=0.5, ->, red] (2, 0) -- (3,0); + \draw[opacity=0.5, ->, orange] (3, 0) -- (4,0); + + \node[zero] at ( 1, 0) {}; + \node[zero] at ( 3, 0) {}; + \node[pole] at ( 1,0.5) {}; + \node[pole] at ( 3,0.5) {}; + + \end{scope} + } + } + + \end{scope} + + \end{scope} + + \draw[gray] ( 1,0) +(0,0.1) -- +(0, -0.1) node[inner sep=0, anchor=north] {\small $K$}; + \draw[gray] (0, 0.5) +(0.1, 0) -- +(-0.1, 0) node[inner sep=0, anchor=east]{\small $jK^\prime$}; + + + + \end{scope} + + \begin{scope}[yshift=-3.5cm, xscale=0.75] + + \draw[gray, ->] (-6,0) -- (6,0) node[anchor=west]{$w$}; + + \draw[thick, ->, purple] (-5, 0) -- (-3, 0); + \draw[thick, ->, blue] (-3, 0) -- (-2, 0); + \draw[thick, ->, red] (-2, 0) -- (0, 0); + \draw[thick, ->, orange] (0, 0) -- (2, 0); + \draw[thick, ->, darkgreen] (2, 0) -- (3, 0); + \draw[thick, ->, cyan] (3, 0) -- (5, 0); + + \node[anchor=south] at (-5,0) {$-\infty$}; + \node[anchor=south] at (-3,0) {$-1/k$}; + \node[anchor=south] at (-2,0) {$-1$}; + \node[anchor=south] at (0,0) {$0$}; + \node[anchor=south] at (2,0) {$1$}; + \node[anchor=south] at (3,0) {$1/k$}; + \node[anchor=south] at (5,0) {$\infty$}; + + \end{scope} + + +\end{tikzpicture} \ No newline at end of file -- cgit v1.2.1 From 2cbc79a82e39702dd78919ac704fae01f50efb12 Mon Sep 17 00:00:00 2001 From: Nicolas Tobler Date: Mon, 30 May 2022 00:33:47 +0200 Subject: split main into section files --- buch/papers/ellfilter/Makefile.inc | 17 +- buch/papers/ellfilter/einleitung.tex | 56 ++++ buch/papers/ellfilter/elliptic.tex | 92 ++++++ buch/papers/ellfilter/jacobi.tex | 189 +++++++++++++ buch/papers/ellfilter/main.tex | 485 +------------------------------- buch/papers/ellfilter/teil0.tex | 22 -- buch/papers/ellfilter/teil1.tex | 55 ---- buch/papers/ellfilter/teil2.tex | 40 --- buch/papers/ellfilter/teil3.tex | 40 --- buch/papers/ellfilter/tschebyscheff.tex | 133 +++++++++ 10 files changed, 483 insertions(+), 646 deletions(-) create mode 100644 buch/papers/ellfilter/einleitung.tex create mode 100644 buch/papers/ellfilter/elliptic.tex create mode 100644 buch/papers/ellfilter/jacobi.tex delete mode 100644 buch/papers/ellfilter/teil0.tex delete mode 100644 buch/papers/ellfilter/teil1.tex delete mode 100644 buch/papers/ellfilter/teil2.tex delete mode 100644 buch/papers/ellfilter/teil3.tex create mode 100644 buch/papers/ellfilter/tschebyscheff.tex diff --git a/buch/papers/ellfilter/Makefile.inc b/buch/papers/ellfilter/Makefile.inc index 8f20278..97e4089 100644 --- a/buch/papers/ellfilter/Makefile.inc +++ b/buch/papers/ellfilter/Makefile.inc @@ -3,12 +3,11 @@ # # (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule # -dependencies-ellfilter = \ - papers/ellfilter/packages.tex \ - papers/ellfilter/main.tex \ - papers/ellfilter/references.bib \ - papers/ellfilter/teil0.tex \ - papers/ellfilter/teil1.tex \ - papers/ellfilter/teil2.tex \ - papers/ellfilter/teil3.tex - +dependencies-ellfilter = \ + papers/ellfilter/packages.tex \ + papers/ellfilter/main.tex \ + papers/ellfilter/references.bib \ + papers/ellfilter/einleitung.tex \ + papers/ellfilter/tschebyscheff.tex \ + papers/ellfilter/jacobi.tex \ + papers/ellfilter/elliptic.tex diff --git a/buch/papers/ellfilter/einleitung.tex b/buch/papers/ellfilter/einleitung.tex new file mode 100644 index 0000000..37fd89f --- /dev/null +++ b/buch/papers/ellfilter/einleitung.tex @@ -0,0 +1,56 @@ +\section{Einleitung} + +% Lineare filter + +% Filter, Signalverarbeitung + + +Der womöglich wichtigste Filtertyp ist das Tiefpassfilter. +Dieses soll im Durchlassbereich unter der Grenzfrequenz $\Omega_p$ unverstärkt durchlassen und alle anderen Frequenzen vollständig auslöschen. + +% Bei der Implementierung von Filtern + +In der Elektrotechnik führen Schaltungen mit linearen Bauelementen wie Kondensatoren, Spulen und Widerständen immer zu linearen zeitinvarianten Systemen (LTI-System von englich \textit{time-invariant system}). +Die Übertragungsfunktion im Frequenzbereich $|H(\Omega)|$ eines solchen Systems ist dabei immer eine rationale Funktion, also eine Division von zwei Polynomen. +Die Polynome habe dabei immer reelle oder komplex-konjugierte Nullstellen. + + +\begin{equation} \label{ellfilter:eq:h_omega} + | H(\Omega)|^2 = \frac{1}{1 + \varepsilon_p^2 F_N^2(w)}, \quad w=\frac{\Omega}{\Omega_p} +\end{equation} + +$\Omega = 2 \pi f$ ist die analoge Frequenz + + +% Linear filter +Damit das Filter implementierbar und stabil ist, muss $H(\Omega)^2$ eine rationale Funktion sein, deren Nullstellen und Pole auf der linken Halbebene liegen. + +$N \in \mathbb{N} $ gibt dabei die Ordnung des Filters vor, also die maximale Anzahl Pole oder Nullstellen. + +Damit ein Filter die Passband Kondition erfüllt muss $|F_N(w)| \leq 1 \forall |w| \leq 1$ und für $|w| \geq 1$ sollte die Funktion möglichst schnell divergieren. +Eine einfaches Polynom, dass das erfüllt, erhalten wir wenn $F_N(w) = w^N$. +Tatsächlich erhalten wir damit das Butterworth Filter, wie in Abbildung \ref{ellfilter:fig:butterworth} ersichtlich. +\begin{figure} + \centering + \input{papers/ellfilter/python/F_N_butterworth.pgf} + \caption{$F_N$ für Butterworth filter. Der grüne Bereich definiert die erlaubten Werte für alle $F_N$-Funktionen.} + \label{ellfilter:fig:butterworth} +\end{figure} + +wenn $F_N(w)$ eine rationale Funktion ist, ist auch $H(\Omega)$ eine rationale Funktion und daher ein lineares Filter. %proof? + +\begin{align} + F_N(w) & = + \begin{cases} + w^N & \text{Butterworth} \\ + T_N(w) & \text{Tschebyscheff, Typ 1} \\ + [k_1 T_N (k^{-1} w^{-1})]^{-1} & \text{Tschebyscheff, Typ 2} \\ + R_N(w, \xi) & \text{Elliptisch (Cauer)} \\ + \end{cases} +\end{align} + +Mit der Ausnahme vom Butterworth filter sind alle Filter nach speziellen Funktionen benannt. +Alle diese Filter sind optimal für unterschiedliche Anwendungsgebiete. +Das Butterworth-Filter, zum Beispiel, ist maximal flach im Durchlassbereich. +Das Tschebyscheff-1 Filter sind maximal steil für eine definierte Welligkeit im Durchlassbereich, währendem es im Sperrbereich monoton abfallend ist. +Es scheint so als sind gewisse Eigenschaften dieser speziellen Funktionen verantwortlich für die Optimalität dieser Filter. diff --git a/buch/papers/ellfilter/elliptic.tex b/buch/papers/ellfilter/elliptic.tex new file mode 100644 index 0000000..88bfbfe --- /dev/null +++ b/buch/papers/ellfilter/elliptic.tex @@ -0,0 +1,92 @@ +\section{Elliptische rationale Funktionen} + +Kommen wir nun zum eigentlichen Teil dieses Papers, den elliptischen rationalen Funktionen +\begin{align} + R_N(\xi, w) &= \cd \left(N~f_1(\xi)~\cd^{-1}(w, 1/\xi), f_2(\xi)\right) \\ + &= \cd \left(N~\frac{K_1}{K}~\cd^{-1}(w, k), k_1)\right) , \quad k= 1/\xi, k_1 = 1/f(\xi) \\ + &= \cd \left(N~K_1~z , k_1 \right), \quad w= \cd(z K, k) +\end{align} + + +sieht ähnlich aus wie die trigonometrische Darstellung der Tschebyschef-Polynome \eqref{ellfilter:eq:chebychef_polynomials} +Anstelle vom Kosinus kommt hier die $\cd$-Funktion zum Einsatz. +Die Ordnungszahl $N$ kommt auch als Faktor for. +Zusätzlich werden noch zwei verschiedene elliptische Module $k$ und $k_1$ gebraucht. + + + +Sinus entspricht $\sn$ + +Damit die Nullstellen an ähnlichen Positionen zu liegen kommen wie bei den Tschebyscheff-Polynomen, muss die $\cd$-Funktion gewählt werden. + +Die $\cd^{-1}(w, k)$-Funktion ist um $K$ verschoben zur $\sn^{-1}(w, k)$-Funktion, wie ersichtlich in Abbildung \ref{ellfilter:fig:cd}. +\begin{figure} + \centering + \input{papers/ellfilter/tikz/cd.tikz.tex} + \caption{ + $z$-Ebene der Funktion $z = \sn^{-1}(w, k)$. + Die Funktion ist in der realen Achse $4K$-periodisch und in der imaginären Achse $2jK^\prime$-periodisch. + } + \label{ellfilter:fig:cd} +\end{figure} +Auffallend ist, dass sich alle Nullstellen und Polstellen um $K$ verschoben haben. + +Durch das Konzept vom fundamentalen Rechteck, siehe Abbildung \ref{ellfilter:fig:fundamental_rectangle} können für alle inversen Jaccobi elliptischen Funktionen die Positionen der Null- und Polstellen anhand eines Diagramms ermittelt werden. +Der erste Buchstabe bestimmt die Position der Nullstelle und der zweite Buchstabe die Polstelle. +\begin{figure} + \centering + \input{papers/ellfilter/tikz/fundamental_rectangle.tikz.tex} + \caption{ + Fundamentales Rechteck der inversen Jaccobi elliptischen Funktionen. + } + \label{ellfilter:fig:fundamental_rectangle} +\end{figure} + +Auffallend an der $w = \sn(z, k)$-Funktion ist, dass sich $w$ auf der reellen Achse wie der Kosinus immer zwischen $-1$ und $1$ bewegt, während bei $\mathrm{Im(z) = K^\prime}$ die Werte zwischen $\pm 1/k$ und $\pm \infty$ verlaufen. +Die Funktion hat also Equirippel-Verhalten um $w=0$ und um $w=\pm \infty$. +Falls es möglich ist diese Werte abzufahren im Sti der Tschebyscheff-Polynome, kann ein Filter gebaut werden, dass Equirippel-Verhalten im Durchlass- und Sperrbereich aufweist. + + + +Analog zu Abbildung \ref{ellfilter:fig:arccos2} können wir auch bei den elliptisch rationalen Funktionen die komplexe $z$-Ebene betrachten, wie ersichtlich in Abbildung \ref{ellfilter:fig:cd2}, um die besser zu verstehen. +\begin{figure} + \centering + \input{papers/ellfilter/tikz/cd2.tikz.tex} + \caption{ + $z_1$-Ebene der elliptischen rationalen Funktionen. + Je grösser die Ordnung $N$ gewählt wird, desto mehr Nullstellen passiert. + } + \label{ellfilter:fig:cd2} +\end{figure} +% Da die $\cd^{-1}$-Funktion + + + +\begin{figure} + \centering + \input{papers/ellfilter/python/F_N_elliptic.pgf} + \caption{$F_N$ für ein elliptischs filter.} + \label{ellfilter:fig:elliptic} +\end{figure} + +\subsection{Degree Equation} + +Der $\cd^{-1}$ Term muss so verzogen werden, dass die umgebene $\cd$-Funktion die Nullstellen und Pole trifft. +Dies trifft ein wenn die Degree Equation erfüllt ist. + +\begin{equation} + N \frac{K^\prime}{K} = \frac{K^\prime_1}{K_1} +\end{equation} + + +Leider ist das lösen dieser Gleichung nicht trivial. +Die Rechnung wird in \ref{ellfilter:bib:orfanidis} im Detail angeschaut. + + +\subsection{Polynome?} + +Bei den Tschebyscheff-Polynomen haben wir gesehen, dass die Trigonometrische Formel zu einfachen Polynomen umgewandelt werden kann. +Im gegensatz zum $\cos^{-1}$ hat der $\cd^{-1}$ nicht nur Nullstellen sondern auch Pole. +Somit entstehen bei den elliptischen rationalen Funktionen, wie es der name auch deutet, rationale Funktionen, also ein Bruch von zwei Polynomen. + +Da Transformationen einer rationalen Funktionen mit Grundrechenarten, wie es in \eqref{ellfilter:eq:h_omega} der Fall ist, immer noch rationale Funktionen ergeben, stellt dies kein Problem für die Implementierung dar. diff --git a/buch/papers/ellfilter/jacobi.tex b/buch/papers/ellfilter/jacobi.tex new file mode 100644 index 0000000..6a208fa --- /dev/null +++ b/buch/papers/ellfilter/jacobi.tex @@ -0,0 +1,189 @@ +\section{Jacobische elliptische Funktionen} + +%TODO $z$ or $u$ for parameter? + +Für das elliptische Filter wird statt der, für das Tschebyscheff-Filter benutzen Kreis-Trigonometrie die elliptischen Funktionen gebraucht. +Der Begriff elliptische Funktion wird für sehr viele Funktionen gebraucht, daher ist es hier wichtig zu erwähnen, dass es ausschliesslich um die Jacobischen elliptischen Funktionen geht. + +Im Wesentlichen erweitern die Jacobi elliptischen Funktionen die trigonometrische Funktionen für Ellipsen. +Zum Beispiel gibt es analog zum Sinus den elliptischen $\sn(z, k)$. +Im Gegensatz zum den trigonometrischen Funktionen haben die elliptischen Funktionen zwei parameter. +Zum einen gibt es den \textit{elliptische Modul} $k$, der die Exzentrizität der Ellipse parametrisiert. +Zum andern das Winkelargument $z$. +Im Kreis ist der Radius für alle Winkel konstant, bei Ellipsen ändert sich das. +Dies hat zur Folge, dass bei einer Ellipse die Kreisbodenstrecke nicht linear zum Winkel verläuft. +Darum kann hier nicht der gewohnte Winkel verwendet werden. +Das Winkelargument $z$ kann durch das elliptische Integral erster Art +\begin{equation} + z + = + F(\phi, k) + = + \int_{0}^{\phi} + \frac{ + d\theta + }{ + \sqrt{ + 1-k^2 \sin^2 \theta + } + } + = + \int_{0}^{\phi} + \frac{ + dt + }{ + \sqrt{ + (1-t^2)(1-k^2 t^2) + } + } %TODO which is right? are both functions from phi? +\end{equation} +mit dem Winkel $\phi$ in Verbindung liegt. + +Dabei wird das vollständige und unvollständige Elliptische integral unterschieden. +Beim vollständigen Integral +\begin{equation} + K(k) + = + \int_{0}^{\pi / 2} + \frac{ + d\theta + }{ + \sqrt{ + 1-k^2 \sin^2 \theta + } + } +\end{equation} +wird über ein viertel Ellipsenbogen integriert also bis $\phi=\pi/2$ und liefert das Winkelargument für eine Vierteldrehung. +Die Zahl wird oft auch abgekürzt mit $K = K(k)$ und ist für das elliptische Filter sehr relevant. +Alle elliptishen Funktionen sind somit $4K$-periodisch. + +Neben dem $\sn$ gibt es zwei weitere basis-elliptische Funktionen $\cn$ und $\dn$. +Dazu kommen noch weitere abgeleitete Funktionen, die durch Quotienten und Kehrwerte dieser Funktionen zustande kommen. +Insgesamt sind es die zwölf Funktionen +\begin{equation*} + \sn \quad + \ns \quad + \scelliptic \quad + \sd \quad + \cn \quad + \nc \quad + \cs \quad + \cd \quad + \dn \quad + \nd \quad + \ds \quad + \dc. +\end{equation*} + +Die Jacobischen elliptischen Funktionen können mit der inversen Funktion des kompletten elliptischen Integrals erster Art +\begin{equation} + \phi = F^{-1}(z, k) +\end{equation} +definiert werden. Dabei ist zu beachten dass nur das $z$ Argument der Funktion invertiert wird, also +\begin{equation} + z = F(\phi, k) + \Leftrightarrow + \phi = F^{-1}(z, k). +\end{equation} +Mithilfe von $F^{-1}$ kann zum Beispiel $sn^{-1}$ mit dem Elliptischen integral dargestellt werden: +\begin{equation} + \sin(\phi) + = + \sin \left( F^{-1}(z, k) \right) + = + \sn(z, k) + = + w +\end{equation} + +\begin{equation} + \phi + = + F^{-1}(z, k) + = + \sin^{-1} \big( \sn (z, k ) \big) + = + \sin^{-1} ( w ) +\end{equation} + +\begin{equation} + F(\phi, k) + = + z + = + F( \sin^{-1} \big( \sn (z, k ) \big) , k) + = + F( \sin^{-1} ( w ), k) +\end{equation} + +\begin{equation} + \sn^{-1}(w, k) + = + F(\phi, k), + \quad + \phi = \sin^{-1}(w) +\end{equation} + +\begin{align} + \sn^{-1}(w, k) + & = + \int_{0}^{\phi} + \frac{ + d\theta + }{ + \sqrt{ + 1-k^2 \sin^2 \theta + } + }, + \quad + \phi = \sin^{-1}(w) + \\ + & = + \int_{0}^{w} + \frac{ + dt + }{ + \sqrt{ + (1-t^2)(1-k^2 t^2) + } + } +\end{align} + +Beim $\cos^{-1}(x)$ haben wir gesehen, dass die analytische Fortsetzung bei $x < -1$ und $x > 1$ rechtwinklig in die Komplexen zahlen wandert. +Wenn man das gleiche mit $\sn^{-1}(w, k)$ macht, erkennt man zwei interessante Stellen. +Die erste ist die gleiche wie beim $\cos^{-1}(x)$ nämlich bei $t = \pm 1$. +Der erste Term unter der Wurzel wird dann negativ, während der zweite noch positiv ist, da $k \leq 1$. +\begin{equation} + \frac{ + 1 + }{ + \sqrt{ + (1-t^2)(1-k^2 t^2) + } + } + \in \mathbb{R} + \quad \forall \quad + -1 \leq t \leq 1 +\end{equation} +Die zweite stelle passiert wenn beide Faktoren unter der Wurzel negativ werden, was bei $t = 1/k$ der Fall ist. + + + + +Funktion in relle und komplexe Richtung periodisch + +In der reellen Richtung ist sie $4K(k)$-periodisch und in der imaginären Richtung $4K^\prime(k)$-periodisch. + + + +%TODO sn^{-1} grafik + +\begin{figure} + \centering + \input{papers/ellfilter/tikz/sn.tikz.tex} + \caption{ + $z$-Ebene der Funktion $z = \sn^{-1}(w, k)$. + Die Funktion ist in der realen Achse $4K$-periodisch und in der imaginären Achse $2jK^\prime$-periodisch. + } + % \label{ellfilter:fig:cd2} +\end{figure} diff --git a/buch/papers/ellfilter/main.tex b/buch/papers/ellfilter/main.tex index e9d6aba..c58dfa7 100644 --- a/buch/papers/ellfilter/main.tex +++ b/buch/papers/ellfilter/main.tex @@ -8,485 +8,10 @@ \begin{refsection} \chapterauthor{Nicolas Tobler} +\input{papers/ellfilter/einleitung.tex} +\input{papers/ellfilter/tschebyscheff.tex} +\input{papers/ellfilter/jacobi.tex} +\input{papers/ellfilter/elliptic.tex} -\section{Einleitung} - -% Lineare filter - -% Filter, Signalverarbeitung - - -Der womöglich wichtigste Filtertyp ist das Tiefpassfilter. -Dieses soll im Durchlassbereich unter der Grenzfrequenz $\Omega_p$ unverstärkt durchlassen und alle anderen Frequenzen vollständig auslöschen. - -% Bei der Implementierung von Filtern - -In der Elektrotechnik führen Schaltungen mit linearen Bauelementen wie Kondensatoren, Spulen und Widerständen immer zu linearen zeitinvarianten Systemen (LTI-System von englich \textit{time-invariant system}). -Die Übertragungsfunktion im Frequenzbereich $|H(\Omega)|$ eines solchen Systems ist dabei immer eine rationale Funktion, also eine Division von zwei Polynomen. -Die Polynome habe dabei immer reelle oder komplex-konjugierte Nullstellen. - - -\begin{equation} \label{ellfilter:eq:h_omega} - | H(\Omega)|^2 = \frac{1}{1 + \varepsilon_p^2 F_N^2(w)}, \quad w=\frac{\Omega}{\Omega_p} -\end{equation} - -$\Omega = 2 \pi f$ ist die analoge Frequenz - - -% Linear filter -Damit das Filter implementierbar und stabil ist, muss $H(\Omega)^2$ eine rationale Funktion sein, deren Nullstellen und Pole auf der linken Halbebene liegen. - -$N \in \mathbb{N} $ gibt dabei die Ordnung des Filters vor, also die maximale Anzahl Pole oder Nullstellen. - -Damit ein Filter die Passband Kondition erfüllt muss $|F_N(w)| \leq 1 \forall |w| \leq 1$ und für $|w| \geq 1$ sollte die Funktion möglichst schnell divergieren. -Eine einfaches Polynom, dass das erfüllt, erhalten wir wenn $F_N(w) = w^N$. -Tatsächlich erhalten wir damit das Butterworth Filter, wie in Abbildung \ref{ellfilter:fig:butterworth} ersichtlich. -\begin{figure} - \centering - \input{papers/ellfilter/python/F_N_butterworth.pgf} - \caption{$F_N$ für Butterworth filter. Der grüne Bereich definiert die erlaubten Werte für alle $F_N$-Funktionen.} - \label{ellfilter:fig:butterworth} -\end{figure} - -wenn $F_N(w)$ eine rationale Funktion ist, ist auch $H(\Omega)$ eine rationale Funktion und daher ein lineares Filter. %proof? - -\begin{align} - F_N(w) & = - \begin{cases} - w^N & \text{Butterworth} \\ - T_N(w) & \text{Tschebyscheff, Typ 1} \\ - [k_1 T_N (k^{-1} w^{-1})]^{-1} & \text{Tschebyscheff, Typ 2} \\ - R_N(w, \xi) & \text{Elliptisch (Cauer)} \\ - \end{cases} -\end{align} - -Mit der Ausnahme vom Butterworth filter sind alle Filter nach speziellen Funktionen benannt. -Alle diese Filter sind optimal für unterschiedliche Anwendungsgebiete. -Das Butterworth-Filter, zum Beispiel, ist maximal flach im Durchlassbereich. -Das Tschebyscheff-1 Filter sind maximal steil für eine definierte Welligkeit im Durchlassbereich, währendem es im Sperrbereich monoton abfallend ist. -Es scheint so als sind gewisse Eigenschaften dieser speziellen Funktionen verantwortlich für die Optimalität dieser Filter. - -\section{Tschebyscheff-Filter} - -Als Einstieg betrachent Wir das Tschebyscheff-Filter, welches sehr verwand ist mit dem elliptischen Filter. -Genauer ausgedrückt sind die Tschebyscheff-1 und -2 Filter Spezialfälle davon. - -Der Name des Filters deutet schon an, dass die Tschebyscheff-Polynome $T_N$ für das Filter relevant sind: -\begin{align} - T_{0}(x)&=1\\ - T_{1}(x)&=x\\ - T_{2}(x)&=2x^{2}-1\\ - T_{3}(x)&=4x^{3}-3x\\ - T_{n+1}(x)&=2x~T_{n}(x)-T_{n-1}(x). -\end{align} -Bemerkenswert ist, dass die Polynome im Intervall $[-1, 1]$ mit der trigonometrischen Funktion -\begin{align} \label{ellfilter:eq:chebychef_polynomials} - T_N(w) &= \cos \left( N \cos^{-1}(w) \right) \\ - &= \cos \left(N~z \right), \quad w= \cos(z) -\end{align} -übereinstimmt. -Der Zusammenhang lässt sich mit den Doppel- und Mehrfachwinkelfunktionen der trigonometrischen Funktionen erklären. -Abbildung \ref{ellfilter:fig:chebychef_polynomials} zeigt einige Tschebyscheff-Polynome. -\begin{figure} - \centering - \input{papers/ellfilter/python/F_N_chebychev2.pgf} - \caption{Die Tschebyscheff-Polynome $C_N$.} - \label{ellfilter:fig:chebychef_polynomials} -\end{figure} -Da der Kosinus begrenzt zwischen $-1$ und $1$ ist, sind auch die Tschebyscheff-Polynome begrenzt. -Geht man aber über das Intervall $[-1, 1]$ hinaus, divergieren die Funktionen mit zunehmender Ordnung immer steiler gegen $\pm \infty$. -Diese Eigenschaft ist sehr nützlich für ein Filter. -Wenn wir die Tschebyscheff-Polynome quadrieren, passen sie perfekt in die Voraussetzungen für Filterfunktionen, wie es Abbildung \ref{ellfiter:fig:chebychef} demonstriert. -\begin{figure} - \centering - \input{papers/ellfilter/python/F_N_chebychev.pgf} - \caption{Die Tschebyscheff-Polynome füllen den erlaubten Bereich besser, und erhalten dadurch eine steilere Flanke im Sperrbereich.} - \label{ellfiter:fig:chebychef} -\end{figure} - - -Die analytische Fortsetzung von \eqref{ellfilter:eq:chebychef_polynomials} über das Intervall $[-1,1]$ hinaus stimmt mit den Polynomen überein, wie es zu erwarten ist. -Die genauere Betrachtung wird uns dann helfen die elliptischen Filter besser zu verstehen. - -Starten wir mit der Funktion, die als erstes auf $w$ angewendet wird, dem Arcuscosinus. -Die invertierte Funktion des Kosinus kann als definites Integral dargestellt werden: -\begin{align} - \cos^{-1}(x) - &= - \int_{x}^{1} - \frac{ - dz - }{ - \sqrt{ - 1-z^2 - } - }\\ - &= - \int_{0}^{x} - \frac{ - -1 - }{ - \sqrt{ - 1-z^2 - } - } - ~dz - + \frac{\pi}{2} -\end{align} -Der Integrand oder auch die Ableitung -\begin{equation} - \frac{ - -1 - }{ - \sqrt{ - 1-z^2 - } - } -\end{equation} -bestimmt dabei die Richtung, in der die Funktion verläuft. -Der reelle Arcuscosinus is bekanntlich nur für $|z| \leq 1$ definiert. -Hier bleibt der Wert unter der Wurzel positiv und das Integral liefert reelle Werte. -Doch wenn $|z|$ über 1 hinausgeht, wird der Term unter der Wurzel negativ. -Durch die Quadratwurzel entstehen für den Integranden zwei rein komplexe Lösungen. -Der Wert des Arcuscosinus verlässt also bei $z= \pm 1$ den reellen Zahlenstrahl und knickt in die komplexe Ebene ab. -Abbildung \ref{ellfilter:fig:arccos} zeigt den $\arccos$ in der komplexen Ebene. -\begin{figure} - \centering - \input{papers/ellfilter/tikz/arccos.tikz.tex} - \caption{Die Funktion $z = \cos^{-1}(w)$ dargestellt in der komplexen ebene.} - \label{ellfilter:fig:arccos} -\end{figure} -Wegen der Periodizität des Kosinus ist auch der Arcuscosinus $2\pi$-periodisch und es entstehen periodische Nullstellen. -% \begin{equation} -% \frac{ -% 1 -% }{ -% \sqrt{ -% 1-z^2 -% } -% } -% \in \mathbb{R} -% \quad -% \forall -% \quad -% -1 \leq z \leq 1 -% \end{equation} -% \begin{equation} -% \frac{ -% 1 -% }{ -% \sqrt{ -% 1-z^2 -% } -% } -% = i \xi \quad | \quad \xi \in \mathbb{R} -% \quad -% \forall -% \quad -% z \leq -1 \cup z \geq 1 -% \end{equation} - -Die Tschebyscheff-Polynome skalieren diese Nullstellen mit dem Ordnungsfaktor $N$, wie dargestellt in Abbildung \ref{ellfilter:fig:arccos2}. -\begin{figure} - \centering - \input{papers/ellfilter/tikz/arccos2.tikz.tex} - \caption{ - $z_1=N \cos^{-1}(w)$-Ebene der Tschebyscheff-Funktion. - Die eingefärbten Pfade sind Verläufe von $w~\forall~[-\infty, \infty]$ für verschiedene Ordnungen $N$. - Je grösser die Ordnung $N$ gewählt wird, desto mehr Nullstellen werden passiert. - } - \label{ellfilter:fig:arccos2} -\end{figure} -Somit passert $\cos( N~\cos^{-1}(w))$ im Intervall $[-1, 1]$ $N$ Nullstellen. -Durch die spezielle Anordnung der Nullstellen hat die Funktion Equirippel-Verhalten und ist dennoch ein Polynom, was sich perfekt für linear Filter eignet. - -\section{Jacobische elliptische Funktionen} - -%TODO $z$ or $u$ for parameter? - -Für das elliptische Filter wird statt der, für das Tschebyscheff-Filter benutzen Kreis-Trigonometrie die elliptischen Funktionen gebraucht. -Der Begriff elliptische Funktion wird für sehr viele Funktionen gebraucht, daher ist es hier wichtig zu erwähnen, dass es ausschliesslich um die Jacobischen elliptischen Funktionen geht. - -Im Wesentlichen erweitern die Jacobi elliptischen Funktionen die trigonometrische Funktionen für Ellipsen. -Zum Beispiel gibt es analog zum Sinus den elliptischen $\sn(z, k)$. -Im Gegensatz zum den trigonometrischen Funktionen haben die elliptischen Funktionen zwei parameter. -Zum einen gibt es den \textit{elliptische Modul} $k$, der die Exzentrizität der Ellipse parametrisiert. -Zum andern das Winkelargument $z$. -Im Kreis ist der Radius für alle Winkel konstant, bei Ellipsen ändert sich das. -Dies hat zur Folge, dass bei einer Ellipse die Kreisbodenstrecke nicht linear zum Winkel verläuft. -Darum kann hier nicht der gewohnte Winkel verwendet werden. -Das Winkelargument $z$ kann durch das elliptische Integral erster Art -\begin{equation} - z - = - F(\phi, k) - = - \int_{0}^{\phi} - \frac{ - d\theta - }{ - \sqrt{ - 1-k^2 \sin^2 \theta - } - } - = - \int_{0}^{\phi} - \frac{ - dt - }{ - \sqrt{ - (1-t^2)(1-k^2 t^2) - } - } %TODO which is right? are both functions from phi? -\end{equation} -mit dem Winkel $\phi$ in Verbindung liegt. - -Dabei wird das vollständige und unvollständige Elliptische integral unterschieden. -Beim vollständigen Integral -\begin{equation} - K(k) - = - \int_{0}^{\pi / 2} - \frac{ - d\theta - }{ - \sqrt{ - 1-k^2 \sin^2 \theta - } - } -\end{equation} -wird über ein viertel Ellipsenbogen integriert also bis $\phi=\pi/2$ und liefert das Winkelargument für eine Vierteldrehung. -Die Zahl wird oft auch abgekürzt mit $K = K(k)$ und ist für das elliptische Filter sehr relevant. -Alle elliptishen Funktionen sind somit $4K$-periodisch. - -Neben dem $\sn$ gibt es zwei weitere basis-elliptische Funktionen $\cn$ und $\dn$. -Dazu kommen noch weitere abgeleitete Funktionen, die durch Quotienten und Kehrwerte dieser Funktionen zustande kommen. -Insgesamt sind es die zwölf Funktionen -\begin{equation*} - \sn \quad - \ns \quad - \scelliptic \quad - \sd \quad - \cn \quad - \nc \quad - \cs \quad - \cd \quad - \dn \quad - \nd \quad - \ds \quad - \dc. -\end{equation*} - -Die Jacobischen elliptischen Funktionen können mit der inversen Funktion des kompletten elliptischen Integrals erster Art -\begin{equation} - \phi = F^{-1}(z, k) -\end{equation} -definiert werden. Dabei ist zu beachten dass nur das $z$ Argument der Funktion invertiert wird, also -\begin{equation} - z = F(\phi, k) - \Leftrightarrow - \phi = F^{-1}(z, k). -\end{equation} -Mithilfe von $F^{-1}$ kann zum Beispiel $sn^{-1}$ mit dem Elliptischen integral dargestellt werden: -\begin{equation} - \sin(\phi) - = - \sin \left( F^{-1}(z, k) \right) - = - \sn(z, k) - = - w -\end{equation} - -\begin{equation} - \phi - = - F^{-1}(z, k) - = - \sin^{-1} \big( \sn (z, k ) \big) - = - \sin^{-1} ( w ) -\end{equation} - -\begin{equation} - F(\phi, k) - = - z - = - F( \sin^{-1} \big( \sn (z, k ) \big) , k) - = - F( \sin^{-1} ( w ), k) -\end{equation} - -\begin{equation} - \sn^{-1}(w, k) - = - F(\phi, k), - \quad - \phi = \sin^{-1}(w) -\end{equation} - -\begin{align} - \sn^{-1}(w, k) - & = - \int_{0}^{\phi} - \frac{ - d\theta - }{ - \sqrt{ - 1-k^2 \sin^2 \theta - } - }, - \quad - \phi = \sin^{-1}(w) - \\ - & = - \int_{0}^{w} - \frac{ - dt - }{ - \sqrt{ - (1-t^2)(1-k^2 t^2) - } - } -\end{align} - -Beim $\cos^{-1}(x)$ haben wir gesehen, dass die analytische Fortsetzung bei $x < -1$ und $x > 1$ rechtwinklig in die Komplexen zahlen wandert. -Wenn man das gleiche mit $\sn^{-1}(w, k)$ macht, erkennt man zwei interessante Stellen. -Die erste ist die gleiche wie beim $\cos^{-1}(x)$ nämlich bei $t = \pm 1$. -Der erste Term unter der Wurzel wird dann negativ, während der zweite noch positiv ist, da $k \leq 1$. -\begin{equation} - \frac{ - 1 - }{ - \sqrt{ - (1-t^2)(1-k^2 t^2) - } - } - \in \mathbb{R} - \quad \forall \quad - -1 \leq t \leq 1 -\end{equation} -Die zweite stelle passiert wenn beide Faktoren unter der Wurzel negativ werden, was bei $t = 1/k$ der Fall ist. - - - - -Funktion in relle und komplexe Richtung periodisch - -In der reellen Richtung ist sie $4K(k)$-periodisch und in der imaginären Richtung $4K^\prime(k)$-periodisch. - - - -%TODO sn^{-1} grafik - -\begin{figure} - \centering - \input{papers/ellfilter/tikz/sn.tikz.tex} - \caption{ - $z$-Ebene der Funktion $z = \sn^{-1}(w, k)$. - Die Funktion ist in der realen Achse $4K$-periodisch und in der imaginären Achse $2jK^\prime$-periodisch. - } - % \label{ellfilter:fig:cd2} -\end{figure} - -\section{Elliptische rationale Funktionen} - -Kommen wir nun zum eigentlichen Teil dieses Papers, den elliptischen rationalen Funktionen -\begin{align} - R_N(\xi, w) &= \cd \left(N~f_1(\xi)~\cd^{-1}(w, 1/\xi), f_2(\xi)\right) \\ - &= \cd \left(N~\frac{K_1}{K}~\cd^{-1}(w, k), k_1)\right) , \quad k= 1/\xi, k_1 = 1/f(\xi) \\ - &= \cd \left(N~K_1~z , k_1 \right), \quad w= \cd(z K, k) -\end{align} - - -sieht ähnlich aus wie die trigonometrische Darstellung der Tschebyschef-Polynome \eqref{ellfilter:eq:chebychef_polynomials} -Anstelle vom Kosinus kommt hier die $\cd$-Funktion zum Einsatz. -Die Ordnungszahl $N$ kommt auch als Faktor for. -Zusätzlich werden noch zwei verschiedene elliptische Module $k$ und $k_1$ gebraucht. - - - -Sinus entspricht $\sn$ - -Damit die Nullstellen an ähnlichen Positionen zu liegen kommen wie bei den Tschebyscheff-Polynomen, muss die $\cd$-Funktion gewählt werden. - -Die $\cd^{-1}(w, k)$-Funktion ist um $K$ verschoben zur $\sn^{-1}(w, k)$-Funktion, wie ersichtlich in Abbildung \ref{ellfilter:fig:cd}. -\begin{figure} - \centering - \input{papers/ellfilter/tikz/cd.tikz.tex} - \caption{ - $z$-Ebene der Funktion $z = \sn^{-1}(w, k)$. - Die Funktion ist in der realen Achse $4K$-periodisch und in der imaginären Achse $2jK^\prime$-periodisch. - } - \label{ellfilter:fig:cd} -\end{figure} -Auffallend ist, dass sich alle Nullstellen und Polstellen um $K$ verschoben haben. - -Durch das Konzept vom fundamentalen Rechteck, siehe Abbildung \ref{ellfilter:fig:fundamental_rectangle} können für alle inversen Jaccobi elliptischen Funktionen die Positionen der Null- und Polstellen anhand eines Diagramms ermittelt werden. -Der erste Buchstabe bestimmt die Position der Nullstelle und der zweite Buchstabe die Polstelle. -\begin{figure} - \centering - \input{papers/ellfilter/tikz/fundamental_rectangle.tikz.tex} - \caption{ - Fundamentales Rechteck der inversen Jaccobi elliptischen Funktionen. - } - \label{ellfilter:fig:fundamental_rectangle} -\end{figure} - -Auffallend an der $w = \sn(z, k)$-Funktion ist, dass sich $w$ auf der reellen Achse wie der Kosinus immer zwischen $-1$ und $1$ bewegt, während bei $\mathrm{Im(z) = K^\prime}$ die Werte zwischen $\pm 1/k$ und $\pm \infty$ verlaufen. -Die Funktion hat also Equirippel-Verhalten um $w=0$ und um $w=\pm \infty$. -Falls es möglich ist diese Werte abzufahren im Sti der Tschebyscheff-Polynome, kann ein Filter gebaut werden, dass Equirippel-Verhalten im Durchlass- und Sperrbereich aufweist. - - - -Analog zu Abbildung \ref{ellfilter:fig:arccos2} können wir auch bei den elliptisch rationalen Funktionen die komplexe $z$-Ebene betrachten, wie ersichtlich in Abbildung \ref{ellfilter:fig:cd2}, um die besser zu verstehen. -\begin{figure} - \centering - \input{papers/ellfilter/tikz/cd2.tikz.tex} - \caption{ - $z_1$-Ebene der elliptischen rationalen Funktionen. - Je grösser die Ordnung $N$ gewählt wird, desto mehr Nullstellen passiert. - } - \label{ellfilter:fig:cd2} -\end{figure} -% Da die $\cd^{-1}$-Funktion - - - -\begin{figure} - \centering - \input{papers/ellfilter/python/F_N_elliptic.pgf} - \caption{$F_N$ für ein elliptischs filter.} - \label{ellfilter:fig:elliptic} -\end{figure} - -\subsection{Degree Equation} - -Der $\cd^{-1}$ Term muss so verzogen werden, dass die umgebene $\cd$-Funktion die Nullstellen und Pole trifft. -Dies trifft ein wenn die Degree Equation erfüllt ist. - -\begin{equation} - N \frac{K^\prime}{K} = \frac{K^\prime_1}{K_1} -\end{equation} - - -Leider ist das lösen dieser Gleichung nicht trivial. -Die Rechnung wird in \ref{ellfilter:bib:orfanidis} im Detail angeschaut. - - -\subsection{Polynome?} - -Bei den Tschebyscheff-Polynomen haben wir gesehen, dass die Trigonometrische Formel zu einfachen Polynomen umgewandelt werden kann. -Im gegensatz zum $\cos^{-1}$ hat der $\cd^{-1}$ nicht nur Nullstellen sondern auch Pole. -Somit entstehen bei den elliptischen rationalen Funktionen, wie es der name auch deutet, rationale Funktionen, also ein Bruch von zwei Polynomen. - -Da Transformationen einer rationalen Funktionen mit Grundrechenarten, wie es in \eqref{ellfilter:eq:h_omega} der Fall ist, immer noch rationale Funktionen ergeben, stellt dies kein Problem für die Implementierung dar. - -\input{papers/ellfilter/teil0.tex} -\input{papers/ellfilter/teil1.tex} -\input{papers/ellfilter/teil2.tex} -\input{papers/ellfilter/teil3.tex} - -% \printbibliography[heading=subbibliography] +\printbibliography[heading=subbibliography] \end{refsection} diff --git a/buch/papers/ellfilter/teil0.tex b/buch/papers/ellfilter/teil0.tex deleted file mode 100644 index 6204bc0..0000000 --- a/buch/papers/ellfilter/teil0.tex +++ /dev/null @@ -1,22 +0,0 @@ -% -% einleitung.tex -- Beispiel-File für die Einleitung -% -% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil -% -% \section{Teil 0\label{ellfilter:section:teil0}} -% \rhead{Teil 0} -% Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam -% nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam -% erat, sed diam voluptua \cite{ellfilter:bibtex}. -% At vero eos et accusam et justo duo dolores et ea rebum. -% Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum -% dolor sit amet. - -% Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam -% nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam -% erat, sed diam voluptua. -% At vero eos et accusam et justo duo dolores et ea rebum. Stet clita -% kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit -% amet. - - diff --git a/buch/papers/ellfilter/teil1.tex b/buch/papers/ellfilter/teil1.tex deleted file mode 100644 index 4760473..0000000 --- a/buch/papers/ellfilter/teil1.tex +++ /dev/null @@ -1,55 +0,0 @@ -% -% teil1.tex -- Beispiel-File für das Paper -% -% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil -% -% \section{Teil 1 -% \label{ellfilter:section:teil1}} -% \rhead{Problemstellung} -% Sed ut perspiciatis unde omnis iste natus error sit voluptatem -% accusantium doloremque laudantium, totam rem aperiam, eaque ipsa -% quae ab illo inventore veritatis et quasi architecto beatae vitae -% dicta sunt explicabo. -% Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit -% aut fugit, sed quia consequuntur magni dolores eos qui ratione -% voluptatem sequi nesciunt -% \begin{equation} -% \int_a^b x^2\, dx -% = -% \left[ \frac13 x^3 \right]_a^b -% = -% \frac{b^3-a^3}3. -% \label{ellfilter:equation1} -% \end{equation} -% Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, -% consectetur, adipisci velit, sed quia non numquam eius modi tempora -% incidunt ut labore et dolore magnam aliquam quaerat voluptatem. - -% Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis -% suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? -% Quis autem vel eum iure reprehenderit qui in ea voluptate velit -% esse quam nihil molestiae consequatur, vel illum qui dolorem eum -% fugiat quo voluptas nulla pariatur? - -% \subsection{De finibus bonorum et malorum -% \label{ellfilter:subsection:finibus}} -% At vero eos et accusamus et iusto odio dignissimos ducimus qui -% blanditiis praesentium voluptatum deleniti atque corrupti quos -% dolores et quas molestias excepturi sint occaecati cupiditate non -% provident, similique sunt in culpa qui officia deserunt mollitia -% animi, id est laborum et dolorum fuga \eqref{000tempmlate:equation1}. - -% Et harum quidem rerum facilis est et expedita distinctio -% \ref{ellfilter:section:loesung}. -% Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil -% impedit quo minus id quod maxime placeat facere possimus, omnis -% voluptas assumenda est, omnis dolor repellendus -% \ref{ellfilter:section:folgerung}. -% Temporibus autem quibusdam et aut officiis debitis aut rerum -% necessitatibus saepe eveniet ut et voluptates repudiandae sint et -% molestiae non recusandae. -% Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis -% voluptatibus maiores alias consequatur aut perferendis doloribus -% asperiores repellat. - - diff --git a/buch/papers/ellfilter/teil2.tex b/buch/papers/ellfilter/teil2.tex deleted file mode 100644 index 39dd5d7..0000000 --- a/buch/papers/ellfilter/teil2.tex +++ /dev/null @@ -1,40 +0,0 @@ -% -% teil2.tex -- Beispiel-File für teil2 -% -% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil -% -% \section{Teil 2 -% \label{ellfilter:section:teil2}} -% \rhead{Teil 2} -% Sed ut perspiciatis unde omnis iste natus error sit voluptatem -% accusantium doloremque laudantium, totam rem aperiam, eaque ipsa -% quae ab illo inventore veritatis et quasi architecto beatae vitae -% dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit -% aspernatur aut odit aut fugit, sed quia consequuntur magni dolores -% eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam -% est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci -% velit, sed quia non numquam eius modi tempora incidunt ut labore -% et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima -% veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, -% nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure -% reprehenderit qui in ea voluptate velit esse quam nihil molestiae -% consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla -% pariatur? - -% \subsection{De finibus bonorum et malorum -% \label{ellfilter:subsection:bonorum}} -% At vero eos et accusamus et iusto odio dignissimos ducimus qui -% blanditiis praesentium voluptatum deleniti atque corrupti quos -% dolores et quas molestias excepturi sint occaecati cupiditate non -% provident, similique sunt in culpa qui officia deserunt mollitia -% animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis -% est et expedita distinctio. Nam libero tempore, cum soluta nobis -% est eligendi optio cumque nihil impedit quo minus id quod maxime -% placeat facere possimus, omnis voluptas assumenda est, omnis dolor -% repellendus. Temporibus autem quibusdam et aut officiis debitis aut -% rerum necessitatibus saepe eveniet ut et voluptates repudiandae -% sint et molestiae non recusandae. Itaque earum rerum hic tenetur a -% sapiente delectus, ut aut reiciendis voluptatibus maiores alias -% consequatur aut perferendis doloribus asperiores repellat. - - diff --git a/buch/papers/ellfilter/teil3.tex b/buch/papers/ellfilter/teil3.tex deleted file mode 100644 index dad96ad..0000000 --- a/buch/papers/ellfilter/teil3.tex +++ /dev/null @@ -1,40 +0,0 @@ -% -% teil3.tex -- Beispiel-File für Teil 3 -% -% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil -% -% \section{Teil 3 -% \label{ellfilter:section:teil3}} -% \rhead{Teil 3} -% Sed ut perspiciatis unde omnis iste natus error sit voluptatem -% accusantium doloremque laudantium, totam rem aperiam, eaque ipsa -% quae ab illo inventore veritatis et quasi architecto beatae vitae -% dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit -% aspernatur aut odit aut fugit, sed quia consequuntur magni dolores -% eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam -% est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci -% velit, sed quia non numquam eius modi tempora incidunt ut labore -% et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima -% veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, -% nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure -% reprehenderit qui in ea voluptate velit esse quam nihil molestiae -% consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla -% pariatur? - -% \subsection{De finibus bonorum et malorum -% \label{ellfilter:subsection:malorum}} -% At vero eos et accusamus et iusto odio dignissimos ducimus qui -% blanditiis praesentium voluptatum deleniti atque corrupti quos -% dolores et quas molestias excepturi sint occaecati cupiditate non -% provident, similique sunt in culpa qui officia deserunt mollitia -% animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis -% est et expedita distinctio. Nam libero tempore, cum soluta nobis -% est eligendi optio cumque nihil impedit quo minus id quod maxime -% placeat facere possimus, omnis voluptas assumenda est, omnis dolor -% repellendus. Temporibus autem quibusdam et aut officiis debitis aut -% rerum necessitatibus saepe eveniet ut et voluptates repudiandae -% sint et molestiae non recusandae. Itaque earum rerum hic tenetur a -% sapiente delectus, ut aut reiciendis voluptatibus maiores alias -% consequatur aut perferendis doloribus asperiores repellat. - - diff --git a/buch/papers/ellfilter/tschebyscheff.tex b/buch/papers/ellfilter/tschebyscheff.tex new file mode 100644 index 0000000..7d426b6 --- /dev/null +++ b/buch/papers/ellfilter/tschebyscheff.tex @@ -0,0 +1,133 @@ +\section{Tschebyscheff-Filter} + +Als Einstieg betrachent Wir das Tschebyscheff-Filter, welches sehr verwand ist mit dem elliptischen Filter. +Genauer ausgedrückt sind die Tschebyscheff-1 und -2 Filter Spezialfälle davon. + +Der Name des Filters deutet schon an, dass die Tschebyscheff-Polynome $T_N$ für das Filter relevant sind: +\begin{align} + T_{0}(x)&=1\\ + T_{1}(x)&=x\\ + T_{2}(x)&=2x^{2}-1\\ + T_{3}(x)&=4x^{3}-3x\\ + T_{n+1}(x)&=2x~T_{n}(x)-T_{n-1}(x). +\end{align} +Bemerkenswert ist, dass die Polynome im Intervall $[-1, 1]$ mit der trigonometrischen Funktion +\begin{align} \label{ellfilter:eq:chebychef_polynomials} + T_N(w) &= \cos \left( N \cos^{-1}(w) \right) \\ + &= \cos \left(N~z \right), \quad w= \cos(z) +\end{align} +übereinstimmt. +Der Zusammenhang lässt sich mit den Doppel- und Mehrfachwinkelfunktionen der trigonometrischen Funktionen erklären. +Abbildung \ref{ellfilter:fig:chebychef_polynomials} zeigt einige Tschebyscheff-Polynome. +\begin{figure} + \centering + \input{papers/ellfilter/python/F_N_chebychev2.pgf} + \caption{Die Tschebyscheff-Polynome $C_N$.} + \label{ellfilter:fig:chebychef_polynomials} +\end{figure} +Da der Kosinus begrenzt zwischen $-1$ und $1$ ist, sind auch die Tschebyscheff-Polynome begrenzt. +Geht man aber über das Intervall $[-1, 1]$ hinaus, divergieren die Funktionen mit zunehmender Ordnung immer steiler gegen $\pm \infty$. +Diese Eigenschaft ist sehr nützlich für ein Filter. +Wenn wir die Tschebyscheff-Polynome quadrieren, passen sie perfekt in die Voraussetzungen für Filterfunktionen, wie es Abbildung \ref{ellfiter:fig:chebychef} demonstriert. +\begin{figure} + \centering + \input{papers/ellfilter/python/F_N_chebychev.pgf} + \caption{Die Tschebyscheff-Polynome füllen den erlaubten Bereich besser, und erhalten dadurch eine steilere Flanke im Sperrbereich.} + \label{ellfiter:fig:chebychef} +\end{figure} + + +Die analytische Fortsetzung von \eqref{ellfilter:eq:chebychef_polynomials} über das Intervall $[-1,1]$ hinaus stimmt mit den Polynomen überein, wie es zu erwarten ist. +Die genauere Betrachtung wird uns dann helfen die elliptischen Filter besser zu verstehen. + +Starten wir mit der Funktion, die als erstes auf $w$ angewendet wird, dem Arcuscosinus. +Die invertierte Funktion des Kosinus kann als definites Integral dargestellt werden: +\begin{align} + \cos^{-1}(x) + &= + \int_{x}^{1} + \frac{ + dz + }{ + \sqrt{ + 1-z^2 + } + }\\ + &= + \int_{0}^{x} + \frac{ + -1 + }{ + \sqrt{ + 1-z^2 + } + } + ~dz + + \frac{\pi}{2} +\end{align} +Der Integrand oder auch die Ableitung +\begin{equation} + \frac{ + -1 + }{ + \sqrt{ + 1-z^2 + } + } +\end{equation} +bestimmt dabei die Richtung, in der die Funktion verläuft. +Der reelle Arcuscosinus is bekanntlich nur für $|z| \leq 1$ definiert. +Hier bleibt der Wert unter der Wurzel positiv und das Integral liefert reelle Werte. +Doch wenn $|z|$ über 1 hinausgeht, wird der Term unter der Wurzel negativ. +Durch die Quadratwurzel entstehen für den Integranden zwei rein komplexe Lösungen. +Der Wert des Arcuscosinus verlässt also bei $z= \pm 1$ den reellen Zahlenstrahl und knickt in die komplexe Ebene ab. +Abbildung \ref{ellfilter:fig:arccos} zeigt den $\arccos$ in der komplexen Ebene. +\begin{figure} + \centering + \input{papers/ellfilter/tikz/arccos.tikz.tex} + \caption{Die Funktion $z = \cos^{-1}(w)$ dargestellt in der komplexen ebene.} + \label{ellfilter:fig:arccos} +\end{figure} +Wegen der Periodizität des Kosinus ist auch der Arcuscosinus $2\pi$-periodisch und es entstehen periodische Nullstellen. +% \begin{equation} +% \frac{ +% 1 +% }{ +% \sqrt{ +% 1-z^2 +% } +% } +% \in \mathbb{R} +% \quad +% \forall +% \quad +% -1 \leq z \leq 1 +% \end{equation} +% \begin{equation} +% \frac{ +% 1 +% }{ +% \sqrt{ +% 1-z^2 +% } +% } +% = i \xi \quad | \quad \xi \in \mathbb{R} +% \quad +% \forall +% \quad +% z \leq -1 \cup z \geq 1 +% \end{equation} + +Die Tschebyscheff-Polynome skalieren diese Nullstellen mit dem Ordnungsfaktor $N$, wie dargestellt in Abbildung \ref{ellfilter:fig:arccos2}. +\begin{figure} + \centering + \input{papers/ellfilter/tikz/arccos2.tikz.tex} + \caption{ + $z_1=N \cos^{-1}(w)$-Ebene der Tschebyscheff-Funktion. + Die eingefärbten Pfade sind Verläufe von $w~\forall~[-\infty, \infty]$ für verschiedene Ordnungen $N$. + Je grösser die Ordnung $N$ gewählt wird, desto mehr Nullstellen werden passiert. + } + \label{ellfilter:fig:arccos2} +\end{figure} +Somit passert $\cos( N~\cos^{-1}(w))$ im Intervall $[-1, 1]$ $N$ Nullstellen. +Durch die spezielle Anordnung der Nullstellen hat die Funktion Equirippel-Verhalten und ist dennoch ein Polynom, was sich perfekt für linear Filter eignet. -- cgit v1.2.1 From c49717a11a534d1621f819c7a114924047046a04 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 30 May 2022 11:38:12 +0200 Subject: new slides --- buch/chapters/040-rekursion/betaverteilung.tex | 2 +- buch/chapters/040-rekursion/images/order.pdf | Bin 32692 -> 32688 bytes buch/chapters/040-rekursion/images/order.tex | 2 +- vorlesungen/12_dreieck/common.tex | 2 +- vorlesungen/12_dreieck/slides.tex | 4 ++ vorlesungen/slides/dreieck/Makefile.inc | 5 ++ vorlesungen/slides/dreieck/beta.tex | 70 +++++++++++++++++++++++ vorlesungen/slides/dreieck/betaplot.tex | 38 ++++++++++++ vorlesungen/slides/dreieck/chapter.tex | 3 + vorlesungen/slides/dreieck/dichte.tex | 67 ++++++++++++++++++++++ vorlesungen/slides/dreieck/minmax.tex | 22 ++++++- vorlesungen/slides/dreieck/orderplot.tex | 16 ++++++ vorlesungen/slides/dreieck/ordnungsstatistik.tex | 69 +++++++++++++++++++++- vorlesungen/slides/dreieck/stichprobe.tex | 20 ++++--- 14 files changed, 305 insertions(+), 15 deletions(-) create mode 100644 vorlesungen/slides/dreieck/beta.tex create mode 100644 vorlesungen/slides/dreieck/betaplot.tex create mode 100644 vorlesungen/slides/dreieck/dichte.tex create mode 100644 vorlesungen/slides/dreieck/orderplot.tex diff --git a/buch/chapters/040-rekursion/betaverteilung.tex b/buch/chapters/040-rekursion/betaverteilung.tex index 979d04c..77715ca 100644 --- a/buch/chapters/040-rekursion/betaverteilung.tex +++ b/buch/chapters/040-rekursion/betaverteilung.tex @@ -280,7 +280,7 @@ folgt jetzt \begin{align*} \varphi_{X_{k:n}}(x) &= -\varphi_X(x)k\binom{n}{k} F_X(x)^{k-1}(1-F_X(x))^{n-k}(x). +\varphi_X(x)k\binom{n}{k} F_X(x)^{k-1}(1-F_X(x))^{n-k}. \intertext{Im Speziellen für gleichverteilte Zufallsvariablen $X_i$ ist } \varphi_{X_{k:n}}(x) diff --git a/buch/chapters/040-rekursion/images/order.pdf b/buch/chapters/040-rekursion/images/order.pdf index cc175a9..88b2b08 100644 Binary files a/buch/chapters/040-rekursion/images/order.pdf and b/buch/chapters/040-rekursion/images/order.pdf differ diff --git a/buch/chapters/040-rekursion/images/order.tex b/buch/chapters/040-rekursion/images/order.tex index 9a2511c..0284735 100644 --- a/buch/chapters/040-rekursion/images/order.tex +++ b/buch/chapters/040-rekursion/images/order.tex @@ -65,7 +65,7 @@ \node at ({-0.1/\skala},{\y*\dy}) [left] {$\y$}; } -\node[color=darkgreen] at (0.65,{0.5*\dy}) [above,rotate=55] {$k=7$}; +\node[color=darkgreen] at ({0.64*\dx},{0.56*\dy}) [rotate=42] {$k=7$}; \begin{scope}[yshift=-0.7cm] \def\dy{0.125} diff --git a/vorlesungen/12_dreieck/common.tex b/vorlesungen/12_dreieck/common.tex index 9414e42..1be1b4f 100644 --- a/vorlesungen/12_dreieck/common.tex +++ b/vorlesungen/12_dreieck/common.tex @@ -9,7 +9,7 @@ \usetheme[hideothersubsections,hidetitle]{Hannover} } \beamertemplatenavigationsymbolsempty -\title[Dreieckstest]{Dreieckstest} +\title[Ordnungsstatistik]{Ordnungsstatistik und Beta-Funktion} \author[A.~Müller]{Prof. Dr. Andreas Müller} \date[]{30.~Mai 2022} \newboolean{presentation} diff --git a/vorlesungen/12_dreieck/slides.tex b/vorlesungen/12_dreieck/slides.tex index 211a105..19b7417 100644 --- a/vorlesungen/12_dreieck/slides.tex +++ b/vorlesungen/12_dreieck/slides.tex @@ -6,3 +6,7 @@ \folie{dreieck/stichprobe.tex} \folie{dreieck/minmax.tex} \folie{dreieck/ordnungsstatistik.tex} +\folie{dreieck/dichte.tex} +\folie{dreieck/orderplot.tex} +\folie{dreieck/beta.tex} +\folie{dreieck/betaplot.tex} diff --git a/vorlesungen/slides/dreieck/Makefile.inc b/vorlesungen/slides/dreieck/Makefile.inc index 0575397..bbc19b6 100644 --- a/vorlesungen/slides/dreieck/Makefile.inc +++ b/vorlesungen/slides/dreieck/Makefile.inc @@ -4,6 +4,11 @@ # (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule # chapterdreieck = \ + ../slides/dreieck/stichprobe.tex \ ../slides/dreieck/minmax.tex \ ../slides/dreieck/ordnungsstatistik.tex \ + ../slides/dreieck/orderplot.tex \ + ../slides/dreieck/dichte.tex \ + ../slides/dreieck/beta.tex \ + ../slides/dreieck/betaplot.tex \ ../slides/dreieck/test.tex diff --git a/vorlesungen/slides/dreieck/beta.tex b/vorlesungen/slides/dreieck/beta.tex new file mode 100644 index 0000000..fc3606a --- /dev/null +++ b/vorlesungen/slides/dreieck/beta.tex @@ -0,0 +1,70 @@ +% +% beta.tex -- slide template +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\bgroup +\begin{frame}[t] +\setlength{\abovedisplayskip}{5pt} +\setlength{\belowdisplayskip}{5pt} +\frametitle{Beta-Verteilung} +\vspace{-20pt} +\begin{columns}[t,onlytextwidth] +\begin{column}{0.40\textwidth} +\begin{block}{Ordnungsstatistik} +\begin{align*} +\varphi(x) +&= +{\color{blue}N} x^{k-1} (1-x)^{n-k} +\\ +&\uncover<8->{ += +\beta_{k,n-k+1}(x) +} +\end{align*} +\end{block} +\uncover<8->{% +\begin{block}{Risch-Algorithmus} +Die Beta-Verteilungen haben ausser in Spezialfällen +keine Stammfunktion in geschlossener Form. +\end{block}} +\end{column} +\begin{column}{0.56\textwidth} +\uncover<2->{% +\begin{definition} +Beta-Verteilung +\[ +\beta_{a,b}(x) += +\begin{cases} +\displaystyle +\uncover<7->{ +{\color{blue} +\frac{1}{B(a,b)} +} +} +x^{a-1}(1-x)^{b-1} +&0\le x\le 1 +\\ +0&\text{sonst} +\end{cases} +\] +\end{definition}} +\uncover<3->{% +\begin{block}{Normierung} +\begin{align*} +{\color{blue}\frac{1}{{N}}} +&\uncover<4->{= +\int_{-\infty}^\infty \beta_{a,b}(x)\,dx} +\\ +&\uncover<5->{= +\int_{0}^1 x^{a-1}(1-x)^{b-1}\,dx} +\\ +&\uncover<6->{= +B(a,b)} +\end{align*} +\end{block}} +\end{column} +\end{columns} +\end{frame} +\egroup diff --git a/vorlesungen/slides/dreieck/betaplot.tex b/vorlesungen/slides/dreieck/betaplot.tex new file mode 100644 index 0000000..ee932e8 --- /dev/null +++ b/vorlesungen/slides/dreieck/betaplot.tex @@ -0,0 +1,38 @@ +% +% betaplot.tex -- slide template +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\bgroup +\begin{frame}[t] +\setlength{\abovedisplayskip}{5pt} +\setlength{\belowdisplayskip}{5pt} +\frametitle{Beta-Verteilungen} +\begin{center} +\begin{tikzpicture}[>=latex] + +\only<1>{ +\begin{scope} + \clip (-7,-3.2) rectangle (7,3.2); + \node at (0,-6.5) {\includegraphics[width=13.5cm]{../../buch/chapters/040-rekursion/images/beta.pdf}}; +\end{scope} +} + +\only<2>{ +\begin{scope} + \clip (-7,-3.2) rectangle (7,3.2); + \node at (0,-0) {\includegraphics[width=13.5cm]{../../buch/chapters/040-rekursion/images/beta.pdf}}; +\end{scope} +} + +\only<3>{ +\begin{scope} + \clip (-7,-3.2) rectangle (7,3.2); + \node at (0,6.5) {\includegraphics[width=13.5cm]{../../buch/chapters/040-rekursion/images/beta.pdf}}; +\end{scope} +} + +\end{tikzpicture} +\end{center} +\end{frame} +\egroup diff --git a/vorlesungen/slides/dreieck/chapter.tex b/vorlesungen/slides/dreieck/chapter.tex index 2c91eb5..0f58c4c 100644 --- a/vorlesungen/slides/dreieck/chapter.tex +++ b/vorlesungen/slides/dreieck/chapter.tex @@ -6,3 +6,6 @@ \folie{dreieck/test.tex} \folie{dreieck/minmax.tex} \folie{dreieck/ordnungsstatistik.tex} +\folie{dreieck/dichte.tex} +\folie{dreieck/beta.tex} +\folie{dreieck/betaplot.tex} diff --git a/vorlesungen/slides/dreieck/dichte.tex b/vorlesungen/slides/dreieck/dichte.tex new file mode 100644 index 0000000..168523a --- /dev/null +++ b/vorlesungen/slides/dreieck/dichte.tex @@ -0,0 +1,67 @@ +% +% dichte.tex -- Wahrscheinlichkeitsdichte +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\bgroup +\definecolor{darkgreen}{rgb}{0,0.6,0} +\begin{frame}[t] +\setlength{\abovedisplayskip}{5pt} +\setlength{\belowdisplayskip}{5pt} +\frametitle{Wahrscheinlichkeitsdichte} +\vspace{-20pt} +\begin{columns}[t,onlytextwidth] +\begin{column}{0.40\textwidth} +\begin{block}{Definition} +\[ +\varphi_{X_{k:n}}(x) += +\frac{d}{dx} F_{X_{k:n}}(x) +\] +\end{block} +\end{column} +\begin{column}{0.60\textwidth} +\uncover<4->{% +\begin{block}{Gleichverteilung} +\[ +{\color{darkgreen}F(x)}=\begin{cases} +0&x \le 0\\ +x&0\le x \le 1,\\ +1&x\ge 1 +\end{cases} +\quad +\uncover<5->{ +{\color{red}\varphi(x)} += +\begin{cases} +1&0\le x \le 1\\ +0&\text{sonst} +\end{cases}} +\] +\end{block}} +\end{column} +\end{columns} +\uncover<2->{% +\begin{block}{Ordnungsstatistik} +nach einiger Rechnung: +\begin{align*} +\varphi_{X_{k:n}}(x) +&= +{\color<3->{red}\varphi_X(x)}\,k\binom{n}{k}{\color<3->{darkgreen}F_X(x)}^{k-1} +(1-{\color<3->{darkgreen}F_X(x)})^{n-k} +\intertext{\uncover<4->{für Gleichverteilung}} +\uncover<6->{ +\varphi_{X_{k:n}}(x) +&= +\begin{cases} +\displaystyle +{\color<7->{blue}k\binom{n}{k}}{\color{darkgreen}x}^{k-1}(1-{\color{darkgreen}x})^{n-k} +&0\le x \le 1\\ +0&\text{sonst} +\end{cases} +\qquad\uncover<7->{\text{({\color{blue}Normierung})}} +} +\end{align*} +\end{block}} +\end{frame} +\egroup diff --git a/vorlesungen/slides/dreieck/minmax.tex b/vorlesungen/slides/dreieck/minmax.tex index 9ef8d1a..ff3a231 100644 --- a/vorlesungen/slides/dreieck/minmax.tex +++ b/vorlesungen/slides/dreieck/minmax.tex @@ -17,48 +17,66 @@ Verteilungsfunktion von Z=\operatorname{max}(X_1,\dots,X_n) \] \begin{align*} +\uncover<3->{ F_Z(x) &= -P(Z\le x) +P(Z\le x)} \\ +\uncover<4->{ &= P(X_1\le x\wedge\dots\wedge X_n\le x) +} \\ +\uncover<5->{ &= P(X_1\le x)\cdot \ldots\cdot P(X_n\le x) +} \\ +\uncover<6->{ &= F_X(x)^n +} \end{align*} \end{block} \end{column} \begin{column}{0.48\textwidth} +\uncover<2->{% \begin{block}{Minimum} Verteilungsfunktion von \[ Z=\operatorname{min}(X_1,\dots,X_n) \] \begin{align*} +\uncover<7->{ F_Z(x) &= P(Z\le x) +} \\ +\uncover<8->{ &=P(\overline{ X_1\le x\wedge\dots\wedge X_n \le x }) +} \\ +\uncover<9->{ &= 1-P( X_1> x\wedge\dots\wedge X_n > x ) +} \\ +\uncover<10->{ &= 1-(P(X_1>x)\cdot\ldots\cdot P(X_n>x)) +} \\ +\uncover<11->{ &= 1-(1-F_X(x))^n +} \end{align*} -\end{block} +\end{block}} \end{column} \end{columns} \end{frame} diff --git a/vorlesungen/slides/dreieck/orderplot.tex b/vorlesungen/slides/dreieck/orderplot.tex new file mode 100644 index 0000000..7cf10c6 --- /dev/null +++ b/vorlesungen/slides/dreieck/orderplot.tex @@ -0,0 +1,16 @@ +% +% orderplot.tex -- slide template +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\bgroup +\begin{frame}[t] +\setlength{\abovedisplayskip}{5pt} +\setlength{\belowdisplayskip}{5pt} +\frametitle{Ordnungstatistik} +\vspace*{-18pt} +\begin{center} +\includegraphics[width=10cm]{../../buch/chapters/040-rekursion/images/order.pdf} +\end{center} +\end{frame} +\egroup diff --git a/vorlesungen/slides/dreieck/ordnungsstatistik.tex b/vorlesungen/slides/dreieck/ordnungsstatistik.tex index 6346953..c968e79 100644 --- a/vorlesungen/slides/dreieck/ordnungsstatistik.tex +++ b/vorlesungen/slides/dreieck/ordnungsstatistik.tex @@ -8,11 +8,76 @@ \setlength{\abovedisplayskip}{5pt} \setlength{\belowdisplayskip}{5pt} \frametitle{Ordnungstatistik} +\vspace{-10pt} +\begin{block}{Angeordnete Stichprobe} +\[ +X_{1:n} +\le +X_{2:n} +\le +\dots +\le +X_{(n-1):n} +\le +X_{n:n} +\] +$X_{k:n} = \mathstrut$der $k$-te von $n$ Werten +\end{block} \vspace{-20pt} \begin{columns}[t,onlytextwidth] -\begin{column}{0.48\textwidth} +\begin{column}{0.44\textwidth} +\uncover<2->{% +\begin{block}{Verteilungsfunktion} +\begin{align*} +F_{X_{k:n}}(x) +&= +P(X_{k:n} \le x) +\\ +&\uncover<3->{= +P\bigl( +|\{i\;|\; {\color<4>{red}X_i\le x}\}| \ge k +\bigr)} +\\ +&\uncover<5->{= +P(\text{Anzahl $A_i$}\ge k)} +\\ +&\uncover<9->{= +P(K\ge k)} +\\ +\uncover<6->{ +F_{X_i}(x)&= P(X_i\le x)}\uncover<7->{ = P(A_i)}\uncover<10->{ = p} +} +\end{align*} +\uncover<4->{$A_i=\{X_i\le x\}$}\uncover<7->{ ist ein Beroulli- Experiment +\uncover<10->{mit Eintretens- wahrscheinlichkeit $p$} +\end{block}} \end{column} -\begin{column}{0.48\textwidth} +\begin{column}{0.52\textwidth} +\uncover<8->{% +\begin{block}{Wiederholtes Bernoulli-Experiment} +$K=\mathstrut$Anzahl $k$, für die $A$ eingetreten +ist\only<11->{, ist binomialverteilt:} +\begin{align*} +\uncover<12->{P(K=k) +&= +\phantom{\sum_{i=k}^n\mathstrut} +\binom{n}{k} p^k (1-p)^{n-k} +} +\\ +\uncover<13->{ +P(K\ge k) +&= +\sum_{i=k}^n +\binom{n}{i} p^i (1-p)^{n-i} +} +\\ +\uncover<14->{ +&= +\sum_{i=k}^n +\binom{n}{i} F_X(x)^i (1-F_X(x))^{n-i} +} +\end{align*} +\end{block}} \end{column} \end{columns} \end{frame} diff --git a/vorlesungen/slides/dreieck/stichprobe.tex b/vorlesungen/slides/dreieck/stichprobe.tex index da3a20e..4b2eff0 100644 --- a/vorlesungen/slides/dreieck/stichprobe.tex +++ b/vorlesungen/slides/dreieck/stichprobe.tex @@ -12,21 +12,22 @@ \begin{columns}[t,onlytextwidth] \begin{column}{0.48\textwidth} \begin{block}{Zufallsvariable} -Gegeben eine Zufallsvariable $X$ mit +Gegeben eine Zufallsvariable $X$ \uncover<5->{mit Verteilungsfunktion \[ F_X(x) = P(X\le x) -\] -und +\]} +\uncover<6->{und Wahrscheinlichkeitsdichte \[ \varphi_X(x) = \frac{d}{dx} F_X(x) -\] +\]} \end{block} +\uncover<7->{% \begin{block}{Gleichverteilung} \[ F(x) = \begin{cases} @@ -34,6 +35,7 @@ F(x) = \begin{cases} x&\qquad 0\le x \le 1\\ 1&\qquad 1{ \qquad\Rightarrow\qquad \varphi(x) = @@ -41,19 +43,21 @@ x&\qquad 0\le x \le 1\\ 1&\qquad 0\le x \le 1\\ 0&\qquad\text{sonst}. \end{cases} +} \] -\end{block} +\end{block}} \end{column} \begin{column}{0.48\textwidth} +\uncover<2->{% \begin{block}{Stichprobe} $n$ Zufallsvariablen $X_1,\dots,X_n$ \begin{itemize} -\item +\item<3-> alle $X_i$ haben die gleiche Verteilung wie $X$ -\item +\item<4-> die $X_i$ sind unabhängig \end{itemize} -\end{block} +\end{block}} \end{column} \end{columns} \end{frame} -- cgit v1.2.1 From 0b6917dcba521381f259dbaeed718ac1407eeefd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 31 May 2022 07:48:27 +0200 Subject: =?UTF-8?q?Sternzeit=20dezimal=20erg=C3=A4nzt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- buch/papers/nav/beispiel.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buch/papers/nav/beispiel.txt b/buch/papers/nav/beispiel.txt index 853ae4e..94466ce 100644 --- a/buch/papers/nav/beispiel.txt +++ b/buch/papers/nav/beispiel.txt @@ -1,6 +1,6 @@ Datum: 28. 5. 2022 Zeit: 15:29:49 UTC -Sternzeit: 7h 54m 26.593s +Sternzeit: 7h 54m 26.593s 7.90738694h Deneb -- cgit v1.2.1 From 8eb7793b2100ff83caa1ab8898dcab572d0d995f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 31 May 2022 07:55:04 +0200 Subject: ra korrigiert --- buch/papers/nav/beispiel.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buch/papers/nav/beispiel.txt b/buch/papers/nav/beispiel.txt index 94466ce..70e3ce2 100644 --- a/buch/papers/nav/beispiel.txt +++ b/buch/papers/nav/beispiel.txt @@ -4,7 +4,7 @@ Sternzeit: 7h 54m 26.593s 7.90738694h Deneb -RA 20h 42m 12.14s 10.703372h +RA 20h 42m 12.14s 20.703372h DEC 45 21' 40.3" 45.361194 H 50g 15' 17.1" 50.254750h -- cgit v1.2.1 From 7d33fc05ecaf5196bfb57420ca823222c6c53b50 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 31 May 2022 11:11:49 +0200 Subject: fix besselgrid labeling --- .../chapters/050-differential/images/besselgrid.pdf | Bin 28324 -> 28297 bytes .../chapters/050-differential/images/besselgrid.tex | 3 ++- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/buch/chapters/050-differential/images/besselgrid.pdf b/buch/chapters/050-differential/images/besselgrid.pdf index 6c551f4..5f074f8 100644 Binary files a/buch/chapters/050-differential/images/besselgrid.pdf and b/buch/chapters/050-differential/images/besselgrid.pdf differ diff --git a/buch/chapters/050-differential/images/besselgrid.tex b/buch/chapters/050-differential/images/besselgrid.tex index 01021e3..a5dc3bd 100644 --- a/buch/chapters/050-differential/images/besselgrid.tex +++ b/buch/chapters/050-differential/images/besselgrid.tex @@ -65,7 +65,6 @@ } \end{scope} - \node at (-4.5,1.5) {$\Gamma(n+k+1)=\infty$}; } \begin{tikzpicture}[>=latex,thick,scale=\skala] @@ -75,6 +74,7 @@ \punkte \nachse{black} \kachse + \node at (-4.5,1.5) {$\Gamma(n+k+1)=\infty$}; \end{scope} \begin{scope}[yshift=-7.8cm] @@ -83,6 +83,7 @@ \punkte \draw[->] (0.3,-0.3) -- (-6.4,6.4) coordinate[label={above right:$k$}]; \draw[->] (-3.3,3) -- (6.6,3) coordinate[label={right:$m$}]; + \node at (-4.5,1.5) {$\Gamma(m)=\infty$}; \end{scope} \end{tikzpicture} -- cgit v1.2.1 From c2e23011c6a569277d3806818991fd9c1dfbfe51 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 31 May 2022 11:24:37 +0200 Subject: besselgrid fix --- .../chapters/050-differential/images/besselgrid.pdf | Bin 28297 -> 28306 bytes .../chapters/050-differential/images/besselgrid.tex | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/buch/chapters/050-differential/images/besselgrid.pdf b/buch/chapters/050-differential/images/besselgrid.pdf index 5f074f8..a0fa332 100644 Binary files a/buch/chapters/050-differential/images/besselgrid.pdf and b/buch/chapters/050-differential/images/besselgrid.pdf differ diff --git a/buch/chapters/050-differential/images/besselgrid.tex b/buch/chapters/050-differential/images/besselgrid.tex index a5dc3bd..1c19363 100644 --- a/buch/chapters/050-differential/images/besselgrid.tex +++ b/buch/chapters/050-differential/images/besselgrid.tex @@ -83,7 +83,7 @@ \punkte \draw[->] (0.3,-0.3) -- (-6.4,6.4) coordinate[label={above right:$k$}]; \draw[->] (-3.3,3) -- (6.6,3) coordinate[label={right:$m$}]; - \node at (-4.5,1.5) {$\Gamma(m)=\infty$}; + \node at (-4.5,1.5) {$\Gamma(m+1)=\infty$}; \end{scope} \end{tikzpicture} -- cgit v1.2.1 From 19daddc56c44894ebc49dd2698fb6ca19dd7359e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 31 May 2022 11:38:41 +0200 Subject: fix participant lists --- buch/common/teilnehmer.tex | 18 +++++++++--------- cover/backcover.jpg | Bin 903962 -> 905731 bytes cover/backcover.png | Bin 858440 -> 858542 bytes cover/buchcover.jpg | Bin 1160870 -> 1144514 bytes cover/buchcover.png | Bin 1604134 -> 1601326 bytes cover/buchcover.tex | 20 ++++++++++---------- 6 files changed, 19 insertions(+), 19 deletions(-) diff --git a/buch/common/teilnehmer.tex b/buch/common/teilnehmer.tex index c14790a..c1408cb 100644 --- a/buch/common/teilnehmer.tex +++ b/buch/common/teilnehmer.tex @@ -11,20 +11,20 @@ Fabian Dünki%, % E \\ %Robin Eberle, % E Enez Erdem, % B -Nilakshan Eswararajah, % B -Réda Haddouche%, % E -\\ +%Nilakshan Eswararajah, % B +Réda Haddouche, % E David Hugentobler, % E -Alain Keller, % E -Yanik Kuster, % E -Marc Kühne%, % B +Alain Keller%, % E \\ +Yanik Kuster, % E +Marc Kühne, % B Erik Löffler, % E -Kevin Meili, % M-I -Andrea Mozzini Vellen%, % E +Kevin Meili%, % M-I \\ +Andrea Mozzini Vellen, % E Patrik Müller, % MSE -Naoki Pross, % E +Naoki Pross%, % E +\\ Thierry Schwaller, % E Tim Tönz % E diff --git a/cover/backcover.jpg b/cover/backcover.jpg index fbde01f..b1736d1 100644 Binary files a/cover/backcover.jpg and b/cover/backcover.jpg differ diff --git a/cover/backcover.png b/cover/backcover.png index 6425910..c604266 100644 Binary files a/cover/backcover.png and b/cover/backcover.png differ diff --git a/cover/buchcover.jpg b/cover/buchcover.jpg index 52d17d1..158c6a4 100644 Binary files a/cover/buchcover.jpg and b/cover/buchcover.jpg differ diff --git a/cover/buchcover.png b/cover/buchcover.png index 02590e0..96f5123 100644 Binary files a/cover/buchcover.png and b/cover/buchcover.png differ diff --git a/cover/buchcover.tex b/cover/buchcover.tex index 49519af..d6ad7ec 100644 --- a/cover/buchcover.tex +++ b/cover/buchcover.tex @@ -88,35 +88,35 @@ \sf \fontsize{13}{5}\selectfont %Robin Eberle, % E Enez Erdem, % B - Nilakshan Eswararajah, % B - Réda Haddouche%, % E + %Nilakshan Eswararajah, % B + Réda Haddouche, % E + David Hugentobler, % E + Alain Keller%, % E }}; \node at ({\einschlag+2*\gelenk+\ruecken+1.5*\breite},17.1) [color=white,scale=1] {\hbox to\hsize{\hfill% \sf \fontsize{13}{5}\selectfont - David Hugentobler, % E - Alain Keller, % E Yanik Kuster, % E - Marc Kühne%, % B + Marc Kühne, % B + Erik Löffler, % E + Kevin Meili%, % M-I }}; \node at ({\einschlag+2*\gelenk+\ruecken+1.5*\breite},16.45) [color=white,scale=1] {\hbox to\hsize{\hfill% \sf \fontsize{13}{5}\selectfont - Erik Löffler, % E - Kevin Meili, % M-I - Andrea Mozzini Vellen%, % E + Andrea Mozzini Vellen, % E + Patrick Müller, % MSE + Naoki Pross%, % E }}; \node at ({\einschlag+2*\gelenk+\ruecken+1.5*\breite},15.8) [color=white,scale=1] {\hbox to\hsize{\hfill% \sf \fontsize{13}{5}\selectfont - Patrick Müller, % MSE - Naoki Pross, % E Thierry Schwaller, % E Tim Tönz% % E % -- cgit v1.2.1 From 251b4b1bd1c4a0194be650d73f685ffdec60bdd7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Wed, 1 Jun 2022 16:23:29 +0200 Subject: typo im beispiel.txt --- buch/papers/nav/beispiel.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buch/papers/nav/beispiel.txt b/buch/papers/nav/beispiel.txt index 70e3ce2..b8716fc 100644 --- a/buch/papers/nav/beispiel.txt +++ b/buch/papers/nav/beispiel.txt @@ -7,7 +7,7 @@ Deneb RA 20h 42m 12.14s 20.703372h DEC 45 21' 40.3" 45.361194 -H 50g 15' 17.1" 50.254750h +H 50g 15' 17.1" 50.254750 Azi 59g 36' 02.0" 59.600555 Spica -- cgit v1.2.1 From 83d215597b5df724022de2a08ae1dfa1e8d59497 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Thu, 2 Jun 2022 23:01:38 +0200 Subject: phases --- vorlesungen/slides/hermite/hermiteentwicklung.tex | 15 +++++++----- vorlesungen/slides/hermite/loesung.tex | 19 +++++++++++---- vorlesungen/slides/hermite/normalhermite.tex | 29 +++++++++++++++++------ vorlesungen/slides/hermite/normalintegrale.tex | 9 ++++--- vorlesungen/slides/hermite/skalarprodukt.tex | 22 ++++++++++++----- 5 files changed, 67 insertions(+), 27 deletions(-) diff --git a/vorlesungen/slides/hermite/hermiteentwicklung.tex b/vorlesungen/slides/hermite/hermiteentwicklung.tex index e1ced30..5f6e1c9 100644 --- a/vorlesungen/slides/hermite/hermiteentwicklung.tex +++ b/vorlesungen/slides/hermite/hermiteentwicklung.tex @@ -17,6 +17,7 @@ P(x) = p_0 + p_1x + p_2x^2 + \dots + p_nx^n \] +\uncover<2->{% als Linearkombination von Hermite-Polynome schreiben: \begin{align*} P(x) @@ -38,10 +39,11 @@ a_0\cdot 1 &\quad\;\;\vdots \\ &\quad + a_n(2^nx^n + \dots) -\end{align*} +\end{align*}} \end{block} \end{column} \begin{column}{0.48\textwidth} +\uncover<3->{% \begin{block}{Koeffizientenvergleich} führt auf ein Gleichungssystem \begin{center} @@ -58,11 +60,12 @@ a_0&a_1&a_2&a_3&a_4&\dots&\\ \hline \end{tabular} \end{center} -Dreiecksmatrix, Diagonalelement -$\ne 0$ -$\Rightarrow$ -$\exists$ eindeutige Lösung -\end{block} +\uncover<4->{% +Dreiecksmatrix}\uncover<5->{, Diagonalelement +$\ne 0$} +\uncover<6->{$\Rightarrow$ +$\exists$ eindeutige Lösung} +\end{block}} \end{column} \end{columns} \end{frame} diff --git a/vorlesungen/slides/hermite/loesung.tex b/vorlesungen/slides/hermite/loesung.tex index 7d4741f..68ee32e 100644 --- a/vorlesungen/slides/hermite/loesung.tex +++ b/vorlesungen/slides/hermite/loesung.tex @@ -20,36 +20,45 @@ P(t)e^{-\frac{t^2}2} \] in geschlossener Form angeben? \end{block} +\uncover<2->{% \begin{block}{``Hermite-Antwort''} \[ \int H_n(x)e^{-x^2}\,dx \] kann genau für $n>0$ in geschlossener Form angegeben werden. -\end{block} +\end{block}} \end{column} \begin{column}{0.48\textwidth} +\uncover<3->{% \begin{block}{Allgemein} \begin{align*} \int P(x)e^{-x^2}\,dx -&= -\int \sum_{k=0}^n a_kH_k(x)e^{-x^2}\,dx +&\uncover<4->{= +\int \sum_{k=0}^n a_kH_k(x)e^{-x^2}\,dx} \\ +\uncover<5->{ &= \sum_{k=0}^n a_k \int H_k(x)e^{-x^2}\,dx +} \\ +\uncover<6->{ &= a_0\operatorname{erf}(x) + C +} \\ +\uncover<6->{ &\hspace*{2mm} + \sum_{k=1}^n a_k\int H_k(x)e^{-x^2}\,dx +} \end{align*} -\end{block} +\end{block}} +\uncover<7->{% \begin{theorem} Das Integral von $P(x)e^{-x^2}$ ist genau dann elementar darstellbar, wenn $a_0=0$ -\end{theorem} +\end{theorem}} \end{column} \end{columns} \end{frame} diff --git a/vorlesungen/slides/hermite/normalhermite.tex b/vorlesungen/slides/hermite/normalhermite.tex index 16a314c..98721dc 100644 --- a/vorlesungen/slides/hermite/normalhermite.tex +++ b/vorlesungen/slides/hermite/normalhermite.tex @@ -19,6 +19,7 @@ H_n(x) \] \end{block} \vspace{-10pt} +\uncover<2->{% \begin{block}{Orthogonalität} $H_n(x)$ sind orthogonale Polynome bezüglich $w(x)=e^{-x^2}$, d.~h. \begin{align*} @@ -37,8 +38,9 @@ $H_n(x)$ sind orthogonale Polynome bezüglich $w(x)=e^{-x^2}$, d.~h. = \delta_{mn} \end{align*} -\end{block} +\end{block}} \vspace{-10pt} +\uncover<3->{% \begin{block}{Rekursion: Auf-/Absteigeoperatoren} Rekursionsformel: \[ @@ -46,33 +48,46 @@ H_n(x) = 2x\cdot H_{n-1}(x) - H_{n-1}'(x) \] -\end{block} +\end{block}} \end{column} \begin{column}{0.48\textwidth} +\uncover<4->{% \begin{block}{Stammfunktion} \begin{align*} -\int H_n(x) e^{-x^2}\,dx -&= -\int \bigl({\color{red}2x}H_{n-1}(x) +\uncover<4->{ +\int H_n(x) e^{-x^2}\,dx} +&\uncover<5->{= +\int \bigl({\color{red}2x}H_{n-1}(x)} \\ +\uncover<5->{ &\qquad -H_{n-1}'(x)\bigr) e^{-x^2}\,dx +} \\ +\uncover<6->{ {\color{gray}((e^{-x^2})'=-2x)} &= {\color{red}-}\int {\color{red}(e^{-x^2})'} H_{n-1}(x)\,dx +} \\ +\uncover<6->{ &\qquad - \int H_{n-1}'(x) e^{-x^2}\,dx +} \\ +\uncover<7->{ \text{\color{gray}(Produktregel)} &= \int (e^{-x^2}H_{n-1}(x))'\,dx +} \\ +\uncover<8->{ \text{\color{gray}(Ableitung)} &= e^{-x^2}H_{n-1}(x) +} \end{align*} +\uncover<9->{% ausser für $n=0$: \[ \int @@ -80,8 +95,8 @@ H_0(x)e^{-x^2}\,dx = \int e^{-x^2}\,dx -\] -\end{block} +\]} +\end{block}} \end{column} \end{columns} \end{frame} diff --git a/vorlesungen/slides/hermite/normalintegrale.tex b/vorlesungen/slides/hermite/normalintegrale.tex index 88abbe8..32333cd 100644 --- a/vorlesungen/slides/hermite/normalintegrale.tex +++ b/vorlesungen/slides/hermite/normalintegrale.tex @@ -20,12 +20,14 @@ P(t)e^{-t^2} \] in geschlossener Form angeben? \end{block} +\uncover<4->{% \begin{block}{Allgemeine Antwort} Satz von Liouville und Risch- Algorithmus können entscheiden, ob es eine elementare Stammfunktion gibt -\end{block} +\end{block}} \end{column} \begin{column}{0.48\textwidth} +\uncover<2->{% \begin{block}{Negativbeispiel} $P(t) = 1$, das Normalverteilungsintegral \[ @@ -34,7 +36,8 @@ F(x) \frac{1}{\sqrt{2\pi}} \int_{-\infty}^x e^{-t^2}\,dt \] ist nicht elementar darstellbar. -\end{block} +\end{block}} +\uncover<3->{% \begin{block}{Positivbeispiel} $P(t)=t$. Wegen \begin{align*} @@ -47,7 +50,7 @@ $P(t)=t$. Wegen -e^{-x^2}+C \end{align*} elementar darstellbar. -\end{block} +\end{block}} \end{column} \end{columns} \end{frame} diff --git a/vorlesungen/slides/hermite/skalarprodukt.tex b/vorlesungen/slides/hermite/skalarprodukt.tex index 32b933f..a51e9f6 100644 --- a/vorlesungen/slides/hermite/skalarprodukt.tex +++ b/vorlesungen/slides/hermite/skalarprodukt.tex @@ -18,6 +18,7 @@ Orthogonale $H_k$ normalisieren: \] mit Gewichtsfunktion $w(x)=e^{-x^2}$ \end{block} +\uncover<2->{% \begin{block}{``Hermite''-Analyse} \begin{align*} P(x) @@ -26,46 +27,55 @@ P(x) = \sum_{k=1}^\infty \tilde{a}_k \tilde{H}_k(x) \\ +\uncover<3->{ \tilde{a}_k &= \| H_k\|_w\, a_k +} \\ +\uncover<4->{ a_k &= \frac{1}{\|H_k\|} \langle \tilde{H}_k, P\rangle_w -= +}\uncover<5->{= \frac{1}{\|H_k\|^2} \langle H_k, P\rangle_w +} \end{align*} -\end{block} +\end{block}} \end{column} \begin{column}{0.48\textwidth} +\uncover<6->{% \begin{block}{Integrationsproblem} Bedingung: \begin{align*} a_0=0 +\uncover<7->{% \qquad\Leftrightarrow\qquad \langle H_0,P\rangle_w &= -0 +0} \\ +\uncover<8->{% \int_{-\infty}^\infty P(t) w(t) \,dt +}\uncover<9->{% = \int_{-\infty}^\infty P(t) e^{-t^2} \,dt &= -0 +0} \end{align*} -\end{block} +\end{block}} +\uncover<10->{% \begin{theorem} Das Integral von $P(t)e^{-t^2}$ ist in geschlossener Form darstellbar genau dann, wenn \[ \int_{-\infty}^\infty P(t)e^{-t^2}\,dt = 0 \] -\end{theorem} +\end{theorem}} \end{column} \end{columns} \end{frame} -- cgit v1.2.1 From 374bb4a4dbc16598329cb777600c531c8c848330 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sun, 5 Jun 2022 11:24:46 +0200 Subject: fix trigo definition graph --- buch/chapters/030-geometrie/chapter.tex | 3 +- .../030-geometrie/images/einheitskreis.pdf | Bin 19706 -> 20005 bytes .../030-geometrie/images/einheitskreis.tex | 4 + buch/chapters/030-geometrie/uebungsaufgaben/3.tex | 169 +++++++++++++++++++++ 4 files changed, 175 insertions(+), 1 deletion(-) create mode 100644 buch/chapters/030-geometrie/uebungsaufgaben/3.tex diff --git a/buch/chapters/030-geometrie/chapter.tex b/buch/chapters/030-geometrie/chapter.tex index f3f1d39..0b2842b 100644 --- a/buch/chapters/030-geometrie/chapter.tex +++ b/buch/chapters/030-geometrie/chapter.tex @@ -42,7 +42,7 @@ wie die Berechnung der Länge von Ellipsen- oder Hyperbelbögen auf die Notwendigkeit führt, neue spezielle Funktionen zu definieren. \input{chapters/030-geometrie/trigonometrisch.tex} -\input{chapters/030-geometrie/sphaerisch.tex} +%\input{chapters/030-geometrie/sphaerisch.tex} \input{chapters/030-geometrie/hyperbolisch.tex} \input{chapters/030-geometrie/laenge.tex} \input{chapters/030-geometrie/flaeche.tex} @@ -54,5 +54,6 @@ die Notwendigkeit führt, neue spezielle Funktionen zu definieren. %\uebungsaufgabe{0} \uebungsaufgabe{1} \uebungsaufgabe{2} +\uebungsaufgabe{3} \end{uebungsaufgaben} diff --git a/buch/chapters/030-geometrie/images/einheitskreis.pdf b/buch/chapters/030-geometrie/images/einheitskreis.pdf index 0b514eb..d708377 100644 Binary files a/buch/chapters/030-geometrie/images/einheitskreis.pdf and b/buch/chapters/030-geometrie/images/einheitskreis.pdf differ diff --git a/buch/chapters/030-geometrie/images/einheitskreis.tex b/buch/chapters/030-geometrie/images/einheitskreis.tex index c38dc19..a194190 100644 --- a/buch/chapters/030-geometrie/images/einheitskreis.tex +++ b/buch/chapters/030-geometrie/images/einheitskreis.tex @@ -41,6 +41,7 @@ \fill[color=blue] (\a:\r) circle[radius=0.05]; \draw[color=blue,line width=1.4pt] (\r,0) -- (\r,{\r*tan(\a)}); +\fill[color=blue] (\r,{\r*tan(\a)}) circle[radius=1.0pt]; \node[color=blue] at (\r,{0.5*\r*tan(\a)}) [right] {$\tan\alpha$}; \draw[color=blue,line width=0.4pt] ({\r*cos(\a)},0) -- (\a:\r); @@ -53,6 +54,7 @@ \draw[color=blue] (-0.1,{\r*sin(\a)}) -- (0.1,{\r*sin(\a)}); \draw[color=blue,line width=1.4pt] (0,\r) -- ({\r/tan(\a)},\r); +\fill[color=blue] ({\r/tan(\a)},\r) circle[radius=1.0pt]; \node[color=blue] at ({0.5*\r/tan(\a)},\r) [above] {$\cot\alpha$}; \draw[color=darkgreen,line width=1pt] (0,0) -- (\b:\r); @@ -61,9 +63,11 @@ \fill[color=darkgreen] (\b:\r) circle[radius=0.05]; \draw[color=darkgreen,line width=1.4pt] (0,\r) -- ({\r/tan(\b)},\r); +\fill[color=darkgreen] ({\r/tan(\b)},\r) circle[radius=1.0pt]; \node[color=darkgreen] at ({0.5*\r/tan(\b)},\r) [above] {$\cot\beta$}; \draw[color=darkgreen,line width=1.4pt] (\r,0) -- (\r,{\r*tan(\b)}); +\fill[color=darkgreen] (\r,{\r*tan(\b)}) circle[radius=1.0pt]; \node[color=darkgreen] at (\r,{0.5*\r*tan(\b)}) [right] {$\tan\beta$}; \draw[color=darkgreen,line width=0.4pt] (\b:\r) -- (0,{\r*sin(\b)}); diff --git a/buch/chapters/030-geometrie/uebungsaufgaben/3.tex b/buch/chapters/030-geometrie/uebungsaufgaben/3.tex new file mode 100644 index 0000000..6a501fb --- /dev/null +++ b/buch/chapters/030-geometrie/uebungsaufgaben/3.tex @@ -0,0 +1,169 @@ +\def\cas{\operatorname{cas}} +Die Funktion $\cas$ definiert durch +$\cas x = \cos x + \sin x$ hat einige interessante Eigenschaften. +Wie die gewöhnlichen trigonometrischen Funktionen $\sin x$ und $\cos x$ +ist $\cas x$ $2\pi$-periodisch. +Die Ableitung und das Additionstheorem benötigen bei den gewöhnlichen +trigonometrischen Funktionen aber beide Funktionen, im Gegensatz zu den +im folgenden hergeleiteten Formeln, die nur die Funktion $\cas x$ brauchen. +\begin{teilaufgaben} +\item +Drücken Sie die Ableitung von $\cas x$ allein durch Werte der +$\cas$-Funktion aus. +\item +Zeigen Sie, dass +\[ +\cas x += +\sqrt{2} \sin\biggl(x+\frac{\pi}4\biggr) += +\sqrt{2} \cos\biggl(x-\frac{\pi}4\biggr). +\] +\item +Beweisen Sie das Additionstheorem für die $\cas$-Funktion +\begin{equation} +\cas(x+y) += +\frac12\bigl( +\cas(x)\cas(y) + \cas x\cas (-y) + \cas(-x)\cas(y) -\cas(-x)\cas(-y) +\bigr) +\label{buch:geometrie:uebung3:eqn:addition} +\end{equation} +\end{teilaufgaben} +Youtuber Dr Barker hat die Funktion $\cas$ im Video +{\small\url{https://www.youtube.com/watch?v=bn38o3u0lDc}} vorgestellt. + +\begin{loesung} +\begin{teilaufgaben} +\item +Die Ableitung ist +\[ +\frac{d}{dx}\cas x += +\frac{d}{dx}(\cos x + \sin x) += +-\sin x + \cos x += +\sin(-x) + \cos(-x) += +\cas(x). +\] +\item +Die Additionstheoreme angewendet auf die trigonometrischen Funktionen +auf der rechten Seite ergibt +\begin{align*} +\sin\biggl(x+\frac{\pi}4\biggr) +&= +\sin x \cos\frac{\pi}4 + \cos x \sin\frac{\pi}4 +&&& +\cos\biggl(x-\frac{\pi}4\biggr) +&= +\cos(x)\cos\frac{\pi}4 -\sin x \sin\biggl(-\frac{\pi}4\biggr) +\\ +&= +\frac{1}{\sqrt{2}} \sin x ++ +\frac{1}{\sqrt{2}} \cos x +&&& +&= +\frac{1}{\sqrt{2}} \cos x ++ +\frac{1}{\sqrt{2}} \sin x +\\ +&=\frac{1}{\sqrt{2}} \cas x +&&& +&= +\frac{1}{\sqrt{2}} \cas x. +\end{align*} +Multiplikation mit $\sqrt{2}$ ergibt die behaupteten Relationen. +\item +Substituiert man die Definition von $\cas(x)$ auf der rechten Seite von +\eqref{buch:geometrie:uebung3:eqn:addition} und multipliziert aus, +erhält man +\begin{align*} +\eqref{buch:geometrie:uebung3:eqn:addition} +&= +{\textstyle\frac12}\bigl( +(\cos x + \sin x) +(\cos y + \sin y) ++ +(\cos x + \sin x) +(\cos y - \sin y) +\\ +&\qquad ++ +(\cos x - \sin x) +(\cos y + \sin y) +- +(\cos x - \sin x) +(\cos y - \sin y) +\bigr) +\\ +&= +\phantom{-\mathstrut} +{\textstyle\frac12}\bigl( +\cos x\cos y ++ +\cos x\sin y ++ +\sin x\cos y ++ +\sin x\sin y +\\ +& +\phantom{=-\mathstrut{\textstyle\frac12}\bigl(}\llap{$\mathstrut +\mathstrut$} +\cos x\cos y +- +\cos x\sin y ++ +\sin x\cos y +- +\sin x\sin y +\\ +& +\phantom{=-\mathstrut{\textstyle\frac12}\bigl(}\llap{$\mathstrut +\mathstrut$} +\cos x\cos y ++ +\cos x\sin y +- +\sin x\cos y +- +\sin x\sin y +\bigr) +\\ +& +\phantom{=} +-\mathstrut{\textstyle\frac12}\bigl( +\cos x\cos y +- +\cos x\sin y +- +\sin x\cos y ++ +\sin x\sin y +\bigr) +\\ +&= \cos x \cos y ++ +\cos x \sin y ++ +\sin x \cos y +- +\sin x \sin y. +\intertext{Die äussersten zwei Terme passen zum Additionstheorem für den +Kosinus, die beiden inneren Terme dagegen zum Sinus. +Fasst man sie zusammen, erhält man} +&= +(\sin x\cos y + \cos x \sin y) ++ +(\cos x\cos y - \sin x \sin y) +\\ +&= +\sin (x+y) + \cos(x+y) += +\cas(x+y). +\end{align*} +Damit ist das Additionstheorem für die Funktion $\cas$ bewiesen. +\qedhere +\end{teilaufgaben} +\end{loesung} -- cgit v1.2.1 From d3c217cdb6106f2082097dd9e76f200885c853cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 7 Jun 2022 11:45:38 +0200 Subject: add polynomials with elementary w-integrals paper --- buch/chapters/010-potenzen/polynome.tex | 239 ++++++++++++++++++++++++++++++-- buch/papers/dreieck/main.tex | 18 +-- buch/papers/dreieck/references.bib | 36 ++--- buch/papers/dreieck/teil0.tex | 45 +++++- buch/papers/dreieck/teil1.tex | 88 +++++++++++- buch/papers/dreieck/teil2.tex | 109 ++++++++++++++- buch/papers/dreieck/teil3.tex | 70 +++++++++- 7 files changed, 542 insertions(+), 63 deletions(-) diff --git a/buch/chapters/010-potenzen/polynome.tex b/buch/chapters/010-potenzen/polynome.tex index 5f119e5..981e444 100644 --- a/buch/chapters/010-potenzen/polynome.tex +++ b/buch/chapters/010-potenzen/polynome.tex @@ -13,20 +13,30 @@ Operationen konstruieren lassen, sind die Polynome. \index{Polynom}% Ein {\em Polynome} vom Grad $n$ ist die Funktion \[ -p(x) = a_nx^2n + a_{n-1}x^{n-1} + \dots + a_2x^2 + a_1x + a_0, +p(x) = a_nx^n + a_{n-1}x^{n-1} + \dots + a_2x^2 + a_1x + a_0, \] wobei $a_n\ne 0$ sein muss. Das Polynom heisst {\em normiert}, wenn $a_n=1$ ist. \index{normiert}% +\index{Grad eines Polynoms}% Die Menge aller Polynome mit Koeffizienten in der Menge $K$ wird mit $K[x]$ bezeichnet. \end{definition} Die Menge $K[x]$ ist heisst auch der {\em Polynomring}, weil $K[x]$ -mit der Addition, Subtraktion und Multiplikation von Polynomen ein -Ring mit $1$ ist. -Im Folgenden werden wir uns auf die Fälle $K=\mathbb{R}$ und $K=\mathbb{C}$ -beschränken. +mit der Addition, Subtraktion und Multiplikation von Polynomen eine +algebraische Struktur bildet, die man einen Ring mit $1$ nennt. +\index{Ring}% +Im Folgenden werden wir uns auf die Fälle $K=\mathbb{Q}$, $K=\mathbb{R}$ +und $K=\mathbb{C}$ beschränken. + +Für den Grad eines Polynoms gelten die bekannten Rechenregeln +\begin{align*} +\deg (a(x) + b(x)) &\le \operatorname{max}(\deg a(x), \deg b(x)) +\\ +\deg (a(x)\cdot b(x)) &=\deg a(x) + \deg b(x) +\end{align*} +für beliebige Polynome $a(x),b(x)\in K[x]$. In Abschnitt~\ref{buch:orthogonalitaet:section:orthogonale-funktionen} werden Familien von Polynomen konstruiert werden, die sich durch eine @@ -35,12 +45,14 @@ Diese Polynome lassen sich typischerweise auch als Lösungen von Differentialgleichungen finden. Ausserdem werden hypergeometrische Funktionen \[ -\mathstrut_pF_q\biggl(\begin{matrix}a_1,\dots,a_p\\b_1,\dots,b_q\end{matrix};z\biggr), +\mathstrut_pF_q\biggl( +\begin{matrix}a_1,\dots,a_p\\b_1,\dots,b_q\end{matrix};z +\biggr), \] die in Abschnitt~\ref{buch:rekursion:section:hypergeometrische-funktion} definiert werden, zu Polynomen, wenn mindestens einer der Parameter $a_k$ negativ ganzzahlig ist. -Polynome sind also bereits eine Vielfältige Quelle von speziellen +Polynome sind also bereits eine vielfältige Quelle von speziellen Funktionen. Viele spezielle Funktionen werden aber komplizierter sein und @@ -53,6 +65,7 @@ Dank des folgenden Satzes kann dies immer mit Polynomen geschehen. \begin{satz}[Weierstrass] \label{buch:potenzen:satz:weierstrass} +\index{Weierstrass, Satz von}% Eine auf einem kompakten Intervall $[a,b]$ stetige Funktion $f(x)$ lässt sich durch eine Folge $p_n(x)$ von Polynomen gleichmässig approximieren. @@ -69,6 +82,189 @@ ebenfalls als Approximationen dienen können. Weitere Möglichkeiten liefern Interpolationsmethoden der numerischen Mathematik. +\subsection{Polynomdivision, Teilbarkeit und grösster gemeinsamer Teiler} +Der schriftliche Divisionsalgorithmus für Zahlen funktioniert +auch für die Division von Polynomen. +Zu zwei beliebigen Polynomen $p(x)$ und $q(x)$ lassen sich also +immer zwei Polynome $a(x)$ und $r(x)$ finden derart, dass +$p(x) = a(x) q(x) + r(x)$. +Das Polynom $a(x)$ heisst der {\em Quotient}, $r(x)$ der {\em Rest} +der Division. +Das Polynom $p(x)$ heisst {\em teilbar} durch $q(x)$, geschrieben +$q(x)\mid p(x)$, wenn $r(x)=0$ ist. + +\subsubsection{Grösster gemeinsamer Teiler} +Mit dem Begriff der Teilbarkeit geht auch die Idee des grössten +gemeinsamen Teilers einher. +Ein gemeinsamer Teiler zweier Polynome $a(x)$ und $b(x)$ +ist ein Polynom $g(x)$, welches beide Polynome teilt, also +$g(x)\mid a(x)$ und $g(x)\mid b(x)$. +\index{grösster gemeinsamer Teiler}% +Ein Polynome $g(x)$ heisst grösster gemeinsamer Teiler von $a(x)$ +und $b(x)$, wenn jeder andere gemeinsame Teiler $f(x)$ von $a(x)$ +und $b(x)$ auch ein Teiler von $g(x)$ ist. +Man beachte, dass die skalaren Vielfachen eines grössten gemeinsamen +Teilers ebenfalls grösste gemeinsame Teiler sind, der grösste gemeinsame +Teiler ist also nicht eindeutig bestimmt. + +\subsubsection{Der euklidische Algorithmus} +Zur Berechnung eines grössten gemeinsamen Teilers steht wie bei den +ganzen Zahlen der euklidische Algorithmus zur Verfügung. +Dazu bildet man die Folgen von Polynomen +\[ +\begin{aligned} +a_0(x)&=a(x) & b_0(x) &= b(x) +& +&\Rightarrow& +a_0(x)&=b_0(x) q_0(x) + r_0(x) && +\\ +a_1(x)&=b_0(x) & b_1(x) &= r_0(x) +& +&\Rightarrow& +a_1(x)&=b_1(x) q_1(x) + r_1(x) && +\\ +a_2(x)&=b_1(x) & b_2(x) &= r_1(x) +& +&\Rightarrow& +a_2(x)&=b_2(x) q_2(x) + r_2(x) && +\\ +&&&&&\hspace*{2mm}\vdots&& +\\ +a_{m-1}(x)&=b_{m-2}(x) & b_{m-1}(x) &= r_{m-2}(x) +& +&\Rightarrow& +a_{m-1}(x)&=b_{m-1}(x)q_{m-1}(x) + r_{m-1}(x) &\text{mit }r_{m-1}(x)&\ne 0 +\\ +a_m(x)&=b_{m-1}(x) & b_m(x)&=r_{m-1}(x) +& +&\Rightarrow& +a_m(x)&=b_m(x)q_m(x).&& +\end{aligned} +\] +Der Index $m$ ist der Index, bei dem zum ersten Mal $r_m(x)=0$ ist. +Dann ist $g(x)=r_{m-1}(x)$ ein grösster gemeinsamer Teiler. + +\subsubsection{Der erweiterte euklidische Algorithmus} +Die Konstruktion der Folgen $a_n(x)$ und $b_n(x)$ kann in Matrixform +kompakter geschrieben werden als +\[ +\begin{pmatrix} +a_k(x)\\ +b_k(x) +\end{pmatrix} += +\begin{pmatrix} +b_{k-1}(x)\\ +r_{k-1}(x) +\end{pmatrix} += +\begin{pmatrix} +0 & 1\\ +1 & -q_{k-1}(x) +\end{pmatrix} +\begin{pmatrix} +a_{k-1}(x)\\ +b_{k-1}(x) +\end{pmatrix}. +\] +Kürzen wir die $2\times 2$-Matrix als +\[ +Q_k(x) = \begin{pmatrix} 0&1\\1&-q_k(x)\end{pmatrix} +\] +ab, dann ergibt das Produkt der Matrizen $Q_0(x)$ bis $Q_{m}(x)$ +\[ +\begin{pmatrix} +g(x)\\ +0 +\end{pmatrix} += +\begin{pmatrix} +r_{m-1}(x)\\ +r_{m}(x) +\end{pmatrix} += +Q_{m}(x) +Q_{m-1}(x) +\cdots +Q_1(x) +Q_0(x) +\begin{pmatrix} +a(x)\\ +b(x) +\end{pmatrix}. +\] +Zur Berechnung des Produktes der Matrizen $Q_k(x)$ kann man rekursiv +vorgehen mit der Rekursionsformel +\[ +S_{k}(x) = Q_{k}(x) S_{k-1}(x) +\qquad\text{mit}\qquad +S_{-1}(x) += +\begin{pmatrix} 1 & 0 \\ 0 & 1 \end{pmatrix}. +\] +Ausgeschrieben bedeutet dies Matrixrekursionsformel +\[ +S_{k-1}(x) += +\begin{pmatrix} +c_{k-1} & d_{k-1} \\ +c_k & d_k +\end{pmatrix} +\qquad\Rightarrow\qquad +Q_{k}(x) S_{k-1}(x) += +\begin{pmatrix} +0&1\\1&-q_k(x) +\end{pmatrix} +\begin{pmatrix} +c_{k-1} & d_{k-1} \\ +c_k & d_k +\end{pmatrix} += +\begin{pmatrix} +c_k&d_k\\ +c_{k+1}&d_{k+1} +\end{pmatrix}. +\] +Daraus lässt sich für die Matrixelemente die Rekursionsformel +\[ +\begin{aligned} +c_{k+1} &= c_{k-1} - q_k(x) c_k(x) \\ +d_{k+1} &= d_{k-1} - q_k(x) d_k(x) +\end{aligned} +\quad +\bigg\} +\qquad +\text{mit Startwerten} +\qquad +\bigg\{ +\begin{aligned} +\quad +c_{-1} &= 1, & c_0 &= 0 \\ +d_{-1} &= 0, & d_0 &= 1. +\end{aligned} +\] +Wendet man die Matrix $S_m(x)$ auf den Vektor mit den Komponenten +$a(x)$ und $b(x)$, erhält man die Beziehungen +\[ +g(x) = c_{k-1}(x) a(x) + d_{k-1}(x) b(x) +\qquad\text{und}\qquad +0 = c_k(x) a(x) + d_k(x) b(x). +\] +Dieser Algorithmus heisst der erweiterte euklidische Algorithmus. +Wir fassen die Resultate zusammen im folgenden Satz. + +\begin{satz} +Zu zwei Polynomen $a(x),b(x) \in K[x]$ gibt es Polynome +$g(x),c(x),d(x)\in K[x]$ +derart, dass $g(x)$ ein grösster gemeinsamer Teiler von $a(x)$ und $b(x)$ +ist, und ausserdem +\[ +g(x) = c(x)a(x)+d(x)b(x) +\] +gilt. +\end{satz} + \subsection{Faktorisierung und Nullstellen} % wird später gebraucht um bei der Definition der hypergeometrischen Reihe % die Zaehler- und Nenner-Polynome als Pochhammer-Symbole zu entwickeln @@ -77,11 +273,24 @@ numerischen Mathematik. % Wird gebraucht für die Potenzreihen-Methode % Muss später ausgedehnt werden auf Potenzreihen -\subsection{Polynom-Berechnung} -Die naive Berechnung der Werte eines Polynoms beginnt mit der Berechnung -der Potenzen. -Die Anzahl nötiger Multiplikationen kann minimiert werden, indem man -das Polynom als +\subsection{Berechnung von Polynom-Werten} +Die naive Berechnung der Werte eines Polynoms $p(x)$ vom Grad $n$ +beginnt mit der Berechnung der Potenzen von $x$. +Da alle Potenzen benötigt werden, wird man dazu $n-1$ Multiplikationen +benötigen. +Die Potenzen müssen anschliessend mit den Koeffizienten multipliziert +werden, dazu sind weitere $n$ Multiplikationen nötig. +Der Wert des Polynoms kann also erhalten werden mit $2n-1$ Multiplikationen +und $n$ Additionen. + +Die Anzahl nötiger Multiplikationen kann mit dem folgenden Vorgehen +reduziert werden, welches auch als das {\em Horner-Schema} bekannt ist. +\index{Horner-Schema}% +Statt erst am Schluss alle Terme zu addieren, addiert man so früh +wie möglich. +Zum Beispiel multipliziert man $(a_nx+a_{n-1})$ mit $x$, was auf +die Multiplikationen beider Terme mit $x$ hinausläuft. +Mit dieser Idee kann man das Polynom als \[ a_nx^n + @@ -95,10 +304,10 @@ a_0 = ((\dots((a_nx+a_{n-1})x+a_{n-2})x+\dots )x+a_1)x+a_0 \] -schreibt. +schreiben. Beginnend bei der innersten Klammer sind genau $n$ Multiplikationen -und $n+1$ Additionen nötig, im Gegensatz zu $2n$ Multiplikationen -und $n$ Additionen bei der naiven Vorgehensweise. +und $n$ Additionen nötig, man spart mit diesem Vorgehen also +$n-1$ Multiplikationen. diff --git a/buch/papers/dreieck/main.tex b/buch/papers/dreieck/main.tex index 75ba410..b9f8c3b 100644 --- a/buch/papers/dreieck/main.tex +++ b/buch/papers/dreieck/main.tex @@ -3,19 +3,19 @@ % % (c) 2020 Hochschule Rapperswil % -\chapter{Dreieckstest und Beta-Funktion\label{chapter:dreieck}} -\lhead{Dreieckstest und Beta-Funktion} +\chapter{$\int P(t) e^{-t^2} \,dt$ in geschlossener Form? +\label{chapter:dreieck}} +\lhead{Integrierbarkeit in geschlossener Form} \begin{refsection} \chapterauthor{Andreas Müller} \noindent -Mit dem Dreieckstest kann man feststellen, wie gut ein Geruchs- -oder Geschmackstester verschiedene Gerüche oder Geschmäcker -unterscheiden kann. -Seine wahrscheinlichkeitstheoretische Erklärung benötigt die Beta-Funktion, -man kann die Beta-Funktion als durchaus als die mathematische Grundlage -der Weindegustation -bezeichnen. +Der Risch-Algorithmus erlaubt, eine definitive Antwort darauf zu geben, +ob eine elementare Funktion eine Stammfunktion in geschlossener Form hat. +Der Algorithmus ist jedoch ziemlich kompliziert. +In diesem Kapitel soll ein spezieller Fall mit Hilfe der Theorie der +orthogonale Polynome, speziell der Hermite-Polynome, behandelt werden, +wie er in der Arbeit \cite{dreieck:polint} behandelt wurde. \input{papers/dreieck/teil0.tex} \input{papers/dreieck/teil1.tex} diff --git a/buch/papers/dreieck/references.bib b/buch/papers/dreieck/references.bib index d2bbe08..47bd865 100644 --- a/buch/papers/dreieck/references.bib +++ b/buch/papers/dreieck/references.bib @@ -4,32 +4,12 @@ % (c) 2020 Autor, Hochschule Rapperswil % -@online{dreieck:bibtex, - title = {BibTeX}, - url = {https://de.wikipedia.org/wiki/BibTeX}, - date = {2020-02-06}, - year = {2020}, - month = {2}, - day = {6} +@article{dreieck:polint, + author = { George Stoica }, + title = { Polynomials and Integration in Finite Terms }, + journal = { Amer. Math. Monthly }, + volume = 129, + year = 2022, + number = 1, + pages = {80--81} } - -@book{dreieck:numerical-analysis, - title = {Numerical Analysis}, - author = {David Kincaid and Ward Cheney}, - publisher = {American Mathematical Society}, - year = {2002}, - isbn = {978-8-8218-4788-6}, - inseries = {Pure and applied undegraduate texts}, - volume = {2} -} - -@article{dreieck:mendezmueller, - author = { Tabea Méndez and Andreas Müller }, - title = { Noncommutative harmonic analysis and image registration }, - journal = { Appl. Comput. Harmon. Anal.}, - year = 2019, - volume = 47, - pages = {607--627}, - url = {https://doi.org/10.1016/j.acha.2017.11.004} -} - diff --git a/buch/papers/dreieck/teil0.tex b/buch/papers/dreieck/teil0.tex index bcf2cf8..584f12b 100644 --- a/buch/papers/dreieck/teil0.tex +++ b/buch/papers/dreieck/teil0.tex @@ -3,7 +3,48 @@ % % (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil % -\section{Testprinzip\label{dreieck:section:testprinzip}} -\rhead{Testprinzip} +\section{Problemstellung\label{dreieck:section:problemstellung}} +\rhead{Problemstellung} +Es ist bekannt, dass das Fehlerintegral +\[ +\frac{1}{\sqrt{2\pi}\sigma} \int_{-\infty}^x e^{-\frac{t^2}{2\sigma}}\,dt +\] +nicht in geschlossener Form dargestellt werden kann. +Mit der in Kapitel~\ref{buch:chapter:integral} skizzierten Theorie von +Liouville und dem Risch-Algorithmus kann dies strengt gezeigt werden. +Andererseits gibt es durchaus Integranden, die $e^{-t^2}$ enthalten, +für die eine Stammfunktion in geschlossener Form gefunden werden kann. +Zum Beispiel folgt aus der Ableitung +\[ +\frac{d}{dt} e^{-t^2} += +-2te^{-t^2} +\] +die Stammfunktion +\[ +\int te^{-t^2}\,dt += +-\frac12 e^{-t^2}. +\] +Leitet man $e^{-t^2}$ zweimal ab, erhält man +\[ +\frac{d^2}{dt^2} e^{-t^2} += +(4t^2-2) e^{-t^2} +\qquad\Rightarrow\qquad +\int (t^2-\frac12) e^{-t^2}\,dt += +\frac14 +e^{-t^2}. +\] +Es gibt also eine viele weitere Polynome $P(t)$, für die der Integrand +$P(t)e^{-t^2}$ eine Stammfunktion in geschlossener Form hat. +Damit stellt sich jetzt das folgende allgemeine Problem. + +\begin{problem} +\label{dreieck:problem} +Für welche Polynome $P(t)$ hat der Integrand $P(t)e^{-t^2}$ +eine elementare Stammfunktion? +\end{problem} diff --git a/buch/papers/dreieck/teil1.tex b/buch/papers/dreieck/teil1.tex index 4abe2e1..f03c425 100644 --- a/buch/papers/dreieck/teil1.tex +++ b/buch/papers/dreieck/teil1.tex @@ -3,9 +3,91 @@ % % (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil % -\section{Ordnungsstatistik und Beta-Funktion -\label{dreieck:section:ordnungsstatistik}} -\rhead{} +\section{Hermite-Polynome +\label{dreieck:section:hermite-polynome}} +\rhead{Hermite-Polyome} +In Abschnitt~\ref{dreieck:section:problemstellung} hat sich schon angedeutet, +dass die Polynome, die man durch Ableiten von $e^{-t^2}$ erhalten +kann, bezüglich des gestellten Problems besondere Eigenschaften +haben. +Zunächst halten wir fest, dass die Ableitung einer Funktion der Form +$P(t)e^{-t^2}$ mit einem Polynom $P(t)$ +\begin{equation} +\frac{d}{dt} P(t)e^{-t^2} += +P'(t)e^{-t^2} -2tP(t)e^{-t^2} += +(P'(t)-2tP(t)) e^{-t^2} +\label{dreieck:eqn:ableitung} +\end{equation} +ist. +Insbesondere hat die Ableitung wieder die Form $Q(t)e^{-t^2}$ +mit einem Polynome $Q(t)$, welches man auch als +\[ +Q(t) += +e^{t^2}\frac{d}{dt}P(t)e^{-t^2} +\] +erhalten kann. +Die Polynome, die man aus der Funktion $H_0(t)=e^{-t^2}$ durch +Ableiten erhalten kann, wurden bereits in +Abschnitt~\ref{buch:orthogonalitaet:section:rodrigues} +bis auf ein Vorzeichen hergeleitet, sie heissen die Hermite-Polynome +und es gilt +\[ +H_n(t) += +(-1)^n +e^{t^2} \frac{d^n}{dt^n} e^{-t^2}. +\] +Das Vorzeichen dient dazu sicherzustellen, dass der Leitkoeffizient +immer $1$ ist. +Das Polynom $H_n(t)$ hat den Grad $n$. + +In Abschnitt wurde auch gezeigt, dass die Polynome $H_n(t)$ +bezüglich des Skalarproduktes +\[ +\langle f,g\rangle_{w} += +\int_{-\infty}^\infty f(t)g(t)e^{-t^2}\,dt, +\qquad +w(t)=e^{-t^2}, +\] +orthogonal sind. +Ausserdem folgt aus \eqref{dreieck:eqn:ableitung} +die Rekursionsbeziehung +\begin{equation} +H_{n}(t) += +2tH_{n-1}(t) +- +H_{n-1}'(t) +\label{dreieck:eqn:rekursion} +\end{equation} +für $n>0$. + +Im Hinblick auf die Problemstellung ist jetzt die Frage interessant, +ob die Integranden $H_n(t)e^{-t^2}$ eine Stammfunktion in geschlossener +Form haben. +Mit Hilfe der Rekursionsbeziehung~\eqref{dreieck:eqn:rekursion} +kann man für $n>0$ unmittelbar verifizieren, dass +\begin{align*} +\int H_n(t)e^{-t^2}\,dt +&= +\int \bigl( 2tH_{n-1}(t) - H'_{n-1}(t)\bigr)e^{-t^2}\,dt +\\ +&= +-\int \bigl( \exp'(-t^2) H_{n-1}(t) + H'_{n-1}(t)\bigr)e^{-t^2}\,dt +\\ +&= +-\int \bigl( e^{-t^2}H_{n-1}(t)\bigr)' \,dt += +-e^{-t^2}H_{n-1}(t) +\end{align*} +ist. +Für $n>0$ hat also $H_n(t)e^{-t^2}$ eine elementare Stammfunktion. +Die Hermite-Polynome sind also Lösungen für das +Problem~\ref{dreieck:problem}. diff --git a/buch/papers/dreieck/teil2.tex b/buch/papers/dreieck/teil2.tex index 83ea3cb..c5a2826 100644 --- a/buch/papers/dreieck/teil2.tex +++ b/buch/papers/dreieck/teil2.tex @@ -3,7 +3,110 @@ % % (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil % -\section{Wahrscheinlichkeiten im Dreieckstest -\label{dreieck:section:wahrscheinlichkeiten}} -\rhead{Wahrscheinlichkeiten} +\section{Beliebige Polynome +\label{dreieck:section:beliebig}} +\rhead{Beliebige Polynome} +Im Abschnitt~\ref{dreieck:section:hermite-polynome} wurden die +Hermite-Polynome $H_n(t)$ mit $n>0$ als Lösungen des gestellten +Problems erkannt. +Eine Linearkombination von solchen Polynomen hat natürlich +ebenfalls eine elementare Stammfunktion. +Das Problem kann daher neu formuliert werden: + +\begin{problem} +\label{dreieck:problem2} +Welche Polynome $P(t)$ lassen sich aus den Hermite-Polynomen +$H_n(t)$ mit $n>0$ linear kombinieren. +\end{problem} + +Sei jetzt +\[ +P(t) = p_0 + p_1t + \ldots + p_{n-1}t^{n-1} + p_nt^n +\] +ein beliebiges Polynom vom Grad $n$. +Eine elementare Stammfunktion von $P(t)e^{-t^2}$ existiert sicher, +wenn sich $P(t)$ aus den Funktionen $H_n(t)$ mit $n>0$ linear +kombinieren lässt. +Gesucht ist also zunächst eine Darstellung von $P(t)$ als Linearkombination +von Hermite-Polynomen. + +\begin{lemma} +Jedes Polynome $P(t)$ vom Grad $n$ lässt sich auf eindeutige Art und +Weise als Linearkombination +\begin{equation} +P(t) = a_0H_0(t) + a_1H_1(t) + \ldots + a_nH_n(t) += +\sum_{k=0}^n a_nH_n(t) +\label{dreieck:lemma} +\end{equation} +von Hermite-Polynomen schreiben. +\end{lemma} + +\begin{proof}[Beweis] +Zunächst halten wir fest, dass aus der +Rekursionsformel~\eqref{dreieck:rekursion} +folgt, dass der Leitkoeffizient bei jedem Rekursionsschnitt +mit $2$ multipliziert wird. +Der Leitkoeffizient von $H_n(t)$ ist also $2^n$. + +Wir führen den Beweis mit vollständiger Induktion. +Für $n=0$ ist $P(t)=p_0 = p_0 H_0(t)$ als Linearkombination von +Hermite-Polynomen darstellbar, dies ist die Induktionsverankerung. + +Nehmen wir jetzt an, dass sich ein Polynom vom Grad $n-1$ als +Linearkombination der Polynome $H_0(t),\dots,H_{n-1}(t)$ schreiben +lässt und untersuchen wir $P(t)$ vom Grad $n$. +Da der Leitkoeffizient des Polynoms $H_n(t)$ ist $2^n$, ist +\[ +P(t) += +\underbrace{\biggl(P(t) - \frac{p_n}{2^n} H_n(t)\biggr)}_{\displaystyle = Q(t)} ++ +\frac{p_n}{2^n} H_n(t). +\] +Das Polynom $Q(t)$ hat Grad $n-1$, besitzt also nach Induktionsannahme +eine Darstellung +\[ +Q(t) = a_0H_0(t)+a_1H_1(t)+\ldots+a_{n-1}H_{n-1}(t) +\] +als Linearkombination der Polynome $H_0(t),\dots,H_{n-1}(t)$. +Somit ist +\[ +P(t) += a_0H_0(t)+a_1H_1(t)+\ldots+a_{n-1}H_{n-1}(t) + +\frac{p_n}{2^n} H_n(t) +\] +eine Darstellung von $P(t)$ als Linearkombination der Polynome +$H_0(t),\dots,H_n(t)$. +Damit ist der Induktionsschritt vollzogen und das Lemma für alle +$n$ bewiesen. +\end{proof} + +\begin{satz} +\label{dreieck:satz1} +Die Funktion $P(t)e^{-t^2}$ hat genau dann eine elementare Stammfunktion, +wenn in der Darstellung~\eqref{dreieck:lemma} +von $P(t)$ als Linearkombination von Hermite-Polynome $a_0=0$ gilt. +\end{satz} + +\begin{proof}[Beweis] +Es ist +\begin{align*} +\int P(t)e^{-t^2}\,dt +&= +a_0\int e^{-t^2}\,dt ++ +\int +\sum_{k=1} a_kH_k(t)\,dt +\\ +&= +\frac{\sqrt{\pi}}2 +\operatorname{erf}(t) ++ +\sum_{k=1} a_k\int H_k(t)\,dt. +\end{align*} +Da die Integrale in der Summe alle elementar darstellbar sind, +ist das Integral genau dann elementar, wenn $a_0=0$ ist. +\end{proof} + diff --git a/buch/papers/dreieck/teil3.tex b/buch/papers/dreieck/teil3.tex index e2dfd6b..888ceb6 100644 --- a/buch/papers/dreieck/teil3.tex +++ b/buch/papers/dreieck/teil3.tex @@ -3,8 +3,72 @@ % % (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil % -\section{Erweiterungen -\label{dreieck:section:erweiterungen}} -\rhead{Erweiterungen} +\section{Integralbedingung +\label{dreieck:section:integralbedingung}} +\rhead{Lösung} +Die Tatsache, dass die Hermite-Polynome orthogonal sind, erlaubt, das +Kriterium von Satz~\ref{dreieck:satz1} etwas anders zu formulieren. + +Aus den Polynomen $H_n(t)$ lassen sich durch Normierung die +orthonormierten Polynome +\[ +\tilde{H}_n(t) += +\frac{1}{\| H_n\|_w} H_n(t) +\qquad\text{mit}\quad +\|H_n\|_w^2 += +\int_{-\infty}^\infty H_n(t)e^{-t^2}\,dt +\] +bilden. +Da diese Polynome eine orthonormierte Basis des Vektorraums der Polynome +bilden, kann die gesuchte Zerlegung eines Polynoms $P(t)$ auch mit +Hilfe des Skalarproduktes gefunden werden: +\begin{align*} +P(t) +&= +\sum_{k=1}^n +\langle \tilde{H}_k, P\rangle_w +\tilde{H}_k(t) += +\sum_{k=1}^n +\biggl\langle \frac{H_k}{\|H_k\|_w}, P\biggr\rangle_w +\frac{H_k(t)}{\|H_k\|_w} += +\sum_{k=1}^n +\underbrace{ +\frac{ \langle H_k, P\rangle_w }{\|H_k\|_w^2} +}_{\displaystyle =a_k} +H_k(t). +\end{align*} +Die Darstellung von $P(t)$ als Linearkombination von Hermite-Polynomen +hat die Koeffizienten +\[ +a_k = \frac{\langle H_k,P\rangle_w}{\|H_k\|_w^2}. +\] +Aus dem Kriterium $a_0=0$ dafür, dass eine elementare Stammfunktion +von $P(t)e^{-t^2}$ existiert, wird daher die Bedingung, dass +$\langle H_0,P\rangle_w=0$ ist. +Da $H_0(t)=1$ ist, folgt als Bedingung +\[ +a_0 += +\langle H_0,P\rangle_w += +\int_{-\infty}^\infty P(t) e^{-t^2}\,dt += +0. +\] + +\begin{satz} +Ein Integrand der Form $P(t)e^{-t^2}$ mit einem Polynom $P(t)$ +hat genau dann eine elementare Stammfunktion, wenn +\[ +\int_{-\infty}^\infty P(t)e^{-t^2}\,dt = 0 +\] +ist. +\end{satz} + + -- cgit v1.2.1 From 54ab4af72ff10d4e5b739ac0e9d727482b9d5a15 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 7 Jun 2022 12:43:02 +0200 Subject: fix typos --- buch/papers/dreieck/main.tex | 2 +- buch/papers/dreieck/teil0.tex | 4 ++-- buch/papers/dreieck/teil2.tex | 17 ++++++++++------- buch/papers/dreieck/teil3.tex | 5 +++-- 4 files changed, 16 insertions(+), 12 deletions(-) diff --git a/buch/papers/dreieck/main.tex b/buch/papers/dreieck/main.tex index b9f8c3b..fecaf93 100644 --- a/buch/papers/dreieck/main.tex +++ b/buch/papers/dreieck/main.tex @@ -15,7 +15,7 @@ ob eine elementare Funktion eine Stammfunktion in geschlossener Form hat. Der Algorithmus ist jedoch ziemlich kompliziert. In diesem Kapitel soll ein spezieller Fall mit Hilfe der Theorie der orthogonale Polynome, speziell der Hermite-Polynome, behandelt werden, -wie er in der Arbeit \cite{dreieck:polint} behandelt wurde. +wie er in der Arbeit \cite{dreieck:polint} untersucht wurde. \input{papers/dreieck/teil0.tex} \input{papers/dreieck/teil1.tex} diff --git a/buch/papers/dreieck/teil0.tex b/buch/papers/dreieck/teil0.tex index 584f12b..65eff7a 100644 --- a/buch/papers/dreieck/teil0.tex +++ b/buch/papers/dreieck/teil0.tex @@ -33,9 +33,9 @@ Leitet man $e^{-t^2}$ zweimal ab, erhält man = (4t^2-2) e^{-t^2} \qquad\Rightarrow\qquad -\int (t^2-\frac12) e^{-t^2}\,dt +\int (t^2-{\textstyle\frac12}) e^{-t^2}\,dt = -\frac14 +{\textstyle\frac14} e^{-t^2}. \] Es gibt also eine viele weitere Polynome $P(t)$, für die der Integrand diff --git a/buch/papers/dreieck/teil2.tex b/buch/papers/dreieck/teil2.tex index c5a2826..8e89f6a 100644 --- a/buch/papers/dreieck/teil2.tex +++ b/buch/papers/dreieck/teil2.tex @@ -16,10 +16,10 @@ Das Problem kann daher neu formuliert werden: \begin{problem} \label{dreieck:problem2} Welche Polynome $P(t)$ lassen sich aus den Hermite-Polynomen -$H_n(t)$ mit $n>0$ linear kombinieren. +$H_n(t)$ mit $n>0$ linear kombinieren? \end{problem} -Sei jetzt +Sei also \[ P(t) = p_0 + p_1t + \ldots + p_{n-1}t^{n-1} + p_nt^n \] @@ -44,7 +44,7 @@ von Hermite-Polynomen schreiben. \begin{proof}[Beweis] Zunächst halten wir fest, dass aus der -Rekursionsformel~\eqref{dreieck:rekursion} +Rekursionsformel~\eqref{dreieck:eqn:rekursion} folgt, dass der Leitkoeffizient bei jedem Rekursionsschnitt mit $2$ multipliziert wird. Der Leitkoeffizient von $H_n(t)$ ist also $2^n$. @@ -53,10 +53,12 @@ Wir führen den Beweis mit vollständiger Induktion. Für $n=0$ ist $P(t)=p_0 = p_0 H_0(t)$ als Linearkombination von Hermite-Polynomen darstellbar, dies ist die Induktionsverankerung. -Nehmen wir jetzt an, dass sich ein Polynom vom Grad $n-1$ als +Wir nehmen jetzt im Sinne der Induktionsannahme an, +dass sich ein Polynom vom Grad $n-1$ als Linearkombination der Polynome $H_0(t),\dots,H_{n-1}(t)$ schreiben -lässt und untersuchen wir $P(t)$ vom Grad $n$. -Da der Leitkoeffizient des Polynoms $H_n(t)$ ist $2^n$, ist +lässt und untersuchen ein Polynom $P(t)$ vom Grad $n$. +Da der Leitkoeffizient des Polynoms $H_n(t)$ ist $2^n$, ist zerlegen +wir \[ P(t) = @@ -86,7 +88,7 @@ $n$ bewiesen. \label{dreieck:satz1} Die Funktion $P(t)e^{-t^2}$ hat genau dann eine elementare Stammfunktion, wenn in der Darstellung~\eqref{dreieck:lemma} -von $P(t)$ als Linearkombination von Hermite-Polynome $a_0=0$ gilt. +von $P(t)$ als Linearkombination von Hermite-Polynomen $a_0=0$ gilt. \end{satz} \begin{proof}[Beweis] @@ -100,6 +102,7 @@ a_0\int e^{-t^2}\,dt \sum_{k=1} a_kH_k(t)\,dt \\ &= +a_0 \frac{\sqrt{\pi}}2 \operatorname{erf}(t) + diff --git a/buch/papers/dreieck/teil3.tex b/buch/papers/dreieck/teil3.tex index 888ceb6..556a9d9 100644 --- a/buch/papers/dreieck/teil3.tex +++ b/buch/papers/dreieck/teil3.tex @@ -7,7 +7,8 @@ \label{dreieck:section:integralbedingung}} \rhead{Lösung} Die Tatsache, dass die Hermite-Polynome orthogonal sind, erlaubt, das -Kriterium von Satz~\ref{dreieck:satz1} etwas anders zu formulieren. +Kriterium von Satz~\ref{dreieck:satz1} in einer besonders attraktiven +Integralform zu formulieren. Aus den Polynomen $H_n(t)$ lassen sich durch Normierung die orthonormierten Polynome @@ -42,7 +43,7 @@ P(t) H_k(t). \end{align*} Die Darstellung von $P(t)$ als Linearkombination von Hermite-Polynomen -hat die Koeffizienten +hat somit die Koeffizienten \[ a_k = \frac{\langle H_k,P\rangle_w}{\|H_k\|_w^2}. \] -- cgit v1.2.1 From 4220519090661503f243902aa58f48343920e89c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 7 Jun 2022 12:47:03 +0200 Subject: index entries added --- buch/papers/dreieck/main.tex | 2 ++ buch/papers/dreieck/teil1.tex | 1 + buch/papers/dreieck/teil3.tex | 2 ++ 3 files changed, 5 insertions(+) diff --git a/buch/papers/dreieck/main.tex b/buch/papers/dreieck/main.tex index fecaf93..d7bc769 100644 --- a/buch/papers/dreieck/main.tex +++ b/buch/papers/dreieck/main.tex @@ -11,6 +11,8 @@ \noindent Der Risch-Algorithmus erlaubt, eine definitive Antwort darauf zu geben, +\index{Risch-Algorithmus}% +\index{elementare Stammfunktion}% ob eine elementare Funktion eine Stammfunktion in geschlossener Form hat. Der Algorithmus ist jedoch ziemlich kompliziert. In diesem Kapitel soll ein spezieller Fall mit Hilfe der Theorie der diff --git a/buch/papers/dreieck/teil1.tex b/buch/papers/dreieck/teil1.tex index f03c425..45c1a23 100644 --- a/buch/papers/dreieck/teil1.tex +++ b/buch/papers/dreieck/teil1.tex @@ -34,6 +34,7 @@ Die Polynome, die man aus der Funktion $H_0(t)=e^{-t^2}$ durch Ableiten erhalten kann, wurden bereits in Abschnitt~\ref{buch:orthogonalitaet:section:rodrigues} bis auf ein Vorzeichen hergeleitet, sie heissen die Hermite-Polynome +\index{Hermite-Polynome}% und es gilt \[ H_n(t) diff --git a/buch/papers/dreieck/teil3.tex b/buch/papers/dreieck/teil3.tex index 556a9d9..c0c046a 100644 --- a/buch/papers/dreieck/teil3.tex +++ b/buch/papers/dreieck/teil3.tex @@ -11,6 +11,8 @@ Kriterium von Satz~\ref{dreieck:satz1} in einer besonders attraktiven Integralform zu formulieren. Aus den Polynomen $H_n(t)$ lassen sich durch Normierung die +\index{orthogonale Polynome}% +\index{Polynome, orthogonale}% orthonormierten Polynome \[ \tilde{H}_n(t) -- cgit v1.2.1 From a5f6eeefeab2d84d51b94f780387be6e5264f0ca Mon Sep 17 00:00:00 2001 From: "ENEZ-PC\\erdem" Date: Tue, 7 Jun 2022 15:30:25 +0200 Subject: synch --- buch/papers/nav/bilder/sextant.jpg | Bin 8280 -> 244565 bytes buch/papers/nav/nautischesdreieck.tex | 28 +--------------------------- buch/papers/nav/trigo.tex | 14 +++++++------- 3 files changed, 8 insertions(+), 34 deletions(-) diff --git a/buch/papers/nav/bilder/sextant.jpg b/buch/papers/nav/bilder/sextant.jpg index 53dd784..472e61f 100644 Binary files a/buch/papers/nav/bilder/sextant.jpg and b/buch/papers/nav/bilder/sextant.jpg differ diff --git a/buch/papers/nav/nautischesdreieck.tex b/buch/papers/nav/nautischesdreieck.tex index 36e9c99..d8a14af 100644 --- a/buch/papers/nav/nautischesdreieck.tex +++ b/buch/papers/nav/nautischesdreieck.tex @@ -39,7 +39,7 @@ Unser eigener Standort ist der gesuchte Ecke $P$ und die Ecke $A$ ist in unserem Der Vorteil an der Idee des nautischen Dreiecks ist, dass eine Ecke immer der Nordpol ist. Somit ist diese Ecke immer bekannt und nur deswegen sind die Zusammenhänge von Rektaszension, Sternzeit und Deklination so einfach. -\subsection{Ecke $B$ und $C$ - Bildpunkt $X$ und $Y$} +\subsection{Ecke $B$ und $C$ - Bildpunkt von $X$ und $Y$} Für die Standortermittlung benötigt man als weiteren Punkt ein Gestirn bzw. seinen Bildpunkt auf der Erdkugel. Damit das trigonometrische Rechnen einfacher wird, werden hier zwei Gestirne zur Hilfe genommen. Es gibt diverse Gestirne, die man nutzen kann wie zum Beispiel die Sonne, der Mond oder die vier Navigationsplaneten Venus, Mars, Jupiter und Saturn. @@ -85,32 +85,6 @@ Man benutzt ihn vor allem für die astronomische Navigation auf See. \caption[Sextant]{Sextant} \end{center} \end{figure} -\subsubsection{Eingeschaften} -Für das nautische Dreieck gibt es folgende Eigenschaften: -\begin{center} - \begin{tabular}{ l c l } - Legende && Name / Beziehung \\ - \hline - $\alpha$ && Rektaszension \\ - $\delta$ && Deklination \\ - $\theta$ && Sternzeit von Greenwich\\ - $\phi$ && Geographische Breite\\ - $\tau=\theta-\alpha$ && Stundenwinkel und Längengrad des Gestirns. \\ - $a$ && Azimut\\ - $h$ && Höhe - \end{tabular} -\end{center} -\begin{center} - \begin{tabular}{ l c l } - Eigenschaften \\ - \hline - Seitenlänge Zenit zu Himmelspol= && $\frac{\pi}{2} - \phi$ \\ - Seitenlänge Himmelspol zu Gestirn= && $\frac{\pi}{2} - \delta$ \\ - Seitenlänge Himmelspol zu Gestirn= && $\frac{\pi}{2} - h$ \\ - Winkel von Zenit zu Himmelsnordpol zu Gestirn= && $\pi-\alpha$\\ - Winkel von Himmelsnordpol zu Zenit zu Gestirn= && $\tau$\\ - \end{tabular} -\end{center} \subsection{Bestimmung des eigenen Standortes $P$} Nun hat man die Koordinaten der beiden Gestirne und man weiss die Koordinaten des Nordpols. Damit wir unseren Standort bestimmen können, bilden wir zuerst das Dreieck $ABC$, dann das Dreieck $BPC$ und zum Schluss noch das Dreieck $ABP$. diff --git a/buch/papers/nav/trigo.tex b/buch/papers/nav/trigo.tex index aca8bd2..fa53189 100644 --- a/buch/papers/nav/trigo.tex +++ b/buch/papers/nav/trigo.tex @@ -87,20 +87,21 @@ So kann mit dem Taylorpolynom 2. Grades den Sinus und den Kosinus vom Sphärisch Es gibt ebenfalls folgende Approximierung der Seiten von der Sphäre in die Ebene: \begin{align} a &\approx \sin(a) \nonumber \intertext{und} - a^2 &\approx 1-\cos(a). \nonumber + \frac{a^2}{2} &\approx 1-\cos(a). \nonumber \end{align} Die Korrespondenzen zwischen der ebenen- und sphärischen Trigonometrie werden in den kommenden Abschnitten erläutert. \subsubsection{Sphärischer Satz des Pythagoras} -Die Korrespondenz \[ a^2 \approx 1-cos(a)\] liefert unter Anderem einen entsprechenden Satz des Pythagoras, nämlich +Die Korrespondenz \[ a^2 \approx 1- \cos(a)\] liefert unter Anderem einen entsprechenden Satz des Pythagoras, nämlich \begin{align} \cos(a)\cdot \cos(b) &= \cos(c) \\ - \bigg[1-\frac{a^2}{2}\bigg] \cdot \bigg[1-\frac{b^2}{2}\bigg] &= 1-\frac{c^2}{2} \\ - \xcancel{1}- \frac{a^2}{2} - \frac{b^2}{2} + \xcancel{\frac{a^2b^2}{4}}&= \xcancel{1}- \frac{c^2}{2} \intertext{Höhere Potenzen vernachlässigen} + \bigg[1-\frac{a^2}{2}\bigg] \cdot \bigg[1-\frac{b^2}{2}\bigg] &= 1-\frac{c^2}{2} \intertext{Höhere Potenzen vernachlässigen} + \xcancel{1}- \frac{a^2}{2} - \frac{b^2}{2} + \xcancel{\frac{a^2b^2}{4}}&= \xcancel{1}- \frac{c^2}{2} \\ -a^2-b^2 &=-c^2\\ a^2+b^2&=c^2 \end{align} +Dies ist der wohlbekannte ebener Satz des Pythagoras. \subsubsection{Sphärischer Sinussatz} Den sphärischen Sinussatz @@ -116,7 +117,6 @@ In der sphärischen Trigonometrie gibt es den Seitenkosinussatz \cos \ a = \cos b \cdot \cos c + \sin b \cdot \sin c \cdot \cos \alpha \nonumber \end{align} %Seitenkosinussatz und den Winkelkosinussatz - \begin{align} \cos \gamma = -\cos \alpha \cdot \cos \beta + \sin \alpha \cdot \sin \beta \cdot \cos c, \nonumber \end{align} der nur in der sphärischen Trigonometrie vorhanden ist. @@ -124,8 +124,8 @@ und den Winkelkosinussatz Analog gibt es auch beim Seitenkosinussatz eine Korrespondenz zu \[ a^2 \leftrightarrow 1-\cos(a),\] die den ebenen Kosinussatz herleiten lässt, nämlich \begin{align} \cos(a)&= \cos(b)\cdot \cos(c) + \sin(b) \cdot \sin(c)\cdot \cos(\alpha) \\ - 1-\frac{a^2}{2} &= \bigg[1-\frac{b^2}{2}\bigg]\bigg[1-\frac{c^2}{2}\bigg]+bc\cdot\cos(\alpha) \\ - \xcancel{1}-\frac{a^2}{2} &= \xcancel{1}-\frac{b^2}{2}-\frac{c^2}{2} \xcancel{+\frac{b^2c^2}{4}}+bc \cdot \cos(\alpha)\intertext{Höhere Potenzen vernachlässigen} + 1-\frac{a^2}{2} &= \bigg[1-\frac{b^2}{2}\bigg]\bigg[1-\frac{c^2}{2}\bigg]+bc\cdot\cos(\alpha) \intertext{Höhere Potenzen vernachlässigen} + \xcancel{1}-\frac{a^2}{2} &= \xcancel{1}-\frac{b^2}{2}-\frac{c^2}{2} \xcancel{+\frac{b^2c^2}{4}}+bc \cdot \cos(\alpha)\\ a^2&=b^2+c^2-2bc \cdot \cos(\alpha) \end{align} -- cgit v1.2.1 From fe2c26ed9605f3576abedfd8f0e2068e0c2d40e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Wed, 8 Jun 2022 18:50:57 +0200 Subject: add additional measurements --- buch/papers/nav/beispiel.txt | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/buch/papers/nav/beispiel.txt b/buch/papers/nav/beispiel.txt index 70e3ce2..12d9e9e 100644 --- a/buch/papers/nav/beispiel.txt +++ b/buch/papers/nav/beispiel.txt @@ -5,15 +5,31 @@ Sternzeit: 7h 54m 26.593s 7.90738694h Deneb RA 20h 42m 12.14s 20.703372h -DEC 45 21' 40.3" 45.361194 +DEC 45g 21' 40.3" 45.361194 -H 50g 15' 17.1" 50.254750h +H 50g 15' 21.7" 50.256027 Azi 59g 36' 02.0" 59.600555 +Altair + +RA 19h 51' 53.39" 19.864831h +DEC 8g 55' 42.3 8.928416 + +H 45g 27' 48.1" 45.463361 +Azi 117g 16' 14.1" 117.270583 + +Arktur + +RA 14h 16' 42.14" 14.278372 +DEC 19g 03' 47.6 19.063222 + +H 47g 25' 38.8" 47.427444 +Azi 259g 09' 38.4" 259.160666 + Spica RA 13h 26m 23.44s 13.439844h -DEC -11g 16' 46.8" 11.279666 +DEC -11g 16' 46.8" -11.279666 H 18g 27' 30.0" 18.458333 Azi 240g 23' 52.5" 240.397916 -- cgit v1.2.1 From b116b6ce1b2988cddd9fff3ae4b2008062438ca2 Mon Sep 17 00:00:00 2001 From: "ENEZ-PC\\erdem" Date: Wed, 8 Jun 2022 20:54:01 +0200 Subject: =?UTF-8?q?=EF=BB=BFasd?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- buch/papers/nav/beispiel.txt | 22 +++------------------- 1 file changed, 3 insertions(+), 19 deletions(-) diff --git a/buch/papers/nav/beispiel.txt b/buch/papers/nav/beispiel.txt index 12d9e9e..b8716fc 100644 --- a/buch/papers/nav/beispiel.txt +++ b/buch/papers/nav/beispiel.txt @@ -5,31 +5,15 @@ Sternzeit: 7h 54m 26.593s 7.90738694h Deneb RA 20h 42m 12.14s 20.703372h -DEC 45g 21' 40.3" 45.361194 +DEC 45 21' 40.3" 45.361194 -H 50g 15' 21.7" 50.256027 +H 50g 15' 17.1" 50.254750 Azi 59g 36' 02.0" 59.600555 -Altair - -RA 19h 51' 53.39" 19.864831h -DEC 8g 55' 42.3 8.928416 - -H 45g 27' 48.1" 45.463361 -Azi 117g 16' 14.1" 117.270583 - -Arktur - -RA 14h 16' 42.14" 14.278372 -DEC 19g 03' 47.6 19.063222 - -H 47g 25' 38.8" 47.427444 -Azi 259g 09' 38.4" 259.160666 - Spica RA 13h 26m 23.44s 13.439844h -DEC -11g 16' 46.8" -11.279666 +DEC -11g 16' 46.8" 11.279666 H 18g 27' 30.0" 18.458333 Azi 240g 23' 52.5" 240.397916 -- cgit v1.2.1 From 6f3d0a8adb483394383123e2f4645bdaabba4c32 Mon Sep 17 00:00:00 2001 From: "ENEZ-PC\\erdem" Date: Thu, 9 Jun 2022 19:47:33 +0200 Subject: new chapter beispiel --- buch/papers/nav/bsp.tex | 81 ++++++++++++++++++++++++++++++++++++++++++++++++ buch/papers/nav/main.tex | 1 + 2 files changed, 82 insertions(+) create mode 100644 buch/papers/nav/bsp.tex diff --git a/buch/papers/nav/bsp.tex b/buch/papers/nav/bsp.tex new file mode 100644 index 0000000..6f30022 --- /dev/null +++ b/buch/papers/nav/bsp.tex @@ -0,0 +1,81 @@ +\section{Beispielrechnung} + +\subsection{Einführung} +In diesem Abschnitt wird die Theorie vom Abschnitt 21.6 in einem Praxisbeispiel angewendet. +Wir haben die Deklination, Rektaszension, Höhe der beiden Planeten Deneb und Arktur und die Sternzeit von Greenwich als Ausgangslage. +Die Deklinationen und Rektaszensionen sind von einem vergangenen Datum und die Höhe der Gestirne und die Sternzeit wurden von einem uns unbekannten Ort aus gemessen. +Diesen Punkt gilt es mit dem erlangten Wissen herauszufinden. + +\subsection{Vorgehen} + +\begin{center} + \begin{tabular}{l l l} + 1. & Koordinaten der Bildpunkte der Gestirne bestimmen \\ + 2. & Dreiecke aufzeichnen und richtig beschriften\\ + 3. & Dreieck ABC bestimmmen\\ + 4. & Dreieck BPC bestimmen \\ + 5. & Dreieck ABP bestimmen \\ + 6. & Geographische Breite bestimmen \\ + 7. & Geographische Länge bestimmen \\ + \end{tabular} +\end{center} + +\subsection{Ausgangslage} +Die Rektaszension und die Sternzeit sind in der Regeln in Stunden angegeben. +Für die Umrechnung in Grad kann folgender Zusammenhang verwendet werden: +\[ Stunden \cdot 15 = Grad\]. +Dies wurde hier bereits gemacht. +\begin{center} + \begin{tabular}{l l l} + Sternzeit $s$ & $118.610804^\circ$ \\ + Deneb&\\ + & Rektaszension $RA_{Deneb}$& $310.55058^\circ$ \\ + & Deklination $DEC_{Deneb}$& $45.361194^\circ$ \\ + & Höhe $H_{Deneb}$ & $50.256027^\circ$ \\ + Arktur &\\ + & Rektaszension $RA_{Arktur}$& $214.17558^\circ$ \\ + & Deklination $DEC_{Arktur}$& $19.063222^\circ$ \\ + & Höhe $H_{Arktur}$ & $47.427444^\circ$ \\ + \end{tabular} +\end{center} +\subsection{Koordinaten der Bildpunkte} +Als erstes benötigen wir die Koordinaten der Bildpunkte von Arktur und Deneb. +$\delta$ ist die Breite, $\lambda$ die Länge. +\begin{align} +\delta_{Deneb}&=DEC_{Deneb} = \underline{\underline{45.361194^\circ}} \nonumber \\ +\lambda_{Deneb}&=RA_{Deneb} - s = 310.55058^\circ -118.610804^\circ =\underline{\underline{191.939776^\circ}} \nonumber \\ +\delta_{Arktur}&=DEC_{Arktur} = \underline{\underline{19.063222^\circ}} \nonumber \\ +\lambda_{Arktur}&=RA_{Arktur} - s = 214.17558^\circ -118.610804^\circ = \underline{\underline{5.5647759^\circ}} \nonumber +\end{align} + + +\subsection{Dreiecke definieren} +Das Festlegen der Dreiecke ist essenziell für die korrekten Berechnungen. +BILD +\subsection{Dreieck ABC} +Nun berechnen wir alle Seitenlängen $a$, $b$, $c$ und die Innnenwinkel $\alpha$, $\beta$ und $\gamma$ +Wir können $b$ und $c$ mit den geltenten Zusammenhängen des nautischen Dreiecks wie folgt bestimmen: +\begin{align} + b=90^\circ-DEC_{Deneb} = 90^\circ - 45.361194^\circ = \underline{\underline{44.638806^\circ}}\nonumber \\ + c=90^\circ-DEC_{Arktur} = 90^\circ - 19.063222^\circ = \underline{\underline{70.936778^\circ}} \nonumber +\end{align} +Um $a$ zu bestimmen, benötigen wir zuerst den Winkel \[\alpha= RA_{Deneb} - RA_{Arktur} = 310.55058^\circ -214.17558^\circ = \underline{\underline{96.375^\circ}}.\] +Danach nutzen wir den sphärischen Winkelkosinussatz, um $a$ zu berechnen: +\begin{align} + a &= \cos^{-1}(\cos(b) \cdot \cos(c) + \sin(b) \cdot \sin(c) \cdot \cos(\alpha)) \nonumber \\ + &= \cos^{-1}(\cos(44.638806) \cdot \cos(70.936778) + \sin(44.638806) \cdot \sin(70.936778) \cdot \cos(96.375)) \nonumber \\ + &= \underline{\underline{80.8707801^\circ}} \nonumber +\end{align} +Für $\beta$ und $\gamma$ nutzen wir den sphärischen Seitenkosinussatz: +\begin{align} + \beta &= \cos^{-1} \bigg[\frac{\cos(b)-\cos(a) \cdot \cos(c)}{\sin(a) \cdot \sin(c)}\bigg] \nonumber \\ + &= \cos^{-1} \bigg[\frac{\cos(44.638806)-\cos(80.8707801) \cdot \cos(70.936778)}{\sin(80.8707801) \cdot \sin(70.936778)}\bigg] \nonumber \\ + &= \underline{\underline{45.0115314^\circ}} \nonumber +\end{align} + + \begin{align} + \gamma &= \cos^{-1} \bigg[\frac{\cos(c)-\cos(b) \cdot \cos(a)}{\sin(a) \cdot \sin(b)}\bigg] \nonumber \\ + &= \cos^{-1} \bigg[\frac{\cos(70.936778)-\cos(44.638806) \cdot \cos(80.8707801)}{\sin(80.8707801) \cdot \sin(44.638806)}\bigg] \nonumber \\ + &=\underline{\underline{72.0573328^\circ}} \nonumber +\end{align} + diff --git a/buch/papers/nav/main.tex b/buch/papers/nav/main.tex index 4c52547..37bc83a 100644 --- a/buch/papers/nav/main.tex +++ b/buch/papers/nav/main.tex @@ -15,6 +15,7 @@ \input{papers/nav/sincos.tex} \input{papers/nav/trigo.tex} \input{papers/nav/nautischesdreieck.tex} +\input{papers/nav/bsp.tex} \printbibliography[heading=subbibliography] -- cgit v1.2.1 From 332ac4d8384eb8afee67e290e7660bffa9887263 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Fri, 10 Jun 2022 15:50:16 +0200 Subject: add position subdirectory --- buch/papers/nav/images/Makefile | 27 +- buch/papers/nav/images/common.inc | 156 +----------- buch/papers/nav/images/dreieck3d1.pdf | Bin 90451 -> 85369 bytes buch/papers/nav/images/dreieck3d1.pov | 3 + buch/papers/nav/images/dreieck3d2.pdf | Bin 69523 -> 64256 bytes buch/papers/nav/images/dreieck3d2.pov | 2 + buch/papers/nav/images/dreieck3d3.pdf | Bin 82512 -> 77179 bytes buch/papers/nav/images/dreieck3d3.pov | 2 + buch/papers/nav/images/dreieck3d4.pdf | Bin 85037 -> 84768 bytes buch/papers/nav/images/dreieck3d4.pov | 2 + buch/papers/nav/images/dreieck3d5.pdf | Bin 70045 -> 64209 bytes buch/papers/nav/images/dreieck3d5.pov | 2 + buch/papers/nav/images/dreieck3d6.pov | 2 + buch/papers/nav/images/dreieck3d7.pov | 2 + buch/papers/nav/images/dreieck3d8.jpg | Bin 93432 -> 90015 bytes buch/papers/nav/images/dreieck3d8.pdf | Bin 107370 -> 103952 bytes buch/papers/nav/images/dreieck3d8.pov | 1 + buch/papers/nav/images/macros.inc | 343 ++++++++++++++++++++++++++ buch/papers/nav/images/position/Makefile | 54 ++++ buch/papers/nav/images/position/common.inc | 37 +++ buch/papers/nav/images/position/common.tex | 32 +++ buch/papers/nav/images/position/position1.pdf | Bin 0 -> 107297 bytes buch/papers/nav/images/position/position1.pov | 71 ++++++ buch/papers/nav/images/position/position1.tex | 55 +++++ buch/papers/nav/images/position/position2.pdf | Bin 0 -> 90563 bytes buch/papers/nav/images/position/position2.pov | 70 ++++++ buch/papers/nav/images/position/position2.tex | 53 ++++ buch/papers/nav/images/position/position3.pdf | Bin 0 -> 85020 bytes buch/papers/nav/images/position/position3.pov | 48 ++++ buch/papers/nav/images/position/position3.tex | 51 ++++ buch/papers/nav/images/position/position4.pdf | Bin 0 -> 86376 bytes buch/papers/nav/images/position/position4.pov | 69 ++++++ buch/papers/nav/images/position/position4.tex | 50 ++++ buch/papers/nav/images/position/position5.pdf | Bin 0 -> 91680 bytes buch/papers/nav/images/position/position5.pov | 69 ++++++ buch/papers/nav/images/position/position5.tex | 50 ++++ 36 files changed, 1087 insertions(+), 164 deletions(-) create mode 100644 buch/papers/nav/images/macros.inc create mode 100644 buch/papers/nav/images/position/Makefile create mode 100644 buch/papers/nav/images/position/common.inc create mode 100644 buch/papers/nav/images/position/common.tex create mode 100644 buch/papers/nav/images/position/position1.pdf create mode 100644 buch/papers/nav/images/position/position1.pov create mode 100644 buch/papers/nav/images/position/position1.tex create mode 100644 buch/papers/nav/images/position/position2.pdf create mode 100644 buch/papers/nav/images/position/position2.pov create mode 100644 buch/papers/nav/images/position/position2.tex create mode 100644 buch/papers/nav/images/position/position3.pdf create mode 100644 buch/papers/nav/images/position/position3.pov create mode 100644 buch/papers/nav/images/position/position3.tex create mode 100644 buch/papers/nav/images/position/position4.pdf create mode 100644 buch/papers/nav/images/position/position4.pov create mode 100644 buch/papers/nav/images/position/position4.tex create mode 100644 buch/papers/nav/images/position/position5.pdf create mode 100644 buch/papers/nav/images/position/position5.pov create mode 100644 buch/papers/nav/images/position/position5.tex diff --git a/buch/papers/nav/images/Makefile b/buch/papers/nav/images/Makefile index da4defa..39bfbcf 100644 --- a/buch/papers/nav/images/Makefile +++ b/buch/papers/nav/images/Makefile @@ -51,73 +51,80 @@ DREIECKE3D = \ dreieck3d5.pdf \ dreieck3d6.pdf \ dreieck3d7.pdf \ - dreieck3d8.pdf + dreieck3d8.pdf dreiecke3d: $(DREIECKE3D) POVRAYOPTIONS = -W1080 -H1080 #POVRAYOPTIONS = -W480 -H480 -dreieck3d1.png: dreieck3d1.pov common.inc +dreieck3d1.png: dreieck3d1.pov common.inc macros.inc povray +A0.1 $(POVRAYOPTIONS) -Odreieck3d1.png dreieck3d1.pov dreieck3d1.jpg: dreieck3d1.png convert dreieck3d1.png -density 300 -units PixelsPerInch dreieck3d1.jpg dreieck3d1.pdf: dreieck3d1.tex dreieck3d1.jpg pdflatex dreieck3d1.tex -dreieck3d2.png: dreieck3d2.pov common.inc +dreieck3d2.png: dreieck3d2.pov common.inc macros.inc povray +A0.1 $(POVRAYOPTIONS) -Odreieck3d2.png dreieck3d2.pov dreieck3d2.jpg: dreieck3d2.png convert dreieck3d2.png -density 300 -units PixelsPerInch dreieck3d2.jpg dreieck3d2.pdf: dreieck3d2.tex dreieck3d2.jpg pdflatex dreieck3d2.tex -dreieck3d3.png: dreieck3d3.pov common.inc +dreieck3d3.png: dreieck3d3.pov common.inc macros.inc povray +A0.1 $(POVRAYOPTIONS) -Odreieck3d3.png dreieck3d3.pov dreieck3d3.jpg: dreieck3d3.png convert dreieck3d3.png -density 300 -units PixelsPerInch dreieck3d3.jpg dreieck3d3.pdf: dreieck3d3.tex dreieck3d3.jpg pdflatex dreieck3d3.tex -dreieck3d4.png: dreieck3d4.pov common.inc +dreieck3d4.png: dreieck3d4.pov common.inc macros.inc povray +A0.1 $(POVRAYOPTIONS) -Odreieck3d4.png dreieck3d4.pov dreieck3d4.jpg: dreieck3d4.png convert dreieck3d4.png -density 300 -units PixelsPerInch dreieck3d4.jpg dreieck3d4.pdf: dreieck3d4.tex dreieck3d4.jpg pdflatex dreieck3d4.tex -dreieck3d5.png: dreieck3d5.pov common.inc +dreieck3d5.png: dreieck3d5.pov common.inc macros.inc povray +A0.1 $(POVRAYOPTIONS) -Odreieck3d5.png dreieck3d5.pov dreieck3d5.jpg: dreieck3d5.png convert dreieck3d5.png -density 300 -units PixelsPerInch dreieck3d5.jpg dreieck3d5.pdf: dreieck3d5.tex dreieck3d5.jpg pdflatex dreieck3d5.tex -dreieck3d6.png: dreieck3d6.pov common.inc +dreieck3d6.png: dreieck3d6.pov common.inc macros.inc povray +A0.1 $(POVRAYOPTIONS) -Odreieck3d6.png dreieck3d6.pov dreieck3d6.jpg: dreieck3d6.png convert dreieck3d6.png -density 300 -units PixelsPerInch dreieck3d6.jpg dreieck3d6.pdf: dreieck3d6.tex dreieck3d6.jpg pdflatex dreieck3d6.tex -dreieck3d7.png: dreieck3d7.pov common.inc +dreieck3d7.png: dreieck3d7.pov common.inc macros.inc povray +A0.1 $(POVRAYOPTIONS) -Odreieck3d7.png dreieck3d7.pov dreieck3d7.jpg: dreieck3d7.png convert dreieck3d7.png -density 300 -units PixelsPerInch dreieck3d7.jpg dreieck3d7.pdf: dreieck3d7.tex dreieck3d7.jpg pdflatex dreieck3d7.tex -dreieck3d8.png: dreieck3d8.pov common.inc +dreieck3d8.png: dreieck3d8.pov common.inc macros.inc povray +A0.1 $(POVRAYOPTIONS) -Odreieck3d8.png dreieck3d8.pov dreieck3d8.jpg: dreieck3d8.png convert dreieck3d8.png -density 300 -units PixelsPerInch dreieck3d8.jpg dreieck3d8.pdf: dreieck3d8.tex dreieck3d8.jpg pdflatex dreieck3d8.tex -dreieck3d9.png: dreieck3d9.pov common.inc +dreieck3d9.png: dreieck3d9.pov common.inc macros.inc povray +A0.1 $(POVRAYOPTIONS) -Odreieck3d9.png dreieck3d9.pov dreieck3d9.jpg: dreieck3d9.png convert dreieck3d9.png -density 300 -units PixelsPerInch dreieck3d9.jpg dreieck3d9.pdf: dreieck3d9.tex dreieck3d9.jpg pdflatex dreieck3d9.tex +dreieck3d10.png: dreieck3d10.pov common.inc macros.inc + povray +A0.1 $(POVRAYOPTIONS) -Odreieck3d10.png dreieck3d10.pov +dreieck3d10.jpg: dreieck3d10.png + convert dreieck3d10.png -density 300 -units PixelsPerInch dreieck3d10.jpg +dreieck3d10.pdf: dreieck3d10.tex dreieck3d10.jpg macros.inc + pdflatex dreieck3d10.tex + diff --git a/buch/papers/nav/images/common.inc b/buch/papers/nav/images/common.inc index 2c0ae6e..7b861de 100644 --- a/buch/papers/nav/images/common.inc +++ b/buch/papers/nav/images/common.inc @@ -5,6 +5,7 @@ // #version 3.7; #include "colors.inc" +#include "macros.inc" global_settings { assumed_gamma 1 @@ -12,12 +13,6 @@ global_settings { #declare imagescale = 0.034; -#declare O = <0, 0, 0>; -#declare A = vnormalize(< 0, 1, 0>); -#declare B = vnormalize(< 1, 2, -8>); -#declare C = vnormalize(< 5, 1, 0>); -#declare P = vnormalize(< 5, -1, -7>); - camera { location <40, 20, -20> look_at <0, 0.24, -0.20> @@ -26,7 +21,7 @@ camera { } light_source { - <10, 10, -40> color White + <30, 10, -40> color White area_light <1,0,0> <0,0,1>, 10, 10 adaptive 1 jitter @@ -38,150 +33,3 @@ sky_sphere { } } -// -// draw an arrow from to with thickness with -// color -// -#macro arrow(from, to, arrowthickness, c) -#declare arrowdirection = vnormalize(to - from); -#declare arrowlength = vlength(to - from); -union { - sphere { - from, 1.1 * arrowthickness - } - cylinder { - from, - from + (arrowlength - 5 * arrowthickness) * arrowdirection, - arrowthickness - } - cone { - from + (arrowlength - 5 * arrowthickness) * arrowdirection, - 2 * arrowthickness, - to, - 0 - } - pigment { - color c - } - finish { - specular 0.9 - metallic - } -} -#end - -#macro grosskreis(normale, staerke) -union { - #declare v1 = vcross(normale, ); - #declare v1 = vnormalize(v1); - #declare v2 = vnormalize(vcross(v1, normale)); - #declare phisteps = 100; - #declare phistep = pi / phisteps; - #declare phi = 0; - #declare p1 = v1; - #while (phi < 2 * pi - phistep/2) - sphere { p1, staerke } - #declare phi = phi + phistep; - #declare p2 = v1 * cos(phi) + v2 * sin(phi); - cylinder { p1, p2, staerke } - #declare p1 = p2; - #end -} -#end - -#macro seite(p, q, staerke) - #declare n = vcross(p, q); - intersection { - grosskreis(n, staerke) - plane { -vcross(n, q) * vdot(vcross(n, q), p), 0 } - plane { -vcross(n, p) * vdot(vcross(n, p), q), 0 } - } -#end - -#macro winkel(w, p, q, staerke, r) - #declare n = vnormalize(w); - #declare pp = vnormalize(p - vdot(n, p) * n); - #declare qq = vnormalize(q - vdot(n, q) * n); - intersection { - sphere { O, 1 + staerke } - cone { O, 0, 1.2 * vnormalize(w), r } - plane { -vcross(n, qq) * vdot(vcross(n, qq), pp), 0 } - plane { -vcross(n, pp) * vdot(vcross(n, pp), qq), 0 } - } -#end - -#macro punkt(p, staerke) - sphere { p, 1.5 * staerke } -#end - -#macro dreieck(p, q, r, farbe) - #declare n1 = vnormalize(vcross(p, q)); - #declare n2 = vnormalize(vcross(q, r)); - #declare n3 = vnormalize(vcross(r, p)); - intersection { - plane { n1, 0 } - plane { n2, 0 } - plane { n3, 0 } - sphere { <0, 0, 0>, 1 + 0.001 } - pigment { - color farbe - } - finish { - metallic - specular 0.4 - } - } -#end - -#macro ebenerwinkel(a, p, q, s, r, farbe) - #declare n = vnormalize(-vcross(p, q)); - #declare np = vnormalize(-vcross(p, n)); - #declare nq = -vnormalize(-vcross(q, n)); -// arrow(a, a + n, 0.02, White) -// arrow(a, a + np, 0.01, Red) -// arrow(a, a + nq, 0.01, Blue) - intersection { - cylinder { a - (s/2) * n, a + (s/2) * n, r } - plane { np, vdot(np, a) } - plane { nq, vdot(nq, a) } - pigment { - farbe - } - finish { - metallic - specular 0.5 - } - } -#end - -#macro komplement(a, p, q, s, r, farbe) - #declare n = vnormalize(-vcross(p, q)); -// arrow(a, a + n, 0.015, Orange) - #declare m = vnormalize(-vcross(q, n)); -// arrow(a, a + m, 0.015, Pink) - ebenerwinkel(a, p, m, s, r, farbe) -#end - -#declare fett = 0.015; -#declare fein = 0.010; - -#declare klein = 0.3; -#declare gross = 0.4; - -#declare dreieckfarbe = rgb<0.6,0.6,0.6>; -#declare rot = rgb<0.8,0.2,0.2>; -#declare gruen = rgb<0,0.6,0>; -#declare blau = rgb<0.2,0.2,0.8>; - -#declare kugelfarbe = rgb<0.8,0.8,0.8>; -#declare kugeltransparent = rgbt<0.8,0.8,0.8,0.5>; - -#macro kugel(farbe) -sphere { - <0, 0, 0>, 1 - pigment { - color farbe - } -} -#end - diff --git a/buch/papers/nav/images/dreieck3d1.pdf b/buch/papers/nav/images/dreieck3d1.pdf index 015bce7..fecaece 100644 Binary files a/buch/papers/nav/images/dreieck3d1.pdf and b/buch/papers/nav/images/dreieck3d1.pdf differ diff --git a/buch/papers/nav/images/dreieck3d1.pov b/buch/papers/nav/images/dreieck3d1.pov index e491075..336161c 100644 --- a/buch/papers/nav/images/dreieck3d1.pov +++ b/buch/papers/nav/images/dreieck3d1.pov @@ -3,8 +3,11 @@ // // (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule // +#version 3.7; #include "common.inc" +kugel(kugeldunkel) + union { seite(A, B, fett) seite(B, C, fett) diff --git a/buch/papers/nav/images/dreieck3d2.pdf b/buch/papers/nav/images/dreieck3d2.pdf index 6b3f09d..28af5fe 100644 Binary files a/buch/papers/nav/images/dreieck3d2.pdf and b/buch/papers/nav/images/dreieck3d2.pdf differ diff --git a/buch/papers/nav/images/dreieck3d2.pov b/buch/papers/nav/images/dreieck3d2.pov index c0625ce..9e57d22 100644 --- a/buch/papers/nav/images/dreieck3d2.pov +++ b/buch/papers/nav/images/dreieck3d2.pov @@ -5,6 +5,8 @@ // #include "common.inc" +kugel(kugeldunkel) + union { seite(A, B, fett) seite(B, C, fett) diff --git a/buch/papers/nav/images/dreieck3d3.pdf b/buch/papers/nav/images/dreieck3d3.pdf index 7d79455..4fc4fc1 100644 Binary files a/buch/papers/nav/images/dreieck3d3.pdf and b/buch/papers/nav/images/dreieck3d3.pdf differ diff --git a/buch/papers/nav/images/dreieck3d3.pov b/buch/papers/nav/images/dreieck3d3.pov index b6f64d5..bde780b 100644 --- a/buch/papers/nav/images/dreieck3d3.pov +++ b/buch/papers/nav/images/dreieck3d3.pov @@ -5,6 +5,8 @@ // #include "common.inc" +kugel(kugeldunkel) + union { seite(A, B, fett) seite(B, C, fett) diff --git a/buch/papers/nav/images/dreieck3d4.pdf b/buch/papers/nav/images/dreieck3d4.pdf index e1ea757..0d57fc2 100644 Binary files a/buch/papers/nav/images/dreieck3d4.pdf and b/buch/papers/nav/images/dreieck3d4.pdf differ diff --git a/buch/papers/nav/images/dreieck3d4.pov b/buch/papers/nav/images/dreieck3d4.pov index b6f17e3..08f266b 100644 --- a/buch/papers/nav/images/dreieck3d4.pov +++ b/buch/papers/nav/images/dreieck3d4.pov @@ -5,6 +5,8 @@ // #include "common.inc" +kugel(kugelfarbe) + union { seite(A, B, fein) seite(A, C, fein) diff --git a/buch/papers/nav/images/dreieck3d5.pdf b/buch/papers/nav/images/dreieck3d5.pdf index 0c86d36..a5dd0ae 100644 Binary files a/buch/papers/nav/images/dreieck3d5.pdf and b/buch/papers/nav/images/dreieck3d5.pdf differ diff --git a/buch/papers/nav/images/dreieck3d5.pov b/buch/papers/nav/images/dreieck3d5.pov index 188f181..1aac0dc 100644 --- a/buch/papers/nav/images/dreieck3d5.pov +++ b/buch/papers/nav/images/dreieck3d5.pov @@ -5,6 +5,8 @@ // #include "common.inc" +kugel(kugeldunkel) + union { seite(A, B, fein) seite(A, C, fein) diff --git a/buch/papers/nav/images/dreieck3d6.pov b/buch/papers/nav/images/dreieck3d6.pov index 191a1e7..6bbd1a9 100644 --- a/buch/papers/nav/images/dreieck3d6.pov +++ b/buch/papers/nav/images/dreieck3d6.pov @@ -5,6 +5,8 @@ // #include "common.inc" +kugel(kugeldunkel) + union { seite(A, B, fett) seite(A, C, fett) diff --git a/buch/papers/nav/images/dreieck3d7.pov b/buch/papers/nav/images/dreieck3d7.pov index aae5c6c..45dc5d6 100644 --- a/buch/papers/nav/images/dreieck3d7.pov +++ b/buch/papers/nav/images/dreieck3d7.pov @@ -5,6 +5,8 @@ // #include "common.inc" +kugel(kugeldunkel) + union { seite(A, C, fett) seite(A, P, fett) diff --git a/buch/papers/nav/images/dreieck3d8.jpg b/buch/papers/nav/images/dreieck3d8.jpg index 52bd25e..f24ea33 100644 Binary files a/buch/papers/nav/images/dreieck3d8.jpg and b/buch/papers/nav/images/dreieck3d8.jpg differ diff --git a/buch/papers/nav/images/dreieck3d8.pdf b/buch/papers/nav/images/dreieck3d8.pdf index 9d630aa..da3b110 100644 Binary files a/buch/papers/nav/images/dreieck3d8.pdf and b/buch/papers/nav/images/dreieck3d8.pdf differ diff --git a/buch/papers/nav/images/dreieck3d8.pov b/buch/papers/nav/images/dreieck3d8.pov index 9e9921a..dae7f67 100644 --- a/buch/papers/nav/images/dreieck3d8.pov +++ b/buch/papers/nav/images/dreieck3d8.pov @@ -93,4 +93,5 @@ object { dreieck(A, B, C, White) +kugel(kugeldunkel) diff --git a/buch/papers/nav/images/macros.inc b/buch/papers/nav/images/macros.inc new file mode 100644 index 0000000..2def6fd --- /dev/null +++ b/buch/papers/nav/images/macros.inc @@ -0,0 +1,343 @@ +// +// macros.inc -- 3d Darstellung +// +// (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +// +#version 3.7; +#include "colors.inc" + +// +// Dimensions +// +#declare fett = 0.015; +#declare fein = 0.010; + +#declare klein = 0.3; +#declare gross = 0.4; + +// +// colors +// +#declare dreieckfarbe = rgb<0.6,0.6,0.6>; +#declare rot = rgb<0.8,0.2,0.2>; +#declare gruen = rgb<0,0.6,0>; +#declare blau = rgb<0.2,0.2,0.8>; + +#declare bekannt = rgb<0.2,0.6,1>; +#declare unbekannt = rgb<1.0,0.6,0.8>; + +#declare kugelfarbe = rgb<0.8,0.8,0.8>; +#declare kugeldunkel = rgb<0.4,0.4,0.4>; +#declare kugeltransparent = rgbt<0.8,0.8,0.8,0.5>; + +#declare gitterfarbe = rgb<0.2,0.6,1>; + +// +// Points Points +// +#declare O = <0, 0, 0>; +#declare Nordpol = vnormalize(< 0, 1, 0>); +#declare A = vnormalize(< 0, 1, 0>); +#declare B = vnormalize(< 1, 2, -8>); +#declare C = vnormalize(< 5, 1, 0>); +#declare P = vnormalize(< 5, -1, -7>); + +// +// \brief convert spherical coordinates to recctangular coordinates +// +// \param phi +// \param theta +// +#macro kugelpunkt(phi, theta) + < sin(theta) * cos(phi - pi), cos(theta), sin(theta) * sin(phi - pi) > +#end + +#declare Sakura = kugelpunkt(radians(140.2325498), radians(90 - 35.71548014)); +#declare Deneb = kugelpunkt(radians(191.9397759), radians(90 - 45.361194)); +#declare Spica = kugelpunkt(radians(82.9868559), radians(90 - (-11.279666))); +#declare Altair = kugelpunkt(radians(179.3616609), radians(90 - 8.928416)); +#declare Arktur = kugelpunkt(radians(95.5647759), radians(90 - 19.063222)); + +// +// draw an arrow from to with thickness with +// color +// +#macro arrow(from, to, arrowthickness, c) +#declare arrowdirection = vnormalize(to - from); +#declare arrowlength = vlength(to - from); +union { + sphere { + from, 1.1 * arrowthickness + } + cylinder { + from, + from + (arrowlength - 5 * arrowthickness) * arrowdirection, + arrowthickness + } + cone { + from + (arrowlength - 5 * arrowthickness) * arrowdirection, + 2 * arrowthickness, + to, + 0 + } + pigment { + color c + } + finish { + specular 0.9 + metallic + } +} +#end + +#declare ntsteps = 100; + +// +// \brief Draw a circle +// +// \param b1 basis vector for a coordinate system of the plane containing +// the circle +// \param b2 the other basis vector +// \param o center of the circle +// \param thick diameter of the circular tube +// +#macro kreis(b1, b2, o, thick, maxwinkel) + #declare tpstep = pi / ntsteps; + #declare tp = tpstep; + #declare p1 = b1 + o; + sphere { p1, thick } + #declare tpstep = pi/ntsteps; + #while (tp < (maxwinkel - tpstep/2)) + #declare p2 = cos(tp) * b1 + sin(tp) * b2 + o; + cylinder { p1, p2, thick } + sphere { p2, thick } + #declare p1 = p2; + #declare tp = tp + tpstep; + #end + #if ((tp - tpstep) < maxwinkel) + #declare p2 = cos(maxwinkel) * b1 + sin(maxwinkel) * b2 + o; + cylinder { p1, p2, thick } + sphere { p2, thick } + #end +#end + +// +// \brief Draw a great circle +// +// \param normale the normal of the plane containing the great circle +// \param thick diameter +// +#macro grosskreis(normale, thick) + #declare other = < normale.y, -normale.x, normale.z >; + #declare b1 = vnormalize(vcross(other, normale)); + #declare b2 = vnormalize(vcross(normale, b1)); + kreis(b1, b2, <0,0,0>, thick, 2*pi) +#end + +// +// \brief Draw a circle of latitude +// +// \param theta latitude +// \param thick diameter +// +#macro breitenkreis(theta, thick) + #declare b1 = sin(theta) * kugelpunkt(0, pi/2); + #declare b2 = sin(theta) * kugelpunkt(pi/2, pi/2); + #declare o = < 0, cos(theta), 0 >; + kreis(b1, b2, o, thick, 2*pi) +#end + +// +// \brief Draw the great circle connecting the two points +// +// \param p first point +// \param q second point +// \param staerke diameter +// + +#macro seite(p, q, staerke) + #declare s1 = vnormalize(p); + #declare s2 = vnormalize(q); + #declare w = acos(vdot(s1, s2)); + #declare n = vnormalize(vcross(p, q)); + #declare s2 = vnormalize(vcross(n, s1)); + kreis(s1, s2, O, staerke, w) +#end + +// +// \brief Draw an angle +// +// \param w the edge where the angle is located +// \param p point on the first leg +// \param q point on the second leg +// \param r diameter of the angle +// +#macro winkel(w, p, q, staerke, r) + #declare n = vnormalize(w); + #declare pp = vnormalize(p - vdot(n, p) * n); + #declare qq = vnormalize(q - vdot(n, q) * n); + intersection { + sphere { O, 1 + staerke } + cone { O, 0, 1.2 * vnormalize(w), r } + plane { -vcross(n, qq) * vdot(vcross(n, qq), pp), 0 } + plane { -vcross(n, pp) * vdot(vcross(n, pp), qq), 0 } + } +#end + +// +// \brief Draw a point on the sphere as a circle +// +// \param p the point +// \param staerke the diameter of the point +// +#macro punkt(p, staerke) + sphere { p, 1.5 * staerke } +#end + +// +// \brief Draw a circle as a part of the differently colored cutout from +// the sphere +// +// \param p first point of the triangle +// \param q second point of the triangle +// \param r third point of the triangle +// \param farbe color +// +#macro dreieck(p, q, r, farbe) + #declare n1 = vnormalize(vcross(p, q)); + #declare n2 = vnormalize(vcross(q, r)); + #declare n3 = vnormalize(vcross(r, p)); + intersection { + plane { n1, 0 } + plane { n2, 0 } + plane { n3, 0 } + sphere { <0, 0, 0>, 1 + 0.001 } + pigment { + color farbe + } + finish { + metallic + specular 0.4 + } + } +#end + +// +// \brief +// +// \param a axis of the angle +// \param p first leg +// \param q second leg +// \param s thickness of the angle disk +// \param r radius of the angle disk +// \param farbe color +// +#macro ebenerwinkel(a, p, q, s, r, farbe) + #declare n = vnormalize(-vcross(p, q)); + #declare np = vnormalize(-vcross(p, n)); + #declare nq = -vnormalize(-vcross(q, n)); +// arrow(a, a + n, 0.02, White) +// arrow(a, a + np, 0.01, Red) +// arrow(a, a + nq, 0.01, Blue) + intersection { + cylinder { a - (s/2) * n, a + (s/2) * n, r } + plane { np, vdot(np, a) } + plane { nq, vdot(nq, a) } + pigment { + farbe + } + finish { + metallic + specular 0.5 + } + } +#end + +// +// \brief Show the complement angle +// +// +#macro komplement(a, p, q, s, r, farbe) + #declare n = vnormalize(-vcross(p, q)); +// arrow(a, a + n, 0.015, Orange) + #declare m = vnormalize(-vcross(q, n)); +// arrow(a, a + m, 0.015, Pink) + ebenerwinkel(a, p, m, s, r, farbe) +#end + +// +// \brief Show a coordinate grid on the sphere +// +// \param farbe the color of the grid +// \param thick the line thickness +// +#macro koordinatennetz(farbe, netzschritte, thick) +union { + // circles of latitude + #declare theta = pi/(2*netzschritte); + #declare thetastep = pi/(2*netzschritte); + #while (theta < pi - thetastep/2) + breitenkreis(theta, thick) + #declare theta = theta + thetastep; + #end + // cirles of longitude + #declare phi = 0; + #declare phistep = pi/(2*netzschritte); + #while (phi < pi-phistep/2) + grosskreis(kugelpunkt(phi, pi/2), thick) + #declare phi = phi + phistep; + #end + pigment { + color farbe + } + finish { + specular 0.9 + metallic + } +} +#end + +// +// \brief Display a color of given color +// +// \param farbe the color +// +#macro kugel(farbe) +sphere { + <0, 0, 0>, 1 + pigment { + color farbe + } +} +#end + +// +// \brief Display the earth +// +#macro erde() +sphere { + <0, 0, 0>, 1 + pigment { + image_map { + png "2k_earth_daymap.png" gamma 1.0 + map_type 1 + } + } +} +#end + +// +// achse +// +#macro achse(durchmesser, farbe) + cylinder { + < 0, -1.2, 0 >, <0, 1.2, 0 >, durchmesser + pigment { + color farbe + } + finish { + specular 0.9 + metallic + } + } +#end diff --git a/buch/papers/nav/images/position/Makefile b/buch/papers/nav/images/position/Makefile new file mode 100644 index 0000000..280e59c --- /dev/null +++ b/buch/papers/nav/images/position/Makefile @@ -0,0 +1,54 @@ +# +# Makefile to build images +# +# (c) 2022 +# +all: position + +POSITION = \ + position1.pdf \ + position2.pdf \ + position3.pdf \ + position4.pdf \ + position5.pdf + +position: $(POSITION) + +POVRAYOPTIONS = -W1080 -H1080 +#POVRAYOPTIONS = -W480 -H480 + +position1.png: position1.pov common.inc ../macros.inc + povray +A0.1 $(POVRAYOPTIONS) -Oposition1.png position1.pov +position1.jpg: position1.png + convert position1.png -density 300 -units PixelsPerInch position1.jpg +position1.pdf: position1.tex common.tex position1.jpg + pdflatex position1.tex + +position2.png: position2.pov common.inc ../macros.inc + povray +A0.1 $(POVRAYOPTIONS) -Oposition2.png position2.pov +position2.jpg: position2.png + convert position2.png -density 300 -units PixelsPerInch position2.jpg +position2.pdf: position2.tex common.tex position2.jpg + pdflatex position2.tex + +position3.png: position3.pov common.inc ../macros.inc + povray +A0.1 $(POVRAYOPTIONS) -Oposition3.png position3.pov +position3.jpg: position3.png + convert position3.png -density 300 -units PixelsPerInch position3.jpg +position3.pdf: position3.tex common.tex position3.jpg + pdflatex position3.tex + +position4.png: position4.pov common.inc ../macros.inc + povray +A0.1 $(POVRAYOPTIONS) -Oposition4.png position4.pov +position4.jpg: position4.png + convert position4.png -density 300 -units PixelsPerInch position4.jpg +position4.pdf: position4.tex common.tex position4.jpg + pdflatex position4.tex + +position5.png: position5.pov common.inc ../macros.inc + povray +A0.1 $(POVRAYOPTIONS) -Oposition5.png position5.pov +position5.jpg: position5.png + convert position5.png -density 300 -units PixelsPerInch position5.jpg +position5.pdf: position5.tex common.tex position5.jpg + pdflatex position5.tex + diff --git a/buch/papers/nav/images/position/common.inc b/buch/papers/nav/images/position/common.inc new file mode 100644 index 0000000..b50b8d6 --- /dev/null +++ b/buch/papers/nav/images/position/common.inc @@ -0,0 +1,37 @@ +// +// common.inc -- 3d Darstellung +// +// (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +// +#version 3.7; +#include "colors.inc" +#include "../macros.inc" + +global_settings { + assumed_gamma 1 +} + +#declare imagescale = 0.034; + +camera { + location <40, 20, -20> + look_at <0, 0.24, -0.20> + right x * imagescale + up y * imagescale +} + +light_source { + <30, 10, -40> color White + area_light <1,0,0> <0,0,1>, 10, 10 + adaptive 1 + jitter +} + +sky_sphere { + pigment { + color rgb<1,1,1> + } +} + +kugel(kugeldunkel) +achse(fein, White) diff --git a/buch/papers/nav/images/position/common.tex b/buch/papers/nav/images/position/common.tex new file mode 100644 index 0000000..d72a981 --- /dev/null +++ b/buch/papers/nav/images/position/common.tex @@ -0,0 +1,32 @@ +% +% common.tex +% +% (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% + +\def\labelA{\node at (0.7,3.8) {$A$};} +\def\labelB{\node at (-3.4,-0.8) {$B$};} +\def\labelC{\node at (3.3,-2.1) {$C$};} +\def\labelP{\node at (-1.4,-3.5) {$P$};} + +\def\labelc{\node at (-1.9,2.1) {$c$};} +\def\labela{\node at (-0.2,-1.2) {$a$};} +\def\labelb{\node at (2.6,1.5) {$b$};} + +\def\labelhb{\node at (-2.6,-2.2) {$h_b$};} +\def\labelhc{\node at (1,-2.9) {$h_c$};} +\def\labell{\node at (-0.7,0.3) {$l$};} + +\def\labelalpha{\node at (0.6,2.85) {$\alpha$};} +\def\labelbeta{\node at (-2.5,-0.5) {$\beta$};} +\def\labelgamma{\node at (2.3,-1.2) {$\gamma$};} +\def\labelomega{\node at (0.85,3.3) {$\omega$};} + +\def\labelgammaone{\node at (2.1,-2.0) {$\gamma_1$};} +\def\labelgammatwo{\node at (2.3,-1.3) {$\gamma_2$};} +\def\labelbetaone{\node at (-2.4,-1.4) {$\beta_1$};} +\def\labelbetatwo{\node at (-2.5,-0.8) {$\beta_2$};} + +\def\labelomegalinks{\node at (0.25,3.25) {$\omega$};} +\def\labelomegarechts{\node at (0.85,3.1) {$\omega$};} + diff --git a/buch/papers/nav/images/position/position1.pdf b/buch/papers/nav/images/position/position1.pdf new file mode 100644 index 0000000..1bd9a69 Binary files /dev/null and b/buch/papers/nav/images/position/position1.pdf differ diff --git a/buch/papers/nav/images/position/position1.pov b/buch/papers/nav/images/position/position1.pov new file mode 100644 index 0000000..a79a9f1 --- /dev/null +++ b/buch/papers/nav/images/position/position1.pov @@ -0,0 +1,71 @@ +// +// position1.pov +// +// (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +// +#version 3.7; +#include "common.inc" + +union { + seite(B, C, fett) + punkt(A, fett) + punkt(B, fett) + punkt(C, fett) + punkt(P, fett) + pigment { + color dreieckfarbe + } + finish { + specular 0.95 + metallic + } +} + +union { + seite(A, P, fett) + pigment { + color rot + } + finish { + specular 0.95 + metallic + } +} + + +union { + seite(A, B, fett) + seite(A, C, fett) + seite(B, P, fett) + seite(C, P, fett) + pigment { + color bekannt + } + finish { + specular 0.95 + metallic + } +} + +object { + winkel(A, B, C, fein, gross) + pigment { + color bekannt + } + finish { + specular 0.95 + metallic + } +} + +object { + winkel(A, P, C, fett, klein) + pigment { + color rot + } + finish { + specular 0.95 + metallic + } +} + diff --git a/buch/papers/nav/images/position/position1.tex b/buch/papers/nav/images/position/position1.tex new file mode 100644 index 0000000..d6c21c3 --- /dev/null +++ b/buch/papers/nav/images/position/position1.tex @@ -0,0 +1,55 @@ +% +% dreieck3d1.tex +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{times} +\usepackage{amsmath} +\usepackage{txfonts} +\usepackage[utf8]{inputenc} +\usepackage{graphics} +\usetikzlibrary{arrows,intersections,math} +\usepackage{ifthen} +\begin{document} + +\input{common.tex} + +\newboolean{showgrid} +\setboolean{showgrid}{false} +\def\breite{4} +\def\hoehe{4} + +\begin{tikzpicture}[>=latex,thick] + +% Povray Bild +\node at (0,0) {\includegraphics[width=8cm]{position1.jpg}}; + +% Gitter +\ifthenelse{\boolean{showgrid}}{ +\draw[step=0.1,line width=0.1pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw[step=0.5,line width=0.4pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw (-\breite,-\hoehe) grid (\breite, \hoehe); +\fill (0,0) circle[radius=0.05]; +}{} + +\labelA +\labelB +\labelC +\labelP + +\labelc +\labela +\labelb +\labell + +\labelhb +\labelhc + +\labelalpha +\labelomega + +\end{tikzpicture} + +\end{document} + diff --git a/buch/papers/nav/images/position/position2.pdf b/buch/papers/nav/images/position/position2.pdf new file mode 100644 index 0000000..6015ba1 Binary files /dev/null and b/buch/papers/nav/images/position/position2.pdf differ diff --git a/buch/papers/nav/images/position/position2.pov b/buch/papers/nav/images/position/position2.pov new file mode 100644 index 0000000..2abcd94 --- /dev/null +++ b/buch/papers/nav/images/position/position2.pov @@ -0,0 +1,70 @@ +// +// position3.pov +// +// (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +// +#version 3.7; +#include "common.inc" + +dreieck(A, B, C, kugelfarbe) + +union { + punkt(A, fett) + punkt(B, fett) + punkt(C, fett) + pigment { + color dreieckfarbe + } + finish { + specular 0.95 + metallic + } +} + +union { + seite(A, B, fett) + seite(A, C, fett) + pigment { + color bekannt + } + finish { + specular 0.95 + metallic + } +} + +union { + seite(B, C, fett) + pigment { + color unbekannt + } + finish { + specular 0.95 + metallic + } +} + +object { + winkel(A, B, C, fein, gross) + pigment { + color bekannt + } + finish { + specular 0.95 + metallic + } +} + +union { + winkel(B, C, A, fein, gross) + winkel(C, A, B, fein, gross) + pigment { + color unbekannt + } + finish { + specular 0.95 + metallic + } +} + + diff --git a/buch/papers/nav/images/position/position2.tex b/buch/papers/nav/images/position/position2.tex new file mode 100644 index 0000000..339592c --- /dev/null +++ b/buch/papers/nav/images/position/position2.tex @@ -0,0 +1,53 @@ +% +% position2.tex +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{times} +\usepackage{amsmath} +\usepackage{txfonts} +\usepackage[utf8]{inputenc} +\usepackage{graphics} +\usetikzlibrary{arrows,intersections,math} +\usepackage{ifthen} +\begin{document} + +\input{common.tex} + +\newboolean{showgrid} +\setboolean{showgrid}{false} +\def\breite{4} +\def\hoehe{4} + +\begin{tikzpicture}[>=latex,thick] + +% Povray Bild +\node at (0,0) {\includegraphics[width=8cm]{position2.jpg}}; + +% Gitter +\ifthenelse{\boolean{showgrid}}{ +\draw[step=0.1,line width=0.1pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw[step=0.5,line width=0.4pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw (-\breite,-\hoehe) grid (\breite, \hoehe); +\fill (0,0) circle[radius=0.05]; +}{} + +\labelA +\labelB +\labelC + +\labelc +\labela +\labelb + +\begin{scope}[yshift=0.3cm,xshift=0.1cm] +\labelalpha +\end{scope} +\labelbeta +\labelgamma + +\end{tikzpicture} + +\end{document} + diff --git a/buch/papers/nav/images/position/position3.pdf b/buch/papers/nav/images/position/position3.pdf new file mode 100644 index 0000000..dea8c28 Binary files /dev/null and b/buch/papers/nav/images/position/position3.pdf differ diff --git a/buch/papers/nav/images/position/position3.pov b/buch/papers/nav/images/position/position3.pov new file mode 100644 index 0000000..f6823eb --- /dev/null +++ b/buch/papers/nav/images/position/position3.pov @@ -0,0 +1,48 @@ +// +// position3.pov +// +// (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +// +#version 3.7; +#include "common.inc" + +dreieck(B, P, C, kugelfarbe) + +union { + punkt(B, fett) + punkt(C, fett) + punkt(P, fett) + pigment { + color dreieckfarbe + } + finish { + specular 0.95 + metallic + } +} + +union { + seite(B, C, fett) + seite(B, P, fett) + seite(C, P, fett) + pigment { + color bekannt + } + finish { + specular 0.95 + metallic + } +} + +union { + winkel(B, P, C, fein, gross) + winkel(C, B, P, fein, gross) + pigment { + color unbekannt + } + finish { + specular 0.95 + metallic + } +} + diff --git a/buch/papers/nav/images/position/position3.tex b/buch/papers/nav/images/position/position3.tex new file mode 100644 index 0000000..d5480da --- /dev/null +++ b/buch/papers/nav/images/position/position3.tex @@ -0,0 +1,51 @@ +% +% dreieck3d1.tex +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{times} +\usepackage{amsmath} +\usepackage{txfonts} +\usepackage[utf8]{inputenc} +\usepackage{graphics} +\usetikzlibrary{arrows,intersections,math} +\usepackage{ifthen} +\begin{document} + +\input{common.tex} + +\newboolean{showgrid} +\setboolean{showgrid}{false} +\def\breite{4} +\def\hoehe{4} + +\begin{tikzpicture}[>=latex,thick] + +% Povray Bild +\node at (0,0) {\includegraphics[width=8cm]{position3.jpg}}; + +% Gitter +\ifthenelse{\boolean{showgrid}}{ +\draw[step=0.1,line width=0.1pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw[step=0.5,line width=0.4pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw (-\breite,-\hoehe) grid (\breite, \hoehe); +\fill (0,0) circle[radius=0.05]; +}{} + +\labelB +\labelC +\labelP + +\labela + +\labelhb +\labelhc + +\labelbetaone +\labelgammaone + +\end{tikzpicture} + +\end{document} + diff --git a/buch/papers/nav/images/position/position4.pdf b/buch/papers/nav/images/position/position4.pdf new file mode 100644 index 0000000..59cd05c Binary files /dev/null and b/buch/papers/nav/images/position/position4.pdf differ diff --git a/buch/papers/nav/images/position/position4.pov b/buch/papers/nav/images/position/position4.pov new file mode 100644 index 0000000..80628f9 --- /dev/null +++ b/buch/papers/nav/images/position/position4.pov @@ -0,0 +1,69 @@ +// +// position4.pov +// +// (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +// +#version 3.7; +#include "common.inc" + +dreieck(A, B, P, kugelfarbe) + +union { + punkt(A, fett) + punkt(B, fett) + punkt(P, fett) + pigment { + color dreieckfarbe + } + finish { + specular 0.95 + metallic + } +} + +union { + seite(A, P, fett) + pigment { + color unbekannt + } + finish { + specular 0.95 + metallic + } +} + + +union { + seite(A, B, fett) + seite(B, P, fett) + pigment { + color bekannt + } + finish { + specular 0.95 + metallic + } +} + +object { + winkel(B, P, A, fein, gross) + pigment { + color bekannt + } + finish { + specular 0.95 + metallic + } +} + +object { + winkel(A, B, P, fein, gross) + pigment { + color unbekannt + } + finish { + specular 0.95 + metallic + } +} + diff --git a/buch/papers/nav/images/position/position4.tex b/buch/papers/nav/images/position/position4.tex new file mode 100644 index 0000000..27c1757 --- /dev/null +++ b/buch/papers/nav/images/position/position4.tex @@ -0,0 +1,50 @@ +% +% position4.tex +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{times} +\usepackage{amsmath} +\usepackage{txfonts} +\usepackage[utf8]{inputenc} +\usepackage{graphics} +\usetikzlibrary{arrows,intersections,math} +\usepackage{ifthen} +\begin{document} + +\input{common.tex} + +\newboolean{showgrid} +\setboolean{showgrid}{false} +\def\breite{4} +\def\hoehe{4} + +\begin{tikzpicture}[>=latex,thick] + +% Povray Bild +\node at (0,0) {\includegraphics[width=8cm]{position4.jpg}}; + +% Gitter +\ifthenelse{\boolean{showgrid}}{ +\draw[step=0.1,line width=0.1pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw[step=0.5,line width=0.4pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw (-\breite,-\hoehe) grid (\breite, \hoehe); +\fill (0,0) circle[radius=0.05]; +}{} + +\labelA +\labelB +\labelP + +\labelc +\labell +\labelhb + +\labelomegalinks +\labelbetatwo + +\end{tikzpicture} + +\end{document} + diff --git a/buch/papers/nav/images/position/position5.pdf b/buch/papers/nav/images/position/position5.pdf new file mode 100644 index 0000000..5960392 Binary files /dev/null and b/buch/papers/nav/images/position/position5.pdf differ diff --git a/buch/papers/nav/images/position/position5.pov b/buch/papers/nav/images/position/position5.pov new file mode 100644 index 0000000..7ed33c5 --- /dev/null +++ b/buch/papers/nav/images/position/position5.pov @@ -0,0 +1,69 @@ +// +// position5.pov +// +// (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +// +#version 3.7; +#include "common.inc" + +dreieck(A, P, C, kugelfarbe) + +union { + punkt(A, fett) + punkt(C, fett) + punkt(P, fett) + pigment { + color dreieckfarbe + } + finish { + specular 0.95 + metallic + } +} + +union { + seite(A, P, fett) + pigment { + color unbekannt + } + finish { + specular 0.95 + metallic + } +} + + +union { + seite(A, C, fett) + seite(C, P, fett) + pigment { + color bekannt + } + finish { + specular 0.95 + metallic + } +} + +object { + winkel(C, P, A, fein, gross) + pigment { + color bekannt + } + finish { + specular 0.95 + metallic + } +} + +object { + winkel(A, C, P, fein, gross) + pigment { + color unbekannt + } + finish { + specular 0.95 + metallic + } +} + diff --git a/buch/papers/nav/images/position/position5.tex b/buch/papers/nav/images/position/position5.tex new file mode 100644 index 0000000..b234429 --- /dev/null +++ b/buch/papers/nav/images/position/position5.tex @@ -0,0 +1,50 @@ +% +% position5.tex +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{times} +\usepackage{amsmath} +\usepackage{txfonts} +\usepackage[utf8]{inputenc} +\usepackage{graphics} +\usetikzlibrary{arrows,intersections,math} +\usepackage{ifthen} +\begin{document} + +\input{common.tex} + +\newboolean{showgrid} +\setboolean{showgrid}{false} +\def\breite{4} +\def\hoehe{4} + +\begin{tikzpicture}[>=latex,thick] + +% Povray Bild +\node at (0,0) {\includegraphics[width=8cm]{position5.jpg}}; + +% Gitter +\ifthenelse{\boolean{showgrid}}{ +\draw[step=0.1,line width=0.1pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw[step=0.5,line width=0.4pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw (-\breite,-\hoehe) grid (\breite, \hoehe); +\fill (0,0) circle[radius=0.05]; +}{} + +\labelA +\labelC +\labelP + +\labelb +\labell +\labelhc + +\labelomegarechts +\labelgammatwo + +\end{tikzpicture} + +\end{document} + -- cgit v1.2.1 From d9a3a1717553c1287fdbefbf2bf4a1de03c88851 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Fri, 10 Jun 2022 17:17:20 +0200 Subject: neue Bilder --- buch/papers/nav/images/2k_earth_daymap.png | Bin 0 -> 1473323 bytes .../nav/images/beispiele/2k_earth_daymap.png | Bin 0 -> 1473323 bytes buch/papers/nav/images/beispiele/Makefile | 30 ++++++++ buch/papers/nav/images/beispiele/beispiele1.pdf | Bin 0 -> 399907 bytes buch/papers/nav/images/beispiele/beispiele1.pov | 12 ++++ buch/papers/nav/images/beispiele/beispiele1.tex | 49 +++++++++++++ buch/papers/nav/images/beispiele/beispiele2.pdf | Bin 0 -> 404679 bytes buch/papers/nav/images/beispiele/beispiele2.pov | 12 ++++ buch/papers/nav/images/beispiele/beispiele2.tex | 50 +++++++++++++ buch/papers/nav/images/beispiele/common.inc | 50 +++++++++++++ buch/papers/nav/images/beispiele/common.tex | 79 +++++++++++++++++++++ buch/papers/nav/images/beispiele/geometrie.inc | 41 +++++++++++ buch/papers/nav/images/dreieck3d10.pov | 46 ++++++++++++ buch/papers/nav/images/macros.inc | 4 +- .../papers/nav/images/position/2k_earth_daymap.png | Bin 0 -> 1473323 bytes buch/papers/nav/images/position/common.inc | 4 +- buch/papers/nav/images/position/common.tex | 4 +- buch/papers/nav/images/position/position1.pdf | Bin 107297 -> 433631 bytes buch/papers/nav/images/position/position2.pdf | Bin 90563 -> 310650 bytes buch/papers/nav/images/position/position3.pdf | Bin 85020 -> 417714 bytes buch/papers/nav/images/position/position4.pdf | Bin 86376 -> 390348 bytes buch/papers/nav/images/position/position5.pdf | Bin 91680 -> 337310 bytes 22 files changed, 377 insertions(+), 4 deletions(-) create mode 100644 buch/papers/nav/images/2k_earth_daymap.png create mode 100644 buch/papers/nav/images/beispiele/2k_earth_daymap.png create mode 100644 buch/papers/nav/images/beispiele/Makefile create mode 100644 buch/papers/nav/images/beispiele/beispiele1.pdf create mode 100644 buch/papers/nav/images/beispiele/beispiele1.pov create mode 100644 buch/papers/nav/images/beispiele/beispiele1.tex create mode 100644 buch/papers/nav/images/beispiele/beispiele2.pdf create mode 100644 buch/papers/nav/images/beispiele/beispiele2.pov create mode 100644 buch/papers/nav/images/beispiele/beispiele2.tex create mode 100644 buch/papers/nav/images/beispiele/common.inc create mode 100644 buch/papers/nav/images/beispiele/common.tex create mode 100644 buch/papers/nav/images/beispiele/geometrie.inc create mode 100644 buch/papers/nav/images/dreieck3d10.pov create mode 100644 buch/papers/nav/images/position/2k_earth_daymap.png diff --git a/buch/papers/nav/images/2k_earth_daymap.png b/buch/papers/nav/images/2k_earth_daymap.png new file mode 100644 index 0000000..4d55da8 Binary files /dev/null and b/buch/papers/nav/images/2k_earth_daymap.png differ diff --git a/buch/papers/nav/images/beispiele/2k_earth_daymap.png b/buch/papers/nav/images/beispiele/2k_earth_daymap.png new file mode 100644 index 0000000..4d55da8 Binary files /dev/null and b/buch/papers/nav/images/beispiele/2k_earth_daymap.png differ diff --git a/buch/papers/nav/images/beispiele/Makefile b/buch/papers/nav/images/beispiele/Makefile new file mode 100644 index 0000000..6e95379 --- /dev/null +++ b/buch/papers/nav/images/beispiele/Makefile @@ -0,0 +1,30 @@ +# +# Makefile to build images +# +# (c) 2022 +# +all: beispiele + +POSITION = \ + beispiele1.pdf \ + beispiele2.pdf + +beispiele: $(POSITION) + +POVRAYOPTIONS = -W1080 -H1080 +#POVRAYOPTIONS = -W480 -H480 + +beispiele1.png: beispiele1.pov common.inc geometrie.inc ../macros.inc + povray +A0.1 $(POVRAYOPTIONS) -Obeispiele1.png beispiele1.pov +beispiele1.jpg: beispiele1.png + convert beispiele1.png -density 300 -units PixelsPerInch beispiele1.jpg +beispiele1.pdf: beispiele1.tex common.tex beispiele1.jpg + pdflatex beispiele1.tex + +beispiele2.png: beispiele2.pov common.inc geometrie.inc ../macros.inc + povray +A0.1 $(POVRAYOPTIONS) -Obeispiele2.png beispiele2.pov +beispiele2.jpg: beispiele2.png + convert beispiele2.png -density 300 -units PixelsPerInch beispiele2.jpg +beispiele2.pdf: beispiele2.tex common.tex beispiele2.jpg + pdflatex beispiele2.tex + diff --git a/buch/papers/nav/images/beispiele/beispiele1.pdf b/buch/papers/nav/images/beispiele/beispiele1.pdf new file mode 100644 index 0000000..d0fe3dc Binary files /dev/null and b/buch/papers/nav/images/beispiele/beispiele1.pdf differ diff --git a/buch/papers/nav/images/beispiele/beispiele1.pov b/buch/papers/nav/images/beispiele/beispiele1.pov new file mode 100644 index 0000000..7fb3de2 --- /dev/null +++ b/buch/papers/nav/images/beispiele/beispiele1.pov @@ -0,0 +1,12 @@ +// +// beispiele1.pov +// +// (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +// +#include "common.inc" + +#declare Stern1 = Deneb; +#declare Stern2 = Arktur; + +#include "geometrie.inc" + diff --git a/buch/papers/nav/images/beispiele/beispiele1.tex b/buch/papers/nav/images/beispiele/beispiele1.tex new file mode 100644 index 0000000..5666ba6 --- /dev/null +++ b/buch/papers/nav/images/beispiele/beispiele1.tex @@ -0,0 +1,49 @@ +% +% beispiele1.tex +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{times} +\usepackage{amsmath} +\usepackage{txfonts} +\usepackage[utf8]{inputenc} +\usepackage{graphics} +\usetikzlibrary{arrows,intersections,math,calc} +\usepackage{ifthen} +\begin{document} + +\input{common.tex} + +\newboolean{showgrid} +\setboolean{showgrid}{false} +\def\breite{4} +\def\hoehe{4} + +\begin{tikzpicture}[>=latex,thick] + +% Povray Bild +\node at (0,0) {\includegraphics[width=8cm]{beispiele1.jpg}}; + +% Gitter +\ifthenelse{\boolean{showgrid}}{ +\draw[step=0.1,line width=0.1pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw[step=0.5,line width=0.4pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw (-\breite,-\hoehe) grid (\breite, \hoehe); +\fill (0,0) circle[radius=0.05]; +}{} + +\labelA +\labelP +\labelDeneb +\labelArktur +\labelhDeneb +\labelhArktur +\labellone +\labeldDeneb +\labeldArktur + +\end{tikzpicture} + +\end{document} + diff --git a/buch/papers/nav/images/beispiele/beispiele2.pdf b/buch/papers/nav/images/beispiele/beispiele2.pdf new file mode 100644 index 0000000..8579ee5 Binary files /dev/null and b/buch/papers/nav/images/beispiele/beispiele2.pdf differ diff --git a/buch/papers/nav/images/beispiele/beispiele2.pov b/buch/papers/nav/images/beispiele/beispiele2.pov new file mode 100644 index 0000000..b69f0f9 --- /dev/null +++ b/buch/papers/nav/images/beispiele/beispiele2.pov @@ -0,0 +1,12 @@ +// +// beispiele1.pov +// +// (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +// +#include "common.inc" + +#declare Stern1 = Altair; +#declare Stern2 = Spica; + +#include "geometrie.inc" + diff --git a/buch/papers/nav/images/beispiele/beispiele2.tex b/buch/papers/nav/images/beispiele/beispiele2.tex new file mode 100644 index 0000000..c9b70bd --- /dev/null +++ b/buch/papers/nav/images/beispiele/beispiele2.tex @@ -0,0 +1,50 @@ +% +% beispiele2.tex +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{times} +\usepackage{amsmath} +\usepackage{txfonts} +\usepackage[utf8]{inputenc} +\usepackage{graphics} +\usetikzlibrary{arrows,intersections,math,calc} +\usepackage{ifthen} +\begin{document} + +\input{common.tex} + +\newboolean{showgrid} +\setboolean{showgrid}{false} +\def\breite{4} +\def\hoehe{4} + +\begin{tikzpicture}[>=latex,thick] + +% Povray Bild +\node at (0,0) {\includegraphics[width=8cm]{beispiele2.jpg}}; + +% Gitter +\ifthenelse{\boolean{showgrid}}{ +\draw[step=0.1,line width=0.1pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw[step=0.5,line width=0.4pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw (-\breite,-\hoehe) grid (\breite, \hoehe); +\fill (0,0) circle[radius=0.05]; +}{} + +\labelA +\labelP +\labelAltair +\labelSpica +\labelhAltair +\labelhSpica +\labelltwo +\labeldAltair +\labeldSpica + + +\end{tikzpicture} + +\end{document} + diff --git a/buch/papers/nav/images/beispiele/common.inc b/buch/papers/nav/images/beispiele/common.inc new file mode 100644 index 0000000..51fbd1f --- /dev/null +++ b/buch/papers/nav/images/beispiele/common.inc @@ -0,0 +1,50 @@ +// +// common.inc -- 3d Darstellung +// +// (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +// +#version 3.7; +#include "colors.inc" +#include "../macros.inc" + +global_settings { + assumed_gamma 1 +} + +#declare imagescale = 0.034; + +camera { + location <40, 20, -20> + look_at <0, 0.24, -0.20> + right x * imagescale + up y * imagescale +} + +light_source { + <30, 10, -40> color White + area_light <1,0,0> <0,0,1>, 10, 10 + adaptive 1 + jitter +} + +sky_sphere { + pigment { + color rgb<1,1,1> + } +} + +erde(0) +achse(fein, White) +koordinatennetz(gitterfarbe, 9, 0.001) + +union { + punkt(Sakura, fett) + pigment { + color rot + } + finish { + metallic + specular 0.9 + } +} + diff --git a/buch/papers/nav/images/beispiele/common.tex b/buch/papers/nav/images/beispiele/common.tex new file mode 100644 index 0000000..b7b3dac --- /dev/null +++ b/buch/papers/nav/images/beispiele/common.tex @@ -0,0 +1,79 @@ +% +% common.tex +% +% (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% + +\def\labelA{\node at (0.7,3.8) {$A$};} + +\def\labelSpica{ + \node at (-3.6,-2.8) {Spica}; +} +\def\labelAltair{ + \node at (3.0,-2.3) {Altair}; +} +\def\labelArktur{ + \node at (-3.3,-0.7) {Arktur}; +} +\def\labelDeneb{ + \node at (3.4,0.9) {Deneb}; +} + +\def\labelP{\node at (0,-0.2) {$P$};} + +\def\labellone{\node at (0.1,1.9) {$l$};} +\def\labelltwo{\node at (0.1,2.0) {$l$};} + +\def\labelhSpica{ + \coordinate (Spica) at (-1.8,-0.3); + \node at (Spica) {$h_{\text{Spica}}\mathstrut$}; +} +\def\labelhAltair{ + \coordinate (Altair) at (1.1,-1.0); + \node at (Altair) {$h_{\text{Altair}}\mathstrut$}; +} +\def\labelhArktur{ + \coordinate (Arktur) at (-1.3,-0.3); + \node at (Arktur) {$h_{\text{Arktur}}\mathstrut$}; +} +\def\labelhDeneb{ + \coordinate (Deneb) at (1.6,0.45); + \node at (Deneb) {$h_{\text{Deneb}}\mathstrut$}; +} + +\def\labeldSpica{ + \coordinate (dSpica) at (-1.5,2.6); + \fill[color=white,opacity=0.5] + ($(dSpica)+(-1.8,0.08)$) + rectangle + ($(dSpica)+(-0.06,0.55)$); + \node at (dSpica) [above left] + {$90^\circ-\delta_{\text{Spica}}\mathstrut$}; +} +\def\labeldAltair{ + \coordinate (dAltair) at (2.0,2.1); + \fill[color=white,opacity=0.5] + ($(dAltair)+(0.10,0.05)$) + rectangle + ($(dAltair)+(1.8,0.5)$); + \node at (dAltair) [above right] + {$90^\circ-\delta_{\text{Altair}}\mathstrut$}; +} +\def\labeldArktur{ + \coordinate (dArktur) at (-1.2,2.5); + \fill[color=white,opacity=0.5] + ($(dArktur)+(-1.8,0.05)$) + rectangle + ($(dArktur)+(-0.06,0.5)$); + \node at (dArktur) [above left] + {$90^\circ-\delta_{\text{Arktur}}\mathstrut$}; +} +\def\labeldDeneb{ + \coordinate (dDeneb) at (2.0,2.8); + \fill[color=white,opacity=0.5] + ($(dDeneb)+(0.05,0.5)$) + rectangle + ($(dDeneb)+(1.87,0.05)$); + \node at (dDeneb) [above right] + {$90^\circ-\delta_{\text{Deneb}}\mathstrut$}; +} diff --git a/buch/papers/nav/images/beispiele/geometrie.inc b/buch/papers/nav/images/beispiele/geometrie.inc new file mode 100644 index 0000000..2f6084e --- /dev/null +++ b/buch/papers/nav/images/beispiele/geometrie.inc @@ -0,0 +1,41 @@ +union { + punkt(A, fett) + punkt(Stern1, fein) + punkt(Stern2, fein) + seite(Stern1, Stern2, fein) + pigment { + color kugelfarbe + } + finish { + metallic + specular 0.9 + } +} + +union { + seite(A, Stern1, fein) + seite(A, Stern2, fein) + seite(Stern1, Sakura, fein) + seite(Stern2, Sakura, fein) + winkel(A, Stern1, Stern2, 0.5*fein, gross) + pigment { + color bekannt + } + finish { + metallic + specular 0.9 + } +} + +union { + seite(A, Sakura, fein) + winkel(A, Sakura, Stern1, 0.5*fett, klein) + pigment { + color unbekannt + } + finish { + metallic + specular 0.9 + } +} + diff --git a/buch/papers/nav/images/dreieck3d10.pov b/buch/papers/nav/images/dreieck3d10.pov new file mode 100644 index 0000000..2dd7c79 --- /dev/null +++ b/buch/papers/nav/images/dreieck3d10.pov @@ -0,0 +1,46 @@ +// +// dreiecke3d10.pov +// +// (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +// +#include "common.inc" + +erde() + +#declare Stern1 = Deneb; +#declare Stern2 = Spica; + +koordinatennetz(gitterfarbe, 9, 0.001) + +union { + seite(A, Stern1, 0.5*fein) + seite(A, Stern2, 0.5*fein) + seite(A, Sakura, 0.5*fein) + seite(Stern1, Sakura, 0.5*fein) + seite(Stern2, Sakura, 0.5*fein) + seite(Stern1, Stern2, 0.5*fein) + + punkt(A, fein) + punkt(Sakura, fett) + punkt(Deneb, fein) + punkt(Spica, fein) + punkt(Altair, fein) + punkt(Arktur, fein) + pigment { + color Red + } +} + +//arrow(<-1.3,0,0>, <1.3,0,0>, fein, White) +arrow(<0,-1.3,0>, <0,1.3,0>, fein, White) +//arrow(<0,0,-1.3>, <0,0,1.3>, fein, White) + +#declare imagescale = 0.044; + +camera { + location <40, 20, -20> + look_at <0, 0.24, -0.20> + right x * imagescale + up y * imagescale +} + diff --git a/buch/papers/nav/images/macros.inc b/buch/papers/nav/images/macros.inc index 2def6fd..20cb2ff 100644 --- a/buch/papers/nav/images/macros.inc +++ b/buch/papers/nav/images/macros.inc @@ -31,6 +31,7 @@ #declare kugeltransparent = rgbt<0.8,0.8,0.8,0.5>; #declare gitterfarbe = rgb<0.2,0.6,1>; +#declare gitterfarbe = rgb<1.0,0.8,0>; // // Points Points @@ -314,7 +315,7 @@ sphere { // // \brief Display the earth // -#macro erde() +#macro erde(winkel) sphere { <0, 0, 0>, 1 pigment { @@ -323,6 +324,7 @@ sphere { map_type 1 } } + rotate <0,winkel,0> } #end diff --git a/buch/papers/nav/images/position/2k_earth_daymap.png b/buch/papers/nav/images/position/2k_earth_daymap.png new file mode 100644 index 0000000..4d55da8 Binary files /dev/null and b/buch/papers/nav/images/position/2k_earth_daymap.png differ diff --git a/buch/papers/nav/images/position/common.inc b/buch/papers/nav/images/position/common.inc index b50b8d6..56e2836 100644 --- a/buch/papers/nav/images/position/common.inc +++ b/buch/papers/nav/images/position/common.inc @@ -33,5 +33,7 @@ sky_sphere { } } -kugel(kugeldunkel) +//kugel(kugeldunkel) +erde(-100) +koordinatennetz(gitterfarbe, 9, 0.001) achse(fein, White) diff --git a/buch/papers/nav/images/position/common.tex b/buch/papers/nav/images/position/common.tex index d72a981..9430608 100644 --- a/buch/papers/nav/images/position/common.tex +++ b/buch/papers/nav/images/position/common.tex @@ -13,8 +13,8 @@ \def\labela{\node at (-0.2,-1.2) {$a$};} \def\labelb{\node at (2.6,1.5) {$b$};} -\def\labelhb{\node at (-2.6,-2.2) {$h_b$};} -\def\labelhc{\node at (1,-2.9) {$h_c$};} +\def\labelhb{\node at (-2.6,-2.2) {$h_B$};} +\def\labelhc{\node at (1,-2.9) {$h_C$};} \def\labell{\node at (-0.7,0.3) {$l$};} \def\labelalpha{\node at (0.6,2.85) {$\alpha$};} diff --git a/buch/papers/nav/images/position/position1.pdf b/buch/papers/nav/images/position/position1.pdf index 1bd9a69..fc4f760 100644 Binary files a/buch/papers/nav/images/position/position1.pdf and b/buch/papers/nav/images/position/position1.pdf differ diff --git a/buch/papers/nav/images/position/position2.pdf b/buch/papers/nav/images/position/position2.pdf index 6015ba1..dbd2ea9 100644 Binary files a/buch/papers/nav/images/position/position2.pdf and b/buch/papers/nav/images/position/position2.pdf differ diff --git a/buch/papers/nav/images/position/position3.pdf b/buch/papers/nav/images/position/position3.pdf index dea8c28..2c940d2 100644 Binary files a/buch/papers/nav/images/position/position3.pdf and b/buch/papers/nav/images/position/position3.pdf differ diff --git a/buch/papers/nav/images/position/position4.pdf b/buch/papers/nav/images/position/position4.pdf index 59cd05c..8eeeaac 100644 Binary files a/buch/papers/nav/images/position/position4.pdf and b/buch/papers/nav/images/position/position4.pdf differ diff --git a/buch/papers/nav/images/position/position5.pdf b/buch/papers/nav/images/position/position5.pdf index 5960392..05a64cb 100644 Binary files a/buch/papers/nav/images/position/position5.pdf and b/buch/papers/nav/images/position/position5.pdf differ -- cgit v1.2.1 From eae6dffd6439f8ea5e5377e0e316b8da7f8df980 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Fri, 10 Jun 2022 17:31:19 +0200 Subject: another image --- buch/papers/nav/images/beispiele/Makefile | 10 ++++- buch/papers/nav/images/beispiele/beispiele3.pdf | Bin 0 -> 401946 bytes buch/papers/nav/images/beispiele/beispiele3.pov | 12 ++++++ buch/papers/nav/images/beispiele/beispiele3.tex | 49 ++++++++++++++++++++++++ 4 files changed, 70 insertions(+), 1 deletion(-) create mode 100644 buch/papers/nav/images/beispiele/beispiele3.pdf create mode 100644 buch/papers/nav/images/beispiele/beispiele3.pov create mode 100644 buch/papers/nav/images/beispiele/beispiele3.tex diff --git a/buch/papers/nav/images/beispiele/Makefile b/buch/papers/nav/images/beispiele/Makefile index 6e95379..9546c8e 100644 --- a/buch/papers/nav/images/beispiele/Makefile +++ b/buch/papers/nav/images/beispiele/Makefile @@ -7,7 +7,8 @@ all: beispiele POSITION = \ beispiele1.pdf \ - beispiele2.pdf + beispiele2.pdf \ + beispiele3.pdf beispiele: $(POSITION) @@ -28,3 +29,10 @@ beispiele2.jpg: beispiele2.png beispiele2.pdf: beispiele2.tex common.tex beispiele2.jpg pdflatex beispiele2.tex +beispiele3.png: beispiele3.pov common.inc geometrie.inc ../macros.inc + povray +A0.1 $(POVRAYOPTIONS) -Obeispiele3.png beispiele3.pov +beispiele3.jpg: beispiele3.png + convert beispiele3.png -density 300 -units PixelsPerInch beispiele3.jpg +beispiele3.pdf: beispiele3.tex common.tex beispiele3.jpg + pdflatex beispiele3.tex + diff --git a/buch/papers/nav/images/beispiele/beispiele3.pdf b/buch/papers/nav/images/beispiele/beispiele3.pdf new file mode 100644 index 0000000..a7189dd Binary files /dev/null and b/buch/papers/nav/images/beispiele/beispiele3.pdf differ diff --git a/buch/papers/nav/images/beispiele/beispiele3.pov b/buch/papers/nav/images/beispiele/beispiele3.pov new file mode 100644 index 0000000..af9a468 --- /dev/null +++ b/buch/papers/nav/images/beispiele/beispiele3.pov @@ -0,0 +1,12 @@ +// +// beispiele1.pov +// +// (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +// +#include "common.inc" + +#declare Stern1 = Deneb; +#declare Stern2 = Altair; + +#include "geometrie.inc" + diff --git a/buch/papers/nav/images/beispiele/beispiele3.tex b/buch/papers/nav/images/beispiele/beispiele3.tex new file mode 100644 index 0000000..2573199 --- /dev/null +++ b/buch/papers/nav/images/beispiele/beispiele3.tex @@ -0,0 +1,49 @@ +% +% beispiele3.tex +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{times} +\usepackage{amsmath} +\usepackage{txfonts} +\usepackage[utf8]{inputenc} +\usepackage{graphics} +\usetikzlibrary{arrows,intersections,math,calc} +\usepackage{ifthen} +\begin{document} + +\input{common.tex} + +\newboolean{showgrid} +\setboolean{showgrid}{false} +\def\breite{4} +\def\hoehe{4} + +\begin{tikzpicture}[>=latex,thick] + +% Povray Bild +\node at (0,0) {\includegraphics[width=8cm]{beispiele3.jpg}}; + +% Gitter +\ifthenelse{\boolean{showgrid}}{ +\draw[step=0.1,line width=0.1pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw[step=0.5,line width=0.4pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw (-\breite,-\hoehe) grid (\breite, \hoehe); +\fill (0,0) circle[radius=0.05]; +}{} + +\labelA +\labelP +\labelDeneb +\labelAltair +\labelhDeneb +\labelhAltair +\labellone +%\labeldDeneb +%\labeldAltair + +\end{tikzpicture} + +\end{document} + -- cgit v1.2.1 From 021751ecb99962fc496b3ea0e5000f94b4e056c6 Mon Sep 17 00:00:00 2001 From: "ENEZ-PC\\erdem" Date: Sat, 11 Jun 2022 12:57:40 +0200 Subject: no message --- buch/papers/nav/bsp.tex | 66 ++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 62 insertions(+), 4 deletions(-) diff --git a/buch/papers/nav/bsp.tex b/buch/papers/nav/bsp.tex index 6f30022..ac749c5 100644 --- a/buch/papers/nav/bsp.tex +++ b/buch/papers/nav/bsp.tex @@ -3,9 +3,8 @@ \subsection{Einführung} In diesem Abschnitt wird die Theorie vom Abschnitt 21.6 in einem Praxisbeispiel angewendet. Wir haben die Deklination, Rektaszension, Höhe der beiden Planeten Deneb und Arktur und die Sternzeit von Greenwich als Ausgangslage. -Die Deklinationen und Rektaszensionen sind von einem vergangenen Datum und die Höhe der Gestirne und die Sternzeit wurden von einem uns unbekannten Ort aus gemessen. -Diesen Punkt gilt es mit dem erlangten Wissen herauszufinden. - +Die Deklinationen und Rektaszensionen sind von einem vergangenen Datum und die Höhe der Gestirne und die Sternzeit wurden von unserem Dozenten digital in einer Stadt in Japan mit den Koordinaten 35.716672 N, 140.233336 E bestimmt. +Wir werden rechnerisch beweisen, dass wir mit diesen Ergebnissen genau auf diese Koordinaten kommen. \subsection{Vorgehen} \begin{center} @@ -52,7 +51,7 @@ $\delta$ ist die Breite, $\lambda$ die Länge. \subsection{Dreiecke definieren} Das Festlegen der Dreiecke ist essenziell für die korrekten Berechnungen. BILD -\subsection{Dreieck ABC} +\subsection{Dreieck $ABC$} Nun berechnen wir alle Seitenlängen $a$, $b$, $c$ und die Innnenwinkel $\alpha$, $\beta$ und $\gamma$ Wir können $b$ und $c$ mit den geltenten Zusammenhängen des nautischen Dreiecks wie folgt bestimmen: \begin{align} @@ -78,4 +77,63 @@ Für $\beta$ und $\gamma$ nutzen wir den sphärischen Seitenkosinussatz: &= \cos^{-1} \bigg[\frac{\cos(70.936778)-\cos(44.638806) \cdot \cos(80.8707801)}{\sin(80.8707801) \cdot \sin(44.638806)}\bigg] \nonumber \\ &=\underline{\underline{72.0573328^\circ}} \nonumber \end{align} +\subsection{Dreieck $BPC$} +Als nächstes berechnen wir die Seiten $pb$, $pc$ und die Innenwinkel $\beta_1$ und $\gamma_1$. +\begin{align} + pb&=90^\circ - H_{Arktur} \nonumber \\ + &= 90^\circ - 47.42744^\circ \nonumber \\ + &= \underline{\underline{42.572556^\circ}} \nonumber +\end{align} +\begin{align} + pc &= 90^\circ - H_{Deneb} \nonumber \\ + &= 90^\circ - 50.256027^\circ \nonumber \\ + &= \underline{\underline{39.743973^\circ}} \nonumber +\end{align} +\begin{align} + \beta_1 &= \cos^{-1} \bigg[\frac{\cos(pc)-\cos(a) \cdot \cos(pb)}{\sin(a) \cdot \sin(pb)}\bigg] \nonumber \\ + &= \cos^{-1} \bigg[\frac{\cos(39.743973)-\cos(80.8707801) \cdot \cos(42.572556)}{\sin(80.8707801) \cdot \sin(42.572556)}\bigg] \nonumber \\ + &=\underline{\underline{12.5211127^\circ}} \nonumber +\end{align} +\begin{align} + \gamma_1 &= \cos^{-1} \bigg[\frac{\cos(pb)-\cos(a) \cdot \cos(pc)}{\sin(a) \cdot \sin(pc)}\bigg] \nonumber \\ + &= \cos^{-1} \bigg[\frac{\cos(42.572556)-\cos(80.8707801) \cdot \cos(39.743973)}{\sin(80.8707801) \cdot \sin(39.743973)}\bigg] \nonumber \\ + &=\underline{\underline{13.2618475^\circ}} \nonumber +\end{align} + +\subsection{Dreieck $ABP$} +Als erster müssen wir den Winkel $\kappa$ berechnen: +\begin{align} + \kappa &= \beta + \beta_1 = 45.011513^\circ + 12.5211127^\circ \nonumber \\ + &=\underline{\underline{44.6687451^\circ}} \nonumber +\end{align} +Danach können wir mithilfe von $\kappa$, $c$ und $pb$ die Seite $l$ berechnen: +\begin{align} + l &= \cos^{-1}(\cos(c) \cdot \cos(pb) + \sin(c) \cdot \sin(pb) \cdot \cos(\kappa)) \nonumber \\ + &= \cos^{-1}(\cos(70.936778) \cdot \cos(42.572556) + \sin(70.936778) \cdot \sin(42.572556) \cdot \cos(57.5326442)) \nonumber \\ + &= \underline{\underline{54.2833404^\circ}} \nonumber +\end{align} +Damit wir gleich den Längengrad berechnen können, benötigen wir noch den Winkel $\omega$: +\begin{align} + \omega &= \cos^{-1} \bigg[\frac{\cos(pb)-\cos(c) \cdot \cos(l)}{\sin(c) \cdot \sin(l)}\bigg] \nonumber \\ + &=\cos^{-1} \bigg[\frac{\cos(42.572556)-\cos(70.936778) \cdot \cos(54.2833404)}{\sin(70.936778) \cdot \sin(54.2833404)}\bigg] \nonumber \\ + &= \underline{\underline{44.6687451^\circ}} \nonumber +\end{align} + +\subsection{Längengrad und Breitengrad bestimmen} + +\begin{align} + \delta &= 90^\circ - l \nonumber \\ + &= 90^\circ - 54.2833404 \nonumber \\ + &= \underline{\underline{35.7166596^\circ}} \nonumber +\end{align} +\begin{align} + \lambda &= \lambda_{Arktur} + \omega \nonumber \\ + &= 95.5647759^\circ + 44.6687451^\circ \nonumber \\ + &= \underline{\underline{140.233521^\circ}} \nonumber +\end{align} +Wie wir sehen, stimmen die berechneten Koordinaten mit den Koordinaten des Punktes, an welchem gemessen wurde überein. +Unsere Methode scheint also zu funktionieren. + + + -- cgit v1.2.1 From 8d317ba95f733584dd51abb331506c9cacedf1ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sat, 11 Jun 2022 14:18:48 +0200 Subject: flow --- buch/common/packages.tex | 1 + buch/papers/nav/images/position/Makefile | 25 +++- buch/papers/nav/images/position/common-small.tex | 32 +++++ .../papers/nav/images/position/position1-small.pdf | Bin 0 -> 433626 bytes .../papers/nav/images/position/position1-small.tex | 55 +++++++++ .../papers/nav/images/position/position2-small.pdf | Bin 0 -> 310645 bytes .../papers/nav/images/position/position2-small.tex | 53 ++++++++ .../papers/nav/images/position/position3-small.pdf | Bin 0 -> 417713 bytes .../papers/nav/images/position/position3-small.tex | 51 ++++++++ .../papers/nav/images/position/position4-small.pdf | Bin 0 -> 390331 bytes .../papers/nav/images/position/position4-small.tex | 50 ++++++++ .../papers/nav/images/position/position5-small.pdf | Bin 0 -> 337308 bytes .../papers/nav/images/position/position5-small.tex | 50 ++++++++ buch/papers/nav/images/position/test.tex | 135 +++++++++++++++++++++ 14 files changed, 447 insertions(+), 5 deletions(-) create mode 100644 buch/papers/nav/images/position/common-small.tex create mode 100644 buch/papers/nav/images/position/position1-small.pdf create mode 100644 buch/papers/nav/images/position/position1-small.tex create mode 100644 buch/papers/nav/images/position/position2-small.pdf create mode 100644 buch/papers/nav/images/position/position2-small.tex create mode 100644 buch/papers/nav/images/position/position3-small.pdf create mode 100644 buch/papers/nav/images/position/position3-small.tex create mode 100644 buch/papers/nav/images/position/position4-small.pdf create mode 100644 buch/papers/nav/images/position/position4-small.tex create mode 100644 buch/papers/nav/images/position/position5-small.pdf create mode 100644 buch/papers/nav/images/position/position5-small.tex create mode 100644 buch/papers/nav/images/position/test.tex diff --git a/buch/common/packages.tex b/buch/common/packages.tex index 2ab2ad8..eef17c1 100644 --- a/buch/common/packages.tex +++ b/buch/common/packages.tex @@ -43,6 +43,7 @@ \usepackage{wasysym} \usepackage{environ} \usepackage{appendix} +\usepackage{wrapfig} \usepackage{placeins} \usepackage[all]{xy} \usetikzlibrary{calc,intersections,through,backgrounds,graphs,positioning,shapes,arrows,fit,math} diff --git a/buch/papers/nav/images/position/Makefile b/buch/papers/nav/images/position/Makefile index 280e59c..eed2e56 100644 --- a/buch/papers/nav/images/position/Makefile +++ b/buch/papers/nav/images/position/Makefile @@ -6,11 +6,11 @@ all: position POSITION = \ - position1.pdf \ - position2.pdf \ - position3.pdf \ - position4.pdf \ - position5.pdf + position1.pdf position1-small.pdf \ + position2.pdf position2-small.pdf \ + position3.pdf position3-small.pdf \ + position4.pdf position4-small.pdf \ + position5.pdf position5-small.pdf position: $(POSITION) @@ -52,3 +52,18 @@ position5.jpg: position5.png position5.pdf: position5.tex common.tex position5.jpg pdflatex position5.tex +position1-small.pdf: position1-small.tex common.tex position1.jpg + pdflatex position1-small.tex +position2-small.pdf: position2-small.tex common.tex position2.jpg + pdflatex position2-small.tex +position3-small.pdf: position3-small.tex common.tex position3.jpg + pdflatex position3-small.tex +position4-small.pdf: position4-small.tex common.tex position4.jpg + pdflatex position4-small.tex +position5-small.pdf: position5-small.tex common.tex position5.jpg + pdflatex position5-small.tex + +test: test.pdf + +test.pdf: test.tex $(POSITION) + pdflatex test.tex diff --git a/buch/papers/nav/images/position/common-small.tex b/buch/papers/nav/images/position/common-small.tex new file mode 100644 index 0000000..9430608 --- /dev/null +++ b/buch/papers/nav/images/position/common-small.tex @@ -0,0 +1,32 @@ +% +% common.tex +% +% (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% + +\def\labelA{\node at (0.7,3.8) {$A$};} +\def\labelB{\node at (-3.4,-0.8) {$B$};} +\def\labelC{\node at (3.3,-2.1) {$C$};} +\def\labelP{\node at (-1.4,-3.5) {$P$};} + +\def\labelc{\node at (-1.9,2.1) {$c$};} +\def\labela{\node at (-0.2,-1.2) {$a$};} +\def\labelb{\node at (2.6,1.5) {$b$};} + +\def\labelhb{\node at (-2.6,-2.2) {$h_B$};} +\def\labelhc{\node at (1,-2.9) {$h_C$};} +\def\labell{\node at (-0.7,0.3) {$l$};} + +\def\labelalpha{\node at (0.6,2.85) {$\alpha$};} +\def\labelbeta{\node at (-2.5,-0.5) {$\beta$};} +\def\labelgamma{\node at (2.3,-1.2) {$\gamma$};} +\def\labelomega{\node at (0.85,3.3) {$\omega$};} + +\def\labelgammaone{\node at (2.1,-2.0) {$\gamma_1$};} +\def\labelgammatwo{\node at (2.3,-1.3) {$\gamma_2$};} +\def\labelbetaone{\node at (-2.4,-1.4) {$\beta_1$};} +\def\labelbetatwo{\node at (-2.5,-0.8) {$\beta_2$};} + +\def\labelomegalinks{\node at (0.25,3.25) {$\omega$};} +\def\labelomegarechts{\node at (0.85,3.1) {$\omega$};} + diff --git a/buch/papers/nav/images/position/position1-small.pdf b/buch/papers/nav/images/position/position1-small.pdf new file mode 100644 index 0000000..ba7755f Binary files /dev/null and b/buch/papers/nav/images/position/position1-small.pdf differ diff --git a/buch/papers/nav/images/position/position1-small.tex b/buch/papers/nav/images/position/position1-small.tex new file mode 100644 index 0000000..05fad44 --- /dev/null +++ b/buch/papers/nav/images/position/position1-small.tex @@ -0,0 +1,55 @@ +% +% position1-small.tex +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{times} +\usepackage{amsmath} +\usepackage{txfonts} +\usepackage[utf8]{inputenc} +\usepackage{graphics} +\usetikzlibrary{arrows,intersections,math} +\usepackage{ifthen} +\begin{document} + +\input{common-small.tex} + +\newboolean{showgrid} +\setboolean{showgrid}{false} +\def\breite{4} +\def\hoehe{4} + +\begin{tikzpicture}[>=latex,thick,scale=0.625] + +% Povray Bild +\node at (0,0) {\includegraphics[width=5cm]{position1.jpg}}; + +% Gitter +\ifthenelse{\boolean{showgrid}}{ +\draw[step=0.1,line width=0.1pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw[step=0.5,line width=0.4pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw (-\breite,-\hoehe) grid (\breite, \hoehe); +\fill (0,0) circle[radius=0.05]; +}{} + +\labelA +\labelB +\labelC +\labelP + +\labelc +\labela +\labelb +\labell + +\labelhb +\labelhc + +\labelalpha +\labelomega + +\end{tikzpicture} + +\end{document} + diff --git a/buch/papers/nav/images/position/position2-small.pdf b/buch/papers/nav/images/position/position2-small.pdf new file mode 100644 index 0000000..3333dd4 Binary files /dev/null and b/buch/papers/nav/images/position/position2-small.pdf differ diff --git a/buch/papers/nav/images/position/position2-small.tex b/buch/papers/nav/images/position/position2-small.tex new file mode 100644 index 0000000..e5c33cf --- /dev/null +++ b/buch/papers/nav/images/position/position2-small.tex @@ -0,0 +1,53 @@ +% +% position2-small.tex +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{times} +\usepackage{amsmath} +\usepackage{txfonts} +\usepackage[utf8]{inputenc} +\usepackage{graphics} +\usetikzlibrary{arrows,intersections,math} +\usepackage{ifthen} +\begin{document} + +\input{common-small.tex} + +\newboolean{showgrid} +\setboolean{showgrid}{false} +\def\breite{4} +\def\hoehe{4} + +\begin{tikzpicture}[>=latex,thick,scale=0.625] + +% Povray Bild +\node at (0,0) {\includegraphics[width=5cm]{position2.jpg}}; + +% Gitter +\ifthenelse{\boolean{showgrid}}{ +\draw[step=0.1,line width=0.1pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw[step=0.5,line width=0.4pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw (-\breite,-\hoehe) grid (\breite, \hoehe); +\fill (0,0) circle[radius=0.05]; +}{} + +\labelA +\labelB +\labelC + +\labelc +\labela +\labelb + +\begin{scope}[yshift=0.3cm,xshift=0.1cm] +\labelalpha +\end{scope} +\labelbeta +\labelgamma + +\end{tikzpicture} + +\end{document} + diff --git a/buch/papers/nav/images/position/position3-small.pdf b/buch/papers/nav/images/position/position3-small.pdf new file mode 100644 index 0000000..fae0b85 Binary files /dev/null and b/buch/papers/nav/images/position/position3-small.pdf differ diff --git a/buch/papers/nav/images/position/position3-small.tex b/buch/papers/nav/images/position/position3-small.tex new file mode 100644 index 0000000..4f7b0e9 --- /dev/null +++ b/buch/papers/nav/images/position/position3-small.tex @@ -0,0 +1,51 @@ +% +% position3-small.tex +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{times} +\usepackage{amsmath} +\usepackage{txfonts} +\usepackage[utf8]{inputenc} +\usepackage{graphics} +\usetikzlibrary{arrows,intersections,math} +\usepackage{ifthen} +\begin{document} + +\input{common-small.tex} + +\newboolean{showgrid} +\setboolean{showgrid}{false} +\def\breite{4} +\def\hoehe{4} + +\begin{tikzpicture}[>=latex,thick,scale=0.625] + +% Povray Bild +\node at (0,0) {\includegraphics[width=5cm]{position3.jpg}}; + +% Gitter +\ifthenelse{\boolean{showgrid}}{ +\draw[step=0.1,line width=0.1pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw[step=0.5,line width=0.4pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw (-\breite,-\hoehe) grid (\breite, \hoehe); +\fill (0,0) circle[radius=0.05]; +}{} + +\labelB +\labelC +\labelP + +\labela + +\labelhb +\labelhc + +\labelbetaone +\labelgammaone + +\end{tikzpicture} + +\end{document} + diff --git a/buch/papers/nav/images/position/position4-small.pdf b/buch/papers/nav/images/position/position4-small.pdf new file mode 100644 index 0000000..ac80c46 Binary files /dev/null and b/buch/papers/nav/images/position/position4-small.pdf differ diff --git a/buch/papers/nav/images/position/position4-small.tex b/buch/papers/nav/images/position/position4-small.tex new file mode 100644 index 0000000..e06523b --- /dev/null +++ b/buch/papers/nav/images/position/position4-small.tex @@ -0,0 +1,50 @@ +% +% position4-small.tex +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{times} +\usepackage{amsmath} +\usepackage{txfonts} +\usepackage[utf8]{inputenc} +\usepackage{graphics} +\usetikzlibrary{arrows,intersections,math} +\usepackage{ifthen} +\begin{document} + +\input{common-small.tex} + +\newboolean{showgrid} +\setboolean{showgrid}{false} +\def\breite{4} +\def\hoehe{4} + +\begin{tikzpicture}[>=latex,thick,scale=0.625] + +% Povray Bild +\node at (0,0) {\includegraphics[width=5cm]{position4.jpg}}; + +% Gitter +\ifthenelse{\boolean{showgrid}}{ +\draw[step=0.1,line width=0.1pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw[step=0.5,line width=0.4pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw (-\breite,-\hoehe) grid (\breite, \hoehe); +\fill (0,0) circle[radius=0.05]; +}{} + +\labelA +\labelB +\labelP + +\labelc +\labell +\labelhb + +\labelomegalinks +\labelbetatwo + +\end{tikzpicture} + +\end{document} + diff --git a/buch/papers/nav/images/position/position5-small.pdf b/buch/papers/nav/images/position/position5-small.pdf new file mode 100644 index 0000000..afe120e Binary files /dev/null and b/buch/papers/nav/images/position/position5-small.pdf differ diff --git a/buch/papers/nav/images/position/position5-small.tex b/buch/papers/nav/images/position/position5-small.tex new file mode 100644 index 0000000..0a0e229 --- /dev/null +++ b/buch/papers/nav/images/position/position5-small.tex @@ -0,0 +1,50 @@ +% +% position5-small.tex +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{times} +\usepackage{amsmath} +\usepackage{txfonts} +\usepackage[utf8]{inputenc} +\usepackage{graphics} +\usetikzlibrary{arrows,intersections,math} +\usepackage{ifthen} +\begin{document} + +\input{common-small.tex} + +\newboolean{showgrid} +\setboolean{showgrid}{false} +\def\breite{4} +\def\hoehe{4} + +\begin{tikzpicture}[>=latex,thick,scale=0.625] + +% Povray Bild +\node at (0,0) {\includegraphics[width=5cm]{position5.jpg}}; + +% Gitter +\ifthenelse{\boolean{showgrid}}{ +\draw[step=0.1,line width=0.1pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw[step=0.5,line width=0.4pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw (-\breite,-\hoehe) grid (\breite, \hoehe); +\fill (0,0) circle[radius=0.05]; +}{} + +\labelA +\labelC +\labelP + +\labelb +\labell +\labelhc + +\labelomegarechts +\labelgammatwo + +\end{tikzpicture} + +\end{document} + diff --git a/buch/papers/nav/images/position/test.tex b/buch/papers/nav/images/position/test.tex new file mode 100644 index 0000000..8f4b341 --- /dev/null +++ b/buch/papers/nav/images/position/test.tex @@ -0,0 +1,135 @@ +% +% test.tex +% +% (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[12pt]{article} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{etex} +\usepackage[ngerman]{babel} +\usepackage{times} +\usepackage{amsmath} +\usepackage{amssymb} +\usepackage{amsfonts} +\usepackage{amsthm} +\usepackage{graphicx} +\usepackage{wrapfig} +\begin{document} + +\begin{wrapfigure}{R}{5.2cm} +\includegraphics{position1-small.pdf} +\end{wrapfigure} +Lorem ipsum dolor sit amet, consectetuer adipiscing elit. +Aenean +commodo ligula eget dolor. +Aenean massa. +Cum sociis natoque penatibus +et magnis dis parturient montes, nascetur ridiculus mus. +Donec quam +felis, ultricies nec, pellentesque eu, pretium quis, sem. +Nulla +consequat massa quis enim. +Donec pede justo, fringilla vel, aliquet +nec, vulputate eget, arcu. +In enim justo, rhoncus ut, imperdiet a, +venenatis vitae, justo. +Nullam dictum felis eu pede mollis pretium. +Integer tincidunt. +Cras dapibus. +Vivamus elementum semper nisi. +Aenean vulputate eleifend tellus. +Aenean leo ligula, porttitor eu, +consequat vitae, eleifend ac, enim. +Aliquam lorem ante, dapibus in, +viverra quis, feugiat a, tellus. + +\begin{wrapfigure}{R}{5.2cm} +\includegraphics{position2-small.pdf} +\end{wrapfigure} +Maecenas tempus, tellus eget condimentum rhoncus, sem quam semper +libero, sit amet adipiscing sem neque sed ipsum. Nam quam nunc, +blandit vel, luctus pulvinar, hendrerit id, lorem. Maecenas nec +odio et ante tincidunt tempus. Donec vitae sapien ut libero venenatis +faucibus. Nullam quis ante. Etiam sit amet orci eget eros faucibus +tincidunt. Duis leo. Sed fringilla mauris sit amet nibh. Donec +sodales sagittis magna. Sed consequat, leo eget bibendum sodales, +augue velit cursus nunc, quis gravida magna mi a libero. Fusce +vulputate eleifend sapien. Vestibulum purus quam, scelerisque ut, +mollis sed, nonummy id, metus. Nullam accumsan lorem in dui. Cras +ultricies mi eu turpis hendrerit fringilla. Vestibulum ante ipsum +primis in faucibus orci luctus et ultrices posuere cubilia Curae; + +\pagebreak + +\begin{wrapfigure}{R}{5.2cm} +\includegraphics{position3-small.pdf} +\end{wrapfigure} +Integer ante arcu, accumsan a, consectetuer eget, posuere ut, mauris. +Praesent adipiscing. Phasellus ullamcorper ipsum rutrum nunc. Nunc +nonummy metus. Vestibulum volutpat pretium libero. Cras id dui. +Aenean ut eros et nisl sagittis vestibulum. Nullam nulla eros, +ultricies sit amet, nonummy id, imperdiet feugiat, pede. Sed lectus. +Donec mollis hendrerit risus. Phasellus nec sem in justo pellentesque +facilisis. Etiam imperdiet imperdiet orci. Nunc nec neque. Phasellus +leo dolor, tempus non, auctor et, hendrerit quis, nisi. Curabitur +ligula sapien, tincidunt non, euismod vitae, posuere imperdiet, +leo. Maecenas malesuada. Praesent congue erat at massa. Sed cursus +turpis vitae tortor. Donec posuere vulputate arcu. Phasellus accumsan +cursus velit. Vestibulum ante ipsum primis in faucibus orci luctus +et ultrices posuere cubilia Curae; Sed aliquam, nisi quis porttitor +congue, elit erat euismod orci, ac placerat dolor lectus quis orci. +Phasellus consectetuer vestibulum elit. + +\begin{wrapfigure}{R}{5.2cm} +\includegraphics{position4-small.pdf} +\end{wrapfigure} +Aenean tellus metus, bibendum sed, posuere ac, mattis non, nunc. +Vestibulum fringilla pede sit amet augue. In turpis. Pellentesque +posuere. Praesent turpis. Aenean posuere, tortor sed cursus feugiat, +nunc augue blandit nunc, eu sollicitudin urna dolor sagittis lacus. +Donec elit libero, sodales nec, volutpat a, suscipit non, turpis. +Nullam sagittis. Suspendisse pulvinar, augue ac venenatis condimentum, +sem libero volutpat nibh, nec pellentesque velit pede quis nunc. +Vestibulum ante ipsum primis in faucibus orci luctus et ultrices +posuere cubilia Curae; Fusce id purus. Ut varius tincidunt libero. +Phasellus dolor. Maecenas vestibulum mollis diam. Pellentesque ut +neque. Pellentesque habitant morbi tristique senectus et netus et +malesuada fames ac turpis egestas. In dui magna, posuere eget, +vestibulum et, tempor auctor, justo. In ac felis quis tortor malesuada +pretium. Pellentesque auctor neque nec urna. + +\pagebreak + +\begin{wrapfigure}{R}{5.2cm} +\includegraphics{position5-small.pdf} +\end{wrapfigure} +Proin sapien ipsum, porta a, auctor quis, euismod ut, mi. Aenean +viverra rhoncus pede. Pellentesque habitant morbi tristique senectus +et netus et malesuada fames ac turpis egestas. Ut non enim eleifend +felis pretium feugiat. Vivamus quis mi. Phasellus a est. Phasellus +magna. In hac habitasse platea dictumst. Curabitur at lacus ac velit +ornare lobortis. Curabitur a felis in nunc fringilla tristique. +Morbi mattis ullamcorper velit. Phasellus gravida semper nisi. +Nullam vel sem. Pellentesque libero tortor, tincidunt et, tincidunt +eget, semper nec, quam. Sed hendrerit. Morbi ac felis. Nunc egestas, +augue at pellentesque laoreet, felis eros vehicula leo, at malesuada +velit leo quis pede. Donec interdum, metus et hendrerit aliquet, +dolor diam sagittis ligula, eget egestas libero turpis vel mi. Nunc +nulla. Fusce risus nisl, viverra et, tempor et, pretium in, sapien. +Donec venenatis vulputate lorem. Morbi nec metus. Phasellus blandit +leo ut odio. Maecenas ullamcorper, dui et placerat feugiat, eros +pede varius nisi, condimentum viverra felis nunc et lorem. Sed magna +purus, fermentum eu, tincidunt eu, varius ut, felis. In auctor +lobortis lacus. Quisque libero metus, condimentum nec, tempor a, +commodo mollis, magna. Vestibulum ullamcorper mauris at ligula. +Fusce fermentum. Nullam cursus lacinia erat. Praesent blandit laoreet +nibh. Fusce convallis metus id felis luctus adipiscing. Pellentesque +egestas, neque sit amet convallis pulvinar, justo nulla eleifend +augue, ac auctor orci leo non est. Quisque id mi. Ut tincidunt +tincidunt erat. Etiam feugiat lorem non metus. Vestibulum dapibus +nunc ac augue. Curabitur vestibulum aliquam leo. Praesent egestas +neque eu enim. In hac habitasse platea dictumst. Fusce a quam. Etiam +ut purus mattis mauris + +\end{document} -- cgit v1.2.1 From fee7a11b5b0309e89aae17485c24fe250c55d548 Mon Sep 17 00:00:00 2001 From: "ENEZ-PC\\erdem" Date: Sun, 12 Jun 2022 18:31:01 +0200 Subject: Abgabe --- buch/papers/nav/bilder/beispiele1.pdf | Bin 0 -> 399907 bytes buch/papers/nav/bilder/beispiele2.pdf | Bin 0 -> 404679 bytes buch/papers/nav/bilder/position1.pdf | Bin 0 -> 433626 bytes buch/papers/nav/bilder/position2.pdf | Bin 0 -> 310645 bytes buch/papers/nav/bilder/position3.pdf | Bin 0 -> 417713 bytes buch/papers/nav/bilder/position4.pdf | Bin 0 -> 390331 bytes buch/papers/nav/bilder/position5.pdf | Bin 0 -> 337308 bytes buch/papers/nav/bsp.tex | 70 ++++++++++++++++++++++++------- buch/papers/nav/images/position/test.tex | 2 +- buch/papers/nav/nautischesdreieck.tex | 13 ++---- buch/papers/nav/packages.tex | 2 +- 11 files changed, 62 insertions(+), 25 deletions(-) create mode 100644 buch/papers/nav/bilder/beispiele1.pdf create mode 100644 buch/papers/nav/bilder/beispiele2.pdf create mode 100644 buch/papers/nav/bilder/position1.pdf create mode 100644 buch/papers/nav/bilder/position2.pdf create mode 100644 buch/papers/nav/bilder/position3.pdf create mode 100644 buch/papers/nav/bilder/position4.pdf create mode 100644 buch/papers/nav/bilder/position5.pdf diff --git a/buch/papers/nav/bilder/beispiele1.pdf b/buch/papers/nav/bilder/beispiele1.pdf new file mode 100644 index 0000000..d0fe3dc Binary files /dev/null and b/buch/papers/nav/bilder/beispiele1.pdf differ diff --git a/buch/papers/nav/bilder/beispiele2.pdf b/buch/papers/nav/bilder/beispiele2.pdf new file mode 100644 index 0000000..8579ee5 Binary files /dev/null and b/buch/papers/nav/bilder/beispiele2.pdf differ diff --git a/buch/papers/nav/bilder/position1.pdf b/buch/papers/nav/bilder/position1.pdf new file mode 100644 index 0000000..ba7755f Binary files /dev/null and b/buch/papers/nav/bilder/position1.pdf differ diff --git a/buch/papers/nav/bilder/position2.pdf b/buch/papers/nav/bilder/position2.pdf new file mode 100644 index 0000000..3333dd4 Binary files /dev/null and b/buch/papers/nav/bilder/position2.pdf differ diff --git a/buch/papers/nav/bilder/position3.pdf b/buch/papers/nav/bilder/position3.pdf new file mode 100644 index 0000000..fae0b85 Binary files /dev/null and b/buch/papers/nav/bilder/position3.pdf differ diff --git a/buch/papers/nav/bilder/position4.pdf b/buch/papers/nav/bilder/position4.pdf new file mode 100644 index 0000000..ac80c46 Binary files /dev/null and b/buch/papers/nav/bilder/position4.pdf differ diff --git a/buch/papers/nav/bilder/position5.pdf b/buch/papers/nav/bilder/position5.pdf new file mode 100644 index 0000000..afe120e Binary files /dev/null and b/buch/papers/nav/bilder/position5.pdf differ diff --git a/buch/papers/nav/bsp.tex b/buch/papers/nav/bsp.tex index ac749c5..d544588 100644 --- a/buch/papers/nav/bsp.tex +++ b/buch/papers/nav/bsp.tex @@ -20,6 +20,10 @@ Wir werden rechnerisch beweisen, dass wir mit diesen Ergebnissen genau auf diese \end{center} \subsection{Ausgangslage} +\begin{wrapfigure}{R}{5.6cm} + \includegraphics{papers/nav/bilder/position1.pdf} + \caption{Ausgangslage} +\end{wrapfigure} Die Rektaszension und die Sternzeit sind in der Regeln in Stunden angegeben. Für die Umrechnung in Grad kann folgender Zusammenhang verwendet werden: \[ Stunden \cdot 15 = Grad\]. @@ -30,11 +34,11 @@ Dies wurde hier bereits gemacht. Deneb&\\ & Rektaszension $RA_{Deneb}$& $310.55058^\circ$ \\ & Deklination $DEC_{Deneb}$& $45.361194^\circ$ \\ - & Höhe $H_{Deneb}$ & $50.256027^\circ$ \\ + & Höhe $h_c$ & $50.256027^\circ$ \\ Arktur &\\ & Rektaszension $RA_{Arktur}$& $214.17558^\circ$ \\ & Deklination $DEC_{Arktur}$& $19.063222^\circ$ \\ - & Höhe $H_{Arktur}$ & $47.427444^\circ$ \\ + & Höhe $h_b$ & $47.427444^\circ$ \\ \end{tabular} \end{center} \subsection{Koordinaten der Bildpunkte} @@ -49,9 +53,25 @@ $\delta$ ist die Breite, $\lambda$ die Länge. \subsection{Dreiecke definieren} +\begin{figure} + \begin{center} + \includegraphics[width=6cm]{papers/nav/bilder/beispiele1.pdf} + \includegraphics[width=6cm]{papers/nav/bilder/beispiele2.pdf} + \caption{Arktur-Deneb; Spica-Altiar} +\end{center} +\end{figure} Das Festlegen der Dreiecke ist essenziell für die korrekten Berechnungen. -BILD +Ein Problem, welches in der Theorie nicht berücksichtigt wurde ist, dass der Punkt $P$ nicht zwingend unterhalb der Seite $a$ sein muss. +Wenn man das nicht berücksichtigt, erhält man falsche oder keine Ergebnisse. +In der Realität weiss man jedoch ungefähr auf welchem Breitengrad man ist, so kann man relativ einfach entscheiden, ob der eigene Standort über $a$ ist oder nicht. +Beim unserem genutzten Paar Arktur-Deneb ist dies kein Problem, da der Punkt unterhalb der Seite $a$ liegt. +Würde man aber das Paar Altair-Spica nehmen, liegt $P$ über $a$ (vgl. Abbildung 21.11) und man müsste trigonometrisch anders vorgehen. + \subsection{Dreieck $ABC$} +\begin{wrapfigure}{R}{5.6cm} + \includegraphics{papers/nav/bilder/position2.pdf} + \caption{Dreieck ABC} +\end{wrapfigure} Nun berechnen wir alle Seitenlängen $a$, $b$, $c$ und die Innnenwinkel $\alpha$, $\beta$ und $\gamma$ Wir können $b$ und $c$ mit den geltenten Zusammenhängen des nautischen Dreiecks wie folgt bestimmen: \begin{align} @@ -78,43 +98,51 @@ Für $\beta$ und $\gamma$ nutzen wir den sphärischen Seitenkosinussatz: &=\underline{\underline{72.0573328^\circ}} \nonumber \end{align} \subsection{Dreieck $BPC$} -Als nächstes berechnen wir die Seiten $pb$, $pc$ und die Innenwinkel $\beta_1$ und $\gamma_1$. +\begin{wrapfigure}{R}{5.6cm} + \includegraphics{papers/nav/bilder/position3.pdf} + \caption{Dreieck BPC} +\end{wrapfigure} +Als nächstes berechnen wir die Seiten $h_b$, $h_c$ und die Innenwinkel $\beta_1$ und $\gamma_1$. \begin{align} - pb&=90^\circ - H_{Arktur} \nonumber \\ + h_b&=90^\circ - h_b \nonumber \\ &= 90^\circ - 47.42744^\circ \nonumber \\ &= \underline{\underline{42.572556^\circ}} \nonumber \end{align} \begin{align} - pc &= 90^\circ - H_{Deneb} \nonumber \\ + h_c &= 90^\circ - h_c \nonumber \\ &= 90^\circ - 50.256027^\circ \nonumber \\ &= \underline{\underline{39.743973^\circ}} \nonumber \end{align} \begin{align} - \beta_1 &= \cos^{-1} \bigg[\frac{\cos(pc)-\cos(a) \cdot \cos(pb)}{\sin(a) \cdot \sin(pb)}\bigg] \nonumber \\ + \beta_1 &= \cos^{-1} \bigg[\frac{\cos(h_c)-\cos(a) \cdot \cos(h_b)}{\sin(a) \cdot \sin(h_b)}\bigg] \nonumber \\ &= \cos^{-1} \bigg[\frac{\cos(39.743973)-\cos(80.8707801) \cdot \cos(42.572556)}{\sin(80.8707801) \cdot \sin(42.572556)}\bigg] \nonumber \\ &=\underline{\underline{12.5211127^\circ}} \nonumber \end{align} \begin{align} - \gamma_1 &= \cos^{-1} \bigg[\frac{\cos(pb)-\cos(a) \cdot \cos(pc)}{\sin(a) \cdot \sin(pc)}\bigg] \nonumber \\ + \gamma_1 &= \cos^{-1} \bigg[\frac{\cos(h_b)-\cos(a) \cdot \cos(h_c)}{\sin(a) \cdot \sin(h_c)}\bigg] \nonumber \\ &= \cos^{-1} \bigg[\frac{\cos(42.572556)-\cos(80.8707801) \cdot \cos(39.743973)}{\sin(80.8707801) \cdot \sin(39.743973)}\bigg] \nonumber \\ &=\underline{\underline{13.2618475^\circ}} \nonumber \end{align} \subsection{Dreieck $ABP$} -Als erster müssen wir den Winkel $\kappa$ berechnen: +\begin{wrapfigure}{R}{5.6cm} + \includegraphics{papers/nav/bilder/position4.pdf} + \caption{Dreieck ABP} +\end{wrapfigure} +Als erster müssen wir den Winkel $\beta_2$ berechnen: \begin{align} - \kappa &= \beta + \beta_1 = 45.011513^\circ + 12.5211127^\circ \nonumber \\ + \beta_2 &= \beta + \beta_1 = 45.011513^\circ + 12.5211127^\circ \nonumber \\ &=\underline{\underline{44.6687451^\circ}} \nonumber \end{align} -Danach können wir mithilfe von $\kappa$, $c$ und $pb$ die Seite $l$ berechnen: +Danach können wir mithilfe von $\beta_2$, $c$ und $h_b$ die Seite $l$ berechnen: \begin{align} - l &= \cos^{-1}(\cos(c) \cdot \cos(pb) + \sin(c) \cdot \sin(pb) \cdot \cos(\kappa)) \nonumber \\ + l &= \cos^{-1}(\cos(c) \cdot \cos(h_b) + \sin(c) \cdot \sin(h_b) \cdot \cos(\beta_2)) \nonumber \\ &= \cos^{-1}(\cos(70.936778) \cdot \cos(42.572556) + \sin(70.936778) \cdot \sin(42.572556) \cdot \cos(57.5326442)) \nonumber \\ &= \underline{\underline{54.2833404^\circ}} \nonumber \end{align} Damit wir gleich den Längengrad berechnen können, benötigen wir noch den Winkel $\omega$: \begin{align} - \omega &= \cos^{-1} \bigg[\frac{\cos(pb)-\cos(c) \cdot \cos(l)}{\sin(c) \cdot \sin(l)}\bigg] \nonumber \\ + \omega &= \cos^{-1} \bigg[\frac{\cos(h_b)-\cos(c) \cdot \cos(l)}{\sin(c) \cdot \sin(l)}\bigg] \nonumber \\ &=\cos^{-1} \bigg[\frac{\cos(42.572556)-\cos(70.936778) \cdot \cos(54.2833404)}{\sin(70.936778) \cdot \sin(54.2833404)}\bigg] \nonumber \\ &= \underline{\underline{44.6687451^\circ}} \nonumber \end{align} @@ -132,7 +160,21 @@ Damit wir gleich den Längengrad berechnen können, benötigen wir noch den Wink &= \underline{\underline{140.233521^\circ}} \nonumber \end{align} Wie wir sehen, stimmen die berechneten Koordinaten mit den Koordinaten des Punktes, an welchem gemessen wurde überein. -Unsere Methode scheint also zu funktionieren. + +\subsection{Fazit} +Die theoretische Anleitung im Abschnitt 21.6 scheint grundsätzlich zu funktionieren. +Allerdings gab es zwei interessante Probleme. + +Einerseits das Problem, ob der Punkt P sich oberhalb oder unterhalb von $a$ befindet. +Da wir eigentlich wussten, wo der gesuchte Punkt P ist, konnten wir das Dreieck anhand der Koordinaten der Bildpunkte richtig aufstellen. +In der Praxis muss man aber schon wissen, auf welchem Breitengrad man ungefähr ist. +Dies weis man in der Regeln aber, da die eigene Breite die Höhe des Polarsterns ist. +Diese Höhe wird mit dem Sextant gemessen. + +Andererseits ist da noch ein Problem mit dem Sinussatz. +Beim Sinussatz gibt es immer zwei Lösungen, weil \[ \sin(\pi-a)=\sin(a).\] +Da kann es sein (und war in unserem Fall auch so), dass man das falsche Ergebnis erwischt. +Durch diese Erkenntnis haben wir nur Kosinussätze verwendet und dies ebenfalls im Abschnitt 21.6 abgeändert, da es für den Leser auch relevant sein kann, wenn er es Probieren möchte. diff --git a/buch/papers/nav/images/position/test.tex b/buch/papers/nav/images/position/test.tex index 8f4b341..3247ed1 100644 --- a/buch/papers/nav/images/position/test.tex +++ b/buch/papers/nav/images/position/test.tex @@ -17,7 +17,7 @@ \usepackage{wrapfig} \begin{document} -\begin{wrapfigure}{R}{5.2cm} +\begin{wrapfigure}{R}{5.6cm} \includegraphics{position1-small.pdf} \end{wrapfigure} Lorem ipsum dolor sit amet, consectetuer adipiscing elit. diff --git a/buch/papers/nav/nautischesdreieck.tex b/buch/papers/nav/nautischesdreieck.tex index d8a14af..44153bd 100644 --- a/buch/papers/nav/nautischesdreieck.tex +++ b/buch/papers/nav/nautischesdreieck.tex @@ -97,7 +97,6 @@ Mithilfe dieser Dreiecken können wir die einfachen Sätze der sphärischen Trig \end{center} \end{figure} - \subsubsection{Dreieck $ABC$} \begin{center} @@ -140,12 +139,9 @@ können wir nun die dritte Seitenlänge bestimmen. Es ist darauf zu achten, dass hier natürlich die Seitenlängen in Bogenmass sind und dementsprechend der Kosinus und Sinus verwendet wird. Jetzt fehlen noch die beiden anderen Innenwinkel $\beta$ und\ $\gamma$. -Diese bestimmen wir mithilfe des Sinussatzes \[\frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)}.\] -Hier muss man aufpassen, dass man Seite von Winkel unterscheiden kann. -Im Zähler sind die Seiten, im Nenner die Winkel. -Somit ist \[\beta =\sin^{-1} [\sin(b) \cdot \frac{\sin(\alpha)}{\sin(a)}].\] +Diese bestimmen wir mithilfe des Kosinussatzes: \[\beta=\cos^{-1} \bigg[\frac{\cos(b)-\cos(a) \cdot \cos(c)}{\sin(a) \cdot \sin(c)}\bigg]\] und \[\gamma = \cos^{-1} \bigg[\frac{\cos(c)-\cos(b) \cdot \cos(a)}{\sin(a) \cdot \sin(b)}.\bigg]\] -Schlussendlich haben wir die Seiten $a,b\ und \ c$, die Ecken A,B und C und die Winkel $\alpha$, $\beta$ und $\gamma$ bestimmt und somit das ganze Kugeldreieck $ABC$ berechnet. +Schlussendlich haben wir die Seiten $a$ $b$ und $c$, die Ecken A,B und C und die Winkel $\alpha$, $\beta$ und $\gamma$ bestimmt und somit das ganze Kugeldreieck $ABC$ berechnet. \subsubsection{Dreieck $BPC$} Wir bilden nun ein zweites Dreieck, welches die Ecken $B$ und $C$ des ersten Dreiecks besitzt. @@ -167,8 +163,7 @@ und \delta =\cos^{-1} [\cos(c) \cdot \cos(pb) + \sin(c) \cdot \sin(pb) \cdot \cos(\kappa)]. \] -Für die Geographische Länge $\lambda$ des eigenen Standortes muss man den Winkel $\omega$, welcher sich im Dreieck $ACP$ in der Ecke bei $A$ befindet. -Mithilfe des Sinussatzes \[\frac{\sin (a)}{\sin (\alpha)} =\frac{\sin (b)}{\sin (\beta)} = \frac{\sin (c)}{\sin (\gamma)}\] können wir das bestimmen. -Somit ist \[ \omega=\sin^{-1}[\sin(pc) \cdot \frac{\sin(\gamma)}{\sin(l)}] \]und unsere gesuchte geographische Länge schlussendlich +Für die Geographische Länge $\lambda$ des eigenen Standortes nutzt man den Winkel $\omega$, welcher sich im Dreieck $ACP$ in der Ecke bei $A$ befindet. +Mithilfe des Kosinussatzes können wir \[\omega = \cos^{-1} \bigg[\frac{\cos(pb)-\cos(c) \cdot \cos(l)}{\sin(c) \cdot \sin(l)}.\bigg]\] berechnen und schlussentlich dann \[\lambda=\lambda_1 - \omega\] wobei $\lambda_1$ die Länge des Bildpunktes $X$ von $C$ ist. diff --git a/buch/papers/nav/packages.tex b/buch/papers/nav/packages.tex index f2e6132..bedaccd 100644 --- a/buch/papers/nav/packages.tex +++ b/buch/papers/nav/packages.tex @@ -9,4 +9,4 @@ %\usepackage{packagename} \usepackage{amsmath} -\usepackage{cancel} \ No newline at end of file +\usepackage{cancel} -- cgit v1.2.1 From 9fb1f740b7d00b350a008e957d28ecf7daf53797 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 14 Jun 2022 16:24:13 +0200 Subject: new image --- buch/chapters/110-elliptisch/images/Makefile | 11 ++ buch/chapters/110-elliptisch/images/kegelpara.pdf | Bin 0 -> 139626 bytes buch/chapters/110-elliptisch/images/kegelpara.pov | 225 ++++++++++++++++++++++ buch/chapters/110-elliptisch/images/kegelpara.tex | 41 ++++ 4 files changed, 277 insertions(+) create mode 100644 buch/chapters/110-elliptisch/images/kegelpara.pdf create mode 100644 buch/chapters/110-elliptisch/images/kegelpara.pov create mode 100644 buch/chapters/110-elliptisch/images/kegelpara.tex diff --git a/buch/chapters/110-elliptisch/images/Makefile b/buch/chapters/110-elliptisch/images/Makefile index a7c9e74..7e4fa0c 100644 --- a/buch/chapters/110-elliptisch/images/Makefile +++ b/buch/chapters/110-elliptisch/images/Makefile @@ -78,3 +78,14 @@ slcldata.tex: slcl ./slcl --outfile=slcldata.tex --a=0 --b=13.4 --steps=200 slcl.pdf: slcl.tex slcldata.tex pdflatex slcl.tex + +POVRAYOPTIONS = -W1920 -H1080 +kegelpara.png: kegelpara.pov + povray +A0.1 -W1080 -H1080 -Okegelpara.png kegelpara.pov + +kegelpara.jpg: kegelpara.png Makefile + convert -extract 1080x1000+0+40 kegelpara.png \ + -density 300 -units PixelsPerInch kegelpara.jpg + +kegelpara.pdf: kegelpara.tex kegelpara.jpg + pdflatex kegelpara.tex diff --git a/buch/chapters/110-elliptisch/images/kegelpara.pdf b/buch/chapters/110-elliptisch/images/kegelpara.pdf new file mode 100644 index 0000000..4b03119 Binary files /dev/null and b/buch/chapters/110-elliptisch/images/kegelpara.pdf differ diff --git a/buch/chapters/110-elliptisch/images/kegelpara.pov b/buch/chapters/110-elliptisch/images/kegelpara.pov new file mode 100644 index 0000000..5d85eed --- /dev/null +++ b/buch/chapters/110-elliptisch/images/kegelpara.pov @@ -0,0 +1,225 @@ +// +// kegelpara.pov +// +// (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +// +#version 3.7; +#include "colors.inc" + +#declare O = <0,0,0>; + +global_settings { + assumed_gamma 1 +} + +#declare imagescale = 0.08; + +camera { + location <28, 20, -40> + look_at <0, 0.1, 0> + right x * imagescale + up y * imagescale +} + +light_source { + <30, 10, -40> color White + area_light <1,0,0> <0,0,1>, 10, 10 + adaptive 1 + jitter +} + +sky_sphere { + pigment { + color rgb<1,1,1> + } +} + + +// +// draw an arrow from to with thickness with +// color +// +#macro arrow(from, to, arrowthickness, c) +#declare arrowdirection = vnormalize(to - from); +#declare arrowlength = vlength(to - from); +union { + sphere { + from, 1.1 * arrowthickness + } + cylinder { + from, + from + (arrowlength - 5 * arrowthickness) * arrowdirection, + arrowthickness + } + cone { + from + (arrowlength - 5 * arrowthickness) * arrowdirection, + 2 * arrowthickness, + to, + 0 + } + pigment { + color c + } + finish { + specular 0.9 + metallic + } +} +#end + +arrow(<-2,0,0>,<2,0,0>,0.02,White) +arrow(<0,-2,0>,<0,2,0>,0.02,White) +arrow(<0,0,-2>,<0,0,2>,0.02,White) + +#declare epsilon = 0.001; +#declare l = 1.5; + +#macro Kegel(farbe) +union { + difference { + cone { O, 0, , l } + cone { O + , 0, , l } + } + difference { + cone { O, 0, <-l, 0, 0>, l } + cone { O + <-epsilon, 0, 0>, 0, <-l-epsilon, 0, 0>, l } + } + pigment { + color farbe + } + finish { + specular 0.9 + metallic + } +} +#end + +#macro F(w, r) + +#end + +#macro Paraboloid(farbe) +mesh { + #declare phi = 0; + #declare phimax = 2 * pi; + #declare phisteps = 100; + #declare phistep = pi / phisteps; + #declare rsteps = 100; + #declare rmax = 1.5; + #declare rstep = rmax / rsteps; + #while (phi < phimax - phistep/2) + #declare r = rstep; + #declare h = r * r / sqrt(2); + triangle { + O, F(phi, r), F(phi + phistep, r) + } + #while (r < rmax - rstep/2) + // ring + triangle { + F(phi, r), + F(phi + phistep, r), + F(phi + phistep, r + rstep) + } + triangle { + F(phi, r), + F(phi + phistep, r + rstep), + F(phi, r + rstep) + } + #declare r = r + rstep; + #end + #declare phi = phi + phistep; + #end + pigment { + color farbe + } + finish { + specular 0.9 + metallic + } +} +#end + +#declare a = sqrt(2); +#macro G(phi,sg) + < a*sg*sqrt(cos(2*phi))*cos(phi), a*cos(2*phi), a*sqrt(cos(2*phi))*sin(phi)> +#end + +#macro Lemniskate3D(s, farbe) +union { + #declare phi = -pi / 4; + #declare phimax = pi / 4; + #declare phisteps = 100; + #declare phistep = phimax / phisteps; + #while (phi < phimax - phistep/2) + sphere { G(phi,1), s } + cylinder { G(phi,1), G(phi+phistep,1), s } + sphere { G(phi,-1), s } + cylinder { G(phi,-1), G(phi+phistep,-1), s } + #declare phi = phi + phistep; + #end + pigment { + color farbe + } + finish { + specular 0.9 + metallic + } +} +#end + +#declare a = sqrt(2); +#macro G2(phi,sg) + a * sqrt(cos(2*phi)) * < sg * cos(phi), 0, sin(phi)> +#end + +#macro Lemniskate(s, farbe) +union { + #declare phi = -pi / 4; + #declare phimax = pi / 4; + #declare phisteps = 100; + #declare phistep = phimax / phisteps; + #while (phi < phimax - phistep/2) + sphere { G2(phi,1), s } + cylinder { G2(phi,1), G2(phi+phistep,1), s } + sphere { G2(phi,-1), s } + cylinder { G2(phi,-1), G2(phi+phistep,-1), s } + #declare phi = phi + phistep; + #end + pigment { + color farbe + } + finish { + specular 0.9 + metallic + } +} +#end + +#macro Projektion(s, farbe) +union { + #declare phistep = pi / 16; + #declare phi = -pi / 4 + phistep; + #declare phimax = pi / 4; + #while (phi < phimax - phistep/2) + cylinder { G(phi, 1), G2(phi, 1), s } + cylinder { G(phi, -1), G2(phi, -1), s } + #declare phi = phi + phistep; + #end + pigment { + color farbe + } + finish { + specular 0.9 + metallic + } +} +#end + +#declare kegelfarbe = rgbt<0.2,0.6,0.2,0.2>; +#declare paraboloidfarbe = rgbt<0.2,0.6,1.0,0.2>; + +Paraboloid(paraboloidfarbe) +Kegel(kegelfarbe) +Lemniskate3D(0.02, Blue) +Lemniskate(0.02, Red) +Projektion(0.01, Yellow) diff --git a/buch/chapters/110-elliptisch/images/kegelpara.tex b/buch/chapters/110-elliptisch/images/kegelpara.tex new file mode 100644 index 0000000..5a724ee --- /dev/null +++ b/buch/chapters/110-elliptisch/images/kegelpara.tex @@ -0,0 +1,41 @@ +% +% kegelpara.tex +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{times} +\usepackage{amsmath} +\usepackage{txfonts} +\usepackage[utf8]{inputenc} +\usepackage{graphics} +\usetikzlibrary{arrows,intersections,math} +\usepackage{ifthen} +\begin{document} + +\newboolean{showgrid} +\setboolean{showgrid}{false} +\def\breite{4} +\def\hoehe{4} + +\begin{tikzpicture}[>=latex,thick] + +% Povray Bild +\node at (0,0) {\includegraphics[width=8cm]{kegelpara.jpg}}; + +% Gitter +\ifthenelse{\boolean{showgrid}}{ +\draw[step=0.1,line width=0.1pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw[step=0.5,line width=0.4pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw (-\breite,-\hoehe) grid (\breite, \hoehe); +\fill (0,0) circle[radius=0.05]; +}{} + +\node at (3.3,-1.0) {$X$}; +\node at (0.2,3.4) {$Z$}; +\node at (-2.5,-1.4) {$-Y$}; + +\end{tikzpicture} + +\end{document} + -- cgit v1.2.1 From fbcf8833aef79694e448010520f2253e93f2cd4e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 14 Jun 2022 16:59:48 +0200 Subject: more info about the lemniskate --- buch/chapters/110-elliptisch/images/Makefile | 12 +- .../110-elliptisch/images/torusschnitt.pdf | Bin 0 -> 137159 bytes .../110-elliptisch/images/torusschnitt.pov | 185 +++++++++++++++++++++ .../110-elliptisch/images/torusschnitt.tex | 41 +++++ buch/chapters/110-elliptisch/lemniskate.tex | 162 ++++++++++++++++++ 5 files changed, 399 insertions(+), 1 deletion(-) create mode 100644 buch/chapters/110-elliptisch/images/torusschnitt.pdf create mode 100644 buch/chapters/110-elliptisch/images/torusschnitt.pov create mode 100644 buch/chapters/110-elliptisch/images/torusschnitt.tex diff --git a/buch/chapters/110-elliptisch/images/Makefile b/buch/chapters/110-elliptisch/images/Makefile index 7e4fa0c..2a23d88 100644 --- a/buch/chapters/110-elliptisch/images/Makefile +++ b/buch/chapters/110-elliptisch/images/Makefile @@ -79,7 +79,6 @@ slcldata.tex: slcl slcl.pdf: slcl.tex slcldata.tex pdflatex slcl.tex -POVRAYOPTIONS = -W1920 -H1080 kegelpara.png: kegelpara.pov povray +A0.1 -W1080 -H1080 -Okegelpara.png kegelpara.pov @@ -89,3 +88,14 @@ kegelpara.jpg: kegelpara.png Makefile kegelpara.pdf: kegelpara.tex kegelpara.jpg pdflatex kegelpara.tex + +torusschnitt.png: torusschnitt.pov + povray +A0.1 -W1920 -H1080 -Otorusschnitt.png torusschnitt.pov + +torusschnitt.jpg: torusschnitt.png Makefile + convert -extract 1560x1080+180+0 torusschnitt.png \ + -density 300 -units PixelsPerInch torusschnitt.jpg + +torusschnitt.pdf: torusschnitt.tex torusschnitt.jpg + pdflatex torusschnitt.tex + diff --git a/buch/chapters/110-elliptisch/images/torusschnitt.pdf b/buch/chapters/110-elliptisch/images/torusschnitt.pdf new file mode 100644 index 0000000..430447c Binary files /dev/null and b/buch/chapters/110-elliptisch/images/torusschnitt.pdf differ diff --git a/buch/chapters/110-elliptisch/images/torusschnitt.pov b/buch/chapters/110-elliptisch/images/torusschnitt.pov new file mode 100644 index 0000000..94190be --- /dev/null +++ b/buch/chapters/110-elliptisch/images/torusschnitt.pov @@ -0,0 +1,185 @@ +// +// kegelpara.pov +// +// (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +// +#version 3.7; +#include "colors.inc" + +#declare O = <0,0,0>; + +global_settings { + assumed_gamma 1 +} + +#declare imagescale = 0.060; + +camera { + location <28, 20, -40> + look_at <0, 0.55, 0> + right (16/9) * x * imagescale + up y * imagescale +} + +light_source { + <30, 10, -40> color White + area_light <1,0,0> <0,0,1>, 10, 10 + adaptive 1 + jitter +} + +sky_sphere { + pigment { + color rgb<1,1,1> + } +} + + +// +// draw an arrow from to with thickness with +// color +// +#macro arrow(from, to, arrowthickness, c) +#declare arrowdirection = vnormalize(to - from); +#declare arrowlength = vlength(to - from); +union { + sphere { + from, 1.1 * arrowthickness + } + cylinder { + from, + from + (arrowlength - 5 * arrowthickness) * arrowdirection, + arrowthickness + } + cone { + from + (arrowlength - 5 * arrowthickness) * arrowdirection, + 2 * arrowthickness, + to, + 0 + } + pigment { + color c + } + finish { + specular 0.9 + metallic + } +} +#end + +arrow(<-2,0,0>,<2,0,0>,0.02,White) +arrow(<0,-1.1,0>,<0,2.2,0>,0.02,White) +arrow(<0,0,-1.6>,<0,0,2.4>,0.02,White) + +#declare epsilon = 0.001; +#declare l = 1.5; + + +#declare a = sqrt(2); +#macro G2(phi,sg) + a * sqrt(cos(2*phi)) * < sg * cos(phi), 0, sin(phi)> +#end + +#macro Lemniskate(s, farbe) +union { + #declare phi = -pi / 4; + #declare phimax = pi / 4; + #declare phisteps = 100; + #declare phistep = phimax / phisteps; + #while (phi < phimax - phistep/2) + sphere { G2(phi,1), s } + cylinder { G2(phi,1), G2(phi+phistep,1), s } + sphere { G2(phi,-1), s } + cylinder { G2(phi,-1), G2(phi+phistep,-1), s } + #declare phi = phi + phistep; + #end + pigment { + color farbe + } + finish { + specular 0.9 + metallic + } +} +#end + +#macro Projektion(s, farbe) +union { + #declare phistep = pi / 16; + #declare phi = -pi / 4 + phistep; + #declare phimax = pi / 4; + #while (phi < phimax - phistep/2) + cylinder { G(phi, 1), G2(phi, 1), s } + cylinder { G(phi, -1), G2(phi, -1), s } + #declare phi = phi + phistep; + #end + pigment { + color farbe + } + finish { + specular 0.9 + metallic + } +} +#end + +#macro Ebene(farbe) +box { + <-1.8, 0, -1.4>, <1.8, 0.001, 1.4> + pigment { + color farbe + } + finish { + specular 0.9 + metallic + } +} +#end + +#declare b = 0.5; +#macro T(phi, theta) + b * < (2 + cos(theta)) * cos(phi), (2 + cos(theta)) * sin(phi) + 1, sin(theta) > +#end + +#macro Torus(farbe) +mesh { + #declare phi = 0; + #declare phimax = 2 * pi; + #declare phisteps = 200; + #declare phistep = phimax/phisteps; + #while (phi < phimax - phistep/2) + #declare theta = 0; + #declare thetamax = 2 * pi; + #declare thetasteps = 200; + #declare thetastep = thetamax / thetasteps; + #while (theta < thetamax - thetastep/2) + triangle { + T(phi, theta), + T(phi + phistep, theta), + T(phi + phistep, theta + thetastep) + } + triangle { + T(phi, theta), + T(phi + phistep, theta + thetastep), + T(phi, theta + thetastep) + } + #declare theta = theta + thetastep; + #end + #declare phi = phi + phistep; + #end + pigment { + color farbe + } + finish { + specular 0.9 + metallic + } +} +#end + +#declare torusfarbe = rgbt<0.2,0.6,0.2,0.2>; +#declare ebenenfarbe = rgbt<0.2,0.6,1.0,0.2>; + +Lemniskate(0.02, Red) +Ebene(ebenenfarbe) +Torus(torusfarbe) diff --git a/buch/chapters/110-elliptisch/images/torusschnitt.tex b/buch/chapters/110-elliptisch/images/torusschnitt.tex new file mode 100644 index 0000000..3053ac5 --- /dev/null +++ b/buch/chapters/110-elliptisch/images/torusschnitt.tex @@ -0,0 +1,41 @@ +% +% torusschnitt.tex +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{times} +\usepackage{amsmath} +\usepackage{txfonts} +\usepackage[utf8]{inputenc} +\usepackage{graphics} +\usetikzlibrary{arrows,intersections,math} +\usepackage{ifthen} +\begin{document} + +\newboolean{showgrid} +\setboolean{showgrid}{false} +\def\breite{6} +\def\hoehe{4} + +\begin{tikzpicture}[>=latex,thick] + +% Povray Bild +\node at (0,0) {\includegraphics[width=11.4cm]{torusschnitt.jpg}}; + +% Gitter +\ifthenelse{\boolean{showgrid}}{ +\draw[step=0.1,line width=0.1pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw[step=0.5,line width=0.4pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw (-\breite,-\hoehe) grid (\breite, \hoehe); +\fill (0,0) circle[radius=0.05]; +}{} + +\node at (4.4,-2.4) {$X$}; +\node at (3.5,0.6) {$Y$}; +\node at (0.3,3.8) {$Z$}; + +\end{tikzpicture} + +\end{document} + diff --git a/buch/chapters/110-elliptisch/lemniskate.tex b/buch/chapters/110-elliptisch/lemniskate.tex index f750a82..d76a963 100644 --- a/buch/chapters/110-elliptisch/lemniskate.tex +++ b/buch/chapters/110-elliptisch/lemniskate.tex @@ -12,6 +12,9 @@ veröffentlich hat. In diesem Abschnitt soll die Verbindung zu den Jacobischen elliptischen Funktionen hergestellt werden. +% +% Lemniskate +% \subsection{Lemniskate \label{buch:gemotrie:subsection:lemniskate}} \begin{figure} @@ -71,6 +74,165 @@ Sie gilt für Winkel $\varphi\in[-\frac{\pi}4,\frac{\pi}4]$ für das rechte Blatt und $\varphi\in[\frac{3\pi}4,\frac{5\pi}4]$ für das linke Blatt der Lemniskate. +% +% Schnitt eines Kegels mit einem Paraboloid +% +\subsubsection{Schnitt eines Kegels mit einem Paraboloid} +\begin{figure} +\center +\includegraphics{chapters/110-elliptisch/images/kegelpara.pdf} +\caption{Leminiskate (rot) als Projektion (gelb) der Schnittkurve (blau) +eines geraden +Kreiskegels (grün) mit einem Rotationsparaboloid (hellblau). +\label{buch:elliptisch:lemniskate:kegelpara}} +\end{figure}% +Schreibt man in der Gleichung~\eqref{buch:elliptisch:eqn:lemniskate} +für die Klammer auf der rechten Seite $Z^2 = X^2 - Y^2$, dann wird die +Lemniskate die Projektion in die $X$-$Y$-Ebene der Schnittmenge der Flächen, +die durch die Gleichungen +\begin{equation} +X^2-Y^2 = Z^2 +\qquad\text{und}\qquad +(X^2+Y^2) = R^2 = \sqrt{2}aZ +\label{buch:elliptisch:eqn:kegelparabolschnitt} +\end{equation} +beschrieben wird. +Die linke Gleichung in +\eqref{buch:elliptisch:eqn:kegelparabolschnitt} +beschreibt einen geraden Kreiskegel, die rechte ist ein Rotationsparaboloid. +Die Schnittkurve ist in Abbildung~\ref{buch:elliptisch:lemniskate:kegelpara} +dargestellt. + +\subsubsection{Schnitt eines Torus mit einer Ebene} +\begin{figure} +\centering +\includegraphics{chapters/110-elliptisch/images/torusschnitt.pdf} +\caption{Die Schnittkurve (rot) eines Torus (grün) +mit einer zur Torusachse parallelen Ebene (blau), +die den inneren Äquator des Torus berührt, ist eine Lemniskate. +\label{buch:elliptisch:lemniskate:torusschnitt}} +\end{figure} +Schneidet man einen Torus mit einer Ebene, die zur Achse des Torus +parallel ist und den inneren Äquator des Torus berührt, entsteht +ebenfalls eine Lemniskate. +Die Situation ist in Abbildung~\ref{buch:elliptisch:lemniskate:torusschnitt} +dargestellt. + +Der Torus kann mit den Radien $2$ und $1$ mit der $y$-Achse als Torusachse +kann mit der Parametrisierung +\[ +(s,t) +\mapsto +\begin{pmatrix} +(2+\cos s) \cos t \\ +\sin s \\ +(2+\cos s) \sin t +\end{pmatrix} +\] +beschrieben werden. +Die Gleichung $z=1$ beschreibt eine +achsparallele Ebene, die den inneren Äquator berührt. +Die Schnittkurve erfüllt daher +\[ +(2+\cos s)\sin t = 1, +\] +was wir auch als $2 +\cos s = 1/\sin t$ schreiben können. +Wir müssen nachprüfen dass die Koordinaten +$X=(2+\cos s)\cos t$ und $Y=\sin s$ die Gleichung einer Lemniskate +erfüllen. + +Zunächst können wir in der $X$-Koordinate den Klammerausdruck durch +\begin{equation} +X += +(2+\cos s) \cos t += +\frac{1}{\sin t}\cos t += +\frac{\cos t}{\sin t} +\qquad\Rightarrow\qquad +X^2 += +\frac{\cos^2t}{\sin^2 t} += +\frac{1-\sin^2t}{\sin^2 t} +\label{buch:elliptisch:lemniskate:Xsin} +\end{equation} +ersetzen. +Auch die $Y$-Koordinaten können wir durch $t$ ausdrücken, +nämlich +\begin{equation} +Y^2=\sin^2 s = 1-\cos^2 s += +1- +\biggl( +\frac{1}{\sin t} +-2 +\biggr)^2 += +\frac{-3\sin^2 t+4\sin t-1}{\sin^2 t}. +\label{buch:elliptisch:lemniskate:Ysin} +\end{equation} +Die Gleichungen +\eqref{buch:elliptisch:lemniskate:Xsin} +und +\eqref{buch:elliptisch:lemniskate:Ysin} +zeigen, dass man $X^2$ und $Y^2$ sogar einzig durch $\sin t$ +parametrisieren kann. +Um die Ausdrücke etwas zu vereinfachen, schreiben wir $S=\sin t$ +und erhalten zusammenfassend +\begin{equation} +\begin{aligned} +X^2 +&= +\frac{1-S^2}{S^2} +\\ +Y^2 +&= +\frac{-3S^2+4S-1}{S^2}. +\end{aligned} +\end{equation} +Daraus kann man jetzt die Summen und Differenzen der Quadrate +berechnen, sie sind +\begin{equation} +\begin{aligned} +X^2+Y^2 +&= +\frac{-4S^2+4S}{S^2} += +\frac{4S(1-S)}{S^2} += +\frac{4(1-S)}{S} += +4\frac{1-S}{S} +\\ +X^2-Y^2 +&= +\frac{2-4S+2S^2}{S^2} += +\frac{2(1-S)^2}{S^2} += +2\biggl(\frac{1-S}{S}\biggr)^2. +\end{aligned} +\end{equation} +Durch Berechnung des Quadrates von $X^2+Y^2$ kann man jetzt +die Gleichung +\[ +(X^2+Y^2) += +16 +\biggl(\frac{1-S}{S}\biggr)^2 += +8 \cdot 2 +\biggl(\frac{1-S}{S}\biggr)^2 += +2\cdot 2^2\cdot (X-Y)^2. +\] +Dies ist eine Lemniskaten-Gleichung für $a=2$. + +% +% Bogenlänge der Lemniskate +% \subsection{Bogenlänge} Die Funktionen \begin{equation} -- cgit v1.2.1 From f62b44e41eb5d9afe46e56c335b96cb48ae3a492 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 14 Jun 2022 17:02:23 +0200 Subject: finalize lemniscate as sections --- buch/chapters/110-elliptisch/images/Makefile | 2 +- .../chapters/110-elliptisch/images/jacobiplots.pdf | Bin 56975 -> 56975 bytes buch/chapters/110-elliptisch/images/kegelpara.pdf | Bin 139626 -> 139626 bytes .../110-elliptisch/images/torusschnitt.pdf | Bin 137159 -> 137159 bytes buch/chapters/110-elliptisch/lemniskate.tex | 4 ++-- 5 files changed, 3 insertions(+), 3 deletions(-) diff --git a/buch/chapters/110-elliptisch/images/Makefile b/buch/chapters/110-elliptisch/images/Makefile index 2a23d88..30642fe 100644 --- a/buch/chapters/110-elliptisch/images/Makefile +++ b/buch/chapters/110-elliptisch/images/Makefile @@ -5,7 +5,7 @@ # all: lemniskate.pdf ellipsenumfang.pdf unvollstaendig.pdf rechteck.pdf \ ellipse.pdf pendel.pdf jacobiplots.pdf jacobidef.pdf jacobi12.pdf \ - sncnlimit.pdf slcl.pdf + sncnlimit.pdf slcl.pdf torusschnitt.pdf kegelpara.pdf lemniskate.pdf: lemniskate.tex pdflatex lemniskate.tex diff --git a/buch/chapters/110-elliptisch/images/jacobiplots.pdf b/buch/chapters/110-elliptisch/images/jacobiplots.pdf index f0e6e78..4c74a5c 100644 Binary files a/buch/chapters/110-elliptisch/images/jacobiplots.pdf and b/buch/chapters/110-elliptisch/images/jacobiplots.pdf differ diff --git a/buch/chapters/110-elliptisch/images/kegelpara.pdf b/buch/chapters/110-elliptisch/images/kegelpara.pdf index 4b03119..6683709 100644 Binary files a/buch/chapters/110-elliptisch/images/kegelpara.pdf and b/buch/chapters/110-elliptisch/images/kegelpara.pdf differ diff --git a/buch/chapters/110-elliptisch/images/torusschnitt.pdf b/buch/chapters/110-elliptisch/images/torusschnitt.pdf index 430447c..2f8c204 100644 Binary files a/buch/chapters/110-elliptisch/images/torusschnitt.pdf and b/buch/chapters/110-elliptisch/images/torusschnitt.pdf differ diff --git a/buch/chapters/110-elliptisch/lemniskate.tex b/buch/chapters/110-elliptisch/lemniskate.tex index d76a963..f81f0e2 100644 --- a/buch/chapters/110-elliptisch/lemniskate.tex +++ b/buch/chapters/110-elliptisch/lemniskate.tex @@ -215,7 +215,7 @@ X^2-Y^2 2\biggl(\frac{1-S}{S}\biggr)^2. \end{aligned} \end{equation} -Durch Berechnung des Quadrates von $X^2+Y^2$ kann man jetzt +Die Berechnung des Quadrates von $X^2+Y^2$ ergibt die Gleichung \[ (X^2+Y^2) @@ -228,7 +228,7 @@ die Gleichung = 2\cdot 2^2\cdot (X-Y)^2. \] -Dies ist eine Lemniskaten-Gleichung für $a=2$. +Sie ist eine Lemniskaten-Gleichung für $a=2$. % % Bogenlänge der Lemniskate -- cgit v1.2.1 From 864b17ee949de5c14ebc3bbf50a90178b4b804f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Wed, 15 Jun 2022 20:25:27 +0200 Subject: fix some minor issues --- buch/chapters/110-elliptisch/images/Makefile | 7 +- .../chapters/110-elliptisch/images/jacobiplots.pdf | Bin 56975 -> 56975 bytes buch/chapters/110-elliptisch/images/kegelpara.pdf | Bin 139626 -> 202828 bytes buch/chapters/110-elliptisch/images/kegelpara.pov | 122 +++++++++++++++++++-- buch/chapters/110-elliptisch/images/kegelpara.tex | 6 +- .../110-elliptisch/images/torusschnitt.pdf | Bin 137159 -> 301677 bytes .../110-elliptisch/images/torusschnitt.pov | 88 ++++++++++++++- buch/chapters/110-elliptisch/lemniskate.tex | 12 +- 8 files changed, 211 insertions(+), 24 deletions(-) diff --git a/buch/chapters/110-elliptisch/images/Makefile b/buch/chapters/110-elliptisch/images/Makefile index 30642fe..c8f98cb 100644 --- a/buch/chapters/110-elliptisch/images/Makefile +++ b/buch/chapters/110-elliptisch/images/Makefile @@ -79,11 +79,14 @@ slcldata.tex: slcl slcl.pdf: slcl.tex slcldata.tex pdflatex slcl.tex +KEGELSIZE = -W256 -H256 +KEGELSIZE = -W128 -H128 +KEGELSIZE = -W1080 -H1080 kegelpara.png: kegelpara.pov - povray +A0.1 -W1080 -H1080 -Okegelpara.png kegelpara.pov + povray +A0.1 $(KEGELSIZE) -Okegelpara.png kegelpara.pov kegelpara.jpg: kegelpara.png Makefile - convert -extract 1080x1000+0+40 kegelpara.png \ + convert -extract 1080x1040+0+0 kegelpara.png \ -density 300 -units PixelsPerInch kegelpara.jpg kegelpara.pdf: kegelpara.tex kegelpara.jpg diff --git a/buch/chapters/110-elliptisch/images/jacobiplots.pdf b/buch/chapters/110-elliptisch/images/jacobiplots.pdf index 4c74a5c..c11affc 100644 Binary files a/buch/chapters/110-elliptisch/images/jacobiplots.pdf and b/buch/chapters/110-elliptisch/images/jacobiplots.pdf differ diff --git a/buch/chapters/110-elliptisch/images/kegelpara.pdf b/buch/chapters/110-elliptisch/images/kegelpara.pdf index 6683709..2f76593 100644 Binary files a/buch/chapters/110-elliptisch/images/kegelpara.pdf and b/buch/chapters/110-elliptisch/images/kegelpara.pdf differ diff --git a/buch/chapters/110-elliptisch/images/kegelpara.pov b/buch/chapters/110-elliptisch/images/kegelpara.pov index 5d85eed..13b66cc 100644 --- a/buch/chapters/110-elliptisch/images/kegelpara.pov +++ b/buch/chapters/110-elliptisch/images/kegelpara.pov @@ -67,11 +67,11 @@ union { } #end -arrow(<-2,0,0>,<2,0,0>,0.02,White) -arrow(<0,-2,0>,<0,2,0>,0.02,White) -arrow(<0,0,-2>,<0,0,2>,0.02,White) +arrow(<-2.6,0,0>,<2.5,0,0>,0.02,White) +arrow(<0,-2,0>,<0,2.3,0>,0.02,White) +arrow(<0,0,-3.2>,<0,0,3.7>,0.02,White) -#declare epsilon = 0.001; +#declare epsilon = 0.0001; #declare l = 1.5; #macro Kegel(farbe) @@ -94,6 +94,54 @@ union { } #end +#macro Kegelpunkt(xx, phi) + < xx, xx * sin(phi), xx * cos(phi) > +#end + +#macro Kegelgitter(farbe, r) +union { + #declare s = 0; + #declare smax = 2 * pi; + #declare sstep = pi / 6; + #while (s < smax - sstep/2) + cylinder { Kegelpunkt(l, s), Kegelpunkt(-l, s), r } + #declare s = s + sstep; + #end + #declare phimax = 2 * pi; + #declare phisteps = 100; + #declare phistep = phimax / phisteps; + #declare xxstep = 0.5; + #declare xxmax = 2; + #declare xx = xxstep; + #while (xx < xxmax - xxstep/2) + #declare phi = 0; + #while (phi < phimax - phistep/2) + cylinder { + Kegelpunkt(xx, phi), + Kegelpunkt(xx, phi + phistep), + r + } + sphere { Kegelpunkt(xx, phi), r } + cylinder { + Kegelpunkt(-xx, phi), + Kegelpunkt(-xx, phi + phistep), + r + } + sphere { Kegelpunkt(-xx, phi), r } + #declare phi = phi + phistep; + #end + #declare xx = xx + xxstep; + #end + pigment { + color farbe + } + finish { + specular 0.9 + metallic + } +} +#end + #macro F(w, r) #end @@ -139,6 +187,50 @@ mesh { } #end +#macro Paraboloidgitter(farbe, gr) +union { + #declare phi = 0; + #declare phimax = 2 * pi; + #declare phistep = pi / 6; + + #declare rmax = 1.5; + #declare rsteps = 100; + #declare rstep = rmax / rsteps; + + #while (phi < phimax - phistep/2) + #declare r = rstep; + #while (r < rmax - rstep/2) + cylinder { F(phi, r), F(phi, r + rstep), gr } + sphere { F(phi, r), gr } + #declare r = r + rstep; + #end + #declare phi = phi + phistep; + #end + + #declare rstep = 0.2; + #declare r = rstep; + + #declare phisteps = 100; + #declare phistep = phimax / phisteps; + #while (r < rmax) + #declare phi = 0; + #while (phi < phimax - phistep/2) + cylinder { F(phi, r), F(phi + phistep, r), gr } + sphere { F(phi, r), gr } + #declare phi = phi + phistep; + #end + #declare r = r + rstep; + #end + pigment { + color farbe + } + finish { + specular 0.9 + metallic + } +} +#end + #declare a = sqrt(2); #macro G(phi,sg) < a*sg*sqrt(cos(2*phi))*cos(phi), a*cos(2*phi), a*sqrt(cos(2*phi))*sin(phi)> @@ -215,11 +307,23 @@ union { } #end -#declare kegelfarbe = rgbt<0.2,0.6,0.2,0.2>; -#declare paraboloidfarbe = rgbt<0.2,0.6,1.0,0.2>; +#declare kegelfarbe = rgbf<0.2,0.6,0.2,0.2>; +#declare kegelgitterfarbe = rgb<0.2,0.8,0.2>; +#declare paraboloidfarbe = rgbf<0.2,0.6,1.0,0.2>; +#declare paraboloidgitterfarbe = rgb<0.4,1,1>; + +//intersection { +// union { + Paraboloid(paraboloidfarbe) + Paraboloidgitter(paraboloidgitterfarbe, 0.004) + + Kegel(kegelfarbe) + Kegelgitter(kegelgitterfarbe, 0.004) +// } +// plane { <0, 0, -1>, 0.6 } +//} + -Paraboloid(paraboloidfarbe) -Kegel(kegelfarbe) -Lemniskate3D(0.02, Blue) +Lemniskate3D(0.02, rgb<0.8,0.0,0.8>) Lemniskate(0.02, Red) Projektion(0.01, Yellow) diff --git a/buch/chapters/110-elliptisch/images/kegelpara.tex b/buch/chapters/110-elliptisch/images/kegelpara.tex index 5a724ee..8fcefbf 100644 --- a/buch/chapters/110-elliptisch/images/kegelpara.tex +++ b/buch/chapters/110-elliptisch/images/kegelpara.tex @@ -31,9 +31,9 @@ \fill (0,0) circle[radius=0.05]; }{} -\node at (3.3,-1.0) {$X$}; -\node at (0.2,3.4) {$Z$}; -\node at (-2.5,-1.4) {$-Y$}; +\node at (4.1,-1.4) {$X$}; +\node at (0.2,3.8) {$Z$}; +\node at (4.0,1.8) {$Y$}; \end{tikzpicture} diff --git a/buch/chapters/110-elliptisch/images/torusschnitt.pdf b/buch/chapters/110-elliptisch/images/torusschnitt.pdf index 2f8c204..11bd353 100644 Binary files a/buch/chapters/110-elliptisch/images/torusschnitt.pdf and b/buch/chapters/110-elliptisch/images/torusschnitt.pdf differ diff --git a/buch/chapters/110-elliptisch/images/torusschnitt.pov b/buch/chapters/110-elliptisch/images/torusschnitt.pov index 94190be..43d50c6 100644 --- a/buch/chapters/110-elliptisch/images/torusschnitt.pov +++ b/buch/chapters/110-elliptisch/images/torusschnitt.pov @@ -123,9 +123,34 @@ union { } #end -#macro Ebene(farbe) -box { - <-1.8, 0, -1.4>, <1.8, 0.001, 1.4> +#macro Ebene(l, b, farbe) +mesh { + triangle { <-l, 0, -b>, < l, 0, -b>, < l, 0, b> } + triangle { <-l, 0, -b>, < l, 0, b>, <-l, 0, b> } + pigment { + color farbe + } + finish { + specular 0.9 + metallic + } +} +#end + +#macro Ebenengitter(l, b, s, r, farbe) +union { + #declare lmax = floor(l / s); + #declare ll = -lmax; + #while (ll <= lmax) + cylinder { , , r } + #declare ll = ll + 1; + #end + #declare bmax = floor(b / s); + #declare bb = -bmax; + #while (bb <= bmax) + cylinder { <-l, 0, bb * s>, , r } + #declare bb = bb + 1; + #end pigment { color farbe } @@ -141,6 +166,59 @@ box { b * < (2 + cos(theta)) * cos(phi), (2 + cos(theta)) * sin(phi) + 1, sin(theta) > #end +#macro breitenkreis(theta, r) + #declare phi = 0; + #declare phimax = 2 * pi; + #declare phisteps = 200; + #declare phistep = phimax / phisteps; + #while (phi < phimax - phistep/2) + cylinder { T(phi, theta), T(phi + phistep, theta), r } + sphere { T(phi, theta), r } + #declare phi = phi + phistep; + #end +#end + +#macro laengenkreis(phi, r) + #declare theta = 0; + #declare thetamax = 2 * pi; + #declare thetasteps = 200; + #declare thetastep = thetamax / thetasteps; + #while (theta < thetamax - thetastep/2) + cylinder { T(phi, theta), T(phi, theta + thetastep), r } + sphere { T(phi, theta), r } + #declare theta = theta + thetastep; + #end +#end + +#macro Torusgitter(farbe, r) +union { + #declare phi = 0; + #declare phimax = 2 * pi; + #declare phistep = pi / 6; + #while (phi < phimax - phistep/2) + laengenkreis(phi, r) + #declare phi = phi + phistep; + #end + #declare thetamax = pi; + #declare thetastep = pi / 6; + #declare theta = thetastep; + #while (theta < thetamax - thetastep/2) + breitenkreis(theta, r) + breitenkreis(thetamax + theta, r) + #declare theta = theta + thetastep; + #end + breitenkreis(0, 1.5 * r) + breitenkreis(pi, 1.5 * r) + pigment { + color farbe + } + finish { + specular 0.9 + metallic + } +} +#end + #macro Torus(farbe) mesh { #declare phi = 0; @@ -181,5 +259,7 @@ mesh { #declare ebenenfarbe = rgbt<0.2,0.6,1.0,0.2>; Lemniskate(0.02, Red) -Ebene(ebenenfarbe) +Ebene(1.8, 1.4, ebenenfarbe) +Ebenengitter(1.8, 1.4, 0.5, 0.005, rgb<0.4,1,1>) Torus(torusfarbe) +Torusgitter(Yellow, 0.005) diff --git a/buch/chapters/110-elliptisch/lemniskate.tex b/buch/chapters/110-elliptisch/lemniskate.tex index f81f0e2..fceaadf 100644 --- a/buch/chapters/110-elliptisch/lemniskate.tex +++ b/buch/chapters/110-elliptisch/lemniskate.tex @@ -81,7 +81,7 @@ Blatt der Lemniskate. \begin{figure} \center \includegraphics{chapters/110-elliptisch/images/kegelpara.pdf} -\caption{Leminiskate (rot) als Projektion (gelb) der Schnittkurve (blau) +\caption{Leminiskate (rot) als Projektion (gelb) der Schnittkurve (pink) eines geraden Kreiskegels (grün) mit einem Rotationsparaboloid (hellblau). \label{buch:elliptisch:lemniskate:kegelpara}} @@ -126,7 +126,7 @@ kann mit der Parametrisierung \begin{pmatrix} (2+\cos s) \cos t \\ \sin s \\ -(2+\cos s) \sin t +(2+\cos s) \sin t + 1 \end{pmatrix} \] beschrieben werden. @@ -134,9 +134,9 @@ Die Gleichung $z=1$ beschreibt eine achsparallele Ebene, die den inneren Äquator berührt. Die Schnittkurve erfüllt daher \[ -(2+\cos s)\sin t = 1, +(2+\cos s)\sin t + 1 = 0, \] -was wir auch als $2 +\cos s = 1/\sin t$ schreiben können. +was wir auch als $2 +\cos s = -1/\sin t$ schreiben können. Wir müssen nachprüfen dass die Koordinaten $X=(2+\cos s)\cos t$ und $Y=\sin s$ die Gleichung einer Lemniskate erfüllen. @@ -147,9 +147,9 @@ X = (2+\cos s) \cos t = -\frac{1}{\sin t}\cos t +-\frac{1}{\sin t}\cos t = -\frac{\cos t}{\sin t} +-\frac{\cos t}{\sin t} \qquad\Rightarrow\qquad X^2 = -- cgit v1.2.1 From b9af31ecb07acd4d34a13aa99d6170c9ca96af87 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Thu, 16 Jun 2022 17:00:34 +0200 Subject: some improvements --- buch/chapters/110-elliptisch/images/Makefile | 2 +- .../110-elliptisch/images/torusschnitt.pdf | Bin 301677 -> 312677 bytes .../110-elliptisch/images/torusschnitt.pov | 55 ++++++++++++++++++--- .../110-elliptisch/images/torusschnitt.tex | 2 +- 4 files changed, 51 insertions(+), 8 deletions(-) diff --git a/buch/chapters/110-elliptisch/images/Makefile b/buch/chapters/110-elliptisch/images/Makefile index c8f98cb..7bbc8af 100644 --- a/buch/chapters/110-elliptisch/images/Makefile +++ b/buch/chapters/110-elliptisch/images/Makefile @@ -96,7 +96,7 @@ torusschnitt.png: torusschnitt.pov povray +A0.1 -W1920 -H1080 -Otorusschnitt.png torusschnitt.pov torusschnitt.jpg: torusschnitt.png Makefile - convert -extract 1560x1080+180+0 torusschnitt.png \ + convert -extract 1640x1080+140+0 torusschnitt.png \ -density 300 -units PixelsPerInch torusschnitt.jpg torusschnitt.pdf: torusschnitt.tex torusschnitt.jpg diff --git a/buch/chapters/110-elliptisch/images/torusschnitt.pdf b/buch/chapters/110-elliptisch/images/torusschnitt.pdf index 11bd353..f5de617 100644 Binary files a/buch/chapters/110-elliptisch/images/torusschnitt.pdf and b/buch/chapters/110-elliptisch/images/torusschnitt.pdf differ diff --git a/buch/chapters/110-elliptisch/images/torusschnitt.pov b/buch/chapters/110-elliptisch/images/torusschnitt.pov index 43d50c6..e5602df 100644 --- a/buch/chapters/110-elliptisch/images/torusschnitt.pov +++ b/buch/chapters/110-elliptisch/images/torusschnitt.pov @@ -67,14 +67,51 @@ union { } #end -arrow(<-2,0,0>,<2,0,0>,0.02,White) -arrow(<0,-1.1,0>,<0,2.2,0>,0.02,White) -arrow(<0,0,-1.6>,<0,0,2.4>,0.02,White) + +#macro Ticks(tl, tr) +union { + #declare s = 1; + #while (s <= 3.1) + cylinder { <-0.5*s-tl, 0, 0>, <-0.5*s+tl, 0, 0>, tr } + cylinder { < 0.5*s-tl, 0, 0>, < 0.5*s+tl, 0, 0>, tr } + #declare s = s + 1; + #end + + #declare s = 1; + #while (s <= 4.1) + cylinder { <0, 0.5*s-tl, 0>, <0, 0.5*s+tl, 0>, tr } + #declare s = s + 1; + #end + #declare s = 1; + #while (s <= 2.1) + cylinder { <0,-0.5*s-tl, 0>, <0,-0.5*s+tl, 0>, tr } + #declare s = s + 1; + #end + + #declare s = 1; + #while (s <= 4) + cylinder { <0, 0, 0.5*s-tl>, <0, 0, 0.5*s+tl>, tr } + #declare s = s + 1; + #end + #declare s = 1; + #while (s <= 3) + cylinder { <0, 0, -0.5*s-tl>, <0, 0, -0.5*s+tl>, tr } + #declare s = s + 1; + #end + + pigment { + color White + } + finish { + specular 0.9 + metallic + } +} +#end #declare epsilon = 0.001; #declare l = 1.5; - #declare a = sqrt(2); #macro G2(phi,sg) a * sqrt(cos(2*phi)) * < sg * cos(phi), 0, sin(phi)> @@ -258,8 +295,14 @@ mesh { #declare torusfarbe = rgbt<0.2,0.6,0.2,0.2>; #declare ebenenfarbe = rgbt<0.2,0.6,1.0,0.2>; +arrow(<-2,0,0>,<2,0,0>,0.02,White) +arrow(<0,-1.1,0>,<0,2.2,0>,0.02,White) +arrow(<0,0,-1.7>,<0,0,2.4>,0.02,White) +Ticks(0.007,0.036) + Lemniskate(0.02, Red) -Ebene(1.8, 1.4, ebenenfarbe) -Ebenengitter(1.8, 1.4, 0.5, 0.005, rgb<0.4,1,1>) +Ebene(1.8, 1.6, ebenenfarbe) +Ebenengitter(1.8, 1.6, 0.5, 0.005, rgb<0.4,1,1>) Torus(torusfarbe) Torusgitter(Yellow, 0.005) + diff --git a/buch/chapters/110-elliptisch/images/torusschnitt.tex b/buch/chapters/110-elliptisch/images/torusschnitt.tex index 3053ac5..63351ad 100644 --- a/buch/chapters/110-elliptisch/images/torusschnitt.tex +++ b/buch/chapters/110-elliptisch/images/torusschnitt.tex @@ -21,7 +21,7 @@ \begin{tikzpicture}[>=latex,thick] % Povray Bild -\node at (0,0) {\includegraphics[width=11.4cm]{torusschnitt.jpg}}; +\node at (0,0) {\includegraphics[width=11.98cm]{torusschnitt.jpg}}; % Gitter \ifthenelse{\boolean{showgrid}}{ -- cgit v1.2.1 From 88031a6a5bad428cb3bf03dea6f0f95d79484723 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Thu, 16 Jun 2022 17:02:24 +0200 Subject: new plots --- buch/chapters/110-elliptisch/images/Makefile | 13 ++- .../chapters/110-elliptisch/images/jacobiplots.pdf | Bin 56975 -> 59737 bytes buch/chapters/110-elliptisch/images/kegelpara.pdf | Bin 202828 -> 203620 bytes buch/chapters/110-elliptisch/images/lemnispara.cpp | 126 +++++++++++++++++++++ buch/chapters/110-elliptisch/images/lemnispara.pdf | Bin 0 -> 28447 bytes buch/chapters/110-elliptisch/images/lemnispara.tex | 90 +++++++++++++++ buch/chapters/110-elliptisch/images/slcl.pdf | Bin 28233 -> 31823 bytes .../110-elliptisch/images/torusschnitt.pdf | Bin 301677 -> 302496 bytes buch/chapters/110-elliptisch/lemniskate.tex | 92 +++++++++++---- 9 files changed, 295 insertions(+), 26 deletions(-) create mode 100644 buch/chapters/110-elliptisch/images/lemnispara.cpp create mode 100644 buch/chapters/110-elliptisch/images/lemnispara.pdf create mode 100644 buch/chapters/110-elliptisch/images/lemnispara.tex diff --git a/buch/chapters/110-elliptisch/images/Makefile b/buch/chapters/110-elliptisch/images/Makefile index c8f98cb..3094877 100644 --- a/buch/chapters/110-elliptisch/images/Makefile +++ b/buch/chapters/110-elliptisch/images/Makefile @@ -5,7 +5,7 @@ # all: lemniskate.pdf ellipsenumfang.pdf unvollstaendig.pdf rechteck.pdf \ ellipse.pdf pendel.pdf jacobiplots.pdf jacobidef.pdf jacobi12.pdf \ - sncnlimit.pdf slcl.pdf torusschnitt.pdf kegelpara.pdf + sncnlimit.pdf slcl.pdf torusschnitt.pdf kegelpara.pdf lemnispara.pdf lemniskate.pdf: lemniskate.tex pdflatex lemniskate.tex @@ -102,3 +102,14 @@ torusschnitt.jpg: torusschnitt.png Makefile torusschnitt.pdf: torusschnitt.tex torusschnitt.jpg pdflatex torusschnitt.tex +lemnispara: lemnispara.cpp + g++ -O2 -Wall -g -o lemnispara `pkg-config --cflags gsl` \ + lemnispara.cpp `pkg-config --libs gsl` + +lemnisparadata.tex: lemnispara + ./lemnispara + +lemnispara.pdf: lemnispara.tex lemnisparadata.tex + pdflatex lemnispara.tex + +ltest: lemnispara.pdf diff --git a/buch/chapters/110-elliptisch/images/jacobiplots.pdf b/buch/chapters/110-elliptisch/images/jacobiplots.pdf index c11affc..fdd3d1f 100644 Binary files a/buch/chapters/110-elliptisch/images/jacobiplots.pdf and b/buch/chapters/110-elliptisch/images/jacobiplots.pdf differ diff --git a/buch/chapters/110-elliptisch/images/kegelpara.pdf b/buch/chapters/110-elliptisch/images/kegelpara.pdf index 2f76593..2dbe39d 100644 Binary files a/buch/chapters/110-elliptisch/images/kegelpara.pdf and b/buch/chapters/110-elliptisch/images/kegelpara.pdf differ diff --git a/buch/chapters/110-elliptisch/images/lemnispara.cpp b/buch/chapters/110-elliptisch/images/lemnispara.cpp new file mode 100644 index 0000000..6f4d55d --- /dev/null +++ b/buch/chapters/110-elliptisch/images/lemnispara.cpp @@ -0,0 +1,126 @@ +/* + * lemnispara.cpp -- Display parametrisation of the lemniskate + * + * (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule + */ +#include +#include +#include +#include +#include +#include +#include +#include +#include + +const static double s = sqrt(2); +const static double k = 1 / s; +const static double m = k * k; + +typedef std::pair point_t; + +point_t operator*(const point_t& p, double s) { + return point_t(s * p.first, s * p.second); +} + +static double norm(const point_t& p) { + return hypot(p.first, p.second); +} + +static point_t normalize(const point_t& p) { + return p * (1/norm(p)); +} + +static point_t normal(const point_t& p) { + return std::make_pair(p.second, -p.first); +} + +class lemniscate : public point_t { + double sn, cn, dn; +public: + lemniscate(double t) { + gsl_sf_elljac_e(t, m, &sn, &cn, &dn); + first = s * cn * dn; + second = cn * sn; + } + point_t tangent() const { + return std::make_pair(-s * sn * (1.5 - sn * sn), + dn * (1 - 2 * sn * sn)); + } + point_t unittangent() const { + return normalize(tangent()); + } + point_t normal() const { + return ::normal(tangent()); + } + point_t unitnormal() const { + return ::normal(unittangent()); + } +}; + +std::ostream& operator<<(std::ostream& out, const point_t& p) { + char b[1024]; + snprintf(b, sizeof(b), "({%.4f*\\dx},{%.4f*\\dy})", p.first, p.second); + out << b; + return out; +} + +int main(int argc, char *argv[]) { + std::ofstream out("lemnisparadata.tex"); + + // the curve + double tstep = 0.01; + double tmax = 4.05; + out << "\\def\\lemnispath{ "; + out << lemniscate(0); + for (double t = tstep; t < tmax; t += tstep) { + out << std::endl << "\t" << "-- " << lemniscate(t); + } + out << std::endl; + out << "}" << std::endl; + + out << "\\def\\lemnispathmore{ "; + out << lemniscate(tmax); + double tmax2 = 7.5; + for (double t = tmax + tstep; t < tmax2; t += tstep) { + out << std::endl << "\t" << "-- " << lemniscate(t); + } + out << std::endl; + out << "}" << std::endl; + + // individual points + tstep = 0.2; + int i = 0; + char name[3]; + strcpy(name, "L0"); + for (double t = 0; t <= tmax; t += tstep) { + char c = 'A' + i++; + char buffer[128]; + lemniscate l(t); + name[0] = 'L'; + name[1] = c; + out << "\\coordinate (" << name << ") at "; + out << l << ";" << std::endl; + name[0] = 'T'; + out << "\\coordinate (" << name << ") at "; + out << l.unittangent() << ";" << std::endl; + name[0] = 'N'; + out << "\\coordinate (" << name << ") at "; + out << l.unitnormal() << ";" << std::endl; + name[0] = 'C'; + out << "\\def\\" << name << "{ "; + out << "\\node[color=red] at ($(L" << c << ")+0.06*(N" << c << ")$) "; + out << "[rotate={"; + double w = 180 * atan2(l.unitnormal().second, + l.unitnormal().first) / M_PI; + snprintf(buffer, sizeof(buffer), "%.1f", w); + out << buffer; + out << "-90}]"; + snprintf(buffer, sizeof(buffer), "%.1f", t); + out << " {$\\scriptstyle " << buffer << "$};" << std::endl; + out << "}" << std::endl; + } + + out.close(); + return EXIT_SUCCESS; +} diff --git a/buch/chapters/110-elliptisch/images/lemnispara.pdf b/buch/chapters/110-elliptisch/images/lemnispara.pdf new file mode 100644 index 0000000..b03997e Binary files /dev/null and b/buch/chapters/110-elliptisch/images/lemnispara.pdf differ diff --git a/buch/chapters/110-elliptisch/images/lemnispara.tex b/buch/chapters/110-elliptisch/images/lemnispara.tex new file mode 100644 index 0000000..48557cf --- /dev/null +++ b/buch/chapters/110-elliptisch/images/lemnispara.tex @@ -0,0 +1,90 @@ +% +% lemnispara.tex -- parametrization of the lemniscate +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{amsmath} +\usepackage{times} +\usepackage{txfonts} +\usepackage{pgfplots} +\usepackage{csvsimple} +\usetikzlibrary{arrows,intersections,math,calc} +\begin{document} +\def\skala{1} + +\begin{tikzpicture}[>=latex,thick,scale=\skala] +\def\dx{4} +\def\dy{4} +\input{lemnisparadata.tex} + +% add image content here +\draw[color=red!20,line width=1.4pt] \lemnispathmore; +\draw[color=red,line width=1.4pt] \lemnispath; + +\draw[->] ({-1.6*\dx},0) -- ({1.6*\dx},0) coordinate[label={$X$}]; +\draw[->] (0,{-0.7*\dy}) -- (0,{0.7*\dy}) coordinate[label={right:$Y$}]; +\draw ({1.5*\dx},-0.05) -- ({1.5*\dx},0.05); +\draw ({\dx},-0.05) -- ({\dx},0.05); +\draw ({0.5*\dx},-0.05) -- ({0.5*\dx},0.05); +\draw ({-0.5*\dx},-0.05) -- ({-0.5*\dx},0.05); +\draw ({-\dx},-0.05) -- ({-\dx},0.05); +\draw ({-1.5*\dx},-0.05) -- ({-1.5*\dx},0.05); +\draw (-0.05,{0.5*\dy}) -- (0.05,{0.5*\dy}); +\draw (-0.05,{-0.5*\dy}) -- (0.05,{-0.5*\dy}); + +\node at ({\dx},0) [above] {$1$}; +\node at ({-\dx},0) [above] {$-1$}; +\node at ({-0.5*\dx},0) [above] {$-\frac12$}; +\node at ({0.5*\dx},0) [above] {$\frac12$}; +\node at (0,{0.5*\dy}) [left] {$\frac12$}; +\node at (0,{-0.5*\dy}) [left] {$-\frac12$}; + +\def\s{0.02} + +\draw[color=red] ($(LA)-\s*(NA)$) -- ($(LA)+\s*(NA)$); +\draw[color=red] ($(LB)-\s*(NB)$) -- ($(LB)+\s*(NB)$); +\draw[color=red] ($(LC)-\s*(NC)$) -- ($(LC)+\s*(NC)$); +\draw[color=red] ($(LD)-\s*(ND)$) -- ($(LD)+\s*(ND)$); +\draw[color=red] ($(LE)-\s*(NE)$) -- ($(LE)+\s*(NE)$); +\draw[color=red] ($(LF)-\s*(NF)$) -- ($(LF)+\s*(NF)$); +\draw[color=red] ($(LG)-\s*(NG)$) -- ($(LG)+\s*(NG)$); +\draw[color=red] ($(LH)-\s*(NH)$) -- ($(LH)+\s*(NH)$); +\draw[color=red] ($(LI)-\s*(NI)$) -- ($(LI)+\s*(NI)$); +\draw[color=red] ($(LJ)-\s*(NJ)$) -- ($(LJ)+\s*(NJ)$); +\draw[color=red] ($(LK)-\s*(NK)$) -- ($(LK)+\s*(NK)$); +\draw[color=red] ($(LL)-\s*(NL)$) -- ($(LL)+\s*(NL)$); +\draw[color=red] ($(LM)-\s*(NM)$) -- ($(LM)+\s*(NM)$); +\draw[color=red] ($(LN)-\s*(NN)$) -- ($(LN)+\s*(NN)$); +\draw[color=red] ($(LO)-\s*(NO)$) -- ($(LO)+\s*(NO)$); +\draw[color=red] ($(LP)-\s*(NP)$) -- ($(LP)+\s*(NP)$); +\draw[color=red] ($(LQ)-\s*(NQ)$) -- ($(LQ)+\s*(NQ)$); +\draw[color=red] ($(LR)-\s*(NR)$) -- ($(LR)+\s*(NR)$); +\draw[color=red] ($(LS)-\s*(NS)$) -- ($(LS)+\s*(NS)$); +\draw[color=red] ($(LT)-\s*(NT)$) -- ($(LT)+\s*(NT)$); +\draw[color=red] ($(LU)-\s*(NU)$) -- ($(LU)+\s*(NU)$); + +\CB +\CC +\CD +\CE +\CF +\CG +\CH +\CI +\CJ +\CK +\CL +\CM +\CN +\CO +\CP +\CQ +\CR +\CS +\CT +\CU + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/110-elliptisch/images/slcl.pdf b/buch/chapters/110-elliptisch/images/slcl.pdf index c15051b..71645e3 100644 Binary files a/buch/chapters/110-elliptisch/images/slcl.pdf and b/buch/chapters/110-elliptisch/images/slcl.pdf differ diff --git a/buch/chapters/110-elliptisch/images/torusschnitt.pdf b/buch/chapters/110-elliptisch/images/torusschnitt.pdf index 11bd353..fde5268 100644 Binary files a/buch/chapters/110-elliptisch/images/torusschnitt.pdf and b/buch/chapters/110-elliptisch/images/torusschnitt.pdf differ diff --git a/buch/chapters/110-elliptisch/lemniskate.tex b/buch/chapters/110-elliptisch/lemniskate.tex index fceaadf..fd998b3 100644 --- a/buch/chapters/110-elliptisch/lemniskate.tex +++ b/buch/chapters/110-elliptisch/lemniskate.tex @@ -86,9 +86,11 @@ eines geraden Kreiskegels (grün) mit einem Rotationsparaboloid (hellblau). \label{buch:elliptisch:lemniskate:kegelpara}} \end{figure}% +\index{Kegel}% +\index{Paraboloid}% Schreibt man in der Gleichung~\eqref{buch:elliptisch:eqn:lemniskate} für die Klammer auf der rechten Seite $Z^2 = X^2 - Y^2$, dann wird die -Lemniskate die Projektion in die $X$-$Y$-Ebene der Schnittmenge der Flächen, +Lemniskate die Projektion in die $X$-$Y$-Ebene der Schnittkurve der Flächen, die durch die Gleichungen \begin{equation} X^2-Y^2 = Z^2 @@ -112,14 +114,18 @@ mit einer zur Torusachse parallelen Ebene (blau), die den inneren Äquator des Torus berührt, ist eine Lemniskate. \label{buch:elliptisch:lemniskate:torusschnitt}} \end{figure} +\index{Torus}% Schneidet man einen Torus mit einer Ebene, die zur Achse des Torus parallel ist und den inneren Äquator des Torus berührt, entsteht ebenfalls eine Lemniskate. Die Situation ist in Abbildung~\ref{buch:elliptisch:lemniskate:torusschnitt} dargestellt. -Der Torus kann mit den Radien $2$ und $1$ mit der $y$-Achse als Torusachse -kann mit der Parametrisierung +Der in Abbildung~\ref{buch:elliptisch:lemniskate:torusschnitt} +dargestellte Torus mit den Radien $2$ und $1$ hat als Achse die +um eine Einheit in $Z$-Richtung verschobene $Y$-Achse und die +$X$-$Z$-Ebene als Äquatorebene. +Sie kann mit \[ (s,t) \mapsto @@ -129,9 +135,10 @@ kann mit der Parametrisierung (2+\cos s) \sin t + 1 \end{pmatrix} \] -beschrieben werden. -Die Gleichung $z=1$ beschreibt eine -achsparallele Ebene, die den inneren Äquator berührt. +parametrisiert werden, die $s$- und $t$-Koordinatenlinien sind +in der Abbildung gelb eingezeichnet. +Die Gleichung $Z=0$ beschreibt eine achsparallele Ebene, die den +inneren Äquator berührt. Die Schnittkurve erfüllt daher \[ (2+\cos s)\sin t + 1 = 0, @@ -141,7 +148,8 @@ Wir müssen nachprüfen dass die Koordinaten $X=(2+\cos s)\cos t$ und $Y=\sin s$ die Gleichung einer Lemniskate erfüllen. -Zunächst können wir in der $X$-Koordinate den Klammerausdruck durch +Zunächst können wir in der $X$-Koordinate den Klammerausdruck durch +$\sin t$ ausdrücken und erhalten \begin{equation} X = @@ -155,10 +163,9 @@ X^2 = \frac{\cos^2t}{\sin^2 t} = -\frac{1-\sin^2t}{\sin^2 t} +\frac{1-\sin^2t}{\sin^2 t}. \label{buch:elliptisch:lemniskate:Xsin} \end{equation} -ersetzen. Auch die $Y$-Koordinaten können wir durch $t$ ausdrücken, nämlich \begin{equation} @@ -218,7 +225,7 @@ X^2-Y^2 Die Berechnung des Quadrates von $X^2+Y^2$ ergibt die Gleichung \[ -(X^2+Y^2) +(X^2+Y^2)^2 = 16 \biggl(\frac{1-S}{S}\biggr)^2 @@ -226,7 +233,7 @@ die Gleichung 8 \cdot 2 \biggl(\frac{1-S}{S}\biggr)^2 = -2\cdot 2^2\cdot (X-Y)^2. +2\cdot 2^2\cdot (X^2-Y^2). \] Sie ist eine Lemniskaten-Gleichung für $a=2$. @@ -279,7 +286,7 @@ Kettenregel berechnen kann: &&\Rightarrow& \dot{y}(r)^2 &= -\frac{1-r^2}{2} -r^2 + \frac{r^4}{2(1-r^2)} +\frac{1-r^2}{2} -r^2 + \frac{r^4}{2(1-r^2)}. \end{align*} Die Summe der Quadrate ist \begin{align*} @@ -342,6 +349,13 @@ $\varpi/2$. % Bogenlängenparametrisierung % \subsection{Bogenlängenparametrisierung} +\begin{figure} +\centering +\includegraphics{chapters/110-elliptisch/images/lemnispara.pdf} +\caption{Parametrisierung der Lemniskate mit Jacobischen elliptischen +Funktion wie in \eqref{buch:elliptisch:lemniskate:bogeneqn} +\label{buch:elliptisch:lemniskate:bogenpara}} +\end{figure} Die Lemniskate mit der Gleichung \[ (X^2+Y^2)^2=2(X^2-Y^2) @@ -350,7 +364,7 @@ Die Lemniskate mit der Gleichung kann mit Jacobischen elliptischen Funktionen parametrisiert werden. Dazu schreibt man -\[ +\begin{equation} \left. \begin{aligned} X(t) @@ -364,9 +378,17 @@ Y(t) \end{aligned} \quad\right\} \qquad\text{mit $k=\displaystyle\frac{1}{\sqrt{2}}$} -\] -und berechnet die beiden Seiten der definierenden Gleichung der -Lemniskate. +\label{buch:elliptisch:lemniskate:bogeneqn} +\end{equation} +Abbildung~\ref{buch:elliptisch:lemniskate:bogenpara} zeigt die +Parametrisierung. +Dem Parameterwert $t=0$ entspricht der Punkt +$(\sqrt{2},0)$ der Lemniskate. + +Dass \eqref{buch:elliptisch:lemniskate:bogeneqn} +tatsächlich eine Parametrisierung ist kann nachgewiesen werden dadurch, +dass man die beiden Seiten der definierenden Gleichung der +Lemniskate berechnet. Zunächst ist \begin{align*} X(t)^2 @@ -436,7 +458,7 @@ Dazu berechnen wir die Ableitungen &= -\sqrt{2}\operatorname{sn}(t,k)\bigl( 1-{\textstyle\frac12}\operatorname{sn}(t,k)^2 -+{\textstyle\frac12}-{\textstyle\frac12}\operatorname{sn}(u,t)^2 ++{\textstyle\frac12}-{\textstyle\frac12}\operatorname{sn}(t,k)^2 \bigr) \\ &= @@ -507,6 +529,7 @@ Gleichung \] hat daher eine Bogenlängenparametrisierung mit \begin{equation} +\left. \begin{aligned} x(t) &= @@ -515,8 +538,13 @@ x(t) \\ y(t) &= -\frac{1}{\sqrt{2}}\operatorname{cn}(\sqrt{2}t,k)\operatorname{sn}(\sqrt{2}t,k) +\frac{1}{\sqrt{2}} +\operatorname{cn}(\sqrt{2}t,k)\operatorname{sn}(\sqrt{2}t,k) \end{aligned} +\quad +\right\} +\qquad +\text{mit $\displaystyle k=\frac{1}{\sqrt{2}}$} \label{buch:elliptisch:lemniskate:bogenlaenge} \end{equation} @@ -527,7 +555,7 @@ die Bogenlänge zuordnet. Daher ist es naheliegend, die Umkehrfunktion von $s(r)$ in \eqref{buch:elliptisch:eqn:lemniskatebogenlaenge} den {\em lemniskatischen Sinus} zu nennen mit der Bezeichnung -$r=\operatorname{sl} s$. +$r=r(s)=\operatorname{sl} s$. Der Kosinus ist der Sinus des komplementären Winkels. Auch für die lemniskatische Bogenlänge $s(r)$ lässt sich eine @@ -537,9 +565,9 @@ Da die Bogenlänge zwischen $(0,0)$ und $(1,0)$ in in \eqref{buch:elliptisch:eqn:varpi} bereits bereichnet wurde. ist sie $\varpi/2-s$. Der {\em lemniskatische Kosinus} ist daher -$\operatorname{cl}(s) = \operatorname{sl}(\varpi/2-s)$ +$\operatorname{cl}(s) = \operatorname{sl}(\varpi/2-s)$. Graphen des lemniskatische Sinus und Kosinus sind in -Abbildung~\label{buch:elliptisch:figure:slcl} dargestellt. +Abbildung~\ref{buch:elliptisch:figure:slcl} dargestellt. Da die Parametrisierung~\eqref{buch:elliptisch:lemniskate:bogenlaenge} eine Bogenlängenparametrisierung ist, darf man $t=s$ schreiben. @@ -551,18 +579,32 @@ r(s)^2 x(s)^2 + y(s)^2 = \operatorname{cn}(s\sqrt{2},k)^2 -\qquad\Rightarrow\qquad +\biggl( +\operatorname{dn}(\sqrt{2}t,k)^2 ++ +\frac12 +\operatorname{sn}(\sqrt{2}t,k)^2 +\biggr) += +\operatorname{cn}(s\sqrt{2},k)^2. +\] +Die Wurzel ist +\[ r(s) = -\operatorname{cn}(s\sqrt{2},k) +\operatorname{sl} s += +\operatorname{cn}(s\sqrt{2},{\textstyle\frac{1}{\sqrt{2}}}). \] +Damit ist der lemniskatische Sinus durch eine Jacobische elliptische +Funktion darstellbar. \begin{figure} \centering \includegraphics[width=\textwidth]{chapters/110-elliptisch/images/slcl.pdf} \caption{ Lemniskatischer Sinus und Kosinus sowie Sinus und Kosinus -mit derart skaliertem Argument, dass die Funktionen die gleichen Nullstellen -haben. +mit derart skaliertem Argument, dass die Funktionen die +gleichen Nullstellen haben. \label{buch:elliptisch:figure:slcl}} \end{figure} -- cgit v1.2.1 From abb439719da913ee1bf14ee088748662fef3cd76 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Thu, 16 Jun 2022 19:27:16 +0200 Subject: new stuff --- buch/chapters/020-exponential/chapter.tex | 4 +- buch/chapters/020-exponential/lambertw.tex | 32 +++- buch/chapters/110-elliptisch/images/lemnispara.pdf | Bin 28447 -> 28820 bytes buch/chapters/110-elliptisch/images/lemnispara.tex | 6 +- buch/chapters/110-elliptisch/lemniskate.tex | 199 ++++++++++++++------- 5 files changed, 166 insertions(+), 75 deletions(-) diff --git a/buch/chapters/020-exponential/chapter.tex b/buch/chapters/020-exponential/chapter.tex index 1ab4769..eaa777d 100644 --- a/buch/chapters/020-exponential/chapter.tex +++ b/buch/chapters/020-exponential/chapter.tex @@ -12,8 +12,8 @@ \input{chapters/020-exponential/zins.tex} \input{chapters/020-exponential/log.tex} \input{chapters/020-exponential/lambertw.tex} -\input{chapters/020-exponential/dilog.tex} -\input{chapters/020-exponential/eili.tex} +%\input{chapters/020-exponential/dilog.tex} +%\input{chapters/020-exponential/eili.tex} \section*{Übungsaufgaben} \rhead{Übungsaufgaben} diff --git a/buch/chapters/020-exponential/lambertw.tex b/buch/chapters/020-exponential/lambertw.tex index 2b023cc..9077c6f 100644 --- a/buch/chapters/020-exponential/lambertw.tex +++ b/buch/chapters/020-exponential/lambertw.tex @@ -17,6 +17,11 @@ der Unbekannten und der Exponentialfunktion, also $xe^x$ auftreten. Die Lambert $W$-Funktion ermöglicht, die Lösungen solcher Gleichungen darzustellen. +Als Anwendung der Theorie der Lambert-$W$-Funktion wird in +Kapitel~\ref{chapter:lambertw} +eine Parametrisierung einer Verfolgungskurve mit Hilfe von $W(x)$ +bestimmt. + % % Die Funktion xe^x % @@ -57,8 +62,10 @@ invertierbar. \begin{definition} Die inverse Funktion der Funktion $[-1,\infty)\to[-1/e,\infty):x\mapsto xe^x=y$ heisst die Lambert $W$-Funktion, geschrieben $W(y)$ oder $W_0(y)$. +\index{Lambert-W-Funktion@Lambert-$W$-Funktion!Definition}% Die inverse Funktion der Funktion $(-\infty,-1)\to[-1/e,0)$ wird mit $W_{-1}$ bezeichnet. +\index{Lambert-W-Funktion@Lambert-$W$-Funktion!Graph}% \end{definition} \begin{figure} @@ -78,7 +85,11 @@ erfüllen sie W(x) e^{W(x)} = x. \] +% +% Ableitung der W-Funktion +% \subsubsection{Ableitung der Funktionen $W(x)$ und $W_{-1}(x)$} +\index{Lambert-W-Funktion@Lambert-$W$-Funktion!Ableitung} Die Umkehrfunktion $f^{-1}(y)$ einer Funktion $f(x)$ erfüllt \( f^{-1}(f(x)) = x. @@ -204,7 +215,11 @@ P_{n+1}(t) \] mit $P_1(t)=1$. +% +% Differentialgleichung und Stammfunktion +% \subsubsection{Differentialgleichung und Stammfunktion} +\index{Lambert-W-Funktion@Lambert-$W$-Funktion!Differentialgleichung}% Die Ableitungsformel \eqref{buch:lambert:eqn:ableitung} bedeutet auch, dass die $W$-Funktion eine Lösung der Differentialgleichung \[ @@ -223,6 +238,7 @@ Diese Gleichung kann separiert werden in \] Eine Stammfunktion +\index{Lambert-W-Funktion@Lambert-$W$-Funktion!Stammfunktion}% \[ F(y) = @@ -260,6 +276,8 @@ für die Stammfunktion von $W(y)$. \label{buch:subsection:loesung-von-exponentialgleichungen}} Die Lambert $W$-Funktion kann zur Lösung von Exponentialgleichungen verwendet werden. +\index{Lambert-W-Funktion@Lambert-$W$-Funktion!Exponentialgleichungen}% +\index{Exponentialgleichungen}% \begin{aufgabe} Gesucht ist eine Lösung der Gleichung @@ -319,7 +337,10 @@ W(-cbe^{ac}) Die Gleichung hat eine Lösung wenn $-cbe^{ac} > -1/e$ ist. \end{proof} -\subsection{Numerische Berechnung +% +% Numerische Berechnung +% +\subsection{Numerische Berechnung der Lambert-$W$-Funktion \label{buch:subsection:lambertberechnung}} Die $W$-Funktionen sind nur dann nützlich, wenn man sie effizient berechnen kann. @@ -327,6 +348,9 @@ Leider ist sie nicht Teil der C- oder C++-Standardbibliothek, man muss sich also mit einer spezialisierten Bibliothek oder einer eigenen Implementation behelfen. +% +% Berechnung mit dem Newton-Algorithmus +% \subsubsection{Berechnung mit dem Newton-Algorithmus} Für $x>-1$ ist die Funktion $W(x)$ ist die Umkehrfunktion der streng monoton wachsenden und konvexen Funktion $f(x)=xe^x$. @@ -334,6 +358,7 @@ In dieser Situation konvergiert der Newton-Algorithmus zur Bestimmung der Nullstelle $x=W_0(y)$ von $f(x)-y$ für alle Werte von $y>-1/e$. Für $W_{-1}(y)$ ist die Situation etwas komplizierter, da für $x<-1$ die Funktion $f(x)$ nicht konvex ist. +\index{Lambert-W-Funktion@Lambert-$W$-Funktion!Newton-Algorithmus} Ausgehend vom Startwert $x_0$ ist die Iterationsfolge definiert durch @@ -362,11 +387,6 @@ bestimmt werden. Die Lambert $W$-Funktionen $W_0(x)$ und $W_{-1}(x)$ sind auch in der GNU scientific library \cite{buch:library:gsl} implementiert. -% -% Verfolgungskurven -% -\subsection{Verfolgungskurven -\label{buch:subsection:verfolgungskurven}} diff --git a/buch/chapters/110-elliptisch/images/lemnispara.pdf b/buch/chapters/110-elliptisch/images/lemnispara.pdf index b03997e..633df34 100644 Binary files a/buch/chapters/110-elliptisch/images/lemnispara.pdf and b/buch/chapters/110-elliptisch/images/lemnispara.pdf differ diff --git a/buch/chapters/110-elliptisch/images/lemnispara.tex b/buch/chapters/110-elliptisch/images/lemnispara.tex index 48557cf..c6e32d7 100644 --- a/buch/chapters/110-elliptisch/images/lemnispara.tex +++ b/buch/chapters/110-elliptisch/images/lemnispara.tex @@ -22,8 +22,9 @@ \draw[color=red!20,line width=1.4pt] \lemnispathmore; \draw[color=red,line width=1.4pt] \lemnispath; -\draw[->] ({-1.6*\dx},0) -- ({1.6*\dx},0) coordinate[label={$X$}]; +\draw[->] ({-1.6*\dx},0) -- ({1.8*\dx},0) coordinate[label={$X$}]; \draw[->] (0,{-0.7*\dy}) -- (0,{0.7*\dy}) coordinate[label={right:$Y$}]; + \draw ({1.5*\dx},-0.05) -- ({1.5*\dx},0.05); \draw ({\dx},-0.05) -- ({\dx},0.05); \draw ({0.5*\dx},-0.05) -- ({0.5*\dx},0.05); @@ -85,6 +86,9 @@ \CT \CU +\fill[color=blue] (LA) circle[radius=0.07]; +\node[color=blue] at (LA) [above right] {$S$}; + \end{tikzpicture} \end{document} diff --git a/buch/chapters/110-elliptisch/lemniskate.tex b/buch/chapters/110-elliptisch/lemniskate.tex index fd998b3..a284f75 100644 --- a/buch/chapters/110-elliptisch/lemniskate.tex +++ b/buch/chapters/110-elliptisch/lemniskate.tex @@ -32,6 +32,13 @@ mit der Gleichung \end{equation} Sie ist in Abbildung~\ref{buch:elliptisch:fig:lemniskate} dargestellt. +Der Fall $a=1/\sqrt{2}$ ist eine Kurve mit der Gleichung +\[ +(x^2+y^2)^2 = x^2-y^2, +\] +wir nennen sie die {\em Standard-Lemniskate}. + +\subsubsection{Scheitelpunkte} Die beiden Scheitel der Lemniskate befinden sich bei $X_s=\pm a\sqrt{2}$. Dividiert man die Gleichung der Lemniskate durch $X_s^2=4a^4$ entsteht \begin{equation} @@ -53,10 +60,12 @@ Dividiert man die Gleichung der Lemniskate durch $X_s^2=4a^4$ entsteht \label{buch:elliptisch:eqn:lemniskatenormiert} \end{equation} wobei wir $x=X/a\sqrt{2}$ und $y=Y/a\sqrt{2}$ gesetzt haben. -In dieser Normierung liegen die Scheitel bei $\pm 1$. +In dieser Normierung, der Standard-Lemniskaten, liegen die Scheitel +bei $\pm 1$. Dies ist die Skalierung, die für die Definition des lemniskatischen Sinus und Kosinus verwendet werden soll. +\subsubsection{Polarkoordinaten} In Polarkoordinaten $x=r\cos\varphi$ und $y=r\sin\varphi$ gilt nach Einsetzen in \eqref{buch:elliptisch:eqn:lemniskatenormiert} \begin{equation} @@ -116,77 +125,80 @@ die den inneren Äquator des Torus berührt, ist eine Lemniskate. \end{figure} \index{Torus}% Schneidet man einen Torus mit einer Ebene, die zur Achse des Torus -parallel ist und den inneren Äquator des Torus berührt, entsteht -ebenfalls eine Lemniskate. -Die Situation ist in Abbildung~\ref{buch:elliptisch:lemniskate:torusschnitt} -dargestellt. +parallel ist und den inneren Äquator des Torus berührt, wie in +Abbildung~\ref{buch:elliptisch:lemniskate:torusschnitt}, +entsteht ebenfalls eine Lemniskate, wie in diesem Abschnitt nachgewiesen +werden soll. Der in Abbildung~\ref{buch:elliptisch:lemniskate:torusschnitt} dargestellte Torus mit den Radien $2$ und $1$ hat als Achse die um eine Einheit in $Z$-Richtung verschobene $Y$-Achse und die $X$-$Z$-Ebene als Äquatorebene. -Sie kann mit +Der Torus kann mit \[ -(s,t) +(u,v) \mapsto \begin{pmatrix} -(2+\cos s) \cos t \\ -\sin s \\ -(2+\cos s) \sin t + 1 +(2+\cos u) \cos v \\ + \sin u \\ +(2+\cos u) \sin v + 1 \end{pmatrix} \] -parametrisiert werden, die $s$- und $t$-Koordinatenlinien sind +parametrisiert werden, die $u$- und $v$-Koordinatenlinien sind in der Abbildung gelb eingezeichnet. +Die $v$-Koordinatenlinien sind Breitenkreise um die Achse des Torus. +Aus $u=0$ und $u=\pi$ ergeben sich die Äquatoren des Torus. + Die Gleichung $Z=0$ beschreibt eine achsparallele Ebene, die den inneren Äquator berührt. Die Schnittkurve erfüllt daher \[ -(2+\cos s)\sin t + 1 = 0, +(2+\cos u)\sin v + 1 = 0, \] -was wir auch als $2 +\cos s = -1/\sin t$ schreiben können. -Wir müssen nachprüfen dass die Koordinaten -$X=(2+\cos s)\cos t$ und $Y=\sin s$ die Gleichung einer Lemniskate +was wir auch als $2 +\cos u = -1/\sin v$ schreiben können. +Wir müssen nachprüfen, dass die Koordinaten +$X=(2+\cos u)\cos v$ und $Y=\sin u$ die Gleichung einer Lemniskate erfüllen. Zunächst können wir in der $X$-Koordinate den Klammerausdruck durch -$\sin t$ ausdrücken und erhalten +$\sin v$ ausdrücken und erhalten \begin{equation} X = -(2+\cos s) \cos t +(2+\cos u) \cos v = --\frac{1}{\sin t}\cos t +-\frac{1}{\sin v}\cos v = --\frac{\cos t}{\sin t} +-\frac{\cos v}{\sin v} \qquad\Rightarrow\qquad X^2 = -\frac{\cos^2t}{\sin^2 t} +\frac{\cos^2v}{\sin^2 v} = -\frac{1-\sin^2t}{\sin^2 t}. +\frac{1-\sin^2v}{\sin^2 v}. \label{buch:elliptisch:lemniskate:Xsin} \end{equation} -Auch die $Y$-Koordinaten können wir durch $t$ ausdrücken, +Auch die $Y$-Koordinaten können wir durch $v$ ausdrücken, nämlich \begin{equation} -Y^2=\sin^2 s = 1-\cos^2 s +Y^2=\sin^2 u = 1-\cos^2 u = 1- \biggl( -\frac{1}{\sin t} +\frac{1}{\sin v} -2 \biggr)^2 = -\frac{-3\sin^2 t+4\sin t-1}{\sin^2 t}. +\frac{-3\sin^2 v+4\sin v-1}{\sin^2 v}. \label{buch:elliptisch:lemniskate:Ysin} \end{equation} Die Gleichungen \eqref{buch:elliptisch:lemniskate:Xsin} und \eqref{buch:elliptisch:lemniskate:Ysin} -zeigen, dass man $X^2$ und $Y^2$ sogar einzig durch $\sin t$ +zeigen, dass man $X^2$ und $Y^2$ sogar einzig durch $\sin v$ parametrisieren kann. -Um die Ausdrücke etwas zu vereinfachen, schreiben wir $S=\sin t$ +Um die Ausdrücke etwas zu vereinfachen, schreiben wir $S=\sin v$ und erhalten zusammenfassend \begin{equation} \begin{aligned} @@ -222,8 +234,7 @@ X^2-Y^2 2\biggl(\frac{1-S}{S}\biggr)^2. \end{aligned} \end{equation} -Die Berechnung des Quadrates von $X^2+Y^2$ ergibt -die Gleichung +Die Berechnung des Quadrates von $X^2+Y^2$ ergibt die Gleichung \[ (X^2+Y^2)^2 = @@ -260,7 +271,7 @@ r^4 = (x(r)^2 + y(r)^2)^2, \end{align*} -sie stellen also eine Parametrisierung der Lemniskate dar. +sie stellen also eine Parametrisierung der Standard-Lemniskate dar. Mit Hilfe der Parametrisierung~\eqref{buch:geometrie:eqn:lemniskateparam} kann man die Länge $s$ des in Abbildung~\ref{buch:elliptisch:fig:lemniskate} @@ -382,9 +393,13 @@ Y(t) \end{equation} Abbildung~\ref{buch:elliptisch:lemniskate:bogenpara} zeigt die Parametrisierung. -Dem Parameterwert $t=0$ entspricht der Punkt -$(\sqrt{2},0)$ der Lemniskate. +Dem Parameterwert $t=0$ entspricht der Scheitelpunkt +$S=(\sqrt{2},0)$ der Lemniskate. +% +% Lemniskatengleichung +% +\subsubsection{Verfikation der Lemniskatengleichung} Dass \eqref{buch:elliptisch:lemniskate:bogeneqn} tatsächlich eine Parametrisierung ist kann nachgewiesen werden dadurch, dass man die beiden Seiten der definierenden Gleichung der @@ -441,6 +456,11 @@ X(t)^2-Y(t)^2 = 2(X(t)^2-Y(t)^2). \end{align*} + +% +% Berechnung der Bogenlänge +% +\subsubsection{Berechnung der Bogenlänge} Wir zeigen jetzt, dass dies tatsächlich eine Bogenlängenparametrisierung der Lemniskate ist. Dazu berechnen wir die Ableitungen @@ -509,19 +529,22 @@ Dazu berechnen wir die Ableitungen &= 1. \end{align*} -Dies bedeutet, dass die Bogenlänge zwischen den Parameterwerten $0$ und $s$ +Dies bedeutet, dass die Bogenlänge zwischen den Parameterwerten $0$ und $t$ \[ -\int_0^s -\sqrt{\dot{X}(t)^2 + \dot{Y}(t)^2} -\,dt +\int_0^t +\sqrt{\dot{X}(\tau)^2 + \dot{Y}(\tau)^2} +\,d\tau = -\int_0^s\,dt +\int_0^s\,d\tau = -s, +t, \] -der Parameter $t$ ist also ein Bogenlängenparameter, man darf also -$s=t$ schreiben. +der Parameter $t$ ist also ein Bogenlängenparameter. +% +% Bogenlängenparametrisierung der Standard-Lemniskate +% +\subsubsection{Bogenlängenparametrisierung der Standard-Lemniskate} Die mit dem Faktor $1/\sqrt{2}$ skalierte Standard-Lemniskate mit der Gleichung \[ @@ -547,7 +570,13 @@ y(t) \text{mit $\displaystyle k=\frac{1}{\sqrt{2}}$} \label{buch:elliptisch:lemniskate:bogenlaenge} \end{equation} +Der Punkt $t=0$ entspricht dem Scheitelpunkt $S=(1,0)$ der Lemniskate. +Der Parameter misst also die Bogenlänge entlang der Lemniskate ausgehend +vom Scheitel. +% +% der lemniskatische Sinus und Kosinus +% \subsection{Der lemniskatische Sinus und Kosinus} Der Sinus berechnet die Gegenkathete zu einer gegebenen Bogenlänge des Kreises, er ist die Umkehrfunktion der Funktion, die der Gegenkathete @@ -555,30 +584,53 @@ die Bogenlänge zuordnet. Daher ist es naheliegend, die Umkehrfunktion von $s(r)$ in \eqref{buch:elliptisch:eqn:lemniskatebogenlaenge} den {\em lemniskatischen Sinus} zu nennen mit der Bezeichnung +\index{lemniskatischer Sinus}% +\index{Sinus, lemniskatischer}% $r=r(s)=\operatorname{sl} s$. +\index{komplementäre Bogenlänge} +% +% die komplementäre Bogenlänge +% +\subsubsection{Die komplementäre Bogenlänge} Der Kosinus ist der Sinus des komplementären Winkels. Auch für die lemniskatische Bogenlänge $s(r)$ lässt sich eine -komplementäre Bogenlänge definieren, nämlich die Bogenlänge zwischen -dem Punkt $(x(r), y(r))$ und $(1,0)$. -Da die Bogenlänge zwischen $(0,0)$ und $(1,0)$ in -in \eqref{buch:elliptisch:eqn:varpi} bereits bereichnet wurde. -ist sie $\varpi/2-s$. +komplementäre Bogenlänge $t$ definieren, nämlich die Bogenlänge +zwischen dem Punkt $(x(r), y(r))$ und dem Scheitelpunkt $S=(1,0)$. +Dies ist der Parameter der Parametrisierung +\eqref{buch:elliptisch:lemniskate:bogenlaenge} +des vorangegangenen Abschnittes. +Die Bogenlänge zwischen $O=(0,0)$ und $S=(1,0)$ wurde in +\eqref{buch:elliptisch:eqn:varpi} bereits bereichnet, +sie ist $\varpi/2$. +Damit folgt für die beiden Parameter $s$ und $t$ die Beziehung +$t = \varpi/2 - s$. + +\subsubsection{Der lemniskatische Kosinus} +\begin{figure} +\centering +\includegraphics[width=\textwidth]{chapters/110-elliptisch/images/slcl.pdf} +\caption{ +Lemniskatischer Sinus und Kosinus sowie Sinus und Kosinus +mit derart skaliertem Argument, dass die Funktionen die +gleichen Nullstellen haben. +\label{buch:elliptisch:figure:slcl}} +\end{figure} Der {\em lemniskatische Kosinus} ist daher $\operatorname{cl}(s) = \operatorname{sl}(\varpi/2-s)$. Graphen des lemniskatische Sinus und Kosinus sind in Abbildung~\ref{buch:elliptisch:figure:slcl} dargestellt. -Da die Parametrisierung~\eqref{buch:elliptisch:lemniskate:bogenlaenge} -eine Bogenlängenparametrisierung ist, darf man $t=s$ schreiben. -Dann kann man aber auch $r(s)$ daraus berechnen, -es ist +Die Parametrisierung~\eqref{buch:elliptisch:lemniskate:bogenlaenge} +ist eine Bogenlängenparametrisierung der Standard-Lemniskate. +Man kann sie verwenden, um $r(t)$ zu berechnen. +Es ist \[ -r(s)^2 +r(t)^2 = -x(s)^2 + y(s)^2 +x(t)^2 + y(t)^2 = -\operatorname{cn}(s\sqrt{2},k)^2 +\operatorname{cn}(\sqrt{2}t,k)^2 \biggl( \operatorname{dn}(\sqrt{2}t,k)^2 + @@ -586,25 +638,40 @@ x(s)^2 + y(s)^2 \operatorname{sn}(\sqrt{2}t,k)^2 \biggr) = -\operatorname{cn}(s\sqrt{2},k)^2. +\operatorname{cn}(\sqrt{2}t,k)^2. \] Die Wurzel ist \[ +r(t) += +\operatorname{cn}(\sqrt{2}t,{\textstyle\frac{1}{\sqrt{2}}}) +. +\] +Der lemniskatische Sinus wurde aber in Abhängigkeit von +$s=\varpi/2-t$ mittels +\[ +\operatorname{sl}s += r(s) = -\operatorname{sl} s +\operatorname{cn}(\sqrt{2}(\varpi/2-s),k)^2 +\] +definiert. +Der lemniskatische Kosinus ist definiert als der lemniskatische Sinus +\index{lemniskatischer Kosinus}% +\index{Kosinus, lemniskatischer}% +der komplementären Bogenlänge, also +\[ +\operatorname{cl}(s) += +\operatorname{sl}(\varpi/2-s) = -\operatorname{cn}(s\sqrt{2},{\textstyle\frac{1}{\sqrt{2}}}). +\operatorname{cn}(\sqrt{2}s,k)^2. \] -Damit ist der lemniskatische Sinus durch eine Jacobische elliptische -Funktion darstellbar. +Die Funktion $\operatorname{sl}(s)$ und $\operatorname{cl}(s)$ sind +in Abbildung~\ref{buch:elliptisch:figure:slcl} dargestellt. +Sie sind beide $2\varpi$-periodisch. +Die Abbildung zeigt ausserdem die Funktionen $\sin (\pi s/\varpi)$ +und $\cos(\pi s/\varpi)$, die ebenfalls $2\varpi$-periodisch sind. + -\begin{figure} -\centering -\includegraphics[width=\textwidth]{chapters/110-elliptisch/images/slcl.pdf} -\caption{ -Lemniskatischer Sinus und Kosinus sowie Sinus und Kosinus -mit derart skaliertem Argument, dass die Funktionen die -gleichen Nullstellen haben. -\label{buch:elliptisch:figure:slcl}} -\end{figure} -- cgit v1.2.1 From 4764f8b481629a2f733c6025ec66a34a31d50222 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Thu, 16 Jun 2022 20:01:13 +0200 Subject: more on polynomials --- buch/chapters/010-potenzen/polynome.tex | 61 ++++++++++++++++++++++++++++++++- 1 file changed, 60 insertions(+), 1 deletion(-) diff --git a/buch/chapters/010-potenzen/polynome.tex b/buch/chapters/010-potenzen/polynome.tex index 981e444..2086078 100644 --- a/buch/chapters/010-potenzen/polynome.tex +++ b/buch/chapters/010-potenzen/polynome.tex @@ -24,6 +24,7 @@ $K[x]$ bezeichnet. \end{definition} Die Menge $K[x]$ ist heisst auch der {\em Polynomring}, weil $K[x]$ +\index{Polynomring}% mit der Addition, Subtraktion und Multiplikation von Polynomen eine algebraische Struktur bildet, die man einen Ring mit $1$ nennt. \index{Ring}% @@ -82,32 +83,47 @@ ebenfalls als Approximationen dienen können. Weitere Möglichkeiten liefern Interpolationsmethoden der numerischen Mathematik. +% +% Polynomdivision, Teilbarkeit und ggT +% \subsection{Polynomdivision, Teilbarkeit und grösster gemeinsamer Teiler} Der schriftliche Divisionsalgorithmus für Zahlen funktioniert auch für die Division von Polynomen. +\index{Polynome!Divisionsalgorithmus}% Zu zwei beliebigen Polynomen $p(x)$ und $q(x)$ lassen sich also immer zwei Polynome $a(x)$ und $r(x)$ finden derart, dass $p(x) = a(x) q(x) + r(x)$. Das Polynom $a(x)$ heisst der {\em Quotient}, $r(x)$ der {\em Rest} der Division. Das Polynom $p(x)$ heisst {\em teilbar} durch $q(x)$, geschrieben +\index{teilbar}% +\index{Polynome!teilbar}% $q(x)\mid p(x)$, wenn $r(x)=0$ ist. +% +% Grösster gemeinsamer Teiler +% \subsubsection{Grösster gemeinsamer Teiler} Mit dem Begriff der Teilbarkeit geht auch die Idee des grössten gemeinsamen Teilers einher. Ein gemeinsamer Teiler zweier Polynome $a(x)$ und $b(x)$ +\index{gemeinsamer Teiler}% ist ein Polynom $g(x)$, welches beide Polynome teilt, also $g(x)\mid a(x)$ und $g(x)\mid b(x)$. \index{grösster gemeinsamer Teiler}% -Ein Polynome $g(x)$ heisst grösster gemeinsamer Teiler von $a(x)$ +Ein Polynom $g(x)$ heisst {\em grösster gemeinsamer Teiler} von $a(x)$ und $b(x)$, wenn jeder andere gemeinsame Teiler $f(x)$ von $a(x)$ und $b(x)$ auch ein Teiler von $g(x)$ ist. Man beachte, dass die skalaren Vielfachen eines grössten gemeinsamen Teilers ebenfalls grösste gemeinsame Teiler sind, der grösste gemeinsame Teiler ist also nicht eindeutig bestimmt. +% +% Der euklidische Algorithmus +% \subsubsection{Der euklidische Algorithmus} +\index{Algorithmus!euklidisch}% +\index{euklidischer Algorithmus}% Zur Berechnung eines grössten gemeinsamen Teilers steht wie bei den ganzen Zahlen der euklidische Algorithmus zur Verfügung. Dazu bildet man die Folgen von Polynomen @@ -144,6 +160,9 @@ a_m(x)&=b_m(x)q_m(x).&& Der Index $m$ ist der Index, bei dem zum ersten Mal $r_m(x)=0$ ist. Dann ist $g(x)=r_{m-1}(x)$ ein grösster gemeinsamer Teiler. +% +% Der erweiterte euklidische Algorithmus +% \subsubsection{Der erweiterte euklidische Algorithmus} Die Konstruktion der Folgen $a_n(x)$ und $b_n(x)$ kann in Matrixform kompakter geschrieben werden als @@ -265,10 +284,50 @@ g(x) = c(x)a(x)+d(x)b(x) gilt. \end{satz} +% +% Faktorisierung und Nullstellen +% \subsection{Faktorisierung und Nullstellen} % wird später gebraucht um bei der Definition der hypergeometrischen Reihe % die Zaehler- und Nenner-Polynome als Pochhammer-Symbole zu entwickeln +Ist $\alpha$ eine Nullstelle des Polynoms $a(x)$, also $a(\alpha)=0$. +Der Divisionsalgorithmus mit für die Polynome $a(x)$ und $b(x)=x-\alpha$ +liefert zwei Polynome $q(x)$ für den Quotienten und $r(x)$ für den Rest +mit den Eigenschaften +\[ +a(x) += +q(x) b(x) ++r(x) += +q(x)(x-\alpha)+r(x) +\qquad\text{mit}\qquad +\deg r < \deg b(x)=1. +\] +Der Rest $r(x)$ ist somit eine Konstante. +Setzt man $x=\alpha$ ein, folgt +\[ +0 += +a(\alpha) += +q(\alpha)(\alpha-\alpha)+r(\alpha) += +r(\alpha), +\] +der Rest $r(x)$ muss also verschwinden. +Für eine Nullstelle $\alpha$ von $a(x)$ ist $a(x)$ durch $(x-\alpha)$ +teilbar. +Wenn zwei Polynome $a(x)$ und $b(x)$ eine gemeinsame Nullstelle $\alpha$ +haben, dann ist $(x-\alpha)$ ein Teiler beider Polynome und somit auch +ein Teiler eines grössten gemeinsamer Teiler. +Insbesondere sind die Nullstellen des grössten gemeinsamen Teilers +gemeinsame Nullstellen von $a(x)$ und $b(x)$. + +% +% Koeffizienten-Vergleich +% \subsection{Koeffizienten-Vergleich} % Wird gebraucht für die Potenzreihen-Methode % Muss später ausgedehnt werden auf Potenzreihen -- cgit v1.2.1 From ddf0b2a3125ce9c161c327cd61b22aba339a7c7b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Thu, 16 Jun 2022 20:13:21 +0200 Subject: add missing file --- .../chapters/110-elliptisch/images/jacobiplots.pdf | Bin 59737 -> 56975 bytes buch/chapters/110-elliptisch/images/kegelpara.pdf | Bin 203620 -> 202828 bytes buch/chapters/110-elliptisch/images/lemnispara.pdf | Bin 28820 -> 25749 bytes .../110-elliptisch/images/torusschnitt.pdf | Bin 0 -> 312677 bytes 4 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 buch/chapters/110-elliptisch/images/torusschnitt.pdf diff --git a/buch/chapters/110-elliptisch/images/jacobiplots.pdf b/buch/chapters/110-elliptisch/images/jacobiplots.pdf index fdd3d1f..c51e916 100644 Binary files a/buch/chapters/110-elliptisch/images/jacobiplots.pdf and b/buch/chapters/110-elliptisch/images/jacobiplots.pdf differ diff --git a/buch/chapters/110-elliptisch/images/kegelpara.pdf b/buch/chapters/110-elliptisch/images/kegelpara.pdf index 2dbe39d..c6456ce 100644 Binary files a/buch/chapters/110-elliptisch/images/kegelpara.pdf and b/buch/chapters/110-elliptisch/images/kegelpara.pdf differ diff --git a/buch/chapters/110-elliptisch/images/lemnispara.pdf b/buch/chapters/110-elliptisch/images/lemnispara.pdf index 633df34..16731d3 100644 Binary files a/buch/chapters/110-elliptisch/images/lemnispara.pdf and b/buch/chapters/110-elliptisch/images/lemnispara.pdf differ diff --git a/buch/chapters/110-elliptisch/images/torusschnitt.pdf b/buch/chapters/110-elliptisch/images/torusschnitt.pdf new file mode 100644 index 0000000..b94286a Binary files /dev/null and b/buch/chapters/110-elliptisch/images/torusschnitt.pdf differ -- cgit v1.2.1 From f89f84ab92053e53f4760d92ae311444bb5a7986 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Thu, 16 Jun 2022 20:17:52 +0200 Subject: Reorganisation --- buch/chapters/110-elliptisch/mathpendel.tex | 38 +++++++++++++++-------------- 1 file changed, 20 insertions(+), 18 deletions(-) diff --git a/buch/chapters/110-elliptisch/mathpendel.tex b/buch/chapters/110-elliptisch/mathpendel.tex index d61bcf6..39cb418 100644 --- a/buch/chapters/110-elliptisch/mathpendel.tex +++ b/buch/chapters/110-elliptisch/mathpendel.tex @@ -94,6 +94,24 @@ Für $E>2mgl$ wird sich das Pendel im Kreis bewegen, für sehr grosse Energie ist die kinetische Energie dominant, die Verlangsamung im höchsten Punkt wird immer weniger ausgeprägt sein. +\begin{figure} +\centering +\includegraphics[width=\textwidth]{chapters/110-elliptisch/images/jacobiplots.pdf} +\caption{% +Abhängigkeit der elliptischen Funktionen von $u$ für +verschiedene Werte von $k^2=m$. +Für $m=0$ ist $\operatorname{sn}(u,0)=\sin u$, +$\operatorname{cn}(u,0)=\cos u$ und $\operatorname{dn}(u,0)=1$, diese +sind in allen Plots in einer helleren Farbe eingezeichnet. +Für kleine Werte von $m$ weichen die elliptischen Funktionen nur wenig +von den trigonometrischen Funktionen ab, +es ist aber klar erkennbar, dass die anharmonischen Terme in der +Differentialgleichung die Periode mit steigender Amplitude verlängern. +Sehr grosse Werte von $m$ nahe bei $1$ entsprechen der Situation, dass +die Energie des Pendels fast ausreicht, dass es den höchsten Punkt +erreichen kann, was es für $m$ macht. +\label{buch:elliptisch:fig:jacobiplots}} +\end{figure} % % Koordinatentransformation auf elliptische Funktionen % @@ -160,24 +178,6 @@ $1$ sein muss. % Der Fall E < 2mgl % \subsubsection{Der Fall $E<2mgl$} -\begin{figure} -\centering -\includegraphics[width=\textwidth]{chapters/110-elliptisch/images/jacobiplots.pdf} -\caption{% -Abhängigkeit der elliptischen Funktionen von $u$ für -verschiedene Werte von $k^2=m$. -Für $m=0$ ist $\operatorname{sn}(u,0)=\sin u$, -$\operatorname{cn}(u,0)=\cos u$ und $\operatorname{dn}(u,0)=1$, diese -sind in allen Plots in einer helleren Farbe eingezeichnet. -Für kleine Werte von $m$ weichen die elliptischen Funktionen nur wenig -von den trigonometrischen Funktionen ab, -es ist aber klar erkennbar, dass die anharmonischen Terme in der -Differentialgleichung die Periode mit steigender Amplitude verlängern. -Sehr grosse Werte von $m$ nahe bei $1$ entsprechen der Situation, dass -die Energie des Pendels fast ausreicht, dass es den höchsten Punkt -erreichen kann, was es für $m$ macht. -\label{buch:elliptisch:fig:jacobiplots}} -\end{figure} Wir verwenden als neue Variable @@ -234,6 +234,8 @@ Dies ist genau die Form der Differentialgleichung für die elliptische Funktion $\operatorname{sn}(u,k)$ mit $k^2 = 2gml/E< 1$. +XXX Verbindung zur Abbildung + %% %% Der Fall E > 2mgl %% -- cgit v1.2.1 From 07724dd7774994996b3dc1b2955ef9a30cb59a44 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Thu, 16 Jun 2022 21:47:35 +0200 Subject: more complete chapter 1 --- buch/chapters/010-potenzen/loesbarkeit.tex | 68 ++++++++++++++++++++++ buch/chapters/010-potenzen/polynome.tex | 93 +++++++++++++++++++++++++++++- 2 files changed, 160 insertions(+), 1 deletion(-) diff --git a/buch/chapters/010-potenzen/loesbarkeit.tex b/buch/chapters/010-potenzen/loesbarkeit.tex index 692192d..f93a84b 100644 --- a/buch/chapters/010-potenzen/loesbarkeit.tex +++ b/buch/chapters/010-potenzen/loesbarkeit.tex @@ -20,8 +20,21 @@ für ein Polynome $p(x)$ und eine Konstante $c\in\mathbb{C}$. % Fundamentalsatz der Algebra % \subsection{Fundamentalsatz der Algebra} +In Abschnitt~\ref{buch:polynome:subsection:faktorisierung-und-nullstellen} +wurde gezeigt, dass sich jede Nullstellen $\alpha$ eines Polynoms als +Faktor $x-\alpha$ abspalten lässt. +Jedes Polynom liess sich in ein Produkt von Linearfaktoren und +einen Faktor zerlegen, der keine Nullstellen hat. +Zum Beispiel hat das Polynom $x^2+1\in\mathbb{R}[x]$ keine +Nullstellen in $\mathbb{R}$. +Eine solche Nullstelle müsste eine Quadratwurzel von $-1$ sein. +Die komplexen Zahlen $\mathbb{C}$ wurden genau mit dem Ziel konstruiert, +dass $i=\sqrt{-1}$ sinnvoll wird. +Der Fundamentalsatz der Algebra zeigt, dass $\mathbb{C}$ alle +Nullstellen von Polynomen enthält. \begin{satz}[Gauss] +\index{Fundamentalsatz der Algebra}% \label{buch:potenzen:satz:fundamentalsatz} Jedes Polynom $p(x)=a_nx^n+\dots + a_2x^2 + a_1x + a_0\in\mathbb{C}[x]$ zerfällt in ein Produkt @@ -34,6 +47,7 @@ a_n für Nullstellen $\alpha_k\in\mathbb{C}$. \end{satz} + % % Lösbarkeit durch Wurzelausdrücke % @@ -148,3 +162,57 @@ Für Polynomegleichungen vom Grad $n\ge 5$ gibt es keine allgemeine Lösung durch Wurzelausdrücke. \end{satz} + + +% +% Algebraische Zahlen +% +\subsection{Algebraische Zahlen} +Die Verwendung der komplexen Zahlen ist für numerische Rechnungen +zweckmässig. +In den Anwendungen der Computer-Algebra hingegen erwartet man zum +Beispiel exakte Formeln für eine Stammfunktion. +Nicht rationale Zahlen können nur exakt verarbeitet werden, wenn +Sie sich algebraisch in endlich vielen Schritten charakterisieren +lassen. +Dies ist zum Beispiel für rationale Zahlen $\mathbb{Q}$ möglich. +Gewisse irrationale Zahlen kann man charakterisieren durch +die Eigenschaft, Nullstelle eines Polynoms $p(x)\in\mathbb{Q}[x]$ +mit rationalen Koeffizienten zu sein. + +\begin{definition} +Eine Zahl $\alpha$ heisst {\em algebraisch} über $\mathbb{Q}$, +wenn es ein Polynom +\index{algebraische Zahl}% +$p(x)\in \mathbb{Q}[x]$ gibt, welches $\alpha$ als Nullstelle hat. +Eine Zahl heisst transzendent über $\mathbb{Q}$, wenn sie nicht algebraisch ist +über $\mathbb{Q}$. +\end{definition} + +Die Zahlen $i=\sqrt{-1}$ und $\sqrt{n\mathstrut}$ für $n\in\mathbb{N}$ +sind also algebraisch über $\mathbb{Z}$. +Es ist gezeigt worden, dass $\pi$ und $e$ nicht nur irrational +sind, sondern sogar transzendent. + +Eine Polynomgleichung $p(\alpha)=0$ mit $p(x)\in\mathbb{Q}[x]$ +hat eine Rechenregel für $\alpha$ zur Folge. +Dazu schreibt man +\[ +p_n\alpha^n + p_{n-1}\alpha^{n-1} + \dots + a_1\alpha + a_0 =0 +\qquad\Rightarrow\qquad +\alpha^n = -\frac{1}{p_n}\bigl( +p_{n-1}\alpha^{n-1}+\dots+a_1\alpha+a_0 +\bigr). +\] +Diese Regel erlaubt, jede Potenz $\alpha^k$ mit $k\ge n$ durch +Potenzen von $\alpha^l$ mit $l Date: Thu, 16 Jun 2022 22:17:47 +0200 Subject: some fixes in chapter 4 --- buch/chapters/040-rekursion/beta.tex | 3 ++- buch/chapters/040-rekursion/chapter.tex | 19 +++++++++++++++++++ buch/chapters/040-rekursion/gamma.tex | 6 +++--- 3 files changed, 24 insertions(+), 4 deletions(-) diff --git a/buch/chapters/040-rekursion/beta.tex b/buch/chapters/040-rekursion/beta.tex index ff59bad..13e074f 100644 --- a/buch/chapters/040-rekursion/beta.tex +++ b/buch/chapters/040-rekursion/beta.tex @@ -13,7 +13,8 @@ Man kann Sie aber auch als Grenzfall der Beta-Funktion verstehen, die in diesem Abschnitt dargestellt wird. -\subsection{Beta-Integral} +\subsection{Beta-Integral +\label{buch:rekursion:gamma:subsection:integralbeweis}} In diesem Abschnitt wird das Beta-Integral eingeführt, eine Funktion von zwei Variablen, welches eine Integral-Definition mit einer reichaltigen Menge von Rekursionsbeziehungen hat, die sich direkt auf diff --git a/buch/chapters/040-rekursion/chapter.tex b/buch/chapters/040-rekursion/chapter.tex index 165c48e..1771200 100644 --- a/buch/chapters/040-rekursion/chapter.tex +++ b/buch/chapters/040-rekursion/chapter.tex @@ -8,6 +8,25 @@ \label{buch:chapter:rekursion}} \lhead{Spezielle Funktionen und Rekursion} \rhead{} +Die Fakultät $n!=1\cdot 2\cdots n$ ist eine ersten Funktionen, für die +man normalerweise auch eine rekursive Definition kennenlernt. +Rekursion ist eine besonders gut der numerischen Berechnung zugängliche +Art, spezielle Funktionen zu definieren. +In diesem Kapitel sollen daher in +Abschnitt~\ref{buch:rekursion:section:gamma} +zunächst die Gamma-Funktion als Verallgemeinerung konstruiert +und charakterisiert werden. +Die Beta-Funktion in +Abschnitt~\ref{buch:rekursion:gamma:section:beta} +verallgemeinert diese Rekursionsbeziehungen. +Abschnitt~\ref{buch:rekursion:section:linear} +erinnert an die Methoden, mit denen lineare Rekursionsgleichungen +gelöst werden können. +Erfüllten die Koeffizienten einer Potenzreihe eine spezielle +Rekursionsbeziehung, entsteht die besonders vielfältige Familie +der hypergeometrischen Funktionen, die in +Abschnitt~\ref{buch:rekursion:section:hypergeometrische-funktion} +eingeführt werden. \input{chapters/040-rekursion/gamma.tex} \input{chapters/040-rekursion/beta.tex} diff --git a/buch/chapters/040-rekursion/gamma.tex b/buch/chapters/040-rekursion/gamma.tex index 7d4453b..8c02752 100644 --- a/buch/chapters/040-rekursion/gamma.tex +++ b/buch/chapters/040-rekursion/gamma.tex @@ -480,8 +480,8 @@ ganzzahlige Argumente übereinstimmen. Der folgende Abschnitt macht deutlich, dass es sehr viele Funktionen gibt, die ebenfalls die Funktionalgleichung erfüllen. Eine vollständige Rechtfertigung für diese Definition wird später -in Abschnitt~\ref{buch:rekursion:gamma:subsection:beta} -\eqref{buch:rekursion:gamma:integralbeweis} +in Abschnitt~\ref{buch:rekursion:gamma:subsection:integralbeweis} +in Formel~\eqref{buch:rekursion:gamma:integralbeweis} auf Seite~\pageref{buch:rekursion:gamma:integralbeweis} gegeben. @@ -511,7 +511,7 @@ der Gamma-Funktion und berechnen \int_{-\infty}^\infty e^{-s^2}\,ds = \sqrt{\pi}. -\label{buch:rekursion:gamma:betagamma} +\label{buch:rekursion:gamma:wert12} \end{align} Der Integrand im letzten Integral ist die Wahrscheinlichkeitsdichte einer Normalverteilung, deren Integral wohlbekannt ist. -- cgit v1.2.1 From dcd6d6037a84343f19333fe86a904bdc0bb8a36f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Fri, 17 Jun 2022 11:20:00 +0200 Subject: new section, cleanup --- buch/chapters/010-potenzen/Makefile.inc | 1 + buch/chapters/010-potenzen/chapter.tex | 1 + buch/chapters/010-potenzen/rational.tex | 60 ++++++++ buch/chapters/030-geometrie/chapter.tex | 1 + buch/chapters/040-rekursion/hypergeometrisch.tex | 170 +++++++++++++++++++-- .../chapters/050-differential/hypergeometrisch.tex | 5 +- 6 files changed, 220 insertions(+), 18 deletions(-) create mode 100644 buch/chapters/010-potenzen/rational.tex diff --git a/buch/chapters/010-potenzen/Makefile.inc b/buch/chapters/010-potenzen/Makefile.inc index 27ccdae..87afe38 100644 --- a/buch/chapters/010-potenzen/Makefile.inc +++ b/buch/chapters/010-potenzen/Makefile.inc @@ -8,6 +8,7 @@ CHAPTERFILES += \ chapters/010-potenzen/loesbarkeit.tex \ chapters/010-potenzen/polynome.tex \ chapters/010-potenzen/tschebyscheff.tex \ + chapters/010-potenzen/rational.tex \ chapters/010-potenzen/potenzreihen.tex \ chapters/010-potenzen/uebungsaufgaben/101.tex \ chapters/010-potenzen/uebungsaufgaben/102.tex \ diff --git a/buch/chapters/010-potenzen/chapter.tex b/buch/chapters/010-potenzen/chapter.tex index 7dc30d4..2628e33 100644 --- a/buch/chapters/010-potenzen/chapter.tex +++ b/buch/chapters/010-potenzen/chapter.tex @@ -40,6 +40,7 @@ Abschnitt~\ref{buch:potenzen:section:potenzreihen} erinnert. \input{chapters/010-potenzen/polynome.tex} \input{chapters/010-potenzen/loesbarkeit.tex} \input{chapters/010-potenzen/tschebyscheff.tex} +\input{chapters/010-potenzen/rational.tex} \input{chapters/010-potenzen/potenzreihen.tex} \section*{Übungsaufgaben} diff --git a/buch/chapters/010-potenzen/rational.tex b/buch/chapters/010-potenzen/rational.tex new file mode 100644 index 0000000..a5612e9 --- /dev/null +++ b/buch/chapters/010-potenzen/rational.tex @@ -0,0 +1,60 @@ +% +% rational.tex +% +% (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\section{Rationale Funktionen +\label{buch:polynome:section:rationale-funktionen}} +\rhead{Rationale Funktionen} +Polynome sind sehr einfach auszuwerten und können auf einem +Interval jede stetige Funktion beliebig gut approximieren. +Auf einem unbeschränkten Definitionsbereich wachsen Polynome aber +immer unbeschränkt an. +Der führende Term $a_nx^n$ dominiert das Verhalten eines Polynoms +für $x\to\infty$ wegen +\[ +\lim_{x\to\infty} a_nx^n += +\sign a_n \cdot\infty +\qquad\text{und}\qquad +\lim_{x\to-\infty} a_nx^n += +(-1)^n \sign a_n\cdot \infty. +\] +Insbesondere kann man nicht erwarten, dass sich eine beschränkte +Funktion wie $\sin x$ durch Polynome auf dem ganzen Definitionsbereich +gut approximieren lässt. +Der Unterschied $p(x)-\sin x$ wird für jedes beliebige Polynome $p(x)$ +für $x\to\pm\infty$ unbeschränkt anwachsen. + +Eine weitere Einschränkung ist, dass die Menge der Polynome bezüglich +der arithmetischen Operationen nicht abgeschlossen ist. +Man kann zwar Polynome addieren und multiplizieren, aber der Quotient +ist nicht notwendigerweise ein Polynome. +Abhilfe schafft nur, wenn man Quotienten von Polynomen zulässt. + +\begin{definition} +Eine Funktion $f(x)$ heisst {\em rationale Funktion}, wenn sie Quotient +\index{rationale Funktion}% +zweier Polynome ist, wenn es also Polynome $p(x), q(x)\in K[x]$ gibt mit +\[ +f(x) = \frac{p(x)}{q(x)}. +\] +Die Menge der rationalen Funktione mit Koeffizienten in $K$ wird mit +$K(x)$ bezeichnet. +\end{definition} + +Polynome sind rationale Funktionen, deren Nennergrad $1$ ist. +Rationale Funktionen können ebenfalls zur Approximation von Funktionen +verwendet werden. +Da sie beschränkt sein können, haben sie das Potential, +beschränkte Funktionen besser zu approximieren, als dies mit +Polynomen allein möglich wäre. +Die Theorie der Padé-Approximation, wie sie zum Beispiel im Buch +\cite{buch:pade} dargestellt ist, ist zum Beispiel auch in der +Regelungstechnik von Interesse, da sich rationale Funktionen mit +linearen Komponenten schaltungstechnisch realisieren lassen. +Weitere Anwendungen werden in Kapitel~\ref{chapter:transfer} +gezeigt. + + diff --git a/buch/chapters/030-geometrie/chapter.tex b/buch/chapters/030-geometrie/chapter.tex index 0b2842b..24fc089 100644 --- a/buch/chapters/030-geometrie/chapter.tex +++ b/buch/chapters/030-geometrie/chapter.tex @@ -32,6 +32,7 @@ der Strahlensatz muss durch den Satz von Menelaos ersetzt werden. Es ergibt sich eine Methode, beliebige Dreiecke auf einer Kugeloberfläche ganz analog zum Vorgehen bei ebenen Dreiecken zu berechnen. Diese sphärische Trigonometrie ist die Basis der Navigation +(siehe Kapitel~\ref{chapter:nav}) und aller astrometrischer Berechnungen. Die Analysis hat die Möglichkeit geschaffen, die Länge von Kurven diff --git a/buch/chapters/040-rekursion/hypergeometrisch.tex b/buch/chapters/040-rekursion/hypergeometrisch.tex index d92e594..39efc6b 100644 --- a/buch/chapters/040-rekursion/hypergeometrisch.tex +++ b/buch/chapters/040-rekursion/hypergeometrisch.tex @@ -16,22 +16,38 @@ n^3S_{n} mit Anfangswerten $S_0=1$ und $S_1=8$ angeben? Dies scheint auf den ersten Blick unmöglich kompliziert, man kann aber zeigen, dass -\[ +\begin{equation} S_n = \sum_{k=0}^n \binom{2n-2k}{n-k}^2 \binom{2k}{k}^2 -\] +\label{buch:rekursion:hypergeometrisch:eqn:Sn} +\end{equation} gilt (\cite[p.~xi]{buch:ab}). Die Lösung ist also eine Summe von Summanden, die sehr viel einfacher aussehen und vor allem die besondere Eigenschaft haben, dass die -Quotienten aufeinanderfolgender Terme rationale Funktionen von von $k$ +Quotienten aufeinanderfolgender Terme rationale Funktionen von $k$ sind. -% XXX Quotient berechnen -Eine besonders simple solche Funktion ist die geometrische Reihe, die -im Abschnitt~\ref{buch:rekursion:hypergeometrisch:geometrisch} -in Erinnerung gerufen wird. +\begin{definition} +Ein Folge heisst {\em hypergeometrisch}, wenn der Quotient aufeinanderfolgender +\index{hypergeometrische Folge}% +\index{Folge, hypergeometrisch}% +Terme eine rationale Funktion des Folgenindex ist. +\end{definition} + +Die Terme der Reihenentwicklungen aller bisher behandelten speziellen +Funktionen waren hypergeometrisch. +Im aktuellen Abschnitt soll daher die Klasse der sogenannten +hypergeometrischen Funktionen untersucht werden, die durch diese +Eigenschaft charakterisiert sind. + +In Abschnitt~\ref{buch:rekursion:hypergeometrisch:binomialkoeffizienten} +wird klar, dass Folgen, deren Terme aus Fakultäten und Binomialkoeffizienten +immer hypergeometrisch sind. +Die Untersuchung der geometrischen Reihe in +Abschnitt~\ref{buch:rekursion:hypergeometrisch:geometrisch} +motiviert die Namensgebung. Abschnitt~\ref{buch:rekursion:hypergeometrisch:reihen} definiert den Begriff der hypergeometrischen Reihe und zeigt, wie sie in eine Standardform gebracht werden können. @@ -39,22 +55,99 @@ In Abschnitt~\ref{buch:rekursion:hypergeometrisch:beispiele} schliesslich wird an Hand von Beispielen gezeigt, wie bekannte Funktionen als hypergeometrische Funktionen interpretiert werden können. +% +% Quotienten von Binomialkoeffizienten +% +\subsection{Quotienten von Binomialkoeffizienten +\label{buch:rekursion:hypergeometrisch:binomialkoeffizienten}} +Aufeinanderfolgende Terme der Summe +\eqref{buch:rekursion:hypergeometrisch:eqn:Sn} +sollen als Quotienten eine rationale Funktion haben. +Dies ist eine allgemeine Eigenschaft von Folgen, die durch Fakultäten +oder Binomialkoeffizienten definiert sind, wie die beiden folgenden +Sätze zeigen. + +\begin{satz} +\label{buch:rekursion:hypergeometrisch:satz:fakquo} +Der Quotient aufeinanderfolgender Folgenglieder +der Folge $c_k=(a+bk)!$ ist der ein Polynom vom Grad $b$. +\end{satz} +\begin{proof}[Beweis] +\begin{align*} +\frac{c_{k+1}}{c_k} +&= +\frac{(a+b(k+1))!}{(a+bk)!} += +\frac{(a+bk+b)!}{(a+b)!} +\\ +&= +(a+bk+1)(a+bk+2)\cdots(a+bk+b) += +(a+bk+1)_b +\end{align*} +Das Pochhammer-Symbol hat $b$ Faktoren, es ist ein Polynom vom Grad $b$. +\end{proof} + +\begin{satz} +\label{buch:rekursion:hypergeometrisch:satz:binomquo} +Die Quotienten aufeinanderfolgender Werte der Binomialkoeffizienten +\[ +f_k += +\binom{a+bk}{c+dk} +\] +ist eine rationale Funktion von $k$ mit Zähler- und Nennergrad $b$. +\end{satz} + +\begin{proof}[Beweis] +Indem man die Binomialkoeffizienten mit Fakultäten als +\[ +\binom{a+bk}{c+dk} += +\frac{(a+bk)!}{(c+dk)!(a-c+(b-d)k)!} +\] +ausschreibt, findet man mit +Satz~\ref{buch:rekursion:hypergeometrisch:satz:fakquo} +für die Quotienten +\begin{align} +\frac{f_{k+1}}{f_k} +&= +\frac{(a+bk+1)_b}{(c+dk+1)_d\cdot(a-c+(b-d)k+1)_{b-d}} +\label{buch:rekursion:eqn:binomquotient} +\end{align} +Die Pochhammer-Symbole sind Polynome vom Grad $b$, $d$ bzw.~$b-d$. +Insbesondere ist auch das Nenner-Polynom vom Grad $d+(b-d)=b$. +\end{proof} + +Aus den Sätzen~\ref{buch:rekursion:hypergeometrisch:satz:fakquo} +und +\ref{buch:rekursion:hypergeometrisch:satz:binomquo} +folgt jetzt sofort, dass auch der Quotient aufeinanderfolgender +Summanden der Summe~\eqref{buch:rekursion:hypergeometrisch:eqn:Sn} +eine rationale Funktion von $k$ ist. + +% +% Die geometrische Reihe +% \subsection{Die geometrische Reihe \label{buch:rekursion:hypergeometrisch:geometrisch}} -Die besonders einfache Potenzreihe +Die Reihe \[ f(q) = \sum_{k=0}^\infty aq^k \] -heisst die {\em geometrische Reihe}. +heisst die {\em geometrische Reihe} ist besonders einfache +Reihe mit einer hypergeometrischen Folge von Termen. +\index{geometrische Reihe}% +\index{Reihe!geometrische}% Die Partialsummen \[ S_n = \sum_{k=0}^n aq^k \] -kann mit der Differenz +können aus der Differenz \begin{equation} (1-q)S_n = @@ -75,8 +168,7 @@ a\frac{1-q^{n+1}}{1-q} \label{buch:rekursion:hypergeometrisch:eqn:geomsumme} \end{equation} auflösen kann. - -Fü $q<1$ geht $q^n\to 0$ und damit konvergiert +Für $q<1$ geht $q^n\to 0$ und damit konvergiert $S_n$ gegen \[ \sum_{k=0}^\infty aq^k @@ -97,6 +189,9 @@ Die Berechnung der Summe in beruht darauf, dass die Multiplikation mit $q$ einen ``anderen'' Teil der Summe ergibt, der sich in der Differenze weghebt. +% +% Hypergeometrische Reihen +% \subsection{Hypergeometrische Reihen \label{buch:rekursion:hypergeometrisch:reihen}} Es ist plausibel, dass eine etwas lockerere Bedingung an die @@ -105,11 +200,14 @@ ermöglichen wird, interessante Aussagen über die durch die Reihe beschriebenen Funktionen zu machen. \begin{definition} -Eine Reihe +Eine durch die Reihe \[ f(x) = \sum_{k=0}^\infty a_k x^k \] -heisst {\em hypergeometrisch}, wenn der Quotient aufeinanderfolgender +definierte Funktion $f(x)$ heisst {\em hypergeometrisch}, +wenn der Quotient aufeinanderfolgender +\index{hypergeometrisch} +\index{Reihe!hypergeometrisch} Koeffizienten eine rationale Funktion von $k$ ist, wenn also \[ @@ -485,6 +583,7 @@ x\cdot \subsubsection{Trigonometrische Funktionen} +\index{trigonometrische Funktionen!als hypergeometrische Funktionen}% Die Kosinus-Funktion wurde bereits als hypergeometrische Funktion erkannt, im Folgenden soll dies auch noch für die Sinus-Funktion durchgeführt werden. @@ -586,6 +685,7 @@ x\cdot\mathstrut_0F_1\biggl( durch eine hypergeometrische Funktion ausdrücken. \subsubsection{Hyperbolische Funktionen} +\index{hyperbolische Funktionen!als hypergeometrische Funktionen}% Die für die Sinus-Funktion angewendete Methode lässt sich auch auf die Funktion \begin{align*} @@ -619,9 +719,47 @@ Dies illustriert die Rolle der hypergeometrischen Funktionen als ``grosse Vereinheitlichung'' der bekannten speziellen Funktionen. \subsubsection{Tschebyscheff-Polynome} +\index{Tschebyscheff-Polynome}% +Man kann zeigen, dass auch die Tschebyscheff-Polynome sich durch die +hypergeometrischen Funktionen +\begin{equation} +T_n(x) += +\mathstrut_2F_1\biggl( +\begin{matrix}-n,n\\\frac12\end{matrix} +; +\frac12(1-x) +\biggr) +\label{buch:rekursion:hypergeometrisch:tschebyscheff2f1} +\end{equation} +ausdrücken lassen. +Beweisen kann man diese Beziehung zum Beispiel mit Hilfe der +Differentialgleichungen, denen die Funktionen genügen. +Diese Methode wird in +Abschnitt~\ref{buch:differentialgleichungen:section:hypergeometrisch} +von Kapitel~\ref{buch:chapter:differential} vorgestellt. -TODO -\url{https://en.wikipedia.org/wiki/Chebyshev_polynomials} +Die Tschebyscheff-Polynome sind nicht die einzigen Familien von Polynomen, +\index{Tschebyscheff-Polynome!als hypergeometrische Funktion} +die sich durch $\mathstrut_pF_q$ ausdrücken lassen. +Für die zahlreichen Familien von orthogonalen Polynomen, die in +Kapitel~\ref{buch:chapter:orthogonalitaet} untersucht werden, +trifft dies auch zu. +Ein Funktion +\[ +\mathstrut_pF_q +\biggl( +\begin{matrix} +a_1,\dots,a_p\\ +b_1,\dots,b_q +\end{matrix} +;z +\biggr) +\] +ist genau dann ein Polynom, wenn mindestens einer der Parameter +$a_k$ eine negative ganze Zahl ist. +Der Grad des Polynoms ist der kleinste Betrag der negativ ganzzahligen +Werte unter den Parametern $a_k$. % % Ableitung und Stammfunktion diff --git a/buch/chapters/050-differential/hypergeometrisch.tex b/buch/chapters/050-differential/hypergeometrisch.tex index e187b68..65b3be7 100644 --- a/buch/chapters/050-differential/hypergeometrisch.tex +++ b/buch/chapters/050-differential/hypergeometrisch.tex @@ -1757,6 +1757,7 @@ T_n(x) \biggr). \end{equation} Auch die Tschebyscheff-Polynome lassen sich also mit Hilfe einer -hypergeometrischen Funktion schreiben. +hypergeometrischen Funktion schreiben, wie schon in +\eqref{buch:rekursion:hypergeometrisch:tschebyscheff2f1} +bemerkt wurde. -%\url{https://en.wikipedia.org/wiki/Chebyshev_polynomials} -- cgit v1.2.1 From 0a24e24dc7b997d054be086aa2c021decf0a01f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Fri, 17 Jun 2022 20:09:36 +0200 Subject: info on rational functions --- buch/chapters/010-potenzen/rational.tex | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/buch/chapters/010-potenzen/rational.tex b/buch/chapters/010-potenzen/rational.tex index a5612e9..f1957ac 100644 --- a/buch/chapters/010-potenzen/rational.tex +++ b/buch/chapters/010-potenzen/rational.tex @@ -15,11 +15,11 @@ für $x\to\infty$ wegen \[ \lim_{x\to\infty} a_nx^n = -\sign a_n \cdot\infty +\operatorname{sgn} a_n \cdot\infty \qquad\text{und}\qquad \lim_{x\to-\infty} a_nx^n = -(-1)^n \sign a_n\cdot \infty. +(-1)^n \operatorname{sgn} a_n\cdot \infty. \] Insbesondere kann man nicht erwarten, dass sich eine beschränkte Funktion wie $\sin x$ durch Polynome auf dem ganzen Definitionsbereich @@ -30,7 +30,7 @@ für $x\to\pm\infty$ unbeschränkt anwachsen. Eine weitere Einschränkung ist, dass die Menge der Polynome bezüglich der arithmetischen Operationen nicht abgeschlossen ist. Man kann zwar Polynome addieren und multiplizieren, aber der Quotient -ist nicht notwendigerweise ein Polynome. +ist nicht notwendigerweise ein Polynom. Abhilfe schafft nur, wenn man Quotienten von Polynomen zulässt. \begin{definition} @@ -51,6 +51,7 @@ Da sie beschränkt sein können, haben sie das Potential, beschränkte Funktionen besser zu approximieren, als dies mit Polynomen allein möglich wäre. Die Theorie der Padé-Approximation, wie sie zum Beispiel im Buch +\index{Pade-Approximation@Padé-Approximation}% \cite{buch:pade} dargestellt ist, ist zum Beispiel auch in der Regelungstechnik von Interesse, da sich rationale Funktionen mit linearen Komponenten schaltungstechnisch realisieren lassen. -- cgit v1.2.1 From 6893688fccb63844102d8f1d728302d4eb823d68 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sat, 18 Jun 2022 11:01:07 +0200 Subject: add new graphs --- buch/chapters/030-geometrie/trigonometrisch.tex | 12 +- buch/chapters/040-rekursion/gamma.tex | 130 +++++++++++++++++---- buch/chapters/040-rekursion/gammalimit/Makefile | 11 ++ buch/chapters/040-rekursion/gammalimit/l.cpp | 26 +++++ buch/chapters/040-rekursion/gammalimit/l.m | 19 +++ buch/chapters/040-rekursion/images/Makefile | 6 +- buch/chapters/040-rekursion/images/loggammaplot.m | 43 +++++++ .../chapters/040-rekursion/images/loggammaplot.pdf | Bin 0 -> 30948 bytes .../chapters/040-rekursion/images/loggammaplot.tex | 89 ++++++++++++++ 9 files changed, 309 insertions(+), 27 deletions(-) create mode 100644 buch/chapters/040-rekursion/gammalimit/Makefile create mode 100644 buch/chapters/040-rekursion/gammalimit/l.cpp create mode 100644 buch/chapters/040-rekursion/gammalimit/l.m create mode 100644 buch/chapters/040-rekursion/images/loggammaplot.m create mode 100644 buch/chapters/040-rekursion/images/loggammaplot.pdf create mode 100644 buch/chapters/040-rekursion/images/loggammaplot.tex diff --git a/buch/chapters/030-geometrie/trigonometrisch.tex b/buch/chapters/030-geometrie/trigonometrisch.tex index dc1f46a..047e6cb 100644 --- a/buch/chapters/030-geometrie/trigonometrisch.tex +++ b/buch/chapters/030-geometrie/trigonometrisch.tex @@ -167,11 +167,11 @@ und umgekehrt: \[ \sin\alpha = -\sqrt{1-\cos^2\alpha\mathstrut} +\sqrt{1-{\cos\mathstrut\!}^2\,\alpha\mathstrut} \qquad\text{und}\qquad \cos\alpha = -\sqrt{1-\sin^2\alpha\mathstrut} +\sqrt{1-{\sin\mathstrut\!}^2\,\alpha\mathstrut} \] Da sich alle Funktionen durch $\cos\alpha$ und $\sin\alpha$ ausdrücken lassen, können alle auch nur durch eine ausgedrückt werden. @@ -197,7 +197,7 @@ Tabelle~\ref{buch:geometrie:tab:trigo} zusammengestellt ist. &\displaystyle\frac{\sqrt{\csc^2\alpha-1}}{\csc\alpha} \\ \cos\alpha - &\sqrt{1-\sin^2\alpha\mathstrut} + &\sqrt{1-\sin{\!}^2\,\alpha\mathstrut} &\cos\alpha &\displaystyle\frac{1}{\sqrt{1+\tan^2\alpha}} &\displaystyle\frac{\cot\alpha}{\sqrt{1+\cot^2\alpha}} @@ -205,7 +205,7 @@ Tabelle~\ref{buch:geometrie:tab:trigo} zusammengestellt ist. &\displaystyle\frac{1}{\csc\alpha} \\ \tan\alpha - &\displaystyle\frac{\sin\alpha}{\sqrt{1-\sin^2\alpha\mathstrut}} + &\displaystyle\frac{\sin\alpha}{\sqrt{1-\sin{\!}^2\,\alpha\mathstrut}} &\displaystyle\frac{\sqrt{1-\cos^2\alpha\mathstrut}}{\cos\alpha} &\tan\alpha &\displaystyle\frac{1}{\cot\alpha} @@ -213,7 +213,7 @@ Tabelle~\ref{buch:geometrie:tab:trigo} zusammengestellt ist. &\displaystyle\sqrt{\csc^2\alpha-1} \\ \cot\alpha - &\displaystyle\frac{\sqrt{1-\sin^2\alpha\mathstrut}}{\sin\alpha} + &\displaystyle\frac{\sqrt{1-\sin{\!}^2\,\alpha\mathstrut}}{\sin\alpha} &\displaystyle\frac{\cos\alpha}{\sqrt{1-\cos^2\alpha\mathstrut}} &\displaystyle\frac{1}{\tan\alpha} &\cot\alpha @@ -229,7 +229,7 @@ Tabelle~\ref{buch:geometrie:tab:trigo} zusammengestellt ist. &\displaystyle\frac{\csc\alpha}{\sqrt{\csc^2\alpha-1}} \\ \csc\alpha - &\displaystyle\frac{1}{\sqrt{1-\sin^2\alpha\mathstrut}} + &\displaystyle\frac{1}{\sqrt{1-\sin{\!}^2\,\alpha\mathstrut}} &\displaystyle\frac{1}{\cos\alpha} &\displaystyle\sqrt{1+\tan^2\alpha} &\displaystyle\frac{\sqrt{1+\cot^2\alpha}}{\cot\alpha} diff --git a/buch/chapters/040-rekursion/gamma.tex b/buch/chapters/040-rekursion/gamma.tex index 8c02752..e4dfa9a 100644 --- a/buch/chapters/040-rekursion/gamma.tex +++ b/buch/chapters/040-rekursion/gamma.tex @@ -203,7 +203,41 @@ x\lim_{n\to\infty} Weil $n/(n+1)\to 1$ ist und die Funktion $z\mapsto z^{x-1}$ für alle nach der Definition zulässigen Werte von $x$ eine stetige Funktion ist. +% +% +% \subsubsection{Numerische Unzulänglichkeiten der Grenzwertdefinition} +\begin{table} +\centering +%\renewcommand{\arraystretch}{1.1} +\begin{tabular}{|>{$}c<{$}|>{$}r<{$}|>{$}l<{$}|>{$}l<{$}|} +\hline +\log_{10} n& n&n!n^{x-1}/(x)_n\mathstrut & \text{Fehler% +\vrule height12pt depth6pt width0pt} \\ +\hline +\text{\vrule height12pt depth0pt width0pt} + 1& 10&1.\underline{7}947392559855804&0.0222854050800643\\ + 2& 100&1.\underline{77}46707942830697&0.0022169433775536\\ + 3& 1000&1.\underline{772}6754214755178&0.0002215705700017\\ + 4& 10000&1.\underline{7724}760067171375&0.0000221558116213\\ + 5& 100000&1.\underline{77245}60664742375&0.0000022155687214\\ + 6& 1000000&1.\underline{77245}40724623101&0.0000002215567940\\ + 7& 10000000&1.\underline{7724538}730613721&0.0000000221558560\\ + 8& 100000000&1.\underline{77245385}31233258&0.0000000022178097\\ + 9& 1000000000&1.\underline{77245385}11320680&0.0000000002265519\\ + 10& 10000000000&1.\underline{772453850}9261316&0.0000000000206155\\ + 11&100000000000&1.\underline{77245385}14549788&0.0000000005494627\\ + & \infty&1.\underline{7724538509055161}& +\text{\vrule height12pt depth6pt width0pt} \\ +\hline +\end{tabular} +\caption{Numerische Berechnung mit der Grenzwertdefinition +und rekursiver Berechnung von $n!/(x)_n$ mit Hilfe der Folge +\eqref{buch:rekursion:gamma:pnfolge}. +Die Konvergenz ist sehr langsam, die Anzahl korrekter Stellen +wächst logarithmisch mit $n$. +\label{buch:rekursion:gamma:produktberechnung}} +\end{table} Die Grenzwertdefinition~\ref{buch:rekursion:gamma:def:definition} ist zwar zweifellos richtig, kann aber nicht für die numerische Berechnung der Gamma-Funktion verwendet werden. @@ -237,6 +271,24 @@ ist. Die Approximation mit Hilfe der Grenzwertdefinition kann also grundsätzlich nicht mehr als zwei korrekte Nachkommastellen liefern. +Den Quotienten $n!/(x)_n$ kann man mit Hilfe der Rekursionsformel +\begin{equation} +p_n = p_{n-1}\cdot \frac{n}{x+n-1},\qquad +p_0 = 0 +\label{buch:rekursion:gamma:pnfolge} +\end{equation} +etwas effizienter berechnen. +Insbesondere umgeht man damit das Problem, dass $n!$ den Wertebereich +des \texttt{double} Datentyps sprengt. +Der Wert der Gamma-Funktion kann dann durch $p_nn^{x-1}$ approximiert +werden. +Die Tabelle~\ref{buch:rekursion:gamma:produktberechnung} fasst die +Resultate zusammen und zeigt, dass die Konvergenz logarithmisch ist: +die Anzahl korrekter Nachkommastellen ist $\log_{10}n$. + +% +% Produktformel +% \subsection{Produktformel} Ein möglicher Ausweg aus den numerischen Schwierigkeiten mit der Grenzwertdefinition ist, den schnell wachsenden Faktor $n!$ @@ -253,8 +305,10 @@ xe^{\gamma x} \prod_{k=1}^\infty \biggl(1+\frac{x}k\biggr)\,e^{-\frac{x}{k}}, \label{buch:rekursion:gamma:eqn:produktformel} +\index{Gamma-Funktion!Produktformel}% \end{equation} wobei $\gamma$ die Euler-Mascheronische Konstante +\index{Euler-Mascheronische Konstante}% \[ \gamma = @@ -368,16 +422,20 @@ vollständig bewiesen. \begin{table} \centering -\begin{tabular}{|>{$}c<{$}|>{$}c<{$}|>{$}c<{$}|} +\begin{tabular}{|>{$}c<{$}|>{$}r<{$}|>{$}c<{$}|>{$}c<{$}|} \hline -k & \Gamma(\frac12,n) & \Gamma(\frac12) - \Gamma(\frac12,n) \\ +k & n & \Gamma(\frac12,n) & \Gamma(\frac12) - \Gamma(\frac12,n)% +\text{\vrule height12pt depth6pt width0pt} \\ \hline -1 & 1.\underline{7}518166478 & -0.0206372031 \\ -2 & 1.\underline{77}02543372 & -0.0021995137 \\ -3 & 1.\underline{772}2324556 & -0.0002213953 \\ -4 & 1.\underline{7724}316968 & -0.0000221541 \\ -5 & 1.\underline{77245}16354 & -0.0000022156 \\ -6 & 1.\underline{772453}6293 & -0.0000002216 \\ +\text{\vrule height12pt depth0pt width0pt} + 1& 10& 1.\underline{7}518166478& -0.0206372031 \\ + 2& 100& 1.\underline{77}02543372& -0.0021995137 \\ + 3& 1000& 1.\underline{772}2324556& -0.0002213953 \\ + 4& 10000& 1.\underline{7724}316968& -0.0000221541 \\ + 5& 100000& 1.\underline{77245}16354& -0.0000022156 \\ + 6&1000000& 1.\underline{772453}6293& -0.0000002216 \\ +\infty& & 1.\underline{7724538509}& +\text{\vrule height12pt depth6pt width0pt} \\ \hline \end{tabular} \caption{Werte $\Gamma(\frac12,n)$ von $\Gamma(\frac12)$ berechnet mit @@ -385,6 +443,9 @@ $n=10^k$ Faktoren der Produktformel~\eqref{buch:rekursion:gamma:eqn:produktformel} und der zugehörige Fehler. Die korrekten Nachkommastellen sind unterstrichen. +Die Konvergenz ist genau gleich langsam wie in der Berechnung mit +Hilfe der Grenzwert-Definition in +Tabelle~\ref{buch:rekursion:gamma:produktberechnung}. \label{buch:rekursion:gamma:gammatabelle}} \end{table} @@ -436,6 +497,9 @@ die richtigen Werte für natürliche Argumente hat, es wird aber auch gezeigt, dass dies nicht ausreicht um zu schliessen, dass die Integralformel mit der früher definierten Gamma-Funktion übereinstimmt. +% +% Funktionalgleichung für die Integraldefinition +% \subsubsection{Funktionalgleichung für die Integraldefinition} Tatsächlich ist es einfach nachzuprüfen, dass die Funktionalgleichung der Gamma-Funktion auch für die Definition~\ref{buch:rekursion:def:gamma} @@ -494,6 +558,9 @@ die Werte der Fakultät annimmt. \label{buch:rekursion:fig:gamma}} \end{figure} +% +% Der Wert Gamma(1/2) +% \subsubsection{Der Wert $\Gamma(\frac12)$} Die Integraldarstellung kann dazu verwendet werden, $\Gamma(\frac12)$ zu berechnen. @@ -516,7 +583,11 @@ der Gamma-Funktion und berechnen Der Integrand im letzten Integral ist die Wahrscheinlichkeitsdichte einer Normalverteilung, deren Integral wohlbekannt ist. -\subsubsection{Alternative Lösungen} +% +% Alternative Lösungen +% +\subsubsection{Alternative Lösungen der +Funktionalgleichung~\ref{buch:rekursion:eqn:gammadef}} Die Funktion $\Gamma(z)$ ist nicht die einzige Funktion, die natürlichen Zahlen die Werte $\Gamma(n+1) = n!$ der Fakultät annimmt. Indem man eine beliebige Funktion $f(z)$ addiert, die auf alle @@ -560,6 +631,9 @@ Dann ist $ f(z) = \Gamma(z) $. % XXX Gamma in the interval (1,2) %Man beachte, dass +% +% Laplace-Transformierte der Potenzfunktion +% \subsubsection{Laplace-Transformierte der Potenzfunktion} Die Integraldarstellung der Gamma-Funktion erlaubt jetzt auch, die Laplace-Transformation der Potenzfunktion zu berechnen. @@ -594,6 +668,9 @@ Durch die Substitution $st = u$ oder $t=\frac{u}{s}$ wird daraus \] \end{proof} +% +% Pol erster Ordnung bei z=0 +% \subsubsection{Pol erster Ordnung bei $z=0$} Wir haben zu prüfen, dass sowohl der Wert $\Gamma(1)$ korrekt ist als auch die Rekursionsformel~\eqref{buch:rekursion:eqn:gammadef} gilt. @@ -644,6 +721,9 @@ Daraus ergibt sich für $\Gamma(z)$ der Ausdruck \] Die Gamma-Funktion hat daher an der Stelle $z=0$ einen Pol erster Ordnung. +% +% Ausdehnung auf Re(z) < 0 +% \subsubsection{Ausdehnung auf $\operatorname{Re}z<0$} Die Integralformel konvergiert nicht für $\operatorname{Re}z\le 0$. Durch analytische Fortsetzung, wie sie im @@ -683,22 +763,29 @@ Somit hat $\Gamma(z)$ Pole erster Ordnung bei den negativen ganzen Zahlen und bei $0$, wie sie in Abbildung~\ref{buch:rekursion:fig:gamma} gezeigt werden. +% +% Numerische Berechnung +% \subsubsection{Numerische Berechnung} \begin{table} \centering -\begin{tabular}{|>{$}c<{$}|>{$}c<{$}>{$}c<{$}|} +\begin{tabular}{|>{$}c<{$}|>{$}r<{$}|>{$}c<{$}>{$}c<{$}|} \hline -k & y(10^k) & y(10^k) - \Gamma(\frac{5}{2}) \\ +k & n=10^k & y(n) & y(n) - \Gamma(\frac{5}{3})  +\text{\vrule height12pt depth6pt width0pt} \\ \hline -1 & 0.0000000000 & -0.9027452930 \\ -2 & 0.3319129461 & -0.5708323468 \\ -3 & 0.\underline{902}5209490 & -0.0002243440 \\ -4 & 0.\underline{902745}1207 & -0.0000001723 \\ -5 & 0.\underline{902745}0962 & -0.0000001968 \\ -6 & 0.\underline{902745}0962 & -0.0000001968 \\ +\text{\vrule height12pt depth0pt width0pt} +1 & 10 & 0.0000000000 & -0.9027452930 \\ +2 & 100 & 0.3319129461 & -0.5708323468 \\ +3 & 1000 & 0.\underline{902}5209490 & -0.0002243440 \\ +4 & 10000 & 0.\underline{902745}1207 & -0.0000001723 \\ +5 & 100000 & 0.\underline{902745}0962 & -0.0000001968 \\ +6 & 1000000 & 0.\underline{902745}0962 & -0.0000001968 \\ + & \infty & 0.\underline{9027452929} & +\text{\vrule height12pt depth6pt width0pt} \\ \hline \end{tabular} -\caption{Resultate der Berechnung von $\Gamma(\frac{5}{2})$ mit Hilfe +\caption{Resultate der Berechnung von $\Gamma(\frac{5}{3})$ mit Hilfe der Differentialgleichung \eqref{buch:rekursion:gamma:eqn:gammadgl}. Die korrekten Stellen sind unterstrichen. Es sind immerhin sechs korrekte Stellen gefunden, wobei nur 337 @@ -708,7 +795,7 @@ Auswertungen des Integranden notwendig waren. Im Prinzip könnte die Integraldefinition der numerischen Berechnung entgegenkommen. Um diese Hypothese zu prüfen, berechnen wir das Integral für -$z=\frac52$ mit Hilfe der äquivalenten Differentialgleichungen +$z=\frac53$ mit Hilfe der äquivalenten Differentialgleichungen \begin{equation} \dot{y}(t) = t^{z-1}e^{-t} \qquad\text{mit Anfangsbedingung $y(0)=0$}. @@ -717,10 +804,13 @@ $z=\frac52$ mit Hilfe der äquivalenten Differentialgleichungen Der gesuchte Wert ist der Grenzwert $\lim_{t\to\infty} y(t)$. In der Tabelle~\ref{buch:rekursion:gamma:table:gammaintegral} sind die Werte von $y(10^k)$ sowie die Differenzen -$y(10^k) - \Gamma(\frac{5}{2})$ zusammengefasst. +$y(10^k) - \Gamma(\frac{5}{3})$ zusammengefasst. Die Genauigkeit erreicht sechs korrekte Nachkommastellen mit nur 337 Auswertungen des Integranden. +Eine noch wesentlich effizientere Auswertung des $\Gamma$-Integrals +mit Hilfe der Gauss-Laguerre-Quadratur wird in Kapitel~\ref{chapter:laguerre} +von Patrick Müller dargestellt. % % diff --git a/buch/chapters/040-rekursion/gammalimit/Makefile b/buch/chapters/040-rekursion/gammalimit/Makefile new file mode 100644 index 0000000..0804e74 --- /dev/null +++ b/buch/chapters/040-rekursion/gammalimit/Makefile @@ -0,0 +1,11 @@ +# +# Makefile -- build gamma limit test programm +# +# (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +l: l.cpp + g++ -O2 -g -Wall `pkg-config --cflags gsl` `pkg-config --libs gsl` \ + -o l l.cpp + +test: l + ./l diff --git a/buch/chapters/040-rekursion/gammalimit/l.cpp b/buch/chapters/040-rekursion/gammalimit/l.cpp new file mode 100644 index 0000000..7a86800 --- /dev/null +++ b/buch/chapters/040-rekursion/gammalimit/l.cpp @@ -0,0 +1,26 @@ +/* + * l.cpp + * + * (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule + */ +#include +#include +#include + +int main(int argc, char *argv[]) { + double x = 0.5; + double g = tgamma(x); + printf("limit: %20.16f\n", g); + double p = 1; + long long N = 100000000000; + long long n = 10; + for (long long k = 1; k <= N; k++) { + p = p * k / (x + k - 1); + if (0 == k % n) { + double gval = p * pow(k, x-1); + printf("%12ld %20.16f %20.16f\n", k, gval, gval - g); + n = n * 10; + } + } + return EXIT_SUCCESS; +} diff --git a/buch/chapters/040-rekursion/gammalimit/l.m b/buch/chapters/040-rekursion/gammalimit/l.m new file mode 100644 index 0000000..32b6442 --- /dev/null +++ b/buch/chapters/040-rekursion/gammalimit/l.m @@ -0,0 +1,19 @@ +# +# l.m -- Berechnung der Gamma-Funktion +# +# (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +global N; +N = 10000; + +function retval = gamma(x, n) + p = 1; + for k = (1:n) + p = p * k / (x + k - 1); + end + retval = p * n^(x-1); +endfunction + +for n = (100:100:N) + printf("Gamma(%4d) = %10f\n", n, gamma(0.5, n)); +end diff --git a/buch/chapters/040-rekursion/images/Makefile b/buch/chapters/040-rekursion/images/Makefile index 86dfa1e..a1884f4 100644 --- a/buch/chapters/040-rekursion/images/Makefile +++ b/buch/chapters/040-rekursion/images/Makefile @@ -3,7 +3,7 @@ # # (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule # -all: gammaplot.pdf fibonacci.pdf order.pdf beta.pdf +all: gammaplot.pdf fibonacci.pdf order.pdf beta.pdf loggammaplot.pdf gammaplot.pdf: gammaplot.tex gammapaths.tex pdflatex gammaplot.tex @@ -29,4 +29,8 @@ beta.pdf: beta.tex betapaths.tex betapaths.tex: betadist.m octave betadist.m +loggammaplot.pdf: loggammaplot.tex loggammadata.tex + pdflatex loggammaplot.tex +loggammadata.tex: loggammaplot.m + octave loggammaplot.m diff --git a/buch/chapters/040-rekursion/images/loggammaplot.m b/buch/chapters/040-rekursion/images/loggammaplot.m new file mode 100644 index 0000000..5456e4f --- /dev/null +++ b/buch/chapters/040-rekursion/images/loggammaplot.m @@ -0,0 +1,43 @@ +# +# loggammaplot.m +# +# (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +xmax = 10; +xmin = 0.1; +N = 500; + +fn = fopen("loggammadata.tex", "w"); + +fprintf(fn, "\\def\\loggammapath{\n ({%.4f*\\dx},{%.4f*\\dy})", + xmax, log(gamma(xmax))); +xstep = (xmax - 1) / N; +for x = (xmax:-xstep:1) + fprintf(fn, "\n\t-- ({%.4f*\\dx},{%.4f*\\dy})", x, log(gamma(x))); +endfor +for k = (0:0.2:10) + x = exp(-k); + fprintf(fn, "\n\t-- ({%.4f*\\dx},{%.4f*\\dy})", x, log(gamma(x))); +endfor +fprintf(fn, "\n}\n"); + +function retval = lgp(fn, x0, name) + fprintf(fn, "\\def\\loggammaplot%s{\n", name); + fprintf(fn, "\\draw[color=red,line width=1pt] "); + for k = (-7:0.1:7) + x = x0 + 0.5 * tanh(k); + if (k > -5) + fprintf(fn, "\n\t-- "); + end + fprintf(fn, "({%.4f*\\dx},{%.4f*\\dy})", x, log(gamma(x))); + endfor + fprintf(fn, ";\n}\n"); +endfunction + +lgp(fn, -0.5, "zero"); +lgp(fn, -1.5, "one"); +lgp(fn, -2.5, "two"); +lgp(fn, -3.5, "three"); +lgp(fn, -4.5, "four"); + +fclose(fn); diff --git a/buch/chapters/040-rekursion/images/loggammaplot.pdf b/buch/chapters/040-rekursion/images/loggammaplot.pdf new file mode 100644 index 0000000..8ac9eb4 Binary files /dev/null and b/buch/chapters/040-rekursion/images/loggammaplot.pdf differ diff --git a/buch/chapters/040-rekursion/images/loggammaplot.tex b/buch/chapters/040-rekursion/images/loggammaplot.tex new file mode 100644 index 0000000..c3c17ea --- /dev/null +++ b/buch/chapters/040-rekursion/images/loggammaplot.tex @@ -0,0 +1,89 @@ +% +% tikztemplate.tex -- template for standalon tikz images +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{amsmath} +\usepackage{times} +\usepackage{txfonts} +\usepackage{pgfplots} +\usepackage{csvsimple} +\usetikzlibrary{arrows,intersections,math} +\begin{document} +\def\skala{1} +\input{loggammadata.tex} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +% add image content here + +\def\dx{1} +\def\dy{0.6} +\def\xmax{7.8} +\def\xmin{-4.9} +\def\ymax{8} +\def\ymin{-3.1} + +\fill[color=blue!20] ({\xmin*\dx},{\ymin*\dy}) rectangle ({-4*\dx},{\ymax*\dy}); +\fill[color=blue!20] ({-3*\dx},{\ymin*\dy}) rectangle ({-2*\dx},{\ymax*\dy}); +\fill[color=blue!20] ({-1*\dx},{\ymin*\dy}) rectangle ({-0*\dx},{\ymax*\dy}); + +\draw[->] ({\xmin*\dx-0.1},0) -- ({\xmax*\dx+0.3},0) + coordinate[label={$x$}]; +\draw[->] (0,{\ymin*\dy-0.1}) -- (0,{\ymax*\dy+0.3}) + coordinate[label={right:$y$}]; + +\begin{scope} +\clip ({\xmin*\dx},{\ymin*\dy}) rectangle ({\xmax*\dx},{\ymax*\dy}); + +\foreach \x in {-1,-2,-3,-4}{ + \draw[color=blue,line width=0.3pt] + ({\x*\dx},{\ymin*\dy}) -- ({\x*\dx},{\ymax*\dy}); +} + +\draw[color=red,line width=1pt] \loggammapath; + +\loggammaplotzero +\loggammaplotone +\loggammaplottwo +\loggammaplotthree +\loggammaplotfour + +\end{scope} + +\foreach \y in {0.1,10,100,1000,1000}{ + \draw[line width=0.3pt] + ({\xmin*\dx},{ln(\y)*\dy}) + -- + ({\xmax*\dx},{ln(\y)*\dy}) ; +} + +\foreach \x in {1,...,8}{ + \draw ({\x*\dx},{-0.05}) -- ({\x*\dx},{0.05}); + \node at ({\x*\dx},0) [below] {$\x$}; +} + +\foreach \x in {-1,...,-4}{ + \draw ({\x*\dx},{-0.05}) -- ({\x*\dx},{0.05}); +} +\foreach \x in {-1,...,-3}{ + \node at ({\x*\dx},0) [below right] {$\x$}; +} +\node at ({-4*\dx},0) [below left] {$-4$}; + +\def\htick#1#2{ + \draw (-0.05,{ln(#1)*\dy}) -- (0.05,{ln(#1)*\dy}); + \node at (0,{ln(#1)*\dy}) [above right] {#2}; +} + +\htick{10}{$10^1$} +\htick{100}{$10^2$} +\htick{1000}{$10^3$} +\htick{0.1}{$10^{-1}$} + +\node[color=red] at ({3*\dx},{ln(30)*\dy}) {$y=\log|\Gamma(x)|$}; + + +\end{tikzpicture} +\end{document} + -- cgit v1.2.1 From 3a95957a38a1cc8bcd865459a75cda87a2a8b56c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sat, 18 Jun 2022 21:41:57 +0200 Subject: add new image, stuff about hypergeometrich series --- buch/chapters/040-rekursion/beta.tex | 16 +- buch/chapters/040-rekursion/bohrmollerup.tex | 17 ++ buch/chapters/040-rekursion/gamma.tex | 21 ++- buch/chapters/040-rekursion/hypergeometrisch.tex | 184 +++++++++++++++++++-- buch/chapters/040-rekursion/images/0f1.cpp | 94 +++++++++++ buch/chapters/040-rekursion/images/0f1.pdf | Bin 0 -> 49497 bytes buch/chapters/040-rekursion/images/0f1.tex | 86 ++++++++++ buch/chapters/040-rekursion/images/Makefile | 12 +- .../chapters/040-rekursion/images/loggammaplot.pdf | Bin 30948 -> 30943 bytes .../chapters/040-rekursion/images/loggammaplot.tex | 2 +- .../080-funktionentheorie/gammareflektion.tex | 2 + 11 files changed, 412 insertions(+), 22 deletions(-) create mode 100644 buch/chapters/040-rekursion/images/0f1.cpp create mode 100644 buch/chapters/040-rekursion/images/0f1.pdf create mode 100644 buch/chapters/040-rekursion/images/0f1.tex diff --git a/buch/chapters/040-rekursion/beta.tex b/buch/chapters/040-rekursion/beta.tex index 13e074f..35ff758 100644 --- a/buch/chapters/040-rekursion/beta.tex +++ b/buch/chapters/040-rekursion/beta.tex @@ -8,7 +8,8 @@ Die Eulersche Integralformel für die Gamma-Funktion in Definition~\ref{buch:rekursion:def:gamma} wurde in Abschnitt~\ref{buch:subsection:integral-eindeutig} -mit dem Satz von Mollerup gerechtfertigt. +mit dem Satz~\ref{buch:satz:bohr-mollerup} +von Bohr-Mollerup gerechtfertigt. Man kann Sie aber auch als Grenzfall der Beta-Funktion verstehen, die in diesem Abschnitt dargestellt wird. @@ -31,6 +32,7 @@ B(x,y) \int_0^1 t^{x-1} (1-t)^{y-1}\,dt \] für $\operatorname{Re}x>0$, $\operatorname{Re}y>0$. +\index{Beta-Integral}% \end{definition} Aus der Definition kann man sofort ablesen, dass $B(x,y)=B(y,x)$. @@ -321,6 +323,9 @@ $(-\frac12)!$ als Wert \] der Gamma-Funktion interpretiert. +% +% Alternative Parametrisierung +% \subsubsection{Alternative Parametrisierungen} Die Substitution $t=\sin^2 s$ hat im vorangegangenen Abschnitt ermöglicht, $\Gamma(\frac12)$ zu ermitteln. @@ -383,8 +388,10 @@ wobei wir \] verwendet haben. Diese Darstellung des Beta-Integrals wird später -% XXX Ort ergänzen +in Satz~\ref{buch:funktionentheorie:satz:spiegelungsformel} dazu verwendet, die Spiegelungsformel für die Gamma-Funktion +\index{Gamma-Funktion!Spiegelungsformel}% +\index{Spiegelungsformel der Gamma-Funktion}% herzuleiten. Eine weitere mögliche Parametrisierung verwendet $t = (1+s)/2$ @@ -408,6 +415,9 @@ B(x,y) \label{buch:rekursion:gamma:beta:symm} \end{equation} +% +% +% \subsubsection{Die Verdoppelungsformel von Legendre} Die trigonometrische Substitution kann dazu verwendet werden, die Legendresche Verdoppelungsformel für die Gamma-Funktion herzuleiten. @@ -419,6 +429,8 @@ Legendresche Verdoppelungsformel für die Gamma-Funktion herzuleiten. 2^{1-2x}\sqrt{\pi} \Gamma(2x) \] +\index{Verdoppelungsformel}% +\index{Gamma-Funktion!Verdoppelungsformel von Legendre}% \end{satz} \begin{proof}[Beweis] diff --git a/buch/chapters/040-rekursion/bohrmollerup.tex b/buch/chapters/040-rekursion/bohrmollerup.tex index cd9cadc..57e503a 100644 --- a/buch/chapters/040-rekursion/bohrmollerup.tex +++ b/buch/chapters/040-rekursion/bohrmollerup.tex @@ -5,12 +5,27 @@ % \subsection{Der Satz von Bohr-Mollerup \label{buch:rekursion:subsection:bohr-mollerup}} +\begin{figure} +\centering +\includegraphics{chapters/040-rekursion/images/loggammaplot.pdf} +\caption{Der Graph der Funktion $\log|\Gamma(x)|$ ist für $x>0$ konvex. +Die blau hinterlegten Bereiche zeigen an, wo die Gamma-Funktion +negative Werte annimmt. +\label{buch:rekursion:gamma:loggammaplot}} +\end{figure} Die Integralformel und die Grenzwertdefinition für die Gamma-Funktion zeigen beide, dass das Problem der Ausdehnung der Fakultät zu einer Funktion $\mathbb{C}\to\mathbb{C}$ eine Lösung hat, aber es ist noch nicht klar, in welchem Sinn dies die einzig mögliche Lösung ist. Der Satz von Bohr-Mollerup gibt darauf eine Antwort. +Der Graph +in Abbildung~\ref{buch:rekursion:gamma:loggammaplot} +zeigt, dass die Werte der Gamma-Funktion für $x>0$ so schnell +anwachsen, dass sogar die Funktion $\log|\Gamma(x)|$ konvex ist. +Der Satz von Bohr-Mollerup besagt, dass diese Eigenschaft zur +Charakterisierung der Gamma-Funktion verwendet werden kann. + \begin{satz} \label{buch:satz:bohr-mollerup} Eine Funktion $f\colon \mathbb{R}^+\to\mathbb{R}$ mit den Eigenschaften @@ -20,6 +35,8 @@ Eine Funktion $f\colon \mathbb{R}^+\to\mathbb{R}$ mit den Eigenschaften \item die Funktion $\log f(t)$ ist konvex \end{enumerate} ist die Gamma-Funktion: $f(t)=\Gamma(t)$. +\index{Satz!von Bohr-Mollerup}% +\index{Bohr-Mollerup, Satz von}% \end{satz} Für den Beweis verwenden wir die folgende Eigenschaft einer konvexen diff --git a/buch/chapters/040-rekursion/gamma.tex b/buch/chapters/040-rekursion/gamma.tex index e4dfa9a..45acf9f 100644 --- a/buch/chapters/040-rekursion/gamma.tex +++ b/buch/chapters/040-rekursion/gamma.tex @@ -20,6 +20,8 @@ für alle natürlichen Zahlen $x\in\mathbb{N}$ definiert werden. \end{equation} Kann man eine reelle oder komplexe Funktion finden, die die Funktionalgleichung~\eqref{buch:rekursion:eqn:gammadef} +\index{Gamma-Funktion!Funktionalgleichung}% +\index{Funktionalgleichung der Gamma-Funktion}% erfüllt und damit die Fakultät auf beliebige Argumente ausdehnt? \subsection{Definition als Grenzwert} @@ -141,6 +143,8 @@ $x\in\mathbb{C}\setminus\{0,-1,-2,-3,\dots\}$ ist der Grenzwert \[ \Gamma(x) = \lim_{n\to\infty} \frac{n!\,n^{x-1}}{(x)_n}. \] +\index{Grenzwertdefinition der Gamma-Funktion}% +\index{Gamma-Funktion!Grenzwertdefinition}% \end{definition} \subsubsection{Rekursionsgleichung für $\Gamma(x)$} @@ -204,7 +208,7 @@ Weil $n/(n+1)\to 1$ ist und die Funktion $z\mapsto z^{x-1}$ für alle nach der Definition zulässigen Werte von $x$ eine stetige Funktion ist. % -% +% Numerische Unzulänglichkeit der Grenzwertdefinition % \subsubsection{Numerische Unzulänglichkeiten der Grenzwertdefinition} \begin{table} @@ -316,6 +320,8 @@ wobei $\gamma$ die Euler-Mascheronische Konstante \biggl(\sum_{k=1}^n\frac{1}{k}-\log n\biggr) \] ist. +\index{Gamma-Funktion!Produktformel}% +\index{Produktformel für die Gamma-Funkion}% \end{satz} \begin{proof}[Beweis] @@ -483,6 +489,8 @@ z \mapsto \Gamma(z) = \int_0^\infty t^{z-1}e^{-t}\,dt \] +\index{Gamma-Funktion!Integraldefinition}% +\index{Integraldefinition der Gamma-Funktion}% \end{definition} Man beachte, dass das Integral für $x=0$ nicht definiert ist, eine @@ -564,6 +572,7 @@ die Werte der Fakultät annimmt. \subsubsection{Der Wert $\Gamma(\frac12)$} Die Integraldarstellung kann dazu verwendet werden, $\Gamma(\frac12)$ zu berechnen. +\index{Gamma-Funktion!WertGamma12@Wert von $\Gamma(\frac12)$}% Dazu verwendet man die Substition $t=s^2$ in der Integraldefinition der Gamma-Funktion und berechnen \begin{align} @@ -618,6 +627,8 @@ Von Wielandt stammt das folgende, noch etwas speziellere Resultat, welches hier nicht bewiesen wird. \begin{satz}[Wielandt] +\index{Satz!von Wielandt}% +\index{Wielandt, Satz von}% Ist $f(z)$ eine für $\operatorname{Re}z>0$ definiert Funktion mit den folgenden drei Eigenschaften \begin{enumerate} @@ -637,6 +648,7 @@ Dann ist $ f(z) = \Gamma(z) $. \subsubsection{Laplace-Transformierte der Potenzfunktion} Die Integraldarstellung der Gamma-Funktion erlaubt jetzt auch, die Laplace-Transformation der Potenzfunktion zu berechnen. +\index{Laplace-Transformierte der Potenzfunktion}% \begin{satz} Die Laplace-Transformierte der Potenzfunktion $f(t)=t^\alpha$ ist @@ -672,6 +684,7 @@ Durch die Substitution $st = u$ oder $t=\frac{u}{s}$ wird daraus % Pol erster Ordnung bei z=0 % \subsubsection{Pol erster Ordnung bei $z=0$} +\index{Gamma-Funktion!Pol@Pol bei $z=0$}% Wir haben zu prüfen, dass sowohl der Wert $\Gamma(1)$ korrekt ist als auch die Rekursionsformel~\eqref{buch:rekursion:eqn:gammadef} gilt. Der Wert für $z=1$ ist @@ -725,6 +738,8 @@ Die Gamma-Funktion hat daher an der Stelle $z=0$ einen Pol erster Ordnung. % Ausdehnung auf Re(z) < 0 % \subsubsection{Ausdehnung auf $\operatorname{Re}z<0$} +\index{Gamma-Funktion!analytische Fortsetzung}% +\index{analytische Fortsetzung der Gamma-Funktion}% Die Integralformel konvergiert nicht für $\operatorname{Re}z\le 0$. Durch analytische Fortsetzung, wie sie im Abschnitt~\ref{buch:funktionentheorie:section:fortsetzung} @@ -798,9 +813,11 @@ Um diese Hypothese zu prüfen, berechnen wir das Integral für $z=\frac53$ mit Hilfe der äquivalenten Differentialgleichungen \begin{equation} \dot{y}(t) = t^{z-1}e^{-t} -\qquad\text{mit Anfangsbedingung $y(0)=0$}. +\qquad +\text{mit Anfangsbedingung $y(0)=0$}. \label{buch:rekursion:gamma:eqn:gammadgl} \end{equation} +\index{Gamma-Funktion!Loesung@Lösung mit Differentialgleichung} Der gesuchte Wert ist der Grenzwert $\lim_{t\to\infty} y(t)$. In der Tabelle~\ref{buch:rekursion:gamma:table:gammaintegral} sind die Werte von $y(10^k)$ sowie die Differenzen diff --git a/buch/chapters/040-rekursion/hypergeometrisch.tex b/buch/chapters/040-rekursion/hypergeometrisch.tex index 39efc6b..1f42ade 100644 --- a/buch/chapters/040-rekursion/hypergeometrisch.tex +++ b/buch/chapters/040-rekursion/hypergeometrisch.tex @@ -200,6 +200,7 @@ ermöglichen wird, interessante Aussagen über die durch die Reihe beschriebenen Funktionen zu machen. \begin{definition} +\label{buch:rekursion:hypergeometrisch:def:allg} Eine durch die Reihe \[ f(x) = \sum_{k=0}^\infty a_k x^k @@ -218,9 +219,13 @@ wenn also mit Polynomen $p(k)$ und $q(k)$ ist. \end{definition} +% +% Beispiele von hypergeometrischen Funktionen +% +\subsubsection{Beispiele von hypergeometrischen Funktionen} Die geometrische Reihe ist natürlich eine hypergeometrische Reihe, wobei $p(k)/q(k)=1$ ist. -Etwas interessanter ist die Exponentialfunktion, durch die Taylor-Reihe +Etwas interessanter ist die Exponentialfunktion, die durch die Taylor-Reihe \[ e^x = \sum_{k=0}^\infty \frac{x^k}{k!} \] @@ -263,7 +268,30 @@ eine rationale Funktion mit Zählergrad $0$ und Nennergrad $2$. Es gibt also eine hypergeometrische Reihe $f(z)$ derart, dass $\cos x = f(x^2)$ ist. -Seien $p(k)$ und $q(k)$ zwei Polynome derart, dass +% +% Die hypergeometrischen Funktione pFq +% +\subsubsection{Die hypergeometrischen Funktionen $\mathstrut_pF_q$} +Die Definition~\ref{buch:rekursion:hypergeometrisch:def:allg} +einer hypergeometrischen Funktion wie auch die Verschiedenartigkeit +der Beispiele kännen den Eindruck vermitteln, dass die diese Klasse +von Funktionen unübersichtlich gross sein könnte. +Dem ist jedoch nicht so. +In diesem Abschnitt soll gezeigt werden, dass alle hypergeometrischen +Funktionen durch die in +Definition~\ref{buch:rekursion:hypergeometrisch:def} definierten +Funktionen $\mathstrut_pF_q$ ausgedrückt werden. +Die hypergeometrischen Funktionen können also vollständig parametrisiert +werden. + +Zu diesem Zweick sie +\[ +f(x) += +\sum_{k=0}^\infty a_kx^k +\] +eine hypergeometrische Funktion und +seien $p(k)$ und $q(k)$ zwei Polynome derart, dass \[ \frac{a_{k+1}}{a_k} = \frac{p(k)}{q(k)}. \] @@ -299,12 +327,12 @@ Dazu nehmen wir an, dass $a_i$, $i=1,\dots,n$ die Nullstellen von $p(k)$ sind und $b_j$, $j=1,\dots,m$ die Nullstellen von $q(k)$, dass man also die Polynome als \begin{align*} -p(k) &= x(k-a_1)(k-a_2)\cdots(k-a_n) +p(k) &= s(k-a_1)(k-a_2)\cdots(k-a_n) \\ q(k) &= (k-b_1)(k-b_2)\cdots(k-b_m) \end{align*} schreiben kann. -Der Faktor $x$ ist nötig, weil die Polynome $p(k)$ und $q(k)$ nicht +Der Faktor $s$ ist nötig, weil die Polynome $p(k)$ und $q(k)$ nicht notwendigerweise normiert sind. Um das Produkt der Quotienten zu vereinfachen, nehmen wir für den Moment @@ -314,14 +342,14 @@ Dann ist nach \[ a_{k} = -x^{k} +s^{k} \frac{ (k-1-a_1) \cdots (2-a_1)(1-a_1)(0-a_1) }{ (k-1-b_1) \cdots (2-b_1)(1-b_1)(0-b_1) } = -\frac{(-a_1)_k}{(-b_1)_k} x^k. +\frac{(-a_1)_k}{(-b_1)_k} s^k. \] Die Koeffizienten können daher als Quotienten von Pochhammer-Symbolen geschrieben werden. @@ -331,13 +359,16 @@ von der Form a_k = \frac{(-a_1)_k(-a_2)_k\cdots (-a_n)_k}{(-b_1)_k(-b_2)_k\cdots(-b_m)_k} -x^ka_0. +s^ka_0. \] -Jede hypergeometrische Reihe kann daher in der Form +Jede hypergeometrische Funktion kann daher in der Form \[ +f(x) += a_0 \sum_{k=0}^\infty \frac{(-a_1)_k(-a_2)_k\cdots (-a_n)_k}{(-b_1)_k(-b_2)_k\cdots(-b_m)_k} +s^k x^k \] geschrieben werden. @@ -371,9 +402,10 @@ zusätzlichen Faktor $(1)_k$ im Zähler des Bruchs von Pochhammer-Symbolen kompensieren, wodurch sich der Grad $p$ des Zählers natürlich um $1$ erhöht. -Die oben analysierte Summe $S$ kann mit der Definition als +Die oben analysierte Summe für $f(x)$ kann mit der +Definition~\ref{buch:rekursion:hypergeometrisch:def} als \[ -S +f(x) = a_0 \cdot @@ -381,11 +413,69 @@ a_0 \begin{matrix} -a_1,-a_2,\dots,-a_n,1\\ -b_1,-b_2,\dots,-a_m -\end{matrix}; x +\end{matrix}; sx \biggr) \] beschrieben werden. +% +% Elementare Rechenregeln +% +\subsubsection{Elementare Rechenregeln} +Die Funktionen $\mathstrut_pF_q$ sind nicht alle unabhängig. +In Abschnitt~\ref{buch:rekursion:hypergeometrisch:stammableitung} +wird gezeigt werden, dass Ableitung und Stammfunktion einer hypergeometrischen +Funktion durch Manipulation der Parameter $a_k$ und $b_k$ bestimmt werden +können. +Viel einfacher sind jedoch die folgenden, aus +Definition~\ref{buch:rekursion:hypergeometrisch:def} +offensichtlichen Regeln: + +\begin{satz}[Permutationsregel] +Sei $\pi$ eine beliebige Permutation der Zahlen $1,\dots,p$ und $\sigma$ eine +beliebige Permutation der Zahlen $1,\dots,q$, dann ist +\[ +\mathstrut_pF_q\biggl( +\begin{matrix} +a_1,\dots,a_p\\b_1,\dots,a_q +\end{matrix} +;x +\biggr) += +\mathstrut_pF_q\biggl( +\begin{matrix} +a_{\pi(1)},\dots,a_{\pi(p)}\\b_{\sigma(1)},\dots,b_{\sigma(q)} +\end{matrix} +;x +\biggr). +\] +\end{satz} + +\begin{satz}[Kürzungsformel] +Stimmt einer der Koeffizienten $a_k$ mit einem der Koeffizienten $b_i$ +überein, dann können sie weggelassen werden: +\[ +\mathstrut_{p+1}F_{q+1}\biggl( +\begin{matrix} +c,a_1,\dots,a_p\\ +c,b_1,\dots,b_q +\end{matrix}; +x +\biggr) += +\mathstrut_{p}F_{q}\biggl( +\begin{matrix} +a_1,\dots,a_p\\ +b_1,\dots,b_q +\end{matrix}; +x +\biggr). +\] +\end{satz} + +% +% Beispiele von hypergeometrischen Funktionen +% \subsection{Beispiele von hypergeometrischen Funktionen \label{buch:rekursion:hypergeometrisch:beispiele}} Viele der bekannten Reihenentwicklungen häufig verwendeter Funktionen @@ -393,6 +483,9 @@ lassen sich durch die hypergeometrischen Funktionen von Definition~\ref{buch:rekursion:hypergeometrisch:def} ausdrücken. In diesem Abschnitt werden einige Beispiel dazu gegeben. +% +% Die geometrische Reihe +% \subsubsection{Die geometrische Reihe} In der geometrischen Reihe fehlt der Nenner $k!$, es braucht daher einen Term $(1)_k$ im Zähler, um den Nenner zu kompensieren. @@ -410,6 +503,9 @@ a\sum_{k=0}^\infty a\cdot\mathstrut_1F_0(1,x). \] +% +% Die Exponentialfunktion +% \subsubsection{Exponentialfunktion} Die Exponentialfunktion ist die Reihe \[ @@ -421,7 +517,10 @@ benötigt, es ist daher e^x = \mathstrut_0F_0(x). \] -\subsubsection{Wurzelfunktion} +% +% Wurzelfunktionen +% +\subsubsection{Wurzelfunktionen} Die Wurzelfunktion $x\mapsto \sqrt{x}$ hat keine Taylor-Entwicklung in $x=0$, aber die Funktion $x\mapsto\sqrt{1+x}$ hat die Taylor-Reihe \[ @@ -510,11 +609,27 @@ Die Wurzelfunktion ist daher die hypergeometrische Funktion \sqrt{1\pm x} = \sum_{k=0}^\infty -\biggl(-\frac12\biggr)_k \frac{(-x)^k}{k!} +\biggl(-\frac12\biggr)_k \frac{(\pm x)^k}{k!} = \mathstrut_1F_0(-{\textstyle\frac12};\mp x). \] +Mit der Newtonschen Binomialreihe +\begin{align*} +(1+x)^\alpha +&= +1+\alpha x + \frac{\alpha(\alpha-1)}{2!}x^2 + \frac{\alpha(\alpha-1)(\alpha-2)}{3!}x^3+\dots +\\ +&= +\sum_{k=0}^\infty \frac{(-\alpha)_k}{k!}x^k += +\mathstrut_1F_0\biggl(\begin{matrix}-\alpha\\\text{---}\end{matrix};-x\biggr) +\end{align*} +kann man ganz analog jede beliebige Wurzelfunktion +durch $\mathstrut_1F_0$ ausdrücken. +% +% Logarithmusfunktion +% \subsubsection{Logarithmusfunktion} Für $x\in (-1,1)$ konvergiert die Taylor-Reihe \[ @@ -581,7 +696,9 @@ x\cdot \mathstrut_2F_1\biggl(\begin{matrix}1,1\\2\end{matrix};-x\biggr). \] - +% +% Trigonometrische Funktionen +% \subsubsection{Trigonometrische Funktionen} \index{trigonometrische Funktionen!als hypergeometrische Funktionen}% Die Kosinus-Funktion wurde bereits als hypergeometrische Funktion erkannt, @@ -684,6 +801,9 @@ x\cdot\mathstrut_0F_1\biggl( \end{equation} durch eine hypergeometrische Funktion ausdrücken. +% +% Hyperbolische Funktionen +% \subsubsection{Hyperbolische Funktionen} \index{hyperbolische Funktionen!als hypergeometrische Funktionen}% Die für die Sinus-Funktion angewendete Methode lässt sich auch @@ -718,6 +838,9 @@ ist diese Darstellung identisch mit der von $\sin x$. Dies illustriert die Rolle der hypergeometrischen Funktionen als ``grosse Vereinheitlichung'' der bekannten speziellen Funktionen. +% +% Tschebyscheff-Polynome +% \subsubsection{Tschebyscheff-Polynome} \index{Tschebyscheff-Polynome}% Man kann zeigen, dass auch die Tschebyscheff-Polynome sich durch die @@ -761,13 +884,39 @@ $a_k$ eine negative ganze Zahl ist. Der Grad des Polynoms ist der kleinste Betrag der negativ ganzzahligen Werte unter den Parametern $a_k$. +% +% Die Funktionen 0F1 +% +\subsubsection{Die Funktionen $\mathstrut_0F_1$} +\begin{figure} +\centering +\includegraphics{chapters/040-rekursion/images/0f1.pdf} +\caption{Graphen der Funktionen $\mathstrut_0F_1(;\alpha;x)$ für +verschiedene Werte von $\alpha$. +\label{buch:rekursion:hypergeometrisch:0f1}} +\end{figure} +Die Funktionen $\mathstrut_0F_1$ sind in den Beispielen mit der +beschränkten trigonometrischen Funktion $\sin x$ und mit der +exponentiell unbeschränkten Funktion $\sinh x$ mit dem gleichen +Wert des Parameters und nur einem Wechsel des Vorzeichens des +Arguments verbunden worden. +Die Graphen der Funktionen $\mathstrut_0F_1$, die in +Abbildung~\ref{buch:rekursion:hypergeometrisch:0f1} dargestellt sind, +machen dieses Verhalten plausibel. +Es wird sich später zeigen, dass $\mathstrut_0F_1$ auch mit den Bessel- +und den Airy-Funktionen verwandt sind. + + % % Ableitung und Stammfunktion % -\subsection{Ableitung und Stammfunktion hypergeometrischer Funktionen} +\subsection{Ableitung und Stammfunktion hypergeometrischer Funktionen +\label{buch:rekursion:hypergeometrisch:stammableitung}} Sowohl Ableitung wie auch Stammfunktion einer hypergeometrischen Funktion lässt sich immer durch hypergeometrische Reihen ausdrücken. - +% +% Ableitung +% \subsubsection{Ableitung} Wir gehen aus von der Funktion \begin{equation} @@ -909,6 +1058,9 @@ Funktion $\mathstrut_0F_1$ überein, es ist also wie erwartet} \end{align*} \end{beispiel} +% +% Stammfunktion +% \subsubsection{Stammfunktion} Eine Stammfunktion kann man auf die gleiche Art und Weise wie die Ableitung finden. diff --git a/buch/chapters/040-rekursion/images/0f1.cpp b/buch/chapters/040-rekursion/images/0f1.cpp new file mode 100644 index 0000000..24ca3f1 --- /dev/null +++ b/buch/chapters/040-rekursion/images/0f1.cpp @@ -0,0 +1,94 @@ +/* + * 0f1.cpp + * + * (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule + */ +#include +#include +#include +#include +#include +#include +#include + +static int N = 100; +static double xmin = -50; +static double xmax = 30; +static int points = 200; + +double f(double b, double x) { + double s = 1; + double p = 1; + for (int k = 1; k < N; k++) { + p = p * x / (k * (b + k - 1.)); + s += p; + } + return s; +} + +typedef std::pair point_t; + +point_t F(double b, double x) { + return std::make_pair(x, f(b, x)); +} + +std::string ff(double f) { + if (f > 1000) { f = 1000; } + if (f < -1000) { f = -1000; } + char b[128]; + snprintf(b, sizeof(b), "%.4f", f); + return std::string(b); +} + +std::ostream& operator<<(std::ostream& out, const point_t& p) { + char b[128]; + out << "({" << ff(p.first) << "*\\dx},{" << ff(p.second) << "*\\dy})"; + return out; +} + +void curve(std::ostream& out, double b, const std::string& name) { + double h = (xmax - xmin) / points; + out << "\\def\\kurve" << name << "{"; + out << std::endl << "\t" << F(b, xmin); + for (int i = 1; i <= points; i++) { + double x = xmin + h * i; + out << std::endl << "\t-- " << F(b, x); + } + out << std::endl; + out << "}" << std::endl; +} + +int main(int argc, char *argv[]) { + std::ofstream out("0f1data.tex"); + + double s = 13/(xmax-xmin); + out << "\\def\\dx{" << ff(s) << "}" << std::endl; + out << "\\def\\dy{" << ff(s) << "}" << std::endl; + out << "\\def\\xmin{" << ff(s * xmin) << "}" << std::endl; + out << "\\def\\xmax{" << ff(s * xmax) << "}" << std::endl; + + curve(out, 0.5, "one"); + curve(out, 1.5, "two"); + curve(out, 2.5, "three"); + curve(out, 3.5, "four"); + curve(out, 4.5, "five"); + curve(out, 5.5, "six"); + curve(out, 6.5, "seven"); + curve(out, 7.5, "eight"); + curve(out, 8.5, "nine"); + curve(out, 9.5, "ten"); + + curve(out,-0.5, "none"); + curve(out,-1.5, "ntwo"); + curve(out,-2.5, "nthree"); + curve(out,-3.5, "nfour"); + curve(out,-4.5, "nfive"); + curve(out,-5.5, "nsix"); + curve(out,-6.5, "nseven"); + curve(out,-7.5, "neight"); + curve(out,-8.5, "nnine"); + curve(out,-9.5, "nten"); + + out.close(); + return EXIT_SUCCESS; +} diff --git a/buch/chapters/040-rekursion/images/0f1.pdf b/buch/chapters/040-rekursion/images/0f1.pdf new file mode 100644 index 0000000..2c35813 Binary files /dev/null and b/buch/chapters/040-rekursion/images/0f1.pdf differ diff --git a/buch/chapters/040-rekursion/images/0f1.tex b/buch/chapters/040-rekursion/images/0f1.tex new file mode 100644 index 0000000..1bc8b87 --- /dev/null +++ b/buch/chapters/040-rekursion/images/0f1.tex @@ -0,0 +1,86 @@ +% +% 0f1.tex -- template for standalon tikz images +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{amsmath} +\usepackage{times} +\usepackage{txfonts} +\usepackage{pgfplots} +\usepackage{csvsimple} +\usetikzlibrary{arrows,intersections,math} +\begin{document} +\def\skala{1} +\input{0f1data.tex} +\definecolor{darkgreen}{rgb}{0,0.6,0} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +\begin{scope} +\clip (\xmin,-1) rectangle (\xmax,5); +\draw[color=blue!5!red,line width=1.4pt] \kurveone; +\draw[color=blue!16!red,line width=1.4pt] \kurvetwo; +\draw[color=blue!26!red,line width=1.4pt] \kurvethree; +\draw[color=blue!37!red,line width=1.4pt] \kurvefour; +\draw[color=blue!47!red,line width=1.4pt] \kurvefive; +\draw[color=blue!57!red,line width=1.4pt] \kurvesix; +\draw[color=blue!68!red,line width=1.4pt] \kurveseven; +\draw[color=blue!78!red,line width=1.4pt] \kurveeight; +\draw[color=blue!89!red,line width=1.4pt] \kurvenine; +\draw[color=blue!100!red,line width=1.4pt] \kurveten; +\def\ds{0.4} +\begin{scope}[yshift=0.5cm] +\node[color=blue!5!red] at (\xmin,{1*\ds}) [right] {$\alpha=0.5$}; +\node[color=blue!16!red] at (\xmin,{2*\ds}) [right] {$\alpha=1.5$}; +\node[color=blue!26!red] at (\xmin,{3*\ds}) [right] {$\alpha=2.5$}; +\node[color=blue!37!red] at (\xmin,{4*\ds}) [right] {$\alpha=2.5$}; +\node[color=blue!47!red] at (\xmin,{5*\ds}) [right] {$\alpha=3.5$}; +\node[color=blue!57!red] at (\xmin,{6*\ds}) [right] {$\alpha=5.5$}; +\node[color=blue!68!red] at (\xmin,{7*\ds}) [right] {$\alpha=6.5$}; +\node[color=blue!78!red] at (\xmin,{8*\ds}) [right] {$\alpha=7.5$}; +\node[color=blue!89!red] at (\xmin,{9*\ds}) [right] {$\alpha=8.5$}; +\node[color=blue!100!red]at (\xmin,{10*\ds}) [right] {$\alpha=9.5$}; +\end{scope} +\node at (-1.7,4.5) {$\displaystyle +y=\mathstrut_0F_1\biggl(\begin{matrix}\text{---}\\\alpha\end{matrix};x\biggr)$}; +\end{scope} + +\draw[->] (\xmin-0.2,0) -- (\xmax+0.3,0) coordinate[label=$x$]; +\draw[->] (0,-0.5) -- (0,5.3) coordinate[label={right:$y$}]; + +\begin{scope}[yshift=-6.5cm] +\begin{scope} +\clip (\xmin,-5) rectangle (\xmax,5); + +\draw[color=darkgreen!5!red,line width=1.4pt] \kurvenone; +\draw[color=darkgreen!16!red,line width=1.4pt] \kurventwo; +\draw[color=darkgreen!26!red,line width=1.4pt] \kurventhree; +\draw[color=darkgreen!37!red,line width=1.4pt] \kurvenfour; +\draw[color=darkgreen!47!red,line width=1.4pt] \kurvenfive; +\draw[color=darkgreen!57!red,line width=1.4pt] \kurvensix; +\draw[color=darkgreen!68!red,line width=1.4pt] \kurvenseven; +\draw[color=darkgreen!78!red,line width=1.4pt] \kurveneight; +\draw[color=darkgreen!89!red,line width=1.4pt] \kurvennine; +\draw[color=darkgreen!100!red,line width=1.4pt] \kurventen; +\end{scope} + +\draw[->] (\xmin-0.2,0) -- (\xmax+0.3,0) coordinate[label=$x$]; +\draw[->] (0,-5.2) -- (0,5.3) coordinate[label={right:$y$}]; +\def\ds{-0.4} +\begin{scope}[yshift=-0.5cm] +\node[color=darkgreen!5!red] at (\xmax,{1*\ds}) [left] {$\alpha=-0.5$}; +\node[color=darkgreen!16!red] at (\xmax,{2*\ds}) [left] {$\alpha=-1.5$}; +\node[color=darkgreen!26!red] at (\xmax,{3*\ds}) [left] {$\alpha=-2.5$}; +\node[color=darkgreen!37!red] at (\xmax,{4*\ds}) [left] {$\alpha=-2.5$}; +\node[color=darkgreen!47!red] at (\xmax,{5*\ds}) [left] {$\alpha=-3.5$}; +\node[color=darkgreen!57!red] at (\xmax,{6*\ds}) [left] {$\alpha=-5.5$}; +\node[color=darkgreen!68!red] at (\xmax,{7*\ds}) [left] {$\alpha=-6.5$}; +\node[color=darkgreen!78!red] at (\xmax,{8*\ds}) [left] {$\alpha=-7.5$}; +\node[color=darkgreen!89!red] at (\xmax,{9*\ds}) [left] {$\alpha=-8.5$}; +\node[color=darkgreen!100!red]at (\xmax,{10*\ds}) [left] {$\alpha=-9.5$}; +\end{scope} +\end{scope} + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/040-rekursion/images/Makefile b/buch/chapters/040-rekursion/images/Makefile index a1884f4..54ed23b 100644 --- a/buch/chapters/040-rekursion/images/Makefile +++ b/buch/chapters/040-rekursion/images/Makefile @@ -3,7 +3,8 @@ # # (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule # -all: gammaplot.pdf fibonacci.pdf order.pdf beta.pdf loggammaplot.pdf +all: gammaplot.pdf fibonacci.pdf order.pdf beta.pdf loggammaplot.pdf \ + 0f1.pdf gammaplot.pdf: gammaplot.tex gammapaths.tex pdflatex gammaplot.tex @@ -34,3 +35,12 @@ loggammaplot.pdf: loggammaplot.tex loggammadata.tex loggammadata.tex: loggammaplot.m octave loggammaplot.m + +0f1: 0f1.cpp + g++ -O -Wall -g -o 0f1 0f1.cpp + +0f1data.tex: 0f1 + ./0f1 + +0f1.pdf: 0f1.tex 0f1data.tex + pdflatex 0f1.tex diff --git a/buch/chapters/040-rekursion/images/loggammaplot.pdf b/buch/chapters/040-rekursion/images/loggammaplot.pdf index 8ac9eb4..a2963f2 100644 Binary files a/buch/chapters/040-rekursion/images/loggammaplot.pdf and b/buch/chapters/040-rekursion/images/loggammaplot.pdf differ diff --git a/buch/chapters/040-rekursion/images/loggammaplot.tex b/buch/chapters/040-rekursion/images/loggammaplot.tex index c3c17ea..8ca4e1c 100644 --- a/buch/chapters/040-rekursion/images/loggammaplot.tex +++ b/buch/chapters/040-rekursion/images/loggammaplot.tex @@ -19,7 +19,7 @@ \def\dx{1} \def\dy{0.6} -\def\xmax{7.8} +\def\xmax{8} \def\xmin{-4.9} \def\ymax{8} \def\ymin{-3.1} diff --git a/buch/chapters/080-funktionentheorie/gammareflektion.tex b/buch/chapters/080-funktionentheorie/gammareflektion.tex index 537fd96..017c850 100644 --- a/buch/chapters/080-funktionentheorie/gammareflektion.tex +++ b/buch/chapters/080-funktionentheorie/gammareflektion.tex @@ -12,12 +12,14 @@ die durch Spiegelung an der Geraden $\operatorname{Re}x=\frac12$ auseinander hervorgehen, und einem speziellen Beta-Integral her. \begin{satz} +\label{buch:funktionentheorie:satz:spiegelungsformel} Für $0 Date: Mon, 20 Jun 2022 10:58:52 +0200 Subject: fix some typos --- buch/chapters/040-rekursion/hypergeometrisch.tex | 83 +++++++++++++++------- .../chapters/040-rekursion/uebungsaufgaben/404.tex | 2 +- .../050-differential/potenzreihenmethode.tex | 4 +- 3 files changed, 61 insertions(+), 28 deletions(-) diff --git a/buch/chapters/040-rekursion/hypergeometrisch.tex b/buch/chapters/040-rekursion/hypergeometrisch.tex index 1f42ade..3b72ffa 100644 --- a/buch/chapters/040-rekursion/hypergeometrisch.tex +++ b/buch/chapters/040-rekursion/hypergeometrisch.tex @@ -432,9 +432,10 @@ Definition~\ref{buch:rekursion:hypergeometrisch:def} offensichtlichen Regeln: \begin{satz}[Permutationsregel] +\label{buch:rekursion:hypergeometrisch:satz:permuationsregel} Sei $\pi$ eine beliebige Permutation der Zahlen $1,\dots,p$ und $\sigma$ eine beliebige Permutation der Zahlen $1,\dots,q$, dann ist -\[ +\begin{equation} \mathstrut_pF_q\biggl( \begin{matrix} a_1,\dots,a_p\\b_1,\dots,a_q @@ -448,13 +449,15 @@ a_{\pi(1)},\dots,a_{\pi(p)}\\b_{\sigma(1)},\dots,b_{\sigma(q)} \end{matrix} ;x \biggr). -\] +\label{buch:rekursion:hypergeometrisch:eqn:permuationsregel} +\end{equation} \end{satz} \begin{satz}[Kürzungsformel] +\label{buch:rekursion:hypergeometrisch:satz:kuerzungsregel} Stimmt einer der Koeffizienten $a_k$ mit einem der Koeffizienten $b_i$ überein, dann können sie weggelassen werden: -\[ +\begin{equation} \mathstrut_{p+1}F_{q+1}\biggl( \begin{matrix} c,a_1,\dots,a_p\\ @@ -470,7 +473,8 @@ b_1,\dots,b_q \end{matrix}; x \biggr). -\] +\label{buch:rekursion:hypergeometrisch:eqn:kuerzungsregel} +\end{equation} \end{satz} % @@ -613,19 +617,25 @@ Die Wurzelfunktion ist daher die hypergeometrische Funktion = \mathstrut_1F_0(-{\textstyle\frac12};\mp x). \] -Mit der Newtonschen Binomialreihe +Mit der Newtonschen Binomialreihe, die in +Abschnitt~\ref{buch:differentialgleichungen:subsection:newtonschereihe} +hergleitet wird, +kann man ganz analog jede beliebige Wurzelfunktion \begin{align*} (1+x)^\alpha &= 1+\alpha x + \frac{\alpha(\alpha-1)}{2!}x^2 + \frac{\alpha(\alpha-1)(\alpha-2)}{3!}x^3+\dots -\\ -&= +%\\ +%& += \sum_{k=0}^\infty \frac{(-\alpha)_k}{k!}x^k = \mathstrut_1F_0\biggl(\begin{matrix}-\alpha\\\text{---}\end{matrix};-x\biggr) \end{align*} -kann man ganz analog jede beliebige Wurzelfunktion durch $\mathstrut_1F_0$ ausdrücken. +Dieses Resultat ist der Inhalt von +Satz~\ref{buch:differentialgleichungen:satz:newtonschereihe} + % % Logarithmusfunktion @@ -725,7 +735,7 @@ x f(-x^2). Die Funktion $f(z)$ soll jetzt als hypergeometrische Funktion geschrieben werden. Dazu muss zunächst wieder der Nenner $k!$ wiederhergestellt werden: -\[ +\begin{equation*} f(z) = 1 @@ -737,7 +747,7 @@ f(z) \frac{3!}{7!}\cdot \frac{z^3}{3!} + \dots -\] +\end{equation*} Die Koeffizienten $k!/(2k+1)!$ müssen jetzt durch Pochhammer-Symbole mit jeweils $k$ Faktoren ausgedrückt werden. Dazu muss die Fakultät $(2k+1)!$ in zwei Produkte @@ -777,15 +787,27 @@ müssen wird mit $2^{2k}$ kompensieren: (1)_k\cdot \biggl(\frac{3}{2}\biggr)_k \end{align*} Setzt man dies in die Reihe ein, wird -\[ +\begin{equation} f(z) = \sum_{k=0}^\infty \frac{(1)_k}{(1)_k\cdot (\frac{3}{2})_k\cdot 4^k} z^k = -\mathstrut_1F_2\biggl(1;1,\frac{3}{2};\frac{z}4\biggr). -\] +\mathstrut_1F_2\biggl( +\begin{matrix}1\\1,\frac{3}{2}\end{matrix};\frac{z}4 +\biggr) += +\mathstrut_0F_1\biggl( +\begin{matrix}\text{---}\\\frac{3}{2}\end{matrix};\frac{z}4 +\biggr). +\label{buch:rekursion:hyperbolisch:eqn:hilfsfunktionf} +\end{equation} +Im letzten Schritt wurde die Kürzungsregel +\eqref{buch:rekursion:hypergeometrisch:eqn:kuerzungsregel} +von +Satz~\ref{buch:rekursion:hypergeometrisch:satz:kuerzungsregel} +angewendet. Damit lässt sich die Sinus-Funktion als \begin{equation} \sin x @@ -812,21 +834,24 @@ auf die Funktion \sinh x &= \sum_{k=0}^\infty \frac{x^{2k+1}}{(2k+1)!} -\\ -&= +%\\ +%& += x \, \biggl( 1+\frac{x^2}{3!} + \frac{x^4}{5!}+\frac{x^6}{7!}+\dots \biggr) -\\ +\intertext{Die Reihe in der Klammer lässt sich mit der Funktion +$f$ von \eqref{buch:rekursion:hyperbolisch:eqn:hilfsfunktionf} +schreiben als} &= -xf(-x^2) -= -x\,\mathstrut_1F_2\biggl( -\begin{matrix}1\\1,\frac{3}{2}\end{matrix} -;\frac{x^2}{4} -\biggr) +x\,f(-x^2) +%= +%x\cdot\mathstrut_1F_2\biggl( +%\begin{matrix}1\\1,\frac{3}{2}\end{matrix} +%;\frac{x^2}{4} +%\biggr) = x\cdot\mathstrut_0F_1\biggl( \begin{matrix}\text{---}\\\frac{3}{2}\end{matrix} @@ -1030,7 +1055,7 @@ Damit kann jetzt die Kosinus-Funktion als \frac{1}{(\frac12)_k} \frac{1}{k!}\biggl(\frac{-x^2}{4}\biggr)^k = -\mathstrut_0F_1\biggl(;\frac12;-\frac{x^2}4\biggr) +\mathstrut_0F_1\biggl(\begin{matrix}\text{---}\\\frac12\end{matrix};-\frac{x^2}4\biggr) \end{align*} geschrieben werden kann. @@ -1039,16 +1064,22 @@ Die Ableitung der Kosinus-Funktion ist daher \frac{d}{dx} \cos x &= \frac{d}{dx} -\mathstrut_0F_1\biggl(;\frac12;-\frac{x^2}4\biggr) +\mathstrut_0F_1\biggl( +\begin{matrix}\text{---}\\\frac12\end{matrix};-\frac{x^2}4 +\biggr) = \frac{1}{\frac12} \, -\mathstrut_0F_1\biggl(;\frac32;-\frac{x^2}4\biggr) +\mathstrut_0F_1\biggl( +\begin{matrix}\text{---}\\\frac32\end{matrix};-\frac{x^2}4 +\biggr) \cdot\biggl(-\frac{x}2\biggr) = -x \cdot -\mathstrut_0F_1\biggl(;\frac32;-\frac{x^2}4\biggr) +\mathstrut_0F_1\biggl( +\begin{matrix}\text{---}\\\frac32\end{matrix};-\frac{x^2}4 +\biggr) \intertext{Dies stimmt mit der in \eqref{buch:rekursion:hypergeometrisch:eqn:sinhyper} gefundenen Darstellung der Sinusfunktion mit Hilfe der hypergeometrischen diff --git a/buch/chapters/040-rekursion/uebungsaufgaben/404.tex b/buch/chapters/040-rekursion/uebungsaufgaben/404.tex index f9d014e..5d76598 100644 --- a/buch/chapters/040-rekursion/uebungsaufgaben/404.tex +++ b/buch/chapters/040-rekursion/uebungsaufgaben/404.tex @@ -1,5 +1,5 @@ Finden Sie einen einfachen Ausdruck für $(\frac12)_n$, der nur -Fakultäten und andere elmentare Funktionen verwendet. +Fakultäten und andere elementare Funktionen verwendet. \begin{loesung} Das Pochhammer-Symbol $(\frac12)_n$ kann wie folgt durch bekanntere diff --git a/buch/chapters/050-differential/potenzreihenmethode.tex b/buch/chapters/050-differential/potenzreihenmethode.tex index 2d95fb2..e6613dd 100644 --- a/buch/chapters/050-differential/potenzreihenmethode.tex +++ b/buch/chapters/050-differential/potenzreihenmethode.tex @@ -176,7 +176,8 @@ b_2\,2!\,a_{2+k} + b_1\, a_{1+k} + b_0\, a_k % % Die Newtonsche Reihe % -\subsection{Die Newtonsche Reihe} +\subsection{Die Newtonsche Reihe +\label{buch:differentialgleichungen:subsection:newtonschereihe}} Wir lösen die Differentialgleichung~\eqref{buch:differentialgleichungen:eqn:wurzeldgl1} mit der Anfangsbedingung $y(t)=1$ mit der Potenzreihenmethode. @@ -333,6 +334,7 @@ wir die Darstellung Damit haben wir den folgenden Satz gezeigt. \begin{satz} +\label{buch:differentialgleichungen:satz:newtonschereihe} Die Newtonsche Reihe für $(1-t)^\alpha$ ist der Wert \[ (1-t)^\alpha -- cgit v1.2.1 From 9f8e0b23aa9897b429ef997d7de8224844b60880 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 20 Jun 2022 21:27:44 +0200 Subject: fix all the Bessel stuff --- buch/chapters/040-rekursion/gamma.tex | 46 +++- buch/chapters/050-differential/bessel.tex | 277 +++++++++++++++++---- .../chapters/050-differential/hypergeometrisch.tex | 2 +- buch/chapters/070-orthogonalitaet/bessel.tex | 3 +- buch/chapters/070-orthogonalitaet/chapter.tex | 58 ++++- .../070-orthogonalitaet/gaussquadratur.tex | 5 +- buch/chapters/070-orthogonalitaet/legendredgl.tex | 31 ++- buch/chapters/070-orthogonalitaet/orthogonal.tex | 8 +- buch/chapters/070-orthogonalitaet/rekursion.tex | 41 ++- buch/chapters/070-orthogonalitaet/rodrigues.tex | 145 ++++++++--- buch/chapters/070-orthogonalitaet/sturm.tex | 45 +++- .../chapters/080-funktionentheorie/anwendungen.tex | 1 + .../080-funktionentheorie/singularitaeten.tex | 3 +- 13 files changed, 555 insertions(+), 110 deletions(-) diff --git a/buch/chapters/040-rekursion/gamma.tex b/buch/chapters/040-rekursion/gamma.tex index 45acf9f..2b0700e 100644 --- a/buch/chapters/040-rekursion/gamma.tex +++ b/buch/chapters/040-rekursion/gamma.tex @@ -73,6 +73,9 @@ gilt. Der Plan ist, dies so umzuformen, dass man für $x$ eine beliebige komplexe Zahl einsetzen kann. +% +% Pochhammer-Symbol +% \subsubsection{Pochhammer-Symbol} Die spezielle Form des Nenners und des zweiten Faktors im Zähler von \eqref{buch:rekursion:gamma:eqn:fakultaet} @@ -115,6 +118,9 @@ x! Der erste Faktor in diesem Ausdruck enthält jetzt nur noch Dinge, die für beliebige $x\in\mathbb{C}$ definiert sind. +% +% Grenwertdefinition +% \subsubsection{Grenzwertdefinition} Der zweite Bruch in \eqref{buch:rekursion:gamma:eqn:produkt3} besteht aus Termen, die zwar nur für natürliches $x$ definiert sind, @@ -147,6 +153,9 @@ $x\in\mathbb{C}\setminus\{0,-1,-2,-3,\dots\}$ ist der Grenzwert \index{Gamma-Funktion!Grenzwertdefinition}% \end{definition} +% +% Rekursionsgleichung für Gamma(x) +% \subsubsection{Rekursionsgleichung für $\Gamma(x)$} Es ist aus der Herleitung klar, dass $\Gamma(n)=(n-1)!$ sein muss. Wir sollten dies aber auch direkt aus der @@ -199,14 +208,49 @@ x\lim_{n\to\infty} \frac{n^{x-1}}{(n+1)^{x-1}} \\ &= +x \Gamma(x) \lim_{n\to\infty} \biggl(\frac{n}{n+1}\biggr)^{x-1} = -\Gamma(x), +x\Gamma(x), \end{align*} Weil $n/(n+1)\to 1$ ist und die Funktion $z\mapsto z^{x-1}$ für alle nach der Definition zulässigen Werte von $x$ eine stetige Funktion ist. +% +% Gamma-Funktion und Pochhammer-Symbol +% +\subsubsection{Gamma-Funktion und Pochhammer-Symbol} +Durch Iteration der Rekursionsformel für $\Gamma(x)$ folgt jetzt +\begin{align*} +\Gamma(x+n) +&= +(x+n-1) \Gamma(x+n-1) +\\ +&= +(x+n-1)(x+n-2)\Gamma(x+n-2) +\\ +&= +\underbrace{ +(x+n-1)(x+n-2)\cdots(x-1)(x) +}_{\text{$n$ Faktoren}} \Gamma(x) +\\ +&=(x)_n \Gamma(x). +\end{align*} +Damit folgt + +\begin{satz} +\label{buch:rekursion:gamma:satz:gamma-pochhammer} +Die Rekursionsformel für die Gamma-Funktion kann geschrieben werden als +\[ +\Gamma(x+n) = (x)_n \Gamma(x). +\] +Das Pochhammer-Symbol $(x)_n$ ist für alle natürlichen $n$ gegeben durch +\[ +(x)_n = \frac{\Gamma(x+n)}{\Gamma(x)}. +\] +\end{satz} + % % Numerische Unzulänglichkeit der Grenzwertdefinition % diff --git a/buch/chapters/050-differential/bessel.tex b/buch/chapters/050-differential/bessel.tex index 383c360..a3237fe 100644 --- a/buch/chapters/050-differential/bessel.tex +++ b/buch/chapters/050-differential/bessel.tex @@ -18,6 +18,9 @@ die sich durch bekannte Funktionen ausdrücken lassen, es ist also nötig, eine neue Familie von speziellen Funktionen zu definieren, die Bessel-Funktionen. +% +% Besselsche Differentialgleichung +% \subsection{Die Besselsche Differentialgleichung} % XXX Wo taucht diese Gleichung auf Die Besselsche Differentialgleichung ist die Differentialgleichung @@ -30,6 +33,9 @@ für eine auf dem Interval $[0,\infty)$ definierte Funktion $y(x)$. Der Parameter $\alpha$ ist eine beliebige komplexe Zahl $\alpha\in \mathbb{C}$, die Lösungsfunktionen hängen daher von $\alpha$ ab. +% +% Eigenwertproblem +% \subsubsection{Eigenwertproblem} Die Besselsche Differentialgleichung \eqref{buch:differentialgleichungen:eqn:bessel} @@ -46,12 +52,15 @@ erfüllt \[ By = -x^2y''+xy+x^2y +x^2y''+xy'+x^2y =\alpha^2 y, \] ist also eine Eigenfunktion des Bessel-Operators zum Eigenwert $\alpha^2$. +% +% Indexgleichung +% \subsubsection{Indexgleichung} Die Besselsche Differentialgleichung ist eine Differentialgleichung der Art~\eqref{buch:differentialgleichungen:eqn:dglverallg} mit @@ -117,8 +126,9 @@ Nur eine Lösung kann man finden, wenn \] ist. - - +% +% Bessel-Funktionen erster Art +% \subsection{Bessel-Funktionen erster Art} Für $\alpha \ge 0$ gibt es immer mindestens eine Lösung der Besselgleichung als verallgemeinerte Potenzreihe mit $\varrho=\alpha$. @@ -138,6 +148,9 @@ Da $F(\varrho+1)\ne 0$ ist, folgt dass $a_1=0$ sein muss. % Fall n=1 gesondert behandeln +% +% Der allgemeine Fall +% \subsubsection{Der allgemeine Fall} Für die höheren Potenzen $n>1$ wird die Rekursionsformel für die Koeffizienten $a_n$ der verallgemeinerten Potenzreihe @@ -201,10 +214,11 @@ x^\varrho\biggl( x^\varrho \sum_{k=0}^\infty \frac{1}{(\varrho+1)_k} \frac{(-x^2/4)}{k!} = +x^\varrho +\cdot \mathstrut_0F_1\biggl(;\varrho+1;-\frac{x^2}{4}\biggr) \end{align*} -Falls also $\alpha$ kein ganzzahliges Vielfaches von $\frac12$ ist, finden -wir zwei Lösungsfunktionen +Wir finden also zwei Lösungsfunktionen \begin{align} y_1(x) %J_\alpha(x) @@ -214,8 +228,10 @@ x^{\alpha\phantom{-}} \frac{1}{(\alpha+1)_k} \frac{(-x^2/4)^k}{k!} = +x^\alpha +\cdot \mathstrut_0F_1\biggl(;\alpha+1;-\frac{x^2}{4}\biggr), -\label{buch:differentialgleichunge:bessel:erste} +\label{buch:differentialgleichunge:bessel:eqn:erste} \\ y_2(x) %J_{-\alpha}(x) @@ -223,32 +239,50 @@ y_2(x) x^{-\alpha} \sum_{k=0}^\infty \frac{1}{(-\alpha+1)_k} \frac{(-x^2/4)^k}{k!} = +x^{-\alpha} +\cdot \mathstrut_0F_1\biggl(;-\alpha+1;-\frac{x^2}{4}\biggr). -\label{buch:differentialgleichunge:bessel:zweite} +\label{buch:differentialgleichunge:bessel:eqn:zweite} \end{align} +Man beachte, dass die zweite Lösung für ganzzahliges $\alpha>0$ nicht +definiert ist. +Man kann auch direkt nachrechnen, dass diese Funktionen Lösungen +der Besselschen Differentialgleichung sind. +% +% Bessel-Funktionen +% \subsubsection{Bessel-Funktionen} Da die Besselsche Differentialgleichung linear ist, ist auch jede Linearkombination der Funktionen -\eqref{buch:differentialgleichunge:bessel:erste} +\eqref{buch:differentialgleichunge:bessel:eqn:erste} und -\eqref{buch:differentialgleichunge:bessel:zweite} +\eqref{buch:differentialgleichunge:bessel:eqn:zweite} eine Lösung. -Man kann zum Beispiel das Pochhammer-Symbol im Nenner loswerden, -wenn man im Nenner mit $\Gamma(\alpha+1)$ -multipliziert: +Satz~\ref{buch:rekursion:gamma:satz:gamma-pochhammer} +ermöglicht, das Pochhammer-Symbol durch Werte der Gamma-Funktion +wie in \[ -\frac{(1/2)^\alpha}{\Gamma(\alpha+1)} +(\alpha+1)_n = \frac{\Gamma(\alpha+k+1)}{\Gamma(\alpha+1)} +\] +auszudrücken. +Damit wird +\begin{align} y_1(x) +&= +x^\alpha +\sum_{k=0}^\infty +\frac{\Gamma(\alpha+1)}{\Gamma(\alpha+k+1)} +\frac{(-x^2/4)^k}{k!} = +\Gamma(\alpha+1) 2^{\alpha} \biggl(\frac{x}{2}\biggr)^\alpha \sum_{k=0}^\infty -\frac{(-1)^k}{k!\,\Gamma(\alpha+k+1)} -\biggl(\frac{x}{2}\biggr)^{2k}. -\] -Dabei haben wir es durch -Multiplikation mit $(\frac12)^\alpha$ auch geschafft, die Funktion -einheitlich als Funktion von $x/2$ auszudrücken. +\frac{(-1)^k}{k!\,\Gamma(\alpha+k+1)} \biggl(\frac{x}{2}\biggr)^{2k} +\label{buch:differentialgleichungen:bessel:normierungsgleichung} +\end{align} +Nur gerade der Faktor $2^\alpha\Gamma(\alpha+1)$ ist von $k$ und $x$ +unabhängig, daher ist die folgende Definition sinnvoll: \begin{definition} \label{buch:differentialgleichungen:bessel:definition} @@ -262,8 +296,26 @@ J_{\alpha}(x) \biggl(\frac{x}{2}\biggr)^{2k} \] heisst {\em Bessel-Funktion erster Art der Ordnung $\alpha$}. +\index{Bessel-Funktion!erster Art}% \end{definition} +Die Bessel-Funktion $J_\alpha(x)$ der Ordnung $\alpha$ unterscheidet sich +nur durch einen Normierungsfaktor von der Lösung $y_1(x)$. +Dasselbe gilt für $J_{-\alpha}(x)$ und $y_2(x)$: +\begin{align*} +J_{\alpha}(x) +&= +\frac{1}{2^\alpha\Gamma(\alpha+1)} +\cdot +y_1(x) +\\ +J_{-\alpha}(x) +&= +\frac{1}{2^{-\alpha}\Gamma(-\alpha+1)} +\cdot +y_2(x). +\end{align*} + Man beachte, dass diese Definition für beliebige ganzzahlige $\alpha$ funktioniert. Ist $\alpha=-n<0$, $n\in\mathbb{N}$, dann hat der Nenner Pole @@ -285,6 +337,8 @@ J_{-n}(x) (-1)^n J_{n}(x). \end{align*} +Insbesondere unterscheiden sich $J_n(x)$ und $J_{-n}(x)$ nur durch +ein Vorzeichen. \subsubsection{Erzeugende Funktion} \begin{figure} @@ -388,6 +442,9 @@ Die beiden Exponentialreihen sind \notag \end{align} +% +% Additionstheorem +% \subsubsection{Additionstheorem} Die erzeugende Funktion kann dazu verwendet werden, das Additionstheorem für die Besselfunktionen zu beweisen. @@ -438,7 +495,9 @@ J_l(x+y) &= \sum_{m=-\infty}^\infty J_m(x)J_{l-m}(y) für alle $l$. \end{proof} - +% +% Der Fall \alpha=0 +% \subsubsection{Der Fall $\alpha=0$} Im Fall $\alpha=0$ hat das Indexpolynom eine doppelte Nullstelle, wir können daher nur eine Lösung erwarten. @@ -453,8 +512,19 @@ J_0(x) \] geschrieben werden kann. -% XXX Zweite Lösung explizit durchrechnen +Als lineare Differentialgleichung zweiter Ordnung erwarten wir noch +eine zweite, linear unabhängige Lösung. +Diese kann jedoch nicht allein mit der Potenzreihenmethode, +dazu sind die Methoden der Funktionentheorie nötig. +Im Abschnitt~\ref{buch:funktionentheorie:subsection:dglsing} +wird gezeigt, wie dies möglich ist und auf +Seite~\pageref{buch:funktionentheorie:subsubsection:bessel2art} +werden die damit zu findenden Bessel-Funktionen 0-ter Ordnung und +zweiter Art vorgestellt. +% +% Der Fall \alpha=p, p\in \mathbb{N} +% \subsubsection{Der Fall $\alpha=p$, $p\in\mathbb{N}, p > 0$} In diesem Fall kann nur die erste Lösung~\eqref{buch:differentialgleichunge:bessel:erste} @@ -467,8 +537,9 @@ J_p(x) \frac{(-1)^k}{k!(p+k)!}\biggl(\frac{x}{2}\biggr)^{p+2k}. \] -TODO: Lösung für $\alpha=-n$ - +% +% Der Fall $\alpha=n+\frac12$ +% \subsubsection{Der Fall $\alpha=n+\frac12$, $n\in\mathbb{N}$} Obwohl $2\alpha$ eine Ganzzahl ist, sind die beiden Lösungen \label{buch:differentialgleichunge:bessel:erste} @@ -491,7 +562,7 @@ Es ist = \frac{1}{2^k}\bigl(3\cdot 5\cdot\ldots\cdot (2k+1)\bigr) = -\frac{(2k+1)!}{2^{2k+1}\cdot k!} +\frac{(2k+1)!}{2^{2k}\cdot k!} \\ \biggl(-\frac12 + 1\biggr)_k &= @@ -508,63 +579,181 @@ Es ist = \frac{1}{2^k}\bigl(1\cdot 3 \cdot\ldots\cdot (2(k-1)+1)\bigr) = -\frac{(2k-1)!}{2^{2k}\cdot (k-1)!} +\frac{(2k-1)!}{2^{2k-1}\cdot (k-1)!} \end{align*} Damit können jetzt die Reihenentwicklungen der Lösung wie folgt umgeformt werden \begin{align*} y_1(x) &= -\sqrt{x} +x^\alpha \sum_{k=0}^\infty \frac{1}{(\alpha+1)_k} \frac{(-x^2/4)^k}{k!} = \sqrt{x} \sum_{k=0}^\infty -\frac{2^{2k+1}k!}{(2k+1)!} +\frac{2^{2k}k!}{(2k+1)!} \frac{(-x^2/4)^k}{k!} = \sqrt{x} \sum_{k=0}^\infty (-1)^k -\frac{2\cdot x^{2k}}{(2k+1)!} +\frac{x^{2k}}{(2k+1)!} \\ &= -\frac{1}{2\sqrt{x}} +\frac{1}{\sqrt{x}} \sum_{k=0}^\infty (-1)^k \frac{x^{2k+1}}{(2k+1)!} = -\frac{1}{2\sqrt{x}} \sin x +\frac{1}{\sqrt{x}} \sin x \\ y_2(x) &= -\frac{1}{\sqrt{x}} +x^{-\alpha} \sum_{k=0}^\infty -\frac{2^{2k}\cdot (k-1)!}{(2k-1)!} +\frac{1}{(-\alpha+1)_k} \frac{(-x^2/4)^k}{k!} = -\frac{1}{\sqrt{x}} +x^{-\frac12} \sum_{k=0}^\infty -(-1)^k -\frac{x^{2k}}{(2k-1)!\cdot k} +\frac{2^{2k-1}\cdot (k-1)!}{(2k-1)!} +\frac{(-x^2/4)^k}{k!} \\ &= -\frac{2}{\sqrt{x}} +\frac{1}{\sqrt{x}} \sum_{k=0}^\infty (-1)^k \frac{x^{2k}}{(2k-1)!\cdot 2k} = -\frac{2}{\sqrt{x}} \cos x. +\frac{1}{\sqrt{x}} \cos x. \end{align*} -% XXX Nachrechnen, dass diese Funktionen -% XXX Lösungen der Differentialgleichung sind - -\subsection{Analytische Fortsetzung und Bessel-Funktionen zweiter Art} - - - +Die Bessel-Funktionen verwenden aber eine andere Normierung. +Die Gleichung~\eqref{buch:differentialgleichungen:bessel:normierungsgleichung} +zeigt, dass die Bessel-Funktionen durch Division +der Funktion $y_1(x)$ und $y_2(x)$ durch $2^\alpha \Gamma(\alpha+1)$ +erhalten werden können. +Dies ergibt +\begin{equation*} +\renewcommand{\arraycolsep}{1pt} +\begin{array}{rclclclcl} +J_{\frac12}(x) +&=& +\displaystyle\frac{1}{2^{\frac12}\Gamma(\frac12+1)} +y_1(x) +&=& +\displaystyle\frac{1}{2^{\frac12}\frac12\Gamma(\frac12)} +y_1(x) +&=& +\displaystyle\frac{\sqrt{2}}{\Gamma(\frac12)} +y_1(x) +&=& +\displaystyle\frac{1}{\Gamma(\frac12)} +\sqrt{ \frac{2}{x}} +\sin x, +\\ +J_{-\frac12}(x) +&=& +\displaystyle\frac{1}{2^{-\frac12}\Gamma(-\frac12+1)} +y_2(x) +&=& +\displaystyle\frac{2^{\frac12}}{\Gamma(\frac12)} +y_2(x) +&=& +\displaystyle\frac{\sqrt{2}}{\Gamma(\frac12)} +y_2(x) +&=& +\displaystyle\frac{1}{\Gamma(\frac12)} +\sqrt{\frac{2}{x}} +\cos x. +\end{array} +\end{equation*} +Wegen $\Gamma(\frac12)=\sqrt{\pi}$ sind die +halbzahligen Bessel-Funktionen daher +\begin{align*} +J_{\frac12}(x) +&= +\sqrt{\frac{2}{\pi x}} \sin x += +\sqrt{\frac{2}{\pi}} x^{-\frac12}\sin x +& +&\text{und}& +J_{-\frac12}(x) +&= +\sqrt{\frac{2}{\pi x}} \cos x += +\sqrt{\frac{2}{\pi}} x^{-\frac12}\cos x. +\end{align*} +% +% Direkte Verifikation der Lösungen +% +\subsubsection{Direkte Verifikation der Lösungen für $\alpha=\pm\frac12$} +Tatsächlich führt die Anwendung des Bessel-Operators auf die beiden +Funktionen auf +\begin{align*} +\sqrt{\frac{\pi}2} +BJ_{\frac12}(x) +&= +\sqrt{\frac{\pi}2} +\biggl( +x^2J_{\frac12}''(x) + xJ_{\frac12}'(x) + x^2J_{\frac12}(x) +\biggr) +\\ +&= +x^2(x^{-\frac12}\sin x)'' ++ +x(x^{-\frac12}\sin x)' ++ +x^2(x^{-\frac12}\sin x) +\\ +&= +x^2( +x^{-{\textstyle\frac12}}\cos x +-{\textstyle\frac12}x^{-\frac32}\sin x +)' ++ +x( +x^{-\frac12}\cos x +-{\textstyle\frac12}x^{-\frac32}\sin x +) ++ +x^{\frac32}\sin x +\\ +&= +x^2( +-x^{-\frac12}\sin x +-{\textstyle\frac12}x^{-\frac32}\cos x +-{\textstyle\frac12}x^{-\frac32}\cos x ++{\textstyle\frac{3}{4}}x^{-\frac52}\sin x +) ++ +x^{\frac12}\cos x ++ +x^{-\frac12}(x-{\textstyle\frac12})\sin x +\\ +&= +( +-x^{\frac32} ++{\textstyle\frac34}x^{-\frac12} ++x^{\frac32} +-{\textstyle\frac12}x^{-\frac12} +) +\sin x += +\frac14x^{-\frac12}\sin x += +\frac14 +\sqrt{\frac{\pi}2} +J_{\frac12}(x) +\\ +BJ_{\frac12}(x) +&= +\biggl(\frac12\biggr)^2 J_{\frac12}(x). +\end{align*} +Dies zeigt, dass $J_{\frac12}(x)$ tatsächlich eine Eigenfunktion +des Bessel-Operators zum Eigenwert $\alpha^2 = \frac14$. +Analog kann man die Lösung $y_2(x)$ für $-\frac12$ verifizieren. diff --git a/buch/chapters/050-differential/hypergeometrisch.tex b/buch/chapters/050-differential/hypergeometrisch.tex index 65b3be7..87b9318 100644 --- a/buch/chapters/050-differential/hypergeometrisch.tex +++ b/buch/chapters/050-differential/hypergeometrisch.tex @@ -1591,7 +1591,7 @@ x\cdot \end{align*} als Lösungen. Die Differentialgleichung von $\mathstrut_0F_1$ sollte sich in diesem -Fall also auf die Airy-Differentialgleichung reduzieren lassen. +Fall also auf die Airy-Dif\-fe\-ren\-tial\-glei\-chung reduzieren lassen. Bei der Substition der Parameter in die Differentialgleichung \eqref{buch:differentialgleichungen:0F1:dgl} beachten wird, dass diff --git a/buch/chapters/070-orthogonalitaet/bessel.tex b/buch/chapters/070-orthogonalitaet/bessel.tex index 3e9412a..0ef28fd 100644 --- a/buch/chapters/070-orthogonalitaet/bessel.tex +++ b/buch/chapters/070-orthogonalitaet/bessel.tex @@ -1,7 +1,8 @@ % % Besselfunktionen also orthogonale Funktionenfamilie % -\section{Bessel-Funktionen als orthogonale Funktionenfamilie} +\section{Bessel-Funktionen als orthogonale Funktionenfamilie +\label{buch:orthogonalitaet:section:bessel}} \rhead{Bessel-Funktionen} Auch die Besselfunktionen sind eine orthogonale Funktionenfamilie. Sie sind Funktionen differenzierbaren Funktionen $f(r)$ für $r>0$ diff --git a/buch/chapters/070-orthogonalitaet/chapter.tex b/buch/chapters/070-orthogonalitaet/chapter.tex index 4756844..fba1298 100644 --- a/buch/chapters/070-orthogonalitaet/chapter.tex +++ b/buch/chapters/070-orthogonalitaet/chapter.tex @@ -8,20 +8,66 @@ \label{buch:chapter:orthogonalitaet}} \lhead{Orthogonalität} \rhead{} +In der linearen Algebra lernt man, dass orthonormierte Basen für die +Lösung vektorgeometrischer Probleme, bei denen auch das Skalarprodukt +involviert ist, besonders günstig sind. +Die Zerlegung eines Vektors in einer Basis verlangt normalerweise nach +der Lösung eines linearen Gleichungssystems, für orthonormierte +Basisvektoren beschränkt sie sich auf die Berechnung von Skalarprodukten. + +Oft dienen spezielle Funktionen als Basis der Lösungen einer linearen +partiellen Differentialgleichung (siehe Kapitel~\ref{buch:chapter:pde}). +Die Randbedingungen müssen dazu in der gewählten Basis von Funktionen +zerlegt werden. +Fourier ist es gelungen, die Idee des Skalarproduktes und der Orthogonalität +auf Funktionen zu verallgemeinern und so zum Beispiel das Wärmeleitungsproblem +zu lösen. + +Der Orthonormalisierungsprozess von Gram-Schmidt wird damit auch auf +Funktionen anwendbar +(Abschnitt~\ref{buch:orthogonalitaet:section:orthogonale-funktionen}), +der Nutzen führt aber noch viel weiter. +Da $K[x]$ ein Vektorraum ist, führt er von der Basis der Monome +$\{1,x,x^2,\dots,x^n\}$ +auf orthonormierte Polynome. +Diese haben jedoch eine ganze Reihe weiterer nützlicher Eigenschaften. +So wird in Abschnitt~\ref{buch:orthogonal:section:drei-term-rekursion} +gezeigt, dass sich die Werte aller Polynome einer solchen Familie mit +einer Rekursionsformel effizient berechnen lassen, die höchstens drei +Terme umfasst. +In Abschnitt~\ref{buch:orthogonalitaet:section:rodrigues} werden +die Rodrigues-Formeln vorgeführt, die Polynome durch Anwendung eines +Differentialoperators hervorbringen. +In Abschnitt~\ref{buch:orthogonal:section:orthogonale-polynome-und-dgl} +schliesslich wird gezeigt, dass diese Polynome auch Eigenfunktionen +eines selbstadjungierten Operators sind. +Da man in der linearen Algebra auch lernt, dass die Eigenvektoren einer +symmetrischen Matrix zu verschiedenen Eigenwerten orthogonal sind, +ist die Orthogonalität plötzlich nicht mehr überraschend. + +Die Bessel-Funktionen von +Abschnitt~\ref{buch:differntialgleichungen:section:bessel} +sind auch Eigenfunktionen eines Differentialoperators. +Abschnitt~\ref{buch:orthogonalitaet:section:bessel} findet das zugehörige +Skalarprodukt, welches andeutet, dass auch für andere Funktionenfamilien +eine entsprechende Konstruktion möglich ist. +Das in Abschnitt~\ref{buch:integrale:subsection:sturm-liouville-problem} +präsentierte Sturm-Liouville-Problem führt sie durch. +Das Kapitel schliesst mit dem +Abschnitt~\ref{buch:orthogonal:section:gauss-quadratur} +über die Gauss-Quadratur, welche die Eigenschaften orthogonaler Polynome +für einen besonders effizienten numerischen Integrationsalgorithmus +ausnutzt. + \input{chapters/070-orthogonalitaet/orthogonal.tex} \input{chapters/070-orthogonalitaet/rekursion.tex} \input{chapters/070-orthogonalitaet/rodrigues.tex} -%\input{chapters/070-orthogonalitaet/jacobi.tex} \input{chapters/070-orthogonalitaet/legendredgl.tex} \input{chapters/070-orthogonalitaet/bessel.tex} \input{chapters/070-orthogonalitaet/sturm.tex} \input{chapters/070-orthogonalitaet/gaussquadratur.tex} -%\section{TODO} -%\begin{itemize} -%\end{itemize} - -\section*{Übungsaufgaben} +\section*{Übungsaufgabe} \rhead{Übungsaufgaben} \aufgabetoplevel{chapters/070-orthogonalitaet/uebungsaufgaben} \begin{uebungsaufgaben} diff --git a/buch/chapters/070-orthogonalitaet/gaussquadratur.tex b/buch/chapters/070-orthogonalitaet/gaussquadratur.tex index 2e43cec..4a25678 100644 --- a/buch/chapters/070-orthogonalitaet/gaussquadratur.tex +++ b/buch/chapters/070-orthogonalitaet/gaussquadratur.tex @@ -1,7 +1,8 @@ % % Anwendung: Gauss-Quadratur % -\section{Anwendung: Gauss-Quadratur} +\section{Anwendung: Gauss-Quadratur +\label{buch:orthogonal:section:gauss-quadratur}} \rhead{Gauss-Quadratur} Orthogonale Polynome haben eine etwas unerwartet Anwendung in einem von Gauss erdachten numerischen Integrationsverfahren. @@ -284,7 +285,7 @@ $p(x)$ sein. Der Satz~\ref{buch:integral:satz:gaussquadratur} begründet das {\em Gausssche Quadraturverfahren}. -Die in Abschnitt~\ref{buch:integral:section:orthogonale-polynome} +Die in Abschnitt~\ref{buch:orthogonal:subsection:legendre-polynome} bestimmten Legendre-Polynome $P_n$ haben die im Satz verlangte Eigenschaft, dass sie auf allen Polynomen geringeren Grades orthogonal sind. diff --git a/buch/chapters/070-orthogonalitaet/legendredgl.tex b/buch/chapters/070-orthogonalitaet/legendredgl.tex index de8f63f..6401e98 100644 --- a/buch/chapters/070-orthogonalitaet/legendredgl.tex +++ b/buch/chapters/070-orthogonalitaet/legendredgl.tex @@ -3,7 +3,8 @@ % % (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule % -\section{Orthogonale Polynome und Differentialgleichungen} +\section{Orthogonale Polynome und Differentialgleichungen +\label{buch:orthogonal:section:orthogonale-polynome-und-dgl}} \rhead{Differentialgleichungen orthogonaler Polynome} Legendre hat einen ganz anderen Zugang zu den nach ihm benannten Polynomen gefunden. @@ -16,6 +17,9 @@ Die Orthogonalität wird dann aus einer Verallgemeinerung der bekannten Eingeschaft folgen, dass Eigenvektoren einer symmetrischen Matrix zu verschiedenen Eigenwerten orthogonal sind. +% +% Legendre-Differentialgleichung +% \subsection{Legendre-Differentialgleichung} Die {\em Legendre-Differentialgleichung} ist die Differentialgleichung \begin{equation} @@ -61,7 +65,10 @@ zerlegen, die als Linearkombinationen der beiden Lösungen $y(x)$ und $y_s(x)$ ebenfalls Lösungen der Differentialgleichung sind. -\subsection{Potenzreihenlösung} +% +% Potenzreihenlösungen +% +\subsubsection{Potenzreihenlösung} Wir suchen eine Lösung in Form einer Potenzreihe um $x=0$ und verwenden dazu den Ansatz \[ @@ -170,7 +177,10 @@ eine Polynomlösung $\bar{P}_n(x)$ vom Grad $n$ gibt. Dies kann aber nicht erklären, warum die so gefundenen Polynome orthogonal sind. -\subsection{Eigenfunktionen} +% +% Eigenfunktionen +% +\subsubsection{Eigenfunktionen} Die Differentialgleichung \eqref{buch:integral:eqn:legendre-differentialgleichung} Kann mit dem Differentialoperator @@ -198,7 +208,10 @@ des Operators $D$ zum Eigenwert $n(n+1)$ sind: D\bar{P}_n = -n(n+1) \bar{P}_n. \] -\subsection{Orthogonalität von $\bar{P}_n$ als Eigenfunktionen} +% +% Orthogonalität von P_n als Eigenfunktionen +% +\subsubsection{Orthogonalität von $\bar{P}_n$ als Eigenfunktionen} Ein Operator $A$ auf Funktionen heisst {\em selbstadjungiert}, wenn für zwei beliebige Funktionen $f$ und $g$ gilt \[ @@ -274,7 +287,10 @@ die $\bar{P}_n$ orthogonale Polynome vom Grad $n$ sind, die die gleiche Standardierdisierungsbedingung wie die Legendre-Polyonome erfüllen, also ist $\bar{P}_n(x)=P_n(x)$. -\subsection{Legendre-Funktionen zweiter Art} +% +% Legendre-Funktionen zweiter Art +% +\subsubsection{Legendre-Funktionen zweiter Art} %Siehe Wikipedia-Artikel \url{https://de.wikipedia.org/wiki/Legendre-Polynom} % Die Potenzreihenmethode liefert natürlich auch Lösungen der @@ -368,7 +384,7 @@ Q_1(x) = x \operatorname{artanh}x-1 verwendet werden. % -% +% Laguerre-Differentialgleichung % \subsection{Laguerre-Differentialgleichung \label{buch:orthogonal:subsection:laguerre-differentialgleichung}} @@ -429,6 +445,9 @@ ein anderer Weg zu einer zweiten Lösung gesucht werden. XXX TODO: zweite Lösung der Differentialgleichung. +% +% +% \subsubsection{Die assoziierte Laguerre-Differentialgleichung} \index{assoziierte Laguerre-Differentialgleichung}% \index{Laguerre-Differentialgleichung, assoziierte}% diff --git a/buch/chapters/070-orthogonalitaet/orthogonal.tex b/buch/chapters/070-orthogonalitaet/orthogonal.tex index 677e865..97cd06b 100644 --- a/buch/chapters/070-orthogonalitaet/orthogonal.tex +++ b/buch/chapters/070-orthogonalitaet/orthogonal.tex @@ -11,9 +11,13 @@ Funktionenreihen mit Summanden zu bilden, die im Sinne eines Skalarproduktes orthogonal sind, welches mit Hilfe eines Integrals definiert sind. Solche Funktionenfamilien treten jedoch auch als Lösungen von -Differentialgleichungen. +Differentialgleichungen auf. Besonders interessant wird die Situation, wenn die Funktionen Polynome sind. +In diesem Abschnitt soll zunächst das Skalarprodukt definiert +und an Hand von Beispielen gezeigt werden, wie verschiedenartige +interessante Familien von orthogonalen Polynomen gewonnen werden +können. % % Skalarprodukt @@ -520,7 +524,7 @@ Tabelle~\ref{buch:integral:table:legendre-polynome}. Die Graphen sind in Abbildung~\ref{buch:integral:orthogonal:legendregraphen} dargestellt. Abbildung~\ref{buch:integral:orthogonal:legendreortho} illustriert, -dass die die beiden Polynome $P_4(x)$ und $P_7(x)$ orthogonal sind. +dass die beiden Polynome $P_4(x)$ und $P_7(x)$ orthogonal sind. Das Produkt $P_4(x)\cdot P_7(x)$ hat Integral $=0$. % diff --git a/buch/chapters/070-orthogonalitaet/rekursion.tex b/buch/chapters/070-orthogonalitaet/rekursion.tex index dc5531b..c0efc6d 100644 --- a/buch/chapters/070-orthogonalitaet/rekursion.tex +++ b/buch/chapters/070-orthogonalitaet/rekursion.tex @@ -31,7 +31,17 @@ für alle $n$, $m$. \end{definition} \subsubsection{Allgemeine Drei-Term-Rekursion für orthogonale Polynome} -Der folgende Satz besagt, dass $p_n$ eine Rekursionsbeziehung erfüllt. +Die Multiplikation mit $x$ macht aus einem Polynom vom Grad $n$ ein +Polynom vom Grad $n+1$. +Das Polynom $xp_n(x)$ lässt sich daher als Linearkombination der +Polynome $p_k(x)$ mit $k\le n+1$ schreiben. +Es muss also eine lineare Beziehung zwischen den Polynomen $p_k(x)$ und +$xp_n(x)$ geben, die man nach $p_{n+1}(x)$ auflösen kann, um eine lineare +Darstellung von $p_{n+1}(x)$ durch die $p_k(x)$ und $p_n(x)$ zu +bekommen. +A priori muss man damit rechnen, dass sehr viele Summanden nötig sind. +Der folgende Satz besagt, dass $p_n(x)$ eine Rekursionsbeziehung mit +nur drei Termen erfüllt. \begin{satz} \label{buch:orthogonal:satz:drei-term-rekursion} @@ -55,9 +65,13 @@ C_{n+1} = \frac{A_{n+1}}{A_n}\frac{h_{n+1}}{h_n}. \end{equation} \end{satz} +Die Rekursionsbeziehung~\eqref{buch:orthogonal:eqn:rekursion} bedeutet, +dass sich die Werte $p_n(x)$ für alle $n$ ausgehend von $p_1(x)$ und +$p_0(x)$ mit nur $O(n)$ Operationen ermitteln lassen. + \subsubsection{Multiplikationsoperator mit $x$} -Man kann die Relation auch nach dem Produkt $xp_n(x)$ auflösen, dann -wird sie +Man kann die Relation \eqref{buch:orthogonal:eqn:rekursion} +auch nach dem Produkt $xp_n(x)$ auflösen, dann wird sie \begin{equation} xp_n(x) = @@ -68,9 +82,12 @@ xp_n(x) \frac{C_n}{A_n}p_{n-1}(x). \label{buch:orthogonal:eqn:multixrelation} \end{equation} -Die Multiplikation mit $x$ ist eine lineare Abbildung im Raum der Funktionen. +Die Multiplikation mit $x$ ist eine lineare Abbildung im Raum der Funktionen, +die wir weiter unten auch $M_x$ abkürzen. Die Relation~\eqref{buch:orthogonal:eqn:multixrelation} besagt, dass diese Abbildung in der Basis der Polynome $p_k$ tridiagonale Form hat. +Ein Beispiel dafür ist im nächsten Abschnitt in +\eqref{buch:orthogonal:eqn:Mx} \subsubsection{Drei-Term-Rekursion für die Tschebyscheff-Polynome} Eine Relation der Form~\eqref{buch:orthogonal:eqn:multixrelation} @@ -84,6 +101,22 @@ T_{n+1}(x) = 2x\,T_n(x)-T_{n-1}(x), \] also $A_n=2$, $B_n=0$ und $C_n=1$. +Die Matrixdarstellung des Multiplikationsoperators $M_x$ in der +Basis der Tschebyscheff-Polynome hat wegen +\eqref{buch:orthogonal:eqn:multixrelation} die Form +\begin{equation} +M_x += +\begin{pmatrix} + 0&\frac12& 0& 0& 0&\dots  \\ +\frac12& 0&\frac12& 0& 0&\dots  \\ + 0&\frac12& 0&\frac12& 0&\dots  \\ + 0& 0&\frac12& 0&\frac12&\dots  \\ + 0& 0& 0&\frac12& 0&\dots  \\ + \vdots& \vdots& \vdots& \vdots& \vdots&\ddots +\end{pmatrix}. +\label{buch:orthogonal:eqn:Mx} +\end{equation} \subsubsection{Beweis von Satz~\ref{buch:orthogonal:satz:drei-term-rekursion}} Die Relation~\eqref{buch:orthogonal:eqn:multixrelation} zeigt auch, diff --git a/buch/chapters/070-orthogonalitaet/rodrigues.tex b/buch/chapters/070-orthogonalitaet/rodrigues.tex index 9fded85..9a36bdc 100644 --- a/buch/chapters/070-orthogonalitaet/rodrigues.tex +++ b/buch/chapters/070-orthogonalitaet/rodrigues.tex @@ -14,7 +14,8 @@ mit der Ableitung kann man den Grad aber auch senken, man könnte daher auch nach einer Rekursionsformel fragen, die bei einem Polynom hohen Grades beginnt und mit Hilfe von Ableitungen zu geringeren Graden absteigt. -Solche Formeln heissen Rodrigues-Formeln nach dem Entdecker Olinde +Solche Formeln heissen {\em Rodrigues-Formeln} nach dem Entdecker Olinde +\index{Rodriguez, Olinde}% Rodrigues, der eine solche Formal als erster für Legendre-Polynome gefunden hat. @@ -27,12 +28,17 @@ Die Skalarprodukte sollen \] sein. +% +% Pearsonsche Differentialgleichung +% \subsection{Pearsonsche Differentialgleichung} Die {\em Pearsonsche Differentialgleichung} ist die Differentialgleichung \begin{equation} B(x) y' - A(x) y = 0, \label{buch:orthogonal:eqn:pearson} \end{equation} +\index{Differentialgleichung!Pearsonsche}% +\index{Pearsonsche Differentialgleichung}% wobei $B(x)$ ein Polynom vom Grad höchstens $2$ ist und $A(x)$ ein höchstens lineares Polynom. Die Gleichung~\eqref{buch:orthogonal:eqn:pearson} @@ -45,20 +51,31 @@ Dann kann man die Gleichung umstellen in = \frac{A(x)}{B(x)} \qquad\Rightarrow\qquad -y = \exp\biggl( \int\frac{A(x)}{B(x)}\biggr)\,dx. +y += +\exp\biggl( +\int\frac{A(x)}{B(x)} +\,dx +\biggr) +. \] -Im folgenden nehmen wir zusätzlich an, dass +Im Folgenden nehmen wir zusätzlich an, dass an den Intervallenden \begin{equation} \lim_{x\to a+} w(x)B(x) = 0, \qquad\text{und}\qquad -\lim_{x\to b-} w(x)B(x) = 0. +\lim_{x\to b-} w(x)B(x) = 0 \end{equation} +gilt. + Falls $w(x)$ an den Intervallenden einen von $0$ verschiedenen Grenzwert hat, bedeutet dies, dass $B(a)=B(b)=0$ sein muss. Falls $w(x)$ am Intervallende divergiert, muss $B(x)$ dort eine Nullstelle höherer Ordnung haben, was aber für ein Polynom zweiten Grades nicht möglich ist. +% +% Rekursionsformel +% \subsection{Rekursionsformel} Multiplikation mit $B(x)$ wird den Grad eines Polynomes typischerweise um $2$ erhöhen, die Ableitung wird ihn wieder um $1$ reduzieren. @@ -66,12 +83,13 @@ Etwas formeller kann man dies wie folgt formulieren: \begin{satz} Für alle $n\ge 0$ ist -\[ +\begin{equation} q_n(x) = \frac{1}{w(x)} \frac{d^n}{dx^n} B(x)^n w(x) -\] +\label{buch:orthogonalitaet:rodrigues:eqn:rekursion} +\end{equation} ein Polynom vom Grad höchstens $n$. \end{satz} @@ -85,50 +103,65 @@ r_0(x) B(x)^n w(x) \\ &= \frac{d^{n-1}}{dx^{n-1}} -\bigl(r_0'(x)B(x)+ nB'(x)B(x)^{n-1}w(x) + B(x)^n w'(x) \bigr) +\bigl(r_0'(x)B(x)+ nr_0(x)B'(x)B(x)^{n-1}w(x) + r_0(x)B(x)^n w'(x) \bigr) \\ &= \frac{d^{n-1}}{dx^{n-1}} -(r_0'(x)B(x)+nB'(x)+A(x)) B(x)^{n-1} w(x) -= +(\underbrace{r_0'(x)B(x)+nr_0(x)B'(x)+r_0(x)A(x)}_{\displaystyle = r_1(x)}) +B(x)^{n-1} w(x) +\\ +&= \frac{d^{n-1}}{dx^{n-1}} r_1(x)B^{n-1}(x) w(x). \end{align*} -Für die Funktionen $r_k$ gilt die Rekursionsformel +Iterativ lässt sich eine Folge von +Funktionen $r_k(x)$ definieren, für die Rekursionsformel \begin{equation} -r_k(x) = r_{k-1}'(x)B(x) + kB'(x) + A(x). +r_k(x) = r_{k-1}'(x)B(x) + \bigl((n+1-k)B'(x) + A(x)\bigr)r_{k-1}(x) \label{buch:orthogonal:rodrigues:rekursion:beweis1} \end{equation} +gilt. Wenn $r_0(x)$ ein Polynom ist, dann sind alle Funktionen $r_k(x)$ ebenfalls Polynome. -Durch wiederholte Anwendung dieser Formel kann man schliessen, dass +Aus der Konstruktion kann man schliessen, dass \[ \frac{d^n}{dx^n} r_0(x) B(x)^n w(x) = r_n(x) w(x). \] -Insbesondere folgt für $r_0(x)=1$, dass man durch $w(x)$ dividieren kann -und dass $r_n(x)=q_n(x)$. +Insbesondere folgt für $r_0(x)=1$, dass die $n$-te Ableitung den +Faktor $w(x)$ enthält und dass somit $r_n(x)=q_n(x)$ ein Polynom ist. + +Wir müssen auch noch den Grad von $r_k(x)$ bestimmen, wobei wir +wieder von $r_0(x)=1$ ausgehen. +Wir behaupten, dass $\deg r_k(x)\le k$ ist, und beweisen dies +mit vollständiger Induktion. +Für $k=0$ ist $\deg r_0(x) = 0 \le k$ die Induktionsverankerung. -Wir müssen auch noch den Grad von $r_k(x)$ bestimmen. -Dazu verwenden wir -\eqref{buch:orthogonal:rodrigues:rekursion:beweis1} und berechnen den -Grad: +Wir nehmen jetzt also an, dass $\deg r_{k-1}(x)\le k-1$ ist und +verwenden +\eqref{buch:orthogonal:rodrigues:rekursion:beweis1} um den Grad zu berechnen: \begin{equation*} \deg r_k(x) = \max \bigl( -\underbrace{\deg(r_{k-1}'(x) B(x))}_{\displaystyle \deg r_{k-1}(x) -1 + 2} +\underbrace{\deg(r_{k-1}'(x) B(x))}_{\displaystyle (k-1) -1 + 2} , -\underbrace{\deg(B'(x))}_{\displaystyle \le 1} +\underbrace{\deg(r_{k-1}(x)B'(x))}_{\displaystyle \le (k-1)+1} , -\underbrace{\deg(A(x))}_{\displaystyle \le 1} +\underbrace{\deg(r_{k-1}(x)A(x))}_{\displaystyle \le (k-1)+1} \bigr) -\le \max r_{k-1}(x) + 1. +\le k. \end{equation*} -Aus $\deg r_0(x)=0$ kann man jetzt ablesen, dass $\deg r_k(x)\le k$ ist. -Damit ist gezeigt, dass $\deg q_n(x)\le n$. +Damit ist der Induktionsschritt und $\deg r_k(x)\le k$ bewiesen. +Damit ist auch gezeigt, dass $\deg q_n(x)\le n$. \end{proof} +Die Rodrigues-Formel~\eqref{buch:orthogonalitaet:rodrigues:eqn:rekursion} +produziert eine Folge von Polynomen aufsteigenden Grades, es ist aber +noch nicht klar, dass diese Polynome bezüglich des gewählten Skalarproduktes +orthogonal sind. +Dies ist der Inhalt des folgenden Satzes. + \begin{satz} Es gibt Konstanten $c_n$ derart, dass \[ @@ -140,7 +173,7 @@ gilt. \end{satz} \begin{proof}[Beweis] -Wir müssen zeigen, dass die Polynome orthogonal sind auf allen Monomen +Wir zeigen, dass die Polynome orthogonal sind auf allen Monomen von geringerem Grad. \begin{align*} \langle q_n, x^k\rangle_w @@ -148,15 +181,17 @@ von geringerem Grad. \int_a^b q_n(x)x^kw(x)\,dx \\ &= -\int_a^b \frac{1}{w(x)}\frac{d^n}{dx^n}(B(x)^n w(x)) x^k w(x)\,dx +\int_a^b \frac{1}{w(x)} +\biggl(\frac{d^n}{dx^n}\bigl(B(x)^n w(x)\bigr)\biggr) +x^k w(x)\,dx \\ &= -\int_a^b \frac{d^n}{dx^n}(B(x)^n w(x)) x^k \,dx +\int_a^b \frac{d^n}{dx^n}\bigl(B(x)^n w(x)\bigr) x^k \,dx \\ &= -\biggl[\frac{d^{n-1}}{dx^{n-1}}(B(x)^n w(x)) x^k \biggr]_a^b +\biggl[\frac{d^{n-1}}{dx^{n-1}}\bigl(B(x)^n w(x)\bigr) x^k \biggr]_a^b - -\int_a^b \frac{d^{n-1}}{dx^{n-1}}(B(x)^n w(x))kx^{k-1}\,dx +\int_a^b \frac{d^{n-1}}{dx^{n-1}}\bigl(B(x)^n w(x)\bigr)kx^{k-1}\,dx \end{align*} Durch $n$-fache Iteration wird das Integral auf $0$ reduziert. Es bleiben nur die eckigen Klammern stehen, doch wenn man die Produktregel @@ -164,9 +199,20 @@ auswertet, bleibt immer mindestens ein Produkt $B(x)w(x)$ stehen, nach den Voraussetzungen an den Grenzwert dieses Produktes an den Intervallenden verschwinden diese Terme alle. Damit sind die $q_n(x)$ Polynome, die $w$-orthogonal sind auf allen -$x^k$ mit $k0$ im Innerend es Intervalls sein. +% +% Der Vektorraum H +% \subsection{Der Vektorraum $H$} Damit können wir jetzt die Eigenschaften der in Frage kommenden Funktionen zusammenstellen. @@ -346,7 +361,10 @@ f\in L^2([a,b],w)\;\bigg|\; \biggr\}. \] -\subsection{Differentialoperator} +% +% Der Sturm-Liouville-Differentialoperator +% +\subsection{Der Sturm-Liouville-Differentialoperator} Das verallgemeinerte Eigenwertproblem für $A$ und $B$ ist ein gewöhnliches Eigenwertproblem für die Operator $\tilde{A}=B^{-1}A$ bezüglich des modifizierten Skalarproduktes. @@ -366,12 +384,18 @@ $\lambda$ ist der zu $y(x)$ gehörige Eigenwert. Der Operator ist definiert auf Funktionen des im vorangegangenen Abschnitt definierten Vektorraumes $H$. +% +% Beispiele +% \subsection{Beispiele} Die meisten der früher vorgestellten Funktionenfamilien stellen sich als Lösungen eines geeigneten Sturm-Liouville-Problems heraus. Alle Eigenschaften aus der Sturm-Liouville-Theorie gelten daher automatisch für diese Funktionenfamilien. +% +% Trignometrische Funktionen +% \subsubsection{Trigonometrische Funktionen} Die trigonometrischen Funktionen sind Eigenfunktionen des Operators $d^2/dx^2$, also eines Sturm-Liouville-Operators mit $p(x)=1$, $q(x)=0$ @@ -434,6 +458,9 @@ Dann ist wegen die Bedingung~\eqref{buch:integrale:sturm:sabedingung} ebenfalls erfüllt, $L_0$ ist in diesem Raum selbstadjungiert. +% +% Bessel-Funktionen J_n(x) +% \subsubsection{Bessel-Funktionen $J_n(x)$} Der Bessel-Operator \eqref{buch:differentialgleichungen:bessel-operator} kann wie folgt in die Form eines Sturm-Liouville-Operators gebracht @@ -478,6 +505,9 @@ Es folgt damit sofort, dass die Besselfunktionen orthogonale Funktionen bezüglich des Skalarproduktes mit der Gewichtsfunktion $w(x)=1/x$ sind. +% +% Bessel-Funktionen J_n(sx) +% \subsubsection{Bessel-Funktionen $J_n(s x)$} Das Sturm-Liouville-Problem mit den Funktionen \eqref{buch:orthogonal:sturm:bessel:n} @@ -608,6 +638,9 @@ Damit sind geeignete Randbedingungen für das Sturm-Liouville-Problem gefunden. \end{proof} +% +% Laguerre-Polynome +% \subsubsection{Laguerre-Polynome} Die Laguerre-Polynome sind orthogonal bezüglich des Skalarprodukts mit der Laguerre-Gewichtsfunktion $w(x)=e^{-x}$ und erfüllen die @@ -646,6 +679,9 @@ also die Laguerre-Differentialgleichung. Somit folgt, dass die Laguerre-Polynome orthogonal sind bezüglich des Skalarproduktes mit der Laguerre-Gewichtsfunktion. +% +% Tschebyscheff-Polynome +% \subsubsection{Tschebyscheff-Polynome} Die Tschebyscheff-Polynome sind Lösungen der Tschebyscheff-Differentialgleichung @@ -685,10 +721,15 @@ bezüglich des Skalarproduktes \langle f,g\rangle = \int_{-1}^1 f(x)g(x)\frac{dx}{\sqrt{1-x^2}}. \] +% +% Jacobi-Polynome +% \subsubsection{Jacobi-Polynome} TODO - +% +% Hypergeometrische Differentialgleichungen +% \subsubsection{Hypergeometrische Differentialgleichungen} %\url{https://encyclopediaofmath.org/wiki/Hypergeometric_equation} Auch die Eulersche hypergeometrische Differentialgleichung diff --git a/buch/chapters/080-funktionentheorie/anwendungen.tex b/buch/chapters/080-funktionentheorie/anwendungen.tex index 4cdf9be..04c597e 100644 --- a/buch/chapters/080-funktionentheorie/anwendungen.tex +++ b/buch/chapters/080-funktionentheorie/anwendungen.tex @@ -5,6 +5,7 @@ % \section{Anwendungen \label{buch:funktionentheorie:section:anwendungen}} +\rhead{Anwendungen} \input{chapters/080-funktionentheorie/gammareflektion.tex} \input{chapters/080-funktionentheorie/carlson.tex} diff --git a/buch/chapters/080-funktionentheorie/singularitaeten.tex b/buch/chapters/080-funktionentheorie/singularitaeten.tex index 71d1844..07204ab 100644 --- a/buch/chapters/080-funktionentheorie/singularitaeten.tex +++ b/buch/chapters/080-funktionentheorie/singularitaeten.tex @@ -421,7 +421,8 @@ in die ursprüngliche Differentialgleichung ein, verschwindet der $\log(z)$-Term und für die verbleibenden Koeffizienten kann die bekannte Methode des Koeffizientenvergleichs verwendet werden. -\subsubsection{Bessel-Funktionen zweiter Art} +\subsubsection{Bessel-Funktionen zweiter Art +\label{buch:funktionentheorie:subsubsection:bessel2art}} -- cgit v1.2.1 From add0becdcdfee17ceb8e002684011c5895dc469b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 21 Jun 2022 07:46:06 +0200 Subject: typo --- buch/chapters/050-differential/potenzreihenmethode.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buch/chapters/050-differential/potenzreihenmethode.tex b/buch/chapters/050-differential/potenzreihenmethode.tex index e6613dd..84c52c2 100644 --- a/buch/chapters/050-differential/potenzreihenmethode.tex +++ b/buch/chapters/050-differential/potenzreihenmethode.tex @@ -372,7 +372,7 @@ entwickeln lassen. \subsubsection{Die Potenzreihenmethode funktioniert nicht} Für die Differentialgleichung \eqref{buch:differentialgleichungen:eqn:dglverallg} -funktioniert die Potenzreihenmethod oft nicht. +funktioniert die Potenzreihenmethode oft nicht. Sind die Funktionen $p(x)$ und $q(x)$ zum Beispiel Konstante $p(x)=p_0$ und $q(x)=q_0$, dann führt der Potenzreihenansatz \[ -- cgit v1.2.1 From c982d50db43bc3254f3b158e17c679d5ef3253e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 21 Jun 2022 08:34:19 +0200 Subject: typos --- buch/chapters/050-differential/bessel.tex | 11 +++- .../050-differential/potenzreihenmethode.tex | 61 ++++++++++++++-------- 2 files changed, 49 insertions(+), 23 deletions(-) diff --git a/buch/chapters/050-differential/bessel.tex b/buch/chapters/050-differential/bessel.tex index a3237fe..cf271e3 100644 --- a/buch/chapters/050-differential/bessel.tex +++ b/buch/chapters/050-differential/bessel.tex @@ -316,10 +316,14 @@ J_{-\alpha}(x) y_2(x). \end{align*} +% +% Ganzzahlige Ordnung +% +\subsubsection{Besselfunktionen ganzzahliger Ordnung} Man beachte, dass diese Definition für beliebige ganzzahlige $\alpha$ funktioniert. Ist $\alpha=-n<0$, $n\in\mathbb{N}$, dann hat der Nenner Pole -an den Stellen $k=0,1,\dots,n-$. +an den Stellen $k=0,1,\dots,n-1$. Die Summe beginnt also erst bei $k=n$ oder \begin{align*} J_{-n}(x) @@ -340,6 +344,9 @@ J_{n}(x). Insbesondere unterscheiden sich $J_n(x)$ und $J_{-n}(x)$ nur durch ein Vorzeichen. +% +% Erzeugende Funktione +% \subsubsection{Erzeugende Funktion} \begin{figure} \centering @@ -754,6 +761,6 @@ BJ_{\frac12}(x) \biggl(\frac12\biggr)^2 J_{\frac12}(x). \end{align*} Dies zeigt, dass $J_{\frac12}(x)$ tatsächlich eine Eigenfunktion -des Bessel-Operators zum Eigenwert $\alpha^2 = \frac14$. +des Bessel-Operators zum Eigenwert $\alpha^2 = \frac14$ ist. Analog kann man die Lösung $y_2(x)$ für $-\frac12$ verifizieren. diff --git a/buch/chapters/050-differential/potenzreihenmethode.tex b/buch/chapters/050-differential/potenzreihenmethode.tex index 84c52c2..d046f06 100644 --- a/buch/chapters/050-differential/potenzreihenmethode.tex +++ b/buch/chapters/050-differential/potenzreihenmethode.tex @@ -290,7 +290,7 @@ Für ganzzahliges $\alpha$ wird daraus die binomische Formel \] % -% Lösung als hypergeometrische Riehe +% Lösung als hypergeometrische Reihe % \subsubsection{Lösung als hypergeometrische Funktion} Die Newtonreihe verwendet ein absteigendes Produkt im Zähler. @@ -420,25 +420,43 @@ $a_k=0$ sein, die einzige Potenzreihe ist die triviale Funktion $y(x)=0$. Für Differentialgleichungen der Art \eqref{buch:differentialgleichungen:eqn:dglverallg} ist also ein anderer Ansatz nötig. -Die Schwierigkeit bestand darin, dass die Gleichungen für die einzelnen -Koeffizienten $a_k$ voneinander unabhängig waren. -Mit einem zusätzlichen Potenzfaktor $x^\varrho$ mit nicht -notwendigerweise ganzzahligen Wert kann die nötige Flexibilität -erreicht werden. -Wir verwenden daher den Ansatz -\[ +Ursache für das Versagen des Potenzreihenansatzes ist, dass die +Koeffizienten der Differentialgleichung bei $x=0$ eine +Singularität haben. +Ist ist daher damit zu rechnen, dass auch die Lösung $y(x)$ an dieser +Stelle singuläres Verhalten zeigen wird. +Die Terme einer Potenzreihe um den Punkt $x=0$ sind nicht singulär, +können eine solche Singularität also nicht wiedergeben. +Der neue Ansatz sollte ähnlich einfach sein, aber auch gewisse ``einfache'' +Singularitäten darstellen können. +Die Potenzfunktionen $x^\varrho$ mit $\varrho<1$ erfüllen beide +Anforderungen. + +\begin{definition} +\label{buch:differentialgleichungen:def:verallpotenzreihe} +Eine {\em verallgemeinerte Potenzreihe} ist eine Funktion der Form +\begin{equation} y(x) = x^\varrho \sum_{k=0}^\infty a_kx^k = \sum_{k=0}^\infty a_k x^{\varrho+k} -\] -und versuchen nicht nur die Koeffizienten $a_k$ sondern auch den -Exponenten $\varrho$ zu bestimmen. -Durch Modifikation von $\varrho$ können wir immer erreichen, dass -$a_0\ne 0$ ist. - -Die Ableitungen von $y(x)$ mit der zugehörigen Potenz von x sind +\label{buch:differentialgleichungen:eqn:verallpotenzreihe} +\end{equation} +mit $a_0\ne 0$. +\end{definition} + +Die Forderung $a_0\ne 0$ kann nötigenfalls durch Modifikation des +Exponenten $\varrho$ immer erreicht werden. + +Wir verwenden also eine verallgemeinerte Potenzreihe der Form +\eqref{buch:differentialgleichungen:eqn:verallpotenzreihe} +als Lösungsansatz für die +Differentialgleichung~\eqref{buch:differentialgleichungen:eqn:dglverallg}. +Wir berechnen die Ableitungen von $y(x)$ und um sie in der +Differentialgleichung einzusetzen, versehen wir sie auch gleich mit den +benötigten Potenzen von $x$. +So erhalten wir \begin{align*} xy'(x) &= @@ -453,8 +471,9 @@ x^2y''(x) \sum_{k=0}^\infty (\varrho+k)(\varrho+k-1)a_kx^{\varrho+k}. \end{align*} -Diese Ableitungen setzen wir jetzt in die Differentialgleichung ein, -die dadurch zu +Diese Ausdrücke setzen wir jetzt in die +Differentialgleichung~\eqref{buch:differentialgleichungen:eqn:dglverallg} +ein, die dadurch zu \begin{equation} \sum_{k=0}^\infty (\varrho+k)(\varrho+k-1) a_k x^{\varrho+k} + @@ -489,6 +508,7 @@ Ausgeschrieben geben die einzelnen Terme \bigl((\varrho +2)a_2p_0 + (\varrho+1)a_1p_1 + \varrho a_0 p_2\bigr) x^{\varrho+2} + \dots +\label{buch:differentialgleichungen:eqn:dglverallg} \\ &+ q_0a_0x^{\varrho} @@ -685,18 +705,17 @@ Kapitel~\ref{buch:chapter:funktionentheorie} dargestellt werden. \item -Fall 3: $\varrho_1-\varrho-2$ ist eine positive ganze Zahl. +Fall 3: $\varrho_1-\varrho_2$ ist eine positive ganze Zahl. In diesem Fall ist im Allgemeinen nur eine Lösung in Form einer verallgemeinerten Potenzreihe möglich. Auch hier müssen Techniken der Funktionentheorie aus Kapitel~\ref{buch:chapter:funktionentheorie} verwendet werden, um eine zweite Lösung zu finden. -\end{itemize} - Wenn $\varrho_1-\varrho_2$ eine negative ganze Zahl ist, kann man die beiden Nullstellen vertauschen. -Es folgt dann, dass es eine +\end{itemize} + -- cgit v1.2.1 From 8a570ddc78a49006c1e6ad15bf05a19e62038f16 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 21 Jun 2022 16:16:07 +0200 Subject: jacobi stuff completed --- buch/chapters/010-potenzen/tschebyscheff.tex | 78 ++++++++++++++++++++++ buch/chapters/070-orthogonalitaet/orthogonal.tex | 2 +- buch/chapters/070-orthogonalitaet/rodrigues.tex | 12 ++++ buch/chapters/070-orthogonalitaet/sturm.tex | 83 +++++++++++++++++++++++- buch/chapters/references.bib | 8 +++ 5 files changed, 179 insertions(+), 4 deletions(-) diff --git a/buch/chapters/010-potenzen/tschebyscheff.tex b/buch/chapters/010-potenzen/tschebyscheff.tex index 29d1d4b..780be1b 100644 --- a/buch/chapters/010-potenzen/tschebyscheff.tex +++ b/buch/chapters/010-potenzen/tschebyscheff.tex @@ -241,6 +241,9 @@ Die Rekursionsformel kann auch dazu verwendet werden, Werte der Tschebyscheff-Polynome sehr effizient zu berechnen. +% +% Multiplikationsformel +% \subsubsection{Multiplikationsformel} Aus der Definition mit Hilfe trigonometrischer Funktionen lässt sich auch eine Multiplikationsformel ableiten. @@ -300,4 +303,79 @@ T_{mn}(x). Damit ist auch \eqref{buch:potenzen:tschebyscheff:mult2} bewiesen. \end{proof} +% +% Differentialgleichung +% +\subsubsection{Differentialgleichung} +Die Ableitungen der Tschebyscheff-Polynome sind +\begin{align*} +T_n(x) +&= +\cos (ny(x)) +&& +&& +\\ +\frac{d}{dx} T_n(x) +&= +\frac{d}{dx} \cos(ny(x)) += +n\sin(ny(x)) \cdot \frac{dy}{dx} +& +&\text{mit}& +\frac{dy}{dx} +&= +-\frac{1}{\sqrt{1-x^2}} +\\ +\frac{d^2}{dx^2} T_n(x) +&= +-n^2\cos(ny(x)) \biggl(\frac{dy}{dx}\biggr)^2 + n\sin(ny(x)) \frac{d^2y}{dx^2} +& +&\text{mit}& +\frac{d^2y}{dx^2} +&= +-\frac{x}{(1-x^2)^{\frac32}}. +\end{align*} +Wir suchen eine verschwindende Linearkombination dieser drei Terme +mit Funktionen von $x$ als Koeffizienten. +Wir setzen daher an +\begin{align*} +0 +&= +\alpha(x) T_n''(x) ++ +\beta(x) T_n'(x) ++ +\gamma(x) T_n(x) +\\ +&= +\biggl( +-\frac{n^2\alpha(x)}{1-x^2} ++ +\gamma(x) +\biggr) +\cos(ny(x)) ++ +\biggl( +-\frac{nx\alpha(x)}{(1-x^2)^{\frac32}} +-\frac{n\beta(x)}{\sqrt{1-x^2}} +\biggr) +\sin(ny(x)) +\end{align*} +Die grossen Klammern müssen verschwinden, was nur möglich ist, wenn zu +gegebenem $\alpha(x)$ die anderen beiden Koeffizienten +\begin{align*} +\beta(x) &= -\frac{x\alpha(x)}{1-x^2} \\ +\gamma(x) &= n^2 \frac{\alpha(x)}{1-x^2} +\end{align*} +sind. +Die Koeffizienten werden besonders einfach, wenn man $\alpha(x)=1-x^2$ wählt. +Die Tschebyscheff-Polynome sind Lösungen der Differentialgleichung +\begin{equation} +(1-x^2) T_n''(x) -x T_n'(x) +n^2 T_n(x) = 0. +\label{buch:potenzen:tschebyscheff:dgl} +\end{equation} + + + + diff --git a/buch/chapters/070-orthogonalitaet/orthogonal.tex b/buch/chapters/070-orthogonalitaet/orthogonal.tex index 97cd06b..df04514 100644 --- a/buch/chapters/070-orthogonalitaet/orthogonal.tex +++ b/buch/chapters/070-orthogonalitaet/orthogonal.tex @@ -638,7 +638,7 @@ Der Vektorraum $H_w$ von auf $(a,b)$ definierten Funktionen sei H_w = \biggl\{ -f:\colon(a,b) \to \mathbb{R} +f\colon(a,b) \to \mathbb{R} \;\bigg|\; \int_a^b |f(x)|^2 w(x)\,dx \biggr\}. diff --git a/buch/chapters/070-orthogonalitaet/rodrigues.tex b/buch/chapters/070-orthogonalitaet/rodrigues.tex index 9a36bdc..39b01b9 100644 --- a/buch/chapters/070-orthogonalitaet/rodrigues.tex +++ b/buch/chapters/070-orthogonalitaet/rodrigues.tex @@ -210,6 +210,18 @@ von Polynomen bilden. Durch Normierung müssen sich daraus die Polynome $p_n(x)$ ergeben. \end{proof} +\subsection{Differentialgleichung} +Man kann auch zeigen (siehe z.~B.~\cite{buch:pearsondgl}, +dass die orthogonalen Polynome, die die +Rodrigues-Formel liefert, einer Differentialgleichung zweiter +Ordnung genügen, deren möglicherweise nicht konstante Koeffizienten +sich direkt aus $A(x)$, $B(x)$ und $w(x)$ bestimmen lassen. + +\subsection{Beispiel} +Im folgenden zeigen wir, wie sich für viele der früher eingeführten +Gewichtsfunktionen Rodrigues-Formeln für die zugehörigen orthogonalen +Polynome konstruieren lassen. + % % Legendre-Polynome % diff --git a/buch/chapters/070-orthogonalitaet/sturm.tex b/buch/chapters/070-orthogonalitaet/sturm.tex index 1ba0ecb..613a491 100644 --- a/buch/chapters/070-orthogonalitaet/sturm.tex +++ b/buch/chapters/070-orthogonalitaet/sturm.tex @@ -371,9 +371,10 @@ bezüglich des modifizierten Skalarproduktes. Das Sturm-Liouville-Problem ist also ein Eigenwertproblem im Vektorraum $H$ mit dem Skalarprodukt $\langle\,\;,\;\rangle_w$. Der Operator -\[ +\begin{equation} L = \frac{1}{w(x)} \biggl(-\frac{d}{dx} p(x)\frac{d}{dx} + q(x)\biggr) -\] +\label{buch:orthogonal:sturm-liouville:opL1} +\end{equation} heisst der {\em Sturm-Liouville-Operator}. Eine Lösung des Sturm-Liouville-Problems ist eine Funktion $y(x)$ derart, dass @@ -383,6 +384,15 @@ Ly = \lambda y, $\lambda$ ist der zu $y(x)$ gehörige Eigenwert. Der Operator ist definiert auf Funktionen des im vorangegangenen Abschnitt definierten Vektorraumes $H$. +Führt man die Differentiation aus, bekommt der Operator die Form +\begin{equation} +L += +-\frac{p(x)}{w(x)} \frac{d^2}{dx^2} +-\frac{p'(x)}{w(x)} \frac{d}{dx} ++\frac{q(x)}{w(x)}. +\label{buch:orthogonal:sturm-liouville:opL2} +\end{equation} % % Beispiele @@ -725,7 +735,74 @@ bezüglich des Skalarproduktes % Jacobi-Polynome % \subsubsection{Jacobi-Polynome} -TODO +Die Jacobi-Polynome sind orthogonal bezüglich des Skalarproduktes +mit der Gewichtsfunktion +\( +w^{(\alpha,\beta)}(x) = (1-x)^\alpha(1+x)^\beta, +\) +definiert in Definition~\ref{buch:orthogonal:def:jacobi-gewichtsfunktion}. +%Bei der Herleitung der Rodrigues-Formel für die Jacobi-Polynome wurde erkannt, +%dass $B(x)=1-x^2$ und $A(x)=\beta-\alpha-(\alpha+\beta)x$ sein muss. +Man kann zeigen, dass die Jacobi-Polynome Lösungen der +Jacobi-Differentialgleichung +\begin{equation} +(1-x^2)y'' + (\beta-\alpha-(\alpha+\beta + 2)x)y' + n(n+\alpha+\beta+1)y=0 +\label{buch:orthogonal:jacobi:dgl} +\end{equation} +sind. +Es stellt sich die Frage, ob sich Funktionen $p(x)$ und $q(x)$ finden lassen +derart, dass die Differentialgleichung~\eqref{buch:orthogonal:jacobi:dgl} +eine Sturm-Liouville-Gleichung wird. +Gemäss der Form~\eqref{buch:orthogonal:sturm-liouville:opL2} muss +$p(x)$ so gefunden werden, dass +\begin{align*} +\frac{p(x)}{w^{(\alpha,\beta)}(x)} &= 1-x^2 \\ +\frac{p'(x)}{w^{(\alpha,\beta)}(x)} &= \beta-\alpha-(\alpha+\beta+2)x +\end{align*} +gilt. +Der Quotient der ersten beiden Gleichungen ist die logarithmische Ableitung +\[ +(\log p(x))' += +\frac{p'(x)}{p(x)} += +\frac{1-x^2}{\beta-\alpha-(\alpha+\beta+2)x} +\] +die sich in geschlossener Form integrieren lässt. +Man findet als Stammfunktion +\[ +p(x) += +(1-x)^{\alpha+1}(1+x)^{\beta+1}. +\] +Tatsächlich ist +\begin{align*} +\frac{p(x)}{w^{(\alpha,\beta)}(x)} +&= +\frac{(1-x)^{\alpha+1}(1+x)^{\beta+1}}{(1-x)^\alpha(1+x)^\beta} += +(1-x)(1+x)=1-x^2 +\\ +\frac{p'(x)}{w^{(\alpha,\beta)}(x)} +&= +\frac{ +-(\alpha+1) +(1-x)^{\alpha}(1+x)^{\beta+1} ++ +(\beta+1) +(1-x)^{\alpha+1}(1+x)^{\beta} +}{ +(1-x)^{\alpha}(1+x)^{\beta} +} +\\ +&= +-(\alpha+1)(1+x) + (\beta+1)(1-x) += +\beta-\alpha-(\alpha+\beta+2)x. +\end{align*} +Damit ist +die Jacobische Differentialgleichung +als Sturm-Liouville-Differentialgleichung erkannt. % % Hypergeometrische Differentialgleichungen diff --git a/buch/chapters/references.bib b/buch/chapters/references.bib index 32a86ec..0818f54 100644 --- a/buch/chapters/references.bib +++ b/buch/chapters/references.bib @@ -118,3 +118,11 @@ YEAR = 2022, url = {https://de.wikipedia.org/wiki/GNU_Multiple_Precision_Arithmetic_Library} } +@article{buch:pearsondgl, + title = {Orthogonal matrix polynomials, scalar-type Rordigues' formulas and Pearson equations}, + author = { Antion J. Dur\'an and F. Alberto Grünbaum }, + year = 2005, + journal = { Journal of Approximation theory }, + volume = 134, + pages = {267-280} +} -- cgit v1.2.1 From 98e2356f6d690fc6840c3ec5ae8b9eaf21771df2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 21 Jun 2022 17:54:12 +0200 Subject: bessel 2nd kind --- buch/chapters/050-differential/bessel.tex | 22 +-- buch/chapters/070-orthogonalitaet/legendredgl.tex | 2 +- buch/chapters/070-orthogonalitaet/sturm.tex | 17 +- buch/chapters/080-funktionentheorie/chapter.tex | 5 - .../080-funktionentheorie/singularitaeten.tex | 176 ++++++++++++++++++++- buch/chapters/references.bib | 11 ++ 6 files changed, 209 insertions(+), 24 deletions(-) diff --git a/buch/chapters/050-differential/bessel.tex b/buch/chapters/050-differential/bessel.tex index cf271e3..4e1c58c 100644 --- a/buch/chapters/050-differential/bessel.tex +++ b/buch/chapters/050-differential/bessel.tex @@ -129,7 +129,8 @@ ist. % % Bessel-Funktionen erster Art % -\subsection{Bessel-Funktionen erster Art} +\subsection{Bessel-Funktionen erster Art +\label{buch:differentialgleichungen:subsection:bessel1steart}} Für $\alpha \ge 0$ gibt es immer mindestens eine Lösung der Besselgleichung als verallgemeinerte Potenzreihe mit $\varrho=\alpha$. Die Funktion $q(x)=x^2-\alpha^2$ ist ein Polynom, die einzigen @@ -344,6 +345,16 @@ J_{n}(x). Insbesondere unterscheiden sich $J_n(x)$ und $J_{-n}(x)$ nur durch ein Vorzeichen. +Als lineare Differentialgleichung zweiter Ordnung erwarten wir noch +eine zweite, linear unabhängige Lösung. +Diese kann jedoch nicht allein mit der Potenzreihenmethode, +dazu sind die Methoden der Funktionentheorie nötig. +Im Abschnitt~\ref{buch:funktionentheorie:subsection:dglsing} +wird gezeigt, wie dies möglich ist und auf +Seite~\pageref{buch:funktionentheorie:subsubsection:bessel2art} +werden die damit zu findenden Bessel-Funktionen 0-ter Ordnung und +zweiter Art vorgestellt. + % % Erzeugende Funktione % @@ -519,15 +530,6 @@ J_0(x) \] geschrieben werden kann. -Als lineare Differentialgleichung zweiter Ordnung erwarten wir noch -eine zweite, linear unabhängige Lösung. -Diese kann jedoch nicht allein mit der Potenzreihenmethode, -dazu sind die Methoden der Funktionentheorie nötig. -Im Abschnitt~\ref{buch:funktionentheorie:subsection:dglsing} -wird gezeigt, wie dies möglich ist und auf -Seite~\pageref{buch:funktionentheorie:subsubsection:bessel2art} -werden die damit zu findenden Bessel-Funktionen 0-ter Ordnung und -zweiter Art vorgestellt. % % Der Fall \alpha=p, p\in \mathbb{N} diff --git a/buch/chapters/070-orthogonalitaet/legendredgl.tex b/buch/chapters/070-orthogonalitaet/legendredgl.tex index 6401e98..c4eaf97 100644 --- a/buch/chapters/070-orthogonalitaet/legendredgl.tex +++ b/buch/chapters/070-orthogonalitaet/legendredgl.tex @@ -443,7 +443,7 @@ schlägt eine zweite Lösung vor, im vorliegenden Fall mit $b=1$ ist die zweite Lösung jedoch identisch zu ersten, es muss daher ein anderer Weg zu einer zweiten Lösung gesucht werden. -XXX TODO: zweite Lösung der Differentialgleichung. +%XXX TODO: zweite Lösung der Differentialgleichung. % % diff --git a/buch/chapters/070-orthogonalitaet/sturm.tex b/buch/chapters/070-orthogonalitaet/sturm.tex index 613a491..164cd9a 100644 --- a/buch/chapters/070-orthogonalitaet/sturm.tex +++ b/buch/chapters/070-orthogonalitaet/sturm.tex @@ -694,7 +694,8 @@ des Skalarproduktes mit der Laguerre-Gewichtsfunktion. % \subsubsection{Tschebyscheff-Polynome} Die Tschebyscheff-Polynome sind Lösungen der -Tschebyscheff-Differentialgleichung +bereits in Kapitel~\ref{buch:chapter:potenzen} hergeleiteten +Tschebyscheff-Differentialgleichung~\eqref{buch:potenzen:tschebyscheff:dgl} \[ (1-x^2)y'' -xy' = n^2y \] @@ -737,14 +738,16 @@ bezüglich des Skalarproduktes \subsubsection{Jacobi-Polynome} Die Jacobi-Polynome sind orthogonal bezüglich des Skalarproduktes mit der Gewichtsfunktion -\( +\[ w^{(\alpha,\beta)}(x) = (1-x)^\alpha(1+x)^\beta, -\) +\] definiert in Definition~\ref{buch:orthogonal:def:jacobi-gewichtsfunktion}. %Bei der Herleitung der Rodrigues-Formel für die Jacobi-Polynome wurde erkannt, %dass $B(x)=1-x^2$ und $A(x)=\beta-\alpha-(\alpha+\beta)x$ sein muss. -Man kann zeigen, dass die Jacobi-Polynome Lösungen der -Jacobi-Differentialgleichung +Man kann zeigen, dass sie Lösungen der +{\em Jacobi-Diffe\-ren\-tial\-gleichung} +\index{Jacobi-Differentialgleichung}% +\index{Differentialgleichung!Jacobi}% \begin{equation} (1-x^2)y'' + (\beta-\alpha-(\alpha+\beta + 2)x)y' + n(n+\alpha+\beta+1)y=0 \label{buch:orthogonal:jacobi:dgl} @@ -760,7 +763,7 @@ $p(x)$ so gefunden werden, dass \frac{p'(x)}{w^{(\alpha,\beta)}(x)} &= \beta-\alpha-(\alpha+\beta+2)x \end{align*} gilt. -Der Quotient der ersten beiden Gleichungen ist die logarithmische Ableitung +Der Quotient der beiden Gleichungen ist die logarithmische Ableitung \[ (\log p(x))' = @@ -768,6 +771,7 @@ Der Quotient der ersten beiden Gleichungen ist die logarithmische Ableitung = \frac{1-x^2}{\beta-\alpha-(\alpha+\beta+2)x} \] +von $p(x)$, die sich in geschlossener Form integrieren lässt. Man findet als Stammfunktion \[ @@ -811,6 +815,7 @@ als Sturm-Liouville-Differentialgleichung erkannt. %\url{https://encyclopediaofmath.org/wiki/Hypergeometric_equation} Auch die Eulersche hypergeometrische Differentialgleichung lässt sich in die Form eines Sturm-Liouville-Operators +\index{Eulersche hypergeometrische Differentialgleichung!als Sturm-Liouville-Gleichung}% bringen. Dazu setzt man \begin{align*} diff --git a/buch/chapters/080-funktionentheorie/chapter.tex b/buch/chapters/080-funktionentheorie/chapter.tex index b7b5325..aa1041a 100644 --- a/buch/chapters/080-funktionentheorie/chapter.tex +++ b/buch/chapters/080-funktionentheorie/chapter.tex @@ -37,11 +37,6 @@ auf der rellen Achse hinaus fortsetzen. \input{chapters/080-funktionentheorie/fortsetzung.tex} \input{chapters/080-funktionentheorie/anwendungen.tex} -\section{TODO} -\begin{itemize} -\item Aurgument-Prinzip -\end{itemize} - \section*{Übungsaufgaben} \rhead{Übungsaufgaben} \aufgabetoplevel{chapters/080-funktionentheorie/uebungsaufgaben} diff --git a/buch/chapters/080-funktionentheorie/singularitaeten.tex b/buch/chapters/080-funktionentheorie/singularitaeten.tex index 07204ab..6742865 100644 --- a/buch/chapters/080-funktionentheorie/singularitaeten.tex +++ b/buch/chapters/080-funktionentheorie/singularitaeten.tex @@ -5,6 +5,9 @@ % \newcommand*\sk{\vcenter{\hbox{\includegraphics[scale=0.8]{chapters/080-funktionentheorie/images/operator-1.pdf}}}} +% +% Löesung linearer Differentialgleichunge mit Singularitäten +% \subsection{Lösungen von linearen Differentialgleichungen mit Singularitäten \label{buch:funktionentheorie:subsection:dglsing}} Die Potenzreihenmethode hat ermöglicht, mindestens eine Lösung gewisser @@ -19,6 +22,9 @@ Ziel dieses Abschnitts ist zu zeigen, warum dies nicht möglich war und wie diese Schwierigkeit mit Hilfe der analytischen Fortsetzung überwunden werden kann. +% +% Differentialgleichungen mit Singularitäten +% \subsubsection{Differentialgleichungen mit Singularitäten} Mit der Besselschen Differentialgleichung~\eqref{buch:differentialgleichungen:eqn:bessel} @@ -93,6 +99,9 @@ Klasse von Singularitäten beschreiben, aber es ist nicht klar, welche weiteren Arten von Singularitäten berücksichtigt werden sollten. Dies soll im Folgenden geklärt werden. +% +% Der Lösungsraum einer Differentialgleichung zweiter Ordnung +% \subsubsection{Der Lösungsraum einer Differentialgleichung zweiter Ordnung} Eine Differentialgleichung $n$-ter Ordnung hat lokal einen $n$-dimensionalen Vektorraum als Lösungsraum. @@ -126,6 +135,9 @@ Wenn der Punkt $x_0$ aus dem Kontext klar ist, kann er auch weggelassen werden: $\mathbb{L}_{x_0}=\mathbb{L}$. \end{definition} +% +% Analytische Fortsetzung auf dem Weg um 0 +% \subsubsection{Analytische Fortsetzung auf einem Weg um $0$} Die betrachteten Differentialgleichungen haben holomorphe Koeffizienten, Lösungen der Differentialgleichung lassen sich @@ -186,6 +198,9 @@ e^{2\pi i\varrho} z^\varrho \] schreiben. +% +% Rechenregeln für die analytische Fortsetzung +% \subsubsection{Rechenregeln für die analytische Fortsetzung} Der Operator $\sk$ ist ein Algebrahomomorphismus, d.~h.~für zwei analytische Funktionen $f$ und $g$ gilt @@ -215,7 +230,9 @@ vertauscht, dass also \sk(f^{(n)}). \] - +% +% Analytische Fortsetzung von Lösungen einer Differentialgleichung +% \subsubsection{Analytische Fortsetzung von Lösungen einer Differentialgleichung} Wir untersuchen jetzt die Wirkung des Operators $\sk$ auf den Lösungsraum $\mathbb{L}$ einer Differentialgleichung mit @@ -258,7 +275,9 @@ geeigneten Basis in besonders einfache Form gebracht. Wir führen diese Diskussion im folgenden nur für eine Differentialgleichung zweiter Ordnung $n=2$. - +% +% Fall A diagonalisierbar +% \subsubsection{Fall $A$ diagonalisierbar: verallgemeinerte Potenzreihen} In diesem Fall kann man die Lösungsfunktionen $w_1$ und $w_2$ so wählen, dass die Matrix @@ -326,6 +345,9 @@ Falls der Operator $\sk$ also diagonalisierbar ist, dann gibt es zwei linear unabhängige Lösungen der Differentialgleichung in der Form einer verallgemeinerten Potenzreihe. +% +% Fall $A$ nicht diagonalisierbar +% \subsubsection{Fall $A$ nicht diagonalisierbar: logarithmische Lösungen} Falls die Matrix $A$ nicht diagonalisierbar ist, hat sie nur einen Eigenwert $\lambda$ und kann durch geeignete Wahl einer Basis in @@ -421,8 +443,158 @@ in die ursprüngliche Differentialgleichung ein, verschwindet der $\log(z)$-Term und für die verbleibenden Koeffizienten kann die bekannte Methode des Koeffizientenvergleichs verwendet werden. +% +% Bessel-Funktionen zweiter Art +% \subsubsection{Bessel-Funktionen zweiter Art \label{buch:funktionentheorie:subsubsection:bessel2art}} +Im Abschnitt~\ref{buch:differentialgleichungen:subsection:bessel1steart} +waren wir nicht in der Lage, für ganzahlige $\alpha$ zwei linear unabhängige +Lösungen der Besselschen Differentialgleichung zu finden. +Die vorangegangenen Ausführungen erklären dies: der Ansatz als +verallgemeinerte Potenzreihe konnte die Singularität nicht wiedergeben. +Inzwischen wissen wir, dass wir nach einer Lösung mit einer logarithmischen +Singularität suchen müssen. +Um dies nachzuprüfen, setzen wir den Ansatz +\[ +y(x) = \log(x) J_n(x) + z(x) +\] +in die Besselsche Differentialgleichung ein. +Dazu benötigen wir erst die Ableitungen von $y(x)$: +\begin{align*} +y'(x) +&= +\frac{1}{x} J_n(x) + \log(x)J_n'(x) + z'(x) +\\ +xy'(x) +&= +J_n(x) + x\log(x)J_n'(x) + xz'(x) +\\ +y''(x) +&= +-\frac{1}{x^2} J_n(x) ++\frac2x J_n'(x) ++\log(x) J_n''(x) ++z''(x) +\\ +x^2y''(x) +&= +-J_n(x) + 2xJ'_n(x)+x^2\log(x)J_n''(x) + x^2z''(x). +\end{align*} +Die Wirkung des Bessel-Operators auf $y(x)$ ist +\begin{align*} +By +&= +x^2y''+xy'+x^2y +\\ +&= +\log(x) \bigl( +\underbrace{ +x^2J_n''(x) ++xJ_n'(x) ++x^2J_n(x) +}_{\displaystyle = n^2J_n(x)} +\bigr) +-J_n(x)+2xJ_n'(x) ++J_n(x) ++ +xz'(x) ++ +x^2z''(x) +\\ +&= +n^2 \log(x)J_n(x) ++ +2xJ_n(x) ++ +x^2z(x) ++ +xz'(x) ++ +x^2z''(x) +\end{align*} +Damit $y(x)$ eine Eigenfunktion zum Eigenwert $n^2$ wird, muss +dies mit $n^2y(x)$ übereinstimmen, also +\begin{align*} +n^2 \log(x)J_n(x) ++ +2xJ_n(x) ++ +x^2z(x) ++ +xz'(x) ++ +x^2z''(x) +&= +n^2\log(x)J_n(x) + n^2z(x). +\intertext{Die logarithmischen Terme heben sich weg und es bleibt} +x^2z''(x) ++ +xz'(x) ++ +(x^2-n^2)z(x) +&= +-2xJ_n(x). +\end{align*} +Eine Lösung für $z(x)$ kann mit Hilfe eines Potenzreihenansatzes +gefunden werden. +Sie ist aber nur bis auf einen Faktor festgelegt. +Tatsächlich kann man aber auch eine direkte Definition geben. + +\begin{definition} +Die Bessel-Funktionen zweiter Art der Ordnung $\alpha$ sind die Funktionen +\begin{equation} +Y_\alpha(x) += +\frac{J_\alpha(x) \cos \alpha\pi - J_{-\alpha}(x)}{\sin \alpha\pi }. +\label{buch:funktionentheorie:bessel:2teart} +\end{equation} +Für ganzzahliges $\alpha$ verschwindet der Nenner in +\eqref{buch:funktionentheorie:bessel:2teart}, +daher ist +\[ +Y_n(x) += +\lim_{\alpha\to n} Y_{\alpha}(x) += +\frac{1}{\pi}\biggl( +\frac{d}{d\alpha}J_{\alpha}(x)\bigg|_{\alpha=n} ++ +(-1)^n +\frac{d}{d\alpha}J_{\alpha}(x)\bigg|_{\alpha=-n} +\biggr). +\] +\end{definition} +Die Funktionen $Y_\alpha(x)$ sind Linearkombinationen der Lösungen +$J_\alpha(x)$ und $J_{-\alpha}(x)$ und damit automatisch auch Lösungen +der Besselschen Differentialgleichung. +Dies gilt auch für den Grenzwert im Falle ganzahliger Ordnung $\alpha$. +Da $J_{\alpha}(x)$ durch eine Reihenentwicklung definiert ist, kann man +diese Termweise nach $\alpha$ ableiten und damit auch eine +Reihendarstellung von $Y_n(x)$ finden. +Nach einiger Rechnung findet man: +\begin{align*} +Y_n(x) +&= +\frac{2}{\pi}J_n(x)\log\frac{x}2 +- +\frac1{\pi} +\sum_{k=0}^{n-1} \frac{(n-k-1)!}{k!}\biggl(\frac{x}2\biggr)^{2k-n} +\\ +&\qquad\qquad +- +\frac1{\pi} +\sum_{k=0}^\infty \frac{(-1)^k}{k!\,(n+k)!} +\biggl( +\frac{\Gamma'(n+k+1)}{\Gamma(n+k+1)} ++ +\frac{\Gamma'(k+1)}{\Gamma(k+1)} +\biggr) +\biggl( +\frac{x}2 +\biggr)^{2k+n} +\end{align*} +(siehe auch \cite[p.~200]{buch:specialfunctions}). diff --git a/buch/chapters/references.bib b/buch/chapters/references.bib index 0818f54..571831a 100644 --- a/buch/chapters/references.bib +++ b/buch/chapters/references.bib @@ -126,3 +126,14 @@ volume = 134, pages = {267-280} } + +@book{buch:specialfunctions, + author = { George E. Andrews and Richard Askey and Ranjan Roy }, + title = { Special Functions }, + series = { Encyclopedia of Mathematics and its applications }, + volume = { 71 }, + publisher = { Cambridge University Press }, + ISBN = { 0-521-78988-5 }, + year = 2004 +} + -- cgit v1.2.1 From 45e236bc519b62e8afc1aea7d2e625df4c145348 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Wed, 22 Jun 2022 11:49:27 +0200 Subject: add ell stuff --- buch/chapters/110-elliptisch/dglsol.tex | 59 +++++++++ buch/chapters/110-elliptisch/ellintegral.tex | 25 +++- buch/chapters/110-elliptisch/elltrigo.tex | 8 ++ buch/chapters/110-elliptisch/images/Makefile | 6 +- buch/chapters/110-elliptisch/images/ellpolnul.pdf | Bin 0 -> 19288 bytes buch/chapters/110-elliptisch/images/ellpolnul.tex | 57 +++++++++ .../chapters/110-elliptisch/images/jacobiplots.pdf | Bin 56975 -> 56975 bytes buch/chapters/110-elliptisch/images/kegelpara.pdf | Bin 202828 -> 202828 bytes .../110-elliptisch/images/torusschnitt.pdf | Bin 312677 -> 312677 bytes buch/chapters/110-elliptisch/lemniskate.tex | 135 +++++++++++---------- 10 files changed, 222 insertions(+), 68 deletions(-) create mode 100644 buch/chapters/110-elliptisch/images/ellpolnul.pdf create mode 100644 buch/chapters/110-elliptisch/images/ellpolnul.tex diff --git a/buch/chapters/110-elliptisch/dglsol.tex b/buch/chapters/110-elliptisch/dglsol.tex index 7eaab38..3ef1eef 100644 --- a/buch/chapters/110-elliptisch/dglsol.tex +++ b/buch/chapters/110-elliptisch/dglsol.tex @@ -339,6 +339,65 @@ y(u) = F^{-1}(u+C). Die Jacobischen elliptischen Funktionen sind daher inverse Funktionen der unvollständigen elliptischen Integrale. +% +% +% +\subsubsection{Pole und Nullstellen der Jacobischen elliptischen Funktionen} +Für die Funktion $y=\operatorname{sn}(u,k)$ erfüllt die Differentialgleichung +\[ +\frac{dy}{du} += +\sqrt{(1-y^2)(1-k^2y^2)}, +\] +welche mit dem unbestimmten Integral +\begin{equation} +u + C = \int\frac{dy}{\sqrt{(1-y^2)(1-k^2y^2)}} +\label{buch:elliptisch:eqn:uyintegral} +\end{equation} +gelöst werden kann. +Der Wertebereich des Integrals in \eqref{buch:elliptisch:eqn:uyintegral} +wurde bereits in +Abschnitt~\ref{buch:elliptisch:subsection:unvollstintegral} +auf Seite~\pageref{buch:elliptische:subsubsection:wertebereich} +diskutiert. +Daraus können jetzt Nullstellen und Pole der Funktion $\operatorname{sn}(u,k)$ +und mit Hilfe von Tabelle~\ref{buch:elliptisch:fig:jacobi-relationen} +auch für $\operatorname{cn}(u,k)$ und $\operatorname{dn}(u,k)$ +abgelesen werden: +\begin{equation} +\begin{aligned} +\operatorname{sn}(0,k)&=0 +& +\operatorname{cn}(0,k)&=1 +& +\operatorname{dn}(0,k)&=1 +\\ +\operatorname{sn}(iK',k)&=\infty +& +\operatorname{cn}(iK',k)&=\infty +& +\operatorname{dn}(iK',k)&=\infty +\\ +\operatorname{sn}(K,k)&=1 +& +\operatorname{cn}(K,k)&=0 +& +\operatorname{dn}(K,k)&=k' +\\ +\operatorname{sn}(K+iK',k)&=\frac{1}{k} +& +\operatorname{cn}(K+iK',k)&=\frac{ik'}{k} +& +\operatorname{dn}(K+iK',k)&=0 +\end{aligned} +\label{buch:elliptische:eqn:eckwerte} +\end{equation} +Daraus lassen sich jetzt auch die Werte der abgeleiteten Jacobischen +elliptischen Funktionen ablesen. + + + + % % Differentialgleichung des anharmonischen Oszillators diff --git a/buch/chapters/110-elliptisch/ellintegral.tex b/buch/chapters/110-elliptisch/ellintegral.tex index 3acce2f..bc597d6 100644 --- a/buch/chapters/110-elliptisch/ellintegral.tex +++ b/buch/chapters/110-elliptisch/ellintegral.tex @@ -355,9 +355,9 @@ K(k) dies beweist die Behauptung. \end{proof} - - - +% +% Umfang einer Ellipse +% \subsubsection{Umfang einer Ellipse} \begin{figure} \centering @@ -451,13 +451,20 @@ Hilfe einer Entwicklung der Wurzel mit der Binomialreihe gefunden werden. \end{proof} +% +% +% \subsubsection{Komplementäre Integrale} \subsubsection{Ableitung} XXX Ableitung \\ XXX Stammfunktion \\ -\subsection{Unvollständige elliptische Integrale} +% +% Unvollständige elliptische Integrale +% +\subsection{Unvollständige elliptische Integrale +\label{buch:elliptisch:subsection:unvollstintegral}} Die Funktionen $K(k)$ und $E(k)$ sind als bestimmte Integrale über ein festes Intervall definiert. Die {\em unvollständigen elliptischen Integrale} entstehen, indem die @@ -522,12 +529,18 @@ Die Abbildung~\ref{buch:elliptisch:fig:unvollstaendigeintegrale} zeigt Graphen der unvollständigen elliptischen Integrale für verschiedene Werte des Parameters. +% +% Symmetrieeigenschaften +% \subsubsection{Symmetrieeigenschaften} Die Integranden aller drei unvollständigen elliptischen Integrale sind gerade Funktionen der reellen Variablen $t$. Die Funktionen $F(x,k)$, $E(x,k)$ und $\Pi(n,x,k)$ sind daher ungeraden Funktionen von $x$. +% +% Elliptische Integrale als komplexe Funktionen +% \subsubsection{Elliptische Integrale als komplexe Funktionen} Die unvollständigen elliptischen Integrale $F(x,k)$, $F(x,k)$ und $\Pi(n,x,k)$ in Jacobi-Form lassen sich auch für komplexe Argumente interpretieren. @@ -541,7 +554,11 @@ $\pm 1/\sqrt{n}$ XXX Additionstheoreme \\ XXX Parameterkonventionen \\ +% +% Wertebereich +% \subsubsection{Wertebereich} +\label{buch:elliptische:subsubsection:wertebereich} Die unvollständigen elliptischen Integrale betrachtet als reelle Funktionen haben nur positive relle Werte. Zum Beispiel nimmt das unvollständige elliptische Integral erster Art diff --git a/buch/chapters/110-elliptisch/elltrigo.tex b/buch/chapters/110-elliptisch/elltrigo.tex index d600243..583e00a 100644 --- a/buch/chapters/110-elliptisch/elltrigo.tex +++ b/buch/chapters/110-elliptisch/elltrigo.tex @@ -18,6 +18,14 @@ auf einer Ellipse. \end{figure} % based on Willliam Schwalm, Elliptic functions and elliptic integrals % https://youtu.be/DCXItCajCyo +Die Ellipse wurde in Abschnitt~\ref{buch:geometrie:subsection:kegelschnitte} +als Kegelschnitt erkannt und auf verschiedene Arten parametrisiert. +In diesem Abschnitt soll gezeigt werden, wie man die Parametrisierung +eines Kreises mit trigonometrischen Funktionen verallgemeinern kann +auf eine Parametrisierung einer Ellipse mit den drei +Funktionen $\operatorname{sn}(u,k)$, +$\operatorname{cn}(u,k)$ und $\operatorname{dn}(u,k)$, +die ähnliche Eigenschaften haben wie die trigonometrischen Funktionen. % % Geometrie einer Ellipse diff --git a/buch/chapters/110-elliptisch/images/Makefile b/buch/chapters/110-elliptisch/images/Makefile index e6e5b09..3074994 100644 --- a/buch/chapters/110-elliptisch/images/Makefile +++ b/buch/chapters/110-elliptisch/images/Makefile @@ -5,7 +5,8 @@ # all: lemniskate.pdf ellipsenumfang.pdf unvollstaendig.pdf rechteck.pdf \ ellipse.pdf pendel.pdf jacobiplots.pdf jacobidef.pdf jacobi12.pdf \ - sncnlimit.pdf slcl.pdf torusschnitt.pdf kegelpara.pdf lemnispara.pdf + sncnlimit.pdf slcl.pdf torusschnitt.pdf kegelpara.pdf lemnispara.pdf \ + ellpolnul.pdf lemniskate.pdf: lemniskate.tex pdflatex lemniskate.tex @@ -113,3 +114,6 @@ lemnispara.pdf: lemnispara.tex lemnisparadata.tex pdflatex lemnispara.tex ltest: lemnispara.pdf + +ellpolnul.pdf: ellpolnul.tex + pdflatex ellpolnul.tex diff --git a/buch/chapters/110-elliptisch/images/ellpolnul.pdf b/buch/chapters/110-elliptisch/images/ellpolnul.pdf new file mode 100644 index 0000000..ca52cdf Binary files /dev/null and b/buch/chapters/110-elliptisch/images/ellpolnul.pdf differ diff --git a/buch/chapters/110-elliptisch/images/ellpolnul.tex b/buch/chapters/110-elliptisch/images/ellpolnul.tex new file mode 100644 index 0000000..831b477 --- /dev/null +++ b/buch/chapters/110-elliptisch/images/ellpolnul.tex @@ -0,0 +1,57 @@ +% +% tikztemplate.tex -- template for standalon tikz images +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{amsmath} +\usepackage{times} +\usepackage{txfonts} +\usepackage{pgfplots} +\usepackage{csvsimple} +\usetikzlibrary{arrows,intersections,math} +\begin{document} +\def\skala{1} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +\definecolor{rot}{rgb}{0.8,0,0} +\definecolor{blau}{rgb}{0,0,1} +\definecolor{gruen}{rgb}{0,0.6,0} + +\draw (-1,-1) rectangle (1,1); +\node at (-1,-1) [below left] {$0$}; +\node at (1,-1) [below right] {$K$}; +\node at (1,1) [above right] {$K+iK'$}; +\node at (-1,1) [above left] {$iK'$}; +\node at (0,0) {$u$}; + +\begin{scope}[xshift=4cm] +\fill[color=rot!20] (-1,-1) rectangle (1,1); +\node at (-1,-1) {$0$}; +\node at (1,-1) {$1$}; +\node at (1,1) {$\frac1k$}; +\node at (-1,1) {$\infty$}; +\node[color=rot] at (0,0) {$\operatorname{sn}(u,k)$}; +\end{scope} + +\begin{scope}[xshift=7cm] +\fill[color=blau!20] (-1,-1) rectangle (1,1); +\node at (-1,-1) {$1$}; +\node at (1,-1) {$0$}; +\node at (1,1) {$\frac{ik'}k$}; +\node at (-1,1) {$\infty$}; +\node[color=blau] at (0,0) {$\operatorname{cn}(u,k)$}; +\end{scope} + +\begin{scope}[xshift=10cm] +\fill[color=gruen!20] (-1,-1) rectangle (1,1); +\node at (-1,-1) {$1$}; +\node at (1,-1) {$k'$}; +\node at (1,1) {$0$}; +\node at (-1,1) {$\infty$}; +\node[color=gruen] at (0,0) {$\operatorname{dn}(u,k)$}; +\end{scope} + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/110-elliptisch/images/jacobiplots.pdf b/buch/chapters/110-elliptisch/images/jacobiplots.pdf index c51e916..d30f670 100644 Binary files a/buch/chapters/110-elliptisch/images/jacobiplots.pdf and b/buch/chapters/110-elliptisch/images/jacobiplots.pdf differ diff --git a/buch/chapters/110-elliptisch/images/kegelpara.pdf b/buch/chapters/110-elliptisch/images/kegelpara.pdf index c6456ce..65b097f 100644 Binary files a/buch/chapters/110-elliptisch/images/kegelpara.pdf and b/buch/chapters/110-elliptisch/images/kegelpara.pdf differ diff --git a/buch/chapters/110-elliptisch/images/torusschnitt.pdf b/buch/chapters/110-elliptisch/images/torusschnitt.pdf index b94286a..2eba07e 100644 Binary files a/buch/chapters/110-elliptisch/images/torusschnitt.pdf and b/buch/chapters/110-elliptisch/images/torusschnitt.pdf differ diff --git a/buch/chapters/110-elliptisch/lemniskate.tex b/buch/chapters/110-elliptisch/lemniskate.tex index a284f75..61476a0 100644 --- a/buch/chapters/110-elliptisch/lemniskate.tex +++ b/buch/chapters/110-elliptisch/lemniskate.tex @@ -32,26 +32,26 @@ mit der Gleichung \end{equation} Sie ist in Abbildung~\ref{buch:elliptisch:fig:lemniskate} dargestellt. -Der Fall $a=1/\sqrt{2}$ ist eine Kurve mit der Gleichung +Der Fall $a=1/\!\sqrt{2}$ ist eine Kurve mit der Gleichung \[ (x^2+y^2)^2 = x^2-y^2, \] wir nennen sie die {\em Standard-Lemniskate}. \subsubsection{Scheitelpunkte} -Die beiden Scheitel der Lemniskate befinden sich bei $X_s=\pm a\sqrt{2}$. +Die beiden Scheitel der Lemniskate befinden sich bei $X_s=\pm a\!\sqrt{2}$. Dividiert man die Gleichung der Lemniskate durch $X_s^2=4a^4$ entsteht \begin{equation} \biggl( -\biggl(\frac{X}{a\sqrt{2}}\biggr)^2 +\biggl(\frac{X}{a\!\sqrt{2}}\biggr)^2 + -\biggl(\frac{Y}{a\sqrt{2}}\biggr)^2 +\biggl(\frac{Y}{a\!\sqrt{2}}\biggr)^2 \biggr)^2 = 2\frac{a^2}{2a^2}\biggl( -\biggl(\frac{X}{a\sqrt{2}}\biggr)^2 +\biggl(\frac{X}{a\!\sqrt{2}}\biggr)^2 - -\biggl(\frac{Y}{a\sqrt{2}}\biggr)^2 +\biggl(\frac{Y}{a\!\sqrt{2}}\biggr)^2 \biggr). \qquad \Leftrightarrow @@ -59,7 +59,7 @@ Dividiert man die Gleichung der Lemniskate durch $X_s^2=4a^4$ entsteht (x^2+y^2)^2 = x^2-y^2, \label{buch:elliptisch:eqn:lemniskatenormiert} \end{equation} -wobei wir $x=X/a\sqrt{2}$ und $y=Y/a\sqrt{2}$ gesetzt haben. +wobei wir $x=X/a\!\sqrt{2}$ und $y=Y/a\!\sqrt{2}$ gesetzt haben. In dieser Normierung, der Standard-Lemniskaten, liegen die Scheitel bei $\pm 1$. Dies ist die Skalierung, die für die Definition des lemniskatischen @@ -104,7 +104,7 @@ die durch die Gleichungen \begin{equation} X^2-Y^2 = Z^2 \qquad\text{und}\qquad -(X^2+Y^2) = R^2 = \sqrt{2}aZ +(X^2+Y^2) = R^2 = \!\sqrt{2}aZ \label{buch:elliptisch:eqn:kegelparabolschnitt} \end{equation} beschrieben wird. @@ -254,9 +254,9 @@ Sie ist eine Lemniskaten-Gleichung für $a=2$. \subsection{Bogenlänge} Die Funktionen \begin{equation} -x(r) = \frac{r}{\sqrt{2}}\sqrt{1+r^2}, +x(r) = \frac{r}{\!\sqrt{2}}\sqrt{1+r^2}, \quad -y(r) = \frac{r}{\sqrt{2}}\sqrt{1-r^2} +y(r) = \frac{r}{\!\sqrt{2}}\sqrt{1-r^2} \label{buch:geometrie:eqn:lemniskateparam} \end{equation} erfüllen @@ -281,9 +281,9 @@ Kettenregel berechnen kann: \begin{align*} \dot{x}(r) &= -\frac{\sqrt{1+r^2}}{\sqrt{2}} +\frac{\!\sqrt{1+r^2}}{\!\sqrt{2}} + -\frac{r^2}{\sqrt{2}\sqrt{1+r^2}} +\frac{r^2}{\!\sqrt{2}\sqrt{1+r^2}} &&\Rightarrow& \dot{x}(r)^2 &= @@ -291,7 +291,7 @@ Kettenregel berechnen kann: \\ \dot{y}(r) &= -\frac{\sqrt{1-r^2}}{\sqrt{2}} +\frac{\!\sqrt{1-r^2}}{\!\sqrt{2}} - \frac{r^2}{\sqrt{2}\sqrt{1-r^2}} &&\Rightarrow& @@ -316,7 +316,7 @@ Durch Einsetzen in das Integral für die Bogenlänge bekommt man s(r) = \int_0^r -\frac{1}{\sqrt{1-t^4}}\,dt. +\frac{1}{\!\sqrt{1-t^4}}\,dt. \label{buch:elliptisch:eqn:lemniskatebogenlaenge} \end{equation} @@ -329,11 +329,11 @@ $k^2=-1$ oder $k=i$ ist \[ K(r,i) = -\int_0^x \frac{dt}{\sqrt{(1-t^2)(1-i^2 t^2)}} +\int_0^x \frac{dt}{\!\sqrt{(1-t^2)(1-i^2 t^2)}} = -\int_0^x \frac{dt}{\sqrt{(1-t^2)(1-(-1)t^2)}} +\int_0^x \frac{dt}{\!\sqrt{(1-t^2)(1-(-1)t^2)}} = -\int_0^x \frac{dt}{\sqrt{1-t^4}} +\int_0^x \frac{dt}{\!\sqrt{1-t^4}} = s(r). \] @@ -388,23 +388,23 @@ Y(t) \operatorname{cn}(t,k) \operatorname{sn}(t,k) \end{aligned} \quad\right\} -\qquad\text{mit $k=\displaystyle\frac{1}{\sqrt{2}}$} +\qquad\text{mit $k=\displaystyle\frac{1}{\sqrt{2}}.$} \label{buch:elliptisch:lemniskate:bogeneqn} \end{equation} Abbildung~\ref{buch:elliptisch:lemniskate:bogenpara} zeigt die Parametrisierung. Dem Parameterwert $t=0$ entspricht der Scheitelpunkt -$S=(\sqrt{2},0)$ der Lemniskate. +$S=(\!\sqrt{2},0)$ der Lemniskate. % % Lemniskatengleichung % \subsubsection{Verfikation der Lemniskatengleichung} Dass \eqref{buch:elliptisch:lemniskate:bogeneqn} -tatsächlich eine Parametrisierung ist kann nachgewiesen werden dadurch, +tatsächlich eine Parametrisierung ist, kann dadurch nachgewiesen werden, dass man die beiden Seiten der definierenden Gleichung der Lemniskate berechnet. -Zunächst ist +Zunächst sind die Quadrate von $X(t)$ und $Y(t)$ \begin{align*} X(t)^2 &= @@ -414,8 +414,8 @@ X(t)^2 Y(t)^2 &= \operatorname{cn}(t,k)^2 -\operatorname{sn}(t,k)^2 -\\ +\operatorname{sn}(t,k)^2. +\intertext{Für Summe und Differenz der Quadrate findet man jetzt} X(t)^2+Y(t)^2 &= 2\operatorname{cn}(t,k)^2 @@ -447,15 +447,18 @@ X(t)^2-Y(t)^2 \bigr) \\ &= -2\operatorname{cn}(t,k)^4 -\\ +2\operatorname{cn}(t,k)^4. +\intertext{Beide lassen sich also durch $\operatorname{cn}(t,k)^2$ +ausdrücken. +Zusammengefasst erhält man} \Rightarrow\qquad (X(t)^2+Y(t)^2)^2 &= 4\operatorname{cn}(t,k)^4 = -2(X(t)^2-Y(t)^2). +2(X(t)^2-Y(t)^2), \end{align*} +eine Lemniskaten-Gleichung. % % Berechnung der Bogenlänge @@ -467,39 +470,26 @@ Dazu berechnen wir die Ableitungen \begin{align*} \dot{X}(t) &= -\sqrt{2}\operatorname{cn}'(t,k)\operatorname{dn}(t,k) +\!\sqrt{2}\operatorname{cn}'(t,k)\operatorname{dn}(t,k) + -\sqrt{2}\operatorname{cn}(t,k)\operatorname{dn}'(t,k) +\!\sqrt{2}\operatorname{cn}(t,k)\operatorname{dn}'(t,k) \\ &= --\sqrt{2}\operatorname{sn}(t,k)\operatorname{dn}(t,k)^2 +-\!\sqrt{2}\operatorname{sn}(t,k)\operatorname{dn}(t,k)^2 -\frac12\sqrt{2}\operatorname{sn}(t,k)\operatorname{cn}(t,k)^2 \\ &= --\sqrt{2}\operatorname{sn}(t,k)\bigl( +-\!\sqrt{2}\operatorname{sn}(t,k)\bigl( 1-{\textstyle\frac12}\operatorname{sn}(t,k)^2 +{\textstyle\frac12}-{\textstyle\frac12}\operatorname{sn}(t,k)^2 \bigr) \\ &= -\sqrt{2}\operatorname{sn}(t,k) +\!\sqrt{2}\operatorname{sn}(t,k) \bigl( {\textstyle \frac32}-\operatorname{sn}(t,k)^2 \bigr) \\ -\dot{X}(t)^2 -&= -2\operatorname{sn}(t,k)^2 -\bigl( -{\textstyle \frac32}-\operatorname{sn}(t,k)^2 -\bigr)^2 -\\ -&= -{\textstyle\frac{9}{2}}\operatorname{sn}(t,k)^2 -- -6\operatorname{sn}(t,k)^4 -+2\operatorname{sn}(t,k)^6 -\\ \dot{Y}(t) &= \operatorname{cn}'(t,k)\operatorname{sn}(t,k) @@ -514,6 +504,19 @@ Dazu berechnen wir die Ableitungen \\ &= \operatorname{dn}(t,k)\bigl(1-2\operatorname{sn}(t,k)^2\bigr) +\intertext{und davon die Quadrate} +\dot{X}(t)^2 +&= +2\operatorname{sn}(t,k)^2 +\bigl( +{\textstyle \frac32}-\operatorname{sn}(t,k)^2 +\bigr)^2 +\\ +&= +{\textstyle\frac{9}{2}}\operatorname{sn}(t,k)^2 +- +6\operatorname{sn}(t,k)^4 ++2\operatorname{sn}(t,k)^6 \\ \dot{Y}(t)^2 &= @@ -523,22 +526,22 @@ Dazu berechnen wir die Ableitungen &= 1-{\textstyle\frac{9}{2}}\operatorname{sn}(t,k)^2 +6\operatorname{sn}(t,k)^4 --2\operatorname{sn}(t,k)^6 -\\ +-2\operatorname{sn}(t,k)^6. +\intertext{Für das Bogenlängenintegral wird die Quadratsumme der Ableitungen +benötigt, diese ist} \dot{X}(t)^2 + \dot{Y}(t)^2 &= 1. -\end{align*} -Dies bedeutet, dass die Bogenlänge zwischen den Parameterwerten $0$ und $t$ -\[ +\intertext{Dies bedeutet, dass die Bogenlänge zwischen den +Parameterwerten $0$ und $t$} \int_0^t \sqrt{\dot{X}(\tau)^2 + \dot{Y}(\tau)^2} \,d\tau -= +&= \int_0^s\,d\tau = t, -\] +\end{align*} der Parameter $t$ ist also ein Bogenlängenparameter. % @@ -556,18 +559,18 @@ hat daher eine Bogenlängenparametrisierung mit \begin{aligned} x(t) &= -\phantom{\frac{1}{\sqrt{2}}} -\operatorname{cn}(\sqrt{2}t,k)\operatorname{dn}(\sqrt{2}t,k) +\phantom{\frac{1}{\!\sqrt{2}}} +\operatorname{cn}(\!\sqrt{2}t,k)\operatorname{dn}(\!\sqrt{2}t,k) \\ y(t) &= -\frac{1}{\sqrt{2}} -\operatorname{cn}(\sqrt{2}t,k)\operatorname{sn}(\sqrt{2}t,k) +\frac{1}{\!\sqrt{2}} +\operatorname{cn}(\!\sqrt{2}t,k)\operatorname{sn}(\!\sqrt{2}t,k) \end{aligned} \quad \right\} \qquad -\text{mit $\displaystyle k=\frac{1}{\sqrt{2}}$} +\text{mit $\displaystyle k=\frac{1}{\!\sqrt{2}}.$} \label{buch:elliptisch:lemniskate:bogenlaenge} \end{equation} Der Punkt $t=0$ entspricht dem Scheitelpunkt $S=(1,0)$ der Lemniskate. @@ -630,21 +633,21 @@ r(t)^2 = x(t)^2 + y(t)^2 = -\operatorname{cn}(\sqrt{2}t,k)^2 +\operatorname{cn}(\!\sqrt{2}t,k)^2 \biggl( -\operatorname{dn}(\sqrt{2}t,k)^2 +\operatorname{dn}(\!\sqrt{2}t,k)^2 + \frac12 -\operatorname{sn}(\sqrt{2}t,k)^2 +\operatorname{sn}(\!\sqrt{2}t,k)^2 \biggr) = -\operatorname{cn}(\sqrt{2}t,k)^2. +\operatorname{cn}(\!\sqrt{2}t,k)^2. \] Die Wurzel ist \[ r(t) = -\operatorname{cn}(\sqrt{2}t,{\textstyle\frac{1}{\sqrt{2}}}) +\operatorname{cn}(\!\sqrt{2}t,{\textstyle\frac{1}{\!\sqrt{2}}}) . \] Der lemniskatische Sinus wurde aber in Abhängigkeit von @@ -654,7 +657,7 @@ $s=\varpi/2-t$ mittels = r(s) = -\operatorname{cn}(\sqrt{2}(\varpi/2-s),k)^2 +\operatorname{cn}(\!\sqrt{2}(\varpi/2-s),k)^2 \] definiert. Der lemniskatische Kosinus ist definiert als der lemniskatische Sinus @@ -666,7 +669,7 @@ der komplementären Bogenlänge, also = \operatorname{sl}(\varpi/2-s) = -\operatorname{cn}(\sqrt{2}s,k)^2. +\operatorname{cn}(\!\sqrt{2}s,k)^2. \] Die Funktion $\operatorname{sl}(s)$ und $\operatorname{cl}(s)$ sind in Abbildung~\ref{buch:elliptisch:figure:slcl} dargestellt. @@ -674,4 +677,10 @@ Sie sind beide $2\varpi$-periodisch. Die Abbildung zeigt ausserdem die Funktionen $\sin (\pi s/\varpi)$ und $\cos(\pi s/\varpi)$, die ebenfalls $2\varpi$-periodisch sind. +Die Darstellung des lemniskatischen Sinus und Kosinus durch die +Jacobische elliptische Funktion $\operatorname{cn}(\!\sqrt{2}s,k)$ +zeigt einmal mehr den Nutzen der Jacobischen elliptischen Funktionen. + + + -- cgit v1.2.1 From 17f90bd131bdf24110d8933fd804413d53e17bc5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Wed, 22 Jun 2022 13:07:36 +0200 Subject: add graph for all functions --- buch/chapters/110-elliptisch/images/Makefile | 6 +- buch/chapters/110-elliptisch/images/ellall.pdf | Bin 0 -> 22616 bytes buch/chapters/110-elliptisch/images/ellall.tex | 148 +++++++++++++++++++++ buch/chapters/110-elliptisch/images/ellpolnul.pdf | Bin 19288 -> 23281 bytes buch/chapters/110-elliptisch/images/ellpolnul.tex | 24 ++-- .../chapters/110-elliptisch/images/jacobiplots.pdf | Bin 56975 -> 59737 bytes buch/chapters/110-elliptisch/images/kegelpara.pdf | Bin 202828 -> 203620 bytes .../110-elliptisch/images/torusschnitt.pdf | Bin 312677 -> 313517 bytes 8 files changed, 164 insertions(+), 14 deletions(-) create mode 100644 buch/chapters/110-elliptisch/images/ellall.pdf create mode 100644 buch/chapters/110-elliptisch/images/ellall.tex diff --git a/buch/chapters/110-elliptisch/images/Makefile b/buch/chapters/110-elliptisch/images/Makefile index 3074994..cd8e905 100644 --- a/buch/chapters/110-elliptisch/images/Makefile +++ b/buch/chapters/110-elliptisch/images/Makefile @@ -6,7 +6,7 @@ all: lemniskate.pdf ellipsenumfang.pdf unvollstaendig.pdf rechteck.pdf \ ellipse.pdf pendel.pdf jacobiplots.pdf jacobidef.pdf jacobi12.pdf \ sncnlimit.pdf slcl.pdf torusschnitt.pdf kegelpara.pdf lemnispara.pdf \ - ellpolnul.pdf + ellpolnul.pdf ellall.pdf lemniskate.pdf: lemniskate.tex pdflatex lemniskate.tex @@ -115,5 +115,7 @@ lemnispara.pdf: lemnispara.tex lemnisparadata.tex ltest: lemnispara.pdf -ellpolnul.pdf: ellpolnul.tex +ellpolnul.pdf: ellpolnul.tex ellcommon.tex pdflatex ellpolnul.tex +ellall.pdf: ellall.tex ellcommon.tex + pdflatex ellall.tex diff --git a/buch/chapters/110-elliptisch/images/ellall.pdf b/buch/chapters/110-elliptisch/images/ellall.pdf new file mode 100644 index 0000000..0047a52 Binary files /dev/null and b/buch/chapters/110-elliptisch/images/ellall.pdf differ diff --git a/buch/chapters/110-elliptisch/images/ellall.tex b/buch/chapters/110-elliptisch/images/ellall.tex new file mode 100644 index 0000000..5d63322 --- /dev/null +++ b/buch/chapters/110-elliptisch/images/ellall.tex @@ -0,0 +1,148 @@ +% +% ellpolnul.tex -- template for standalon tikz images +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{amsmath} +\usepackage{times} +\usepackage{txfonts} +\usepackage{pgfplots} +\usepackage{csvsimple} +\usetikzlibrary{arrows,intersections,math,calc} +\begin{document} +\input{ellcommon.tex} +\def\skala{1} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +%\draw (-1,-1) rectangle (1,1); +%\node at (-1,-1) [below left] {$0$}; +%\node at (1,-1) [below right] {$K$}; +%\node at (1,1) [above right] {$K+iK'$}; +%\node at (-1,1) [above left] {$iK'$}; +%\node at (0,0) {$u$}; + +\begin{scope}[xshift=-3cm,yshift=0cm] +\rechteck{gray}{1} +\end{scope} + +\definecolor{sccolor}{rgb}{0.8,0.2,0.8} +\definecolor{sdcolor}{rgb}{0.8,0.8,0.2} +\definecolor{cdcolor}{rgb}{0.2,0.8,0.8} + +\begin{scope}[xshift=0cm] +\rechteck{rot}{\operatorname{sn}(u,k)} +\nullstelle{(-1,-1)}{rot} +\pol{(-1,1)}{rot} +\node at (-1,-1) {$0$}; +\node at (1,-1) {$1$}; +\node at (1,1) {$\frac1k$}; +\node at (-1,1) {$\infty$}; +\end{scope} + +\begin{scope}[xshift=3cm] +\rechteck{blau}{\operatorname{cn}(u,k)} +\nullstelle{(1,-1)}{blau} +\pol{(-1,1)}{blau} +\node at (-1,-1) {$1$}; +\node at (1,-1) {$0$}; +\node at (1,1) {$\frac{ik'}k$}; +\node at (-1,1) {$\infty$}; +\end{scope} + +\begin{scope}[xshift=6cm] +\rechteck{gruen}{\operatorname{dn}(u,k)} +\nullstelle{(1,1)}{gruen} +\pol{(-1,1)}{gruen} +\node at (-1,-1) {$1$}; +\node at (1,-1) {$k'$}; +\node at (1,1) {$0$}; +\node at (-1,1) {$\infty$}; +\end{scope} + +% +% start row with denominator sn(u,k) +% + +\begin{scope}[xshift=-3cm,yshift=-3cm] +\rechteck{rot}{\operatorname{ns}(u,k)} +\pol{(-1,-1)}{rot} +\nullstelle{(-1,1)}{rot} +\end{scope} + +\begin{scope}[xshift=0cm,yshift=-3cm] +\rechteck{gray}{1} +\end{scope} + +\begin{scope}[xshift=3cm,yshift=-3cm] +\rechteck{sccolor}{\operatorname{cs}(u,k)} +\pol{(1,-1)}{sccolor} +\nullstelle{(-1,-1)}{sccolor} +\end{scope} + +\begin{scope}[xshift=6cm,yshift=-3cm] +\rechteck{sdcolor}{\operatorname{ds}(u,k)} +\pol{(-1,1)}{sdcolor} +\nullstelle{(-1,-1)}{sdcolor} +\nullstelle{(1,1)}{sdcolor} +\end{scope} + +% +% start row with denominator cn(u,k) +% + +\begin{scope}[xshift=-3cm,yshift=-6cm] +\rechteck{blau}{\operatorname{nc}(u,k)} +\pol{(1,-1)}{blau} +\nullstelle{(-1,1)}{blau} +\end{scope} + +\begin{scope}[xshift=0cm,yshift=-6cm] +\rechteck{sccolor}{\operatorname{sc}(u,k)} +\nullstelle{(1,-1)}{sccolor} +\pol{(-1,-1)}{sccolor} +\end{scope} + +\begin{scope}[xshift=3cm,yshift=-6cm] +\rechteck{gray}{1} +\end{scope} + +\begin{scope}[xshift=6cm,yshift=-6cm] +\rechteck{cdcolor}{\operatorname{dc}(u,k)} +\nullstelle{(1,1)}{cdcolor} +\nullstelle{(1,-1)}{cdcolor} +\pol{(-1,1)}{cdcolor} +\end{scope} + +% +% start row with denominator dn(u,k) +% + +\begin{scope}[xshift=-3cm,yshift=-9cm] +\rechteck{gruen}{\operatorname{nd}(u,k)} +\pol{(1,1)}{gruen} +\nullstelle{(-1,1)}{gruen} +\end{scope} + +\begin{scope}[xshift=0cm,yshift=-9cm] +\rechteck{sdcolor}{\operatorname{sd}(u,k)} +\nullstelle{(-1,1)}{sdcolor} +\pol{(-1,-1)}{sdcolor} +\pol{(1,1)}{sdcolor} +\end{scope} + +\begin{scope}[xshift=3cm,yshift=-9cm] +\rechteck{cdcolor}{\operatorname{cd}(u,k)} +\pol{(1,1)}{cdcolor} +\pol{(1,-1)}{cdcolor} +\nullstelle{(-1,1)}{cdcolor} +\end{scope} + +\begin{scope}[xshift=6cm,yshift=-9cm] +\rechteck{gray}{1} +\end{scope} + + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/110-elliptisch/images/ellpolnul.pdf b/buch/chapters/110-elliptisch/images/ellpolnul.pdf index ca52cdf..d6549c4 100644 Binary files a/buch/chapters/110-elliptisch/images/ellpolnul.pdf and b/buch/chapters/110-elliptisch/images/ellpolnul.pdf differ diff --git a/buch/chapters/110-elliptisch/images/ellpolnul.tex b/buch/chapters/110-elliptisch/images/ellpolnul.tex index 831b477..1ed6b22 100644 --- a/buch/chapters/110-elliptisch/images/ellpolnul.tex +++ b/buch/chapters/110-elliptisch/images/ellpolnul.tex @@ -1,5 +1,5 @@ % -% tikztemplate.tex -- template for standalon tikz images +% ellpolnul.tex -- template for standalon tikz images % % (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule % @@ -9,15 +9,12 @@ \usepackage{txfonts} \usepackage{pgfplots} \usepackage{csvsimple} -\usetikzlibrary{arrows,intersections,math} +\usetikzlibrary{arrows,intersections,math,calc} \begin{document} +\input{ellcommon.tex} \def\skala{1} \begin{tikzpicture}[>=latex,thick,scale=\skala] -\definecolor{rot}{rgb}{0.8,0,0} -\definecolor{blau}{rgb}{0,0,1} -\definecolor{gruen}{rgb}{0,0.6,0} - \draw (-1,-1) rectangle (1,1); \node at (-1,-1) [below left] {$0$}; \node at (1,-1) [below right] {$K$}; @@ -26,30 +23,33 @@ \node at (0,0) {$u$}; \begin{scope}[xshift=4cm] -\fill[color=rot!20] (-1,-1) rectangle (1,1); +\rechteck{rot}{\operatorname{sn}(u,k)} +\nullstelle{(-1,-1)}{rot} +\pol{(-1,1)}{rot} \node at (-1,-1) {$0$}; \node at (1,-1) {$1$}; \node at (1,1) {$\frac1k$}; \node at (-1,1) {$\infty$}; -\node[color=rot] at (0,0) {$\operatorname{sn}(u,k)$}; \end{scope} \begin{scope}[xshift=7cm] -\fill[color=blau!20] (-1,-1) rectangle (1,1); +\rechteck{blau}{\operatorname{cn}(u,k)} +\nullstelle{(1,-1)}{blau} +\pol{(-1,1)}{blau} \node at (-1,-1) {$1$}; \node at (1,-1) {$0$}; \node at (1,1) {$\frac{ik'}k$}; \node at (-1,1) {$\infty$}; -\node[color=blau] at (0,0) {$\operatorname{cn}(u,k)$}; \end{scope} \begin{scope}[xshift=10cm] -\fill[color=gruen!20] (-1,-1) rectangle (1,1); +\rechteck{gruen}{\operatorname{dn}(u,k)} +\nullstelle{(1,1)}{gruen} +\pol{(-1,1)}{gruen} \node at (-1,-1) {$1$}; \node at (1,-1) {$k'$}; \node at (1,1) {$0$}; \node at (-1,1) {$\infty$}; -\node[color=gruen] at (0,0) {$\operatorname{dn}(u,k)$}; \end{scope} \end{tikzpicture} diff --git a/buch/chapters/110-elliptisch/images/jacobiplots.pdf b/buch/chapters/110-elliptisch/images/jacobiplots.pdf index d30f670..49bfeb2 100644 Binary files a/buch/chapters/110-elliptisch/images/jacobiplots.pdf and b/buch/chapters/110-elliptisch/images/jacobiplots.pdf differ diff --git a/buch/chapters/110-elliptisch/images/kegelpara.pdf b/buch/chapters/110-elliptisch/images/kegelpara.pdf index 65b097f..65a5b45 100644 Binary files a/buch/chapters/110-elliptisch/images/kegelpara.pdf and b/buch/chapters/110-elliptisch/images/kegelpara.pdf differ diff --git a/buch/chapters/110-elliptisch/images/torusschnitt.pdf b/buch/chapters/110-elliptisch/images/torusschnitt.pdf index 2eba07e..519a5a3 100644 Binary files a/buch/chapters/110-elliptisch/images/torusschnitt.pdf and b/buch/chapters/110-elliptisch/images/torusschnitt.pdf differ -- cgit v1.2.1 From 43a21e525fe5f9f2e81113ed84742c42178c7114 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Wed, 22 Jun 2022 16:02:19 +0200 Subject: new images --- buch/chapters/110-elliptisch/dglsol.tex | 28 ++++++++++++++++++++++++- buch/chapters/110-elliptisch/images/ellall.pdf | Bin 22616 -> 24694 bytes buch/chapters/110-elliptisch/images/ellall.tex | 28 +++++++++++++++++++++++++ 3 files changed, 55 insertions(+), 1 deletion(-) diff --git a/buch/chapters/110-elliptisch/dglsol.tex b/buch/chapters/110-elliptisch/dglsol.tex index 3ef1eef..c4b990e 100644 --- a/buch/chapters/110-elliptisch/dglsol.tex +++ b/buch/chapters/110-elliptisch/dglsol.tex @@ -343,6 +343,28 @@ der unvollständigen elliptischen Integrale. % % \subsubsection{Pole und Nullstellen der Jacobischen elliptischen Funktionen} +\begin{figure} +\centering +\includegraphics{chapters/110-elliptisch/images/ellpolnul.pdf} +\caption{Werte der grundlegenden Jacobischen elliptischen Funktionen +$\operatorname{sn}(u,k)$, +$\operatorname{cn}(u,k)$ +und +$\operatorname{dn}(u,k)$ +in den Ecken des Rechtecks mit Ecken $(0,0)$ und $(K,K+iK')$. +Links der Definitionsbereich, rechts die Werte der drei Funktionen. +Pole sind mit einem Kreuz ($\times$) bezeichnet, Nullstellen mit einem +Kreis ($\ocircle$). +\label{buch:elliptisch:fig:ellpolnul}} +\end{figure} +\begin{figure} +\centering +\includegraphics{chapters/110-elliptisch/images/ellall.pdf} +\caption{Pole und Nullstellen aller Jacobischen elliptischen Funktionen +mit den gleichen Darstellungskonventionen wie in +Abbildung~\ref{buch:elliptisch:fig:ellpolnul} +\label{buch:elliptisch:fig:ellall}} +\end{figure} Für die Funktion $y=\operatorname{sn}(u,k)$ erfüllt die Differentialgleichung \[ \frac{dy}{du} @@ -392,8 +414,12 @@ abgelesen werden: \end{aligned} \label{buch:elliptische:eqn:eckwerte} \end{equation} +Abbildung~\ref{buch:elliptisch:fig:ellpolnul} zeigt diese Werte +an einer schematischen Darstellung des Definitionsbereiches auf. Daraus lassen sich jetzt auch die Werte der abgeleiteten Jacobischen -elliptischen Funktionen ablesen. +elliptischen Funktionen ablesen, Pole und Nullstellen sind in +Abbildung~\ref{buch:elliptisch:fig:ellall} +zusammengestellt. diff --git a/buch/chapters/110-elliptisch/images/ellall.pdf b/buch/chapters/110-elliptisch/images/ellall.pdf index 0047a52..a57be97 100644 Binary files a/buch/chapters/110-elliptisch/images/ellall.pdf and b/buch/chapters/110-elliptisch/images/ellall.pdf differ diff --git a/buch/chapters/110-elliptisch/images/ellall.tex b/buch/chapters/110-elliptisch/images/ellall.tex index 5d63322..b694441 100644 --- a/buch/chapters/110-elliptisch/images/ellall.tex +++ b/buch/chapters/110-elliptisch/images/ellall.tex @@ -22,6 +22,34 @@ %\node at (-1,1) [above left] {$iK'$}; %\node at (0,0) {$u$}; +\fill[color=rot!10,opacity=0.5] (-5.5,-4.3) rectangle (7.3,-1.7); +\fill[color=blau!10,opacity=0.5] (-5.5,-7.3) rectangle (7.3,-4.7); +\fill[color=gruen!10,opacity=0.5] (-5.5,-10.3) rectangle (7.3,-7.7); + +\fill[color=rot!10,opacity=0.5] (-1.3,-10.5) rectangle (1.3,2.5); +\fill[color=blau!10,opacity=0.5] (1.7,-10.5) rectangle (4.3,2.5); +\fill[color=gruen!10,opacity=0.5] (4.7,-10.5) rectangle (7.3,2.5); + +\begin{scope}[xshift=1.5cm,yshift=2cm] +\node at (0,0) {Zähler}; +\draw[<-] (-4.5,0) -- (-1,0); +\draw[->] (1,0) -- (4.5,0); +\node[color=black] at (-4.5,-0.4) {\Large n}; +\node[color=rot] at (-1.5,-0.4) {\Large s}; +\node[color=blau] at (1.5,-0.4) {\Large c}; +\node[color=gruen] at (4.5,-0.4) {\Large d}; +\end{scope} + +\begin{scope}[xshift=-5.1cm,yshift=-4.5cm] +\node at (0,0) [rotate=90] {Nenner}; +\draw[<-] (0,-4.5) -- (0,-1); +\draw[->] (0,1) -- (0,4.5); +\node[color=gruen] at (0.4,-4.5) [rotate=90] {\Large d}; +\node[color=blau] at (0.4,-1.5) [rotate=90] {\Large c}; +\node[color=rot] at (0.4,1.5) [rotate=90] {\Large s}; +\node[color=black] at (0.4,4.5) [rotate=90] {\Large n}; +\end{scope} + \begin{scope}[xshift=-3cm,yshift=0cm] \rechteck{gray}{1} \end{scope} -- cgit v1.2.1 From 67a73f883b582591f1bd94c68e07868ae2e4440d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Wed, 22 Jun 2022 19:27:02 +0200 Subject: add missing file --- buch/chapters/110-elliptisch/images/ellcommon.tex | 24 +++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 buch/chapters/110-elliptisch/images/ellcommon.tex diff --git a/buch/chapters/110-elliptisch/images/ellcommon.tex b/buch/chapters/110-elliptisch/images/ellcommon.tex new file mode 100644 index 0000000..90bc486 --- /dev/null +++ b/buch/chapters/110-elliptisch/images/ellcommon.tex @@ -0,0 +1,24 @@ +% +% ellcommon.tex -- common macros/definitions for elliptic function +% values display +% +% (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\definecolor{rot}{rgb}{0.8,0,0} +\definecolor{blau}{rgb}{0,0,1} +\definecolor{gruen}{rgb}{0,0.6,0} +\def\l{0.2} + +\def\pol#1#2{ + \draw[color=#2!40,line width=2.4pt] + ($#1+(-\l,-\l)$) -- ($#1+(\l,\l)$); + \draw[color=#2!40,line width=2.4pt] + ($#1+(-\l,\l)$) -- ($#1+(\l,-\l)$); +} +\def\nullstelle#1#2{ + \draw[color=#2!40,line width=2.4pt] #1 circle[radius=\l]; +} +\def\rechteck#1#2{ + \fill[color=#1!20] (-1,-1) rectangle (1,1); + \node[color=#1] at (0,0) {$#2$}; +} -- cgit v1.2.1 From 0a0f36f71e9dff9b9c87a66a669e0d2f388d21c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Thu, 23 Jun 2022 19:23:58 +0200 Subject: poles and zeros --- buch/chapters/110-elliptisch/images/ellall.pdf | Bin 24694 -> 22593 bytes buch/chapters/110-elliptisch/images/ellall.tex | 79 +++++++++++++++------ buch/chapters/110-elliptisch/images/ellcommon.tex | 8 +-- buch/chapters/110-elliptisch/images/ellpolnul.pdf | Bin 23281 -> 19647 bytes buch/chapters/110-elliptisch/images/ellpolnul.tex | 2 +- .../chapters/110-elliptisch/images/jacobiplots.pdf | Bin 59737 -> 56975 bytes buch/chapters/110-elliptisch/images/kegelpara.pdf | Bin 203620 -> 202828 bytes .../110-elliptisch/images/torusschnitt.pdf | Bin 313517 -> 312677 bytes 8 files changed, 64 insertions(+), 25 deletions(-) diff --git a/buch/chapters/110-elliptisch/images/ellall.pdf b/buch/chapters/110-elliptisch/images/ellall.pdf index a57be97..fd0a5dd 100644 Binary files a/buch/chapters/110-elliptisch/images/ellall.pdf and b/buch/chapters/110-elliptisch/images/ellall.pdf differ diff --git a/buch/chapters/110-elliptisch/images/ellall.tex b/buch/chapters/110-elliptisch/images/ellall.tex index b694441..b37fe12 100644 --- a/buch/chapters/110-elliptisch/images/ellall.tex +++ b/buch/chapters/110-elliptisch/images/ellall.tex @@ -51,12 +51,13 @@ \end{scope} \begin{scope}[xshift=-3cm,yshift=0cm] -\rechteck{gray}{1} +\node at (0,0) {$1$}; +\draw[color=gray!20] (-1,-1) rectangle (1,1); \end{scope} -\definecolor{sccolor}{rgb}{0.8,0.2,0.8} -\definecolor{sdcolor}{rgb}{0.8,0.8,0.2} -\definecolor{cdcolor}{rgb}{0.2,0.8,0.8} +\definecolor{sccolor}{rgb}{0.8,0.0,1.0} +\definecolor{sdcolor}{rgb}{0.6,0.6,0.0} +\definecolor{cdcolor}{rgb}{0.0,0.6,1.0} \begin{scope}[xshift=0cm] \rechteck{rot}{\operatorname{sn}(u,k)} @@ -74,7 +75,7 @@ \pol{(-1,1)}{blau} \node at (-1,-1) {$1$}; \node at (1,-1) {$0$}; -\node at (1,1) {$\frac{ik'}k$}; +\node at (1,1) {$\frac{k'}{ik}$}; \node at (-1,1) {$\infty$}; \end{scope} @@ -96,23 +97,36 @@ \rechteck{rot}{\operatorname{ns}(u,k)} \pol{(-1,-1)}{rot} \nullstelle{(-1,1)}{rot} +\node at (-1,-1) {$\infty$}; +\node at (1,-1) {$1$}; +\node at (1,1) {$k$}; +\node at (-1,1) {$0$}; \end{scope} \begin{scope}[xshift=0cm,yshift=-3cm] -\rechteck{gray}{1} +%\rechteck{gray}{1} +\fill[color=white] (-1,-1) rectangle (1,1); +\node[color=gray] at (0,0) {$1$}; \end{scope} \begin{scope}[xshift=3cm,yshift=-3cm] \rechteck{sccolor}{\operatorname{cs}(u,k)} -\pol{(1,-1)}{sccolor} -\nullstelle{(-1,-1)}{sccolor} +\pol{(-1,-1)}{sccolor} +\nullstelle{(1,-1)}{sccolor} +\node at (-1,-1) {$\infty$}; +\node at (1,-1) {$0$}; +\node at (1,1) {$\frac{k'}{i}$}; +\node at (-1,1) {$ $}; \end{scope} \begin{scope}[xshift=6cm,yshift=-3cm] \rechteck{sdcolor}{\operatorname{ds}(u,k)} -\pol{(-1,1)}{sdcolor} -\nullstelle{(-1,-1)}{sdcolor} +\pol{(-1,-1)}{sdcolor} \nullstelle{(1,1)}{sdcolor} +\node at (-1,-1) {$\infty$}; +\node at (1,-1) {$k'$}; +\node at (1,1) {$0$}; +\node at (-1,1) {$ $}; \end{scope} % @@ -123,23 +137,36 @@ \rechteck{blau}{\operatorname{nc}(u,k)} \pol{(1,-1)}{blau} \nullstelle{(-1,1)}{blau} +\node at (-1,-1) {$1$}; +\node at (-1,1) {$0$}; +\node at (1,-1) {$\infty$}; +\node at (1,1) {$\frac{ik}{k'}$}; \end{scope} \begin{scope}[xshift=0cm,yshift=-6cm] \rechteck{sccolor}{\operatorname{sc}(u,k)} -\nullstelle{(1,-1)}{sccolor} -\pol{(-1,-1)}{sccolor} +\nullstelle{(-1,-1)}{sccolor} +\pol{(1,-1)}{sccolor} +\node at (-1,-1) {$0$}; +\node at (1,-1) {$\infty$}; +\node at (-1,1) {$ $}; +\node at (1,1) {$\frac{i}{k'}$}; \end{scope} \begin{scope}[xshift=3cm,yshift=-6cm] -\rechteck{gray}{1} +%\rechteck{gray}{1} +\fill[color=white] (-1,-1) rectangle (1,1); +\node[color=gray] at (0,0) {$1$}; \end{scope} \begin{scope}[xshift=6cm,yshift=-6cm] \rechteck{cdcolor}{\operatorname{dc}(u,k)} \nullstelle{(1,1)}{cdcolor} -\nullstelle{(1,-1)}{cdcolor} -\pol{(-1,1)}{cdcolor} +\pol{(1,-1)}{cdcolor} +\node at (-1,-1) {$1$}; +\node at (1,-1) {$\infty$}; +\node at (-1,1) {$k$}; +\node at (1,1) {$0$}; \end{scope} % @@ -150,24 +177,36 @@ \rechteck{gruen}{\operatorname{nd}(u,k)} \pol{(1,1)}{gruen} \nullstelle{(-1,1)}{gruen} +\node at (-1,-1) {$1$}; +\node at (-1,1) {$0$}; +\node at (1,-1) {$\frac{1}{k'}$}; +\node at (1,1) {$\infty$}; \end{scope} \begin{scope}[xshift=0cm,yshift=-9cm] \rechteck{sdcolor}{\operatorname{sd}(u,k)} -\nullstelle{(-1,1)}{sdcolor} -\pol{(-1,-1)}{sdcolor} +\nullstelle{(-1,-1)}{sdcolor} \pol{(1,1)}{sdcolor} +\node at (-1,-1) {$0$}; +\node at (1,-1) {$\frac{1}{k'}$}; +\node at (-1,1) {$ $}; +\node at (1,1) {$\infty$}; \end{scope} \begin{scope}[xshift=3cm,yshift=-9cm] \rechteck{cdcolor}{\operatorname{cd}(u,k)} \pol{(1,1)}{cdcolor} -\pol{(1,-1)}{cdcolor} -\nullstelle{(-1,1)}{cdcolor} +\nullstelle{(1,-1)}{cdcolor} +\node at (-1,-1) {$1$}; +\node at (-1,1) {$\frac1k $}; +\node at (1,-1) {$0$}; +\node at (1,1) {$\infty$}; \end{scope} \begin{scope}[xshift=6cm,yshift=-9cm] -\rechteck{gray}{1} +%\rechteck{gray}{1} +\fill[color=white] (-1,-1) rectangle (1,1); +\node[color=gray] at (0,0) {$1$}; \end{scope} diff --git a/buch/chapters/110-elliptisch/images/ellcommon.tex b/buch/chapters/110-elliptisch/images/ellcommon.tex index 90bc486..cd3245d 100644 --- a/buch/chapters/110-elliptisch/images/ellcommon.tex +++ b/buch/chapters/110-elliptisch/images/ellcommon.tex @@ -10,15 +10,15 @@ \def\l{0.2} \def\pol#1#2{ - \draw[color=#2!40,line width=2.4pt] + \draw[color=#2!50,line width=3.0pt] ($#1+(-\l,-\l)$) -- ($#1+(\l,\l)$); - \draw[color=#2!40,line width=2.4pt] + \draw[color=#2!50,line width=3.0pt] ($#1+(-\l,\l)$) -- ($#1+(\l,-\l)$); } \def\nullstelle#1#2{ - \draw[color=#2!40,line width=2.4pt] #1 circle[radius=\l]; + \draw[color=#2!50,line width=3.0pt] #1 circle[radius=\l]; } \def\rechteck#1#2{ \fill[color=#1!20] (-1,-1) rectangle (1,1); - \node[color=#1] at (0,0) {$#2$}; + \node[color=#1] at (0,0) {$#2\mathstrut$}; } diff --git a/buch/chapters/110-elliptisch/images/ellpolnul.pdf b/buch/chapters/110-elliptisch/images/ellpolnul.pdf index d6549c4..9143d2d 100644 Binary files a/buch/chapters/110-elliptisch/images/ellpolnul.pdf and b/buch/chapters/110-elliptisch/images/ellpolnul.pdf differ diff --git a/buch/chapters/110-elliptisch/images/ellpolnul.tex b/buch/chapters/110-elliptisch/images/ellpolnul.tex index 1ed6b22..16730f9 100644 --- a/buch/chapters/110-elliptisch/images/ellpolnul.tex +++ b/buch/chapters/110-elliptisch/images/ellpolnul.tex @@ -38,7 +38,7 @@ \pol{(-1,1)}{blau} \node at (-1,-1) {$1$}; \node at (1,-1) {$0$}; -\node at (1,1) {$\frac{ik'}k$}; +\node at (1,1) {$\frac{k'}{ik}$}; \node at (-1,1) {$\infty$}; \end{scope} diff --git a/buch/chapters/110-elliptisch/images/jacobiplots.pdf b/buch/chapters/110-elliptisch/images/jacobiplots.pdf index 49bfeb2..331270e 100644 Binary files a/buch/chapters/110-elliptisch/images/jacobiplots.pdf and b/buch/chapters/110-elliptisch/images/jacobiplots.pdf differ diff --git a/buch/chapters/110-elliptisch/images/kegelpara.pdf b/buch/chapters/110-elliptisch/images/kegelpara.pdf index 65a5b45..b23654c 100644 Binary files a/buch/chapters/110-elliptisch/images/kegelpara.pdf and b/buch/chapters/110-elliptisch/images/kegelpara.pdf differ diff --git a/buch/chapters/110-elliptisch/images/torusschnitt.pdf b/buch/chapters/110-elliptisch/images/torusschnitt.pdf index 519a5a3..f70f362 100644 Binary files a/buch/chapters/110-elliptisch/images/torusschnitt.pdf and b/buch/chapters/110-elliptisch/images/torusschnitt.pdf differ -- cgit v1.2.1 From 4093fce68a051cb36b95609f68e2319d14615d39 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Thu, 23 Jun 2022 19:26:58 +0200 Subject: typo --- buch/chapters/110-elliptisch/dglsol.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buch/chapters/110-elliptisch/dglsol.tex b/buch/chapters/110-elliptisch/dglsol.tex index c4b990e..b1b7db3 100644 --- a/buch/chapters/110-elliptisch/dglsol.tex +++ b/buch/chapters/110-elliptisch/dglsol.tex @@ -408,7 +408,7 @@ abgelesen werden: \\ \operatorname{sn}(K+iK',k)&=\frac{1}{k} & -\operatorname{cn}(K+iK',k)&=\frac{ik'}{k} +\operatorname{cn}(K+iK',k)&=\frac{k'}{ik} & \operatorname{dn}(K+iK',k)&=0 \end{aligned} -- cgit v1.2.1 From a14385eccb4fa12d22c88f2955b39bee7ee482c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Fri, 24 Jun 2022 12:51:42 +0200 Subject: Funktionsauswahl --- buch/chapters/110-elliptisch/dglsol.tex | 14 +++ buch/chapters/110-elliptisch/images/Makefile | 6 +- .../110-elliptisch/images/ellselection.pdf | Bin 0 -> 20323 bytes .../110-elliptisch/images/ellselection.tex | 122 +++++++++++++++++++++ .../chapters/110-elliptisch/images/jacobiplots.pdf | Bin 56975 -> 56975 bytes buch/chapters/110-elliptisch/images/kegelpara.pdf | Bin 202828 -> 202828 bytes .../110-elliptisch/images/torusschnitt.pdf | Bin 312677 -> 312677 bytes 7 files changed, 141 insertions(+), 1 deletion(-) create mode 100644 buch/chapters/110-elliptisch/images/ellselection.pdf create mode 100644 buch/chapters/110-elliptisch/images/ellselection.tex diff --git a/buch/chapters/110-elliptisch/dglsol.tex b/buch/chapters/110-elliptisch/dglsol.tex index b1b7db3..74f2f8c 100644 --- a/buch/chapters/110-elliptisch/dglsol.tex +++ b/buch/chapters/110-elliptisch/dglsol.tex @@ -365,6 +365,20 @@ mit den gleichen Darstellungskonventionen wie in Abbildung~\ref{buch:elliptisch:fig:ellpolnul} \label{buch:elliptisch:fig:ellall}} \end{figure} +\begin{figure} +\centering +\includegraphics{chapters/110-elliptisch/images/ellselection.pdf} +\caption{Auswahl einer Jacobischen elliptischen Funktion mit bestimmten +Nullstellen und Polen. +Nullstellen und Pole können in jeder der vier Ecken des fundamentalen +Rechtecks (gelb, oberer rechter Viertel des Periodenrechtecks) liegen. +Der erste Buchstabe des Namens der gesuchten Funktion ist der Buchstabe +der Ecke der Nullstelle, der zweite Buchstabe ist der Buchstabe der +Ecke des Poles. +Im Beispiel die Funktion $\operatorname{cd}(u,k)$, welche eine +Nullstelle in $K$ hat und einen Pol in $K+iK'$. +\label{buch:elliptisch:fig:selectell}} +\end{figure} Für die Funktion $y=\operatorname{sn}(u,k)$ erfüllt die Differentialgleichung \[ \frac{dy}{du} diff --git a/buch/chapters/110-elliptisch/images/Makefile b/buch/chapters/110-elliptisch/images/Makefile index cd8e905..43ca35e 100644 --- a/buch/chapters/110-elliptisch/images/Makefile +++ b/buch/chapters/110-elliptisch/images/Makefile @@ -6,7 +6,7 @@ all: lemniskate.pdf ellipsenumfang.pdf unvollstaendig.pdf rechteck.pdf \ ellipse.pdf pendel.pdf jacobiplots.pdf jacobidef.pdf jacobi12.pdf \ sncnlimit.pdf slcl.pdf torusschnitt.pdf kegelpara.pdf lemnispara.pdf \ - ellpolnul.pdf ellall.pdf + ellpolnul.pdf ellall.pdf ellselection.pdf lemniskate.pdf: lemniskate.tex pdflatex lemniskate.tex @@ -119,3 +119,7 @@ ellpolnul.pdf: ellpolnul.tex ellcommon.tex pdflatex ellpolnul.tex ellall.pdf: ellall.tex ellcommon.tex pdflatex ellall.tex + +ellselection.pdf: ellselection.tex + pdflatex ellselection.tex + diff --git a/buch/chapters/110-elliptisch/images/ellselection.pdf b/buch/chapters/110-elliptisch/images/ellselection.pdf new file mode 100644 index 0000000..bc9af35 Binary files /dev/null and b/buch/chapters/110-elliptisch/images/ellselection.pdf differ diff --git a/buch/chapters/110-elliptisch/images/ellselection.tex b/buch/chapters/110-elliptisch/images/ellselection.tex new file mode 100644 index 0000000..9e822ec --- /dev/null +++ b/buch/chapters/110-elliptisch/images/ellselection.tex @@ -0,0 +1,122 @@ +% +% ellselection.tex -- Wahl einer elliptischen Funktion +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{amsmath} +\usepackage{times} +\usepackage{txfonts} +\usepackage{pgfplots} +\usepackage{csvsimple} +\usetikzlibrary{arrows,intersections,math} +\begin{document} +\def\skala{1} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +\def\l{0.45} +\pgfmathparse{\l*72/2.54} +\xdef\L{\pgfmathresult} + +\def\sx{4.1} +\pgfmathparse{\sx*72/2.54} +\xdef\Sx{\pgfmathresult} + +\def\sy{3.2} +\pgfmathparse{\sy*72/2.54} +\xdef\Sy{\pgfmathresult} + +\pgfmathparse{\sx/2-\l} +\xdef\linksx{\pgfmathresult} +\pgfmathparse{\sy/2-\l} +\xdef\linksy{\pgfmathresult} + +\pgfmathparse{\sx/2+2*\l} +\xdef\rechtsx{\pgfmathresult} +\pgfmathparse{\sy/2} +\xdef\rechtsy{\pgfmathresult} + +\fill[color=red!20] ({-\sx},0) rectangle (\sx,\sy); +\fill[color=blue!20] ({-\sx},{-\sy}) rectangle (\sx,0); +\fill[color=yellow!40,opacity=0.5] (0,0) rectangle (\sx,\sy); + +\draw (-\sx,-\sy) rectangle (\sx,\sy); + +\draw[->] ({-1.4*\sx},0) -- ({1.4*\sx},0) coordinate[label={$\Re u$}]; +\draw[->] (0,{-\sy-1}) -- (0,{\sy+1}) coordinate[label={right:$\Im u$}]; + +\definecolor{darkgreen}{rgb}{0,0.6,0} + +\draw[->,line width=1.9pt,color=darkgreen] + (\sx,0) to[out=180,in=-79] (\linksx,\linksy); +\draw[->,line width=1.9pt,color=darkgreen] + (\sx,{\sy-\l}) to[out=-90,in=0] (\rechtsx,\rechtsy); + +\def\rect#1#2{ + \fill[color=white] (-\l,-\l) rectangle (\l,\l); + #2 + \draw (-\l,-\l) rectangle (\l,\l); + \node at (0,0) {\Huge #1\strut}; +} + +\def\kreuz{ + \begin{scope} + \clip ({-\l},{-\l}) rectangle ({\l},{\l}); + \fill[color=white] ({-2*\l},{-2*\l}) rectangle ({2*\l},{2*\l}); + \draw[color=darkgreen!30,line width=3pt] (-\l,-\l) -- (\l,\l); + \draw[color=darkgreen!30,line width=3pt] (-\l,\l) -- (\l,-\l); + \end{scope} +} + +\def\kreis{ + \begin{scope} + \clip ({-\l},{-\l}) rectangle ({\l},{\l}); + \fill[color=white] ({-2*\l},{-2*\l}) rectangle ({2*\l},{2*\l}); + \draw[color=darkgreen!30,line width=3pt] + (0,0) circle[radius={\l*(\L-1.5)/\L}]; + \end{scope} +} + +\begin{scope}[xshift={0},yshift={0}] + \rect{s}{} +\end{scope} + +\begin{scope}[xshift={\Sx},yshift={0}] + \rect{c}{\kreis} +\end{scope} + +\begin{scope}[xshift={\Sx},yshift={\Sy}] + \rect{d}{\kreuz} +\end{scope} + +\begin{scope}[xshift={0},yshift={\Sy}] + \rect{n}{} +\end{scope} + +\node at ({-\l+0.1},{\sy+\l-0.1}) [above left] {$iK'\mathstrut$}; +\node at ({-\l+0.1},{-\l+0.1}) [below left] {$0\mathstrut$}; +\node at ({\sx+\l-0.1},{-\l+0.1}) [below right] {$K\mathstrut$}; +\node at ({\sx+\l-0.1},{\sy+\l-0.1}) [above right] {$K+iK'\mathstrut$}; +\node at ({-\sx},0) [below left] {$-K\mathstrut$}; +\node at (0,{-\sy+0.05}) [below left] {$-iK'\mathstrut$}; +\node at ({\sx-0.1},{-\sy+0.1}) [below right] {$K-iK'\mathstrut$}; +\node at ({-\sx+0.1},{-\sy+0.1}) [below left] {$-K-iK'\mathstrut$}; +\node at ({-\sx+0.1},{\sy-0.1}) [above left] {$-K+iK'\mathstrut$}; + +\begin{scope}[xshift={-\L+0.5*\Sx},yshift={0.5*\Sy}] + \node at ({-\l},{\l-0.1}) [above] {Nullstelle\strut}; + \kreis + \node[color=darkgreen] at (0,0) {\Huge c\strut}; + \draw[line width=0.2pt] (-\l,-\l) rectangle (\l,\l); +\end{scope} + +\begin{scope}[xshift={\L+0.5*\Sx},yshift={0.5*\Sy}] + \node at ({\l},{\l-0.1}) [above] {Pol\strut}; + \kreuz + \node[color=darkgreen] at (0,0) {\Huge d\strut}; + \draw[line width=0.2pt] (-\l,-\l) rectangle (\l,\l); +\end{scope} + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/110-elliptisch/images/jacobiplots.pdf b/buch/chapters/110-elliptisch/images/jacobiplots.pdf index 331270e..59aea81 100644 Binary files a/buch/chapters/110-elliptisch/images/jacobiplots.pdf and b/buch/chapters/110-elliptisch/images/jacobiplots.pdf differ diff --git a/buch/chapters/110-elliptisch/images/kegelpara.pdf b/buch/chapters/110-elliptisch/images/kegelpara.pdf index b23654c..59f9f50 100644 Binary files a/buch/chapters/110-elliptisch/images/kegelpara.pdf and b/buch/chapters/110-elliptisch/images/kegelpara.pdf differ diff --git a/buch/chapters/110-elliptisch/images/torusschnitt.pdf b/buch/chapters/110-elliptisch/images/torusschnitt.pdf index f70f362..61293f3 100644 Binary files a/buch/chapters/110-elliptisch/images/torusschnitt.pdf and b/buch/chapters/110-elliptisch/images/torusschnitt.pdf differ -- cgit v1.2.1 From 3a7e2cef27bd78a96b20751db2a53f7291fcd2a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Fri, 24 Jun 2022 20:18:48 +0200 Subject: add grid to images --- buch/chapters/110-elliptisch/dglsol.tex | 16 +++++------ buch/chapters/110-elliptisch/images/Makefile | 7 ++++- buch/chapters/110-elliptisch/images/ellpolnul.pdf | Bin 19647 -> 86072 bytes buch/chapters/110-elliptisch/images/ellpolnul.tex | 9 ++++++ .../110-elliptisch/images/ellselection.pdf | Bin 20323 -> 76094 bytes .../110-elliptisch/images/ellselection.tex | 15 ++++++++-- .../chapters/110-elliptisch/images/jacobiplots.pdf | Bin 56975 -> 56975 bytes buch/chapters/110-elliptisch/images/kegelpara.pdf | Bin 202828 -> 202828 bytes buch/chapters/110-elliptisch/images/rechteck.cpp | 31 +++++++++++++++------ buch/chapters/110-elliptisch/images/rechteck.pdf | Bin 91639 -> 94300 bytes buch/chapters/110-elliptisch/images/rechteck.tex | 2 ++ .../110-elliptisch/images/torusschnitt.pdf | Bin 312677 -> 312677 bytes 12 files changed, 60 insertions(+), 20 deletions(-) diff --git a/buch/chapters/110-elliptisch/dglsol.tex b/buch/chapters/110-elliptisch/dglsol.tex index 74f2f8c..3303aee 100644 --- a/buch/chapters/110-elliptisch/dglsol.tex +++ b/buch/chapters/110-elliptisch/dglsol.tex @@ -403,27 +403,27 @@ abgelesen werden: \begin{equation} \begin{aligned} \operatorname{sn}(0,k)&=0 -& +&&\qquad& \operatorname{cn}(0,k)&=1 -& +&&\qquad& \operatorname{dn}(0,k)&=1 \\ \operatorname{sn}(iK',k)&=\infty -& +&&\qquad& \operatorname{cn}(iK',k)&=\infty -& +&&\qquad& \operatorname{dn}(iK',k)&=\infty \\ \operatorname{sn}(K,k)&=1 -& +&&\qquad& \operatorname{cn}(K,k)&=0 -& +&&\qquad& \operatorname{dn}(K,k)&=k' \\ \operatorname{sn}(K+iK',k)&=\frac{1}{k} -& +&&\qquad& \operatorname{cn}(K+iK',k)&=\frac{k'}{ik} -& +&&\qquad& \operatorname{dn}(K+iK',k)&=0 \end{aligned} \label{buch:elliptische:eqn:eckwerte} diff --git a/buch/chapters/110-elliptisch/images/Makefile b/buch/chapters/110-elliptisch/images/Makefile index 43ca35e..7636e65 100644 --- a/buch/chapters/110-elliptisch/images/Makefile +++ b/buch/chapters/110-elliptisch/images/Makefile @@ -120,6 +120,11 @@ ellpolnul.pdf: ellpolnul.tex ellcommon.tex ellall.pdf: ellall.tex ellcommon.tex pdflatex ellall.tex -ellselection.pdf: ellselection.tex +rechteckpfade2.tex: rechteck Makefile + ./rechteck --outfile rechteckpfade2.tex --k 0.87 --vsteps=1 +ellselection.pdf: ellselection.tex rechteckpfade2.tex pdflatex ellselection.tex +rechteckpfade3.tex: rechteck + ./rechteck --outfile rechteckpfade3.tex --k 0.70710678118654752440 \ + --vsteps=4 diff --git a/buch/chapters/110-elliptisch/images/ellpolnul.pdf b/buch/chapters/110-elliptisch/images/ellpolnul.pdf index 9143d2d..a60a51b 100644 Binary files a/buch/chapters/110-elliptisch/images/ellpolnul.pdf and b/buch/chapters/110-elliptisch/images/ellpolnul.pdf differ diff --git a/buch/chapters/110-elliptisch/images/ellpolnul.tex b/buch/chapters/110-elliptisch/images/ellpolnul.tex index 16730f9..fe1d235 100644 --- a/buch/chapters/110-elliptisch/images/ellpolnul.tex +++ b/buch/chapters/110-elliptisch/images/ellpolnul.tex @@ -15,6 +15,15 @@ \def\skala{1} \begin{tikzpicture}[>=latex,thick,scale=\skala] +\input rechteckpfade3.tex + +\pgfmathparse{1/\xmax} +\xdef\dx{\pgfmathresult} +\xdef\dy{\dx} + +\netz{0.1pt} +\draw[line width=0.1pt] (-1,0) -- (1,0); +\fill[color=white,opacity=0.5] (-1,-1) rectangle (1,1); \draw (-1,-1) rectangle (1,1); \node at (-1,-1) [below left] {$0$}; \node at (1,-1) [below right] {$K$}; diff --git a/buch/chapters/110-elliptisch/images/ellselection.pdf b/buch/chapters/110-elliptisch/images/ellselection.pdf index bc9af35..bad342c 100644 Binary files a/buch/chapters/110-elliptisch/images/ellselection.pdf and b/buch/chapters/110-elliptisch/images/ellselection.pdf differ diff --git a/buch/chapters/110-elliptisch/images/ellselection.tex b/buch/chapters/110-elliptisch/images/ellselection.tex index 9e822ec..0dd1e04 100644 --- a/buch/chapters/110-elliptisch/images/ellselection.tex +++ b/buch/chapters/110-elliptisch/images/ellselection.tex @@ -14,15 +14,22 @@ \def\skala{1} \begin{tikzpicture}[>=latex,thick,scale=\skala] +\input{rechteckpfade2.tex} + \def\l{0.45} \pgfmathparse{\l*72/2.54} \xdef\L{\pgfmathresult} +\pgfmathparse{4.1/\xmax} +\xdef\dx{\pgfmathresult} +\xdef\dy{\dx} + \def\sx{4.1} \pgfmathparse{\sx*72/2.54} \xdef\Sx{\pgfmathresult} -\def\sy{3.2} +\pgfmathparse{\dx*\ymax} +\xdef\sy{\pgfmathresult} \pgfmathparse{\sy*72/2.54} \xdef\Sy{\pgfmathresult} @@ -36,8 +43,10 @@ \pgfmathparse{\sy/2} \xdef\rechtsy{\pgfmathresult} -\fill[color=red!20] ({-\sx},0) rectangle (\sx,\sy); -\fill[color=blue!20] ({-\sx},{-\sy}) rectangle (\sx,0); +\hintergrund +\netz{0.7pt} +\fill[color=red!14,opacity=0.7] ({-\sx},0) rectangle (\sx,\sy); +\fill[color=blue!14,opacity=0.7] ({-\sx},{-\sy}) rectangle (\sx,0); \fill[color=yellow!40,opacity=0.5] (0,0) rectangle (\sx,\sy); \draw (-\sx,-\sy) rectangle (\sx,\sy); diff --git a/buch/chapters/110-elliptisch/images/jacobiplots.pdf b/buch/chapters/110-elliptisch/images/jacobiplots.pdf index 59aea81..3ac9fe5 100644 Binary files a/buch/chapters/110-elliptisch/images/jacobiplots.pdf and b/buch/chapters/110-elliptisch/images/jacobiplots.pdf differ diff --git a/buch/chapters/110-elliptisch/images/kegelpara.pdf b/buch/chapters/110-elliptisch/images/kegelpara.pdf index 59f9f50..0d6f63d 100644 Binary files a/buch/chapters/110-elliptisch/images/kegelpara.pdf and b/buch/chapters/110-elliptisch/images/kegelpara.pdf differ diff --git a/buch/chapters/110-elliptisch/images/rechteck.cpp b/buch/chapters/110-elliptisch/images/rechteck.cpp index c65ae0f..b5ad0ec 100644 --- a/buch/chapters/110-elliptisch/images/rechteck.cpp +++ b/buch/chapters/110-elliptisch/images/rechteck.cpp @@ -163,7 +163,7 @@ curvetracer::curve_t curvetracer::trace(const std::complex& startz, } catch (const toomanyiterations& x) { std::cerr << "iterations exceeded after "; std::cerr << result.size(); - std::cerr << " points"; + std::cerr << " points" << std::endl; maxsteps = 0; } } @@ -230,7 +230,7 @@ void curvedrawer::operator()(const curvetracer::curve_t& curve) { double first = true; for (auto z : curve) { if (first) { - *_out << "\\draw[color=" << _color << "] "; + *_out << "\\draw[color=" << _color << ",line width=#1] "; first = false; } else { *_out << std::endl << " -- "; @@ -244,6 +244,7 @@ static struct option longopts[] = { { "outfile", required_argument, NULL, 'o' }, { "k", required_argument, NULL, 'k' }, { "deltax", required_argument, NULL, 'd' }, +{ "vsteps", required_argument, NULL, 'v' }, { NULL, 0, NULL, 0 } }; @@ -252,7 +253,8 @@ static struct option longopts[] = { */ int main(int argc, char *argv[]) { double k = 0.625; - double deltax = 0.2; + double Deltax = 0.2; + int vsteps = 4; int c; int longindex; @@ -261,7 +263,7 @@ int main(int argc, char *argv[]) { &longindex))) switch (c) { case 'd': - deltax = std::stod(optarg); + Deltax = std::stod(optarg); break; case 'o': outfilename = std::string(optarg); @@ -269,6 +271,9 @@ int main(int argc, char *argv[]) { case 'k': k = std::stod(optarg); break; + case 'v': + vsteps = std::stoi(optarg); + break; } double kprime = integrand::kprime(k); @@ -293,15 +298,21 @@ int main(int argc, char *argv[]) { curvetracer ct(f); // fill + (*cdp->out()) << "\\def\\hintergrund{" << std::endl; (*cdp->out()) << "\\fill[color=red!10] ({" << (-xmax) << "*\\dx},0) " << "rectangle ({" << xmax << "*\\dx},{" << ymax << "*\\dy});" << std::endl; (*cdp->out()) << "\\fill[color=blue!10] ({" << (-xmax) << "*\\dx},{" << (-ymax) << "*\\dy}) rectangle ({" << xmax << "*\\dx},0);" << std::endl; + (*cdp->out()) << "}" << std::endl; + + // macro for grid + (*cdp->out()) << "\\def\\netz#1{" << std::endl; // "circles" std::complex dir(0.01, 0); + double deltax = Deltax; for (double im = deltax; im < 3; im += deltax) { std::complex startz(0, im); std::complex startw = ct.startpoint(startz); @@ -316,9 +327,9 @@ int main(int argc, char *argv[]) { } // imaginary axis - (*cdp->out()) << "\\draw[color=red] (0,0) -- (0,{" << ymax + (*cdp->out()) << "\\draw[color=red,line width=#1] (0,0) -- (0,{" << ymax << "*\\dy});" << std::endl; - (*cdp->out()) << "\\draw[color=blue] (0,0) -- (0,{" << (-ymax) + (*cdp->out()) << "\\draw[color=blue,line width=#1] (0,0) -- (0,{" << (-ymax) << "*\\dy});" << std::endl; // arguments between 0 and 1 @@ -353,7 +364,8 @@ int main(int argc, char *argv[]) { // arguments between 1 and 1/k { - for (double x0 = 1 + deltax; x0 < 1/k; x0 += deltax) { + deltax = (1/k - 1) / vsteps; + for (double x0 = 1 + deltax; x0 < 1/k + 0.00001; x0 += deltax) { double y0 = sqrt(1-1/(x0*x0))/kprime; //std::cout << "y0 = " << y0 << std::endl; double y = gsl_sf_ellint_F(asin(y0), kprime, @@ -389,8 +401,9 @@ int main(int argc, char *argv[]) { // arguments larger than 1/k { + deltax = Deltax; dir = std::complex(0, 0.01); - double x0 = 1; + double x0 = 1/k; while (x0 <= 1/k + 0.0001) { x0 += deltax; } for (; x0 < 4; x0 += deltax) { std::complex startz(x0); @@ -407,6 +420,8 @@ int main(int argc, char *argv[]) { } } + (*cdp->out()) << "}" << std::endl; + // border (*cdp->out()) << "\\def\\xmax{" << xmax << "}" << std::endl; (*cdp->out()) << "\\def\\ymax{" << ymax << "}" << std::endl; diff --git a/buch/chapters/110-elliptisch/images/rechteck.pdf b/buch/chapters/110-elliptisch/images/rechteck.pdf index 6209897..46f2376 100644 Binary files a/buch/chapters/110-elliptisch/images/rechteck.pdf and b/buch/chapters/110-elliptisch/images/rechteck.pdf differ diff --git a/buch/chapters/110-elliptisch/images/rechteck.tex b/buch/chapters/110-elliptisch/images/rechteck.tex index 622a9e9..12535ba 100644 --- a/buch/chapters/110-elliptisch/images/rechteck.tex +++ b/buch/chapters/110-elliptisch/images/rechteck.tex @@ -18,6 +18,8 @@ \def\dy{3} \input{rechteckpfade.tex} +\hintergrund +\netz{0.7pt} \begin{scope} \clip ({-\xmax*\dx},{-\ymax*\dy}) rectangle ({\xmax*\dx},{\ymax*\dy}); diff --git a/buch/chapters/110-elliptisch/images/torusschnitt.pdf b/buch/chapters/110-elliptisch/images/torusschnitt.pdf index 61293f3..2948e76 100644 Binary files a/buch/chapters/110-elliptisch/images/torusschnitt.pdf and b/buch/chapters/110-elliptisch/images/torusschnitt.pdf differ -- cgit v1.2.1 From b2d8e88a2517a5d15b01f4e34ac12dfc8723c265 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Fri, 24 Jun 2022 20:30:36 +0200 Subject: improve elliptic domain images --- buch/chapters/110-elliptisch/images/ellpolnul.pdf | Bin 86072 -> 130369 bytes buch/chapters/110-elliptisch/images/ellpolnul.tex | 9 ++++++--- .../chapters/110-elliptisch/images/jacobiplots.pdf | Bin 56975 -> 56975 bytes buch/chapters/110-elliptisch/images/kegelpara.pdf | Bin 202828 -> 202828 bytes .../110-elliptisch/images/torusschnitt.pdf | Bin 312677 -> 312677 bytes 5 files changed, 6 insertions(+), 3 deletions(-) diff --git a/buch/chapters/110-elliptisch/images/ellpolnul.pdf b/buch/chapters/110-elliptisch/images/ellpolnul.pdf index a60a51b..4453703 100644 Binary files a/buch/chapters/110-elliptisch/images/ellpolnul.pdf and b/buch/chapters/110-elliptisch/images/ellpolnul.pdf differ diff --git a/buch/chapters/110-elliptisch/images/ellpolnul.tex b/buch/chapters/110-elliptisch/images/ellpolnul.tex index fe1d235..b3183fc 100644 --- a/buch/chapters/110-elliptisch/images/ellpolnul.tex +++ b/buch/chapters/110-elliptisch/images/ellpolnul.tex @@ -17,12 +17,15 @@ \input rechteckpfade3.tex -\pgfmathparse{1/\xmax} +\pgfmathparse{2/\xmax} \xdef\dx{\pgfmathresult} \xdef\dy{\dx} -\netz{0.1pt} -\draw[line width=0.1pt] (-1,0) -- (1,0); +\begin{scope}[xshift=-1cm,yshift=-1cm] +\clip (0,0) rectangle (2,2); +\netz{0.4pt} +\draw[line width=0.4pt] (-1,0) -- (1,0); +\end{scope} \fill[color=white,opacity=0.5] (-1,-1) rectangle (1,1); \draw (-1,-1) rectangle (1,1); \node at (-1,-1) [below left] {$0$}; diff --git a/buch/chapters/110-elliptisch/images/jacobiplots.pdf b/buch/chapters/110-elliptisch/images/jacobiplots.pdf index 3ac9fe5..eb9d7f1 100644 Binary files a/buch/chapters/110-elliptisch/images/jacobiplots.pdf and b/buch/chapters/110-elliptisch/images/jacobiplots.pdf differ diff --git a/buch/chapters/110-elliptisch/images/kegelpara.pdf b/buch/chapters/110-elliptisch/images/kegelpara.pdf index 0d6f63d..2bbd428 100644 Binary files a/buch/chapters/110-elliptisch/images/kegelpara.pdf and b/buch/chapters/110-elliptisch/images/kegelpara.pdf differ diff --git a/buch/chapters/110-elliptisch/images/torusschnitt.pdf b/buch/chapters/110-elliptisch/images/torusschnitt.pdf index 2948e76..9b64ab2 100644 Binary files a/buch/chapters/110-elliptisch/images/torusschnitt.pdf and b/buch/chapters/110-elliptisch/images/torusschnitt.pdf differ -- cgit v1.2.1 From e1e6149b020ef102e257adb9898d5ba5242bac05 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Fri, 24 Jun 2022 20:47:33 +0200 Subject: more improvements --- buch/chapters/110-elliptisch/images/ellpolnul.pdf | Bin 130369 -> 130369 bytes buch/chapters/110-elliptisch/images/ellpolnul.tex | 2 +- .../110-elliptisch/images/ellselection.pdf | Bin 76094 -> 165928 bytes .../110-elliptisch/images/ellselection.tex | 14 ++++++++++++-- 4 files changed, 13 insertions(+), 3 deletions(-) diff --git a/buch/chapters/110-elliptisch/images/ellpolnul.pdf b/buch/chapters/110-elliptisch/images/ellpolnul.pdf index 4453703..d798169 100644 Binary files a/buch/chapters/110-elliptisch/images/ellpolnul.pdf and b/buch/chapters/110-elliptisch/images/ellpolnul.pdf differ diff --git a/buch/chapters/110-elliptisch/images/ellpolnul.tex b/buch/chapters/110-elliptisch/images/ellpolnul.tex index b3183fc..dfa04d3 100644 --- a/buch/chapters/110-elliptisch/images/ellpolnul.tex +++ b/buch/chapters/110-elliptisch/images/ellpolnul.tex @@ -26,7 +26,7 @@ \netz{0.4pt} \draw[line width=0.4pt] (-1,0) -- (1,0); \end{scope} -\fill[color=white,opacity=0.5] (-1,-1) rectangle (1,1); +\fill[color=white,opacity=0.7] (-1,-1) rectangle (1,1); \draw (-1,-1) rectangle (1,1); \node at (-1,-1) [below left] {$0$}; \node at (1,-1) [below right] {$K$}; diff --git a/buch/chapters/110-elliptisch/images/ellselection.pdf b/buch/chapters/110-elliptisch/images/ellselection.pdf index bad342c..7c98db1 100644 Binary files a/buch/chapters/110-elliptisch/images/ellselection.pdf and b/buch/chapters/110-elliptisch/images/ellselection.pdf differ diff --git a/buch/chapters/110-elliptisch/images/ellselection.tex b/buch/chapters/110-elliptisch/images/ellselection.tex index 0dd1e04..d8afeb1 100644 --- a/buch/chapters/110-elliptisch/images/ellselection.tex +++ b/buch/chapters/110-elliptisch/images/ellselection.tex @@ -43,8 +43,18 @@ \pgfmathparse{\sy/2} \xdef\rechtsy{\pgfmathresult} -\hintergrund -\netz{0.7pt} +\begin{scope} + \clip (-\sx,-\sy) rectangle (\sx,\sy); + \begin{scope}[xshift={-\Sx}] + \hintergrund + \netz{0.7pt} + \end{scope} + \begin{scope}[xshift={\Sx}] + \hintergrund + \netz{0.7pt} + \end{scope} +\end{scope} + \fill[color=red!14,opacity=0.7] ({-\sx},0) rectangle (\sx,\sy); \fill[color=blue!14,opacity=0.7] ({-\sx},{-\sy}) rectangle (\sx,0); \fill[color=yellow!40,opacity=0.5] (0,0) rectangle (\sx,\sy); -- cgit v1.2.1 From 7cc8f34f003ecb25ade7f1ff2287fe12b5a22c40 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sat, 25 Jun 2022 14:36:04 +0200 Subject: arithmetic-geometric-mean --- buch/chapters/110-elliptisch/agm.m | 20 ++ buch/chapters/110-elliptisch/ellintegral.tex | 320 ++++++++++++++++++++- .../chapters/110-elliptisch/experiments/agm.maxima | 26 ++ 3 files changed, 357 insertions(+), 9 deletions(-) create mode 100644 buch/chapters/110-elliptisch/agm.m create mode 100644 buch/chapters/110-elliptisch/experiments/agm.maxima diff --git a/buch/chapters/110-elliptisch/agm.m b/buch/chapters/110-elliptisch/agm.m new file mode 100644 index 0000000..2f0a1ea --- /dev/null +++ b/buch/chapters/110-elliptisch/agm.m @@ -0,0 +1,20 @@ +# +# agm.m +# +# (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +format long + +n = 10; +a = 1; +b = sqrt(0.5); + +for i = (1:n) + printf("%20.16f %20.16f\n", a, b); + A = (a+b)/2; + b = sqrt(a*b); + a = A; +end + +E = 2 / (pi * a) + diff --git a/buch/chapters/110-elliptisch/ellintegral.tex b/buch/chapters/110-elliptisch/ellintegral.tex index bc597d6..970d8fa 100644 --- a/buch/chapters/110-elliptisch/ellintegral.tex +++ b/buch/chapters/110-elliptisch/ellintegral.tex @@ -451,14 +451,310 @@ Hilfe einer Entwicklung der Wurzel mit der Binomialreihe gefunden werden. \end{proof} +Die Darstellung von $E(k)$ als hypergeometrische Reihe ermöglicht +jetzt zum Beispiel auch die Berechnung der Ableitung nach dem +Parameter $k$ mit der Ableitungsformel für die Funktion $\mathstrut_2F_1$. + + % +% Berechnung mit dem arithmetisch-geometrischen Mittel +% +\subsection{Berechnung mit dem arithmetisch-geometrischen Mittel} +Die numerische Berechnung von elliptischer Integrale mit gewöhnlichen +numerischen Integrationsroutinen ist nicht sehr effizient. +Das in diesem Abschnitt vorgestellte arithmetisch-geometrische Mittel +\index{arithmetisch-geometrisches Mittel}% +liefert einen Algorithmus mit sehr viel besserer Konvergenz. +Die Methode lässt sich auch auf die unvollständigen elliptischen +Integrale von Abschnitt~\eqref{buch:elliptisch:subsection:unvollstintegral} +verallgemeinern. +Sie ist ein Speziallfall der sogenannten Landen-Transformation, +\index{Landen-Transformation}% +welche ausser für die elliptischen Integrale auch für die +Jacobischen elliptischen Funktionen formuliert werden kann und +für letztere ebenfalls sehr schnelle numerische Algorithmen liefert. + % +% Das arithmetisch-geometrische Mittel % -\subsubsection{Komplementäre Integrale} +\subsubsection{Das arithmetisch-geometrische Mittel} +Seien $a$ und $b$ zwei nichtnegative reelle Zahlen. +Aus $a$ und $b$ werden jetzt zwei Folgen konstruiert, deren Glieder +durch +\begin{align*} +a_0&=a &&\text{und}& a_{n+1} &= \frac{a_n+b_n}2 &&\text{arithmetisches Mittel} +\\ +b_0&=b &&\text{und}& b_{n+1} &= \sqrt{a_nb_n} &&\text{geometrisches Mittel} +\end{align*} +definiert sind. + +\begin{satz} +Falls $a>b>0$ ist, nimmt die Folge $(a_k)_{k\ge 0}$ monoton ab und +$(b_k)_{k\ge 0}$ nimmt monoton zu. +Beide konvergieren quadratisch gegen einen gemeinsamen Grenzwert. +\end{satz} + +\begin{definition} +Der gemeinsame Grenzwert von $a_n$ und $b_n$ heisst das +{\em arithmetisch-geometrische Mittel} und wird mit +\[ +M(a,b) += +\lim_{n\to\infty} a_n += +\lim_{n\to\infty} b_n +\] +bezeichnet. +\index{arithmetisch-geometrisches Mittel}% +\end{definition} -\subsubsection{Ableitung} -XXX Ableitung \\ -XXX Stammfunktion \\ +\begin{proof}[Beweis] +Zunächst ist zu zeigen, dass die Folgen monoton sind. +Dies folgt sofort aus der Definition der Folgen: +\begin{align*} +a_{n+1} &= \frac{a_n+b_n}{2} \ge \frac{a_n+a_n}{2} = a_n +\\ +b_{n+1} &= \sqrt{a_nb_n} \ge \sqrt{b_nb_n} = b_n. +\end{align*} +Die Konvergenz folgt aus +\[ +a_{n+1}-b_{n+1} +\le +a_{n+1}-b_n += +\frac{a_n+b_n}{2}-b_n += +\frac{a_n-b_n}2 +\le +\frac{a-b}{2^{n+1}}. +\] +Dies zeigt jedoch nur, dass die Konvergenz mindestens ein +Bit in jeder Iteration ist. +Aus +\[ +a_{n+1}^2 - b_{n+1}^2 += +\frac{(a_n+b_n)^2}{4} - a_nb_n += +\frac{a_n^2 -2a_nb_n+b_n^2}{4} += +\frac{(a_n-b_n)^2}{4} +\] +folgt +\[ +a_{n+1}-b_{n+1} += +\frac{(a_n-b_n)^2}{2(a_{n+1}+b_{n+1})}. +\] +Da der Nenner gegen $2M(a,b)$ konvergiert, wird der Fehler für in +jeder Iteration quadriert, es liegt also quadratische Konvergenz vor. +\end{proof} + +% +% Transformation des elliptischen Integrals +% +\subsubsection{Transformation des elliptischen Integrals} +In diesem Abschnitt soll das Integral +\[ +I(a,b) += +\int_0^{\frac{\pi}2} +\frac{dt}{\sqrt{a^2\cos^2 t + b^2\sin^2t}} +\] +berechnet werden. +Es ist klar, dass +\[ +I(sa,sb) += +\frac{1}{s} I(a,b). +\] + +Gauss hat gefunden, dass die Substitution +\begin{equation} +\sin t += +\frac{2a\sin t_1}{a+b+(a-b)\sin t_1} +\label{buch:elliptisch:agm:subst} +\end{equation} +zu +\begin{equation} +\frac{dt}{a^2\cos^2 t + b^2 \sin^2 t} += +\frac{dt_1}{a_1^2\cos^2 t_1 + b_1^2 \sin^2 t_1} +\label{buch:elliptisch:agm:dtdt1} +\end{equation} +führt. +Um dies nachzuprüfen, muss man zunächst +\eqref{buch:elliptisch:agm:subst} +nach $t_1$ ableiten, was +\[ +\frac{d}{dt_1}\sin t += +\cos t +\frac{dt}{dt_1} +\qquad\Rightarrow\qquad +\biggl( +\frac{d}{dt_1}\sin t +\biggr)^2 += +(1-\sin^2t)\biggl(\frac{dt}{dt_1}\biggr)^2 +\] +ergibt. +Die Ableitung von $t$ nach $t_1$ kann auch aus +\eqref{buch:elliptisch:agm:dtdt1} +ableiten, es ist +\[ +\biggl( +\frac{dt}{dt_1} +\biggr)^2 += +\frac{a^2 \cos^2 t + b^2 \sin^2 t}{a_1^2 \cos^2 t_1 + b_1^2 \sin^2 t_1}. +\] +Man muss also nachprüfen, dass +\begin{equation} +\frac{1}{1-\sin^2 t} +\frac{d}{dt_1}\sin t += +\frac{a^2 \cos^2 t + b^2 \sin^2 t}{a_1^2 \cos^2 t_1 + b_1^2 \sin^2 t_1}. +\label{buch:elliptisch:agm:deq} +\end{equation} +Dazu muss man zunächst $a_1=(a+b)/2$, $b_1=\sqrt{ab}$ setzen. +Ausserdem muss man $\cos^2 t$ durch $1-\sin^2t$ ersetzen und +$\sin t$ durch \eqref{buch:elliptisch:agm:subst}. +Auch $\cos^2 t_1$ muss man durch $1-\sin^2t_1$ ersetzt werden. +Dann kann man nach einer langwierigen Rechnung, die sich am leichtesten +mit einem Computer-Algebra-System ausführen lässt finden, dass +\eqref{buch:elliptisch:agm:deq} +tatsächlich korrekt ist. + +\begin{satz} +\label{buch:elliptisch:agm:integrale} +Für $a_1=(a+b)/2$ und $b_1=\sqrt{ab}$ gilt +\[ +\int_0^{\frac{\pi}2} +\frac{dt}{a^2\cos^2 t + b^2 \sin^2 t} += +\int_0^{\frac{\pi}2} +\frac{dt_1}{a_1^2\cos^2 t_1 + b_1^2 \sin^2 t_1}. +\] +\end{satz} + +Der Satz~\ref{buch:elliptisch:agm:integrale} zeigt, dass die Ersetzung +von $a$ und $b$ durch $a_1$ und $b_1$ das Integral $I(a,b)$ nicht ändert. +Dies gilt natürlich für alle Glieder der Folge zur Bestimmung des +arithmetisch-geometrischen Mittels. + +\begin{satz} +Für $a\ge b>0$ gilt +\begin{equation} +I(a,b) += +\int_0^{\frac{\pi}2} +\frac{dt}{a^2\cos^2 t + b^2\sin^2t} += +\frac{\pi}{2M(a,b)} +\end{equation} +\end{satz} + +\begin{proof}[Beweis] +Zunächst folgt aus Satz~\ref{buch:elliptisch:agm:integrale}, dass +\[ +I(a,b) += +I(a_1,b_1) += +\dots += +I(a_n,b_n). +\] +Ausserdem ist $a_n\to M(a,b)$ und $b_n\to M(a,b)$, +damit wird +\[ +I(a,b) += +\frac{1}{M(a,b)} +\int_0^{\frac{\pi}2} +\frac{dt}{\sqrt{\cos^2 t + \sin^2 t}} += +\frac{\pi}{2M(a,b)}. +\qedhere +\] +\end{proof} + +% +% Berechnung des elliptischen Integrals +% +\subsubsection{Berechnung des elliptischen Integrals} +Das elliptische Integral erster Art hat eine Form, die dem Integral +$I(a,b)$ bereits sehr ähnlich ist. +Im die Verbindung herzustellen, berechnen wir +\begin{align*} +I(a,b) +&= +\int_0^{\frac{\pi}2} +\frac{dt}{\sqrt{a^2\cos^2 t + b^2 \sin^2 t}} +\\ +&= +\frac{1}{a} +\int_0^{\frac{\pi}2} +\frac{dt}{\sqrt{1-\sin^2 t + \frac{b^2}{a^2} \sin^2 t}} +\\ +&= +\frac{1}{a} +\int_0^{\frac{\pi}2} +\frac{dt}{\sqrt{1-(1-\frac{b^2}{a^2})\sin^2 t}} += +K(k) +\qquad\text{mit}\qquad +k'=\frac{b^2}{a^2},\; +k=\sqrt{1-k^{\prime 2}} +\end{align*} + +\begin{satz} +\label{buch:elliptisch:agm:satz:Ek} +Für $0{$}c<{$}|>{$}c<{$}|>{$}c<{$}|} +\hline +n& a_n & b_n \\ +\hline +0 & 1.0000000000000000 & 0.7071067811865476\\ +1 & 0.\underline{8}535533905932737 & 0.\underline{84}08964152537146\\ +2 & 0.\underline{8472}249029234942 & 0.\underline{8472}012667468916\\ +3 & 0.\underline{847213084}8351929 & 0.\underline{8472130847}527654\\ +4 & 0.\underline{847213084793979}2 & 0.\underline{847213084793979}1\\ +\hline +\end{tabular} +\caption{Die Berechnung des arithmetisch-geometrischen Mittels für +$a=1$ und $b=\sqrt{2}/2$ zeigt die sehr rasche Konvergenz. +\label{buch:elliptisch:agm:numerisch}} +\end{table} +In diesem Abschnitt soll als Zahlenbeispiel $E(k)$ für $k=\sqrt{2}/2$ +berechnet werden. +In diesem speziellen Fall ist $k'=k$. +Tabelle~\ref{buch:elliptisch:agm:numerisch} zeigt die sehr rasche +Konvergenz der Berechnung des arithmetisch-geometrischen Mittels +von $1$ und $\sqrt{2}/2$. +Mit Satz~\ref{buch:elliptisch:agm:satz:Ek} folgt jetzt +\[ +K(\sqrt{2}/2) += +\frac{\pi}{2M(1,\sqrt{2}/2)} += +0.751428163461842. +\] +Die Berechnung hat nur 4 Mittelwerte, 4 Produkte, 4 Quadratwurzeln und +eine Division erfordert. % % Unvollständige elliptische Integrale @@ -551,7 +847,7 @@ Die Faktoren, die in den Integranden der unvollständigen elliptischen Integrale vorkommen, haben Nullstellen bei $\pm1$, $\pm1/k$ und $\pm 1/\sqrt{n}$ -XXX Additionstheoreme \\ +% XXX Additionstheoreme \\ XXX Parameterkonventionen \\ % @@ -648,6 +944,9 @@ l({\textstyle\frac{1}{k}})=\int_1^{\frac1{k}} \end{equation} ausgewertet werden. +% +% Komplementärmodul +% \subsubsection{Komplementärmodul} Im vorangegangen Abschnitt wurde gezeigt, dass der Wertebereicht des unvollständigen elliptischen Integrals der ersten Art als komplexe @@ -751,6 +1050,9 @@ in das blaue. \label{buch:elliptisch:fig:rechteck}} \end{figure} +% +% Reelle Argument > 1/k +% \subsubsection{Reelle Argument $> 1/k$} Für Argument $x> 1/k$ sind beide Faktoren im Integranden des unvollständigen elliptischen Integrals negativ, das Integral kann @@ -797,7 +1099,7 @@ F(x,k) = iK(k') - F\biggl(\frac1{kx},k\biggr) für die Werte des elliptischen Integrals erster Art für grosse Argumentwerte fest. -\subsection{Potenzreihe} -XXX Potenzreihen \\ -XXX Als hypergeometrische Funktionen \url{https://www.youtube.com/watch?v=j0t1yWrvKmE} \\ -XXX Berechnung mit der Landen-Transformation https://en.wikipedia.org/wiki/Landen%27s_transformation +%\subsection{Potenzreihe} +%XXX Potenzreihen \\ +%XXX Als hypergeometrische Funktionen \url{https://www.youtube.com/watch?v=j0t1yWrvKmE} \\ +%XXX Berechnung mit der Landen-Transformation https://en.wikipedia.org/wiki/Landen%27s_transformation diff --git a/buch/chapters/110-elliptisch/experiments/agm.maxima b/buch/chapters/110-elliptisch/experiments/agm.maxima new file mode 100644 index 0000000..c7facd4 --- /dev/null +++ b/buch/chapters/110-elliptisch/experiments/agm.maxima @@ -0,0 +1,26 @@ +/* + * agm.maxima + * + * (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule + */ + +S: 2*a*sin(theta1) / (a+b+(a-b)*sin(theta1)^2); + +C2: ratsimp(diff(S, theta1)^2 / (1 - S^2)); +C2: ratsimp(subst(sqrt(1-sin(theta1)^2), cos(theta1), C2)); +C2: ratsimp(subst(S, sin(theta), C2)); +C2: ratsimp(subst(sqrt(1-S^2), cos(theta), C2)); + +D2: (a^2 * cos(theta)^2 + b^2 * sin(theta)^2) + / + (a1^2 * cos(theta1)^2 + b1^2 * sin(theta1)^2); +D2: subst((a+b)/2, a1, D2); +D2: subst(sqrt(a*b), b1, D2); +D2: ratsimp(subst(1-S^2, cos(theta)^2, D2)); +D2: ratsimp(subst(S, sin(theta), D2)); +D2: ratsimp(subst(1-sin(theta1)^2, cos(theta1)^2, D2)); + +Q: D2/C2; +Q: ratsimp(subst(x, sin(theta1), Q)); + +Q: ratsimp(expand(ratsimp(Q))); -- cgit v1.2.1 From 335c3a23f09759be380291ec89b0f2c43c2d3db6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sat, 25 Jun 2022 22:46:16 +0200 Subject: fix agm --- buch/chapters/110-elliptisch/agm.m | 20 ------------- buch/chapters/110-elliptisch/agm/Makefile | 10 +++++++ buch/chapters/110-elliptisch/agm/agm.cpp | 42 ++++++++++++++++++++++++++++ buch/chapters/110-elliptisch/agm/agm.m | 20 +++++++++++++ buch/chapters/110-elliptisch/ellintegral.tex | 34 ++++++++++++---------- 5 files changed, 91 insertions(+), 35 deletions(-) delete mode 100644 buch/chapters/110-elliptisch/agm.m create mode 100644 buch/chapters/110-elliptisch/agm/Makefile create mode 100644 buch/chapters/110-elliptisch/agm/agm.cpp create mode 100644 buch/chapters/110-elliptisch/agm/agm.m diff --git a/buch/chapters/110-elliptisch/agm.m b/buch/chapters/110-elliptisch/agm.m deleted file mode 100644 index 2f0a1ea..0000000 --- a/buch/chapters/110-elliptisch/agm.m +++ /dev/null @@ -1,20 +0,0 @@ -# -# agm.m -# -# (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule -# -format long - -n = 10; -a = 1; -b = sqrt(0.5); - -for i = (1:n) - printf("%20.16f %20.16f\n", a, b); - A = (a+b)/2; - b = sqrt(a*b); - a = A; -end - -E = 2 / (pi * a) - diff --git a/buch/chapters/110-elliptisch/agm/Makefile b/buch/chapters/110-elliptisch/agm/Makefile new file mode 100644 index 0000000..e7975e1 --- /dev/null +++ b/buch/chapters/110-elliptisch/agm/Makefile @@ -0,0 +1,10 @@ +# +# Makefile +# +# (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# + +agm: agm.cpp + g++ -O -Wall -g -std=c++11 agm.cpp -o agm `pkg-config --cflags gsl` `pkg-config --libs gsl` + ./agm + diff --git a/buch/chapters/110-elliptisch/agm/agm.cpp b/buch/chapters/110-elliptisch/agm/agm.cpp new file mode 100644 index 0000000..fdb0441 --- /dev/null +++ b/buch/chapters/110-elliptisch/agm/agm.cpp @@ -0,0 +1,42 @@ +/* + * agm.cpp + * + * (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule + */ +#include +#include +#include +#include +#include + + + +int main(int argc, char *argv[]) { + long double a = 1; + long double b = sqrtl(2.)/2; + if (argc >= 3) { + a = std::stod(argv[1]); + b = std::stod(argv[2]); + } + + { + long double an = a; + long double bn = b; + for (int i = 0; i < 10; i++) { + printf("%d %24.18Lf %24.18Lf %24.18Lf\n", + i, an, bn, a * M_PI / (2 * an)); + long double A = (an + bn) / 2; + bn = sqrtl(an * bn); + an = A; + } + } + + { + double k = b/a; + k = sqrt(1 - k*k); + double K = gsl_sf_ellint_Kcomp(k, GSL_PREC_DOUBLE); + printf(" %24.18f %24.18f\n", k, K); + } + + return EXIT_SUCCESS; +} diff --git a/buch/chapters/110-elliptisch/agm/agm.m b/buch/chapters/110-elliptisch/agm/agm.m new file mode 100644 index 0000000..dcb3ad8 --- /dev/null +++ b/buch/chapters/110-elliptisch/agm/agm.m @@ -0,0 +1,20 @@ +# +# agm.m +# +# (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +format long + +n = 10; +a = 1; +b = sqrt(0.5); + +for i = (1:n) + printf("%20.16f %20.16f\n", a, b); + A = (a+b)/2; + b = sqrt(a*b); + a = A; +end + +K = pi / (2 * a) + diff --git a/buch/chapters/110-elliptisch/ellintegral.tex b/buch/chapters/110-elliptisch/ellintegral.tex index 970d8fa..79ed91e 100644 --- a/buch/chapters/110-elliptisch/ellintegral.tex +++ b/buch/chapters/110-elliptisch/ellintegral.tex @@ -578,9 +578,9 @@ Gauss hat gefunden, dass die Substitution \end{equation} zu \begin{equation} -\frac{dt}{a^2\cos^2 t + b^2 \sin^2 t} +\frac{dt}{\sqrt{a^2_{\phantom{1}}\cos^2 t + b^2_{\phantom{1}} \sin^2 t}} = -\frac{dt_1}{a_1^2\cos^2 t_1 + b_1^2 \sin^2 t_1} +\frac{dt_1}{\sqrt{a_1^2\cos^2 t_1 + b_1^2 \sin^2 t_1}} \label{buch:elliptisch:agm:dtdt1} \end{equation} führt. @@ -608,7 +608,7 @@ ableiten, es ist \frac{dt}{dt_1} \biggr)^2 = -\frac{a^2 \cos^2 t + b^2 \sin^2 t}{a_1^2 \cos^2 t_1 + b_1^2 \sin^2 t_1}. +\frac{a^2_{\phantom{1}} \cos^2 t + b^2_{\phantom{1}} \sin^2 t}{a_1^2 \cos^2 t_1 + b_1^2 \sin^2 t_1}. \] Man muss also nachprüfen, dass \begin{equation} @@ -618,7 +618,7 @@ Man muss also nachprüfen, dass \frac{a^2 \cos^2 t + b^2 \sin^2 t}{a_1^2 \cos^2 t_1 + b_1^2 \sin^2 t_1}. \label{buch:elliptisch:agm:deq} \end{equation} -Dazu muss man zunächst $a_1=(a+b)/2$, $b_1=\sqrt{ab}$ setzen. +Dazu muss man zunächst $a_1=(a+b)/2$, $b_1=\!\sqrt{ab}$ setzen. Ausserdem muss man $\cos^2 t$ durch $1-\sin^2t$ ersetzen und $\sin t$ durch \eqref{buch:elliptisch:agm:subst}. Auch $\cos^2 t_1$ muss man durch $1-\sin^2t_1$ ersetzt werden. @@ -724,15 +724,19 @@ K(k) = I(1,\sqrt{1-k^2}) = \frac{\pi}{2M(1,\sqrt{1-k^2})} \subsubsection{Numerisches Beispiel} \begin{table} \centering -\begin{tabular}{|>{$}c<{$}|>{$}c<{$}|>{$}c<{$}|} +\begin{tabular}{|>{$}c<{$}|>{$}c<{$}|>{$}c<{$}|>{$}c<{$}|} \hline -n& a_n & b_n \\ +n& a_n & b_n & \pi/2a_n \mathstrut +\text{\vrule height12pt depth6pt width0pt}\\ \hline -0 & 1.0000000000000000 & 0.7071067811865476\\ -1 & 0.\underline{8}535533905932737 & 0.\underline{84}08964152537146\\ -2 & 0.\underline{8472}249029234942 & 0.\underline{8472}012667468916\\ -3 & 0.\underline{847213084}8351929 & 0.\underline{8472130847}527654\\ -4 & 0.\underline{847213084793979}2 & 0.\underline{847213084793979}1\\ +\text{\vrule height12pt depth0pt width0pt} + 0 & 1.0000000000000000000 & 0.7071067811865475243 & 1.5707963267948965579 \\ + 1 & 0.8535533905932737621 & 0.8408964152537145430 & 1.\underline{8}403023690212201581 \\ + 2 & 0.8472249029234941526 & 0.8472012667468914603 & 1.\underline{8540}488143993356315 \\ + 3 & 0.8472130848351928064 & 0.8472130847527653666 & 1.\underline{854074677}2111781089 \\ + 4 & 0.8472130847939790865 & 0.8472130847939790865 & 1.\underline{854074677301371}8463 \\ +\infty& & & 1.8540746773013719184  +\text{\vrule height12pt depth6pt width0pt}\\ \hline \end{tabular} \caption{Die Berechnung des arithmetisch-geometrischen Mittels für @@ -747,11 +751,11 @@ Konvergenz der Berechnung des arithmetisch-geometrischen Mittels von $1$ und $\sqrt{2}/2$. Mit Satz~\ref{buch:elliptisch:agm:satz:Ek} folgt jetzt \[ -K(\sqrt{2}/2) +K(\!\sqrt{2}/2) = -\frac{\pi}{2M(1,\sqrt{2}/2)} +\frac{\pi}{2M(1,\!\sqrt{2}/2)} = -0.751428163461842. +1.854074677301372. \] Die Berechnung hat nur 4 Mittelwerte, 4 Produkte, 4 Quadratwurzeln und eine Division erfordert. @@ -848,7 +852,7 @@ Integrale vorkommen, haben Nullstellen bei $\pm1$, $\pm1/k$ und $\pm 1/\sqrt{n}$ % XXX Additionstheoreme \\ -XXX Parameterkonventionen \\ +% XXX Parameterkonventionen \\ % % Wertebereich -- cgit v1.2.1 From 753507e2be9ce6019b934b8422980c62b55ef1fe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sat, 25 Jun 2022 22:52:08 +0200 Subject: final agm --- buch/chapters/110-elliptisch/ellintegral.tex | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/buch/chapters/110-elliptisch/ellintegral.tex b/buch/chapters/110-elliptisch/ellintegral.tex index 79ed91e..4589ffa 100644 --- a/buch/chapters/110-elliptisch/ellintegral.tex +++ b/buch/chapters/110-elliptisch/ellintegral.tex @@ -547,7 +547,8 @@ a_{n+1}-b_{n+1} \frac{(a_n-b_n)^2}{2(a_{n+1}+b_{n+1})}. \] Da der Nenner gegen $2M(a,b)$ konvergiert, wird der Fehler für in -jeder Iteration quadriert, es liegt also quadratische Konvergenz vor. +jeder Iteration quadriert, die Zahl korrekter Stellen verdoppelt sich +in jeder Iteration, es liegt also quadratische Konvergenz vor. \end{proof} % @@ -726,16 +727,15 @@ K(k) = I(1,\sqrt{1-k^2}) = \frac{\pi}{2M(1,\sqrt{1-k^2})} \centering \begin{tabular}{|>{$}c<{$}|>{$}c<{$}|>{$}c<{$}|>{$}c<{$}|} \hline -n& a_n & b_n & \pi/2a_n \mathstrut -\text{\vrule height12pt depth6pt width0pt}\\ +n& a_n & b_n & \pi/2a_n \mathstrut\text{\vrule height12pt depth6pt width0pt}\\ \hline -\text{\vrule height12pt depth0pt width0pt} - 0 & 1.0000000000000000000 & 0.7071067811865475243 & 1.5707963267948965579 \\ - 1 & 0.8535533905932737621 & 0.8408964152537145430 & 1.\underline{8}403023690212201581 \\ - 2 & 0.8472249029234941526 & 0.8472012667468914603 & 1.\underline{8540}488143993356315 \\ - 3 & 0.8472130848351928064 & 0.8472130847527653666 & 1.\underline{854074677}2111781089 \\ - 4 & 0.8472130847939790865 & 0.8472130847939790865 & 1.\underline{854074677301371}8463 \\ -\infty& & & 1.8540746773013719184  +\text{\vrule height12pt depth0pt width0pt}% +0 & 1.0000000000000000000 & 0.7071067811865475243 & 1.5707963267948965579 \\ +1 & 0.8535533905932737621 & 0.8408964152537145430 & 1.\underline{8}403023690212201581 \\ +2 & 0.8472249029234941526 & 0.8472012667468914603 & 1.\underline{8540}488143993356315 \\ +3 & 0.8472130848351928064 & 0.8472130847527653666 & 1.\underline{854074677}2111781089 \\ +4 & 0.8472130847939790865 & 0.8472130847939790865 & 1.\underline{854074677301371}8463 \\ +\infty& & & 1.8540746773013719184% \text{\vrule height12pt depth6pt width0pt}\\ \hline \end{tabular} -- cgit v1.2.1 From 05d75b0f467b2535db538ecaee461cf0c8b637d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 27 Jun 2022 20:17:16 +0200 Subject: add stuff for elliptic filters --- buch/chapters/110-elliptisch/Makefile.inc | 3 + buch/chapters/110-elliptisch/agm/Makefile | 5 + buch/chapters/110-elliptisch/agm/agm.cpp | 37 ++++- buch/chapters/110-elliptisch/agm/agm.maxima | 26 +++ buch/chapters/110-elliptisch/agm/sn.cpp | 52 ++++++ buch/chapters/110-elliptisch/chapter.tex | 7 +- buch/chapters/110-elliptisch/dglsol.tex | 89 +++++++++++ buch/chapters/110-elliptisch/ellintegral.tex | 141 +++++++++++++++- buch/chapters/110-elliptisch/elltrigo.tex | 2 +- buch/chapters/110-elliptisch/experiments/KK.pdf | Bin 0 -> 23248 bytes buch/chapters/110-elliptisch/experiments/KK.tex | 66 ++++++++ buch/chapters/110-elliptisch/experiments/KN.cpp | 177 +++++++++++++++++++++ buch/chapters/110-elliptisch/experiments/Makefile | 15 ++ .../chapters/110-elliptisch/experiments/agm.maxima | 26 --- buch/chapters/110-elliptisch/uebungsaufgaben/2.tex | 61 +++++++ buch/chapters/110-elliptisch/uebungsaufgaben/3.tex | 135 ++++++++++++++++ .../110-elliptisch/uebungsaufgaben/landen.m | 60 +++++++ buch/chapters/references.bib | 9 ++ buch/papers/dreieck/teil0.tex | 2 +- 19 files changed, 878 insertions(+), 35 deletions(-) create mode 100644 buch/chapters/110-elliptisch/agm/agm.maxima create mode 100644 buch/chapters/110-elliptisch/agm/sn.cpp create mode 100644 buch/chapters/110-elliptisch/experiments/KK.pdf create mode 100644 buch/chapters/110-elliptisch/experiments/KK.tex create mode 100644 buch/chapters/110-elliptisch/experiments/KN.cpp create mode 100644 buch/chapters/110-elliptisch/experiments/Makefile delete mode 100644 buch/chapters/110-elliptisch/experiments/agm.maxima create mode 100644 buch/chapters/110-elliptisch/uebungsaufgaben/2.tex create mode 100644 buch/chapters/110-elliptisch/uebungsaufgaben/3.tex create mode 100644 buch/chapters/110-elliptisch/uebungsaufgaben/landen.m diff --git a/buch/chapters/110-elliptisch/Makefile.inc b/buch/chapters/110-elliptisch/Makefile.inc index 639cb8f..ef6ea51 100644 --- a/buch/chapters/110-elliptisch/Makefile.inc +++ b/buch/chapters/110-elliptisch/Makefile.inc @@ -12,4 +12,7 @@ CHAPTERFILES += \ chapters/110-elliptisch/mathpendel.tex \ chapters/110-elliptisch/lemniskate.tex \ chapters/110-elliptisch/uebungsaufgaben/1.tex \ + chapters/110-elliptisch/uebungsaufgaben/2.tex \ + chapters/110-elliptisch/uebungsaufgaben/3.tex \ + chapters/110-elliptisch/uebungsaufgaben/4.tex \ chapters/110-elliptisch/chapter.tex diff --git a/buch/chapters/110-elliptisch/agm/Makefile b/buch/chapters/110-elliptisch/agm/Makefile index e7975e1..8dab511 100644 --- a/buch/chapters/110-elliptisch/agm/Makefile +++ b/buch/chapters/110-elliptisch/agm/Makefile @@ -3,6 +3,11 @@ # # (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule # +all: sn + +sn: sn.cpp + g++ -O -Wall -g -std=c++11 sn.cpp -o sn `pkg-config --cflags gsl` `pkg-config --libs gsl` + agm: agm.cpp g++ -O -Wall -g -std=c++11 agm.cpp -o agm `pkg-config --cflags gsl` `pkg-config --libs gsl` diff --git a/buch/chapters/110-elliptisch/agm/agm.cpp b/buch/chapters/110-elliptisch/agm/agm.cpp index fdb0441..8abb4b2 100644 --- a/buch/chapters/110-elliptisch/agm/agm.cpp +++ b/buch/chapters/110-elliptisch/agm/agm.cpp @@ -9,23 +9,54 @@ #include #include +inline long double sqrl(long double x) { + return x * x; +} +long double Xn(long double a, long double b, long double x) { + double long epsilon = fabsl(a - b); + if (epsilon > 0.001) { + return (a - sqrtl(sqrl(a) - sqrl(x) * (a + b) * (a - b))) + / (x * (a - b)); + } + long double d = a + b; + long double x1 = 0; + long double y2 = sqrl(x/a); + long double c = 1; + long double s = 0; + int k = 1; + while (c > 0.0000000000001) { + c *= (0.5 - (k - 1)) / k; + c *= (d - epsilon) * y2; + s += c; + c *= epsilon; + c = -c; + k++; + } + return s * a / x; +} int main(int argc, char *argv[]) { long double a = 1; long double b = sqrtl(2.)/2; + long double x = 0.7; if (argc >= 3) { a = std::stod(argv[1]); b = std::stod(argv[2]); } + if (argc >= 4) { + x = std::stod(argv[3]); + } { long double an = a; long double bn = b; + long double xn = x; for (int i = 0; i < 10; i++) { - printf("%d %24.18Lf %24.18Lf %24.18Lf\n", - i, an, bn, a * M_PI / (2 * an)); + printf("%d %24.18Lf %24.18Lf %24.18Lf %24.18Lf\n", + i, an, bn, xn, a * asin(xn) / an); long double A = (an + bn) / 2; + xn = Xn(an, bn, xn); bn = sqrtl(an * bn); an = A; } @@ -36,6 +67,8 @@ int main(int argc, char *argv[]) { k = sqrt(1 - k*k); double K = gsl_sf_ellint_Kcomp(k, GSL_PREC_DOUBLE); printf(" %24.18f %24.18f\n", k, K); + double F = gsl_sf_ellint_F(asinl(x), k, GSL_PREC_DOUBLE); + printf(" %24.18f %24.18f\n", k, F); } return EXIT_SUCCESS; diff --git a/buch/chapters/110-elliptisch/agm/agm.maxima b/buch/chapters/110-elliptisch/agm/agm.maxima new file mode 100644 index 0000000..c7facd4 --- /dev/null +++ b/buch/chapters/110-elliptisch/agm/agm.maxima @@ -0,0 +1,26 @@ +/* + * agm.maxima + * + * (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule + */ + +S: 2*a*sin(theta1) / (a+b+(a-b)*sin(theta1)^2); + +C2: ratsimp(diff(S, theta1)^2 / (1 - S^2)); +C2: ratsimp(subst(sqrt(1-sin(theta1)^2), cos(theta1), C2)); +C2: ratsimp(subst(S, sin(theta), C2)); +C2: ratsimp(subst(sqrt(1-S^2), cos(theta), C2)); + +D2: (a^2 * cos(theta)^2 + b^2 * sin(theta)^2) + / + (a1^2 * cos(theta1)^2 + b1^2 * sin(theta1)^2); +D2: subst((a+b)/2, a1, D2); +D2: subst(sqrt(a*b), b1, D2); +D2: ratsimp(subst(1-S^2, cos(theta)^2, D2)); +D2: ratsimp(subst(S, sin(theta), D2)); +D2: ratsimp(subst(1-sin(theta1)^2, cos(theta1)^2, D2)); + +Q: D2/C2; +Q: ratsimp(subst(x, sin(theta1), Q)); + +Q: ratsimp(expand(ratsimp(Q))); diff --git a/buch/chapters/110-elliptisch/agm/sn.cpp b/buch/chapters/110-elliptisch/agm/sn.cpp new file mode 100644 index 0000000..ff2ed17 --- /dev/null +++ b/buch/chapters/110-elliptisch/agm/sn.cpp @@ -0,0 +1,52 @@ +/* + * ns.cpp + * + * (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule + */ +#include +#include +#include +#include +#include +#include + +static const int N = 10; + +inline long double sqrl(long double x) { + return x * x; +} + +int main(int argc, char *argv[]) { + long double u = 0.6; + long double k = 0.9; + long double kprime = sqrt(1 - sqrl(k)); + + long double a[N], b[N], x[N+1]; + a[0] = 1; + b[0] = kprime; + + for (int n = 0; n < N-1; n++) { + printf("a[%d] = %22.18Lf b[%d] = %22.18Lf\n", n, a[n], n, b[n]); + a[n+1] = (a[n] + b[n]) / 2; + b[n+1] = sqrtl(a[n] * b[n]); + } + + x[N] = sinl(u * a[N-1]); + printf("x[%d] = %22.18Lf\n", N, x[N]); + + for (int n = N - 1; n >= 0; n--) { + x[n] = 2 * a[n] * x[n+1] / (a[n] + b[n] + (a[n] - b[n]) * sqrl(x[n+1])); + printf("x[%2d] = %22.18Lf\n", n, x[n]); + } + + printf("sn(%7.4Lf, %7.4Lf) = %20.24Lf\n", u, k, x[0]); + + double sn, cn, dn; + double m = sqrl(k); + gsl_sf_elljac_e((double)u, m, &sn, &cn, &dn); + printf("sn(%7.4Lf, %7.4Lf) = %20.24f\n", u, k, sn); + printf("cn(%7.4Lf, %7.4Lf) = %20.24f\n", u, k, cn); + printf("dn(%7.4Lf, %7.4Lf) = %20.24f\n", u, k, dn); + + return EXIT_SUCCESS; +} diff --git a/buch/chapters/110-elliptisch/chapter.tex b/buch/chapters/110-elliptisch/chapter.tex index e05f3bd..d65570b 100644 --- a/buch/chapters/110-elliptisch/chapter.tex +++ b/buch/chapters/110-elliptisch/chapter.tex @@ -35,11 +35,14 @@ wieder hergestellt. \input{chapters/110-elliptisch/lemniskate.tex} -\section*{Übungsaufgabe} -\rhead{Übungsaufgabe} +\section*{Übungsaufgaben} +\rhead{Übungsaufgaben} \aufgabetoplevel{chapters/110-elliptisch/uebungsaufgaben} \begin{uebungsaufgaben} %\uebungsaufgabe{0} \uebungsaufgabe{1} +\uebungsaufgabe{2} +\uebungsaufgabe{3} +\uebungsaufgabe{4} \end{uebungsaufgaben} diff --git a/buch/chapters/110-elliptisch/dglsol.tex b/buch/chapters/110-elliptisch/dglsol.tex index 3303aee..3709300 100644 --- a/buch/chapters/110-elliptisch/dglsol.tex +++ b/buch/chapters/110-elliptisch/dglsol.tex @@ -340,7 +340,96 @@ Die Jacobischen elliptischen Funktionen sind daher inverse Funktionen der unvollständigen elliptischen Integrale. % +% Numerische Berechnung mit dem arithmetisch-geometrischen Mittel % +\subsubsection{Numerische Berechnung mit dem arithmetisch-geometrischen Mittel} +\begin{table} +\centering +\begin{tikzpicture}[>=latex,thick] + +\begin{scope}[xshift=-2.4cm,yshift=1.2cm] +\fill[color=red!20] + (-1.0,0) -- (-1.0,-2.1) -- (-1.8,-2.1) -- (0,-3.0) + -- (1.8,-2.1) -- (1.0,-2.1) -- (1.0,0) -- cycle; +\node[color=white] at (0,-1.2) [scale=7] {\sf 1}; +\end{scope} + +\begin{scope}[xshift=2.9cm,yshift=-1.8cm] +\fill[color=blue!20] + (0.8,0) -- (0.8,2.1) -- (1.4,2.1) -- (0,3.0) -- (-1.4,2.1) + -- (-0.8,2.1) -- (-0.8,0) -- cycle; +\node[color=white] at (0,1.2) [scale=7] {\sf 2}; +\end{scope} + +\node at (0,0) { +\begin{tabular}{|>{$}c<{$}|>{$}c<{$}>{$}c<{$}|>{$}c<{$}>{$}l<{$}|} +\hline +n & a_n & b_n & x_n & +\mathstrut\text{\vrule height12pt depth6pt width0pt}\\ +\hline +0 & 1.0000000000000000 & 0.4358898943540673 & 0.5422823228691580 & = \operatorname{sn}(u,k)% +\mathstrut\text{\vrule height12pt depth0pt width0pt}\\ +1 & 0.7179449471770336 & 0.6602195804079634 & 0.4157689781689663 & \mathstrut\\ +2 & 0.6890822637924985 & 0.6884775317911533 & 0.4017521410983242 & \mathstrut\\ +3 & 0.6887798977918259 & 0.6887798314243237 & 0.4016042867931862 & \mathstrut\\ +4 & 0.6887798646080748 & 0.6887798646080740 & 0.4016042705654757 & \mathstrut\\ +5 & 0.6887798646080744 & 0.6887798646080744 & 0.4016042705654755 & \mathstrut\\ +6 & & & 0.4016042705654755 & = \sin(a_5u) +\mathstrut\text{\vrule height0pt depth6pt width0pt}\\ +\hline +\end{tabular} +}; +\end{tikzpicture} +\caption{Berechnung von $\operatorname{sn}(u,k)$ für $u=0.6$ und $k=0.$2 +mit Hilfe des arithmetisch-geo\-me\-tri\-schen Mittels. +In der ersten Phase des Algorithmus (rot) wird die Folge der arithmetischen +und geometrischen Mittel berechnet, in der zweiten Phase werden die +Approximationen von $x_0=\operatorname{sn}(u,k)$. +Bei $n=5$ erreicht die Iteration des arithmetisch-geometrischen Mittels +Maschinengenauigkeit, was sich auch darin äussert, dass sich $x_5$ und +$x_6=\sin(a_5u)$ nicht unterscheiden. +\label{buch:elliptisch:agm:table:snberechnung}} +\end{table} +In Abschnitt~\ref{buch:elliptisch:subsection:agm} auf +Seite~\pageref{buch:elliptisch:subsubection:berechnung-fxk-agm} +wurde erklärt, wie das unvollständige elliptische Integral $F(x,k)$ mit +Hilfe des arithmetisch-geometrischen Mittels berechnet werden kann. +Da $\operatorname{sn}^{-1}(x,k) = F(x,k)$ die Umkehrfunktion ist, kann +man den Algorithmus auch zur Berechnung von $\operatorname{sn}(u,k)$ +verwenden. +Dazu geht man wie folgt vor: +\begin{enumerate} +\item +$k'=\sqrt{1-k^2}$. +\item +Berechne die Folgen des arithmetisch-geometrischen Mittels +$a_n$ und $b_n$ mit $a_0=1$ und $b_0=k'$, bis zum Folgenindex $N$, +bei dem ausreichende Konvergenz eintegreten ist. +\item +Setze $x_N = \sin(a_N \cdot u)$. +\item +Berechnet für absteigende $n=N-1,N-2,\dots$ die Folge $x_n$ mit Hilfe +der Rekursionsformel +\begin{equation} +x_{n} += +\frac{2a_nx_{n+1}}{a_n+b_n+(a_n-b_n)x_{n+1}^2}, +\label{buch:elliptisch:agm:xnrek} +\end{equation} +die aus \eqref{buch:elliptisch:agm:subst} +durch die Substitution $x_n = \sin t_n$ entsteht. +\item +Setze $\operatorname{sn}(u,k) = x_0$. +\end{enumerate} +Da die Formel \eqref{buch:elliptisch:agm:xnrek} nicht unter den +numerischen Stabilitätsproblemen leidet, die früher auf +Seite~\pageref{buch:elliptisch:agm:ellintegral-stabilitaet} +diskutiert wurden, ist die Berechnung stabil und sehr schnell. +Tabelle~\ref{buch:elliptisch:agm:table:snberechnung} +zeigt die Berechnung am Beispiel $u=0.6$ und $k=0.2$. + +% +% Pole und Nullstellen der Jacobischen elliptischen Funktionen % \subsubsection{Pole und Nullstellen der Jacobischen elliptischen Funktionen} \begin{figure} diff --git a/buch/chapters/110-elliptisch/ellintegral.tex b/buch/chapters/110-elliptisch/ellintegral.tex index 4589ffa..cc99218 100644 --- a/buch/chapters/110-elliptisch/ellintegral.tex +++ b/buch/chapters/110-elliptisch/ellintegral.tex @@ -459,7 +459,8 @@ Parameter $k$ mit der Ableitungsformel für die Funktion $\mathstrut_2F_1$. % % Berechnung mit dem arithmetisch-geometrischen Mittel % -\subsection{Berechnung mit dem arithmetisch-geometrischen Mittel} +\subsection{Berechnung mit dem arithmetisch-geometrischen Mittel +\label{buch:elliptisch:subsection:agm}} Die numerische Berechnung von elliptischer Integrale mit gewöhnlichen numerischen Integrationsroutinen ist nicht sehr effizient. Das in diesem Abschnitt vorgestellte arithmetisch-geometrische Mittel @@ -472,7 +473,11 @@ Sie ist ein Speziallfall der sogenannten Landen-Transformation, \index{Landen-Transformation}% welche ausser für die elliptischen Integrale auch für die Jacobischen elliptischen Funktionen formuliert werden kann und -für letztere ebenfalls sehr schnelle numerische Algorithmen liefert. +für letztere ebenfalls sehr schnelle numerische Algorithmen liefert +(siehe dazu auch die +Aufgaben~\ref{buch:elliptisch:aufgabe:2}--\ref{buch:elliptisch:aufgabe:4}). +Sie kann auch verwendet werden, um die Werte der Jacobischen elliptischen +Funktionen für komplexe Argument zu berechnen. % % Das arithmetisch-geometrische Mittel @@ -574,7 +579,7 @@ Gauss hat gefunden, dass die Substitution \begin{equation} \sin t = -\frac{2a\sin t_1}{a+b+(a-b)\sin t_1} +\frac{2a\sin t_1}{a+b+(a-b)\sin^2 t_1} \label{buch:elliptisch:agm:subst} \end{equation} zu @@ -1103,6 +1108,136 @@ F(x,k) = iK(k') - F\biggl(\frac1{kx},k\biggr) für die Werte des elliptischen Integrals erster Art für grosse Argumentwerte fest. +% +% AGM und Berechnung von F(x,k) +% +\subsubsection{Berechnung von $F(x,k)$ mit dem arithmetisch-geometrischen Mittel\label{buch:elliptisch:subsubection:berechnung-fxk-agm}} +Wie das vollständige elliptische Integral $K(k)$ kann auch das +unvollständige elliptische Integral +\begin{align*} +F(x,k) +&= +\int_0^x \frac{d\xi}{\sqrt{(1-\xi^2)(1-k^{\prime 2}\xi^2)}} += +\int_0^{\varphi} +\frac{dt}{\sqrt{1-k^2 \sin^2 t}} +\\ +&= +a +\int_0^{\varphi} \frac{dt}{a^2 \cos^2 t + b^2 \sin^2 t} +\qquad\text{mit $k=b/a$} +\end{align*} +mit dem arithmetisch-geometrischen Mittel berechnet werden. +Dazu muss die Substitution +\eqref{buch:elliptisch:agm:subst} +verwendet werden, um auch den Winkel $\varphi_1$ zu berechnen. +Dazu muss \eqref{buch:elliptisch:agm:subst} nach $x_1=\sin t_1$ +aufgelöst werden. +Durch Multiplikation mit dem Nenner erhält man mit der Abkürzung +$x=\sin t$ und $x_1=\sin t_1$ die quadratische Gleichung +\[ +(a-b)x x_1 +- +2ax_1 +(a+b)x += +0, +\] +mit der Lösung +\begin{equation} +x_1 += +\frac{a-\sqrt{a^2-(a^2-b^2)x^2}}{(a-b)x}. +\label{buch:elliptisch:unvollstagm:xrek} +\end{equation} +Der Algorithmus zur Berechnung des arithmetisch-geometrischen Mittels +muss daher verallgemeinert werden zu +\begin{equation} +\left. +\begin{aligned} +a_{n+1} &= \frac{a_n+b_n}2, &\qquad a_0 &= a +\\ +b_{n+1} &= \sqrt{a_nb_n}, & b_0 &= b +\\ +x_{n+1} &= \frac{a_n-\sqrt{a_n^2-(a_n^2-b_n^2)x_n^2}}{(a_n-b_n)x_n}, & x_0 &= x +\end{aligned} +\quad +\right\} +\label{buch:elliptisch:unvollstagm:rek} +\end{equation} +Die Folge $x_n$ konvergiert gegen einen Wert $x_{\infty} = \lim_{n\to\infty} x_n$. +Der Wert des unvollständigen elliptischen Integrals ist dann der Grenzwert +\[ +F(x,k) += +\lim_{n\to\infty} +\frac{\arcsin x_n}{M(a_n,b_n)} += +\frac{\arcsin x_{\infty}}{M(1,\sqrt{1-k^2})}. +\] + +In dieser Form ist die Berechnung allerdings nicht praktisch durchführbar. +Das Problem ist, dass die Differenz $a_n-b_n$, die in +\eqref{buch:elliptisch:unvollstagm:rek} +im Nenner vorkommt, sehr schnell gegen Null geht. +Ausserdem ist die Quadratwurzel im Zähler fast gleich gross wie +$a_n$, was zu Auslöschung und damit ungenauen Resultaten führt. +\label{buch:elliptisch:agm:ellintegral-stabilitaet} + +Eine Möglichkeit, das Problem zu entschärfen, ist, die Rekursionsformel +nach $\varepsilon = a-b$ zu entwickeln. +Mit $a+b=2a+\varepsilon$ kann man $b$ aus der Formel elimineren und erhält +mit Hilfe der binomischen Reihe +\begin{align*} +x_1 +&= +\frac{a}{x\varepsilon} +\left(1-\sqrt{1-\varepsilon(2a-\varepsilon)x^2/a^2}\right) +\\ +&= +\frac{a}{x\varepsilon} +\biggl( +1-\sum_{k=0}^\infty +(-1)^k +\frac{(\frac12)_k}{k!} \varepsilon^k(2a-\varepsilon)^k\frac{x^{2k}}{a^{2k}} +\biggr) +\\ +&= +\sum_{k=1}^\infty +(-1)^{k-1} +\frac{(\frac12)_k}{k!} \varepsilon^{k-1}(2a-\varepsilon)^k\frac{x^{2k-1}}{a^{2k-1}} +\\ +&= +\frac{\frac12}{1!}(2a-\varepsilon)\frac{x}{a} +- +\frac{\frac12\cdot(\frac12-1)}{2!}\varepsilon(2a-\varepsilon)^2\frac{x^3}{a^3} ++ +\frac{\frac12\cdot(\frac12-1)(\frac12-2)}{3!}\varepsilon^2(2a-\varepsilon)^3\frac{x^5}{a^5} +- +\dots +\\ +&= +x\biggl(1-\frac{\varepsilon}{2a}\biggr) +\biggl( +1 +- +\frac{\frac12-1}{2!}\varepsilon(2a-\varepsilon)\frac{x^2}{a^2} ++ +\frac{(\frac12-1)(\frac12-2)}{3!}\varepsilon^2(2a-\varepsilon)^2\frac{x^4}{a^4} +- +\dots +\biggr) +\\ +&= +x\biggl(1-\frac{\varepsilon}{2a}\biggr) +\cdot +\mathstrut_2F_1\biggl( +\begin{matrix}-\frac12,1\\2\end{matrix};-\varepsilon(2a-\varepsilon)\frac{x^2}{a^2} +\biggr). +\end{align*} +Diese Form ist wesentlich besser, aber leider kann es bei der numerischen +Rechnung passieren, dass $\varepsilon < 0$ wird. + %\subsection{Potenzreihe} %XXX Potenzreihen \\ %XXX Als hypergeometrische Funktionen \url{https://www.youtube.com/watch?v=j0t1yWrvKmE} \\ diff --git a/buch/chapters/110-elliptisch/elltrigo.tex b/buch/chapters/110-elliptisch/elltrigo.tex index 583e00a..c67870f 100644 --- a/buch/chapters/110-elliptisch/elltrigo.tex +++ b/buch/chapters/110-elliptisch/elltrigo.tex @@ -169,7 +169,7 @@ x^2(k^2-1) + y^2 = 1. an einer Ellipse mit Halbachsen $a$ und $1$. \label{buch:elliptisch:fig:jacobidef}} \end{figure} -\subsubsection{Definition der elliptischen Funktionen} +\subsubsection{Definition der Jacobischen elliptischen Funktionen} Die elliptischen Funktionen für einen Punkt $P$ auf der Ellipse mit Modulus $k$ können jetzt als Verhältnisse der Koordinaten des Punktes definieren. Es stellt sich aber die Frage, was man als Argument verwenden soll. diff --git a/buch/chapters/110-elliptisch/experiments/KK.pdf b/buch/chapters/110-elliptisch/experiments/KK.pdf new file mode 100644 index 0000000..13a2739 Binary files /dev/null and b/buch/chapters/110-elliptisch/experiments/KK.pdf differ diff --git a/buch/chapters/110-elliptisch/experiments/KK.tex b/buch/chapters/110-elliptisch/experiments/KK.tex new file mode 100644 index 0000000..a3ae425 --- /dev/null +++ b/buch/chapters/110-elliptisch/experiments/KK.tex @@ -0,0 +1,66 @@ +% +% KK.tex -- template for standalon tikz images +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{amsmath} +\usepackage{times} +\usepackage{txfonts} +\usepackage{pgfplots} +\usepackage{csvsimple} +\usetikzlibrary{arrows,intersections,math} +\begin{document} +\def\skala{1} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +\def\dx{10} +\def\dy{3} +\input{KKpath.tex} + +\draw[->] (-0.1,0) -- (10.3,0) coordinate[label={$k$}]; +\draw[->] (0,-0.1) -- (0,{2*\dy+0.3}) coordinate[label={right:$y$}]; + +\node at (3,{1.2*\dy}) {$\displaystyle y = \frac{K(k)}{K(\!\sqrt{1-k^2})}$}; + +\begin{scope} +\clip (0,0) rectangle (10,{2*\dy}); +\draw[color=red,line width=1.4pt] \KKpath; +\end{scope} + +\draw[line width=0.2pt] (10,0) -- (10,{2*\dy}); + +\foreach \y in {0.0,0.2,0.4,0.6,0.8,1.0,1.2,1.4,1.6,1.8,2.0}{ + \draw (-0.05,{\y*\dy}) -- (0.05,{\y*\dy}); + \node at (0,{\y*\dy}) [left] {$\y\mathstrut$}; +} + +\foreach \k in {1,...,9}{ + \draw ({\k*\dx/10},-0.05) -- ({\k*\dx/10},0.05); + \node at ({\k*\dx/10},0) [below] {$0.\k\mathstrut$}; +} +\node at (0,0) [below] {$0\mathstrut$}; +\node at (10,0) [below] {$1\mathstrut$}; + +\draw[color=blue] ({\knull*\dx},0) -- ({\knull*\dx},{\KKnull*\dy}); +\foreach \y in {1,2,3,4}{ + \draw[color=blue] + ({\knull*\dx-0.05},{\y*\KKnull*\dy/5}) + -- + ({\knull*\dx+0.05},{\y*\KKnull*\dy/5}); +} +\draw[color=black,line width=0.1pt] (0,{\KKnull*\dy}) -- ({\knull*\dx},{\KKnull*\dy}); +\draw[color=black,line width=0.1pt] (0,{\KKnull*\dy/5}) -- ({\kone*\dx},{\KKnull*\dy/5}); +\node at ({0.6*\dx},{\KKnull*\dy}) [above] {$y=1.7732$}; +\node at ({0.6*\dx},{\KKnull*\dy/5}) [above] {$y=0.3546$}; +\draw[color=blue] ({\kone*\dx},0) -- ({\kone*\dx},{\KKnull*\dy/5}); +\draw[color=blue] ({\kone*\dx},{\KKnull*\dy/5}) -- ({\knull*\dx},{\KKnull*\dy/5}); +\fill[color=blue] ({\kone*\dx},{\KKnull*\dy/5}) circle[radius=0.05]; +\fill[color=blue] ({\knull*\dx},{\KKnull*\dy/5}) circle[radius=0.05]; +\fill[color=blue] ({\knull*\dx},{\KKnull*\dy}) circle[radius=0.05]; +\node[color=blue] at ({\knull*\dx},0) [left,rotate=90] {$k=0.97\mathstrut$}; +\node[color=blue] at ({\kone*\dx},0) [left,rotate=90] {$k_1=0.0477$}; + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/110-elliptisch/experiments/KN.cpp b/buch/chapters/110-elliptisch/experiments/KN.cpp new file mode 100644 index 0000000..1dcca9e --- /dev/null +++ b/buch/chapters/110-elliptisch/experiments/KN.cpp @@ -0,0 +1,177 @@ +/* + * KN.cpp + * + * (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule + */ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +namespace KN { + +bool debug = false; + +static struct option longopts[] { +{ "debug", no_argument, NULL, 'd' }, +{ "N", required_argument, NULL, 'N' }, +{ "outfile", required_argument, NULL, 'o' }, +{ "min", required_argument, NULL, 'm' }, +{ NULL, 0, NULL, 0 } +}; + +double KprimeK(double k) { + double kprime = sqrt(1-k*k); + if (debug) + printf("%s:%d: k = %f, k' = %f\n", __FILE__, __LINE__, k, kprime); + double v + = + gsl_sf_ellint_Kcomp(k, GSL_PREC_DOUBLE) + / + gsl_sf_ellint_Kcomp(kprime, GSL_PREC_DOUBLE) + ; + if (debug) + printf("%s:%d: KprimeK(k = %f) = %f\n", __FILE__, __LINE__, k, v); + return v; +} + +static const int L = 100000000; +static const double h = 1. / L; + +double Kd(double k) { + double m = 0; + if (k < h) { + m = 2 * (KprimeK(k) - KprimeK(k / 2)) / k; + } else if (k > 1-h) { + m = 2 * (KprimeK((1 + k) / 2) - KprimeK(k)) / (1 - k); + + } else { + m = L * (KprimeK(k + h) - KprimeK(k)); + } + if (debug) + printf("%s:%d: Kd(%f) = %f\n", __FILE__, __LINE__, k, m); + return m; +} + +double k1(double y) { + if (debug) + printf("%s:%d: Newton for y = %f\n", __FILE__, __LINE__, y); + double kn = 0.5; + double delta = 1; + int n = 0; + while ((fabs(delta) > 0.000001) && (n < 10)) { + double yn = KprimeK(kn); + if (debug) + printf("%s:%d: k%d = %f, y%d = %f\n", __FILE__, __LINE__, n, kn, n, yn); + delta = (yn - y) / Kd(kn); + if (debug) + printf("%s:%d: delta = %f\n", __FILE__, __LINE__, delta); + double kneu = kn - delta; + if (kneu <= 0) { + kneu = kn / 4; + } + if (kneu >= 1) { + kneu = (3 + kn) / 4; + } + kn = kneu; + if (debug) + printf("%s:%d: kneu = %f, kn = %f\n", __FILE__, __LINE__, kneu, kn); + n++; + } + if (debug) + printf("%s:%d: Newton result: k = %f\n", __FILE__, __LINE__, kn); + return kn; +} + +double k1(int N, double k) { + return k1(KprimeK(k) / N); +} + +/** + * \brief Main function for the slcl program + */ +int main(int argc, char *argv[]) { + int longindex; + int c; + int N = 5; + double kmin = 0.01; + std::string outfilename; + while (EOF != (c = getopt_long(argc, argv, "d:N:o:m:", + longopts, &longindex))) + switch (c) { + case 'd': + debug = true; + break; + case 'N': + N = std::stoi(optarg); + break; + case 'o': + outfilename = std::string(optarg); + break; + case 'm': + kmin = std::stod(optarg); + break; + } + + double d = 0.01; + if (outfilename.size() > 0) { + FILE *fn = fopen(outfilename.c_str(), "w"); + fprintf(fn, "\\def\\KKpath{ "); + double k = d; + fprintf(fn, " (0,0)"); + double k0 = k/16; + while (k0 < k) { + fprintf(fn, "\n\t-- ({%.4f*\\dx},{%.4f*\\dy})", k0, KprimeK(k0)); + k0 *= 2; + } + while (k < 1-0.5*d) { + fprintf(fn, "\n\t-- ({%.4f*\\dx},{%.4f*\\dy})", k, KprimeK(k)); + k += d; + } + fprintf(fn, "}\n"); + + k0 = 0.97; + fprintf(fn, "\\def\\knull{%.4f}\n", k0); + double KK = KprimeK(k0); + fprintf(fn, "\\def\\KKnull{%.4f}\n", KK); + fprintf(fn, "\\def\\kone{%.4f}\n", k1(N, k0)); + + fclose(fn); + return EXIT_SUCCESS; + } + + for (double k = kmin; k < (1 - d/2); k += d) { + if (debug) + printf("%s:%d: k = %f\n", __FILE__, __LINE__, k); + double y = KprimeK(k); + double k0 = k1(y); + double kone = k1(N, k0); + printf("g(%4.2f) = %10.6f,", k, y); + printf(" g'(%.2f) = %10.6f,", k, Kd(k)); + printf(" g^{-1} = %10.6f,", k0); + printf(" k1 = %10.6f,", kone); + printf(" g(k1) = %10.6f\n", KprimeK(kone)); + } + + return EXIT_SUCCESS; +} + +} // namespace KN + +int main(int argc, char *argv[]) { + try { + return KN::main(argc, argv); + } catch (const std::exception& e) { + std::cerr << "terminated by exception: " << e.what(); + std::cerr << std::endl; + } catch (...) { + std::cerr << "terminated by unknown exception" << std::endl; + } + return EXIT_FAILURE; +} diff --git a/buch/chapters/110-elliptisch/experiments/Makefile b/buch/chapters/110-elliptisch/experiments/Makefile new file mode 100644 index 0000000..fac4fbc --- /dev/null +++ b/buch/chapters/110-elliptisch/experiments/Makefile @@ -0,0 +1,15 @@ +# +# Makefile +# +# (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschlue +# +all: KK.pdf + +KN: KN.cpp + g++ -O -Wall -std=c++11 KN.cpp -o KN `pkg-config --cflags gsl` `pkg-config --libs gsl` + +KKpath.tex: KN + ./KN --outfile KKpath.tex + +KK.pdf: KK.tex KKpath.tex + pdflatex KK.tex diff --git a/buch/chapters/110-elliptisch/experiments/agm.maxima b/buch/chapters/110-elliptisch/experiments/agm.maxima deleted file mode 100644 index c7facd4..0000000 --- a/buch/chapters/110-elliptisch/experiments/agm.maxima +++ /dev/null @@ -1,26 +0,0 @@ -/* - * agm.maxima - * - * (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule - */ - -S: 2*a*sin(theta1) / (a+b+(a-b)*sin(theta1)^2); - -C2: ratsimp(diff(S, theta1)^2 / (1 - S^2)); -C2: ratsimp(subst(sqrt(1-sin(theta1)^2), cos(theta1), C2)); -C2: ratsimp(subst(S, sin(theta), C2)); -C2: ratsimp(subst(sqrt(1-S^2), cos(theta), C2)); - -D2: (a^2 * cos(theta)^2 + b^2 * sin(theta)^2) - / - (a1^2 * cos(theta1)^2 + b1^2 * sin(theta1)^2); -D2: subst((a+b)/2, a1, D2); -D2: subst(sqrt(a*b), b1, D2); -D2: ratsimp(subst(1-S^2, cos(theta)^2, D2)); -D2: ratsimp(subst(S, sin(theta), D2)); -D2: ratsimp(subst(1-sin(theta1)^2, cos(theta1)^2, D2)); - -Q: D2/C2; -Q: ratsimp(subst(x, sin(theta1), Q)); - -Q: ratsimp(expand(ratsimp(Q))); diff --git a/buch/chapters/110-elliptisch/uebungsaufgaben/2.tex b/buch/chapters/110-elliptisch/uebungsaufgaben/2.tex new file mode 100644 index 0000000..9a1cafc --- /dev/null +++ b/buch/chapters/110-elliptisch/uebungsaufgaben/2.tex @@ -0,0 +1,61 @@ +\label{buch:elliptisch:aufgabe:2}% +Die Landen-Transformation basiert auf der Iteration +\begin{equation} +\begin{aligned} +k_{n+1} +&= +\frac{1-k_n'}{1+k_n'} +& +&\text{und}& +k_{n+1}' +&= +\sqrt{1-k_{n+1}^2} +\end{aligned} +\label{buch:elliptisch:aufgabe:2:iteration} +\end{equation} +mit den Startwerten $k_0 = k$ und $k_0' = \sqrt{1-k_0^2}$. +Zeigen Sie, dass $k_n\to 0$ und $k_n'\to 1$ mit quadratischer Konvergenz. + +\begin{loesung} +\begin{table} +\centering +\begin{tabular}{|>{$}c<{$}|>{$}c<{$}|>{$}c<{$}|} +\hline +n & k & k' \\ +\hline +0 & 0.200000000000000 & 0.979795897113271 \\ +1 & 0.010205144336438 & 0.999947926158694 \\ +2 & 0.000026037598592 & 0.999999999661022 \\ +3 & 0.000000000169489 & 1.000000000000000 \\ +4 & 0.000000000000000 & 1.000000000000000 \\ +\hline +\end{tabular} +\caption{Numerisches Experiment zur Folge $(k_n,k_n')$ +gemäss \eqref{buch:elliptisch:aufgabe:2:iteration} +mit $k_0=0.2$ +\label{buch:ellptisch:aufgabe:2:numerisch}} +\end{table} +Es ist klar, dass $k'_n\to 1$ folgt, wenn man zeigen kann, dass +$k_n\to 0$ gilt. +Wir berechnen daher +\begin{align*} +k_{n+1} +&= +\frac{1-k_n'}{1+k_n'} += +\frac{1-\sqrt{1-k_n^2}}{1+\sqrt{1-k_n^2}} +\intertext{und erweitern mit dem Nenner $1+\sqrt{1-k_n^2}$ um} +&= +\frac{1-(1-k_n^2)}{(1+\sqrt{1-k_n^2})^2} += +\frac{ k_n^2 }{(1+\sqrt{1-k_n^2})^2} +\le +k_n^2 +\end{align*} +zu erhalten. +Daraus folgt jetzt sofort die quadratische Konvergenz von $k_n$ gegen $0$. + +Ein einfaches numerisches Experiment (siehe +Tabelle~\ref{buch:ellptisch:aufgabe:2:numerisch}) +bestätigt die quadratische Konvergenz der Folgen. +\end{loesung} diff --git a/buch/chapters/110-elliptisch/uebungsaufgaben/3.tex b/buch/chapters/110-elliptisch/uebungsaufgaben/3.tex new file mode 100644 index 0000000..a5d118f --- /dev/null +++ b/buch/chapters/110-elliptisch/uebungsaufgaben/3.tex @@ -0,0 +1,135 @@ +\label{buch:elliptisch:aufgabe:3}% +Aus der in Aufgabe~\ref{buch:elliptisch:aufgabe:2} konstruierten Folge +$k_n$ kann zu einem vorgegebenen $u$ ausserdem die Folge $u_n$ +mit der Rekursionsformel +\[ +u_{n+1} = \frac{u_n}{1+k_{n+1}} +\] +und Anfangswert $u_0=u$ konstruiert werden. +Die Landen-Transformation (siehe \cite[80]{buch:ellfun-applications}) +\index{Landen-Transformation}% +führt auf die folgenden Formeln für die Jacobischen elliptischen Funktionen: +\begin{equation} +\left.\qquad +\begin{aligned} +\operatorname{sn}(u_n,k_n) +&= +\frac{ +(1+k_{n+1})\operatorname{sn}(u_{n+1},k_{n+1}) +}{ +1 + k_{n+1} \operatorname{sn}(u_{n+1},k_{n+1})^2 +} +\\ +\operatorname{cn}(u_n,k_n) +&= +\frac{ +\operatorname{cn}(u_{n+1},k_{n+1}) +\operatorname{dn}(u_{n+1},k_{n+1}) +}{ +1 + k_{n+1} \operatorname{sn}(u_{n+1},k_{n+1})^2 +} +\\ +\operatorname{dn}(u_n,k_n) +&= +\frac{ +1 - k_{n+1} \operatorname{sn}(u_{n+1},k_{n+1})^2 +}{ +1 + k_{n+1} \operatorname{sn}(u_{n+1},k_{n+1})^2 +} +\end{aligned} +\qquad\right\} +\label{buch:elliptisch:aufgabe:3:gauss} +\end{equation} +Die Transformationsformeln +\eqref{buch:elliptisch:aufgabe:3:gauss} +sind auch als Gauss-Transformation bekannt. +\index{Gauss-Transformation}% +Konstruieren Sie daraus einen numerischen Algorithmus, mit dem sich +gleichzeitig die Werte aller drei Jacobischen elliptischen Funktionen +für vorgegebene Parameterwerte $u$ und $k$ berechnen lassen. + +\begin{loesung} +In der ersten Phase des Algorithmus werden die Folgen $k_n$ und $k_n'$ +sowie $u_n$ bis zum Folgenindex $N$ berechnet, bis $k_N\approx 0$ +angenommen werden darf. +Dann gilt +\begin{align*} +\operatorname{sn}(u_N, k_N) &= \operatorname{sn}(u_N,0) = \sin u_N +\\ +\operatorname{cn}(u_N, k_N) &= \operatorname{cn}(u_N,0) = \cos u_N +\\ +\operatorname{dn}(u_N, k_N) &= \operatorname{dn}(u_N,0) = 1. +\end{align*} +In der zweiten Phase des Algorithmus können für absteigende +$n$ jeweils die Formeln~\eqref{buch:elliptisch:aufgabe:3:gauss} +angewendet werden um nacheinander die Werte der Jacobischen +elliptischen Funktionen für Argument $u_n$ und Parameter $k_n$ +für $n=N-1,N-2,\dots,0$ zu bekommen. +\end{loesung} +\begin{table} +\centering +\begin{tikzpicture}[>=latex,thick] +\def\pfeil#1#2{ + \fill[color=#1!30] (-0.5,1) -- (-0.5,-1) -- (-0.8,-1) + -- (0,-1.5) -- (0.8,-1) -- (0.5,-1) -- (0.5,1) -- cycle; + \node[color=white] at (0,-0.2) [scale=5] {\sf #2\strut}; +} +\begin{scope}[xshift=-4.9cm,yshift=0.2cm] +\pfeil{red}{1} +\end{scope} + +\begin{scope}[xshift=-2.3cm,yshift=0.2cm] +\pfeil{red}{1} +\end{scope} + +\begin{scope}[xshift=0.35cm,yshift=-0.3cm,yscale=-1] +\pfeil{blue}{2} +\end{scope} + +\begin{scope}[xshift=2.92cm,yshift=-0.3cm,yscale=-1] +\pfeil{blue}{2} +\end{scope} + +\begin{scope}[xshift=5.60cm,yshift=-0.3cm,yscale=-1] +\pfeil{blue}{2} +\end{scope} + +\node at (0,0) { +\begin{tabular}{|>{$}c<{$}|>{$}c<{$}|>{$}c<{$}|>{$}c<{$}|>{$}c<{$}|>{$}c<{$}|} +\hline +n & k_n & u_n & \operatorname{sn}(u_n,k_n) & \operatorname{cn}(u_n,k_n) & \operatorname{dn}(u_n,k_n)% +\mathstrut\text{\vrule height12pt depth6pt width0pt} \\ +\hline +\mathstrut\text{\vrule height12pt depth0pt width0pt}% +%\small +0 & 0.90000000000 & 0.60000000000 & 0.54228232286 & 0.84019633556 & 0.87281338478 \\ +1 & 0.39286445838 & 0.43076696830 & 0.41576897816 & 0.90947026163 & 0.98656969610 \\ +2 & 0.04188568608 & 0.41344935827 & 0.40175214109 & 0.91574844642 & 0.99985840483 \\ +3 & 0.00043898784 & 0.41326793867 & 0.40160428679 & 0.91581329801 & 0.99999998445 \\ +4 & 0.00000004817 & 0.41326791876 & 0.40160427056 & 0.91581330513 & 1.00000000000 \\ +5 & 0.00000000000 & 0.41326791876 & 0.40160427056 & 0.91581330513 & 1.00000000000 \\ +%N & 0.00000000000 & 0.41326791876 & 0.40160427056 & 0.91581330513 & 1.00000000000% +N & & 0.41326791876 & \sin u_N & \cos u_N & 1% +%0 & 0.900000000000000 & 0.600000000000000 & 0.542282322869158 & 0.840196335569032 & 0.872813384788490 \\ +%1 & 0.392864458385019 & 0.430766968306220 & 0.415768978168966 & 0.909470261631645 & 0.986569696107075 \\ +%2 & 0.041885686080039 & 0.413449358275499 & 0.401752141098324 & 0.915748446421239 & 0.999858404836479 \\ +%3 & 0.000438987841605 & 0.413267938675096 & 0.401604286793186 & 0.915813298019491 & 0.999999984459261 \\ +%4 & 0.000000048177586 & 0.413267918764845 & 0.401604270565476 & 0.915813305135699 & 1.000000000000000 \\ +%5 & 0.000000000000001 & 0.413267918764845 & 0.401604270565476 & 0.915813305135699 & 1.000000000000000 \\ +%N & 0.000000000000000 & 0.413267918764845 & 0.401604270565476 & 0.915813305135699 & 1.000000000000000 \\ +\mathstrut\text{\vrule height12pt depth6pt width0pt} \\ +\hline +\end{tabular} +}; +\end{tikzpicture} +\caption{Durchführung des auf der Landen-Transformation basierenden +Algorithmus zur Berechnung der Jacobischen elliptischen Funktionen +für $u=0.6$ und $k=0.9$. +Die erste Phase (rot) berechnet die Folgen $k_n$ und $u_n$, die zweite +(blau) +transformiert die Wert der trigonometrischen Funktionen in die Werte +der Jacobischen elliptischen Funktionen. +\label{buch:elliptisch:aufgabe:3:resultate}} +\end{table} + + diff --git a/buch/chapters/110-elliptisch/uebungsaufgaben/landen.m b/buch/chapters/110-elliptisch/uebungsaufgaben/landen.m new file mode 100644 index 0000000..bba5549 --- /dev/null +++ b/buch/chapters/110-elliptisch/uebungsaufgaben/landen.m @@ -0,0 +1,60 @@ +# +# landen.m +# +# (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +N = 10; + +function retval = M(a,b) + for i = (1:10) + A = (a+b)/2; + b = sqrt(a*b); + a = A; + endfor + retval = a; +endfunction; + +function retval = EllipticKk(k) + retval = pi / (2 * M(1, sqrt(1-k^2))); +endfunction + +k = 0.5; +kprime = sqrt(1-k^2); + +EK = EllipticKk(k); +EKprime = EllipticKk(kprime); + +u = EK + EKprime * i; + +K = zeros(N,3); +K(1,1) = k; +K(1,2) = kprime; +K(1,3) = u; + +format long + +for n = (2:N) + K(n,1) = (1-K(n-1,2)) / (1+K(n-1,2)); + K(n,2) = sqrt(1-K(n,1)^2); + K(n,3) = K(n-1,3) / (1 + K(n,1)); +end + +K(:,[1,3]) + +pi / 2 + +scd = zeros(N,3); +scd(N,1) = sin(K(N,3)); +scd(N,2) = cos(K(N,3)); +scd(N,3) = 1; + +for n = (N:-1:2) + nenner = 1 + K(n,1) * scd(n, 1)^2; + scd(n-1,1) = (1+K(n,1)) * scd(n, 1) / nenner; + scd(n-1,2) = scd(n, 2) * scd(n, 3) / nenner; + scd(n-1,3) = (1 - K(n,1) * scd(n,1)^2) / nenner; +end + +scd(:,1) + +cosh(2.009459377005286) diff --git a/buch/chapters/references.bib b/buch/chapters/references.bib index 571831a..fbbbf30 100644 --- a/buch/chapters/references.bib +++ b/buch/chapters/references.bib @@ -137,3 +137,12 @@ year = 2004 } +@book{buch:ellfun-applications, + author = { Derek F. Lawden }, + title = { Elliptic Functions and Applications }, + series = { Applied Mathematical Sciences }, + volume = { 80 }, + publisher = { Springer-Verlag }, + year = 2010, + ISBN = { 978-1-4419-3090-3 } +} diff --git a/buch/papers/dreieck/teil0.tex b/buch/papers/dreieck/teil0.tex index 65eff7a..f9affe7 100644 --- a/buch/papers/dreieck/teil0.tex +++ b/buch/papers/dreieck/teil0.tex @@ -38,7 +38,7 @@ Leitet man $e^{-t^2}$ zweimal ab, erhält man {\textstyle\frac14} e^{-t^2}. \] -Es gibt also eine viele weitere Polynome $P(t)$, für die der Integrand +Es gibt also viele weitere Polynome $P(t)$, für die der Integrand $P(t)e^{-t^2}$ eine Stammfunktion in geschlossener Form hat. Damit stellt sich jetzt das folgende allgemeine Problem. -- cgit v1.2.1 From 7cf7e37298a732b1a900b5eed59c442461e43a6d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 27 Jun 2022 21:02:10 +0200 Subject: add more problems to chapter 11 --- buch/chapters/110-elliptisch/Makefile.inc | 1 + buch/chapters/110-elliptisch/chapter.tex | 1 + buch/chapters/110-elliptisch/uebungsaufgaben/4.tex | 80 ++++++++++++++++++++++ buch/chapters/110-elliptisch/uebungsaufgaben/5.tex | 58 ++++++++++++++++ buch/chapters/references.bib | 9 +++ 5 files changed, 149 insertions(+) create mode 100644 buch/chapters/110-elliptisch/uebungsaufgaben/4.tex create mode 100644 buch/chapters/110-elliptisch/uebungsaufgaben/5.tex diff --git a/buch/chapters/110-elliptisch/Makefile.inc b/buch/chapters/110-elliptisch/Makefile.inc index ef6ea51..4e2644c 100644 --- a/buch/chapters/110-elliptisch/Makefile.inc +++ b/buch/chapters/110-elliptisch/Makefile.inc @@ -15,4 +15,5 @@ CHAPTERFILES += \ chapters/110-elliptisch/uebungsaufgaben/2.tex \ chapters/110-elliptisch/uebungsaufgaben/3.tex \ chapters/110-elliptisch/uebungsaufgaben/4.tex \ + chapters/110-elliptisch/uebungsaufgaben/5.tex \ chapters/110-elliptisch/chapter.tex diff --git a/buch/chapters/110-elliptisch/chapter.tex b/buch/chapters/110-elliptisch/chapter.tex index d65570b..21fc986 100644 --- a/buch/chapters/110-elliptisch/chapter.tex +++ b/buch/chapters/110-elliptisch/chapter.tex @@ -44,5 +44,6 @@ wieder hergestellt. \uebungsaufgabe{2} \uebungsaufgabe{3} \uebungsaufgabe{4} +\uebungsaufgabe{5} \end{uebungsaufgaben} diff --git a/buch/chapters/110-elliptisch/uebungsaufgaben/4.tex b/buch/chapters/110-elliptisch/uebungsaufgaben/4.tex new file mode 100644 index 0000000..b48192d --- /dev/null +++ b/buch/chapters/110-elliptisch/uebungsaufgaben/4.tex @@ -0,0 +1,80 @@ +\label{buch:elliptisch:aufgabe:4} +Es ist bekannt, dass $\operatorname{sn}(K+iK', k) = 1/k$ gilt. +Verwenden Sie den Algorithmus von Aufgabe~\ref{buch:elliptisch:aufgabe:3}, +um dies für $k=\frac12$ nachzurechnen. + +\begin{loesung} +Zunächst müssen wir mit dem Algorithmus des arithmetisch-geometrischen +Mittels +\[ +K(k) +\approx +1.685750354812596 +\qquad\text{und}\qquad +K(k') +\approx +2.156515647499643 +\] +berechnen. +Aus $k=\frac12$ kann man jetzt die Folgen $k_n$ und $u_n$ berechnen, die innert +$N=5$ Iterationen konvergiert. +\end{loesung} + +\begin{table} +\centering +\renewcommand{\tabcolsep}{5pt} +\begin{tabular}{|>{$}c<{$}|>{$}c<{$}|>{$}c<{$}|>{$}c<{$}|} +\hline + n & k_n & u_n & \operatorname{sn}(u_n,k_n)% +\mathstrut\text{\vrule height12pt depth6pt width0pt}% +\\ +\hline +\mathstrut\text{\vrule height12pt depth0pt width0pt}% + 0 & 0.500000000000000 & 1.685750354812596 + 2.156515647499643i & 2.000000000000000 \\ + 1 & 0.071796769724491 & 1.572826493259468 + 2.012056490946491i & 3.732050807568877 \\ + 2 & 0.001292026239995 & 1.570796982340579 + 2.009460215619685i & 3.796651109009551 \\ + 3 & 0.000000417333300 & 1.570796326794965 + 2.009459377005374i & 3.796672364209438 \\ + 4 & 0.000000000000044 & 1.570796326794897 + 2.009459377005286i & 3.796672364211658 \\ + N & 0.000000000000000 & 1.570796326794897 + 2.009459377005286i & 3.796672364211658% +\mathstrut\text{\vrule height12pt depth6pt width0pt}% +\\ +\hline +\end{tabular} +\caption{Berechnung von $\operatorname{sn}(K+iK',k)=1/k$ mit Hilfe der Landen-Transformation. +Konvergenz der Folge $k_n$ ist bei $N=5$ eintegreten. +\label{buch:elliptisch:aufgabe:4:table}} +\end{table} + +\begin{loesung} +Sie führt auf +\[ +u_N += +\frac{\pi}2 + 2.009459377005286i += +\frac{\pi}2 + bi. +\] +Jetzt muss der Sinus von $u_N$ berechnet werden. +Dazu verwenden wir die komplexe Darstellung: +\[ +\sin u_N += +\frac{e^{i\frac{\pi}2-b} - e^{-i\frac{\pi}2+b}}{2i} += +\frac{ie^{-b}+ie^{b}}{2i} += +\cosh b += +3.796672364211658. +\] + +Da der Wert $\operatorname{sn}(u_N,k_N) = \sin u_N$ reell ist, wird auch +die daraus wie in Aufgabe~\ref{buch:elliptisch:aufgabe:3} +konstruierte Folge $\operatorname{sn}(u_n,k_n)$ reell sein. +Die Werte von $\operatorname{cn}(u_n,k_n)$ und $\operatorname{dn}(u_n,k_n)$ +werden für die Iterationsformeln~\eqref{buch:elliptisch:aufgabe:3:gauss} +für $\operatorname{sn}(u_n,k_n)$ nicht benötigt. +Die Berechnung ist in Tabelle~\ref{buch:elliptisch:aufgabe:4:table} +zusammengefasst. +Man liest ab, dass $\operatorname{sn}(K+iK',k)=2 = 1/k$, wie erwartet. +\end{loesung} diff --git a/buch/chapters/110-elliptisch/uebungsaufgaben/5.tex b/buch/chapters/110-elliptisch/uebungsaufgaben/5.tex new file mode 100644 index 0000000..4a8c15c --- /dev/null +++ b/buch/chapters/110-elliptisch/uebungsaufgaben/5.tex @@ -0,0 +1,58 @@ +\label{buch:elliptisch:aufgabe:5} +Die sehr schnelle Konvergenz des arithmetisch-geometrische Mittels +kann auch dazu ausgenutzt werden, eine grosse Zahl von Stellen der +Kreiszahl $\pi$ zu berechnen. +Almkvist und Berndt haben gezeigt \cite{buch:almkvist-berndt}, dass +\[ +\pi += +\frac{4 M(1,\sqrt{2}/2)^2}{ +\displaystyle 1-\sum_{n=1}^\infty 2^{n+1}(a_n^2-b_n^2) +} +\] +Verwenden Sie diese Formel, um Approximationen von $\pi$ zu berechnen. + +\begin{loesung} +\begin{table} +\centering +\begin{tabular}{|>{$}c<{$}|>{$}c<{$}|>{$}c<{$}|>{$}c<{$}|} +\hline +n & a_n & b_n & \pi_n% +\mathstrut\text{\vrule height12pt depth6pt width0pt}\\ +\hline +\mathstrut\text{\vrule height12pt depth0pt width0pt}% +0 & 1.000000000000000 & 0.707106781186548 & +\mathstrut\text{\vrule height12pt depth0pt width0pt}\\ +1 & 0.853553390593274 & 0.840896415253715 & 3.\underline{1}87672642712106 \\ +2 & 0.847224902923494 & 0.847201266746892 & 3.\underline{141}680293297648 \\ +3 & 0.847213084835193 & 0.847213084752765 & 3.\underline{141592653}895451 \\ +4 & 0.847213084793979 & 0.847213084793979 & 3.\underline{141592653589}822 \\ +5 & 0.847213084793979 & 0.847213084793979 & 3.\underline{141592653589}871 \\ +\hline +\infty & & & 3.141592653589793% +\mathstrut\text{\vrule height12pt depth6pt width0pt}\\ +\hline +\end{tabular} +\caption{Approximationen der Kreiszahl $\pi$ mit Hilfe des Algorithmus +des arithmetisch-geometrischen Mittels. +In nur 4 Schritten werden 12 Stellen Genauigkeit erreicht. +\label{buch:elliptisch:aufgabe:5:table}} +\end{table} +Wir schreiben +\[ +\pi_n += +\frac{4 a_k^2}{ +\displaystyle +1-\sum_{k=1}^\infty 2^{k+1}(a_k^2-b_k^2) +} +\] +für die Approximationen von $\pi$, +wobei $a_k$ und $b_k$ die Folgen der arithmetischen und geometrischen +Mittel von $1$ und $\!\sqrt{2}/2$ sind. +Die Tabelle~\ref{buch:elliptisch:aufgabe:5:table} zeigt die Resultat. +In nur 4 Schritten können 12 Stellen Genauigkeit erreicht werden, +dann beginnen jedoch bereits Rundungsfehler das Resultat zu beinträchtigen. +Für die Berechnung einer grösseren Zahl von Stellen muss daher mit +grösserer Präzision gerechnet werden. +\end{loesung} diff --git a/buch/chapters/references.bib b/buch/chapters/references.bib index fbbbf30..e8f3494 100644 --- a/buch/chapters/references.bib +++ b/buch/chapters/references.bib @@ -146,3 +146,12 @@ year = 2010, ISBN = { 978-1-4419-3090-3 } } + +@article{buch:almkvist-berndt, + author = { Gert Almkvist und Bruce Berndt }, + title = { Gauss, Landen, Ramanjujan, the Arithmetic-Geometric Mean, Ellipses $\pi$, and the {\em Ladies Diary} }, + journal = { The American Mathematical Monthly }, + volume = { 95 }, + pages = { 585--608 }, + year = 1988 +} -- cgit v1.2.1 From 3d742539c034e5b9569722e95395fd5ede33d770 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 27 Jun 2022 21:19:31 +0200 Subject: some improvements in tables --- buch/chapters/110-elliptisch/ellintegral.tex | 2 ++ buch/chapters/110-elliptisch/uebungsaufgaben/2.tex | 8 ++++-- buch/chapters/110-elliptisch/uebungsaufgaben/4.tex | 33 +++++++++------------- buch/chapters/110-elliptisch/uebungsaufgaben/5.tex | 7 +++-- 4 files changed, 26 insertions(+), 24 deletions(-) diff --git a/buch/chapters/110-elliptisch/ellintegral.tex b/buch/chapters/110-elliptisch/ellintegral.tex index cc99218..27724fd 100644 --- a/buch/chapters/110-elliptisch/ellintegral.tex +++ b/buch/chapters/110-elliptisch/ellintegral.tex @@ -478,6 +478,8 @@ für letztere ebenfalls sehr schnelle numerische Algorithmen liefert Aufgaben~\ref{buch:elliptisch:aufgabe:2}--\ref{buch:elliptisch:aufgabe:4}). Sie kann auch verwendet werden, um die Werte der Jacobischen elliptischen Funktionen für komplexe Argument zu berechnen. +Eine weiter Anwendung ist die Berechnung einer grossen Zahl von +Stellen der Kreiszahl $\pi$, siehe Aufgaben~\ref{buch:elliptisch:aufgabe:5}. % % Das arithmetisch-geometrische Mittel diff --git a/buch/chapters/110-elliptisch/uebungsaufgaben/2.tex b/buch/chapters/110-elliptisch/uebungsaufgaben/2.tex index 9a1cafc..dbf184a 100644 --- a/buch/chapters/110-elliptisch/uebungsaufgaben/2.tex +++ b/buch/chapters/110-elliptisch/uebungsaufgaben/2.tex @@ -21,13 +21,17 @@ Zeigen Sie, dass $k_n\to 0$ und $k_n'\to 1$ mit quadratischer Konvergenz. \centering \begin{tabular}{|>{$}c<{$}|>{$}c<{$}|>{$}c<{$}|} \hline -n & k & k' \\ +n & k & k'% +\mathstrut\text{\vrule height12pt depth6pt width0pt}% +\\ \hline +\mathstrut\text{\vrule height12pt depth0pt width0pt}% 0 & 0.200000000000000 & 0.979795897113271 \\ 1 & 0.010205144336438 & 0.999947926158694 \\ 2 & 0.000026037598592 & 0.999999999661022 \\ 3 & 0.000000000169489 & 1.000000000000000 \\ -4 & 0.000000000000000 & 1.000000000000000 \\ +4 & 0.000000000000000 & 1.000000000000000% +\mathstrut\text{\vrule height0pt depth6pt width0pt}\\ \hline \end{tabular} \caption{Numerisches Experiment zur Folge $(k_n,k_n')$ diff --git a/buch/chapters/110-elliptisch/uebungsaufgaben/4.tex b/buch/chapters/110-elliptisch/uebungsaufgaben/4.tex index b48192d..8814090 100644 --- a/buch/chapters/110-elliptisch/uebungsaufgaben/4.tex +++ b/buch/chapters/110-elliptisch/uebungsaufgaben/4.tex @@ -4,22 +4,6 @@ Verwenden Sie den Algorithmus von Aufgabe~\ref{buch:elliptisch:aufgabe:3}, um dies für $k=\frac12$ nachzurechnen. \begin{loesung} -Zunächst müssen wir mit dem Algorithmus des arithmetisch-geometrischen -Mittels -\[ -K(k) -\approx -1.685750354812596 -\qquad\text{und}\qquad -K(k') -\approx -2.156515647499643 -\] -berechnen. -Aus $k=\frac12$ kann man jetzt die Folgen $k_n$ und $u_n$ berechnen, die innert -$N=5$ Iterationen konvergiert. -\end{loesung} - \begin{table} \centering \renewcommand{\tabcolsep}{5pt} @@ -44,8 +28,20 @@ $N=5$ Iterationen konvergiert. Konvergenz der Folge $k_n$ ist bei $N=5$ eintegreten. \label{buch:elliptisch:aufgabe:4:table}} \end{table} - -\begin{loesung} +Zunächst müssen wir mit dem Algorithmus des arithmetisch-geometrischen +Mittels +\[ +K(k) +\approx +1.685750354812596 +\qquad\text{und}\qquad +K(k') +\approx +2.156515647499643 +\] +berechnen. +Aus $k=\frac12$ kann man jetzt die Folgen $k_n$ und $u_n$ berechnen, die innert +$N=5$ Iterationen konvergiert. Sie führt auf \[ u_N @@ -67,7 +63,6 @@ Dazu verwenden wir die komplexe Darstellung: = 3.796672364211658. \] - Da der Wert $\operatorname{sn}(u_N,k_N) = \sin u_N$ reell ist, wird auch die daraus wie in Aufgabe~\ref{buch:elliptisch:aufgabe:3} konstruierte Folge $\operatorname{sn}(u_n,k_n)$ reell sein. diff --git a/buch/chapters/110-elliptisch/uebungsaufgaben/5.tex b/buch/chapters/110-elliptisch/uebungsaufgaben/5.tex index 4a8c15c..fa018ca 100644 --- a/buch/chapters/110-elliptisch/uebungsaufgaben/5.tex +++ b/buch/chapters/110-elliptisch/uebungsaufgaben/5.tex @@ -6,9 +6,9 @@ Almkvist und Berndt haben gezeigt \cite{buch:almkvist-berndt}, dass \[ \pi = -\frac{4 M(1,\sqrt{2}/2)^2}{ +\frac{4 M(1,\!\sqrt{2}/2)^2}{ \displaystyle 1-\sum_{n=1}^\infty 2^{n+1}(a_n^2-b_n^2) -} +}. \] Verwenden Sie diese Formel, um Approximationen von $\pi$ zu berechnen. @@ -27,7 +27,8 @@ n & a_n & b_n & \pi_n% 2 & 0.847224902923494 & 0.847201266746892 & 3.\underline{141}680293297648 \\ 3 & 0.847213084835193 & 0.847213084752765 & 3.\underline{141592653}895451 \\ 4 & 0.847213084793979 & 0.847213084793979 & 3.\underline{141592653589}822 \\ -5 & 0.847213084793979 & 0.847213084793979 & 3.\underline{141592653589}871 \\ +5 & 0.847213084793979 & 0.847213084793979 & 3.\underline{141592653589}871% +\mathstrut\text{\vrule height0pt depth6pt width0pt}\\ \hline \infty & & & 3.141592653589793% \mathstrut\text{\vrule height12pt depth6pt width0pt}\\ -- cgit v1.2.1 From 9b417043f748aaa2c5b802c0b4550104d59c5b37 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 28 Jun 2022 07:24:55 +0200 Subject: typo --- buch/chapters/110-elliptisch/elltrigo.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buch/chapters/110-elliptisch/elltrigo.tex b/buch/chapters/110-elliptisch/elltrigo.tex index c67870f..670b1de 100644 --- a/buch/chapters/110-elliptisch/elltrigo.tex +++ b/buch/chapters/110-elliptisch/elltrigo.tex @@ -120,7 +120,7 @@ Punktes auf dem Einheitskreis interpretieren. Für die Koordinaten eines Punktes auf der Ellipse ist dies nicht so einfach, weil es nicht nur eine Ellipse gibt, sondern für jede numerische Exzentrizität -mindestens eine mit Halbeachse $1$. +mindestens eine mit Halbachse $1$. Wir wählen die Ellipsen so, dass $a$ die grosse Halbachse ist, also $a>b$. Als Normierungsbedingung verwenden wir, dass $b=1$ sein soll, wie in Abbildung~\ref{buch:elliptisch:fig:jacobidef}. -- cgit v1.2.1 From b751d10130f923c1399a9eca58cfeb62c3a7a0e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 28 Jun 2022 07:27:57 +0200 Subject: cleanup --- buch/chapters/110-elliptisch/ellintegral.tex | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/buch/chapters/110-elliptisch/ellintegral.tex b/buch/chapters/110-elliptisch/ellintegral.tex index 27724fd..6dd1ef6 100644 --- a/buch/chapters/110-elliptisch/ellintegral.tex +++ b/buch/chapters/110-elliptisch/ellintegral.tex @@ -1113,7 +1113,8 @@ fest. % % AGM und Berechnung von F(x,k) % -\subsubsection{Berechnung von $F(x,k)$ mit dem arithmetisch-geometrischen Mittel\label{buch:elliptisch:subsubection:berechnung-fxk-agm}} +\subsubsection{Berechnung von $F(x,k)$ mit dem arithmetisch-geometrischen +Mittel\label{buch:elliptisch:subsubection:berechnung-fxk-agm}} Wie das vollständige elliptische Integral $K(k)$ kann auch das unvollständige elliptische Integral \begin{align*} @@ -1123,11 +1124,12 @@ F(x,k) = \int_0^{\varphi} \frac{dt}{\sqrt{1-k^2 \sin^2 t}} +&&\text{mit $x=\sin\varphi$} \\ &= a \int_0^{\varphi} \frac{dt}{a^2 \cos^2 t + b^2 \sin^2 t} -\qquad\text{mit $k=b/a$} +&&\text{mit $k=b/a$} \end{align*} mit dem arithmetisch-geometrischen Mittel berechnet werden. Dazu muss die Substitution -- cgit v1.2.1 From 9fd9ca9c2071b0911f08d434aa0fa722d7037640 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 28 Jun 2022 07:29:32 +0200 Subject: Formulierung --- buch/chapters/110-elliptisch/ellintegral.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/buch/chapters/110-elliptisch/ellintegral.tex b/buch/chapters/110-elliptisch/ellintegral.tex index 6dd1ef6..f509fcb 100644 --- a/buch/chapters/110-elliptisch/ellintegral.tex +++ b/buch/chapters/110-elliptisch/ellintegral.tex @@ -1135,8 +1135,8 @@ mit dem arithmetisch-geometrischen Mittel berechnet werden. Dazu muss die Substitution \eqref{buch:elliptisch:agm:subst} verwendet werden, um auch den Winkel $\varphi_1$ zu berechnen. -Dazu muss \eqref{buch:elliptisch:agm:subst} nach $x_1=\sin t_1$ -aufgelöst werden. +Zunächst wird \eqref{buch:elliptisch:agm:subst} nach $x_1=\sin t_1$ +aufgelöst. Durch Multiplikation mit dem Nenner erhält man mit der Abkürzung $x=\sin t$ und $x_1=\sin t_1$ die quadratische Gleichung \[ -- cgit v1.2.1 From 971770c50241f483ba0f880dc6fafdd3f91d4983 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 28 Jun 2022 07:56:22 +0200 Subject: typos --- buch/chapters/110-elliptisch/ellintegral.tex | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/buch/chapters/110-elliptisch/ellintegral.tex b/buch/chapters/110-elliptisch/ellintegral.tex index f509fcb..25f7083 100644 --- a/buch/chapters/110-elliptisch/ellintegral.tex +++ b/buch/chapters/110-elliptisch/ellintegral.tex @@ -1138,11 +1138,13 @@ verwendet werden, um auch den Winkel $\varphi_1$ zu berechnen. Zunächst wird \eqref{buch:elliptisch:agm:subst} nach $x_1=\sin t_1$ aufgelöst. Durch Multiplikation mit dem Nenner erhält man mit der Abkürzung -$x=\sin t$ und $x_1=\sin t_1$ die quadratische Gleichung +$x=\sin t$ %und $x_1=\sin t_1$ +die quadratische Gleichung \[ -(a-b)x x_1 +(a-b)x x_1^2 - 2ax_1 ++ (a+b)x = 0, -- cgit v1.2.1 From 6c3d3784c6d03fd89450bcf05b60cdf888d23333 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 28 Jun 2022 18:14:35 +0200 Subject: typos --- buch/chapters/110-elliptisch/agm/sn.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buch/chapters/110-elliptisch/agm/sn.cpp b/buch/chapters/110-elliptisch/agm/sn.cpp index ff2ed17..9e1b047 100644 --- a/buch/chapters/110-elliptisch/agm/sn.cpp +++ b/buch/chapters/110-elliptisch/agm/sn.cpp @@ -1,5 +1,5 @@ /* - * ns.cpp + * sn.cpp * * (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule */ -- cgit v1.2.1 From 2400bd7fe87b268a8bb10ab503c3e0948c4dd6f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Fri, 1 Jul 2022 17:18:14 +0200 Subject: Einleitung fertig --- buch/chapters/000-einleitung/Makefile.inc | 5 +- buch/chapters/000-einleitung/chapter.tex | 108 +-------------- buch/chapters/000-einleitung/funktionsbegriff.tex | 74 ++++++++++ buch/chapters/000-einleitung/inhalt.tex | 153 +++++++++++++++++++++ .../000-einleitung/speziellefunktionen.tex | 150 ++++++++++++++++++++ .../070-orthogonalitaet/gaussquadratur.tex | 2 +- 6 files changed, 385 insertions(+), 107 deletions(-) create mode 100644 buch/chapters/000-einleitung/funktionsbegriff.tex create mode 100644 buch/chapters/000-einleitung/inhalt.tex create mode 100644 buch/chapters/000-einleitung/speziellefunktionen.tex diff --git a/buch/chapters/000-einleitung/Makefile.inc b/buch/chapters/000-einleitung/Makefile.inc index 5840050..2c4e046 100644 --- a/buch/chapters/000-einleitung/Makefile.inc +++ b/buch/chapters/000-einleitung/Makefile.inc @@ -5,4 +5,7 @@ # CHAPTERFILES += \ - chapters/000-einleitung/chapter.tex + chapters/000-einleitung/chapter.tex \ + chapters/000-einleitung/funktionsbegriff.tex \ + chapters/000-einleitung/speziellefunktionen.tex \ + chapters/000-einleitung/inhalt.tex diff --git a/buch/chapters/000-einleitung/chapter.tex b/buch/chapters/000-einleitung/chapter.tex index 559a468..e53eafb 100644 --- a/buch/chapters/000-einleitung/chapter.tex +++ b/buch/chapters/000-einleitung/chapter.tex @@ -7,110 +7,8 @@ \lhead{Einleitung} \rhead{} \addcontentsline{toc}{chapter}{Einleitung} -Eine Polynomgleichung wie etwa -\begin{equation} -p(x) = ax^2+bx+c = 0 -\label{buch:einleitung:quadratisch} -\end{equation} -kann manchmal dadurch gelöst werden, dass man die Nullstellen errät -und damit eine Faktorisierung $p(x)=a(x-x_1)(x-x_2)$ konstruiert. -Doch im Allgemeinen wird man die Lösungsformel für quadratische -Gleichungen verwenden, die auf quadratischem Ergänzen basiert. -Es erlaubt die Gleichung~\eqref{buch:einleitung:quadratisch} umzwandeln in -\[ -\biggl(x + \frac{b}{2a}\biggr)^2 -= --\frac{c}{a} + \frac{b^2}{4a^2} -= -\frac{b^2-4ac}{4a^2}. -\] -Um diese Gleichung nach $x$ aufzulösen, muss man die inverse Funktion -der Quadratfunktion zur Verfügung haben, die Wurzelfunktion. -Dies ist wohl das älteste Beispiel einer speziellen Funktion, -die man zu dem Zweck eingeführt hat, spezielle algebraische Gleichungen -lösen zu können. -Sie liefert die bekannte Lösungsformel -\[ -x=\frac{-b\pm\sqrt{b^2-4ac}}{2a} -\] -für die quadratische Gleichung. - -Durch die Definition der Wurzelfunktion ist das Problem der numerischen -Berechnung der Nullstelle natürlich noch nicht gelöst, aber man hat -ein handliches mathematisches Symbol gewonnen, mit dem man die Lösungen -übersichtlich beschreiben und algebraisch manipulieren kann. -Diese Idee steht hinter allen weiteren in diesem Buch diskutierten -Funktionen: wann immer ein wichtiges mathematisches Konzept sich nicht -direkt durch die bereits entwickelten Funktionen ausdrücken lässt, -erfindet man dafür eine neue Funktion oder Familie von Funktionen. -Beispielsweise hat sich die Darstellung von Zahlen $x$ als Potenzen -einer gemeinsamen Basis, zum Beispiel $x=10^y$, als sehr nützlich -herausgestellt, um Multiplikationen auf die von Hand leichter -ausführbaren Additionen zurückzuführen. -Man braucht also die Fähigkeit, die Abhängigkeit des Exponenten $y$ -von $x$ auszudrücken, mit anderen Worten, man braucht die Logarithmusfunktion. - -Spezielle Funktionen wie die Wurzelfunktion und die Logarithmusfunktion -werden also zu Bausteinen, die in der Lösung algebraischer oder auch -analytischer Probleme verwendet werden können. -Die Erfahrung zeigt, dass diese Funktionen immer wieder nützlich -sind, es lohnt sich also, ihre Berechnung zum Beispiel in einer -Bibliothek zu implementieren. -Spezielle Funktionen sind in diesem Sinn eine mathematische Form -des informatischen Prinzips des ``code reuse''. - -Die trigonometrischen Funktionen kann man als Lösungen des geometrischen -Problems der Parametrisierung eines Kreises verstehen. -Alternativ kann man $\sin x$ und $\cos x$ als spezielle Lösungen der -Differentialgleichung $y''=-y$ verstehen. -Viele andere Funktionen wie die hyperbolischen Funktionen oder die -Bessel-Funktionen sind ebenfalls Lösungen spezieller Differentialgleichungen. -Auch die Theorie der partiellen Differentialgleichungen gibt Anlass -zu interessanten Lösungsfunktionen. -Die Separation des Poisson-Problems in Kugelkoordinaten führt zum Beispiel -auf die Kugelfunktionen, mit denen sich beliebige Funktionen auf einer -Kugeloberfläche analysieren und synthetisieren lassen. - -Die Lösungen einer linearer gewöhnlicher Differentialgleichung können -oft mit Hilfe von Potenzreihen dargestellt werden. -So kann man zum Beispiel die Potenzreihenentwicklung der Exponentialfunktion -und der trigonometrischen Funktionen finden. -Die Konvergenz einer Potenzreihe wird aber durch Singularitäten -eingeschränkt. -Komplexe Potenzreihen ermöglichen aber, solche Stellen zu ``umgehen''. -Die Theorie der komplex differenzierbaren Funktionen bildet einen -allgemeinen Rahmen, mit solchen Funktionen umzugehen und ist zum -Beispiel nötig, um die Bessel-Funktionen der zweiten Art zu konstruieren, -die ebenfalls Lösungen ger Bessel-Gleichung sind, aber bei $x=0$ -eine Singularität aufweisen. - -Die Stammfunktion $F(x)$ einer gegebenen Funktion $f(x)$ ist natürlich -auch die Lösung der besonders einfachen Differentialgleichung $F'=f$. -Ein bekanntes Beispiel ist die Stammfunktion der Wahrscheinlichkeitsdichte -\[ -\varphi(x) -= -\frac{1}{\sqrt{2\pi}\sigma} e^{-\frac{(x-\mu)^2}{2\sigma^2}}, -\] -der Normalverteilung, für die aber keine geschlossene Darstellung -mit bekannten Funktionen bekannt ist. -Sie kann aber durch die Fehlerfunktion -\[ -\operatorname{erf}(x) -= -\frac{2}{\sqrt{\pi}} \int_0^x e^{-t^2}\,dt -\] -dargestellt werden. -Mit dem Risch-Algorithmus kann man nachweisen, dass es tatsächlich -keine Möglichkeit gibt, die Stammfunktion in geschlossener Form durch -die bereits bekannten Funktionen darzustellen, die Definition einer -neuen speziellen Funktion ist also der einzige Ausweg. -Die Fehlerfunktion ist heute in der Standardbibliothek enthalten auf -gleicher Stufe wie Wurzeln, trigonometrische Funktionen, -Exponentialfunktionen oder Logarithmen. - -Die nachstehenden Kapitel sollen die vielfältigen Arten illustrieren, -wie diese Prinzipien zu neuen und nützlichen speziellen Funktionen -und ihren Anwendungen führen können. +\input{chapters/000-einleitung/funktionsbegriff.tex} +\input{chapters/000-einleitung/speziellefunktionen.tex} +\input{chapters/000-einleitung/inhalt.tex} diff --git a/buch/chapters/000-einleitung/funktionsbegriff.tex b/buch/chapters/000-einleitung/funktionsbegriff.tex new file mode 100644 index 0000000..e684f82 --- /dev/null +++ b/buch/chapters/000-einleitung/funktionsbegriff.tex @@ -0,0 +1,74 @@ +% +% Der Funktionsbegriff +% +\subsection*{Der mathematische Funktionsbegriff} +Der moderne mathematische Funktionsbegriff ist die Krönungn einer +langen Entwicklung. +Erste Ansätze sind in der Darstellung voneinander abhängiger Grössen +in einem Koordinatensystem durch Nikolaus von Oresme im 14.~Jahrhundert +zu erkennen. +Dieser Ansatz, Funktionen einfach nur als Kurven zu betrachten, +war bis ins 17.~Jahrhundert verbreitet. +Der Begriff {\em Funktion} selbst geht wahrscheinlich auf Leibniz +zurück. + +Euler verwendete den Begriff oft austauschbar für zwei im Prinzip +verschiedene Vorstellungen. +Einerseits sah er jeden ``analytischen Ausdruck'' in einer Variablen +$x$ als eine Funktion an, andererseits betrachtete er eine in einem +Koordinatensystem freihändig gezeichnete Kurve als eine Funktion. +Heute unterscheiden wir zwischen der Funktion, also der Zuordnung +von $x$ zu den Funktionswerten $f(x)$ und dem Graphen, also der +von Paaren $(x,f(x))$ gebildeten Kurve in einem Koordinatensystem. +Nach letzterer Vorstellung ist auch die Wurzelfunktion, +die Umkehrfunktion der Quadratfunktion, $f(x)=x^2$ eine Funktion. +Da zu jedem Argument zwei verschiedene Werte $\pm\sqrt{x}$ +für die Wurzel möglich sind, lässt sich diese ``Funktion'' nicht +durch einen ``analytischen Ausdruck'' beschrieben. +Euler beschrieb diese Situation als {\em mehrdeutige Funktion}. + +Was ``analytische Ausdrücke'' alles umfassen sollen, ist ebenfalls +nicht scharf definiert. +Dahinter verbergen sich viele versteckte Annahmen, zum Beispiel +dass Funktionen automatisch stetig und möglicherweise sogar +differenzierbar sind. +Für Lagrange waren nur Funktionen akzeptabel, die durch Potenzreihen +definiert waren, solche Funktionen nennen wir heute {\em analytisch}. +Die Wahl von Potenzreihen zur Definition von Funktion ist einerseits +willkürlich, warum nicht Linearkombinationen von trigonometrischen +Funktionen? +Andererseits gibt es beliebig oft differenzierbare Funktionen, +deren Potenzreihe nicht gegen die Funktion konvergiert. + +Im 19.~Jahrhundert erfuhr die Analysis eine Reformierung. +Ausgehend vom nun präzis gefassten Grenzwertbegriff wurden Stetigkeit +und Differenzierbarkeit als eigenständige Eigenschaften von +Funktionen erkannt. +Eine Funktion war jetzt nur noch eine eindeutige Zuordnung +$x\mapsto f(x)$. +Stetigkeit ist die Eigenschaft, dass der Grenzwert in einem +Punkt des Definitionsbereichs existiert und mit dem Funktionswert +in diesem Punkt übereinstimmt. +Später wurden auch Differenzierbarkeit und Integrierbarkeit als +Eigenschaften von Funktionen erkannt, die vorhanden sein können, +aber nicht müssen. + +Der nun präzis gefasste Funktionsbegriff ist nur selten direkt anwendbar. +In der Physik treten Funktionen als Lösungen von Differentialgleichungen +auf. +Sie sind also immer mindestens differenzierbar, haben aber typischerweise +noch viele weitere Eigenschaften. +So sind zum Beispiel die Lösungen der Differentialgleichung +$y''=-n^2 y$ auf dem Intervall $[-\pi,\pi]$ die Funktionen +$\sin(nx)$ und $\cos(nx)$ für $n\in\mathbb{N}$. +Wie Fourier herausgefunden hat, lässt sich jede stetige $2\pi$-periodische +Funktion als Linearkombination dieser Funktionen approximieren. + +Eine Familie von Differentialgleichungen, die durch wenige Parameter +charakterisiert ist, führt auch zu einer Familie von Lösungsfunktionen, die +sich durch die gleichen Parameter beschreiben lassen. +Sie ist unmittelbar nützlich, da sie jedes Anwendungsproblem löst, +welches durch diese Differentialgleichung modelliert werden kann. +In diesem Sinne ist eine solche spezielle Funktionenfamilie interessanter +als eine beliebige differenzierbare Funktion. + diff --git a/buch/chapters/000-einleitung/inhalt.tex b/buch/chapters/000-einleitung/inhalt.tex new file mode 100644 index 0000000..1b9f35b --- /dev/null +++ b/buch/chapters/000-einleitung/inhalt.tex @@ -0,0 +1,153 @@ +% +% Was ist zu erwarten +% +\subsection*{Was ist zu erwarten?} +Spezielle Funktionen wie die eben angedeuteten werden also zu +Bausteinen, die in der Lösung algebraischer oder auch analytischer +Probleme verwendet werden können. +Die Erfahrung zeigt, dass diese Funktionen immer wieder nützlich +sind, es lohnt sich also, ihre Berechnung zum Beispiel in einer +Bibliothek zu implementieren. +Spezielle Funktionen sind in diesem Sinn eine mathematische Form +des informatischen Prinzips des ``code reuse''. + +Die nachstehenden Kapitel sollen die vielfältigen Arten illustrieren, +wie diese Prinzipien zu neuen und nützlichen speziellen Funktionen +und ihren Anwendungen führen können. +Hier eine kurze Übersicht über ihren Inhalt. +\begin{enumerate} +\item +Potenzen und Wurzeln: Potenzen und Polynome sind die einfachsten +Funktionen, die sich unmittelbar aus den arithmetischen Operationen +konstruieren lassen. +Die zugehörigen Umkehrfunktionen sind die Wurzelfunktionen, +sie lösen gewisse algebraische Gleichungen. +Aus den Polynomen lassen sich weiter rationale Funktionen und +Potenzreihen konstruieren, die als wichtige Werkzeuge zur Konstruktion +spezieller Funktionen in späteren Kapiteln sind. +\item +Exponentialfunktion und Exponentialgleichungen. +Die Exponentialfunktion entsteht aus dem Zinsproblem durch Grenzwert, +die Jost Bürgi zur Berechnung seiner Logarithmentabelle verwendet hat. +Hier zeigt sich die Nützlichkeit spezieller Funktionen als Grundlage +für die numerische Rechnung: Logarithmentafeln waren über Jahrhunderte +das zentrale Werkzeug für die Durchführung numerischer Rechnung. +Besonders nützlich ist aber auch die Potenzreihendarstellung der +Exponentialdarstellung, die meist für die numerische Berechnung +verwendet wird. +Die Lambert-$W$-schliesslich löst gewisse Exponentialgleichungen. +\item +Spezielle Funktionen aus der Geometrie. +Dieses Kapitel startet mit der langen Geschichte der trigonometrischen +Funktionen, den wahrscheinlich wichtigsten speziellen Funktionen für +geometrische Anwendungen. +Es führt aber auch die Kegelschnitte, die hyperbolischen Funktionen +und andere Parametrisierungen der Kegelschnitte ein, die später +wichtig werden. +Es beginnt auch die Diskussion einiger geometrischer Fragestellungen +die sich oft nur durch Definition neuer spezieller Funktionen lösen +lassen, wie zum Beispiel das Problem der Kurvenlänge auf einer +Ellipse. +\item +Spezielle Funktionen und Rekursion. +Viele Probleme lassen eine Lösung in rekursiver Form zu. +Zum Beispiel lässt sich die Fakultät durch eine Rekursionsbeziehung +vollständig definieren. +Dieses Kapitel zeigt, wie sich die Fakultät zur Gamma-Funktion +$\Gamma(x)$ erweitern lässt, die für beliebige reelle $x$ +definiert ist. +Sie ist aber nur die Spitze eines Eisbergs von weiteren wichtigen +Funktionen. +Die Beta-Integrale sind ebenfalls durch Rekursionsbeziehungen +charakterisiert, lassen sich durch Gamma-Funktionen ausdrücken und +haben als Anwendung die Verteilungsfunktionen der Ordnungsstatistiken. +Lineare Differenzengleichungen sind Rekursionsgleichungen, die sich +besonders leicht mit Potenzfunktionen lösen lassen. +Alle diese Funktionen sind Speziallfälle einer sehr viel grösseren +Klasse von Funktionen, den hypergeometrischen Funktionen, die sich +durch eine Rekursionsbeziehung der Koeffizienten ihrer +Potenzreihenentwicklung auszeichnen. +Es wird sich in nächsten Kapitel zeigen, dass sie besonders gut +geeignet sind, Lösungen von linearen Differentialgleichungen zu +beschreiben. +\item +Differentialgleichungen. +Lösungsfunktionen von Differentialgleichungen sind meistens die +erste Anwendung, in der man die klassschen speziellen Funktionen +kennenlernt. +Sie entstehen mit Hilfe der Potenzreihenmethode und können daher +als hypergeometrische Funktionen geschrieben werden. +Sie sind aber von derart grosser Bedeutung für die Anwendung, +dass viele dieser Funktionen als eigenständige Funktionenfamilien +definiert worden sind. +Die Bessel-Funktionen werden in diesem Zusammenhang eingehend +behandelt. +\item +Integrale können als Lösungen sehr spezieller Differentialgleichungen +betrachtet werden. +Eine Stammfunktion $F(x)$ der Funktion $f(x)$ hat als Ableitung die +ursprüngliche Funktion: $F'(x)=f(x)$. +Während Ableiten ein einfacher, algebraischer Prozess ist, +scheint das Finden einer Stammfunktion sehr viel anspruchsvoller +zu sein. +Spezielle Funktionen sinnvoll sein, wenn eine Stammfunktion sich nicht +mit den bereits definierten Funktionen ausdrücken lässt. +Es gibt eine systematische Methode zu entscheiden, ob eine Stammfunktion +sich durch ``elementare Funktionen'' ausdrücken lässt, sie wird oft +der Risch-Algorithmus genannt. +\item +Orthogonalität. +Mit dem Integral lassen sich auch für Funktionen Skalarprodukte +definieren. +Orthogonalität zwischen Funktionen zeichnet dann Funktionen aus, die +sich besonders gut zur Darstellung beliebiger stetiger oder +integrierbarer Funktionen eignen. +Die Fourier-Theorie und ihre vielen Varianten sind ein Resultat. +Besonders einfache orthogonale Funktionenfamilien sind die orthogonalen +Polynome, die ausserdem zu ausserordentlich genauen numerischen +Integrationsverfahren führen. +\item +Integraltransformationen. +Die trigonometrischen Funktionen sind die Grundlage der Fourier-Theorie. +Doch auch andere spezielle Funktionenfamilien können ähnlich +nützliche Integraltransformationen hergeben. +Die Bessel-Funktionen stellen sich in diesem Zusammenhang als die +Polarkoordinaten-Variante der Fourier-Theorie in der Ebene heraus. +\item +Funktionentheorie. +Einige Eigenschaften der Lösungen gewöhnlicher Differentialgleichung +sind allein mit der reellen Analysis nicht zu bewältigen. +In der Welt der speziellen Funktionen hat man aber strengere +Anforderungen an Funktionen, sie lassen sich immer als Funktionen +einer komplexen Variablen verstehen. +Dieses Kapitel stellt die wichtigsten Eigenschaften komplex +differenzierbarer Funktionen zusammen und wendet sie zum Beispiel +auf das Problem an, weitere Lösungen der Bessel-Differentialgleichung +zu finden. +\item +Partielle Differentialgleichungen sind eine der wichtigsten Quellen +der gewöhnlichen Differentialgleichungen, die nur mit speziellen +Funktionen gelöst werden können. +So führen rotationssymmetrische Wellenprobleme in der Ebene +ganz natürlich auf die Besselsche Differentialgleichung und damit +auf die Bessel-Funktionen als Lösungsfunktionen. +\item +Elliptische Funktionen. +Einige der in Kapitel~\ref{buch:chapter:geometrie} angesprochenen +Fragestellungen wie der Berechnung der Bogenlänge auf einer Ellipse +lassen sich mit keiner der bisher vorgestellten Technik lösen. +In diesem Kapitel werden die elliptischen Integrale und die +zugehörigen Umkehrfunktionen vorgestellt. +Die Jacobischen elliptischen Funktionen verallgemeinern +die trigonometrischen Funktionen und können gewisse nichtlineare +Differentialgleichungen lösen. +Sie finden auch Anwendungen im Design elliptischer Filter +(siehe Kapitel~\ref{chapter:ellfilter}). +\end{enumerate} + +Natürlich ist damit das weite Gebiet der speziellen Funktionen +nur ganz grob umrissen. +Weitere Aspekte und Anwendungen werden in den Artikeln im zweiten +Teil vorgestellt. +Eine Übersicht dazu findet der Leser auf Seite~\pageref{buch:uebersicht}. + diff --git a/buch/chapters/000-einleitung/speziellefunktionen.tex b/buch/chapters/000-einleitung/speziellefunktionen.tex new file mode 100644 index 0000000..8ca71bc --- /dev/null +++ b/buch/chapters/000-einleitung/speziellefunktionen.tex @@ -0,0 +1,150 @@ +% +% Spezielle Funktionen +% +\subsection*{Spezielle Funktionen} +Der abstrakte Funktionsbegriff auferlegt einer Funktion nur ganz wenige +Einschränkungen. +Damit lässt sich zwar eine mathematische Theorie entwickeln, die +klärt, unter welchen Umständen zusätzliche Eigenschaften wie Stetigkeit +und Differenzierbarkeit zu erwarten sind. +Allgemeine Berechnungen kann man mit diesem Begriff aber nicht durchführen, +seine Anwendbarkeit ist beschränkt. +Praktisch nützlich wird der Funktionsbegriff also erst, wenn man ihn +einschränkt auf anwendungsrelevante Eigenschaften. +Die Mathematik hat in ihrer Geschichte genau dies immer wieder +getan, wie im Folgenden kurz skizziert werden soll. + +% +% Polynome und Wurzeln +% +\subsubsection{Polynome und Wurzeln} +Eine Polynomgleichung wie etwa +\begin{equation} +p(x) = ax^2+bx+c = 0 +\label{buch:einleitung:quadratisch} +\end{equation} +kann manchmal dadurch gelöst werden, dass man die Nullstellen errät +und damit eine Faktorisierung $p(x)=a(x-x_1)(x-x_2)$ konstruiert. +Doch im Allgemeinen wird man die Lösungsformel für quadratische +Gleichungen verwenden, die auf quadratischem Ergänzen basiert. +Es erlaubt die Gleichung~\eqref{buch:einleitung:quadratisch} umzwandeln in +\[ +\biggl(x + \frac{b}{2a}\biggr)^2 += +-\frac{c}{a} + \frac{b^2}{4a^2} += +\frac{b^2-4ac}{4a^2}. +\] +Um diese Gleichung nach $x$ aufzulösen, muss man die inverse Funktion +der Quadratfunktion zur Verfügung haben, die Wurzelfunktion. +Dies ist wohl das älteste Beispiel einer speziellen Funktion, +die man zu dem Zweck eingeführt hat, spezielle algebraische Gleichungen +lösen zu können. +Sie liefert die bekannte Lösungsformel +\[ +x=\frac{-b\pm\sqrt{b^2-4ac}}{2a} +\] +für die quadratische Gleichung. + +% +% Exponential- und Logarithmusfunktion +% +\subsubsection{Exponential- und Logarithmusfunktion} +Durch die Definition der Wurzelfunktion ist das Problem der numerischen +Berechnung der Nullstelle natürlich noch nicht gelöst, aber man hat +ein handliches mathematisches Symbol gewonnen, mit dem man die Lösungen +übersichtlich beschreiben und algebraisch manipulieren kann. +Diese Idee steht hinter allen weiteren in diesem Buch diskutierten +Funktionen: wann immer ein wichtiges mathematisches Konzept sich nicht +direkt durch die bereits entwickelten Funktionen ausdrücken lässt, +erfindet man dafür eine neue Funktion oder Familie von Funktionen. +Beispielsweise hat sich die Darstellung von Zahlen $x$ als Potenzen +einer gemeinsamen Basis, zum Beispiel $x=10^y$, als sehr nützlich +herausgestellt, um Multiplikationen auf die von Hand leichter +ausführbaren Additionen zurückzuführen. +Man braucht also die Fähigkeit, die Abhängigkeit des Exponenten $y$ +von $x$ auszudrücken, mit anderen Worten, man braucht die +Logarithmusfunktion. + +Auch die Logarithmusfunktion erlaubt nicht, die Gleichungen $xe^x=y$ +nach $x$ aufzulösen. +Solche Exponentialgleichungen treten in verschiedenster Form auch in +Anwendungen auf. +Die Lambert-$W$-Funktion, die in Abschnitt~\ref{buch:section:lambertw} +eingeführt wird, löst genau diese Aufgabe. + + +% +% Geometrisch definierte spezielle Funktionen +% +\subsubsection{Geometrisch definierte spezielle Funktionen} +Die trigonometrischen Funktionen entstanden bereits im Altertum +um das Problem der Vermessung der Himmelskugel zu lösen. +Man kann sie aber auch zur Parametrisierung eines Kreises oder +zur Beschreibung von Drehungen mit Drehmatrizen verwenden. +Sie stellen auch eine Zusammenhang zwischen der Bogenlänge +entlang eines Kreises und der zugehörigen Sehne her. +Diese Ideen lassen sich auf eine grössere Klasse von Kurven, +nämlich die Kegelschnitte verallgemeinern. +Diese werden in Kapitel~\ref{buch:chapter:geometrie} eingeführt. +Die Parametrisierungen der Hyperbeln zum Beispiel führt auf +hyperbolische Funktion und macht eine Verbindung zu Exponential- +und Logarithmusfunktion sichtbar. + +% +% Lösungen von Differentialgleichungen +% +\subsubsection{Lösungen von Differentialgleichungen} +Alternativ kann man $\sin x$ und $\cos x$ als spezielle Lösungen der +Differentialgleichung $y''=-y$ verstehen. +Viele andere Funktionen wie die hyperbolischen Funktionen oder die +Bessel-Funktionen sind ebenfalls Lösungen spezieller Differentialgleichungen. + +Auch die Theorie der partiellen Differentialgleichungen, auf die +im Kapitel~\ref{buch:chapter:pde} eingegangen wird, gibt Anlass +zu interessanten Lösungsfunktionen. +Die Separation des Poisson-Problems in Kugelkoordinaten führt zum Beispiel +auf die Kugelfunktionen, mit denen sich beliebige Funktionen auf einer +Kugeloberfläche analysieren und synthetisieren lassen. +Die Lösungen einer linearer gewöhnlicher Differentialgleichung können +oft mit Hilfe von Potenzreihen dargestellt werden. +So kann man zum Beispiel die Potenzreihenentwicklung der Exponentialfunktion +und der trigonometrischen Funktionen finden. +Die Konvergenz einer Potenzreihe wird aber durch Singularitäten +eingeschränkt. +Komplexe Potenzreihen ermöglichen aber, solche Stellen zu ``umgehen''. +Die Theorie der komplex differenzierbaren Funktionen bildet einen +allgemeinen Rahmen, mit solchen Funktionen umzugehen und ist zum +Beispiel nötig, um die Bessel-Funktionen der zweiten Art zu konstruieren, +die ebenfalls Lösungen ger Bessel-Gleichung sind, aber bei $x=0$ +eine Singularität aufweisen. + +% +% Stammfunktionen +% +\subsubsection{Stammfunktionen} +Die Stammfunktion $F(x)$ einer gegebenen Funktion $f(x)$ ist natürlich +auch die Lösung der besonders einfachen Differentialgleichung $F'=f$. +Ein bekanntes Beispiel ist die Stammfunktion der Wahrscheinlichkeitsdichte +\[ +\varphi(x) += +\frac{1}{\sqrt{2\pi}\sigma} e^{-\frac{(x-\mu)^2}{2\sigma^2}}, +\] +der Normalverteilung, für die aber keine geschlossene Darstellung +mit bekannten Funktionen bekannt ist. +Sie kann aber durch die Fehlerfunktion +\[ +\operatorname{erf}(x) += +\frac{2}{\sqrt{\pi}} \int_0^x e^{-t^2}\,dt +\] +dargestellt werden. +Mit dem Risch-Algorithmus kann man nachweisen, dass es tatsächlich +keine Möglichkeit gibt, die Stammfunktion in geschlossener Form durch +die bereits bekannten Funktionen darzustellen, die Definition einer +neuen speziellen Funktion ist also der einzige Ausweg. +Die Fehlerfunktion ist heute in der Standardbibliothek enthalten auf +gleicher Stufe wie Wurzeln, trigonometrische Funktionen, +Exponentialfunktionen oder Logarithmen. + diff --git a/buch/chapters/070-orthogonalitaet/gaussquadratur.tex b/buch/chapters/070-orthogonalitaet/gaussquadratur.tex index 4a25678..480a37d 100644 --- a/buch/chapters/070-orthogonalitaet/gaussquadratur.tex +++ b/buch/chapters/070-orthogonalitaet/gaussquadratur.tex @@ -552,7 +552,7 @@ w(x)=e^{-x} \text{ und } g(x)=f(x)e^x. \] -Dann approximiert $g(x)$ man durch ein Interpolationspolynom, +Dann approximiert man $g(x)$ durch ein Interpolationspolynom, so wie man das bei der Gauss-Quadratur gemacht hat. Als Stützstellen müssen dazu die Nullstellen der Laguerre-Polynome verwendet werden. -- cgit v1.2.1 From 70287f9b87cf4492e639ce2a191708c3265e75a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Fri, 1 Jul 2022 18:40:19 +0200 Subject: complete chapter 9 --- buch/chapters/080-funktionentheorie/analytisch.tex | 33 +++++++++++++++++++++- .../chapters/080-funktionentheorie/anwendungen.tex | 3 ++ buch/chapters/080-funktionentheorie/cauchy.tex | 10 +++++++ buch/chapters/080-funktionentheorie/holomorph.tex | 3 +- 4 files changed, 47 insertions(+), 2 deletions(-) diff --git a/buch/chapters/080-funktionentheorie/analytisch.tex b/buch/chapters/080-funktionentheorie/analytisch.tex index 15ca2e4..3095cc1 100644 --- a/buch/chapters/080-funktionentheorie/analytisch.tex +++ b/buch/chapters/080-funktionentheorie/analytisch.tex @@ -140,7 +140,38 @@ von $\mathbb{C}$ gegen $f(z)=\overline{z}$ konvergiert. % \subsection{Konvergenzradius \label{buch:funktionentheorie:subsection:konvergenzradius}} +In der Theorie der Potenzreihen, die man in einem grundlegenden +Analysiskurs lernt, wird auch genauer untersucht, wie gross +eine Umgebung des Punktes $z_0$ ist, in der die Potenzreihe +im Punkt $z_0$ einer analytischen Funktion konvergiert. -% XXX auf dem Rand des Konvergenzkreises gibt es immer eine Singularität +\begin{satz} +\label{buch:funktionentheorie:satz:konvergenzradius} +Die Potenzreihe +\[ +f(z) = \sum_{k=0}^\infty a_0(z-z_0)^k +\] +ist konvergent auf einem Kreis mit Radius $\varrho$ und +\[ +\frac{1}{\varrho} += +\limsup_{n\to\infty} \sqrt[k]{|a_k|}. +\] +Falls $a_k\ne 0$ für alle $k$ und der folgende Grenzwert existiert, +dann gilt auch +\[ +\varrho = \lim_{n\to\infty} \biggl| \frac{a_n}{a_{n+1}}\biggr|. +\] +\end{satz} + +\begin{definition} +\label{buch:funktionentheorie:definition:konvergenzradius} +\index{Konvergenzradius}% +Der in Satz~\ref{buch:funktionentheorie:satz:konvergenzradius} +Radius $\varrho$ des Konvergenzkreises heisst {\em Konvergenzradius}. +\end{definition} +Man kann auch zeigen, dass der Konvergenzkreis immer so gross ist, +dass auf seinem Rand ein Wert $z$ liegt, für den die Potenzreihe nicht +konvergiert. diff --git a/buch/chapters/080-funktionentheorie/anwendungen.tex b/buch/chapters/080-funktionentheorie/anwendungen.tex index 04c597e..440d2d3 100644 --- a/buch/chapters/080-funktionentheorie/anwendungen.tex +++ b/buch/chapters/080-funktionentheorie/anwendungen.tex @@ -6,6 +6,9 @@ \section{Anwendungen \label{buch:funktionentheorie:section:anwendungen}} \rhead{Anwendungen} +In diesem Abschnitt wird die Theorie der komplex differenzierbaren +Funktionen dazu verwendet, einige früher bereits verwendete oder +angedeutete Resultate herzuleiten. \input{chapters/080-funktionentheorie/gammareflektion.tex} \input{chapters/080-funktionentheorie/carlson.tex} diff --git a/buch/chapters/080-funktionentheorie/cauchy.tex b/buch/chapters/080-funktionentheorie/cauchy.tex index 21d8dcf..58504db 100644 --- a/buch/chapters/080-funktionentheorie/cauchy.tex +++ b/buch/chapters/080-funktionentheorie/cauchy.tex @@ -6,6 +6,16 @@ \section{Cauchy-Integral \label{buch:funktionentheorie:section:cauchy}} \rhead{Cauchy-Integral} +In Abschnitt~\ref{buch:funktionentheorie:section:holomorph} hat sich +bereits gezeigt, dass komplexe Differenzierbarkeit einer komplexen +Funktion weit mehr Einschränkungen auferlegt als reelle Differenzierbarkeit. +Sowohl der Real- wie auch der Imaginärteil müssenharmonische Funktionen +sein. +In diesem Abschnitt wird die Cauchy-In\-te\-gral\-formel etabliert, die +sogar zeigt, dass eine komplex differenzierbare Funktion bereits durch +die Werte auf dem Rand eines einfach zusammenhängenden Gebietes +gegeben ist, beliebig oft differenzierbar ist und ausserdem immer +analytisch ist. % % Wegintegrale und die Cauchy-Formel diff --git a/buch/chapters/080-funktionentheorie/holomorph.tex b/buch/chapters/080-funktionentheorie/holomorph.tex index c87b083..dfe2744 100644 --- a/buch/chapters/080-funktionentheorie/holomorph.tex +++ b/buch/chapters/080-funktionentheorie/holomorph.tex @@ -83,6 +83,7 @@ Der Term $x-x_0$ und die Gleichung \eqref{komplex:abldef} sind aber auch für komplexe Argument sinnvoll, wir definieren daher \begin{definition} +\label{buch:funktionentheorie:definition:differenzierbar} Die komplexe Funktion $f(z)$ heisst im Punkt $z_0$ komplex differenzierbar und hat die komplexe Ableitung $f'(z_0)\in\mathbb C$, wenn \index{komplex differenzierbar}% @@ -258,11 +259,11 @@ Der Operator \frac{\partial^2}{\partial y^2} \] heisst der {\em Laplace-Operator} in zwei Dimensionen. - \index{Laplace-Operator}% \end{definition} \begin{definition} +\label{buch:funktionentheorie:definition:harmonisch} Eine Funktion $h(x,y)$ von zwei Variablen heisst {\em harmonisch}, wenn sie die Gleichung \[ -- cgit v1.2.1 From 7e3f893dcf57b6114b7e9124e77f56c59e1e067d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Fri, 1 Jul 2022 19:29:32 +0200 Subject: chapter PDE completed --- buch/chapters/090-pde/gleichung.tex | 150 ++++++++++++++++++++++++++++++------ 1 file changed, 128 insertions(+), 22 deletions(-) diff --git a/buch/chapters/090-pde/gleichung.tex b/buch/chapters/090-pde/gleichung.tex index 583895d..271dc44 100644 --- a/buch/chapters/090-pde/gleichung.tex +++ b/buch/chapters/090-pde/gleichung.tex @@ -6,10 +6,26 @@ \section{Gleichungen und Randbedingungen \label{buch:pde:section:gleichungen-und-randbedingungen}} \rhead{Gebiete, Gleichungen und Randbedingungen} +Gewöhnliche Differentialgleichungen sind immer auf einem +Intervall als Definitionsgebiet definiert. +Partielle Differentialgleichungen sind Gleichungen, die verschiedene +partielle Ableitungen einer Funktion mehrerer Variablen involvieren, +das Definitionsgebiet ist daher immer eine höherdimensionale Teilmenge +von $\mathbb{R}^n$. +Sowohl das Gebiet wie auch dessen Rand können wesentlich komplexer sein. +Eine sorgfältige Definition ist unabdingbar, um Widersprüchen vorzubeugen. +% +% Gebiete, Differentialoperatoren, Randbedingungen +% \subsection{Gebiete, Differentialoperatoren, Randbedingungen} +In diesem Abschnitt sollen die Begriffe geklärt werden, die zur +korrekten Formulierung eines partiellen Differentialgleichungsproblems +notwendig sind. - +% +% Gebiete +% \subsubsection{Gebiete} Gewöhnliche Differentialgleichungen haben nur eine unabhängige Variable, die gesuchte Lösungsfunktion ist auf eine @@ -20,6 +36,7 @@ ermöglicht wesentlich vielfältigere und kompliziertere Situationen. \begin{definition} +\label{buch:pde:definition:gebiet} Ein Gebiet $G\subset\mathbb{R}^n$ ist eine offene Teilmenge von $\mathbb{R}^n$, d.~h.~für jeden Punkt $x\in G$ gibt es eine kleine Umgebung @@ -29,8 +46,12 @@ U_{\varepsilon}(x) \{y\in\mathbb{R}^n\mid |x-y|<\varepsilon\} \), die ebenfalls in $G$ in enthalten ist, also $U_{\varepsilon}(x)\subset G$. +\index{Gebiet}% \end{definition} +% +% Differentialoperatoren +% \subsubsection{Differentialoperatoren} Eine gewöhnliche Differentialgleichung für eine Funktion ist eine Beziehung zwischen den Werten der Funktion und ihrer @@ -66,9 +87,13 @@ schreiben. Die Koeffizienten $a$, $b_i$, $c_{ij}$ können dabei durchaus auch Funktionen der unabhängigen Variablen sein. +% +% Laplace-Operator +% \subsubsection{Laplace-Operator} -Der Laplace-Operator hat in einem karteischen Koordinatensystem die +Der {\em Laplace-Operator} hat in einem karteischen Koordinatensystem die Form +\index{Laplace-Operator}% \[ \Delta = @@ -86,28 +111,109 @@ nicht ändert. Man könnte sagen, der Laplace-Operator ist symmetrisch bezüglich aller Bewegungen des Raumes. +% +% Wellengleichung +% \subsubsection{Wellengleichung} +Da die physikalischen Gesetze invariant sein müssen unter solchen +Bewegungen, ist zu erwarten, dass der Laplace-Operator in partiellen +Differentialgleichungen +Als Beispiel betrachten wir die Ausbreitung einer Welle, welche sich +in einem Medium mit der Geschwindigkeit $c$ ausbreitet. +Ist $u(x,t)$ die Auslenkung der Welle im Punkt $x\in\mathbb{R}^n$ +zur Zeit $t\in\mathbb{R}$, dann erfüllt die Funktion $u(x,t)$ +die partielle Differentialgleichung +\begin{equation} +\frac{1}{c^2} +\frac{\partial^2 u}{\partial t^2} += +\Delta u. +\label{buch:pde:eqn:waveequation} +\end{equation} +In dieser Gleichung treten nicht nur die partiellen Ableitungen +nach den Ortskoordinaten auf, die der Laplace-Operator miteinander +verknüpft. +Die Funktion $u(x,t)$ ist definiert auf einem Gebiet in +$\mathbb{R}^{n}\times\mathbb{R}=\mathbb{R}^{n+1}$ mit den Koordinaten +$(x_1,\dots,x_n,t)$. +Der Gleichung~\eqref{buch:pde:eqn:waveequation} ist daher eigentlich +die Gleichung +\[ +\square u = 0 +\qquad\text{mit}\quad +\square += +\frac{1}{c^2}\frac{^2}{\partial t^2} +- +\Delta += +\frac{1}{c^2}\frac{\partial^2}{\partial t^2} +- +\frac{\partial^2}{\partial x_1^2} +- +\frac{\partial^2}{\partial x_2^2} +-\dots- +\frac{\partial^2}{\partial x_n^2} +\] +wird. +Der Operator $\square$ heisst auch d'Alembert-Operator. +\index{dAlembertoperator@d'Alembert-Operator}% -\subsubsection{Eigenfunktionen} -Eine besonders einfache - -\subsubsection{Trigonometrische Funktionen} -Die trigonometrischen Funktionen - -\subsection{Orthogonalität} -In der linearen Algebra lernt man, dass die Eigenvektoren einer -symmetrischen Matrix zu verschiedenen Eigenwerten orthgonal sind. -Dies hat zur Folge, dass die Transformation in eine Eigenbasis -mit einer orthogonalen Matrix möglich ist, was wiederum die Basis -von Diagonalisierungsverfahren wie dem Jacobi-Verfahren ist. - -Das Separationsverfahren wird zeigen, wie sich das Finden einer -Lösung der Wellengleichung auf Lösungen des Eigenwertproblems -$\Delta u = \lambda u$ zurückführen lässt. -Damit stellt sich die Frage, welche Eigenschaften - +% +% Randbedingungen +% +\subsubsection{Randbedingungen} +Die Differentialgleichung oder der Differentialoperator legen die +Lösung nicht fest. +Wie bei gewöhnlichen Differentialgleichungen ist dazu die Spezifikation +geeigneter Randbedingungen nötig. -\subsubsection{Gewöhnliche Differentialglichung} +\begin{definition} +\label{buch:pde:definition:randbedingungen} +Eine {\em Randbedingung} für das Gebiet $\Omega$ ist eine Teilmenge +$F\subset\partial\Omega$ sowie eine auf $F$ definierte Funktion +$f\colon F\to\mathbb{R}$. +Eine Funktion $u\colon \overline{\Omega} \to\mathbb{R}$ erfüllt eine +{\em Dirichlet-Randbedingung}, wenn +\index{Dirichlet-Randbedingung}% +\index{Randbedingung!Dirichlet-}% +\( +u(x) = f(x) +\) +für $x\in F$. +Sie erfüllt eine {\em Neumann-Randbedingung}, wenn +\index{Neumann-Randbedingung}% +\index{Randbedingung!Neumann-}% +\[ +\frac{\partial u}{\partial n} += +f(x)\qquad\text{für $x\in F$}. +\] +Dabei ist +\[ +\frac{\partial u}{\partial n} += +\frac{d}{dt} +u(x+tn) +\bigg|_{t=0} += +\operatorname{grad}u\cdot n +\] +\index{Normalableitung}% +die {\em Normalableitung}, die Richtungsableitung in Richtung des +Vektors $n$, der senkrecht ist auf dem Rand $\partial\Omega$ von +$\Omega$. +\end{definition} +Die Vorgabe nur von Ableitungen kann natürlich die Lösung $u(x)$ +einer linearen partiellen Differentialgleichung nicht eindeutig +festlegen, dazu ist noch mindestens ein Funktionswert notwendig. +Die Vorgabe von anderen Ableitungen in Richtungen tangential an den +Rand liefert keine neue Information, denn ausgehend von dem einen +Funktionswert auf dem Rand kann man durch Integration entlang +einer Kurve auf dem Rand eine Neumann-Randbedingung konstruieren, +die die gleiche Information beinhaltet wie Anforderungen an die +tangentialen Ableitungen. +Dirichlet- und Neumann-Randbedingungen sind daher die einzigen +sinnvollen linearen Randbedingungen. -\subsubsection{$n$-dimensionaler Fall} -- cgit v1.2.1 From 931871e8c8e9b266b9b626d816a803bbd2c56653 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Fri, 1 Jul 2022 20:55:53 +0200 Subject: more index stuff --- buch/chapters/010-potenzen/chapter.tex | 4 ++ buch/chapters/010-potenzen/loesbarkeit.tex | 2 + buch/chapters/010-potenzen/polynome.tex | 13 +++++ buch/chapters/010-potenzen/potenzreihen.tex | 14 +++++- buch/chapters/010-potenzen/tschebyscheff.tex | 8 +++- buch/chapters/020-exponential/lambertw.tex | 5 +- buch/chapters/030-geometrie/hyperbolisch.tex | 1 + buch/chapters/030-geometrie/trigonometrisch.tex | 1 + buch/chapters/040-rekursion/beta.tex | 2 + buch/chapters/040-rekursion/gamma.tex | 3 ++ buch/chapters/040-rekursion/hypergeometrisch.tex | 4 ++ buch/chapters/050-differential/bessel.tex | 4 ++ .../chapters/050-differential/hypergeometrisch.tex | 2 + .../050-differential/potenzreihenmethode.tex | 2 + buch/chapters/060-integral/eulertransformation.tex | 2 + buch/chapters/060-integral/fehlerfunktion.tex | 4 +- .../070-orthogonalitaet/gaussquadratur.tex | 2 + buch/chapters/070-orthogonalitaet/legendredgl.tex | 3 ++ buch/chapters/070-orthogonalitaet/rekursion.tex | 1 + buch/chapters/070-orthogonalitaet/rodrigues.tex | 6 +++ buch/chapters/070-orthogonalitaet/saev.tex | 1 + buch/chapters/070-orthogonalitaet/sturm.tex | 21 ++++++++- buch/chapters/080-funktionentheorie/analytisch.tex | 55 ++++++++++++---------- buch/chapters/080-funktionentheorie/carlson.tex | 2 + buch/chapters/080-funktionentheorie/cauchy.tex | 1 + .../080-funktionentheorie/gammareflektion.tex | 1 + buch/chapters/080-funktionentheorie/holomorph.tex | 6 ++- .../080-funktionentheorie/singularitaeten.tex | 9 ++++ buch/chapters/110-elliptisch/dglsol.tex | 5 ++ buch/chapters/110-elliptisch/ellintegral.tex | 7 ++- buch/chapters/110-elliptisch/elltrigo.tex | 1 + 31 files changed, 157 insertions(+), 35 deletions(-) diff --git a/buch/chapters/010-potenzen/chapter.tex b/buch/chapters/010-potenzen/chapter.tex index 2628e33..a1cce60 100644 --- a/buch/chapters/010-potenzen/chapter.tex +++ b/buch/chapters/010-potenzen/chapter.tex @@ -18,10 +18,13 @@ Diskussion rechtfertigen. \begin{enumerate} \item Die Umkehrfunktion der Potenzfunktion sind viel schwieriger zu +\index{Potenzfunktion}% berechnen und können als eine besonders einfache Art von speziellen Funktionen betrachtet werden. Die in Abschnitt~\ref{buch:potenzen:section:loesungen} definierten Wurzelfunktionen sind der erste Schritt zur Lösung von Polynomgleichungen. +\index{Wurzelfunktion}% +\index{Polynomgleichung}% \item Es lassen sich interessante Familien von Funktionen definieren, die zum Teil aus Polynomen bestehen. @@ -32,6 +35,7 @@ Abschnitt~\ref{buch:polynome:section:tschebyscheff} vorgestellt. \item Alles speziellen Funktionen sind analytisch, sie haben eine konvergente Potenzreihenentwicklung. +\index{Potenzreihe}% Die Partialsummen einer Potenzreihenentwicklung sind Approximationen An die wichtigsten Eigenschaften von Potenzreihen wird in Abschnitt~\ref{buch:potenzen:section:potenzreihen} erinnert. diff --git a/buch/chapters/010-potenzen/loesbarkeit.tex b/buch/chapters/010-potenzen/loesbarkeit.tex index f93a84b..a9f273a 100644 --- a/buch/chapters/010-potenzen/loesbarkeit.tex +++ b/buch/chapters/010-potenzen/loesbarkeit.tex @@ -34,6 +34,7 @@ Der Fundamentalsatz der Algebra zeigt, dass $\mathbb{C}$ alle Nullstellen von Polynomen enthält. \begin{satz}[Gauss] +\index{Satz!Fundamentalsatz der Algebra}% \index{Fundamentalsatz der Algebra}% \label{buch:potenzen:satz:fundamentalsatz} Jedes Polynom $p(x)=a_nx^n+\dots + a_2x^2 + a_1x + a_0\in\mathbb{C}[x]$ @@ -157,6 +158,7 @@ höheren Grades nicht mit einer Lösung durch Wurzelausdrücke rechnen kann. \begin{satz}[Abel] +\index{Satz!von Abel} \label{buch:potenzen:satz:abel} Für Polynomegleichungen vom Grad $n\ge 5$ gibt es keine allgemeine Lösung durch Wurzelausdrücke. diff --git a/buch/chapters/010-potenzen/polynome.tex b/buch/chapters/010-potenzen/polynome.tex index 9edb012..ce5e521 100644 --- a/buch/chapters/010-potenzen/polynome.tex +++ b/buch/chapters/010-potenzen/polynome.tex @@ -19,6 +19,7 @@ wobei $a_n\ne 0$ sein muss. Das Polynom heisst {\em normiert}, wenn $a_n=1$ ist. \index{normiert}% \index{Grad eines Polynoms}% +\index{Polynom!Grad}% Die Menge aller Polynome mit Koeffizienten in der Menge $K$ wird mit $K[x]$ bezeichnet. \end{definition} @@ -65,6 +66,8 @@ Berechnungsverfahren für die speziellen Funktionen zu konstruieren. Dank des folgenden Satzes kann dies immer mit Polynomen geschehen. \begin{satz}[Weierstrass] +\index{Satz!Weierstrass}% +\index{Weierstrasse, Karl}% \label{buch:potenzen:satz:weierstrass} \index{Weierstrass, Satz von}% Eine auf einem kompakten Intervall $[a,b]$ stetige Funktion $f(x)$ @@ -74,7 +77,9 @@ approximieren. Der Satz sagt in dieser Form nichts darüber aus, wie die Approximationspolynome konstruiert werden sollen. +\index{Approximationspolynom}% Von Bernstein gibt es konstruktive Beweise dieses Satzes, +\index{Bernstein-Polynom}% welche auch explizit eine Folge von Approximationspolynomen konstruieren. In der späteren Entwicklung werden wir für die meisten @@ -127,6 +132,7 @@ Ein gemeinsamer Teiler zweier Polynome $a(x)$ und $b(x)$ ist ein Polynom $g(x)$, welches beide Polynome teilt, also $g(x)\mid a(x)$ und $g(x)\mid b(x)$. \index{grösster gemeinsamer Teiler}% +\index{Polynome!grösster gemeinsamer Teiler}% Ein Polynom $g(x)$ heisst {\em grösster gemeinsamer Teiler} von $a(x)$ und $b(x)$, wenn jeder andere gemeinsame Teiler $f(x)$ von $a(x)$ und $b(x)$ auch ein Teiler von $g(x)$ ist. @@ -180,6 +186,9 @@ Dann ist $g(x)=r_{m-1}(x)$ ein grösster gemeinsamer Teiler. % Der erweiterte euklidische Algorithmus % \subsubsection{Der erweiterte euklidische Algorithmus} +\index{Polynome!erweiterter euklidischer Algorithmus}% +\index{erweiterter euklidischer Algorithmus}% +\index{euklidischer Algorithmus!erweitert}% Die Konstruktion der Folgen $a_n(x)$ und $b_n(x)$ kann in Matrixform kompakter geschrieben werden als \[ @@ -401,8 +410,11 @@ p_n so dass $p_n=0$ sein muss, was schliesslich dazu führt, dass alle Koeffizienten von $a(x)-b(x)$ verschwinden. Daraus folgt das Prinzip des Koeffizientenvergleichs: +\index{Koeffizientenvergleich}% +\index{Polynome!Koeffizientenvergleich}% \begin{satz}[Koeffizientenvergleich] +\index{Satz!Koeffizientenvergleich}% \label{buch:polynome:satz:koeffizientenvergleich} Zwei Polynome $a(x)$ und $b(x)$ stimmen genau dann überein, wenn sie die gleichen Koeffizienten haben. @@ -436,6 +448,7 @@ und $n$ Additionen. Die Anzahl nötiger Multiplikationen kann mit dem folgenden Vorgehen reduziert werden, welches auch als das {\em Horner-Schema} bekannt ist. \index{Horner-Schema}% +\index{Polynome!Horner-Schema}% Statt erst am Schluss alle Terme zu addieren, addiert man so früh wie möglich. Zum Beispiel multipliziert man $(a_nx+a_{n-1})$ mit $x$, was auf diff --git a/buch/chapters/010-potenzen/potenzreihen.tex b/buch/chapters/010-potenzen/potenzreihen.tex index a003fcb..994f99f 100644 --- a/buch/chapters/010-potenzen/potenzreihen.tex +++ b/buch/chapters/010-potenzen/potenzreihen.tex @@ -105,6 +105,7 @@ Für $|z|<1$ geht $z^n\to 0$ für $n\to\infty$, die Partialsummen konvergieren und wir erhalten das Resultat des folgenden Satzes. \begin{satz} +\index{Satz!geometrische Reihe}% \label{buch:polynome:satz:geometrischereihe} Die geometrische Reihe $a+az+az^2+\dots$ konvergiert für $|z|<1$ und hat die Summe @@ -124,6 +125,7 @@ als konvergent erkannten Reihen nachweisbar. Dies ist der Inhalt des folgenden, wohlbekannten Majorantenkriteriums. \begin{satz}[Majorantenkriterium] +\index{Satz!Majorantenkriterium}% \label{buch:polynome:satz:majorantenkriterium} \index{Majorantenkriterium} Seien $a_k$ und $b_k$ die Glieder zweier unendlicher Reihen. @@ -142,6 +144,7 @@ Potenzreihen mit der geometrischen Reihe zu vergleichen und liefert damit einfach anzuwende Kriterien für die Konvergenz. \begin{satz}[Quotientenkriterium] +\index{Satz!Quotientenkriterium}% \label{buch:polynome:satz:quotientenkriterium} \index{Quotientenkriterium}% Eine Reihe @@ -175,6 +178,7 @@ die unter der gegebenen Voraussetzung konvergiert. \end{proof} \begin{satz}[Wurzelkriterium] +\index{Satz!Wurzelkriterium}% \label{buch:polynome:satz:wurzelkriterium} \index{Wurzelkriterium} Falls @@ -203,6 +207,9 @@ das Reststück der Reihe ab Index $N$ ist daher wieder majorisiert durch eine konvergente geometrische Reihe. \end{proof} +% +% Konvergenzradius +% \subsubsection{Konvergenzradius} Das Quotienten- und das Wurzel-Kriterium ist auf beliebige Reihen anwendbar, es berücksichtigt nicht, dass in einer Potenzreihe @@ -224,6 +231,7 @@ um den Punkt $z_0$ ist \end{definition} \begin{satz} +\index{Satz!Konvergenzradius}% \label{buch:polynome:satz:konvergenzradius} Der Konvergenzradius $\varrho$ einer Potenzreihe $\sum_{k=0}^\infty a_k(z-z_0)^k$ ist @@ -420,7 +428,7 @@ $z_0$ ist die Summe \frac{f^{(k)}(z_0)}{k!} (z-z_0)^k \label{buch:polynome:eqn:taylor-polynom} \end{equation} -\index{Taylor-Reihe} +\index{Taylor-Reihe}% Die {\em Taylor-Reihe} der Funktion $f(z)$ ist die Reihe \begin{equation} \mathscr{T}_{z_0}f (z) @@ -431,7 +439,9 @@ Die {\em Taylor-Reihe} der Funktion $f(z)$ ist die Reihe \end{equation} \end{definition} - +% +% Analytische Funktionen +% \subsubsection{Analytische Funktionen} Das Taylor-Polynom $\mathscr{T}_{z_0}^nf(z)$ hat an der Stelle $z_0$ die gleichen Funktionswerte und Ableitungen wie die Funktion $f(z)$, diff --git a/buch/chapters/010-potenzen/tschebyscheff.tex b/buch/chapters/010-potenzen/tschebyscheff.tex index 780be1b..ccc2e97 100644 --- a/buch/chapters/010-potenzen/tschebyscheff.tex +++ b/buch/chapters/010-potenzen/tschebyscheff.tex @@ -250,6 +250,7 @@ lässt sich auch eine Multiplikationsformel ableiten. \index{Multiplikationsformel}% \begin{satz} +\index{Satz!Multiplikationsformel für Tschebyscheff-Polynome}% Es gilt \begin{align} T_m(x)T_n(x)&=\frac12\bigl(T_{m+n}(x) + T_{m-n}(x)\bigr) @@ -306,7 +307,7 @@ Damit ist auch \eqref{buch:potenzen:tschebyscheff:mult2} bewiesen. % % Differentialgleichung % -\subsubsection{Differentialgleichung} +\subsubsection{Tschebyscheff-Differentialgleichung} Die Ableitungen der Tschebyscheff-Polynome sind \begin{align*} T_n(x) @@ -374,7 +375,10 @@ Die Tschebyscheff-Polynome sind Lösungen der Differentialgleichung (1-x^2) T_n''(x) -x T_n'(x) +n^2 T_n(x) = 0. \label{buch:potenzen:tschebyscheff:dgl} \end{equation} - +Die Differentialgleichung~\eqref{buch:potenzen:tschebyscheff:dgl} +heisst {\em Tschebyscheff-Differentialgleichung}. +\index{Tschebyscheff-Differentialgleichung}% +\index{Differentialgleichung!Tschebyscheff-}% diff --git a/buch/chapters/020-exponential/lambertw.tex b/buch/chapters/020-exponential/lambertw.tex index 9077c6f..d78fdc3 100644 --- a/buch/chapters/020-exponential/lambertw.tex +++ b/buch/chapters/020-exponential/lambertw.tex @@ -220,6 +220,7 @@ mit $P_1(t)=1$. % \subsubsection{Differentialgleichung und Stammfunktion} \index{Lambert-W-Funktion@Lambert-$W$-Funktion!Differentialgleichung}% +\index{Differentialgleichung!der Lambert-$W$-Funktion}% Die Ableitungsformel \eqref{buch:lambert:eqn:ableitung} bedeutet auch, dass die $W$-Funktion eine Lösung der Differentialgleichung \[ @@ -355,6 +356,8 @@ eigenen Implementation behelfen. Für $x>-1$ ist die Funktion $W(x)$ ist die Umkehrfunktion der streng monoton wachsenden und konvexen Funktion $f(x)=xe^x$. In dieser Situation konvergiert der Newton-Algorithmus zur Bestimmung +\index{Newton-Algorithmus}% +\index{Algorithmus!Newton-}% der Nullstelle $x=W_0(y)$ von $f(x)-y$ für alle Werte von $y>-1/e$. Für $W_{-1}(y)$ ist die Situation etwas komplizierter, da für $x<-1$ die Funktion $f(x)$ nicht konvex ist. @@ -386,7 +389,7 @@ bestimmt werden. \subsubsection{GNU scientific library} Die Lambert $W$-Funktionen $W_0(x)$ und $W_{-1}(x)$ sind auch in der GNU scientific library \cite{buch:library:gsl} implementiert. - +\index{GNU scientifi library}% diff --git a/buch/chapters/030-geometrie/hyperbolisch.tex b/buch/chapters/030-geometrie/hyperbolisch.tex index 72c2cb4..2938316 100644 --- a/buch/chapters/030-geometrie/hyperbolisch.tex +++ b/buch/chapters/030-geometrie/hyperbolisch.tex @@ -355,6 +355,7 @@ heissen der {\em hyperbolische Tangens} und der {\em hyperbolische Kotangens}. \end{definition} \begin{satz} +\index{Satz!hyperbolische Gruppe}% \label{buch:geometrie:hyperbolisch:Hparametrisierung} Die orientierungserhaltenden $2\times 2$-Matrizen, die das Minkowski-Skalarprodukt invariant lassen und die Zeitrichtung diff --git a/buch/chapters/030-geometrie/trigonometrisch.tex b/buch/chapters/030-geometrie/trigonometrisch.tex index 047e6cb..643c8f2 100644 --- a/buch/chapters/030-geometrie/trigonometrisch.tex +++ b/buch/chapters/030-geometrie/trigonometrisch.tex @@ -394,6 +394,7 @@ D_{\alpha}D_{\beta} Aus dem Vergleich der beiden Matrizen liest man die Additionstheoreme. \begin{satz} +\index{Satz!Drehmatrizen}% Für $\alpha,\beta\in\mathbb{R}$ gilt \begin{align*} \sin(\alpha\pm\beta) diff --git a/buch/chapters/040-rekursion/beta.tex b/buch/chapters/040-rekursion/beta.tex index 35ff758..20e3f0e 100644 --- a/buch/chapters/040-rekursion/beta.tex +++ b/buch/chapters/040-rekursion/beta.tex @@ -234,6 +234,7 @@ Durch Einsetzen der Integralformel im Ausdruck Satz. \begin{satz} +\index{Satz!Beta-Funktion und Gamma-Funktion}% Die Beta-Funktion kann aus der Gamma-Funktion nach \begin{equation} B(x,y) = \frac{\Gamma(x)\Gamma(y)}{\Gamma(x+y)} @@ -423,6 +424,7 @@ Die trigonometrische Substitution kann dazu verwendet werden, die Legendresche Verdoppelungsformel für die Gamma-Funktion herzuleiten. \begin{satz}[Legendre] +\index{Satz!Verdoppelungsformel@Verdoppelungsformel für $\Gamma(x)$}% \[ \Gamma(x)\Gamma(x+{\textstyle\frac12}) = diff --git a/buch/chapters/040-rekursion/gamma.tex b/buch/chapters/040-rekursion/gamma.tex index 2b0700e..7f19637 100644 --- a/buch/chapters/040-rekursion/gamma.tex +++ b/buch/chapters/040-rekursion/gamma.tex @@ -240,6 +240,7 @@ Durch Iteration der Rekursionsformel für $\Gamma(x)$ folgt jetzt Damit folgt \begin{satz} +\index{Satz!Pochhammer-Symbol@Pochhammer-Symbol und $\Gamma(x)$}% \label{buch:rekursion:gamma:satz:gamma-pochhammer} Die Rekursionsformel für die Gamma-Funktion kann geschrieben werden als \[ @@ -344,6 +345,7 @@ in den Zähler zu bringen, so dass er der Konvergenz etwas nachhilft. Wir berechnen daher den Kehrwert $1/\Gamma(x)$. \begin{satz} +\index{Satz!Produktformel@Produktformel für $\Gamma(x)$}% \label{buch:rekursion:gamma:satz:produktformel} Der Kehrwert der Gamma-Funktion kann geschrieben werden als \begin{equation} @@ -695,6 +697,7 @@ Laplace-Transformation der Potenzfunktion zu berechnen. \index{Laplace-Transformierte der Potenzfunktion}% \begin{satz} +\index{Satz!Laplace-Transformierte der Potenzfunktion}% Die Laplace-Transformierte der Potenzfunktion $f(t)=t^\alpha$ ist \[ (\mathscr{L}f)(s) diff --git a/buch/chapters/040-rekursion/hypergeometrisch.tex b/buch/chapters/040-rekursion/hypergeometrisch.tex index 3b72ffa..13ba3b2 100644 --- a/buch/chapters/040-rekursion/hypergeometrisch.tex +++ b/buch/chapters/040-rekursion/hypergeometrisch.tex @@ -68,6 +68,7 @@ oder Binomialkoeffizienten definiert sind, wie die beiden folgenden Sätze zeigen. \begin{satz} +\index{Satz!Quotienten von Fakultäten}% \label{buch:rekursion:hypergeometrisch:satz:fakquo} Der Quotient aufeinanderfolgender Folgenglieder der Folge $c_k=(a+bk)!$ ist der ein Polynom vom Grad $b$. @@ -89,6 +90,7 @@ Das Pochhammer-Symbol hat $b$ Faktoren, es ist ein Polynom vom Grad $b$. \end{proof} \begin{satz} +\index{Satz!Quotienten von Binomialkoeffizienten}% \label{buch:rekursion:hypergeometrisch:satz:binomquo} Die Quotienten aufeinanderfolgender Werte der Binomialkoeffizienten \[ @@ -432,6 +434,7 @@ Definition~\ref{buch:rekursion:hypergeometrisch:def} offensichtlichen Regeln: \begin{satz}[Permutationsregel] +\index{Satz!Permutationsregel für hypergeometrische Funktionen}% \label{buch:rekursion:hypergeometrisch:satz:permuationsregel} Sei $\pi$ eine beliebige Permutation der Zahlen $1,\dots,p$ und $\sigma$ eine beliebige Permutation der Zahlen $1,\dots,q$, dann ist @@ -454,6 +457,7 @@ a_{\pi(1)},\dots,a_{\pi(p)}\\b_{\sigma(1)},\dots,b_{\sigma(q)} \end{satz} \begin{satz}[Kürzungsformel] +\index{Satz!Kürzungsformel für hypergeometrische Funktionen}% \label{buch:rekursion:hypergeometrisch:satz:kuerzungsregel} Stimmt einer der Koeffizienten $a_k$ mit einem der Koeffizienten $b_i$ überein, dann können sie weggelassen werden: diff --git a/buch/chapters/050-differential/bessel.tex b/buch/chapters/050-differential/bessel.tex index 4e1c58c..ac509ba 100644 --- a/buch/chapters/050-differential/bessel.tex +++ b/buch/chapters/050-differential/bessel.tex @@ -28,6 +28,8 @@ Die Besselsche Differentialgleichung ist die Differentialgleichung x^2\frac{d^2y}{dx^2} + x\frac{dy}{dx} + (x^2-\alpha^2)y = 0 \label{buch:differentialgleichungen:eqn:bessel} \end{equation} +\index{Differentialgleichung!Besselsche}% +\index{Besselsche Differentialgleichung}% zweiter Ordnung für eine auf dem Interval $[0,\infty)$ definierte Funktion $y(x)$. Der Parameter $\alpha$ ist eine beliebige komplexe Zahl $\alpha\in \mathbb{C}$, @@ -41,6 +43,7 @@ Die Besselsche Differentialgleichung \eqref{buch:differentialgleichungen:eqn:bessel} kann man auch als Eigenwertproblem für den Bessel-Operator \index{Bessel-Operator}% +\index{Operator!Bessel-}% \begin{equation} B = x^2\frac{d^2}{dx^2} + x\frac{d}{dx} + x^2 \label{buch:differentialgleichungen:bessel-operator} @@ -468,6 +471,7 @@ Die erzeugende Funktion kann dazu verwendet werden, das Additionstheorem für die Besselfunktionen zu beweisen. \begin{satz} +\index{Satz!Additionstheorem für Besselfunktionen}% Für $l\in\mathbb{Z}$ und $x,y\in\mathbb{R}$ gilt \[ J_l(x+y) = \sum_{m=-\infty}^\infty J_m(x)J_{l-m}(y). diff --git a/buch/chapters/050-differential/hypergeometrisch.tex b/buch/chapters/050-differential/hypergeometrisch.tex index 87b9318..2fe43c1 100644 --- a/buch/chapters/050-differential/hypergeometrisch.tex +++ b/buch/chapters/050-differential/hypergeometrisch.tex @@ -371,6 +371,7 @@ $c$ darf also kein natürliche Zahl $\ge 2$ sein. Wir fassen die Resultate dieses Abschnitts im folgenden Satz zusammen. \begin{satz} +\index{Satz!Lösung der eulerschen hypergeometrischen Differentialgleichung}% Die eulersche hypergeometrische Differentialgleichung \begin{equation} x(1-x)\frac{d^2y}{dx^2} @@ -906,6 +907,7 @@ Funktion wohldefiniert. Wir fassen diese Resultat zusammen: \begin{satz} +\index{Satz!1f1@Differentialgleichung von $\mathstrut_1F_1$}% \label{buch:differentialgleichungen:satz:1f1-dgl-loesungen} Die Differentialgleichung \[ diff --git a/buch/chapters/050-differential/potenzreihenmethode.tex b/buch/chapters/050-differential/potenzreihenmethode.tex index d046f06..9f2e0a6 100644 --- a/buch/chapters/050-differential/potenzreihenmethode.tex +++ b/buch/chapters/050-differential/potenzreihenmethode.tex @@ -44,6 +44,7 @@ Tatsächlich gilt der folgende sehr viel allgemeinere Satz von Cauchy und Kowalevskaja: \begin{satz}[Cauchy-Kowalevskaja] +\index{Satz!von Cauchy-Kowalevskaja}% Eine partielle Differentialgleichung der Ordnung $k$ für eine Funktion $u(x_1,\dots,x_n,t)=u(x,t)$ in expliziter Form @@ -334,6 +335,7 @@ wir die Darstellung Damit haben wir den folgenden Satz gezeigt. \begin{satz} +\index{Satz!Newtonsche Reihe}% \label{buch:differentialgleichungen:satz:newtonschereihe} Die Newtonsche Reihe für $(1-t)^\alpha$ ist der Wert \[ diff --git a/buch/chapters/060-integral/eulertransformation.tex b/buch/chapters/060-integral/eulertransformation.tex index a597892..65d48b2 100644 --- a/buch/chapters/060-integral/eulertransformation.tex +++ b/buch/chapters/060-integral/eulertransformation.tex @@ -93,6 +93,7 @@ Durch Auflösung nach der hypergeometrischen Funktion bekommt man die folgende Integraldarstellung. \begin{satz}[Euler] +\index{Satz!Eulertransformation}% \label{buch:integrale:eulertransformation:satz} Die hypergeometrische Funktion $\mathstrut_2F_1$ kann durch das Integral @@ -219,6 +220,7 @@ Funktionen $\mathstrut_{p+1}F_{q+1}$ durch ein Integral, dessen Integrand $\mathstrut_pF_q$ enthält, ausdrücken lässt. \begin{satz} +\index{Satz!Euler-Transformationformel}% Es gilt die sogennannte Euler-Transformationsformel \index{Euler-Transformation}% \[ diff --git a/buch/chapters/060-integral/fehlerfunktion.tex b/buch/chapters/060-integral/fehlerfunktion.tex index 581e56a..6b87044 100644 --- a/buch/chapters/060-integral/fehlerfunktion.tex +++ b/buch/chapters/060-integral/fehlerfunktion.tex @@ -622,7 +622,9 @@ Resultat für die Laplace-Transformierte von $f(t)$, sie ist \frac1s\biggl(1-\frac12e^{-a\sqrt{s}} \biggr). \] -\begin{satz} Die Laplace-Transformierte der Fehlerfunktion mit Argument +\begin{satz} +\index{Satz!Laplace-Transformierte der Fehlerfunktion}% +Die Laplace-Transformierte der Fehlerfunktion mit Argument $a/2\sqrt{t}$ ist \begin{equation} f(t) = \operatorname{erf}\biggl(\frac{a}{2\sqrt{t}}\biggr) diff --git a/buch/chapters/070-orthogonalitaet/gaussquadratur.tex b/buch/chapters/070-orthogonalitaet/gaussquadratur.tex index 480a37d..a5af7d2 100644 --- a/buch/chapters/070-orthogonalitaet/gaussquadratur.tex +++ b/buch/chapters/070-orthogonalitaet/gaussquadratur.tex @@ -230,6 +230,7 @@ Sei $R_n=\{p(X)\in\mathbb{R}[X] \mid \deg p\le n\}$ der Vektorraum der Polynome vom Grad $n$. \begin{satz} +\index{Satz!Gaussquadratur}% \label{buch:integral:satz:gaussquadratur} Sei $p$ ein Polynom vom Grad $n$, welches auf allen Polynomen in $R_{n-1}$ orthogonal sind. @@ -307,6 +308,7 @@ Für eine beliebige Funktion kann man die folgende Fehlerabschätzung angeben \cite[theorem 7.3.4, p.~497]{buch:numal}. \begin{satz} +\index{Satz!Gausssche Quadraturformel und Fehler}% Seien $x_i$ die Stützstellen und $A_i$ die Gewichte einer Gaussschen Quadraturformel mit $n+1$ Stützstellen und sei $f$ eine auf dem Interval $[-1,1]$ $2n+2$-mal stetig differenzierbare diff --git a/buch/chapters/070-orthogonalitaet/legendredgl.tex b/buch/chapters/070-orthogonalitaet/legendredgl.tex index c4eaf97..f3dd53f 100644 --- a/buch/chapters/070-orthogonalitaet/legendredgl.tex +++ b/buch/chapters/070-orthogonalitaet/legendredgl.tex @@ -22,6 +22,8 @@ verschiedenen Eigenwerten orthogonal sind. % \subsection{Legendre-Differentialgleichung} Die {\em Legendre-Differentialgleichung} ist die Differentialgleichung +\index{Differentialgleichung!Legendre-}% +\index{Legendre-Differentialgleichung}% \begin{equation} (1-x^2) y'' - 2x y' + n(n+1) y = 0 \label{buch:integral:eqn:legendre-differentialgleichung} @@ -451,6 +453,7 @@ ein anderer Weg zu einer zweiten Lösung gesucht werden. \subsubsection{Die assoziierte Laguerre-Differentialgleichung} \index{assoziierte Laguerre-Differentialgleichung}% \index{Laguerre-Differentialgleichung, assoziierte}% +\index{Differentialgleichung!assoziierte Laguerre-}% Die {\em assoziierte Laguerre-Differentialgleichung} ist die Differentialgleichung \begin{equation} diff --git a/buch/chapters/070-orthogonalitaet/rekursion.tex b/buch/chapters/070-orthogonalitaet/rekursion.tex index c0efc6d..3dd9de5 100644 --- a/buch/chapters/070-orthogonalitaet/rekursion.tex +++ b/buch/chapters/070-orthogonalitaet/rekursion.tex @@ -44,6 +44,7 @@ Der folgende Satz besagt, dass $p_n(x)$ eine Rekursionsbeziehung mit nur drei Termen erfüllt. \begin{satz} +\index{Satz!Drei-Term-Rekursion}% \label{buch:orthogonal:satz:drei-term-rekursion} Eine Folge bezüglich $\langle\,\;,\;\rangle_w$ orthogonaler Polynome $p_n$ mit dem Grade $\deg p_n = n$ erfüllt eine Rekursionsbeziehung der Form diff --git a/buch/chapters/070-orthogonalitaet/rodrigues.tex b/buch/chapters/070-orthogonalitaet/rodrigues.tex index 39b01b9..4852624 100644 --- a/buch/chapters/070-orthogonalitaet/rodrigues.tex +++ b/buch/chapters/070-orthogonalitaet/rodrigues.tex @@ -82,6 +82,7 @@ um $2$ erhöhen, die Ableitung wird ihn wieder um $1$ reduzieren. Etwas formeller kann man dies wie folgt formulieren: \begin{satz} +\index{Satz!Rodrigues-Rekursionsformel}% Für alle $n\ge 0$ ist \begin{equation} q_n(x) @@ -163,6 +164,7 @@ orthogonal sind. Dies ist der Inhalt des folgenden Satzes. \begin{satz} +\index{Satz!Rodrigues-Formel für orthonormierte Polynome}% Es gibt Konstanten $c_n$ derart, dass \[ p_n(x) @@ -464,6 +466,8 @@ hat die Ableitung w'(x) = -e^{-x}, \] die Pearsonsche Differentialgleichung ist daher +\index{Pearsonsche Differentialgleichung}% +\index{Differentialgleichung!Pearsonsche}% \[ \frac{w'(x)}{w(x)}=\frac{-1}{1}. \] @@ -562,6 +566,8 @@ an der Stelle $0$. Wir fassen die Resultate im folgenden Satz zusammen. \begin{satz} +\index{Satz!Laguerre-Polynome}% +\index{Polynome!Laguerre-}% Die Laguerre-Polynome vom Grad $n$ haben die Form \begin{equation} L_n(x) diff --git a/buch/chapters/070-orthogonalitaet/saev.tex b/buch/chapters/070-orthogonalitaet/saev.tex index c667297..599d3a0 100644 --- a/buch/chapters/070-orthogonalitaet/saev.tex +++ b/buch/chapters/070-orthogonalitaet/saev.tex @@ -18,6 +18,7 @@ Der Beweis ist direkt übertragbar, wir halten das Resultat hier für spätere Verwendung fest. \begin{satz} +\index{Satz!orthogonale Eigenvektoren}% Sind $f$ und $g$ Eigenvektoren eines selbstadjungierten Operators $A$ zu verschiedenen Eigenwerten $\lambda$ und $\mu$, dann sind $f$ und $g$ orthogonal. diff --git a/buch/chapters/070-orthogonalitaet/sturm.tex b/buch/chapters/070-orthogonalitaet/sturm.tex index 164cd9a..742ec0a 100644 --- a/buch/chapters/070-orthogonalitaet/sturm.tex +++ b/buch/chapters/070-orthogonalitaet/sturm.tex @@ -7,6 +7,7 @@ \label{buch:integrale:subsection:sturm-liouville-problem}} \rhead{Das Sturm-Liouville-Problem} Sowohl bei den Bessel-Funktionen wie bei den Legendre-Polynomen +\index{Bessel-Funktion}% konnte die Orthogonalität der Funktionen dadurch gezeigt werden, dass sie als Eigenfunktionen eines bezüglich eines geeigneten Skalarproduktes selbstadjungierten Operators erkannt wurden. @@ -57,6 +58,7 @@ Für symmetrische Matrizen lässt sich dieses Problem auf ein Optimierungsproblem reduzieren. \begin{satz} +\index{Satz!verallgemeinertes Eigenwertproblem}% Seien $A$ und $B$ symmetrische $n\times n$-Matrizen und sei ausserdem $B$ positiv definit. Ist $v$ ein Vektor, der die Grösse @@ -127,6 +129,7 @@ Eigenwert $\lambda$ ist. \end{proof} \begin{satz} +\index{Satz!Orthogonalität verallgemeinerter Eigenvektoren}% Verallgemeinerte Eigenvektoren $u$ und $v$ von $A$ und $B$ zu verschiedenen Eigenwerten erfüllen $u^tBv=0$. \end{satz} @@ -153,6 +156,8 @@ dass $u^tBv=0$ sein muss. Verallgemeinerte Eigenwerte und Eigenvektoren verhalten sich also ganz analog zu den gewöhnlichen Eigenwerten und Eigenvektoren. Da $B$ positiv definit ist, ist $B$ auch invertierbar. +\index{verallgemeinertes Skalarprodukt}% +\index{Skalarprodukt!verallgemeinertes}% Zudem kann $B$ zur Definition des verallgemeinerten Skalarproduktes \[ \langle u,v\rangle_B = u^tBv @@ -201,6 +206,7 @@ Bezüglich des gewöhnlichen Skalarproduktes für Funktionen auf dem Intervall $[a,b]$ ist der Operator $L_0$ tatsächlich selbstadjungiert. Mit partieller Integration rechnet man nach: +\index{partielle Integration}% \begin{align} \langle f,L_0g\rangle &= @@ -376,6 +382,8 @@ L = \frac{1}{w(x)} \biggl(-\frac{d}{dx} p(x)\frac{d}{dx} + q(x)\biggr) \label{buch:orthogonal:sturm-liouville:opL1} \end{equation} heisst der {\em Sturm-Liouville-Operator}. +\index{Sturm-Liouville-Operator}% +\index{Operator!Sturm-Liouville-}% Eine Lösung des Sturm-Liouville-Problems ist eine Funktion $y(x)$ derart, dass \[ @@ -529,7 +537,10 @@ Im Folgenden sollen hingegen die Funktionen $J_n(s x)$ für konstantes $n$, aber verschiedene $s$ untersucht und als orthogonal erkannt werden. -Die Funktion $y(x) = J_n(x)$ ist eine Lösung der Bessel-Differentialgleichung +Die Funktion $y(x) = J_n(x)$ ist eine Lösung der Besselschen +Differentialgleichung +\index{Besselsche Differentialgleichung}% +\index{Differentialgleichung!Besselsche}% \[ x^2y'' + xy' + x^2y = n^2y. \] @@ -616,6 +627,7 @@ des Sturm-Liouville-Problems für den Eigenwert $\lambda = -s^2$. \begin{satz}[Orthogonalität der Bessel-Funktionen] +\index{Satz!Orthogonalität der Bessel-Funktionen}% Die Bessel-Funktionen $J_n(sx)$ für verschiedene $s$ sind orthogonal bezüglich des Skalarproduktes mit der Gewichtsfunktion $w(x)=x$, d.~h. @@ -696,6 +708,8 @@ des Skalarproduktes mit der Laguerre-Gewichtsfunktion. Die Tschebyscheff-Polynome sind Lösungen der bereits in Kapitel~\ref{buch:chapter:potenzen} hergeleiteten Tschebyscheff-Differentialgleichung~\eqref{buch:potenzen:tschebyscheff:dgl} +\index{Tschebyscheff-Differentialgleichung}% +\index{Differentialgleichung!Tschebyscheff-}% \[ (1-x^2)y'' -xy' = n^2y \] @@ -727,6 +741,7 @@ xy'(x) \lambda y(x). \end{align*} Es folgt, dass die Tschebyscheff-Polynome orthogonal sind +\index{Tschebyscheff-Polynom}% bezüglich des Skalarproduktes \[ \langle f,g\rangle = \int_{-1}^1 f(x)g(x)\frac{dx}{\sqrt{1-x^2}}. @@ -737,6 +752,8 @@ bezüglich des Skalarproduktes % \subsubsection{Jacobi-Polynome} Die Jacobi-Polynome sind orthogonal bezüglich des Skalarproduktes +\index{Jacobi-Polynome}% +\index{Polynome!Jacobi-}% mit der Gewichtsfunktion \[ w^{(\alpha,\beta)}(x) = (1-x)^\alpha(1+x)^\beta, @@ -814,6 +831,8 @@ als Sturm-Liouville-Differentialgleichung erkannt. \subsubsection{Hypergeometrische Differentialgleichungen} %\url{https://encyclopediaofmath.org/wiki/Hypergeometric_equation} Auch die Eulersche hypergeometrische Differentialgleichung +\index{Eulersche hypergeometrische Differentialgleichung}% +\index{Differentialgleichung!Eulersche hypergeometrische}% lässt sich in die Form eines Sturm-Liouville-Operators \index{Eulersche hypergeometrische Differentialgleichung!als Sturm-Liouville-Gleichung}% bringen. diff --git a/buch/chapters/080-funktionentheorie/analytisch.tex b/buch/chapters/080-funktionentheorie/analytisch.tex index 3095cc1..08196f1 100644 --- a/buch/chapters/080-funktionentheorie/analytisch.tex +++ b/buch/chapters/080-funktionentheorie/analytisch.tex @@ -9,6 +9,9 @@ Holomorphe Funktionen zeichnen sich dadurch aus, dass sie auch immer eine konvergente Reihenentwicklung haben, sie sind also analytisch. +% +% Definition +% \subsection{Definition} \index{Taylor-Reihe}% \index{Exponentialfunktion}% @@ -90,29 +93,29 @@ Damit ist gezeigt, dass alle Ableitungen $f^{(n)}(0)=0$ sind. Die Taylorreihe von $f(x)$ ist daher die Nullfunktion. \end{beispiel} -Die Klasse der Funktionen, die sich durch ihre Taylor-Reihe darstellen -lassen, zeichnet sich also durch besondere Eigenschaften aus, die in -der folgenden Definition zusammengefasst werden. - -\index{analytisch in einem Punkt}% -\index{analytisch}% -\begin{definition} -Eine auf einem offenen Intervall $I\subset \mathbb {R}$ definierte Funktion -$f\colon U\to\mathbb{R}$ heisst {\em analytisch im Punkt $x_0\in I$}, wenn -es eine in einer Umgebung von $x_0$ konvergente Potenzreihe -\[ -\sum_{k=0}^\infty a_k(x-x_0)^k = f(x) -\] -gibt. -Sie heisst {\em analytisch}, wenn sie analytisch ist in jedem Punkt von $I$. -\end{definition} - -Es ist wohlbekannt aus der elementaren Theorie der Potenzreihen, dass +%Die Klasse der Funktionen, die sich durch ihre Taylor-Reihe darstellen +%lassen, zeichnet sich also durch besondere Eigenschaften aus, die in +%der folgenden Definition zusammengefasst werden. +% +%\index{analytisch in einem Punkt}% +%\index{analytisch}% +%\begin{definition} +%Eine auf einem offenen Intervall $I\subset \mathbb {R}$ definierte Funktion +%$f\colon U\to\mathbb{R}$ heisst {\em analytisch im Punkt $x_0\in I$}, wenn +%es eine in einer Umgebung von $x_0$ konvergente Potenzreihe +%\[ +%\sum_{k=0}^\infty a_k(x-x_0)^k = f(x) +%\] +%gibt. +%Sie heisst {\em analytisch}, wenn sie analytisch ist in jedem Punkt von $I$. +%\end{definition} + +Es ist bekannt aus der elementaren Theorie der Potenzreihen +in Kapitel~\ref{buch:potenzen:section:potenzreihen}, dass eine analytische Funktion beliebig oft differenzierbar ist und dass die Potenzreihe im Punkt $x_0$ die Taylor-Reihe sein muss. -Ausserdem sidn Summen, Differenzen und Produkte von analytischen Funktionen +Ausserdem sind Summen, Differenzen und Produkte von analytischen Funktionen wieder analytisch. - Für eine komplexe Funktion lässt sich der Begriff der analytischen Funktion genau gleich definieren. @@ -131,8 +134,8 @@ Die Verwendung einer offenen Teilmenge $U\subset\mathbb{C}$ ist wesentlich, denn die Funktion $f\colon z\mapsto \overline{z}$ kann in jedem Punkt $x_0\in\mathbb{R}$ der reellen Achse $\mathbb{R}\subset\mathbb{C}$ durch die Potenzreihe -$f(x) = x_0 + (x-x_0)$ dargestellt werden. -Es gibt aber keine Potenzreihe, die $f(z)$ in einer offenen Teilmenge +$f(x) = x_0 + (x-x_0)$ dargestellt werden, +es gibt aber keine Potenzreihe, die $f(z)$ in einer offenen Teilmenge von $\mathbb{C}$ gegen $f(z)=\overline{z}$ konvergiert. % @@ -140,18 +143,20 @@ von $\mathbb{C}$ gegen $f(z)=\overline{z}$ konvergiert. % \subsection{Konvergenzradius \label{buch:funktionentheorie:subsection:konvergenzradius}} -In der Theorie der Potenzreihen, die man in einem grundlegenden -Analysiskurs lernt, wird auch genauer untersucht, wie gross +In der Theorie der Potenzreihen, wie sie in Kapitel~\ref{buch:chapter:potenzen} +zusammengefasst wurde, wird auch untersucht, wie gross eine Umgebung des Punktes $z_0$ ist, in der die Potenzreihe im Punkt $z_0$ einer analytischen Funktion konvergiert. +Die Definition des Konvergenzradius gilt auch für komplexe Funktionen. \begin{satz} +\index{Satz!Konvergenzradius}% \label{buch:funktionentheorie:satz:konvergenzradius} Die Potenzreihe \[ f(z) = \sum_{k=0}^\infty a_0(z-z_0)^k \] -ist konvergent auf einem Kreis mit Radius $\varrho$ und +ist konvergent auf einem Kreis um $z_0$ mit Radius $\varrho$ und \[ \frac{1}{\varrho} = diff --git a/buch/chapters/080-funktionentheorie/carlson.tex b/buch/chapters/080-funktionentheorie/carlson.tex index 1923351..41fb5e8 100644 --- a/buch/chapters/080-funktionentheorie/carlson.tex +++ b/buch/chapters/080-funktionentheorie/carlson.tex @@ -24,6 +24,8 @@ beschränkt ist und an den Stellen $z=1,2,3,\dots$ verschwindet. Dann ist $f(z)=0$. \end{satz} +\index{Satz!von Carlson}% +\index{Carlson, Satz von}% \begin{figure} \centering \includegraphics{chapters/080-funktionentheorie/images/carlsonpath.pdf} diff --git a/buch/chapters/080-funktionentheorie/cauchy.tex b/buch/chapters/080-funktionentheorie/cauchy.tex index 58504db..bd07a2f 100644 --- a/buch/chapters/080-funktionentheorie/cauchy.tex +++ b/buch/chapters/080-funktionentheorie/cauchy.tex @@ -135,6 +135,7 @@ Wie Wahl der Parametrisierung der Kurve hat keinen Einfluss auf den Wert des Wegintegrals. \begin{satz} +\index{Satz!Kurvenparametrisierung}% Seien $\gamma_1(t), t\in[a,b],$ und $\gamma_2(s),s\in[c,d]$ verschiedene Parametrisierungen \index{Parametrisierung}% diff --git a/buch/chapters/080-funktionentheorie/gammareflektion.tex b/buch/chapters/080-funktionentheorie/gammareflektion.tex index 017c850..4a8f41f 100644 --- a/buch/chapters/080-funktionentheorie/gammareflektion.tex +++ b/buch/chapters/080-funktionentheorie/gammareflektion.tex @@ -12,6 +12,7 @@ die durch Spiegelung an der Geraden $\operatorname{Re}x=\frac12$ auseinander hervorgehen, und einem speziellen Beta-Integral her. \begin{satz} +\index{Satz!Spiegelungsformel für $\Gamma(x)$}% \label{buch:funktionentheorie:satz:spiegelungsformel} Für $0b>0$ ist, nimmt die Folge $(a_k)_{k\ge 0}$ monoton ab und $(b_k)_{k\ge 0}$ nimmt monoton zu. Beide konvergieren quadratisch gegen einen gemeinsamen Grenzwert. @@ -636,6 +638,7 @@ mit einem Computer-Algebra-System ausführen lässt finden, dass tatsächlich korrekt ist. \begin{satz} +\index{Satz!Gauss-Integrale}% \label{buch:elliptisch:agm:integrale} Für $a_1=(a+b)/2$ und $b_1=\sqrt{ab}$ gilt \[ @@ -653,6 +656,7 @@ Dies gilt natürlich für alle Glieder der Folge zur Bestimmung des arithmetisch-geometrischen Mittels. \begin{satz} +\index{Satz!Iab@$I(a,b)$ und arithmetisch geometrisches Mittel}% Für $a\ge b>0$ gilt \begin{equation} I(a,b) @@ -719,6 +723,7 @@ k=\sqrt{1-k^{\prime 2}} \end{align*} \begin{satz} +\index{Satz!vollständige elliptische Integrale und arithmetisch-geometrisches Mittel}% \label{buch:elliptisch:agm:satz:Ek} Für $0 Date: Mon, 4 Jul 2022 19:35:36 +0200 Subject: images updated, nav/bsp.tex -> nav/bsp2.tex --- buch/papers/nav/bilder/beispiele1.pdf | Bin 399907 -> 399925 bytes buch/papers/nav/bilder/beispiele2.pdf | Bin 404679 -> 404688 bytes buch/papers/nav/bsp2.tex | 235 ++++++++++++++++++++++++ buch/papers/nav/images/beispiele/beispiele1.pdf | Bin 399907 -> 399925 bytes buch/papers/nav/images/beispiele/beispiele1.tex | 4 +- buch/papers/nav/images/beispiele/beispiele2.pdf | Bin 404679 -> 404688 bytes buch/papers/nav/images/beispiele/beispiele2.tex | 4 +- buch/papers/nav/images/beispiele/beispiele3.pdf | Bin 401946 -> 401946 bytes buch/papers/nav/images/beispiele/common.tex | 16 +- buch/papers/nav/main.tex | 2 +- 10 files changed, 248 insertions(+), 13 deletions(-) create mode 100644 buch/papers/nav/bsp2.tex diff --git a/buch/papers/nav/bilder/beispiele1.pdf b/buch/papers/nav/bilder/beispiele1.pdf index d0fe3dc..1f91809 100644 Binary files a/buch/papers/nav/bilder/beispiele1.pdf and b/buch/papers/nav/bilder/beispiele1.pdf differ diff --git a/buch/papers/nav/bilder/beispiele2.pdf b/buch/papers/nav/bilder/beispiele2.pdf index 8579ee5..4b28f2f 100644 Binary files a/buch/papers/nav/bilder/beispiele2.pdf and b/buch/papers/nav/bilder/beispiele2.pdf differ diff --git a/buch/papers/nav/bsp2.tex b/buch/papers/nav/bsp2.tex new file mode 100644 index 0000000..fe8f423 --- /dev/null +++ b/buch/papers/nav/bsp2.tex @@ -0,0 +1,235 @@ +\section{Beispielrechnung} + +\subsection{Einführung} +In diesem Abschnitt wird die Theorie vom Abschnitt 21.6 in einem Praxisbeispiel angewendet. +Wir haben die Deklination, Rektaszension, Höhe der beiden Planeten Deneb und Arktur und die Sternzeit von Greenwich als Ausgangslage. +Die Deklinationen und Rektaszensionen sind von einem vergangenen Datum und die Höhe der Gestirne und die Sternzeit wurden von unserem Dozenten digital in einer Stadt in Japan mit den Koordinaten 35.716672 N, 140.233336 E bestimmt. +Wir werden rechnerisch beweisen, dass wir mit diesen Ergebnissen genau auf diese Koordinaten kommen. +\subsection{Vorgehen} + +\begin{compactenum} +\item +Koordinaten der Bildpunkte der Gestirne bestimmen +\item +Dreiecke aufzeichnen und richtig beschriften +\item +Dreieck ABC bestimmmen +\item +Dreieck BPC bestimmen +\item +Dreieck ABP bestimmen +\item +Geographische Breite bestimmen +\item +Geographische Länge bestimmen +\end{compactenum} + +\subsection{Ausgangslage} +\hbox to\textwidth{% +\begin{minipage}{8.4cm} +Die Rektaszension und die Sternzeit sind in der Regeln in Stunden angegeben. +Für die Umrechnung in Grad kann folgender Zusammenhang verwendet werden: +\[ +\text{Stunden} \cdot 15 = \text{Grad}. +\] +Dies wurde hier bereits gemacht. +\begin{center} +\begin{tabular}{l l >{$}l<{$}} +Sternzeit $s$ & $118.610804^\circ$ \\ +Deneb &\\ + & Rektaszension $RA_{\text{Deneb}}$ & 310.55058^\circ\\ + & Deklination $DEC_{\text{Deneb}}$ & \phantom{0}45.361194^\circ \\ + & Höhe $h_c$ & \phantom{0}50.256027^\circ \\ +Arktur &\\ + & Rektaszension $RA_{\text{Arktur}}$& 214.17558^\circ \\ + & Deklination $DEC_{\text{Arktur}}$ & \phantom{0}19.063222^\circ \\ + & Höhe $h_b$ & \phantom{0}47.427444^\circ \\ +\end{tabular} +\end{center} +\end{minipage}% +\hfill% +\raisebox{-2cm}{\includegraphics{papers/nav/bilder/position1.pdf}}% +} +\medskip + +\subsection{Koordinaten der Bildpunkte} +Als erstes benötigen wir die Koordinaten der Bildpunkte von Arktur und Deneb. +$\delta$ ist die Breite, $\lambda$ die Länge. +\begin{align} +\delta_{\text{Deneb}}&=DEC_{\text{Deneb}} = \underline{\underline{45.361194^\circ}} \nonumber \\ +\lambda_{\text{Deneb}}&=RA_{\text{Deneb}} - s = 310.55058^\circ -118.610804^\circ =\underline{\underline{191.939776^\circ}} \nonumber \\ +\delta_{\text{Arktur}}&=DEC_{\text{Arktur}} = \underline{\underline{19.063222^\circ}} \nonumber \\ +\lambda_{\text{Arktur}}&=RA_{\text{Arktur}} - s = 214.17558^\circ -118.610804^\circ = \underline{\underline{5.5647759^\circ}} \nonumber +\end{align} + + +\subsection{Dreiecke definieren} +\begin{figure} +\hbox{% +\includegraphics{papers/nav/bilder/beispiele1.pdf}% +\hfill% +\includegraphics{papers/nav/bilder/beispiele2.pdf}} +\caption{Arktur-Deneb; Spica-Altiar +\label{nav:beispiele}} +\end{figure} +Das Festlegen der Dreiecke ist essenziell für die korrekten Berechnungen. +Ein Problem, welches in der Theorie nicht berücksichtigt wurde ist, dass der Punkt $P$ nicht zwingend unterhalb der Seite $a$ sein muss. +Wenn man das nicht berücksichtigt, erhält man falsche oder keine Ergebnisse. +In der Realität weiss man jedoch ungefähr auf welchem Breitengrad man ist, so kann man relativ einfach entscheiden, ob der eigene Standort über $a$ ist oder nicht. +Beim unserem genutzten Paar Arktur-Deneb ist dies kein Problem, da der Punkt unterhalb der Seite $a$ liegt. +Würde man aber das Paar Altair-Spica nehmen, liegt $P$ über $a$ +(vgl. Abbildung\ref{nav:beispiele}) und man müsste trigonometrisch +anders vorgehen. + +\subsection{Dreieck $ABC$} +\vspace*{-3mm} +\hbox to\textwidth{% +\begin{minipage}{8.4cm}% +Nun berechnen wir alle Seitenlängen $a$, $b$, $c$ und die +Innnenwinkel $\alpha$, $\beta$ und $\gamma$. +Wir können $b$ und $c$ mit den geltenten Zusammenhängen des nautischen Dreiecks wie folgt bestimmen: +\begin{align*} +b +&= +90^\circ-DEC_{\text{Deneb}} += +90^\circ - 45.361194^\circ +\\ +&= +\underline{\underline{44.638806^\circ}} +\\ +c +&= +90^\circ-DEC_{\text{Arktur}} += +90^\circ - 19.063222^\circ +\\ +&= +\underline{\underline{70.936778^\circ}} +\end{align*} +\end{minipage}% +\hfill% +\raisebox{-2.4cm}{\includegraphics{papers/nav/bilder/position2.pdf}}% +} +Um $a$ zu bestimmen, benötigen wir zuerst den Winkel +\begin{align*} +\alpha +&= +RA_{\text{Deneb}} - RA_{\text{Arktur}} += +310.55058^\circ -214.17558^\circ +\\ +&= +\underline{\underline{96.375^\circ}}. +\end{align*} +Danach nutzen wir den sphärischen Winkelkosinussatz, um $a$ zu berechnen: +\begin{align*} + a &= \cos^{-1}(\cos(b) \cdot \cos(c) + \sin(b) \cdot \sin(c) \cdot \cos(\alpha)) \\ + &= \cos^{-1}(\cos(44.638806) \cdot \cos(70.936778) + \sin(44.638806) \cdot \sin(70.936778) \cdot \cos(96.375)) \\ + &= \underline{\underline{80.8707801^\circ}} +\end{align*} +Für $\beta$ und $\gamma$ nutzen wir den sphärischen Seitenkosinussatz: +\begin{align*} + \beta &= \cos^{-1} \bigg[\frac{\cos(b)-\cos(a) \cdot \cos(c)}{\sin(a) \cdot \sin(c)}\bigg] \\ + &= \cos^{-1} \bigg[\frac{\cos(44.638806)-\cos(80.8707801) \cdot \cos(70.936778)}{\sin(80.8707801) \cdot \sin(70.936778)}\bigg] \\ + &= \underline{\underline{45.0115314^\circ}} +\\ +\gamma &= \cos^{-1} \bigg[\frac{\cos(c)-\cos(b) \cdot \cos(a)}{\sin(a) \cdot \sin(b)}\bigg] \\ + &= \cos^{-1} \bigg[\frac{\cos(70.936778)-\cos(44.638806) \cdot \cos(80.8707801)}{\sin(80.8707801) \cdot \sin(44.638806)}\bigg] \\ + &=\underline{\underline{72.0573328^\circ}} +\end{align*} + + + +\subsection{Dreieck $BPC$} +\vspace*{-4mm} +\hbox to\textwidth{% +\begin{minipage}{8.4cm}% +Als nächstes berechnen wir die Seiten $h_b$, $h_c$ und die Innenwinkel $\beta_1$ und $\gamma_1$. +\begin{align*} +h_b&=90^\circ - h_b + = 90^\circ - 47.42744^\circ \\ + &= \underline{\underline{42.572556^\circ}} +\\ + h_c &= 90^\circ - h_c + = 90^\circ - 50.256027^\circ \\ + &= \underline{\underline{39.743973^\circ}} +\end{align*} +\end{minipage}% +\hfill% +\raisebox{-2.8cm}{\includegraphics{papers/nav/bilder/position3.pdf}}% +} +\begin{align*} +\beta_1 &= \cos^{-1} \bigg[\frac{\cos(h_c)-\cos(a) \cdot \cos(h_b)}{\sin(a) \cdot \sin(h_b)}\bigg] \\ + &= \cos^{-1} \bigg[\frac{\cos(39.743973)-\cos(80.8707801) \cdot \cos(42.572556)}{\sin(80.8707801) \cdot \sin(42.572556)}\bigg] \\ + &=\underline{\underline{12.5211127^\circ}} +\\ +\gamma_1 &= \cos^{-1} \bigg[\frac{\cos(h_b)-\cos(a) \cdot \cos(h_c)}{\sin(a) \cdot \sin(h_c)}\bigg] \\ + &= \cos^{-1} \bigg[\frac{\cos(42.572556)-\cos(80.8707801) \cdot \cos(39.743973)}{\sin(80.8707801) \cdot \sin(39.743973)}\bigg] \\ + &=\underline{\underline{13.2618475^\circ}} +\end{align*} + +\subsection{Dreieck $ABP$} +\vspace*{-2mm} +\hbox to\textwidth{% +\begin{minipage}{8.4cm}% +Als erstes müssen wir den Winkel $\beta_2$ berechnen: +\begin{align*} + \beta_2 &= \beta + \beta_1 = 45.011513^\circ + 12.5211127^\circ \\ + &=\underline{\underline{44.6687451^\circ}} +\end{align*} +Danach können wir mithilfe von $\beta_2$, $c$ und $h_b$ die Seite $l$ berechnen: +\begin{align*} +l +&= +\cos^{-1}(\cos(c) \cdot \cos(h_b) + + \sin(c) \cdot \sin(h_b) \cdot \cos(\beta_2)) \\ +&= +\cos^{-1}(\cos(70.936778) \cdot \cos(42.572556)\\ +&\qquad + \sin(70.936778) \cdot \sin(42.572556) \cdot \cos(57.5326442)) \\ +&= \underline{\underline{54.2833404^\circ}} +\end{align*} +\end{minipage}% +\hfill% +\raisebox{-2.0cm}{\includegraphics{papers/nav/bilder/position4.pdf}}% +} + +\medskip + +Damit wir gleich den Längengrad berechnen können, benötigen wir noch den Winkel $\omega$: +\begin{align*} + \omega &= \cos^{-1} \bigg[\frac{\cos(h_b)-\cos(c) \cdot \cos(l)}{\sin(c) \cdot \sin(l)}\bigg] \\ + &=\cos^{-1} \bigg[\frac{\cos(42.572556)-\cos(70.936778) \cdot \cos(54.2833404)}{\sin(70.936778) \cdot \sin(54.2833404)}\bigg] \\ + &= \underline{\underline{44.6687451^\circ}} +\end{align*} + +\subsection{Längengrad und Breitengrad bestimmen} + +\begin{align*} +\delta &= 90^\circ - l & + \lambda &= \lambda_{Arktur} + \omega \\ +&= 90^\circ - 54.2833404 & + &= 95.5647759^\circ + 44.6687451^\circ \\ +&= \underline{\underline{35.7166596^\circ}} & + &= \underline{\underline{140.233521^\circ}} +\end{align*} +Wie wir sehen, stimmen die berechneten Koordinaten mit den Koordinaten des Punktes, an welchem gemessen wurde überein. + +\subsection{Fazit} +Die theoretische Anleitung im Abschnitt 21.6 scheint grundsätzlich zu funktionieren. +Allerdings gab es zwei interessante Probleme. + +Einerseits das Problem, ob der Punkt P sich oberhalb oder unterhalb von $a$ befindet. +Da wir eigentlich wussten, wo der gesuchte Punkt P ist, konnten wir das Dreieck anhand der Koordinaten der Bildpunkte richtig aufstellen. +In der Praxis muss man aber schon wissen, auf welchem Breitengrad man ungefähr ist. +Dies weis man in der Regeln aber, da die eigene Breite die Höhe des Polarsterns ist. +Diese Höhe wird mit dem Sextant gemessen. + +Andererseits ist da noch ein Problem mit dem Sinussatz. +Beim Sinussatz gibt es immer zwei Lösungen, weil \[ \sin(\pi-a)=\sin(a).\] +Da kann es sein (und war in unserem Fall auch so), dass man das falsche Ergebnis erwischt. +Durch diese Erkenntnis haben wir nur Kosinussätze verwendet und dies ebenfalls im Abschnitt 21.6 abgeändert, da es für den Leser auch relevant sein kann, wenn er es Probieren möchte. + + + + diff --git a/buch/papers/nav/images/beispiele/beispiele1.pdf b/buch/papers/nav/images/beispiele/beispiele1.pdf index d0fe3dc..1f91809 100644 Binary files a/buch/papers/nav/images/beispiele/beispiele1.pdf and b/buch/papers/nav/images/beispiele/beispiele1.pdf differ diff --git a/buch/papers/nav/images/beispiele/beispiele1.tex b/buch/papers/nav/images/beispiele/beispiele1.tex index 5666ba6..0dfae2f 100644 --- a/buch/papers/nav/images/beispiele/beispiele1.tex +++ b/buch/papers/nav/images/beispiele/beispiele1.tex @@ -20,10 +20,10 @@ \def\breite{4} \def\hoehe{4} -\begin{tikzpicture}[>=latex,thick] +\begin{tikzpicture}[>=latex,thick,scale=0.8125] % Povray Bild -\node at (0,0) {\includegraphics[width=8cm]{beispiele1.jpg}}; +\node at (0,0) {\includegraphics[width=6.5cm]{beispiele1.jpg}}; % Gitter \ifthenelse{\boolean{showgrid}}{ diff --git a/buch/papers/nav/images/beispiele/beispiele2.pdf b/buch/papers/nav/images/beispiele/beispiele2.pdf index 8579ee5..4b28f2f 100644 Binary files a/buch/papers/nav/images/beispiele/beispiele2.pdf and b/buch/papers/nav/images/beispiele/beispiele2.pdf differ diff --git a/buch/papers/nav/images/beispiele/beispiele2.tex b/buch/papers/nav/images/beispiele/beispiele2.tex index c9b70bd..04c1e4d 100644 --- a/buch/papers/nav/images/beispiele/beispiele2.tex +++ b/buch/papers/nav/images/beispiele/beispiele2.tex @@ -20,10 +20,10 @@ \def\breite{4} \def\hoehe{4} -\begin{tikzpicture}[>=latex,thick] +\begin{tikzpicture}[>=latex,thick,scale=0.8125] % Povray Bild -\node at (0,0) {\includegraphics[width=8cm]{beispiele2.jpg}}; +\node at (0,0) {\includegraphics[width=6.5cm]{beispiele2.jpg}}; % Gitter \ifthenelse{\boolean{showgrid}}{ diff --git a/buch/papers/nav/images/beispiele/beispiele3.pdf b/buch/papers/nav/images/beispiele/beispiele3.pdf index a7189dd..049ccdf 100644 Binary files a/buch/papers/nav/images/beispiele/beispiele3.pdf and b/buch/papers/nav/images/beispiele/beispiele3.pdf differ diff --git a/buch/papers/nav/images/beispiele/common.tex b/buch/papers/nav/images/beispiele/common.tex index b7b3dac..81dc037 100644 --- a/buch/papers/nav/images/beispiele/common.tex +++ b/buch/papers/nav/images/beispiele/common.tex @@ -44,36 +44,36 @@ \def\labeldSpica{ \coordinate (dSpica) at (-1.5,2.6); \fill[color=white,opacity=0.5] - ($(dSpica)+(-1.8,0.08)$) + ($(dSpica)+(-1.8,0.13)$) rectangle - ($(dSpica)+(-0.06,0.55)$); + ($(dSpica)+(-0.06,0.60)$); \node at (dSpica) [above left] {$90^\circ-\delta_{\text{Spica}}\mathstrut$}; } \def\labeldAltair{ \coordinate (dAltair) at (2.0,2.1); \fill[color=white,opacity=0.5] - ($(dAltair)+(0.10,0.05)$) + ($(dAltair)+(0.10,0.10)$) rectangle - ($(dAltair)+(1.8,0.5)$); + ($(dAltair)+(2.0,0.60)$); \node at (dAltair) [above right] {$90^\circ-\delta_{\text{Altair}}\mathstrut$}; } \def\labeldArktur{ \coordinate (dArktur) at (-1.2,2.5); \fill[color=white,opacity=0.5] - ($(dArktur)+(-1.8,0.05)$) + ($(dArktur)+(-1.8,0.10)$) rectangle - ($(dArktur)+(-0.06,0.5)$); + ($(dArktur)+(-0.06,0.55)$); \node at (dArktur) [above left] {$90^\circ-\delta_{\text{Arktur}}\mathstrut$}; } \def\labeldDeneb{ \coordinate (dDeneb) at (2.0,2.8); \fill[color=white,opacity=0.5] - ($(dDeneb)+(0.05,0.5)$) + ($(dDeneb)+(0.05,0.60)$) rectangle - ($(dDeneb)+(1.87,0.05)$); + ($(dDeneb)+(1.87,0.10)$); \node at (dDeneb) [above right] {$90^\circ-\delta_{\text{Deneb}}\mathstrut$}; } diff --git a/buch/papers/nav/main.tex b/buch/papers/nav/main.tex index 37bc83a..f993559 100644 --- a/buch/papers/nav/main.tex +++ b/buch/papers/nav/main.tex @@ -15,7 +15,7 @@ \input{papers/nav/sincos.tex} \input{papers/nav/trigo.tex} \input{papers/nav/nautischesdreieck.tex} -\input{papers/nav/bsp.tex} +\input{papers/nav/bsp2.tex} \printbibliography[heading=subbibliography] -- cgit v1.2.1 From fb34a6ec01db936f85fc977ceee02dcc8525f208 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 4 Jul 2022 19:59:45 +0200 Subject: missing \text{} --- buch/papers/nav/bsp2.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buch/papers/nav/bsp2.tex b/buch/papers/nav/bsp2.tex index fe8f423..fde44b8 100644 --- a/buch/papers/nav/bsp2.tex +++ b/buch/papers/nav/bsp2.tex @@ -207,7 +207,7 @@ Damit wir gleich den Längengrad berechnen können, benötigen wir noch den Wink \begin{align*} \delta &= 90^\circ - l & - \lambda &= \lambda_{Arktur} + \omega \\ + \lambda &= \lambda_{\text{Arktur}} + \omega \\ &= 90^\circ - 54.2833404 & &= 95.5647759^\circ + 44.6687451^\circ \\ &= \underline{\underline{35.7166596^\circ}} & -- cgit v1.2.1 From 3fbbafce1a5d906a12c1f8035fa2e16f6c187de0 Mon Sep 17 00:00:00 2001 From: "ENEZ-PC\\erdem" Date: Tue, 5 Jul 2022 15:31:16 +0200 Subject: abschluss --- buch/papers/nav/bsp2.tex | 50 +++++++++++++-------------- buch/papers/nav/flatearth.tex | 3 +- buch/papers/nav/nautischesdreieck.tex | 63 ++++++++++++++++++----------------- buch/papers/nav/references.bib | 6 ++++ buch/papers/nav/sincos.tex | 10 +++--- buch/papers/nav/trigo.tex | 45 +++++++++++++------------ 6 files changed, 94 insertions(+), 83 deletions(-) diff --git a/buch/papers/nav/bsp2.tex b/buch/papers/nav/bsp2.tex index fde44b8..23380eb 100644 --- a/buch/papers/nav/bsp2.tex +++ b/buch/papers/nav/bsp2.tex @@ -1,12 +1,12 @@ \section{Beispielrechnung} \subsection{Einführung} -In diesem Abschnitt wird die Theorie vom Abschnitt 21.6 in einem Praxisbeispiel angewendet. +In diesem Abschnitt wird die Theorie vom Abschnitt \ref{sta} in einem Praxisbeispiel angewendet. Wir haben die Deklination, Rektaszension, Höhe der beiden Planeten Deneb und Arktur und die Sternzeit von Greenwich als Ausgangslage. -Die Deklinationen und Rektaszensionen sind von einem vergangenen Datum und die Höhe der Gestirne und die Sternzeit wurden von unserem Dozenten digital in einer Stadt in Japan mit den Koordinaten 35.716672 N, 140.233336 E bestimmt. -Wir werden rechnerisch beweisen, dass wir mit diesen Ergebnissen genau auf diese Koordinaten kommen. +Die Deklinationen und Rektaszensionen sind von einem vergangenen Datum und die Höhe der Gestirne und die Sternzeit wurden digital in einer Stadt in Japan mit den Koordinaten 35.716672 N, 140.233336 E bestimmt. +Wir werden nachrechnen, dass wir mit unserer Methode genau auf diese Koordinaten kommen. \subsection{Vorgehen} - +Unser vorgehen erschliesst sicht aus unserer Methode, die wir im Abschnitt \ref{p} theoretisch erklärt haben. \begin{compactenum} \item Koordinaten der Bildpunkte der Gestirne bestimmen @@ -27,7 +27,7 @@ Geographische Länge bestimmen \subsection{Ausgangslage} \hbox to\textwidth{% \begin{minipage}{8.4cm} -Die Rektaszension und die Sternzeit sind in der Regeln in Stunden angegeben. +Die Rektaszension und die Sternzeit sind in der Regel in Stunden angegeben. Für die Umrechnung in Grad kann folgender Zusammenhang verwendet werden: \[ \text{Stunden} \cdot 15 = \text{Grad}. @@ -125,17 +125,17 @@ RA_{\text{Deneb}} - RA_{\text{Arktur}} Danach nutzen wir den sphärischen Winkelkosinussatz, um $a$ zu berechnen: \begin{align*} a &= \cos^{-1}(\cos(b) \cdot \cos(c) + \sin(b) \cdot \sin(c) \cdot \cos(\alpha)) \\ - &= \cos^{-1}(\cos(44.638806) \cdot \cos(70.936778) + \sin(44.638806) \cdot \sin(70.936778) \cdot \cos(96.375)) \\ + &= \cos^{-1}(\cos(44.638806^\circ) \cdot \cos(70.936778^\circ) + \sin(44.638806^\circ) \cdot \sin(70.936778^\circ) \cdot \cos(96.375^\circ)) \\ &= \underline{\underline{80.8707801^\circ}} \end{align*} Für $\beta$ und $\gamma$ nutzen wir den sphärischen Seitenkosinussatz: \begin{align*} \beta &= \cos^{-1} \bigg[\frac{\cos(b)-\cos(a) \cdot \cos(c)}{\sin(a) \cdot \sin(c)}\bigg] \\ - &= \cos^{-1} \bigg[\frac{\cos(44.638806)-\cos(80.8707801) \cdot \cos(70.936778)}{\sin(80.8707801) \cdot \sin(70.936778)}\bigg] \\ + &= \cos^{-1} \bigg[\frac{\cos(44.638806^\circ)-\cos(80.8707801^\circ) \cdot \cos(70.936778^\circ)}{\sin(80.8707801^\circ) \cdot \sin(70.936778^\circ)}\bigg] \\ &= \underline{\underline{45.0115314^\circ}} \\ \gamma &= \cos^{-1} \bigg[\frac{\cos(c)-\cos(b) \cdot \cos(a)}{\sin(a) \cdot \sin(b)}\bigg] \\ - &= \cos^{-1} \bigg[\frac{\cos(70.936778)-\cos(44.638806) \cdot \cos(80.8707801)}{\sin(80.8707801) \cdot \sin(44.638806)}\bigg] \\ + &= \cos^{-1} \bigg[\frac{\cos(70.936778^\circ)-\cos(44.638806^\circ) \cdot \cos(80.8707801^\circ)}{\sin(80.8707801^\circ) \cdot \sin(44.638806^\circ)}\bigg] \\ &=\underline{\underline{72.0573328^\circ}} \end{align*} @@ -145,13 +145,13 @@ Für $\beta$ und $\gamma$ nutzen wir den sphärischen Seitenkosinussatz: \vspace*{-4mm} \hbox to\textwidth{% \begin{minipage}{8.4cm}% -Als nächstes berechnen wir die Seiten $h_b$, $h_c$ und die Innenwinkel $\beta_1$ und $\gamma_1$. +Als nächstes berechnen wir die Seiten $h_B$, $h_B$ und die Innenwinkel $\beta_1$ und $\gamma_1$. \begin{align*} -h_b&=90^\circ - h_b +h_B&=90^\circ - pbb = 90^\circ - 47.42744^\circ \\ &= \underline{\underline{42.572556^\circ}} \\ - h_c &= 90^\circ - h_c + h_C &= 90^\circ - pc = 90^\circ - 50.256027^\circ \\ &= \underline{\underline{39.743973^\circ}} \end{align*} @@ -160,12 +160,12 @@ h_b&=90^\circ - h_b \raisebox{-2.8cm}{\includegraphics{papers/nav/bilder/position3.pdf}}% } \begin{align*} -\beta_1 &= \cos^{-1} \bigg[\frac{\cos(h_c)-\cos(a) \cdot \cos(h_b)}{\sin(a) \cdot \sin(h_b)}\bigg] \\ - &= \cos^{-1} \bigg[\frac{\cos(39.743973)-\cos(80.8707801) \cdot \cos(42.572556)}{\sin(80.8707801) \cdot \sin(42.572556)}\bigg] \\ +\beta_1 &= \cos^{-1} \bigg[\frac{\cos(h_c)-\cos(a) \cdot \cos(h_B)}{\sin(a) \cdot \sin(h_B)}\bigg] \\ + &= \cos^{-1} \bigg[\frac{\cos(39.743973^\circ)-\cos(80.8707801^\circ) \cdot \cos(42.572556^\circ)}{\sin(80.8707801^\circ) \cdot \sin(42.572556^\circ)}\bigg] \\ &=\underline{\underline{12.5211127^\circ}} \\ -\gamma_1 &= \cos^{-1} \bigg[\frac{\cos(h_b)-\cos(a) \cdot \cos(h_c)}{\sin(a) \cdot \sin(h_c)}\bigg] \\ - &= \cos^{-1} \bigg[\frac{\cos(42.572556)-\cos(80.8707801) \cdot \cos(39.743973)}{\sin(80.8707801) \cdot \sin(39.743973)}\bigg] \\ +\gamma_1 &= \cos^{-1} \bigg[\frac{\cos(h_b)-\cos(a) \cdot \cos(h_C)}{\sin(a) \cdot \sin(h_C)}\bigg] \\ + &= \cos^{-1} \bigg[\frac{\cos(42.572556^\circ)-\cos(80.8707801^\circ) \cdot \cos(39.743973^\circ)}{\sin(80.8707801^\circ) \cdot \sin(39.743973^\circ)}\bigg] \\ &=\underline{\underline{13.2618475^\circ}} \end{align*} @@ -178,15 +178,15 @@ Als erstes müssen wir den Winkel $\beta_2$ berechnen: \beta_2 &= \beta + \beta_1 = 45.011513^\circ + 12.5211127^\circ \\ &=\underline{\underline{44.6687451^\circ}} \end{align*} -Danach können wir mithilfe von $\beta_2$, $c$ und $h_b$ die Seite $l$ berechnen: +Danach können wir mithilfe von $\beta_2$, $c$ und $h_B$ die Seite $l$ berechnen: \begin{align*} l &= -\cos^{-1}(\cos(c) \cdot \cos(h_b) - + \sin(c) \cdot \sin(h_b) \cdot \cos(\beta_2)) \\ +\cos^{-1}(\cos(c) \cdot \cos(h_B) + + \sin(c) \cdot \sin(h_B) \cdot \cos(\beta_2)) \\ &= -\cos^{-1}(\cos(70.936778) \cdot \cos(42.572556)\\ -&\qquad + \sin(70.936778) \cdot \sin(42.572556) \cdot \cos(57.5326442)) \\ +\cos^{-1}(\cos(70.936778^\circ) \cdot \cos(42.572556^\circ)\\ +&\qquad + \sin(70.936778^\circ) \cdot \sin(42.572556^\circ) \cdot \cos(57.5326442^\circ)) \\ &= \underline{\underline{54.2833404^\circ}} \end{align*} \end{minipage}% @@ -199,7 +199,7 @@ l Damit wir gleich den Längengrad berechnen können, benötigen wir noch den Winkel $\omega$: \begin{align*} \omega &= \cos^{-1} \bigg[\frac{\cos(h_b)-\cos(c) \cdot \cos(l)}{\sin(c) \cdot \sin(l)}\bigg] \\ - &=\cos^{-1} \bigg[\frac{\cos(42.572556)-\cos(70.936778) \cdot \cos(54.2833404)}{\sin(70.936778) \cdot \sin(54.2833404)}\bigg] \\ + &=\cos^{-1} \bigg[\frac{\cos(42.572556^\circ)-\cos(70.936778^\circ) \cdot \cos(54.2833404^\circ)}{\sin(70.936778^\circ) \cdot \sin(54.2833404^\circ)}\bigg] \\ &= \underline{\underline{44.6687451^\circ}} \end{align*} @@ -216,11 +216,11 @@ Damit wir gleich den Längengrad berechnen können, benötigen wir noch den Wink Wie wir sehen, stimmen die berechneten Koordinaten mit den Koordinaten des Punktes, an welchem gemessen wurde überein. \subsection{Fazit} -Die theoretische Anleitung im Abschnitt 21.6 scheint grundsätzlich zu funktionieren. +Die theoretische Anleitung im Abschnitt \ref{sta} scheint grundsätzlich zu funktionieren. Allerdings gab es zwei interessante Probleme. -Einerseits das Problem, ob der Punkt P sich oberhalb oder unterhalb von $a$ befindet. -Da wir eigentlich wussten, wo der gesuchte Punkt P ist, konnten wir das Dreieck anhand der Koordinaten der Bildpunkte richtig aufstellen. +Einerseits das Problem, ob der Punkt $P$ sich oberhalb oder unterhalb von $a$ befindet. +Da wir eigentlich wussten, wo der gesuchte Punkt $P$ ist, konnten wir das Dreieck anhand der Koordinaten der Bildpunkte richtig aufstellen. In der Praxis muss man aber schon wissen, auf welchem Breitengrad man ungefähr ist. Dies weis man in der Regeln aber, da die eigene Breite die Höhe des Polarsterns ist. Diese Höhe wird mit dem Sextant gemessen. @@ -228,7 +228,7 @@ Diese Höhe wird mit dem Sextant gemessen. Andererseits ist da noch ein Problem mit dem Sinussatz. Beim Sinussatz gibt es immer zwei Lösungen, weil \[ \sin(\pi-a)=\sin(a).\] Da kann es sein (und war in unserem Fall auch so), dass man das falsche Ergebnis erwischt. -Durch diese Erkenntnis haben wir nur Kosinussätze verwendet und dies ebenfalls im Abschnitt 21.6 abgeändert, da es für den Leser auch relevant sein kann, wenn er es Probieren möchte. +Wegen dieser Erkenntnis haben wir nur Kosinussätze verwendet und dies ebenfalls im Abschnitt \ref{sta} abgeändert, da es für den Leser auch relevant sein kann, wenn er es Probieren möchte. diff --git a/buch/papers/nav/flatearth.tex b/buch/papers/nav/flatearth.tex index 3b08e8d..d1d5a9b 100644 --- a/buch/papers/nav/flatearth.tex +++ b/buch/papers/nav/flatearth.tex @@ -6,6 +6,7 @@ \begin{center} \includegraphics[width=10cm]{papers/nav/bilder/projektion.png} \caption[Mercator Projektion]{Mercator Projektion} + \label{merc} \end{center} \end{figure} @@ -17,7 +18,7 @@ Eratosthenes konnte etwa 100 Jahre später den Erdumfang berechnen. Er beobachtete, dass die Sonne in Syene mittags im Zenit steht und gleichzeitig in Alexandria unter einem Winkel einfällt. Mithilfe der Trigonometrie konnte er mit dem Abstand der Städte und dem Einfallswinkel den Umfang berechnen. -Der Kartograph Gerhard Mercator projizierte die Erdkugel wie in Abbildung 21.1 dargestellt auf ein Papier und erstellte so eine winkeltreue Karte. +Der Kartograph Gerhard Mercator projizierte die Erdkugel wie in Abbildung \ref{merc} dargestellt auf ein Papier und erstellte so eine winkeltreue Karte. Jedoch wurden die Länder, die einen grösseren Abstand zum Äquator haben vergrössert, damit die Winkel stimmen können. Wurde man also nun davon ausgehen, dass die Erde flach ist so würden wir nie dort ankommen wo wir es wollen. Dies sieht man zum Beispiel sehr gut, wenn man die Anwendung Google Earth und eine Weltkarte vergleicht. diff --git a/buch/papers/nav/nautischesdreieck.tex b/buch/papers/nav/nautischesdreieck.tex index 44153bd..36674ee 100644 --- a/buch/papers/nav/nautischesdreieck.tex +++ b/buch/papers/nav/nautischesdreieck.tex @@ -2,9 +2,9 @@ \subsection{Definition des Nautischen Dreiecks} Die Himmelskugel ist eine gedachte Kugel, welche die Erde und dessen Beobachter umgibt und als Rechenfläche für Koordinaten in der Astronomie und Geodäsie dient. Der Zenit ist jener Punkt, der vom Erdmittelpunkt durch denn eigenen Standort an die Himmelskugel verlängert wird. -Ein Gestirn ist ein Planet oder ein Fixstern, zu welchen es diverse Jahrbücher mit allen astronomischen Eigenschaften gibt. +Als Gestirne kommen Sterne und Planeten in Frage, zu welchen in diversen Jahrbüchern die für die Navigation nötigen Daten publiziert sind. Der Himmelspol ist der Nordpol an die Himmelskugel projiziert. -Das nautische Dreieck hat die Ecken Zenit, Gestirn und Himmelspol, wie man in der Abbildung 21.5 sehen kann. +Das nautische Dreieck hat die Ecken Zenit, Gestirn und Himmelspol, wie man in der Abbildung \ref{naut} sehen kann. Ursprünglich ist das nautische Dreieck ein Hilfsmittel der sphärischen Astronomie um die momentane Position eines Fixsterns oder Planeten an der Himmelskugel zu bestimmen. @@ -13,21 +13,24 @@ Ursprünglich ist das nautische Dreieck ein Hilfsmittel der sphärischen Astrono \begin{center} \includegraphics[width=8cm]{papers/nav/bilder/kugel3.png} \caption[Nautisches Dreieck]{Nautisches Dreieck} + \label{naut} \end{center} \end{figure} Man kann das nautische Dreieck auf die Erdkugel projizieren. Dieses Dreieck nennt man dann Bilddreieck. Als Bildpunkt wird in der astronomischen Navigation der Punkt bezeichnet, an dem eine gedachte Linie vom Mittelpunkt eines beobachteten Gestirns zum Mittelpunkt der Erde die Erdoberfläche schneidet. -Die Projektion auf der Erdkugel hat die Ecken Nordpol, Standort und Bildpunkt. +Die Projektion des nautischen Dreiecks auf die Erdkugel hat die Ecken Nordpol, Standort und Bildpunkt. \section{Standortbestimmung ohne elektronische Hilfsmittel} +\label{sta} Um den eigenen Standort herauszufinden, wird in diesem Kapitel die Projektion des nautische Dreiecks auf die Erdkugel zur Hilfe genommen. Mithilfe eines Sextanten, einem Jahrbuch und der sphärischen Trigonometrie kann man dann die Längen- und Breitengrade des eigenen Standortes bestimmen. -Was ein Sextant und ein Jahrbuch ist, wird im Abschnitt 21.6.3 erklärt. +Was ein Sextant und ein Jahrbuch ist, wird im Abschnitt \ref{ephe} erklärt. \begin{figure} \begin{center} \includegraphics[width=10cm]{papers/nav/bilder/dreieck.pdf} \caption[Dreieck für die Standortbestimmung]{Dreieck für die Standortbestimmung} + \label{d1} \end{center} \end{figure} @@ -44,10 +47,11 @@ Für die Standortermittlung benötigt man als weiteren Punkt ein Gestirn bzw. se Damit das trigonometrische Rechnen einfacher wird, werden hier zwei Gestirne zur Hilfe genommen. Es gibt diverse Gestirne, die man nutzen kann wie zum Beispiel die Sonne, der Mond oder die vier Navigationsplaneten Venus, Mars, Jupiter und Saturn. -Die Bildpunkte von den beiden Gestirnen $X$ und $Y$ bilden die beiden Ecken $B$ und $C$ im Dreieck der Abbildung 21.5. +Die Bildpunkte von den beiden Gestirnen $X$ und $Y$ bilden die beiden Ecken $B$ und $C$ im Dreieck der Abbildung \ref{d1}. \subsection{Ephemeriden} -Zu all diesen Gestirnen gibt es Ephemeriden. -Diese enthalten die Rektaszensionen und Deklinationen in Abhängigkeit von der Zeit. +\label{ephe} +Zu all diesen Gestirnen gibt es Ephemeridentabellen. +Diese Tabellen enthalten die Rektaszensionen und Deklinationen in Abhängigkeit von der Zeit. \begin{figure} \begin{center} @@ -63,20 +67,19 @@ Die Deklination $\delta$ beschreibt den Winkel zwischen dem Himmelsäquator und Die Rektaszension $\alpha$ gibt an, in welchem Winkel das Gestirn zum Frühlingspunkt, welcher der Nullpunkt auf dem Himmelsäquator ist, steht und geht vom Koordinatensystem der Himmelskugel aus. Die Tatsache, dass sich die Himmelskugel ca. vier Minuten schneller um die eigene Achse dreht als die Erdkugel, stellt hier ein kleines Problem dar. -Die Lösung ist die Sternzeit. -Mit dieser können wir die schnellere Drehung der Himmelskugel ausgleichen und können die am Frühlingspunkt (21. März) 12:00 Uhr ist die Sternzeit $\theta = 0$. - -Die Sternzeit geht vom Frühlungspunkt aus, an welchem die Sonne den Himmelsäquator schneidet. +Die Lösung ist die Sternzeit $\theta$. +Mit dieser können wir die schnellere Drehung der Himmelskugel ausgleichen. +Die Sternzeit geht vom Frühlungspunkt aus, an welchem die Sonne den Himmelsäquator schneidet und $\theta=0$ ist. Für die Standortermittlung auf der Erdkugel ist es am einfachsten, wenn man die Sternzeit von Greenwich berechnet. Für die Sternzeit von Greenwich $\theta$ braucht man als erstes das Julianische Datum $T$ vom aktuellen Tag, welches sich leicht nachschlagen lässt. Im Anschluss berechnet man die Sternzeit von Greenwich -\[\theta = 6^h 41^m 50^s,54841 + 8640184^s,812866 \cdot T + 0^s,093104 \cdot T^2 - 0^s,0000062 \cdot T^3.\] +\[\theta = 6^h 41^m 50^s.54841 + 8640184^s.812866 \cdot T + 0^s.093104 \cdot T^2 - 0^s.0000062 \cdot T^3.\] Wenn man die Sternzeit von Greenwich ausgerechnet hat, kann man den Längengrad des Gestirns $\lambda = \theta - \alpha$ bestimmen, wobei $\alpha$ die Rektaszension und $\theta$ die Sternzeit von Greenwich ist. Dies gilt analog auch für das zweite Gestirn. \subsubsection{Sextant} -Ein Sextant ist ein nautisches Messinstrument, mit dem man den Winkel zwischen der Blickrichtung zu weit entfernten Objekten bestimmen kann. Es wird vor allem der Winkelabstand zu Gestirnen gemessen. +Ein Sextant ist ein nautisches Messinstrument, mit dem man den Winkel zwischen der Blickrichtung zu weit entfernten Objekten bestimmen kann. Es wird vor allem der Winkelabstand vom Horizont zum Gestirn gemessen. Man benutzt ihn vor allem für die astronomische Navigation auf See. \begin{figure} @@ -85,22 +88,24 @@ Man benutzt ihn vor allem für die astronomische Navigation auf See. \caption[Sextant]{Sextant} \end{center} \end{figure} -\subsection{Bestimmung des eigenen Standortes $P$} +\subsection{Bestimmung des eigenen Standortes $P$} \label{p} +Wir nehmen die Abbildung \ref{d2} zur Hilfe. Nun hat man die Koordinaten der beiden Gestirne und man weiss die Koordinaten des Nordpols. Damit wir unseren Standort bestimmen können, bilden wir zuerst das Dreieck $ABC$, dann das Dreieck $BPC$ und zum Schluss noch das Dreieck $ABP$. -Mithilfe dieser Dreiecken können wir die einfachen Sätze der sphärischen Trigonometrie anwenden und benötigen lediglich ein Ephemeride zu den Gestirnen und einen Sextant. +Auf diese Dreiecke können wir die einfachen Sätze der sphärischen Trigonometrie anwenden und benötigen lediglich ein Ephemeride zu den Gestirnen und einen Sextant. \begin{figure} \begin{center} \includegraphics[width=8cm]{papers/nav/bilder/dreieck.pdf} \caption[Dreieck für die Standortbestimmung]{Dreieck für die Standortbestimmung} + \label{d2} \end{center} \end{figure} \subsubsection{Dreieck $ABC$} \begin{center} - \begin{tabular}{ c c c } + \begin{tabular}{ l l l } Ecke && Name \\ \hline $A$ && Nordpol \\ @@ -111,18 +116,15 @@ Mithilfe dieser Dreiecken können wir die einfachen Sätze der sphärischen Trig Mit unserem erlangten Wissen können wir nun alle Seiten des Dreiecks $ABC$ berechnen. -Die Seite vom Nordpol zum Bildpunkt $X$ sei $c$. -Dann ist $c = \frac{\pi}{2} - \delta_1$. - -Die Seite vom Nordpol zum Bildpunkt $Y$ sei $b$. -Dann ist $b = \frac{\pi}{2} - \delta_2$. - -Der Innenwinkel bei der Ecke, wo der Nordpol ist sei $\alpha$. -Dann ist $ \alpha = |\lambda_1 - \lambda_2|$. +\begin{enumerate} + \item Die Seite vom Nordpol zum Bildpunkt $X$ sei $c$, dann ist $c = \frac{\pi}{2} - \delta_1$. + \item Die Seite vom Nordpol zum Bildpunkt $Y$ sei $b$, dann ist $b = \frac{\pi}{2} - \delta_2$. + \item Der Innenwinkel bei der Ecke, wo der Nordpol ist sei $\alpha$, dann ist $ \alpha = |\lambda_1 - \lambda_2|$. +\end{enumerate} mit \begin{center} - \begin{tabular}{ c c c } + \begin{tabular}{ l l l } Ecke && Name \\ \hline $\delta_1$ && Deklination vom Bildpunkt $X$ \\ @@ -141,7 +143,7 @@ Es ist darauf zu achten, dass hier natürlich die Seitenlängen in Bogenmass sin Jetzt fehlen noch die beiden anderen Innenwinkel $\beta$ und\ $\gamma$. Diese bestimmen wir mithilfe des Kosinussatzes: \[\beta=\cos^{-1} \bigg[\frac{\cos(b)-\cos(a) \cdot \cos(c)}{\sin(a) \cdot \sin(c)}\bigg]\] und \[\gamma = \cos^{-1} \bigg[\frac{\cos(c)-\cos(b) \cdot \cos(a)}{\sin(a) \cdot \sin(b)}.\bigg]\] -Schlussendlich haben wir die Seiten $a$ $b$ und $c$, die Ecken A,B und C und die Winkel $\alpha$, $\beta$ und $\gamma$ bestimmt und somit das ganze Kugeldreieck $ABC$ berechnet. +Schlussendlich haben wir die Seiten $a$, $b$ und $c$, die Ecken $A$,$B$ und $C$ und die Winkel $\alpha$, $\beta$ und $\gamma$ bestimmt und somit das ganze Kugeldreieck $ABC$ berechnet. \subsubsection{Dreieck $BPC$} Wir bilden nun ein zweites Dreieck, welches die Ecken $B$ und $C$ des ersten Dreiecks besitzt. @@ -150,12 +152,11 @@ Unser Standort definiere sich aus einer geographischen Breite $\delta$ und einer Die Seite von $P$ zu $B$ sei $pb$ und die Seite von $P$ zu $C$ sei $pc$. Die beiden Seitenlängen kann man mit dem Sextant messen und durch eine einfache Formel bestimmen, nämlich $pb=\frac{\pi}{2} - h_{B}$ und $pc=\frac{\pi}{2} - h_{C}$ - mit $h_B=$ Höhe von Gestirn in $B$ und $h_C=$ Höhe von Gestirn in $C$ mit Sextant gemessen. Zum Schluss müssen wir noch den Winkel $\beta_1$ mithilfe des Seiten-Kosinussatzes \[\cos(pb)=\cos(pc)\cdot\cos(a)+\sin(pc)\cdot\sin(a)\cdot\cos(\beta_1)\] mit den bekannten Seiten $pc$, $pb$ und $a$ bestimmen. \subsubsection{Dreieck $ABP$} -Nun muss man eine Verbindungslinie ziehen zwischen $P$ und $A$. Die Länge $l$ dieser Linie entspricht der gesuchten geographischen Breite $\delta$. Diese lässt sich mithilfe des Dreiecks $ABP$, den bekannten Seiten $c$ und $pb$ und des Seiten-Kosinussatzes berechnen. +Nun muss man eine Verbindungslinie des Standorts zwischen $P$ und $A$ ziehen. Die Länge $l$ dieser Linie entspricht der gesuchten geographischen Breite $\delta$. Diese lässt sich mithilfe des Dreiecks $ABP$, den bekannten Seiten $c$ und $pb$ und des Seiten-Kosinussatzes berechnen. Für den Seiten-Kosinussatz benötigt es noch $\kappa=\beta + \beta_1$. Somit ist \[\cos(l) = \cos(c)\cdot \cos(pb) + \sin(c) \cdot \sin(pb) \cdot \cos(\kappa)\] und @@ -163,7 +164,7 @@ und \delta =\cos^{-1} [\cos(c) \cdot \cos(pb) + \sin(c) \cdot \sin(pb) \cdot \cos(\kappa)]. \] -Für die Geographische Länge $\lambda$ des eigenen Standortes nutzt man den Winkel $\omega$, welcher sich im Dreieck $ACP$ in der Ecke bei $A$ befindet. -Mithilfe des Kosinussatzes können wir \[\omega = \cos^{-1} \bigg[\frac{\cos(pb)-\cos(c) \cdot \cos(l)}{\sin(c) \cdot \sin(l)}.\bigg]\] berechnen und schlussentlich dann -\[\lambda=\lambda_1 - \omega\] +Für die geographische Länge $\lambda$ des eigenen Standortes nutzt man den Winkel $\omega$, welcher sich im Dreieck $ACP$ in der Ecke bei $A$ befindet. +Mithilfe des Kosinussatzes können wir \[\omega = \cos^{-1} \bigg[\frac{\cos(pb)-\cos(c) \cdot \cos(l)}{\sin(c) \cdot \sin(l)}\bigg]\] berechnen und bekommen schlussendlich die geographische Länge +\[\lambda=\lambda_1 - \omega,\] wobei $\lambda_1$ die Länge des Bildpunktes $X$ von $C$ ist. diff --git a/buch/papers/nav/references.bib b/buch/papers/nav/references.bib index 236323b..10dbf66 100644 --- a/buch/papers/nav/references.bib +++ b/buch/papers/nav/references.bib @@ -32,4 +32,10 @@ pages = {607--627}, url = {https://doi.org/10.1016/j.acha.2017.11.004} } +@online{nav:winkel, + editor={Unbekannt}, + title = {Sphärische Trigonometrie}, + year={2022} + url = {https://de.wikipedia.org/wiki/Sphärische_Trigonometrie} +} diff --git a/buch/papers/nav/sincos.tex b/buch/papers/nav/sincos.tex index a1653e8..f82a057 100644 --- a/buch/papers/nav/sincos.tex +++ b/buch/papers/nav/sincos.tex @@ -2,18 +2,18 @@ \section{Sphärische Navigation und Winkelfunktionen} -Es gibt Hinweise, dass sich schon die Babylonier und Ägypter vor 4000 Jahren sich mit Problemen der sphärischen Trigonometrie beschäftigt haben um den Lauf von Gestirnen zu berechnen. +Es gibt Hinweise, dass sich schon die Babylonier und Ägypter vor 4000 Jahren mit Problemen der sphärischen Trigonometrie beschäftigt haben, um den Lauf von Gestirnen zu berechnen. Jedoch konnten sie dieses Problem nicht lösen. +Die Geschichte der sphärischen Trigonometrie ist daher eng mit der Astronomie verknüpft. Ca. 350 BCE dachten die Griechen über Kugelgeometrie nach,sie wurde damit zu einer Hilfswissenschaft der Astronomen. -Die Geschichte der sphärischen Trigonometrie ist daher eng mit der Astronomie verknüpft. Ca. 350 vor Christus dachten die Griechen über Kugelgeometrie nach und sie wurde zu einer Hilfswissenschaft der Astronomen. Zwischen 190 v. Chr. und 120 v. Chr. lebte ein griechischer Astronom names Hipparchos. -Dieser entwickelte unter anderem die Chordentafeln, welche die Chord - Funktionen, auch Chord genannt, beinhalten und im Abschnitt 3.1.1 beschrieben sind. +Dieser entwickelte unter anderem die Chordentafeln, welche die Chord - Funktionen, auch Chord genannt, beinhalten. Chord ist der Vorgänger der Sinusfunktion und galt damals als wichtigste Grundlage der Trigonometrie. In dieser Zeit wurden auch die ersten Sternenkarten angefertigt. Damals kannte man die Sinusfunktionen noch nicht. +Die Definition der trigonometrischen Funktionen aus Griechenland ermöglicht nur, rechtwinklige Dreiecke zu berechnen. Aus Indien stammten die ersten Ansätze zu den Kosinussätzen. -Aufbauend auf den indischen und griechischen Forschungen entwickeln die Araber um das 9. Jahrhundert den Sinussatz. -Die Definition der trigonometrischen Funktionen ermöglicht nur, rechtwinklige Dreiecke zu berechnen. +Aufbauend auf den indischen und griechischen Forschungen entwickeln die Araber um das 9. Jahrhundert den Sinussatz. Die Beziehung zwischen Seiten und Winkeln sind komplizierter und als Sinus- und Kosinussätze bekannt. Doch ein paar weitere Jahrhunderte vergingen bis zu diesem Thema wieder verstärkt Forschung betrieben wurde, da im 15. Jahrhundert grosse Entdeckungsreisen, hauptsächlich per Schiff, erfolgten und die Orientierung mit Sternen vermehrt an Wichtigkeit gewann. Man nutzte für die Kartographie nun die Kugelgeometrie, um die Genauigkeit zu erhöhen. diff --git a/buch/papers/nav/trigo.tex b/buch/papers/nav/trigo.tex index fa53189..c96aaa5 100644 --- a/buch/papers/nav/trigo.tex +++ b/buch/papers/nav/trigo.tex @@ -7,46 +7,48 @@ Sein Mittelpunkt fällt immer mit dem Mittelpunkt der Kugel zusammen und ein Sch Da es unendlich viele Möglichkeiten gibt, eine Kugel so zu zerschneiden, dass die Schnittebene den Kugelmittelpunkt trifft, gibt es auch unendlich viele Grosskreise. Grosskreisbögen sind die kürzesten Verbindungslinien zwischen zwei Punkten auf der Kugel. -Werden drei voneinander verschiedene Punkte, die sich nicht auf derselben Grosskreisebene befinden, mit Grosskreisbögen verbunden werden, so entsteht ein Kugeldreieck $ABC$. -Für ein Kugeldreieck gilt, dass die Summe der drei Seiten kleiner als $2\pi$ aber grösser als 0 ist. -$A$, $B$ und $C$ sind die Ecken des Dreiecks und dessen Seiten sind die Grosskreisbögen zwischen den Eckpunkten (siehe Abbildung 21.2). - Da die Länge der Grosskreisbögen wegen der Abhängigkeit vom Kugelradius ungeeignet ist, wird die Grösse einer Seite mit dem zugehörigen Mittelpunktwinkel des Grosskreisbogens angegeben. Laut dieser Definition ist die Seite $c$ der Winkel $AMB$, wobei der Punkt $M$ die Erdmitte ist. Man kann bei Kugeldreiecken nicht so einfach unterscheiden, was Innen oder Aussen ist. Wenn man drei Eckpunkte miteinander verbindet, ergeben sich immer 16 Kugeldreiecke. +Werden drei voneinander verschiedene Punkte, die sich nicht auf derselben Grosskreisebene befinden, mit Grosskreisbögen verbunden werden, so entsteht ein Kugeldreieck $ABC$. +Für ein Kugeldreieck gilt, dass die Summe der drei Seiten kleiner als $2\pi$ aber grösser als 0 ist. +$A$, $B$ und $C$ sind die Ecken des Dreiecks und dessen Seiten sind die Grosskreisbögen zwischen den Eckpunkten (siehe Abbildung \ref{kugel}). + \begin{figure} \begin{center} - \includegraphics[width=6cm]{papers/nav/bilder/kugel1.png} + \includegraphics[width=3.5cm]{papers/nav/bilder/kugel1.png} \caption[Das Kugeldreieck]{Das Kugeldreieck} + \label{kugel} \end{center} \end{figure} \subsection{Rechtwinkliges Dreieck und rechtseitiges Dreieck} -In der sphärischen Trigonometrie gibt es eine Symetrie zwischen Seiten und Winkel, also zu jedem Satz über Seiten und Winkel gibt es einen entsprechenden Satz, mit dem man Winkel durch Seiten und Seiten durch Winkel ersetzt hat. +In der sphärischen Trigonometrie gibt es eine Symetrie zwischen Seiten und Winkeln, also zu jedem Satz über Seiten und Winkel gibt es einen entsprechenden Satz, mit dem man Winkel durch Seiten und Seiten durch Winkel ersetzt hat. Wie auch im ebenen Dreieck gibt es beim Kugeldreieck auch ein rechtwinkliges Kugeldreieck, bei dem ein Winkel $\frac{\pi}{2}$ ist. -Ein Rechtseitiges Dreieck gibt es jedoch nur beim Kugeldreieck, weil dort eine Seitenlänge $\frac{\pi}{2}$ lang sein muss, wie man in der Abbildung 21.3 sehen kann. +Ein rechtseitiges Dreieck gibt es jedoch nur beim Kugeldreieck, weil dort eine Seitenlänge $\frac{\pi}{2}$ lang sein muss, wie man in der Abbildung \ref{recht} sehen kann. \begin{figure} \begin{center} - \includegraphics[width=10cm]{papers/nav/bilder/recht.jpg} - \caption[Rechtseitiges Kugeldreieck]{Rechtseitiges Kugeldreieck} + \includegraphics[width=5cm]{papers/nav/bilder/recht.jpg} + \caption[Rechtseitiges und rechtwinkliges Kugeldreieck]{Rechtseitiges und rechtwinkliges Kugeldreieck} + \label{recht} \end{center} \end{figure} \subsection{Winkelsumme und Flächeninhalt} -\begin{figure} +%\begin{figure} ----- Brauche das Bild eigentlich nicht! - \begin{center} - \includegraphics[width=8cm]{papers/nav/bilder/kugel2.png} - \caption[Winkelangabe im Kugeldreieck]{Winkelangabe im Kugeldreieck} - \end{center} -\end{figure} +% \begin{center} +% \includegraphics[width=8cm]{papers/nav/bilder/kugel2.png} +% \caption[Winkelangabe im Kugeldreieck]{Winkelangabe im Kugeldreieck} +% \end{center} +%\end{figure} Die Winkel eines Kugeldreiecks sind die, welche die Halbtangenten in den Eckpunkten einschliessen. @@ -64,12 +66,13 @@ beschreibt die Abweichung der Innenwinkelsumme von $\pi$ und ist proportional zu \subsubsection{Flächeninnhalt} Mithilfe des Radius $r$ und dem sphärischen Exzess $\epsilon$ gilt für den Flächeninhalt -\[ F=\frac{\pi \cdot r^2}{\frac{\pi}{2}} \cdot \epsilon\]. +\[ F=\frac{\pi \cdot r^2}{\frac{\pi}{2}} \cdot \epsilon = 2 \cdot r^2 \cdot \epsilon\]. +\cite{nav:winkel} \subsection{Seiten und Winkelberechnung} Es gibt in der sphärischen Trigonometrie eigentlich gar keinen Satz des Pythagoras, wie man ihn aus der zweidimensionalen Geometrie kennt. -Es gibt aber auch einen Satz, der alle drei Seiten eines rechtwinkligen Kugeldreiecks, nicht aber für das rechtseitige Kugeldreieck, in eine Beziehung bringt und zum jetzigen Punkt noch unklar ist, weshalb dieser Satz so aussieht. -Die Approximation folgt noch. +Es gibt aber einen Satz, der alle drei Seiten eines rechtwinkligen Kugeldreiecks in eine Beziehung bringt. Dieser Satz gilt jedoch nicht für das rechtseitige Kugeldreieck. +Die Approximation im nächsten Abschnitt wird erklären, warum man dies als eine Form des Satzes des Pythagoras sehen kann. Es gilt nämlich: \begin{align} \cos c = \cos a \cdot \cos b \quad \text{wenn} \nonumber & @@ -94,14 +97,14 @@ Die Korrespondenzen zwischen der ebenen- und sphärischen Trigonometrie werden i \subsubsection{Sphärischer Satz des Pythagoras} Die Korrespondenz \[ a^2 \approx 1- \cos(a)\] liefert unter Anderem einen entsprechenden Satz des Pythagoras, nämlich -\begin{align} +\begin{align*} \cos(a)\cdot \cos(b) &= \cos(c) \\ \bigg[1-\frac{a^2}{2}\bigg] \cdot \bigg[1-\frac{b^2}{2}\bigg] &= 1-\frac{c^2}{2} \intertext{Höhere Potenzen vernachlässigen} \xcancel{1}- \frac{a^2}{2} - \frac{b^2}{2} + \xcancel{\frac{a^2b^2}{4}}&= \xcancel{1}- \frac{c^2}{2} \\ -a^2-b^2 &=-c^2\\ a^2+b^2&=c^2 -\end{align} -Dies ist der wohlbekannte ebener Satz des Pythagoras. +\end{align*} +Dies ist der wohlbekannte ebene Satz des Pythagoras. \subsubsection{Sphärischer Sinussatz} Den sphärischen Sinussatz -- cgit v1.2.1 From e69e3df9a1e10de9e3122d694da2e923dad711a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 5 Jul 2022 18:04:48 +0200 Subject: elliptic stuff complete --- buch/chapters/110-elliptisch/dglsol.tex | 7 +- buch/chapters/110-elliptisch/elltrigo.tex | 63 +++- buch/chapters/110-elliptisch/lemniskate.tex | 12 +- buch/chapters/110-elliptisch/mathpendel.tex | 323 +++++++++++++-------- buch/chapters/110-elliptisch/uebungsaufgaben/1.tex | 1 + buch/chapters/part1.tex | 1 + buch/chapters/references.bib | 17 +- 7 files changed, 286 insertions(+), 138 deletions(-) diff --git a/buch/chapters/110-elliptisch/dglsol.tex b/buch/chapters/110-elliptisch/dglsol.tex index 8a638a7..613f130 100644 --- a/buch/chapters/110-elliptisch/dglsol.tex +++ b/buch/chapters/110-elliptisch/dglsol.tex @@ -343,7 +343,8 @@ der unvollständigen elliptischen Integrale. % % Numerische Berechnung mit dem arithmetisch-geometrischen Mittel % -\subsubsection{Numerische Berechnung mit dem arithmetisch-geometrischen Mittel} +\subsubsection{Numerische Berechnung mit dem arithmetisch-geometrischen Mittel +\label{buch:elliptisch:jacobi:agm}} \begin{table} \centering \begin{tikzpicture}[>=latex,thick] @@ -685,3 +686,7 @@ x(t) = a\operatorname{zn}(b(t-t_0)), wobei die Funktion $\operatorname{zn}(u,k)$ auf Grund der Vorzeichen von $A$, $B$ und $C$ gewählt werden müssen. +Die Übungsaufgaben~\ref{buch:elliptisch:aufgabe:1} ist als +Lernaufgabe konzipiert, mit der die Lösung der Differentialgleichung +des harmonischen Oszillators beispielhaft durchgearbeitet +werden kann. diff --git a/buch/chapters/110-elliptisch/elltrigo.tex b/buch/chapters/110-elliptisch/elltrigo.tex index 0ff9cdb..49e6686 100644 --- a/buch/chapters/110-elliptisch/elltrigo.tex +++ b/buch/chapters/110-elliptisch/elltrigo.tex @@ -27,6 +27,11 @@ Funktionen $\operatorname{sn}(u,k)$, $\operatorname{cn}(u,k)$ und $\operatorname{dn}(u,k)$, die ähnliche Eigenschaften haben wie die trigonometrischen Funktionen. +Die nachstehende Darstellung ist stark inspiriert von William Schwalms +sehr zielorientierten Einführung +\cite{buch:schwalm}, welche auch als Youtube-Videovorlesung +\cite{buch:schwalm-youtube} zur Verfügung steht. + % % Geometrie einer Ellipse % @@ -1012,10 +1017,60 @@ finden. Man beachte, dass in jeder Identität alle Funktionen den gleichen zweiten Buchstaben haben. -\subsubsection{TODO} -XXX algebraische Beziehungen \\ -XXX Additionstheoreme \\ -XXX Perioden +\subsubsection{Weitere Beziehungen} +Für die Jacobischen elliptischen Funktionen lässt sich eine grosse +Zahl weiterer Eigenschaften und Identitäten beweisen. +Zum Beispiel gibt es Aditionstheoreme, die im Grenzfall $k\to 0$ zu +den Additionstheoremen für die trigonometrischen Funktionen werden. +\index{Additionstheorem}% +Ebenso kann man weitere algebraische Identitäten finden. +So lässt sich zum Beispiel die einzige reelle Nullstelle von $x^5+x=w$ +mit Jacobischen elliptischen Funktionen darstellen, während es +nicht möglich ist, diese Lösung als Wurzelausdruck zu schreiben. + +Die Jacobischen elliptischen Funktionen lassen sich statt auf dem +hier gewählten trigonometrischen Weg auch mit Hilfe der Jacobischen +Theta-Funktionen definieren, die Lösungen einer Wärmeleitungsgleichung +\index{Theta-Funktionen}% +\index{Wärmeleitungs-Gleichung}% +mit geeigneten Randbedingungen sind. +Diese Vorgehensweise hat den Vorteil, ziemlich direkt zu +Reihen- und Produktentwicklungen für die Funktionen zu führen. +Auch die Additionstheorem ergeben sich vergleichsweise leicht. +Dieser Zugang zu den Jacobischen elliptischen Funktionen wird in der +Standardreferenz~\cite{buch:ellfun-applications} gewählt. + +Bei anderen speziellen Funktionen waren Reihenentwicklungen ein +wichtiges Hilfsmittel zu deren numerischer Berechnung. +Bei den Jacobischen elliptischen Funktionen ist diese Methode +nicht zielführend. +Im Abschnitt~\ref{buch:elliptisch:subsection:differentialgleichungen} +wird gezeigt, dass Jacobische elliptische Funktionen gewisse nichtlineare +Differentialgleichungen zu lösen ermöglichen. +Dies zeigt auch, dass Jacobischen elliptischen Funktionen +Umkehrfunktionen der elliptischen Integrale sind, die in +Abschnitt~\ref{buch:elliptisch:subsection:agm} mit dem +arithmetisch-geometrischen Mittel berechnet wurden. +Die dort angetroffenen numerischen Schwierigkeiten treten bei der +Berechnung der Umkehrfunktion jedoch nicht auf. + +Die grundlegende Mechanik dieser Berechnungsmethode wird auf +Seite~\pageref{buch:elliptisch:jacobi:agm} dargestellt und +und in den Übungsaufgaben +\ref{buch:elliptisch:aufgabe:2} bis \ref{buch:elliptisch:aufgabe:5} +etwas näher untersucht wird. + +Aus der Theorie das arithmetisch-geometrischen Mittels lässt sich +die sogenannte Landen-Trans\-formation herleiten. +\index{Landen-Transformation}% +Sie stellt eine Verbindung zwischen +den Werten der elliptischen Funktionen zu verschiedenen Moduli $k$ her. +Sie ist die Basis aller effizienten Berechnungsmethoden. + + +% algebraische Beziehungen \\ +% Additionstheoreme \\ +% Perioden % use https://math.stackexchange.com/questions/3013692/how-to-show-that-jacobi-sine-function-is-doubly-periodic diff --git a/buch/chapters/110-elliptisch/lemniskate.tex b/buch/chapters/110-elliptisch/lemniskate.tex index 61476a0..04c137d 100644 --- a/buch/chapters/110-elliptisch/lemniskate.tex +++ b/buch/chapters/110-elliptisch/lemniskate.tex @@ -17,12 +17,6 @@ elliptischen Funktionen hergestellt werden. % \subsection{Lemniskate \label{buch:gemotrie:subsection:lemniskate}} -\begin{figure} -\centering -\includegraphics{chapters/110-elliptisch/images/lemniskate.pdf} -\caption{Bogenlänge und Radius der Lemniskate von Bernoulli. -\label{buch:elliptisch:fig:lemniskate}} -\end{figure} Die {\em Lemniskate von Bernoulli} ist die Kurve vierten Grades mit der Gleichung \index{Lemniskate von Bernoulli}% @@ -64,6 +58,12 @@ In dieser Normierung, der Standard-Lemniskaten, liegen die Scheitel bei $\pm 1$. Dies ist die Skalierung, die für die Definition des lemniskatischen Sinus und Kosinus verwendet werden soll. +\begin{figure} +\centering +\includegraphics{chapters/110-elliptisch/images/lemniskate.pdf} +\caption{Bogenlänge und Radius der Lemniskate von Bernoulli. +\label{buch:elliptisch:fig:lemniskate}} +\end{figure} \subsubsection{Polarkoordinaten} In Polarkoordinaten $x=r\cos\varphi$ und $y=r\sin\varphi$ diff --git a/buch/chapters/110-elliptisch/mathpendel.tex b/buch/chapters/110-elliptisch/mathpendel.tex index 39cb418..54b7531 100644 --- a/buch/chapters/110-elliptisch/mathpendel.tex +++ b/buch/chapters/110-elliptisch/mathpendel.tex @@ -53,7 +53,7 @@ enthält. Der Energieerhaltungssatz kann uns eine solche Gleichung geben. Die Summe von kinetischer und potentieller Energie muss konstant sein. Dies führt auf -\[ +\begin{equation} E_{\text{kinetisch}} + E_{\text{potentiell}} @@ -66,8 +66,9 @@ mgl(1-\cos\vartheta) + mgl(1-\cos\vartheta) = -E -\] +E. +\label{buch:elliptisch:mathpendel:energiegleichung} +\end{equation} Durch Auflösen nach $\dot{\vartheta}$ kann man jetzt die Differentialgleichung \[ @@ -94,159 +95,229 @@ Für $E>2mgl$ wird sich das Pendel im Kreis bewegen, für sehr grosse Energie ist die kinetische Energie dominant, die Verlangsamung im höchsten Punkt wird immer weniger ausgeprägt sein. -\begin{figure} -\centering -\includegraphics[width=\textwidth]{chapters/110-elliptisch/images/jacobiplots.pdf} -\caption{% -Abhängigkeit der elliptischen Funktionen von $u$ für -verschiedene Werte von $k^2=m$. -Für $m=0$ ist $\operatorname{sn}(u,0)=\sin u$, -$\operatorname{cn}(u,0)=\cos u$ und $\operatorname{dn}(u,0)=1$, diese -sind in allen Plots in einer helleren Farbe eingezeichnet. -Für kleine Werte von $m$ weichen die elliptischen Funktionen nur wenig -von den trigonometrischen Funktionen ab, -es ist aber klar erkennbar, dass die anharmonischen Terme in der -Differentialgleichung die Periode mit steigender Amplitude verlängern. -Sehr grosse Werte von $m$ nahe bei $1$ entsprechen der Situation, dass -die Energie des Pendels fast ausreicht, dass es den höchsten Punkt -erreichen kann, was es für $m$ macht. -\label{buch:elliptisch:fig:jacobiplots}} -\end{figure} + % % Koordinatentransformation auf elliptische Funktionen % \subsubsection{Koordinatentransformation auf elliptische Funktionen} Wir verwenden als neue Variable -\[ -y = \sin\frac{\vartheta}2 -\] -mit der Ableitung -\[ -\dot{y}=\frac12\cos\frac{\vartheta}{2}\cdot \dot{\vartheta}. -\] -Man beachte, dass $y$ nicht eine Koordinate in -Abbildung~\ref{buch:elliptisch:fig:mathpendel} ist. - -Aus den Halbwinkelformeln finden wir -\[ +\begin{align} +y +&= +\sin\frac{\vartheta}2 +&&\Rightarrow& +\cos^2\frac{\vartheta}2 +&= +1-y^2. +\label{buch:elliptisch:mathpendel:ydef} +\intertext{Die Ableitung ist} +\dot{y} +&= +\frac12\cos\frac{\vartheta}{2}\cdot \dot{\vartheta} +&&\Rightarrow& +\dot{y}^2 +&= +\frac14\cos^2\frac{\vartheta}2\cdot\dot{\vartheta}^2. +\label{buch:elliptisch:mathpendel:yabl} +\intertext{% +Man beachte, dass die Koordinate senkrecht zur $x$-Achse in +Abbildung~\ref{buch:elliptisch:fig:mathpendel} die Auslenkung +$l\sin\vartheta$ ist, $y$ ist also nicht die Auslenkung senkrecht +zur $x$-Achse! +Aus den Halbwinkelformeln finden wir ausserdem +} \cos\vartheta -= +&= 1-2\sin^2 \frac{\vartheta}2 = -1-2y^2. -\] -Dies können wir zusammen mit der -Identität $\cos^2\vartheta/2 = 1-\sin^2\vartheta/2 = 1-y^2$ -in die Energiegleichung einsetzen und erhalten -\[ -\frac12ml^2\dot{\vartheta}^2 + mgly^2 = E -\qquad\Rightarrow\qquad -\frac14 \dot{\vartheta}^2 = \frac{E}{2ml^2} - \frac{g}{2l}y^2. -\] -Der konstante Term auf der rechten Seite ist grösser oder kleiner als -$1$ je nachdem, ob das Pendel sich im Kreis bewegt oder nicht. +1-2y^2 +&&\Rightarrow& +1-\cos\vartheta +&= +2y^2. +\label{buch:elliptisch:mathpendel:halbwinkel} +\end{align} +Die Grösse $1-\cos\vartheta$ haben wir in der Energiegleichung +\eqref{buch:elliptisch:mathpendel:energiegleichung} +bereits angetroffen. -Durch Multiplizieren mit $\cos^2\frac{\vartheta}{2}=1-y^2$ +Die Identitäten +\eqref{buch:elliptisch:mathpendel:halbwinkel} +%und +%\eqref{buch:elliptisch:mathpendel:ydef} +können wir jetzt in die +Energiegleichung~\eqref{buch:elliptisch:mathpendel:energiegleichung} +einsetzen und erhalten +\begin{align} +\frac12ml^2\dot{\vartheta}^2 + 2mgly^2 +&= +E +\intertext{und nach Division durch $2ml^2$} +\frac14 \dot{\vartheta}^2 +&= +\frac{E}{2ml^2} - \frac{g}{l}y^2. +\label{buch:elliptisch:mathpendel:thetadgl} +\end{align} +%Der konstante Term auf der rechten Seite ist grösser oder kleiner als +%$1$ je nachdem, ob das Pendel sich im Kreis bewegt oder nicht. +Durch Multiplizieren mit der rechten Gleichung von +\eqref{buch:elliptisch:mathpendel:ydef} erhalten wir auf der linken Seite einen Ausdruck, den wir +mit Hilfe von \eqref{buch:elliptisch:mathpendel:yabl} als Funktion von $\dot{y}$ ausdrücken können. Wir erhalten -\begin{align*} -\frac14 +\begin{align} +\underbrace{\frac14 \cos^2\frac{\vartheta}2 \cdot -\dot{\vartheta}^2 +\dot{\vartheta}^2}_{\displaystyle=\dot{y}^2} &= -\frac14 (1-y^2) -\biggl(\frac{E}{2ml^2} -\frac{g}{2l}y^2\biggr) +\biggl(\frac{E}{2ml^2} -\frac{g}{l}y^2\biggr) +\notag \\ \dot{y}^2 &= -\frac{1}{4} (1-y^2) -\biggl(\frac{E}{2ml^2} -\frac{g}{2l}y^2\biggr) -\end{align*} +\biggl(\frac{E}{2ml^2} -\frac{g}{l}y^2\biggr) +\label{buch:elliptisch:mathpendel:ydgl} +\end{align} Die letzte Gleichung hat die Form einer Differentialgleichung für elliptische Funktionen. -Welche Funktion verwendet werden muss, hängt von der Grösse der -Koeffizienten in der zweiten Klammer ab. -Die Tabelle~\ref{buch:elliptisch:tabelle:loesungsfunktionen} -zeigt, dass in der zweiten Klammer jeweils einer der Terme -$1$ sein muss. +Welche Funktion verwendet werden muss, hängt von der relativen +Grösse der Koeffizienten in der zweiten Klammer ab. % -% Der Fall E < 2mgl +% Zeittransformation zur Elimination des konstanten Faktors % -\subsubsection{Der Fall $E<2mgl$} - - -Wir verwenden als neue Variable -\[ -y = \sin\frac{\vartheta}2 -\] -mit der Ableitung +\subsubsection{Zeittransformation} +Die Gleichung~\eqref{buch:elliptisch:mathpendel:ydgl} kann auch in +die Form +\begin{equation} +\frac{2ml^2}{E}\dot{y}^2 += +(1-y^2)\biggl(1-\frac{2mgl}{E}y^2\biggr) +\label{buch:elliptisch:mathpendel:ydgl2} +\end{equation} +gebracht werden. +Der konstante Faktor auf der linken Seite kann wie in der Diskussion +des anharmonischen Oszillators durch eine lineare +Transformation der Zeit zum Verschwinden gebracht werden. +Dazu setzt man $z(t) = y(bt)$ und bekommt \[ -\dot{y}=\frac12\cos\frac{\vartheta}{2}\cdot \dot{\vartheta}. +\frac{d}{dt}z(t) += +\frac{d}{dt}y(bt) \frac{d\,bt}{dt} += +b\dot{y}(bt). \] -Man beachte, dass $y$ nicht eine Koordinate in -Abbildung~\ref{buch:elliptisch:fig:mathpendel} ist. +Die Zeit muss also mit dem Faktor $\sqrt{2ml^2/E}$ skaliert werden. + +% +% Nullstellen der rechten Seite der Differentialgleichung +% +\subsubsection{Nullstellen der rechten Seite} +Die rechte Seite von \eqref{buch:elliptisch:mathpendel:ydgl2} +hat die beiden Nullstellen $1$ und +\begin{equation} +y_0=\sqrt{\frac{E}{2mgl}}. +\label{buch:elliptisch:mathpendel:y0} +\end{equation} +Die Differentialgleichung kann damit als +\begin{equation} +\dot{y}^2 += +(1-y^2)\biggl(1-\frac{1}{y_0^2}y^2\biggr) +\label{buch:elliptisch:mathpendel:y0dgl} +\end{equation} +geschrieben werden. +Da die linke Seite $\ge 0$ sein muss, muss +\( +y\le \min(1,y_0) +\) +sein. +Damit ergeben sich zwei Fälle. +Wenn $y_0<1$ ist, dann schwingt das Pendel. +Der Fall $y_0>1$ entspricht einer Bewegung, bei der das Pendel +um den Punkt $O$ rotiert. + + +\begin{figure} +\centering +\includegraphics[width=\textwidth]{chapters/110-elliptisch/images/jacobiplots.pdf} +\caption{% +Abhängigkeit der elliptischen Funktionen von $u$ für +verschiedene Werte von $k^2=m$. +Für $m=0$ ist $\operatorname{sn}(u,0)=\sin u$, +$\operatorname{cn}(u,0)=\cos u$ und $\operatorname{dn}(u,0)=1$, diese +sind in allen Plots in einer helleren Farbe eingezeichnet. +Für kleine Werte von $m$ weichen die elliptischen Funktionen nur wenig +von den trigonometrischen Funktionen ab, +es ist aber klar erkennbar, dass die anharmonischen Terme in der +Differentialgleichung die Periode mit steigender Amplitude verlängern. +Sehr grosse Werte von $m$ nahe bei $1$ entsprechen der Situation, dass +die Energie des Pendels fast ausreicht, dass es den höchsten Punkt +erreichen kann, was es für $m$ macht. +\label{buch:elliptisch:fig:jacobiplots}} +\end{figure} -Aus den Halbwinkelformeln finden wir +\subsubsection{Der Fall $E>2mgl$} +In diesem Fall ist die zweite Nullstelle $y_0>1$ oder $1/y_0^2 < 1$. +Die Differentialgleichung~\eqref{buch:elliptisch:mathpendel:y0dgl} +sieht ganz ähnlich aus wie die Differentialgleichung der +Funktion $\operatorname{sn}(u,k)$, tatsächlich wird sie zur +Differentialgleichung von $\operatorname{sn}(u,k)$ wenn man \[ -\cos\vartheta +k^2 = -1-2\sin^2 \frac{\vartheta}2 +1/y_0^2 = -1-2y^2. +\frac{2mgl}{E} \] -Dies können wir zusammen mit der -Identität $\cos^2\vartheta/2 = 1-\sin^2\vartheta/2 = 1-y^2$ -in die Energiegleichung einsetzen und erhalten -\[ -\frac12ml^2\dot{\vartheta}^2 + mgly^2 = E. -\] -Durch Multiplizieren mit $\cos^2\frac{\vartheta}{2}=1-y^2$ -erhalten wir auf der linken Seite einen Ausdruck, den wir -als Funktion von $\dot{y}$ ausdrücken können. -Wir erhalten -\begin{align*} -\frac12ml^2 -\cos^2\frac{\vartheta}2 -\dot{\vartheta}^2 -&= -(1-y^2) -(E -mgly^2) -\\ -\frac{1}{4}\cos^2\frac{\vartheta}{2}\dot{\vartheta}^2 -&= -\frac{1}{2} -(1-y^2) -\biggl(\frac{E}{ml^2} -\frac{g}{l}y^2\biggr) -\\ +wählt. +In diesem Fall ist also $y=\operatorname{sn}(u,1/y_0)$ eine Lösung +der Differentialgleichung, wobei $u$ eine lineare Funktion der Zeit +ist. + +Wenn $y_0 \gg 1$ ist, dann ist $k\approx 0$ und die Bewegung ist +entspricht einer gleichförmigen Kreisbewegung. +Je näher $y_0$ an $1$ liegt, desto näher an $1$ ist auch $k$ und +desto grösser wird die Verlangsamung der Bewgung in der Nähe des +Scheitels, das Pendel verweilt sehr lange. +Dies äussert sich in Abbildung~\ref{buch:elliptisch:fig:jacobiplots} +durch die lange Verweildauer der Funktion nahe der Extrema. + +% +% Der Fall E < 2mgl +% +\subsubsection{Der Fall $E<2mgl$} +In diesem Fall ist $y_0<1$ und die +Differentialgleichung~\eqref{buch:elliptisch:mathpendel:y0dgl} +sieht zwar immer noch wie eine Differentialgleichung für +$\operatorname{sn}(u,k)$ aus, aber die Lage der Nullstellen +der rechten Seite ist verkehrt. +Indem wir $y=y_0z$ schreiben, erhalten wir +\begin{equation} \dot{y}^2 -&= -\frac{E}{2ml^2} -(1-y^2)\biggl( -1-\frac{2gml}{E}y^2 -\biggr). -\end{align*} -Dies ist genau die Form der Differentialgleichung für die elliptische -Funktion $\operatorname{sn}(u,k)$ -mit $k^2 = 2gml/E< 1$. - -XXX Verbindung zur Abbildung - -%% -%% Der Fall E > 2mgl -%% -%\subsection{Der Fall $E > 2mgl$} -%In diesem Fall hat das Pendel im höchsten Punkte immer noch genügend -%kinetische Energie, so dass es sich im Kreise dreht. -%Indem wir die Gleichung - - -%\subsection{Soliton-Lösungen der Sinus-Gordon-Gleichung} - -%\subsection{Nichtlineare Differentialgleichung vierter Ordnung} -%XXX Möbius-Transformation \\ -%XXX Reduktion auf die Differentialgleichung elliptischer Funktionen += +y_0^2 \dot{z}^2 += +(1-y_0^2z^2)(1-z^2). +\end{equation} +Wieder kann durch eine lineare Transformation der Zeit der Faktor $y_0^2$ +auf der linken Seite zum Verschwinden gebracht werden, es bleibt +die Differentialgleichung der Funktion $\operatorname{sn}(u,k)$ +mit $k=y_0$. +Daraus liest man ab, dass $y_0\operatorname{sn}(u,k)$ die Bewegung +des Pendels im oszillatorischen Fall beschreibt, wobei $u$ wieder +eine lineare Funktion der Zeit ist. + +Wenn $y_0\ll 1$ ist, dann ist auch $k$ sehr klein und die lineare +Näherung ist sehr gut, das Pendel verhält sich wie ein harmonischer +Oszillator mit einer Sinus-Schwingung als Lösung. +Für $y_0=k$ nahe an $1$ dagegen erreicht die Schwingung fast den +die maximale Höhe und wird dort sehr langsam. +Dies äussert sich in Abbildung~ +Dies äussert sich in Abbildung~\ref{buch:elliptisch:fig:jacobiplots} +wiederum durch die lange Verweildauer der Funktion nahe der Extrema. + diff --git a/buch/chapters/110-elliptisch/uebungsaufgaben/1.tex b/buch/chapters/110-elliptisch/uebungsaufgaben/1.tex index 694f18a..af094c6 100644 --- a/buch/chapters/110-elliptisch/uebungsaufgaben/1.tex +++ b/buch/chapters/110-elliptisch/uebungsaufgaben/1.tex @@ -1,3 +1,4 @@ +\label{buch:elliptisch:aufgabe:1} In einem anharmonische Oszillator oszilliert eine Masse $m$ unter dem Einfluss einer Kraft, die nach dem Gesetz \[ diff --git a/buch/chapters/part1.tex b/buch/chapters/part1.tex index bee4416..52b18a0 100644 --- a/buch/chapters/part1.tex +++ b/buch/chapters/part1.tex @@ -35,6 +35,7 @@ %\end{appendices} \vfill \pagebreak + \ifodd\value{page}\else\null\clearpage\fi \lhead{Literatur} \rhead{} diff --git a/buch/chapters/references.bib b/buch/chapters/references.bib index e8f3494..d14a3d2 100644 --- a/buch/chapters/references.bib +++ b/buch/chapters/references.bib @@ -120,7 +120,7 @@ } @article{buch:pearsondgl, title = {Orthogonal matrix polynomials, scalar-type Rordigues' formulas and Pearson equations}, - author = { Antion J. Dur\'an and F. Alberto Grünbaum }, + author = { Antonio J. Dur\'an and F. Alberto Grünbaum }, year = 2005, journal = { Journal of Approximation theory }, volume = 134, @@ -155,3 +155,18 @@ pages = { 585--608 }, year = 1988 } + +@book{buch:schwalm, + author = { William A. Schwalm }, + title = { Lectures on Selected Topics in Mathematical Physics: Elliptic Functions and Elliptic Integrals }, + publisher = { IOP Science }, + year = 2015, + ISBN = { 978-1-6817-4166-6 } +} + +@misc{buch:schwalm-youtube, + author = { William A. Schwalm }, + title = { Elliptic Functions and Elliptic Integrals }, + howpublished = { \url{https://youtu.be/DCXItCajCyo} }, + year = 2018 +} -- cgit v1.2.1 From 7fb8462834ce37e6a468e42b4729c51fc821ffe9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 5 Jul 2022 18:09:40 +0200 Subject: fix typo in nav/references.bib --- buch/papers/nav/references.bib | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buch/papers/nav/references.bib b/buch/papers/nav/references.bib index 10dbf66..c67aaac 100644 --- a/buch/papers/nav/references.bib +++ b/buch/papers/nav/references.bib @@ -35,7 +35,7 @@ @online{nav:winkel, editor={Unbekannt}, title = {Sphärische Trigonometrie}, - year={2022} + year={2022}, url = {https://de.wikipedia.org/wiki/Sphärische_Trigonometrie} } -- cgit v1.2.1 From a58f08028c11d87c3d45e10648fbb7e1e0f080b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 5 Jul 2022 19:37:34 +0200 Subject: minor fixes --- buch/papers/nav/bsp.tex | 1 + buch/papers/nav/bsp2.tex | 1 + 2 files changed, 2 insertions(+) diff --git a/buch/papers/nav/bsp.tex b/buch/papers/nav/bsp.tex index d544588..ff01828 100644 --- a/buch/papers/nav/bsp.tex +++ b/buch/papers/nav/bsp.tex @@ -1,4 +1,5 @@ \section{Beispielrechnung} +\rhead{Beispielrechnung} \subsection{Einführung} In diesem Abschnitt wird die Theorie vom Abschnitt 21.6 in einem Praxisbeispiel angewendet. diff --git a/buch/papers/nav/bsp2.tex b/buch/papers/nav/bsp2.tex index 23380eb..8ca214f 100644 --- a/buch/papers/nav/bsp2.tex +++ b/buch/papers/nav/bsp2.tex @@ -1,4 +1,5 @@ \section{Beispielrechnung} +\rhead{Beispielrechnung} \subsection{Einführung} In diesem Abschnitt wird die Theorie vom Abschnitt \ref{sta} in einem Praxisbeispiel angewendet. -- cgit v1.2.1 From ac98ecfb4f0142b418cd501045ac797da564f059 Mon Sep 17 00:00:00 2001 From: "ENEZ-PC\\erdem" Date: Fri, 15 Jul 2022 20:38:18 +0200 Subject: finito --- buch/papers/nav/bsp2.tex | 4 ++-- buch/papers/nav/einleitung.tex | 1 + buch/papers/nav/flatearth.tex | 2 +- buch/papers/nav/nautischesdreieck.tex | 4 +++- buch/papers/nav/sincos.tex | 7 ++++--- buch/papers/nav/trigo.tex | 28 ++++++++++++++++------------ 6 files changed, 27 insertions(+), 19 deletions(-) diff --git a/buch/papers/nav/bsp2.tex b/buch/papers/nav/bsp2.tex index 8ca214f..8d9083b 100644 --- a/buch/papers/nav/bsp2.tex +++ b/buch/papers/nav/bsp2.tex @@ -7,7 +7,7 @@ Wir haben die Deklination, Rektaszension, Höhe der beiden Planeten Deneb und Ar Die Deklinationen und Rektaszensionen sind von einem vergangenen Datum und die Höhe der Gestirne und die Sternzeit wurden digital in einer Stadt in Japan mit den Koordinaten 35.716672 N, 140.233336 E bestimmt. Wir werden nachrechnen, dass wir mit unserer Methode genau auf diese Koordinaten kommen. \subsection{Vorgehen} -Unser vorgehen erschliesst sicht aus unserer Methode, die wir im Abschnitt \ref{p} theoretisch erklärt haben. +Unser Vorgehen erschliesst sich aus unserer Methode, die wir im Abschnitt \ref{p} theoretisch erklärt haben. \begin{compactenum} \item Koordinaten der Bildpunkte der Gestirne bestimmen @@ -199,7 +199,7 @@ l Damit wir gleich den Längengrad berechnen können, benötigen wir noch den Winkel $\omega$: \begin{align*} - \omega &= \cos^{-1} \bigg[\frac{\cos(h_b)-\cos(c) \cdot \cos(l)}{\sin(c) \cdot \sin(l)}\bigg] \\ + \omega &= \cos^{-1} \bigg[\frac{\cos(h_B)-\cos(c) \cdot \cos(l)}{\sin(c) \cdot \sin(l)}\bigg] \\ &=\cos^{-1} \bigg[\frac{\cos(42.572556^\circ)-\cos(70.936778^\circ) \cdot \cos(54.2833404^\circ)}{\sin(70.936778^\circ) \cdot \sin(54.2833404^\circ)}\bigg] \\ &= \underline{\underline{44.6687451^\circ}} \end{align*} diff --git a/buch/papers/nav/einleitung.tex b/buch/papers/nav/einleitung.tex index 8eb4481..c778d5c 100644 --- a/buch/papers/nav/einleitung.tex +++ b/buch/papers/nav/einleitung.tex @@ -1,6 +1,7 @@ \section{Einleitung} +\rhead{Einleitung} Heutzutage ist die Navigation ein Teil des Lebens. Man sendet dem Kollegen seinen eigenen Standort, um sich das ewige Erklären zu sparen oder gibt die Adresse des Ziels ein, damit man seinen Aufenthaltsort zum Beispiel auf einer riesigen Wiese am See findet. Dies wird durch Technologien wie Funknavigation, welches ein auf Laufzeitmessung beruhendes Hyperbelverfahren mit Langwellen ist, oder die verbreitete Satellitennavigation, welche vier Satelliten für eine Messung zur Standortbestimmung nutzt. diff --git a/buch/papers/nav/flatearth.tex b/buch/papers/nav/flatearth.tex index d1d5a9b..9745cdc 100644 --- a/buch/papers/nav/flatearth.tex +++ b/buch/papers/nav/flatearth.tex @@ -1,7 +1,7 @@ \section{Warum ist die Erde nicht flach?} - +\rhead{Warum ist die Erde nicht flach?} \begin{figure} \begin{center} \includegraphics[width=10cm]{papers/nav/bilder/projektion.png} diff --git a/buch/papers/nav/nautischesdreieck.tex b/buch/papers/nav/nautischesdreieck.tex index 36674ee..32d1b8b 100644 --- a/buch/papers/nav/nautischesdreieck.tex +++ b/buch/papers/nav/nautischesdreieck.tex @@ -1,4 +1,5 @@ \section{Das Nautische Dreieck} +\rhead{Das nautische Dreieck} \subsection{Definition des Nautischen Dreiecks} Die Himmelskugel ist eine gedachte Kugel, welche die Erde und dessen Beobachter umgibt und als Rechenfläche für Koordinaten in der Astronomie und Geodäsie dient. Der Zenit ist jener Punkt, der vom Erdmittelpunkt durch denn eigenen Standort an die Himmelskugel verlängert wird. @@ -115,6 +116,7 @@ Auf diese Dreiecke können wir die einfachen Sätze der sphärischen Trigonometr \end{center} Mit unserem erlangten Wissen können wir nun alle Seiten des Dreiecks $ABC$ berechnen. +Dazu sind die folgenden vorbereiteten Berechnungen nötigt: \begin{enumerate} \item Die Seite vom Nordpol zum Bildpunkt $X$ sei $c$, dann ist $c = \frac{\pi}{2} - \delta_1$. @@ -141,7 +143,7 @@ können wir nun die dritte Seitenlänge bestimmen. Es ist darauf zu achten, dass hier natürlich die Seitenlängen in Bogenmass sind und dementsprechend der Kosinus und Sinus verwendet wird. Jetzt fehlen noch die beiden anderen Innenwinkel $\beta$ und\ $\gamma$. -Diese bestimmen wir mithilfe des Kosinussatzes: \[\beta=\cos^{-1} \bigg[\frac{\cos(b)-\cos(a) \cdot \cos(c)}{\sin(a) \cdot \sin(c)}\bigg]\] und \[\gamma = \cos^{-1} \bigg[\frac{\cos(c)-\cos(b) \cdot \cos(a)}{\sin(a) \cdot \sin(b)}.\bigg]\] +Diese bestimmen wir mithilfe des Kosinussatzes: \[\beta=\cos^{-1} \bigg[\frac{\cos(b)-\cos(a) \cdot \cos(c)}{\sin(a) \cdot \sin(c)}\bigg]\] und \[\gamma = \cos^{-1} \bigg[\frac{\cos(c)-\cos(b) \cdot \cos(a)}{\sin(a) \cdot \sin(b)}\bigg]\]. Schlussendlich haben wir die Seiten $a$, $b$ und $c$, die Ecken $A$,$B$ und $C$ und die Winkel $\alpha$, $\beta$ und $\gamma$ bestimmt und somit das ganze Kugeldreieck $ABC$ berechnet. diff --git a/buch/papers/nav/sincos.tex b/buch/papers/nav/sincos.tex index f82a057..b64d100 100644 --- a/buch/papers/nav/sincos.tex +++ b/buch/papers/nav/sincos.tex @@ -2,12 +2,13 @@ \section{Sphärische Navigation und Winkelfunktionen} +\rhead{Sphärische Navigation und Winkelfunktionen} Es gibt Hinweise, dass sich schon die Babylonier und Ägypter vor 4000 Jahren mit Problemen der sphärischen Trigonometrie beschäftigt haben, um den Lauf von Gestirnen zu berechnen. Jedoch konnten sie dieses Problem nicht lösen. -Die Geschichte der sphärischen Trigonometrie ist daher eng mit der Astronomie verknüpft. Ca. 350 BCE dachten die Griechen über Kugelgeometrie nach,sie wurde damit zu einer Hilfswissenschaft der Astronomen. +Die Geschichte der sphärischen Trigonometrie ist daher eng mit der Astronomie verknüpft. Ca. 350 BCE dachten die Griechen über Kugelgeometrie nach, sie wurde damit zu einer Hilfswissenschaft der Astronomen. -Zwischen 190 v. Chr. und 120 v. Chr. lebte ein griechischer Astronom names Hipparchos. -Dieser entwickelte unter anderem die Chordentafeln, welche die Chord - Funktionen, auch Chord genannt, beinhalten. +Zwischen 190 v. Chr. und 120 v. Chr. lebte ein griechischer Astronom namens Hipparchos. +Dieser entwickelte unter anderem die Chordentafeln, welche die Chordfunktionen, auch Chord genannt, beinhalten. Chord ist der Vorgänger der Sinusfunktion und galt damals als wichtigste Grundlage der Trigonometrie. In dieser Zeit wurden auch die ersten Sternenkarten angefertigt. Damals kannte man die Sinusfunktionen noch nicht. diff --git a/buch/papers/nav/trigo.tex b/buch/papers/nav/trigo.tex index c96aaa5..483b612 100644 --- a/buch/papers/nav/trigo.tex +++ b/buch/papers/nav/trigo.tex @@ -1,5 +1,7 @@ \section{Sphärische Trigonometrie} +\rhead{Sphärische Trigonometrie} + \subsection{Das Kugeldreieck} Damit man die Definition des Kugeldreiecks versteht, müssen wir zuerst Begriffe wie Grosskreisebene und Grosskreisbögen verstehen. Ein Grosskreis ist ein grösstmöglicher Kreis auf einer Kugeloberfläche. @@ -14,7 +16,7 @@ Man kann bei Kugeldreiecken nicht so einfach unterscheiden, was Innen oder Ausse Wenn man drei Eckpunkte miteinander verbindet, ergeben sich immer 16 Kugeldreiecke. Werden drei voneinander verschiedene Punkte, die sich nicht auf derselben Grosskreisebene befinden, mit Grosskreisbögen verbunden werden, so entsteht ein Kugeldreieck $ABC$. -Für ein Kugeldreieck gilt, dass die Summe der drei Seiten kleiner als $2\pi$ aber grösser als 0 ist. +Für ein Kugeldreieck gilt, dass die Summe der drei Seiten kleiner als $3\pi$ aber grösser als 0 ist. $A$, $B$ und $C$ sind die Ecken des Dreiecks und dessen Seiten sind die Grosskreisbögen zwischen den Eckpunkten (siehe Abbildung \ref{kugel}). \begin{figure} @@ -27,7 +29,7 @@ $A$, $B$ und $C$ sind die Ecken des Dreiecks und dessen Seiten sind die Grosskre \end{figure} \subsection{Rechtwinkliges Dreieck und rechtseitiges Dreieck} -In der sphärischen Trigonometrie gibt es eine Symetrie zwischen Seiten und Winkeln, also zu jedem Satz über Seiten und Winkel gibt es einen entsprechenden Satz, mit dem man Winkel durch Seiten und Seiten durch Winkel ersetzt hat. +In der sphärischen Trigonometrie gibt es eine Symmetrie zwischen Seiten und Winkeln, also zu jedem Satz über Seiten und Winkel gibt es einen entsprechenden Satz, mit dem man Winkel durch Seiten und Seiten durch Winkel ersetzt hat. Wie auch im ebenen Dreieck gibt es beim Kugeldreieck auch ein rechtwinkliges Kugeldreieck, bei dem ein Winkel $\frac{\pi}{2}$ ist. Ein rechtseitiges Dreieck gibt es jedoch nur beim Kugeldreieck, weil dort eine Seitenlänge $\frac{\pi}{2}$ lang sein muss, wie man in der Abbildung \ref{recht} sehen kann. @@ -42,6 +44,7 @@ Ein rechtseitiges Dreieck gibt es jedoch nur beim Kugeldreieck, weil dort eine S \end{figure} \subsection{Winkelsumme und Flächeninhalt} +\label{trigo} %\begin{figure} ----- Brauche das Bild eigentlich nicht! % \begin{center} @@ -66,9 +69,9 @@ beschreibt die Abweichung der Innenwinkelsumme von $\pi$ und ist proportional zu \subsubsection{Flächeninnhalt} Mithilfe des Radius $r$ und dem sphärischen Exzess $\epsilon$ gilt für den Flächeninhalt -\[ F=\frac{\pi \cdot r^2}{\frac{\pi}{2}} \cdot \epsilon = 2 \cdot r^2 \cdot \epsilon\]. +\[ F=\frac{\pi \cdot r^2}{\frac{\pi}{2}} \cdot \epsilon = 2 \cdot r^2 \cdot \epsilon.\] -\cite{nav:winkel} +In diesem Kapitel sind keine Begründungen für die erhaltenen Resultate im Abschnitt \ref{trigo} zu erwarten und können in der Referenz \cite{nav:winkel} nachgeschlagen werden. \subsection{Seiten und Winkelberechnung} Es gibt in der sphärischen Trigonometrie eigentlich gar keinen Satz des Pythagoras, wie man ihn aus der zweidimensionalen Geometrie kennt. Es gibt aber einen Satz, der alle drei Seiten eines rechtwinkligen Kugeldreiecks in eine Beziehung bringt. Dieser Satz gilt jedoch nicht für das rechtseitige Kugeldreieck. @@ -76,7 +79,7 @@ Die Approximation im nächsten Abschnitt wird erklären, warum man dies als eine Es gilt nämlich: \begin{align} \cos c = \cos a \cdot \cos b \quad \text{wenn} \nonumber & - \quad \alpha = \frac{\pi}{2} \nonumber + \quad \alpha = \frac{\pi}{2}. \nonumber \end{align} \subsubsection{Approximation von kleinen Dreiecken} @@ -92,17 +95,18 @@ Es gibt ebenfalls folgende Approximierung der Seiten von der Sphäre in die Eben a &\approx \sin(a) \nonumber \intertext{und} \frac{a^2}{2} &\approx 1-\cos(a). \nonumber \end{align} -Die Korrespondenzen zwischen der ebenen- und sphärischen Trigonometrie werden in den kommenden Abschnitten erläutert. +Die Korrespondenzen zwischen der ebenen und sphärischen Trigonometrie werden in den kommenden Abschnitten erläutert. \subsubsection{Sphärischer Satz des Pythagoras} -Die Korrespondenz \[ a^2 \approx 1- \cos(a)\] liefert unter Anderem einen entsprechenden Satz des Pythagoras, nämlich +Die Korrespondenz \[ a^2 \approx 1- \cos(a)\] liefert unter anderem einen entsprechenden Satz des Pythagoras, nämlich \begin{align*} - \cos(a)\cdot \cos(b) &= \cos(c) \\ - \bigg[1-\frac{a^2}{2}\bigg] \cdot \bigg[1-\frac{b^2}{2}\bigg] &= 1-\frac{c^2}{2} \intertext{Höhere Potenzen vernachlässigen} + \cos(a)\cdot \cos(b) &= \cos(c), \\ + \bigg[1-\frac{a^2}{2}\bigg] \cdot \bigg[1-\frac{b^2}{2}\bigg] &= 1-\frac{c^2}{2}. + \intertext{Höhere Potenzen vernachlässigen:} \xcancel{1}- \frac{a^2}{2} - \frac{b^2}{2} + \xcancel{\frac{a^2b^2}{4}}&= \xcancel{1}- \frac{c^2}{2} \\ -a^2-b^2 &=-c^2\\ - a^2+b^2&=c^2 + a^2+b^2&=c^2. \end{align*} Dies ist der wohlbekannte ebene Satz des Pythagoras. @@ -127,9 +131,9 @@ und den Winkelkosinussatz Analog gibt es auch beim Seitenkosinussatz eine Korrespondenz zu \[ a^2 \leftrightarrow 1-\cos(a),\] die den ebenen Kosinussatz herleiten lässt, nämlich \begin{align} \cos(a)&= \cos(b)\cdot \cos(c) + \sin(b) \cdot \sin(c)\cdot \cos(\alpha) \\ - 1-\frac{a^2}{2} &= \bigg[1-\frac{b^2}{2}\bigg]\bigg[1-\frac{c^2}{2}\bigg]+bc\cdot\cos(\alpha) \intertext{Höhere Potenzen vernachlässigen} + 1-\frac{a^2}{2} &= \bigg[1-\frac{b^2}{2}\bigg]\bigg[1-\frac{c^2}{2}\bigg]+bc\cdot\cos(\alpha). \intertext{Höhere Potenzen vernachlässigen:} \xcancel{1}-\frac{a^2}{2} &= \xcancel{1}-\frac{b^2}{2}-\frac{c^2}{2} \xcancel{+\frac{b^2c^2}{4}}+bc \cdot \cos(\alpha)\\ - a^2&=b^2+c^2-2bc \cdot \cos(\alpha) + a^2&=b^2+c^2-2bc \cdot \cos(\alpha). \end{align} -- cgit v1.2.1 From 4a5bb7d7fa8ae99e2982ff30873b15a41a4f2a73 Mon Sep 17 00:00:00 2001 From: Joshua Baer Date: Mon, 18 Jul 2022 14:35:43 +0200 Subject: Kapitel unterteilung --- buch/papers/fm/01_AM-FM.tex | 22 +++++++++++++ buch/papers/fm/02_frequenzyspectrum.tex | 55 +++++++++++++++++++++++++++++++++ buch/papers/fm/03_bessel.tex | 40 ++++++++++++++++++++++++ buch/papers/fm/04_fazit.tex | 40 ++++++++++++++++++++++++ buch/papers/fm/main.tex | 46 ++++++++++++++------------- buch/papers/fm/teil0.tex | 22 ------------- buch/papers/fm/teil1.tex | 55 --------------------------------- buch/papers/fm/teil2.tex | 40 ------------------------ buch/papers/fm/teil3.tex | 40 ------------------------ 9 files changed, 181 insertions(+), 179 deletions(-) create mode 100644 buch/papers/fm/01_AM-FM.tex create mode 100644 buch/papers/fm/02_frequenzyspectrum.tex create mode 100644 buch/papers/fm/03_bessel.tex create mode 100644 buch/papers/fm/04_fazit.tex delete mode 100644 buch/papers/fm/teil0.tex delete mode 100644 buch/papers/fm/teil1.tex delete mode 100644 buch/papers/fm/teil2.tex delete mode 100644 buch/papers/fm/teil3.tex diff --git a/buch/papers/fm/01_AM-FM.tex b/buch/papers/fm/01_AM-FM.tex new file mode 100644 index 0000000..55697df --- /dev/null +++ b/buch/papers/fm/01_AM-FM.tex @@ -0,0 +1,22 @@ +% +% einleitung.tex -- Beispiel-File für die Einleitung +% +% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil +% +\section{Teil 0\label{fm:section:teil0}} +\rhead{Teil 0} +Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam +nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam +erat, sed diam voluptua \cite{fm:bibtex}. +At vero eos et accusam et justo duo dolores et ea rebum. +Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum +dolor sit amet. + +Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam +nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam +erat, sed diam voluptua. +At vero eos et accusam et justo duo dolores et ea rebum. Stet clita +kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit +amet. + + diff --git a/buch/papers/fm/02_frequenzyspectrum.tex b/buch/papers/fm/02_frequenzyspectrum.tex new file mode 100644 index 0000000..6f9edf1 --- /dev/null +++ b/buch/papers/fm/02_frequenzyspectrum.tex @@ -0,0 +1,55 @@ +% +% teil1.tex -- Beispiel-File für das Paper +% +% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil +% +\section{Teil 1 +\label{fm:section:teil1}} +\rhead{Problemstellung} +Sed ut perspiciatis unde omnis iste natus error sit voluptatem +accusantium doloremque laudantium, totam rem aperiam, eaque ipsa +quae ab illo inventore veritatis et quasi architecto beatae vitae +dicta sunt explicabo. +Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit +aut fugit, sed quia consequuntur magni dolores eos qui ratione +voluptatem sequi nesciunt +\begin{equation} +\int_a^b x^2\, dx += +\left[ \frac13 x^3 \right]_a^b += +\frac{b^3-a^3}3. +\label{fm:equation1} +\end{equation} +Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, +consectetur, adipisci velit, sed quia non numquam eius modi tempora +incidunt ut labore et dolore magnam aliquam quaerat voluptatem. + +Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis +suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? +Quis autem vel eum iure reprehenderit qui in ea voluptate velit +esse quam nihil molestiae consequatur, vel illum qui dolorem eum +fugiat quo voluptas nulla pariatur? + +\subsection{De finibus bonorum et malorum +\label{fm:subsection:finibus}} +At vero eos et accusamus et iusto odio dignissimos ducimus qui +blanditiis praesentium voluptatum deleniti atque corrupti quos +dolores et quas molestias excepturi sint occaecati cupiditate non +provident, similique sunt in culpa qui officia deserunt mollitia +animi, id est laborum et dolorum fuga \eqref{000tempmlate:equation1}. + +Et harum quidem rerum facilis est et expedita distinctio +\ref{fm:section:loesung}. +Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil +impedit quo minus id quod maxime placeat facere possimus, omnis +voluptas assumenda est, omnis dolor repellendus +\ref{fm:section:folgerung}. +Temporibus autem quibusdam et aut officiis debitis aut rerum +necessitatibus saepe eveniet ut et voluptates repudiandae sint et +molestiae non recusandae. +Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis +voluptatibus maiores alias consequatur aut perferendis doloribus +asperiores repellat. + + diff --git a/buch/papers/fm/03_bessel.tex b/buch/papers/fm/03_bessel.tex new file mode 100644 index 0000000..6ab6fa0 --- /dev/null +++ b/buch/papers/fm/03_bessel.tex @@ -0,0 +1,40 @@ +% +% teil2.tex -- Beispiel-File für teil2 +% +% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil +% +\section{Teil 2 +\label{fm:section:teil2}} +\rhead{Teil 2} +Sed ut perspiciatis unde omnis iste natus error sit voluptatem +accusantium doloremque laudantium, totam rem aperiam, eaque ipsa +quae ab illo inventore veritatis et quasi architecto beatae vitae +dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit +aspernatur aut odit aut fugit, sed quia consequuntur magni dolores +eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam +est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci +velit, sed quia non numquam eius modi tempora incidunt ut labore +et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima +veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, +nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure +reprehenderit qui in ea voluptate velit esse quam nihil molestiae +consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla +pariatur? + +\subsection{De finibus bonorum et malorum +\label{fm:subsection:bonorum}} +At vero eos et accusamus et iusto odio dignissimos ducimus qui +blanditiis praesentium voluptatum deleniti atque corrupti quos +dolores et quas molestias excepturi sint occaecati cupiditate non +provident, similique sunt in culpa qui officia deserunt mollitia +animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis +est et expedita distinctio. Nam libero tempore, cum soluta nobis +est eligendi optio cumque nihil impedit quo minus id quod maxime +placeat facere possimus, omnis voluptas assumenda est, omnis dolor +repellendus. Temporibus autem quibusdam et aut officiis debitis aut +rerum necessitatibus saepe eveniet ut et voluptates repudiandae +sint et molestiae non recusandae. Itaque earum rerum hic tenetur a +sapiente delectus, ut aut reiciendis voluptatibus maiores alias +consequatur aut perferendis doloribus asperiores repellat. + + diff --git a/buch/papers/fm/04_fazit.tex b/buch/papers/fm/04_fazit.tex new file mode 100644 index 0000000..3bcfc4d --- /dev/null +++ b/buch/papers/fm/04_fazit.tex @@ -0,0 +1,40 @@ +% +% teil3.tex -- Beispiel-File für Teil 3 +% +% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil +% +\section{Teil 3 +\label{fm:section:teil3}} +\rhead{Teil 3} +Sed ut perspiciatis unde omnis iste natus error sit voluptatem +accusantium doloremque laudantium, totam rem aperiam, eaque ipsa +quae ab illo inventore veritatis et quasi architecto beatae vitae +dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit +aspernatur aut odit aut fugit, sed quia consequuntur magni dolores +eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam +est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci +velit, sed quia non numquam eius modi tempora incidunt ut labore +et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima +veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, +nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure +reprehenderit qui in ea voluptate velit esse quam nihil molestiae +consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla +pariatur? + +\subsection{De finibus bonorum et malorum +\label{fm:subsection:malorum}} +At vero eos et accusamus et iusto odio dignissimos ducimus qui +blanditiis praesentium voluptatum deleniti atque corrupti quos +dolores et quas molestias excepturi sint occaecati cupiditate non +provident, similique sunt in culpa qui officia deserunt mollitia +animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis +est et expedita distinctio. Nam libero tempore, cum soluta nobis +est eligendi optio cumque nihil impedit quo minus id quod maxime +placeat facere possimus, omnis voluptas assumenda est, omnis dolor +repellendus. Temporibus autem quibusdam et aut officiis debitis aut +rerum necessitatibus saepe eveniet ut et voluptates repudiandae +sint et molestiae non recusandae. Itaque earum rerum hic tenetur a +sapiente delectus, ut aut reiciendis voluptatibus maiores alias +consequatur aut perferendis doloribus asperiores repellat. + + diff --git a/buch/papers/fm/main.tex b/buch/papers/fm/main.tex index 00fb34b..1f8ebde 100644 --- a/buch/papers/fm/main.tex +++ b/buch/papers/fm/main.tex @@ -11,29 +11,31 @@ \chapterauthor{Joshua Bär} -Ein paar Hinweise für die korrekte Formatierung des Textes -\begin{itemize} -\item -Absätze werden gebildet, indem man eine Leerzeile einfügt. -Die Verwendung von \verb+\\+ ist nur in Tabellen und Arrays gestattet. -\item -Die explizite Platzierung von Bildern ist nicht erlaubt, entsprechende -Optionen werden gelöscht. -Verwenden Sie Labels und Verweise, um auf Bilder hinzuweisen. -\item -Beginnen Sie jeden Satz auf einer neuen Zeile. -Damit ermöglichen Sie dem Versionsverwaltungssysteme, Änderungen -in verschiedenen Sätzen von verschiedenen Autoren ohne Konflikt -anzuwenden. -\item -Bilden Sie auch für Formeln kurze Zeilen, einerseits der besseren -Übersicht wegen, aber auch um GIT die Arbeit zu erleichtern. -\end{itemize} +Dieser Abschnitt beschreibt die Beziehung von der Besselfunktion(Ref) zur Frequenz Modulatrion (FM)(acronym?). -\input{papers/fm/teil0.tex} -\input{papers/fm/teil1.tex} -\input{papers/fm/teil2.tex} -\input{papers/fm/teil3.tex} +%Ein paar Hinweise für die korrekte Formatierung des Textes +%\begin{itemize} +%\item +%Absätze werden gebildet, indem man eine Leerzeile einfügt. +%Die Verwendung von \verb+\\+ ist nur in Tabellen und Arrays gestattet. +%\item +%Die explizite Platzierung von Bildern ist nicht erlaubt, entsprechende +%Optionen werden gelöscht. +%Verwenden Sie Labels und Verweise, um auf Bilder hinzuweisen. +%\item +%Beginnen Sie jeden Satz auf einer neuen Zeile. +%Damit ermöglichen Sie dem Versionsverwaltungssysteme, Änderungen +%in verschiedenen Sätzen von verschiedenen Autoren ohne Konflikt +%anzuwenden. +%\item +%Bilden Sie auch für Formeln kurze Zeilen, einerseits der besseren +%Übersicht wegen, aber auch um GIT die Arbeit zu erleichtern. +%\end{itemize} + +\input{papers/fm/01_AM-FM.tex} +\input{papers/fm/02_frequenzyspectrum.tex} +\input{papers/fm/03_bessel.tex} +\input{papers/fm/04_fazit.tex} \printbibliography[heading=subbibliography] \end{refsection} diff --git a/buch/papers/fm/teil0.tex b/buch/papers/fm/teil0.tex deleted file mode 100644 index 55697df..0000000 --- a/buch/papers/fm/teil0.tex +++ /dev/null @@ -1,22 +0,0 @@ -% -% einleitung.tex -- Beispiel-File für die Einleitung -% -% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil -% -\section{Teil 0\label{fm:section:teil0}} -\rhead{Teil 0} -Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam -nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam -erat, sed diam voluptua \cite{fm:bibtex}. -At vero eos et accusam et justo duo dolores et ea rebum. -Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum -dolor sit amet. - -Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam -nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam -erat, sed diam voluptua. -At vero eos et accusam et justo duo dolores et ea rebum. Stet clita -kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit -amet. - - diff --git a/buch/papers/fm/teil1.tex b/buch/papers/fm/teil1.tex deleted file mode 100644 index 6f9edf1..0000000 --- a/buch/papers/fm/teil1.tex +++ /dev/null @@ -1,55 +0,0 @@ -% -% teil1.tex -- Beispiel-File für das Paper -% -% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil -% -\section{Teil 1 -\label{fm:section:teil1}} -\rhead{Problemstellung} -Sed ut perspiciatis unde omnis iste natus error sit voluptatem -accusantium doloremque laudantium, totam rem aperiam, eaque ipsa -quae ab illo inventore veritatis et quasi architecto beatae vitae -dicta sunt explicabo. -Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit -aut fugit, sed quia consequuntur magni dolores eos qui ratione -voluptatem sequi nesciunt -\begin{equation} -\int_a^b x^2\, dx -= -\left[ \frac13 x^3 \right]_a^b -= -\frac{b^3-a^3}3. -\label{fm:equation1} -\end{equation} -Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, -consectetur, adipisci velit, sed quia non numquam eius modi tempora -incidunt ut labore et dolore magnam aliquam quaerat voluptatem. - -Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis -suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? -Quis autem vel eum iure reprehenderit qui in ea voluptate velit -esse quam nihil molestiae consequatur, vel illum qui dolorem eum -fugiat quo voluptas nulla pariatur? - -\subsection{De finibus bonorum et malorum -\label{fm:subsection:finibus}} -At vero eos et accusamus et iusto odio dignissimos ducimus qui -blanditiis praesentium voluptatum deleniti atque corrupti quos -dolores et quas molestias excepturi sint occaecati cupiditate non -provident, similique sunt in culpa qui officia deserunt mollitia -animi, id est laborum et dolorum fuga \eqref{000tempmlate:equation1}. - -Et harum quidem rerum facilis est et expedita distinctio -\ref{fm:section:loesung}. -Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil -impedit quo minus id quod maxime placeat facere possimus, omnis -voluptas assumenda est, omnis dolor repellendus -\ref{fm:section:folgerung}. -Temporibus autem quibusdam et aut officiis debitis aut rerum -necessitatibus saepe eveniet ut et voluptates repudiandae sint et -molestiae non recusandae. -Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis -voluptatibus maiores alias consequatur aut perferendis doloribus -asperiores repellat. - - diff --git a/buch/papers/fm/teil2.tex b/buch/papers/fm/teil2.tex deleted file mode 100644 index 6ab6fa0..0000000 --- a/buch/papers/fm/teil2.tex +++ /dev/null @@ -1,40 +0,0 @@ -% -% teil2.tex -- Beispiel-File für teil2 -% -% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil -% -\section{Teil 2 -\label{fm:section:teil2}} -\rhead{Teil 2} -Sed ut perspiciatis unde omnis iste natus error sit voluptatem -accusantium doloremque laudantium, totam rem aperiam, eaque ipsa -quae ab illo inventore veritatis et quasi architecto beatae vitae -dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit -aspernatur aut odit aut fugit, sed quia consequuntur magni dolores -eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam -est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci -velit, sed quia non numquam eius modi tempora incidunt ut labore -et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima -veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, -nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure -reprehenderit qui in ea voluptate velit esse quam nihil molestiae -consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla -pariatur? - -\subsection{De finibus bonorum et malorum -\label{fm:subsection:bonorum}} -At vero eos et accusamus et iusto odio dignissimos ducimus qui -blanditiis praesentium voluptatum deleniti atque corrupti quos -dolores et quas molestias excepturi sint occaecati cupiditate non -provident, similique sunt in culpa qui officia deserunt mollitia -animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis -est et expedita distinctio. Nam libero tempore, cum soluta nobis -est eligendi optio cumque nihil impedit quo minus id quod maxime -placeat facere possimus, omnis voluptas assumenda est, omnis dolor -repellendus. Temporibus autem quibusdam et aut officiis debitis aut -rerum necessitatibus saepe eveniet ut et voluptates repudiandae -sint et molestiae non recusandae. Itaque earum rerum hic tenetur a -sapiente delectus, ut aut reiciendis voluptatibus maiores alias -consequatur aut perferendis doloribus asperiores repellat. - - diff --git a/buch/papers/fm/teil3.tex b/buch/papers/fm/teil3.tex deleted file mode 100644 index 3bcfc4d..0000000 --- a/buch/papers/fm/teil3.tex +++ /dev/null @@ -1,40 +0,0 @@ -% -% teil3.tex -- Beispiel-File für Teil 3 -% -% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil -% -\section{Teil 3 -\label{fm:section:teil3}} -\rhead{Teil 3} -Sed ut perspiciatis unde omnis iste natus error sit voluptatem -accusantium doloremque laudantium, totam rem aperiam, eaque ipsa -quae ab illo inventore veritatis et quasi architecto beatae vitae -dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit -aspernatur aut odit aut fugit, sed quia consequuntur magni dolores -eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam -est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci -velit, sed quia non numquam eius modi tempora incidunt ut labore -et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima -veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, -nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure -reprehenderit qui in ea voluptate velit esse quam nihil molestiae -consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla -pariatur? - -\subsection{De finibus bonorum et malorum -\label{fm:subsection:malorum}} -At vero eos et accusamus et iusto odio dignissimos ducimus qui -blanditiis praesentium voluptatum deleniti atque corrupti quos -dolores et quas molestias excepturi sint occaecati cupiditate non -provident, similique sunt in culpa qui officia deserunt mollitia -animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis -est et expedita distinctio. Nam libero tempore, cum soluta nobis -est eligendi optio cumque nihil impedit quo minus id quod maxime -placeat facere possimus, omnis voluptas assumenda est, omnis dolor -repellendus. Temporibus autem quibusdam et aut officiis debitis aut -rerum necessitatibus saepe eveniet ut et voluptates repudiandae -sint et molestiae non recusandae. Itaque earum rerum hic tenetur a -sapiente delectus, ut aut reiciendis voluptatibus maiores alias -consequatur aut perferendis doloribus asperiores repellat. - - -- cgit v1.2.1 From b72c171ecac28671740a594f89a02fd3bc4d0e96 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 19 Jul 2022 07:44:42 +0200 Subject: dependencies fixed --- buch/chapters/110-elliptisch/dglsol.tex | 34 +++++++++++++++++++++++------ buch/chapters/110-elliptisch/mathpendel.tex | 4 +++- buch/papers/fm/Makefile.inc | 6 +---- 3 files changed, 31 insertions(+), 13 deletions(-) diff --git a/buch/chapters/110-elliptisch/dglsol.tex b/buch/chapters/110-elliptisch/dglsol.tex index 613f130..c5b3a5c 100644 --- a/buch/chapters/110-elliptisch/dglsol.tex +++ b/buch/chapters/110-elliptisch/dglsol.tex @@ -230,7 +230,8 @@ folgenden Satz. \begin{satz} \index{Satz!Differentialgleichung von $1/\operatorname{pq}(u,k)$}% Wenn die Jacobische elliptische Funktion $\operatorname{pq}(u,k)$ -der Differentialgleichung genügt, dann genügt der Kehrwert +der Differentialgleichung~\eqref{buch:elliptisch:eqn:1storderdglell} +genügt, dann genügt der Kehrwert $\operatorname{qp}(u,k) = 1/\operatorname{pq}(u,k)$ der Differentialgleichung \begin{equation} (\operatorname{qp}'(u,k))^2 @@ -277,8 +278,8 @@ vertauscht worden sind. % Differentialgleichung zweiter Ordnung % \subsubsection{Differentialgleichung zweiter Ordnung} -Leitet die Differentialgleichung~\eqref{buch:elliptisch:eqn:1storderdglell} -man dies nochmals nach $u$ ab, erhält man die Differentialgleichung +Leitet man die Differentialgleichung~\eqref{buch:elliptisch:eqn:1storderdglell} +nochmals nach $u$ ab, erhält man die Differentialgleichung \[ 2\operatorname{pq}''(u,k)\operatorname{pq}'(u,k) = @@ -340,6 +341,25 @@ y(u) = F^{-1}(u+C). Die Jacobischen elliptischen Funktionen sind daher inverse Funktionen der unvollständigen elliptischen Integrale. +\begin{beispiel} +Die Differentialgleichung der Funktion $y=\operatorname{sn}(u,k)$ ist +\[ +(y')^2 += +(1-y^2)(1-k^2y^2). +\] +Aus \eqref{buch:elliptisch:eqn:yintegral} folgt daher, dass +\[ +u+C += +\int\frac{dy}{(1-y^2)(1-k^2y^2)}. +\] +Das Integral ist das unvollständige elliptische Integral erster Art. +Mit der Wahl der Konstanten $C$ so, dass $y(0)=0$ ist, ist +$y(u)=\operatorname{sn}(u,k)$ daher die Umkehrfunktion von +$y\mapsto F(y,k)=u$. +\end{beispiel} + % % Numerische Berechnung mit dem arithmetisch-geometrischen Mittel % @@ -545,7 +565,7 @@ Wir möchten die nichtlineare Differentialgleichung \biggr)^2 = Ax^4+Bx^2 + C -\label{buch:elliptisch:eqn:allgdgl} +\label{buch:elliptisch:eqn:anhdgl} \end{equation} mit Hilfe elliptischer Funktionen lösen. Wir nehmen also an, dass die gesuchte Lösung eine Funktion der Form @@ -562,7 +582,7 @@ a\operatorname{zn}'(bt,k). \] Indem wir diesen Lösungsansatz in die -Differentialgleichung~\eqref{buch:elliptisch:eqn:allgdgl} +Differentialgleichung~\eqref{buch:elliptisch:eqn:anhdgl} einsetzen, erhalten wir \begin{equation} a^2b^2 \operatorname{zn}'(bt,k)^2 @@ -672,13 +692,13 @@ Da alle Parameter im Lösungsansatz~\eqref{buch:elliptisch:eqn:loesungsansatz} bereits festgelegt sind stellt sich die Frage, woher man einen weiteren Parameter nehmen kann, mit dem Anfangsbedingungen erfüllen kann. -Die Differentialgleichung~\eqref{buch:elliptisch:eqn:allgdgl} ist +Die Differentialgleichung~\eqref{buch:elliptisch:eqn:anhdgl} ist autonom, die Koeffizienten der rechten Seite der Differentialgleichung sind nicht von der Zeit abhängig. Damit ist eine zeitverschobene Funktion $x(t-t_0)$ ebenfalls eine Lösung der Differentialgleichung. Die allgmeine Lösung der -Differentialgleichung~\eqref{buch:elliptisch:eqn:allgdgl} hat +Differentialgleichung~\eqref{buch:elliptisch:eqn:anhdgl} hat also die Form \[ x(t) = a\operatorname{zn}(b(t-t_0)), diff --git a/buch/chapters/110-elliptisch/mathpendel.tex b/buch/chapters/110-elliptisch/mathpendel.tex index 54b7531..e029ffd 100644 --- a/buch/chapters/110-elliptisch/mathpendel.tex +++ b/buch/chapters/110-elliptisch/mathpendel.tex @@ -209,7 +209,7 @@ Dazu setzt man $z(t) = y(bt)$ und bekommt = \frac{d}{dt}y(bt) \frac{d\,bt}{dt} = -b\dot{y}(bt). +b\,\dot{y}(bt). \] Die Zeit muss also mit dem Faktor $\sqrt{2ml^2/E}$ skaliert werden. @@ -240,6 +240,8 @@ Damit ergeben sich zwei Fälle. Wenn $y_0<1$ ist, dann schwingt das Pendel. Der Fall $y_0>1$ entspricht einer Bewegung, bei der das Pendel um den Punkt $O$ rotiert. +In den folgenden zwei Abschnitten werden die beiden Fälle ausführlicher +diskutiert. \begin{figure} diff --git a/buch/papers/fm/Makefile.inc b/buch/papers/fm/Makefile.inc index 0f144b6..dcdecd2 100644 --- a/buch/papers/fm/Makefile.inc +++ b/buch/papers/fm/Makefile.inc @@ -6,9 +6,5 @@ dependencies-fm = \ papers/fm/packages.tex \ papers/fm/main.tex \ - papers/fm/references.bib \ - papers/fm/teil0.tex \ - papers/fm/teil1.tex \ - papers/fm/teil2.tex \ - papers/fm/teil3.tex + papers/fm/references.bib -- cgit v1.2.1 From 36f9ca108e2cc08f68d7095b5e09b59bff90f98c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 19 Jul 2022 07:52:32 +0200 Subject: makefile fix --- buch/papers/fm/Makefile.inc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/buch/papers/fm/Makefile.inc b/buch/papers/fm/Makefile.inc index dcdecd2..e5cd9f6 100644 --- a/buch/papers/fm/Makefile.inc +++ b/buch/papers/fm/Makefile.inc @@ -6,5 +6,9 @@ dependencies-fm = \ papers/fm/packages.tex \ papers/fm/main.tex \ + papers/fm/01_AM-FM.tex \ + papers/fm/02_frequenzyspectrum.tex \ + papers/fm/03_bessel.tex \ + papers/fm/04_fazit.tex \ papers/fm/references.bib -- cgit v1.2.1