<jupyter_start><jupyter_text>Links zu Dokumentationen/Tutorials für IPython/Python/numpy/matplotlib/git sowie die Sourcodes findet ihr im [GitHub Repo](https://github.com/BerndSchwarzenbacher/numdiff).<jupyter_code>import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline<jupyter_output><empty_output><jupyter_text>Modellierung mit Newtonschem Gesetz:Die tangentiale Kraft $F_{tan}(t) = m \; g \; sin(\alpha(t))$ wirkt entgegen der Rückstellkraft des Pendels:$F_{R}(t) = -F_{tan}(t) = m \; \ddot \alpha(t) \; l$.Insgesamt ergibt sich als DGL 2. Ordnung:$- m \; g \; sin(\alpha(t)) = m \; \ddot \alpha(t) \; l$.Umgeformt auf ein DGL-System 1. Ordnung:$\begin{eqnarray}  \dot \alpha(t) &=& x(t) \\  \dot x(t)      &=& - \frac{g}{l} sin(\alpha(t))\end{eqnarray}$ Modellierung mit Hamiltonschem Prinzip:Gegeben ist die Energiefunktion: $H(p,q) = -m g l \; cos(q) + \frac{1}{2 m l^{2}} p^{2}$.Mit den Hamiltonschen Bewegungsgleichungen ergibt sich:$\begin{eqnarray}  \dot q &=& \frac{\partial H}{\partial p} &=& p \frac{1}{m l^{2}} \\  \dot p &=& - \frac{\partial H}{\partial q} &=& - m g l \; sin(q)\end{eqnarray}$ BerechnungDie Iteration ist mit C++ geschrieben [aufgabe3.cpp](aufgabe3.cpp). Die Werte sind in der Datei [values](values) gespeichert.<jupyter_code>values = np.loadtxt('values')
alpha = values[:,0]
alpha_dot = values[:,1]
plt.plot(alpha)
plt.ylabel(r'$\alpha(t)$')
plt.xlabel(r'$t$')
plt.grid()
plt.plot(alpha[:100])
plt.ylabel(r'$\alpha(t)$')
plt.xlabel(r'$t$')
plt.grid()
q = alpha
p = alpha_dot
H = - np.cos(q) + p**2 / 2<jupyter_output><empty_output><jupyter_text>$H(q(t), p(t))$ ist konstant, weil die Energieerhaltung gelten muss: $\frac{d}{dt} H(p(t),q(t)) = 0$<jupyter_code>plt.plot(H)
plt.ylabel(r'$H(p(t),q(t))$')
plt.xlabel(r'$t$')
plt.axis([0,10000, -1, 0])
plt.grid()
plt.plot(q, p)
plt.ylabel(r'$p(t)$')
plt.xlabel(r'$q(t)$')
plt.grid()<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.2115485564304462, 'fraction_numerical': 0.013648293963254593, 'mean_word_length': 5.332225913621262, 'pattern_counts': {'":': 0, '<': 13, '<?xml version=': 0, '>': 13, 'https://': 1, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '3', 'dir': 'jupyter-structured-clean-dedup', 'id': '323178', 'license': 'MIT', 'n_tokens_mistral': 833, 'n_tokens_neox': 809, 'n_words': 163, 'path': 'ueb1/aufgabe3.ipynb', 'repo_name': 'BerndSchwarzenbacher/numdiff', 'size': '1905'}