[gelöst] PaintBox-Komponente und clDefault-Farbe

Für Fragen von Einsteigern und Programmieranfängern...
Scurra
Beiträge: 29
Registriert: Mi 31. Dez 2014, 12:08

Re: PaintBox-Komponente und clDefault-Farbe

Beitrag von Scurra »

Sorgen würde ich mich eher darum, dass die Simulation kein stabiles Ergebnis liefert und der Radius der Planetenbahn immer größer wird. Ich denke mal, dass deine Rechnung da zu vereinfacht ist, weil du die Formeln für Weg/Geschwindigkeit/Beschleunigung einer linearen Bewegung auf eine kreis-/ellipsenförmige Bewegung anwendest, das geht angenähert nur für ganz kurze Wegstücke, und auch da werden sich die Fehler allmählich aufsummieren, so dass die Bahn divergiert.
Ja, deine Vermutung ist richtig. Das ist der Tatsache geschuldet, dass die Skalierung zuerst so wählen wollte, dass ich z. B. die x- und y-Werte nicht in Einheiten von Pixel angeben wollte, sondern in km (so, dass ich z. B. das gesamte Sonnensystem bis einschließlich der größten Abstände (Bahnradius von Neptun) in meine Paintbox bekomme. Nachdem die Simulation aber nicht richtig funktioniert hat, habe ich den Skalierungsfaktor wieder entfernt bzw. auf 1 gesetzt (daher hat die Klasse TSolarsystem auch die Eigenschaft Fscale). Außerdem habe ich die Zeitabstände, die simuliert werden (FtimeBase), einfach auf 1 gesetzt und das ist der eigentliche Grund. Ich habe es gerade mal auf 0.05 gesetzt und dann werden die elliptischen Bahnen schon eher eingehalten. Um die gleiche Geschwindigkeit der Simulation beizubehalten, müsste ich jetzt noch eine for-Schleife einbauen, um die Berechnung in jedem Schritt mehrmals durchzuführen, falls FtimeBase kleiner ist (viele kleine Abweichungen sind kleiner als eine große Abweichung).
Einen Hinweis noch: Für die Gravitationskonstante kannst du statt G := 6.67384/power(10, 11) besser G := 6.67384E-11 schreiben.
Ja stimmt, danke für den Hinweis.

Antworten