From 8dc531ac53ae1b085482c9f1bda6001ca803c164 Mon Sep 17 00:00:00 2001 From: Kuster Yanik Date: Tue, 2 Aug 2022 21:14:53 +0200 Subject: Created python files for graphics. Created addtional subsection verlockende Intuition --- buch/papers/lambertw/Bilder/Abstand.py | 18 +++++ buch/papers/lambertw/Bilder/Intuition.pdf | Bin 0 -> 186972 bytes buch/papers/lambertw/Bilder/Strategie.pdf | Bin 120904 -> 151640 bytes buch/papers/lambertw/Bilder/Strategie.py | 2 +- buch/papers/lambertw/Bilder/konvergenz.py | 20 ++++++ .../Bilder/lambertAbstandBauchgef\303\274hl.py" | 58 ++++++++++++++++ buch/papers/lambertw/teil1.tex | 76 ++++++++++++++++++++- 7 files changed, 170 insertions(+), 4 deletions(-) create mode 100644 buch/papers/lambertw/Bilder/Abstand.py create mode 100644 buch/papers/lambertw/Bilder/Intuition.pdf create mode 100644 buch/papers/lambertw/Bilder/konvergenz.py create mode 100644 "buch/papers/lambertw/Bilder/lambertAbstandBauchgef\303\274hl.py" (limited to 'buch/papers/lambertw') diff --git a/buch/papers/lambertw/Bilder/Abstand.py b/buch/papers/lambertw/Bilder/Abstand.py new file mode 100644 index 0000000..d787c34 --- /dev/null +++ b/buch/papers/lambertw/Bilder/Abstand.py @@ -0,0 +1,18 @@ +# -*- coding: utf-8 -*- +""" +Created on Sat Jul 30 23:09:33 2022 + +@author: yanik +""" + +import numpy as np +import matplotlib.pyplot as plt + +phi = np.pi/2 +t = np.linspace(0, 10, 10**5) +x0 = 1 + +def D(t): + return np.sqrt(x0**2+2*x0*t*np.cos(phi)+2*t**2-2*t**2*np.sin(phi)) + +plt.plot(t, D(t)) diff --git a/buch/papers/lambertw/Bilder/Intuition.pdf b/buch/papers/lambertw/Bilder/Intuition.pdf new file mode 100644 index 0000000..236212a Binary files /dev/null and b/buch/papers/lambertw/Bilder/Intuition.pdf differ diff --git a/buch/papers/lambertw/Bilder/Strategie.pdf b/buch/papers/lambertw/Bilder/Strategie.pdf index 0de3001..91442cc 100644 Binary files a/buch/papers/lambertw/Bilder/Strategie.pdf and b/buch/papers/lambertw/Bilder/Strategie.pdf differ diff --git a/buch/papers/lambertw/Bilder/Strategie.py b/buch/papers/lambertw/Bilder/Strategie.py index b9b41bf..28f7bcd 100644 --- a/buch/papers/lambertw/Bilder/Strategie.py +++ b/buch/papers/lambertw/Bilder/Strategie.py @@ -44,7 +44,7 @@ plt.rcParams.update({ "font.serif": ["New Century Schoolbook"], }) -ax.text(1.6, 4.3, r"$\vec{v}$", size=30) +ax.text(1.6, 4.3, r"$\dot{v}$", size=30) ax.text(0.6, 3.9, r"$V$", size=30, c='b') ax.text(5.1, 4.77, r"$Z$", size=30, c='b') diff --git a/buch/papers/lambertw/Bilder/konvergenz.py b/buch/papers/lambertw/Bilder/konvergenz.py new file mode 100644 index 0000000..dac99a7 --- /dev/null +++ b/buch/papers/lambertw/Bilder/konvergenz.py @@ -0,0 +1,20 @@ +# -*- coding: utf-8 -*- +""" +Created on Sun Jul 31 14:34:13 2022 + +@author: yanik +""" + +import numpy as np +import matplotlib.pyplot as plt + +t = 0 +phi = np.linspace(np.pi/2, 3*np.pi/2, 10**5) +x0 = 1 +y0 = -2 + +def D(t): + return (x0+t*np.cos(phi))*np.cos(phi)+(y0+t*(np.sin(phi)-1))*(np.sin(phi)-1)/(np.sqrt((x0+t*np.cos(phi))**2+(y0+t*(np.sin(phi)-1))**2)) + + +plt.plot(phi, D(t)) \ No newline at end of file diff --git "a/buch/papers/lambertw/Bilder/lambertAbstandBauchgef\303\274hl.py" "b/buch/papers/lambertw/Bilder/lambertAbstandBauchgef\303\274hl.py" new file mode 100644 index 0000000..9031bfc --- /dev/null +++ "b/buch/papers/lambertw/Bilder/lambertAbstandBauchgef\303\274hl.py" @@ -0,0 +1,58 @@ +# -*- coding: utf-8 -*- +""" +Created on Sun Jul 31 13:32:53 2022 + +@author: yanik +""" + +import numpy as np +import matplotlib.pyplot as plt +import scipy.special as sci + +W = sci.lambertw + + +t = np.linspace(0, 1.2, 1000) +x0 = 1 +y0 = 1 + +r0 = np.sqrt(x0**2+y0**2) +chi = (r0+y0)/(r0-y0) + +x = x0*np.sqrt(1/chi*W(chi*np.exp(chi-4*t/(r0-y0)))) +eta = (x/x0)**2 +y = 1/4*((y0+r0)*eta+(y0-r0)*np.log(eta)-r0+3*y0) + +ymin= (min(y)).real +xmin = (x[np.where(y == ymin)][0]).real + + +#Verfolger +plt.plot(x, y, 'r--') +plt.plot(xmin, ymin, 'bo', markersize=10) + +#Ziel +plt.plot(np.zeros_like(t), t, 'g--') +plt.plot(0, ymin, 'bo', markersize=10) + + +plt.plot([0, xmin], [ymin, ymin], 'k--') +#plt.xlim(-0.1, 1) +#plt.ylim(1, 2) +#plt.ylabel("y") +#plt.xlabel("x") +plt.grid(True) +plt.quiver(xmin, ymin, -0.2, 0, scale=1) + +plt.text(xmin+0.1, ymin-0.1, "Verfolgungskurve", size=20, rotation=20, color='r') +plt.text(0.01, 0.02, "Fluchtkurve", size=20, rotation=90, color='g') + +plt.rcParams.update({ + "text.usetex": True, + "font.family": "serif", + "font.serif": ["New Century Schoolbook"], +}) + +plt.text(xmin-0.11, ymin-0.12, r"$\dot{v}$", size=30) +plt.text(xmin-0.02, ymin+0.05, r"$V$", size=30, c='b') +plt.text(0.02, ymin+0.05, r"$Z$", size=30, c='b') \ No newline at end of file diff --git a/buch/papers/lambertw/teil1.tex b/buch/papers/lambertw/teil1.tex index 2733759..2da07db 100644 --- a/buch/papers/lambertw/teil1.tex +++ b/buch/papers/lambertw/teil1.tex @@ -205,8 +205,78 @@ Durch quadrieren verschwindet die Wurzel des Betrages, womit % die neue Bedingung ist. Da sowohl der Betrag als auch $a_{min}$ grösser null sind, bleibt die Aussage unverändert. - - - +% +\subsection{verleitende/trügerisch/verführerisch Intuition} +In der Grafik \ref{lambertw:grafic:intuition} ist eine Mögliche Verfolgungskurve dargestellt, wobei für die Startbedingung der erste-Quadrant verwendet wurde. +Als erste Intuition bietet sich der tiefste Punkt der Verfolgungskurve an, bei dem der y-Anteil des Richtungsvektors null entspricht. +Wenn sich der Verfolger an diesem Punkt befindet, muss zwingend das Ziel auf gleicher Höhe sein. +Es lässt sich vermuten, dass bei diesem Punkt der Abstand zum Ziel minimal sein könnte. +\begin{figure} + \centering + \includegraphics[scale=0.4]{./papers/lambertw/Bilder/Intuition.pdf} + \caption{Intuition} + \label{lambertw:grafic:intuition} +\end{figure} +% +Dies kann leicht überprüft werden, indem wir lokal alle relevanten benachbarten Punkte betrachten und das Vorzeichen der Änderung des Abstandes prüfen. +Dafür wird ein Ausdruck benötigt, der den Abstand und die benachbarten Punkte beschreibt. +Der Richtungsvektor wird allgemein mit dem Winkel $\alpha \in[ 0, 2\pi)$ +Die Ortsvektoren der Punkte können wiederum mit +\begin{align} + v + &= + t\cdot\left(\begin{array}{c} \cos (\alpha) \\ \sin (\alpha) \end{array}\right) +\left(\begin{array}{c} x_0 \\ y_0 \end{array}\right) + \\ + z + &= + \left(\begin{array}{c} 0 \\ t \end{array}\right) +\end{align} +beschrieben werden. Der Verfolger wurde allgemein für jede Richtung $\alpha$ definiert, um alle unmittelbar benachbarten Punkte beschreiben zu können. +Da der Abstand +\begin{equation} + a + = + |v-z| + \geq + 0 +\end{equation} +ist, kann durch quadrieren ohne Informationsverlust die Rechnung vereinfacht werden zu +\begin{equation} + a^2 + = + |v-z|^2 + = + (t\cdot\cos(\alpha)+x_0)^2+t^2(\sin(\alpha)-1)^2 + \text{.} +\end{equation} +Der Abstand im Quadrat abgeleitet nach der Zeit ist +\begin{equation} + \frac{d a^2}{d t} + = + 2(t\cdot\cos (\alpha)+x_0)\cdot\cos(\alpha)(\alpha)+2t(\sin(\alpha)-1)^2 + \text{.} +\end{equation} +Da nur die unmittelbar benachbarten Punkten von Interesse sind, wird die Ableitung für $t=0$ untersucht. Dabei kann die Ableitung in +\begin{align} + \frac{d a^2}{d t} + &= + 2x_0\cos(\alpha) + \\ + \frac{d a^2}{d t} + &< + 0\Leftrightarrow\alpha\in\left( \frac{\pi}{2}, \frac{3\pi}{2}\right) + \\ + \frac{d a^2}{d t} + &> + 0\Leftrightarrow\alpha\in\left[0, \frac{\pi}{2}\right)\cup\left(\frac{3\pi}{2}, 2\pi\right) + \\ + \frac{d a^2}{d t} + &= + 0\Leftrightarrow\alpha\in\left\{ \frac{\pi}{2}, \frac{3\pi}{2}\right\} +\end{align} +unterteilt werden. +Von Interesse ist lediglich das Intervall $\alpha\in\left( \frac{\pi}{2}, \frac{3\pi}{2}\right)$, da der Verfolger sich stets in die negative $y$-Richtung bewegt. +In diesem Intervall ist die Ableitung negativ, woraus folgt, dass jeglicher unmittelbar benachbarte Punkt, den der Verfolger als nächstes begehen könnte, stets näher am Ziel ist als zuvor. +Dies bedeutet, dass der Scheitelpunkt der Verfolgungskurve nie ein lokales Minimum bezüglich des Abstandes sein kann. -- cgit v1.2.1