Simulation
Mathematisches Pendel
Im Kapitel "Physikalische Simulationen" unserem Buch wird das mathematische Pendel bereits behandelt. Allerdings
gibt es dort eine wesentliche Einschränkung: Die Auslenkungswinkel des Pendels sollten in jedem Fall kleiner als
10 ° sein. Sobald man diese Einschränkung fallen lässt, gibt es keine durchgehend definierte
Lösungsfunktion. Wie Sie oben links in der Herleitung der Differenzialgleichung sehen, bleibt die Sinusfunktion
am Schluss stehen. Wenn man große Winkel zulassen will, muss man daher mit numerischen Näherungsverfahren arbeiten.
Es gibt nicht wenige, immerhin. Allerdings sollte bei einer sinnvollen Näherung die Gesamtenergie konstant bleiben.
Eine Möglichkeit, dies zu erreichen, ist die Verwendung der "Symplectic Euler"-Methode.
Wenn mit wn der Winkel in der n-ten Iteration bezeichnet wird und mit
gn die Winkelgeschwindigkeit in diesem Moment, dann bekommt man die folgenden Werte,
nachdem Δt verstrichen ist, durch diese Iterationen:
wn+1 = wn + Δt · gn
gn+1 = gn - Δt · K · sin(wn+1)
Weitere Informationen zum Thema
"mathematisches Pendel" finden Sie bei Wikipedia.
Sie können den Sketch gleich hier ausprobieren (sofern Sie Javascript zulassen). Zu Beginn hat das Pendel einen
bestimmten, zunächst festen Ausschlag mit einer zufälligen Winkelgeschwindigkeit. Da der Vorgang reigungsfrei
ablaufen soll und weil unsere Näherung energieerhaltend ist, kommt das Pendel immer wieder auf die gleiche Höhe.
Wenn Sie auf den weißen Pendel-Bereich klicken, startet das Pendel auf dieser Höhe,- wiederrum mit einer zufälligen
Winkelgeschwindigkeit. Im Bild unten wird das zugehörige "Phasendiagramm" aufgezeichnet. Die horizontale Achse
steht für den Winkel, die vertikale für die Winkelgeschwindigkeit.
Im Kapitel "Physikalische Simulationen" in unserem Buch wird das mathematische Pendel bereits behandelt. Allerdings
gibt es dort eine wesentliche Einschränkung: Die Auslenkungswinkel des Pendels sollten in jedem Fall kleiner als
10 ° sein. Sobald man diese Einschränkung fallen lässt, gibt es keine durchgehend definierte
Lösungsfunktion. Wie Sie links in der Herleitung der Differenzialgleichung sehen, bleibt die Sinusfunktion
am Schluss stehen. Wenn man große Winkel zulassen will, muss man daher mit numerischen Näherungsverfahren arbeiten.
Es gibt nicht wenige, immerhin. Allerdings sollte bei einer sinnvollen Näherung die Gesamtenergie konstant bleiben.
Eine Möglichkeit, dies zu erreichen, ist die Verwendung der "Symplectic Euler"-Methode.
Wenn Sie mehrfach in die Animation des Pendels geklickt haben, bekommen Sie ein ähnliches Bild wie links. Dabei
erkennt man, dass es grundsätzlich zwei Arten von Trajektorien gibt:
Geschlossene und ungeschlossene Linien. Die
geschlossenen Linien gehören zu Pendelbewegungen, die tatsächlich hin- und herschwingen. Die anderen gehören zu
Pendeln, die sich überschlagen. Die rote Linie ist die sogenannte "Seperatix". Sie trennt die beiden Bereiche
voneinander. Natürlich gibt es diese Bewegung nicht wirklich, denn sie müsste im obersten Punkt stehenbleiben,
aber auch gleichzeitig alle anderen Phasenpunkte erreichen.
Nun untersuchen wir, was sich ändert, wenn wir
Reibung zulassen. Wie sieht das zughörige Phasendiagramm aus? Es
ändert sich eigentlich nicht viel:
w
n+1 = w
n + Δt · g
n
g
n+1 = g
n - Δt · K · sin(w
n+1) - Δt · A · g
n
Die Reibungskonstante A ist proportional zur Winkelgeschwindigkeit und reduziert diese mit der Zeit. Ebenfalls noch
wichtig: Je kleiner Δt desto genauer die Simulation. Hier die Interation nach Euler:
void iteriere(PVector V, float A, float B, int N, float Delta, float MinX, float MinY, float MaxX, float MaxY){
w0 = V.x; g0 = V.y;
for(int i =0; i< N;i++){
x1 = w0 +g0*Delta;
y1 = g0 -(A*g0+B*sin(w0))*Delta;
kw = round(map(x1,MinX,MaxX,0,width));
kg = round(map(y1,MaxY,MinY,0,height));
point(kw,kg);
w0 = x1; g0 = y1;
}
}
Die Umrechnung von Funktionswerten in Koordinaten des Bildes (kw und kg) kennen Sie ja schon.
Wählt man Δt = 0.005 so erhält man folgende Trajektorie:
Δt = 0.02 zeigt bereits deutlich die Abstände der Punkte:
Klar ist, dass kleinere Δt die reale Situation besser simulieren, als größere. Das ist sicher
richtig. Aber schauen Sie sich nun das Bild für Δt = 0.10 an:
Hier bekommt die Trajektorie eine Art "Wellenbildung". Das könnte ein Hinweis auf eine neu Art
Periodizität hindeuten. Wenn wir in das Bild zoomen, kann man diese Wellen deutlicher sehen:
Man kann die Vergrößerung von Δt nicht beliebig lang betreiben. Oberhalb von Δt =1.8
verschwindet die Trajektorie Richtung unendlich große Geschwindigkeit. Aber falls Δt =1.8
entsteht folgender Attraktor:
Der 0-dimensionale Attraktor zu Beginn (der Ursprung des Phasendiagramms) hat sich in einen 1-dimensionalen verwandelt.
Wenn, wie hier, die Entstehung des folgenden
Wertes aus dem alten Wert und der Änderung in Winkel und Geschwindigkeit in diesem Moment bestimmt wird, dann nennt man
eine derartige Folge
semikontinuierlich.
Bleibt die Frage: Was genau tun wir physikalisch, wenn wir Δt vergrößern?
Im nächsten Abschnitt "Kicked Rotator" wird genau dieser Sachverhalt diskutiert werden: Wir interpretieren
Δt als den Zeitraum, in dem eine äußere Kraft das Pendel dazu zwingt, die aktuelle Änderung in Richtung
und Größe über den nun längeren Zeitraum beizubehalten.
Sketch Mathematisches Pendel (kleine Ausschläge).
Sketch Mathematisches Pendel (beliebige Ausschläge).
Sketch Mathematisches Pendel Semikontinuierlich (Kicked Rotator).
Menu