diff options
Diffstat (limited to 'buch/papers/lambertw/Bilder')
-rw-r--r-- | buch/papers/lambertw/Bilder/Abstand.py | 18 | ||||
-rw-r--r-- | buch/papers/lambertw/Bilder/Intuition.pdf | bin | 0 -> 149406 bytes | |||
-rw-r--r-- | buch/papers/lambertw/Bilder/Strategie.pdf | bin | 0 -> 148667 bytes | |||
-rw-r--r-- | buch/papers/lambertw/Bilder/Strategie.png | bin | 0 -> 11049 bytes | |||
-rw-r--r-- | buch/papers/lambertw/Bilder/Strategie.py | 58 | ||||
-rw-r--r-- | buch/papers/lambertw/Bilder/VerfolgungskurveBsp.png | bin | 0 -> 318960 bytes | |||
-rw-r--r-- | buch/papers/lambertw/Bilder/konvergenz.py | 20 | ||||
-rw-r--r-- | buch/papers/lambertw/Bilder/lambertAbstandBauchgefühl.py | 62 |
8 files changed, 158 insertions, 0 deletions
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 Binary files differnew file mode 100644 index 0000000..964b348 --- /dev/null +++ b/buch/papers/lambertw/Bilder/Intuition.pdf diff --git a/buch/papers/lambertw/Bilder/Strategie.pdf b/buch/papers/lambertw/Bilder/Strategie.pdf Binary files differnew file mode 100644 index 0000000..42cae0d --- /dev/null +++ b/buch/papers/lambertw/Bilder/Strategie.pdf diff --git a/buch/papers/lambertw/Bilder/Strategie.png b/buch/papers/lambertw/Bilder/Strategie.png Binary files differnew file mode 100644 index 0000000..e78abd3 --- /dev/null +++ b/buch/papers/lambertw/Bilder/Strategie.png diff --git a/buch/papers/lambertw/Bilder/Strategie.py b/buch/papers/lambertw/Bilder/Strategie.py new file mode 100644 index 0000000..f09edfb --- /dev/null +++ b/buch/papers/lambertw/Bilder/Strategie.py @@ -0,0 +1,58 @@ +# -*- coding: utf-8 -*- +""" +Created on Fri Jul 29 09:40:11 2022 + +@author: yanik +""" +import pylatex + +import numpy as np +import matplotlib.pyplot as plt + + + + +N = np.array([0, 0]) +V = np.array([1, 4]) +Z = np.array([5, 5]) +VZ = Z-V +vzScale = 0.4 + + +a = [N, N, V] +b = [V, Z, vzScale*VZ] + +X = np.array([i[0] for i in a]) +Y = np.array([i[1] for i in a]) +U = np.array([i[0] for i in b]) +W = np.array([i[1] for i in b]) + +xlim = 6 +ylim = 6 +fig, ax = plt.subplots(1,1) +ax.set_xlim([0, xlim]) #<-- set the x axis limits +ax.set_ylim([0, ylim]) #<-- set the y axis limits +#plt.figure(figsize=(xlim, ylim)) +ax.quiver(X, Y, U, W, angles='xy', scale_units='xy', scale=1, headwidth=5, headlength=7, headaxislength=5.5) + +ax.plot([V[0], (VZ+V)[0]], [V[1], (VZ+V)[1]], 'k--') +ax.plot(np.vstack([V, Z])[:, 0], np.vstack([V, Z])[:,1], 'bo', markersize=10) + +ax.tick_params(labelsize=15) +plt.xticks(ticks=range(0, 7)) +plt.yticks(ticks=range(0, 7)) +ax.text(2.5, 4.5, "Visierlinie", size=20, rotation=10) + +plt.rcParams.update({ + "text.usetex": True, + "font.family": "serif", + "font.serif": ["New Century Schoolbook"], +}) + +ax.text(1.6, 4.3, r"$\dot{v}$", size=20) +ax.text(0.65, 3.9, r"$V$", size=20, c='b') +ax.text(5.15, 4.85, r"$Z$", size=20, c='b') +ax.set_xlabel(r"$x$", size=20) +ax.set_ylabel(r"$y$", size=20) + + diff --git a/buch/papers/lambertw/Bilder/VerfolgungskurveBsp.png b/buch/papers/lambertw/Bilder/VerfolgungskurveBsp.png Binary files differnew file mode 100644 index 0000000..dc4720a --- /dev/null +++ b/buch/papers/lambertw/Bilder/VerfolgungskurveBsp.png 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ühl.py b/buch/papers/lambertw/Bilder/lambertAbstandBauchgefühl.py new file mode 100644 index 0000000..73b322c --- /dev/null +++ b/buch/papers/lambertw/Bilder/lambertAbstandBauchgefühl.py @@ -0,0 +1,62 @@ +# -*- 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.grid(True) +plt.tick_params(labelsize=15) +#plt.xticks(ticks=range(0, 7)) +#plt.yticks(ticks=range(0, 7)) +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.08, r"$\dot{v}$", size=20) +plt.text(xmin-0.02, ymin+0.05, r"$V$", size=20, c='b') +plt.text(0.02, ymin+0.05, r"$Z$", size=20, c='b') +plt.ylabel(r"$y$", size=20) +plt.xlabel(r"$x$", size=20)
\ No newline at end of file |