Autor |
Beitrag |
Mathematiker
      
Beiträge: 2622
Erhaltene Danke: 1448
Win 7, 8.1, 10
Delphi 5, 7, 10.1
|
Verfasst: Mi 01.05.13 22:49
Hallo,
als Hinweis zu der Idee, unser Planetensystem durch die gravitative Wirkung der Körper untereinander zu berechnen www.entwickler-ecke....ewtopic.php?t=111490, habe ich ein kleines Programm zum chaotischen Doppelpendel.
Am Anfangs können die Parameter der zwei Teilpendel (Winkel, Energie, Länge) des Doppelpendels eingetragen werden.
Ein 2.Doppelpendel erhält automatisch gleichen Winkel und gleiche Länge, aber eine um 1/1000 höhere Energie.
Während der Simulation beschreiben beide Pendel anfangs die gleiche Bahn. Allerdings ändert sich dies nach einigen Sekunden – dann weichen beide deutlich voneinander ab. Eine kleine Änderung der Anfangsgrößen führt damit zu einer großen Wirkung. Ähnliches tritt auch bei der Berechnung des Planetensystems auf. Damit dies funktioniert müssten die Ausgangsgrößen extrem genau bekannt sein und selbst dann sorgen interne Rundungen für solche Abweichungen.
Das Programm ähnelt dem von delfiphan www.entwickler-ecke....ghlight=doppelpendel. Bei meinem wird aber die chaotische Bewegung von zwei Doppelpendeln betrachtet.
Beste Grüße
Mathematiker
Nachtrag: In der DP habe ich das Programm unter www.delphipraxis.net...os-doppelpendel.html vorgestellt.
Rev 1/2: Darstellung von Ortsdiagrammen für beide Doppelpendel und weitere Änderungen.
Rev 3: Die zwei Doppelpendel werden farblich unterschieden. Weitere Änderungen am Quelltext.
Rev 4: Keine Eingabe unterschiedlicher Pendellängen mehr, da Berechnung falsch war.
Rev 5: Das Programm enthält eine 2.Berechnungsvariante (siehe weiter unten).
Einloggen, um Attachments anzusehen!
_________________ Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein
Zuletzt bearbeitet von Mathematiker am Sa 04.05.13 15:35, insgesamt 7-mal bearbeitet
Für diesen Beitrag haben gedankt: lenamarkert
|
|
jfheins
      
Beiträge: 918
Erhaltene Danke: 158
Win 10
VS 2013, VS2015
|
Verfasst: Do 02.05.13 01:37
Jrtzt muss ich aber schon ein bisschen meckern.
Also erstmal ist das System "Doppelpendel" ganz und gar nicht chaotisch, sondern stabil. (Laut Wiki Ljapunow-stabil) - das heißt, dass für eine endliche Störung des Anfangswerts der Fehler (für alle Zeiten) ebenfalls begrenzt ist. Falls man nun ein einzelnes Pendel betrachtet, so führt eine kleine Variation des Anfangswerts nicht zu grundsätzlich anderen Bewegungen.
Vielmehr lässt sich jede Bewegung eines Doppelpendels als eine Superposition der beiden Eigenmoden betrachten. Und eine kleine Änderung führt eben zu einer anderen Bewegung, die sich aber noch problemlos für alle Zeiten analytisch errechnen lässt.
Das stehende Pendel ist immerhin nicht mehr stabil, und es lässt sich auch nicht sagen in welche Richtung es umfällt. Das wäre so der einzige "Chaos"-Effekt der mir beim Pendel einleuchtet.
Dann zum Programm: Negative Energie, dein Ernst? Nach den bisherigen Sachen hätte ich dich da schon physikalisch korrekter eingeschätzt. Außerdem wird die Energie nicht erhalten, die Pendel sehen aber reibungsfrei aus.
Und dann stimmt da auch was mit der Simulation nicht, wenn man ungleiche Pendellängen eingibt. Das macht ganz komische Sachen 
|
|
Marc.
      
Beiträge: 1876
Erhaltene Danke: 129
Win 8.1, Xubuntu 15.10
|
Verfasst: Do 02.05.13 09:08
Ich bin gerade auf dem Sprung. Möchte aber neben jfheins Einwurf noch anmerken, dass nach etwa 20s mit den voreingestellten Werten zwei Doppelpendel zu sehen sind. 
Für diesen Beitrag haben gedankt: FinnO
|
|
Mathematiker 
      
Beiträge: 2622
Erhaltene Danke: 1448
Win 7, 8.1, 10
Delphi 5, 7, 10.1
|
Verfasst: Do 02.05.13 09:13
Hallo,
jfheins hat folgendes geschrieben : | Jrtzt muss ich aber schon ein bisschen meckern. |
Warum auch nicht.  Nur mit kritischen Anmerkungen von Euch kann ich evtl. Fehler beseitigen.
jfheins hat folgendes geschrieben : | Also erstmal ist das System "Doppelpendel" ganz und gar nicht chaotisch, sondern stabil. |
Da meine Kenntnisse von Chaostheorie nur Laienkenntnisse sind, kann ich dazu nur soviel sagen, dass ich mich auf Wikipedia beziehe. Und unter de.wikipedia.org/wiki/Doppelpendel steht:
Zitat: | Das Doppelpendel ist ein beliebtes Modell zur Demonstration von chaotischen Prozessen. |
Ob es dann nach der exakten Definition von "chaotisch" auch wirklich chaotisch ist, weiß ich nicht.
jfheins hat folgendes geschrieben : | Dann zum Programm: Negative Energie, dein Ernst? Nach den bisherigen Sachen hätte ich dich da schon physikalisch korrekter eingeschätzt. |
Nun ja. Unter der oben genannten Adresse findest Du die Gleichung für die potentielle Energie des Systems. Je nach Wert der Winkel phi1 und phi2 ergibt sich dann auch eine negative potentielle Energie. Da die potentielle Energie (nach meinen Kenntnissen) immer auf eine Nullniveau bezogen wird, dürfte es so falsch nicht sein.
Natürlich hat das nichts mit "negativer Energie" im Sinne von kinetischer, innerer, ... Energie zu tun.
jfheins hat folgendes geschrieben : | Und dann stimmt da auch was mit der Simulation nicht, wenn man ungleiche Pendellängen eingibt. Das macht ganz komische Sachen  |
Könntest Du das bitte genauer erklären. Ich finde, dass es korrekt ist.
Marc. hat folgendes geschrieben : | Ich bin gerade auf dem Sprung. Möchte aber neben jfheins Einwurf noch anmerken, dass nach etwa 20s mit den voreingestellten Werten zwei Doppelpendel zu sehen sind.  |
Das soll doch so sein. Gerade das will ich ja demonstrieren; dass eine kleine Änderung der Ausgangsdaten (hier die Energie) die Bewegung von zwei chaotischen(?) Doppelpendeln, die zuerst in der Darstellung nicht zu unterscheiden sind, sehr stark beeinflusst.
Beste Grüße
Mathematiiker
_________________ Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein
|
|
Marc.
      
Beiträge: 1876
Erhaltene Danke: 129
Win 8.1, Xubuntu 15.10
|
Verfasst: Do 02.05.13 09:26
|
|
jfheins
      
Beiträge: 918
Erhaltene Danke: 158
Win 10
VS 2013, VS2015
|
Verfasst: Do 02.05.13 11:09
Okay, also erstmal zu den unterschiedlichen Pendellängen: Gab' mal die Werte aus dem Anhang ein. ich finde das sieht irgendwie nicht richtig aus. Ich kann mich da natürlich auch irren.
Dann zu Chaos vs. Stabilität: Ich habe da noch einmal nachgeschaut und es ist wohl so dass ein stabiles System mit nur einer stabilen Gleichgewichtslage auch sowohl stabil als auch chaotisch sein kann. Im Phasenraum betrachtet ändert sich die Größe eines Elements nicht (=stabil) aber die Form kann sich derart verändern, dass sie den gesamten Raum abdeckt. (=chaotisch)
Ich hatte gedacht, das würde sich ausschließen
Dazu kommt noch, dass wir in Mechanik das System fast immer linearisiert haben - und ein linearisiertes Doppelpendel (Kleinwinkelnäherung) ist auch nicht mehr chaotisch
Zu dem Thema habe ich auch noch ein interessantes PDF gefunden: e3.physik.uni-dortmu...I_WS10/2.8_Chaos.pdf
Zur Energie: Mir ist immer noch nicht klar, was ich in deinem Programm einstelle. Die potenzielle Energie im Lagrange Formalismus gilt stets für das gesamte System, nicht für einzelne Elemente. Die potenzielle Energie einzelner Elemente ist relativ nutzlos ohne die kinetische Energie. Die potenzielle Energie ist zudem durch die Winkel bereits eindeutig bestimmt. Die kinetische Energie kann wiederum nicht negativ werden. (Und zur potenziellen Energie kannst du einfach eine passende Konstante addieren, damit die nicht negativ wird  )
Um also auch konstruktive Vorschläge einzubringen: Ich fände es viel sinnvoller wenn ich statt "Energie" direkt die Geschwindigkeit (also entweder dphi/dt oder die Bahngeschwindigkeit) angeben könnte. Die Energien können dann ja unten drunter stets aktuell ausgerechnet werden. Außerdem wäre es toll wenn die Darstellung sofort erfolgt, wenn ich was eintippe. Und die Darstellung sollte natürlich nicht die Parameter ändern.
Ganz schick wären auch so kleine rote Pfeile, die die Bahngeschwindigkeit deutlich machen. (Zumindest solange nicht animiert wird)
Und eine Phasenraumdarstellung wäre cool. Ich denke da an zwei Diagramme, eines pro Pendel, und auf den Achsen phi und dphi/dt. Und die Linie sollte nach einiger Zeit wieder verschwinden, so wie auf dem gif im Wikipedia-Artikel.
Einloggen, um Attachments anzusehen!
|
|
Mathematiker 
      
Beiträge: 2622
Erhaltene Danke: 1448
Win 7, 8.1, 10
Delphi 5, 7, 10.1
|
Verfasst: Do 02.05.13 14:46
Hallo,
jfheins hat folgendes geschrieben : | Gab' mal die Werte aus dem Anhang ein. ich finde das sieht irgendwie nicht richtig aus. Ich kann mich da natürlich auch irren. |
Danke für den Hinweis. Ich hab's ausprobiert und kann im Moment noch nicht viel sagen. Oder besser, ich weiß es nicht, ob es korrekt ist. Bei diesem Doppelpendel treten die merwürdigsten Bahnen auf.
Ich sehe mir die Gleichungen noch einmal genau an.
jfheins hat folgendes geschrieben : | Die potenzielle Energie einzelner Elemente ist relativ nutzlos ohne die kinetische Energie. Die potenzielle Energie ist zudem durch die Winkel bereits eindeutig bestimmt. |
Ich sehe es ja ein, dass es schon komisch ist, wenn eine negative Energie erscheint. Sehe ich mir auch noch einmal an. Da zu Simulationsbeginn die Pendel in Ruhe sein sollen, tritt keine kinetische Energie auf und die Eingabe entspricht tatsächlich der potentiellen Energie.
Eine Lösung für das Problem werde ich schon finden. Vielleicht gebe ich ja besser die Massen ein. Diese und die Lage der Pendel verstecken sich ja eigentlich hinter der (potentiellen) Energie.
jfheins hat folgendes geschrieben : | Ich fände es viel sinnvoller wenn ich statt "Energie" direkt die Geschwindigkeit (also entweder dphi/dt oder die Bahngeschwindigkeit) angeben könnte. |
Ist eine Idee, mal sehen.
jfheins hat folgendes geschrieben : | Außerdem wäre es toll wenn die Darstellung sofort erfolgt, wenn ich was eintippe. Und die Darstellung sollte natürlich nicht die Parameter ändern. ...
Und eine Phasenraumdarstellung wäre cool. Ich denke da an zwei Diagramme, eines pro Pendel, und auf den Achsen phi und dphi/dt. |
Alles außer den roten Pfeilen und der Phasenraumdarstellung mit den gewünschten Parametern in Rev 1/2 umgesetzt. Zwei Diagramme, die die Lage des äußeren Pendelkörpers zeigen, habe ich aber schon.
Beste Grüße
Mathematiker
_________________ Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein
|
|
Tranx
      
Beiträge: 648
Erhaltene Danke: 85
WIN 2000, WIN XP
D5 Prof
|
Verfasst: Do 02.05.13 20:12
Im Gegensatz zu einem relativ einfachen mathematischen oder auch linearen System ist das System des Doppelpendels schon recht chaotisch. Die Bahnkurve der Punkte möchte ich nicht berechnen wollen. Außerdem heißt ein chaotisches System nicht deswegen so, weil es keinen mathematischen Zusammenhang von Ursache und Wirkung gibt, es ist nur so, dass dieser sehr komplex ist und dass geringfügige Änderungen an einem Parameter extreme Veränderungen an einem anderen hervorrufen können. Dennoch gibt es einen Zusammenhang.
Ein typische chaotisches System ist ja unser Wetter und erst Recht das Klima. Beispiel Eiszeit: Es gibt Ursachen für diese Eiszeiten (Weltraum: Abschirmung von Sonnenstrahlung, Sonnenaktivitätsunterschiede, Erde: CO2-Gehalt der Atmosphäre, Golfstromrichtung, ... ) All dies kann u.U. selbst bei einem Anstige der Atmosphärentemperatur lokal zu Eiszeiten führen (Gletschereis in Grönland - Schmelze - Golfstromumkehrung - Vereisung - höhere Reflektion - kälteres Klima)
Auch dies zu simulieren oder gar im Voruas zu berechnen, ist zum größten Teil unmöglich.
Und die chaotischen System Mandelbrot, Julia-Menge ... sind in einem streng mathematischen Zusammenhang. Da kann man den Effekt kleinster Änderungen an einem Parameter gut studieren. Und es sieht zum Teil auch noch sehr gut aus.
_________________ Toleranz ist eine Grundvoraussetzung für das Leben.
|
|
jfheins
      
Beiträge: 918
Erhaltene Danke: 158
Win 10
VS 2013, VS2015
|
Verfasst: Do 02.05.13 22:33
Zitat: | Eine Lösung für das Problem werde ich schon finden. Vielleicht gebe ich ja besser die Massen ein. Diese und die Lage der Pendel verstecken sich ja eigentlich hinter der (potentiellen) Energie. |
Ach, die ergeben sich aus den Werten??
Ich habe hier mal ein schönes Programm gefunden, das in meinen Augen eine "natürlichere" Bewegung erzeugt: freddie.witherden.or...lependulum/#download
Wenn das innere Pendel kurz ist, bleibt die Bewegung des langen relativ gleichförmig. Der Grenzfall ist ja eine Länge von 0 dann geht's zum einfachen Pendel über. Insofern sollte die Bewegung des äußeren Pendels gleichförmiger werden, wenn es länger wird.
Für diesen Beitrag haben gedankt: Mathematiker
|
|
Mathematiker 
      
Beiträge: 2622
Erhaltene Danke: 1448
Win 7, 8.1, 10
Delphi 5, 7, 10.1
|
Verfasst: Do 02.05.13 22:56
Hallo,
Das Programm ist richtig gut. Das schaffe ich wohl nicht.
jfheins hat folgendes geschrieben : | Der Grenzfall ist ja eine Länge von 0 dann geht's zum einfachen Pendel über. Insofern sollte die Bewegung des äußeren Pendels gleichförmiger werden, wenn es länger wird. |
Das ist ein Argument.
Und schon habe ich ein Problem. Denn in diesem Fall bekomme ich eine falsche Bewegung, d.h. irgendwo steckt ein fachlicher Fehler und ich werde wieder suchen, suchen, ...
Beste Grüße
Mathematiker
_________________ Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein
|
|
Tranx
      
Beiträge: 648
Erhaltene Danke: 85
WIN 2000, WIN XP
D5 Prof
|
Verfasst: Fr 03.05.13 04:34
Die ganze Berechnung scheint nicht so einfach zu sein:
www.tm-aktuell.de/TM...lpendel_grenzen.html
Dort wird beschrieben, dass schon kleinste Änderung von Ausgangsparametern extrem andere Kurvenverläufe ergeben, was im Umkehrschluss auch heißt, dass die Simulation durch mögliche Fehler (2. Ableitung des Winkels!!) dieses selber produziert. Also, die Bewegungsgleichungen sind dermaßen kompliziert, dass man da schnell genügend große Fehler produzieren kann, dass die Simulation zu keinem sinnvollen Ergebnis führt.
_________________ Toleranz ist eine Grundvoraussetzung für das Leben.
Für diesen Beitrag haben gedankt: Mathematiker
|
|
Mathematiker 
      
Beiträge: 2622
Erhaltene Danke: 1448
Win 7, 8.1, 10
Delphi 5, 7, 10.1
|
Verfasst: Fr 03.05.13 06:26
Hallo,
Das ist sehr interessant. Ich habe den Text nur kurz überflogen, heute nachmittag habe ich wieder etwas Zeit.
Ansonsten kann ich nach einer "durchgemachten" Nacht feststellen, dass ich drei Ergebnisse habe:
1. eine schimpfende Frau  (OT: "Du hast schon wieder die Nacht vor der Kiste zugebracht ...")
2. die Feststellung, dass ich tatsächlich nicht weiß, was ich hier mache.  Jetzt habe ich erst gemerkt, dass ich schon die ganze Zeit mit der Winkelgeschwindigkeit und nicht mit Energiewerten rechne.  Man sollte wohl nur das machen, von dem man etwas Ahnung hat.
3. Frust, da ich keinen Schimmer habe, wo der Fehler steckt  , d.h. ich muss noch einmal von vorn beginnen.
So, jetzt gehe ich zu meinem Mathe-LK 11. Die werden sich freuen, wie "ausgeschlafen und entspannt" ich heute bin.
Vorher gibt's noch viel Kaffee aus der EE-Tasse!
Beste Grüße
Mathematiker
_________________ Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein
|
|
Mathematiker 
      
Beiträge: 2622
Erhaltene Danke: 1448
Win 7, 8.1, 10
Delphi 5, 7, 10.1
|
Verfasst: Fr 03.05.13 12:17
Hallo,
nachdem ich voller Frust auch die Berechnungsroutine von delfiphan in www.entwickler-ecke....ghlight=doppelpendel kurzzeitig "geklaut" hatte und genau solcher Blödsinn bei unterschiedlichen Pendellängen herauskam, gebe ich auf!
Das Problem entzieht sich meinen Möglichkeiten. Leider.
Aus diesem Grund habe ich die Eingabe verschiedener Pendellängen herausgenommen. Sind beide gleich, ist das Ergebnis ja richtig. Nun ja "richtig", wenn man nicht dem Hinweis von Tranx folgend, den Text
www.tm-aktuell.de/TM...lpendel_grenzen.html
liest.
Das dort enthaltene
Zitat: | Die Simulation der chaotischen Bewegung eines Doppelpendels ist nur über ein sehr eng begrenztes Zeitintervall möglich. Diese Aussage ist nicht den numerischen Lösungsverfahren anzulasten, experimentell hätte man noch viel geringere Chancen.
Es ist auch nicht sinnvoll, über größere Zeitintervalle zu rechnen, denn die unvermeidlichen Fehler in den Parametern und den Anfangsbedingungen haben einen größeren Einfluss auf die Ergebnisse als eventuell auftretende Verfahrensfehler. |
holt mich auf den Boden der Realität zurück.
Schade. Es war sehr interessant, aber leider nicht machbar.
In der letzten Revision 4 habe ich jetzt auch korrekt die Winkelgeschwindigkeit als Eingabemöglichkeit.
Beste Grüße
Mathematiker
_________________ Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein
|
|
lenamarkert
Hält's aus hier
Beiträge: 1
|
Verfasst: Fr 03.05.13 22:15
Wenn ich auch gar nichts von dem allen verstehe, gefällt mir das Programm sehr gut. Die Formeln auf der Wiki-Seite werde ich wohl nie kapieren.
Es ist lustig wenn die zwei Pendel sich trennen und ganz anders weiter bewegen.
Ich hab das schon mal im Physikunterricht gesehen. Da sah es fast genauso aus.
Lena
|
|
Mathematiker 
      
Beiträge: 2622
Erhaltene Danke: 1448
Win 7, 8.1, 10
Delphi 5, 7, 10.1
|
Verfasst: Sa 04.05.13 11:03
Hallo,
da das Thema mir immer noch keine Ruhe lässt, habe ich einmal etwas Anderes probiert.
In der zusätzlich in Rev 5 vorhandenen Berechnungsvariante starten beide Doppelpendel mit den gleichen Parametern. Allerdings wird das erste mit real-Genauigkeit, das zweite mit extended berechnet.
Und es geschieht genau das Gleiche, wie zu erwarten. Nach einiger Zeit, nur etwas später, bewegen sich beide Doppelpendel völlig anders.
D.h., dass auch die Rechengenauigkeit einen entscheidenden Einfluss hat.
Damit ist so ein Doppelpendelprogramm ja ganz interessant, nur leider die ganze Quälerei mit dem hässlichen Differentialgleichungssystem "überflüssig".
Beste Grüße
Mathematiker
_________________ Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein
Zuletzt bearbeitet von Mathematiker am Sa 04.05.13 15:36, insgesamt 1-mal bearbeitet
|
|
jfheins
      
Beiträge: 918
Erhaltene Danke: 158
Win 10
VS 2013, VS2015
|
Verfasst: Sa 04.05.13 13:25
Probier' mal in der aktuellen Rev. 4 die Parameterkombi 90, 1, 90, 0 aus - die Pendel bleiben ziemlich lange beisammen 
|
|
Mathematiker 
      
Beiträge: 2622
Erhaltene Danke: 1448
Win 7, 8.1, 10
Delphi 5, 7, 10.1
|
Verfasst: Sa 04.05.13 15:40
Hallo,
jfheins hat folgendes geschrieben : | Probier' mal in der aktuellen Rev. 4 die Parameterkombi 90, 1, 90, 0 aus - die Pendel bleiben ziemlich lange beisammen  |
Das ist ziemlich erstaunlich. Interessant finde ich auch 180 0 180 -0.0005, bei dem die beiden Pendel durch 0.001 mehr bei Pendel 2 symmetrisch schwingen.
Ich habe beide Berechnungsvarianten, auch die mit real-extended, jetzt in ein Programm gepackt.
Beste Grüße
Mathematiker
_________________ Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein
|
|
Marc.
      
Beiträge: 1876
Erhaltene Danke: 129
Win 8.1, Xubuntu 15.10
|
Verfasst: So 05.05.13 10:25
Hi!
Vorweg, ich habe mir nicht angeschaut, wie Du im Detail die Differentialgleichung numerisch löst.
Mir fällt aber gerade noch ein, dass mir mein Mitbewohner (Mathematiker) vor kurzem äußerst knapp das Runge-Kutte-Verfahren näher gebracht hat.
Was mir dabei hängen geblieben ist, ist dass es wichtig ist nicht die Schritte beliebig klein zu machen (*), was auf Grund der begrenzten Rechengenauigkeit schon keinen Sinn mehr ergibt, sondern höhere Ordnungen zu betrachten.
Wobei es eine Vorschrift gibt, um die für das Problem optimale Schrittweiten (dynamisch?) zu finden.
Wenn ich unter der Woche mal ein wenig mehr Zeit finde, kann ich mich gerne noch einmal mit ihm unterhalten und es dann hier genauer erklären, wie die Optimierung des Verfahrens funktioniert.
(*) Das machen nämlich immer die Ingenieure, die keine Ahnung haben.
Schöne Grüße
NACHTRAG: Das Verfahren auf das ich mich oben bezog, bezieht sich nur auf bereits entkoppelte gewöhnliche Diff'gleichungen. Es wird also meiner seits noch etwas länger mit einer dauern mit einer ausführlicheren Lösung aufwarten zu können.
Für diesen Beitrag haben gedankt: Mathematiker
|
|
|