![]() |
Re: Physikgesetze zur Simulation unseres Sonnensystemes
Ich versuche mal, auf ein paar Aspekte einzugehen:
Zitat:
Zitat:
Zitat:
![]() Zumindest di Konstante kommt mir spanisch vor - das sollten 6,67*10^-11 sein ... Zitat:
Du musst die Kraft noch durch die Erdmasse teilen. Und die Kräfte wirken immer auf der direkten verbindungslinie - Wenn die Kraft nur ein Skalar ist, musst du sie mit dem normierten Differenzvektor multiplizieren. Zitat:
Zitat:
Zitat:
Zitat:
Puh, das wäre alles - ich hoffe ich konnte helfen ^^ Was die Skalierung angeht: Du braucht einen Skalierungsfaktor der angibt, wieviele km pro Pixel angezeigt werden sollen. Oder du schrumpfst von vornherein die Bahnen der Planeten, musst dann aber ihre Massen ebenso anpassen ... |
Re: Physikgesetze zur Simulation unseres Sonnensystemes
Hmmmm, also erstmal haben die Planeten auch eine kleine Wirkung auf die Sonne, demnach kann man ihren Richtungsvektor nicht einfach weglassen.
Wenn die Sonne in der Bildschirmitte bleiben soll, dann könnte man nach jedem Durchgang alle Positionen so verschieben, daß die Sonne wieder in der Mitte ist. Oder man läßt die Positionen und verschiebt es nur für die Anzeige, wobei man zu diesem Zeitpunkt auch gleich so skallieren kann, daß alles Wichtige sichtbar ist. Im Grunde hast du einen Richtungsvektor in Form einer "Kraft", aus Richtung und Geschwindigkeit (also könnte man die Geschwindigkeit auch gleich nur als "Kraft" speichern). Und dann hast du nochmals "Kräfte", zwischen den einzelnen Objekten. In jedem Durchlauf berechnest du alle Vektoren/Kräfte (wie schon richtig erkannt, aus den aktuellen Werten des letzten Durchlaufs), verrechnest dann alle und hast die neuen Werte für den aktuellen Durchlauf. Mit diesen neuen Vektoren verschiebst du nun alle Objekte ein "Stückchen". (Weg * Kraft * Schrittweite in die Richtung des Vektors) Kraft=Energie Das Problem ist dabei allerdings daß, je größer die Rechenschritte sind, also je größer "Schrittweite" ist, desto ungenauer werden die Berechnungen. PS: Geschwindigkeit ist ja auch abhänging von der Zeit und die Zeit ist hier erstmal relativ egal. |
Re: Physikgesetze zur Simulation unseres Sonnensystemes
Zitat:
Zitat:
jfheins hat das alles schon physikalisch korrekt erklärt, da habe ich nichts mehr hinzuzufügen :) . |
Re: Physikgesetze zur Simulation unseres Sonnensystemes
@jfheins:
Vielleicht wäre es doch einfacher, wenn ich die Sonne mitberechne und die Planeten so verschiebe, dass die Sonne wieder in der Mitte ist. Das mit der Konstante: Gut, dass das nicht mein Lehrer gesehen hat. :mrgreen: Anscheinend habe ich das geschrieben, ohne darüber nachzudenken. ;) Für die Beschleunigung muss ich natürlich noch durch m0 teilen, tut mir leid ... wieder geträumt. :( Zitat:
Zitat:
Zitat:
@himitsu & Khabarakh: Wie schon gesagt, ich lasse die Sonne mitbewegen und verschiebe das Ganze Sonnensystem nach jedem Durchlauf. Ich danke euch Dreien für eure Hilfe. Ich werde mich gleich mal an die Programmierung machen und sehen, was dabei rauskommt. Und noch mal einen ganz großen Dank an Christian S. für die Daten. :bouncing4: |
Re: Physikgesetze zur Simulation unseres Sonnensystemes
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
Siehe Anhang ;) Zitat:
Zitat:
\vec{F}=G\frac{mM}{||r||^2}\cdot \underbrace {\frac{\vec{r}}{||\vec{r}||}}_{Laenge 1} = G\frac{mM}{||r||^3}\cdot \vec{r} \\\\ r\ ist\ der\ Vektor\ zwischen\ den\ Planeten |
Re: Physikgesetze zur Simulation unseres Sonnensystemes
Ich hätte eine Idee, wie man sehr viele Körper verrechnen könne.
- lege ein Gitter über den Raum - je Feld eine Liste - dann wird jeder Körper in der Liste eingetragen in wessen Feld er gerade ist (natürlich muß dieser dann noch verschoben werden, wenn er in ein anderes Feld reinrutscht) - nun muß man nur noch die benachbarten Felder nach Körpern absuchen, anstatt immer alle Körper durchzugehn. - jetzt werden erstmal ale Körper im selben Feld verrechnet, - dann sucht man in allen Feldern ringsrum anderen Körpern (der Radius der Suche wäre die doppelte der Entfernung, bis wohin sich zwei Körper mit der Masse des aktuellen Körpers noch spürbar beeinflussen würden) bei gleich großen oder größeren Körpern immer nur die miteinander verrechnen, welche rechts daneben und/oder darunter liegen (nach dem man so alle Felder durchgegangen ist, dürfte alles miteinander verrechnet sein) Also mit Göße meinte ich sozusagen die Masse/Anziehungskraft des Körpers. |
Re: Physikgesetze zur Simulation unseres Sonnensystemes
Hmmm ... naja ...
Also erstmal ist das Sonnensystem ziemlich dünn mit Planeten besetzt - da ist so ein Raster imho noch nicht notwendig. Außerdem ließe sich das vereinfachen: Die Sonne bekommt eine Sonderstellung und jeder andere Himmelskörper bekommt einen weiteren angegeben um den er kreist. Das läuft aus gleiche hinaus ;) Die Planeten kreisen um die Sonne und die Monde um ihre jeweiligen Planeten. Das weis man vorher bereits und das ändert sich auch nicht ;) Ansonsten hört sich das nach dem ![]() |
Re: Physikgesetze zur Simulation unseres Sonnensystemes
Eh, die Idee ist gut, da gibt es dann ja auch weniger Listen, wenn man jeden Körper an einen anderen Körper "bindet", von welchem man gerade am Meißten angezogen wird.
|
Re: Physikgesetze zur Simulation unseres Sonnensystemes
Für die paar Körper kann man einfach die Kraft jedes Körpers auf jeden anderen ausrechnen. Das schafft selbst ein 10 Jahre alter Rechner noch locker ;-)
@jfheins: Deinen Formel-Anhang solltest Du nochmal prüfen, Du kommst da auf sowas wie F = irgendwas * F, was nur für F = 0 oder irgendwas = 1 gilt ;-) Es reicht doch auch einfach, alle Vektorkomponenten sauber auszurechnen. Wozu noch mit irgendwelchen Einheitsvektoren und Beträgen hantieren, das macht's doch nur unnötig kompliziert. |
Re: Physikgesetze zur Simulation unseres Sonnensystemes
Zitat:
> die Entfernung und Kräfte/Energien Wenn man Anziehungskräfte und die Bewegungsenergie in der selben Einheit speichert, dann kann man diese dann direkt verrechnen, welche sehr gut in so'nen Double/Extendet reinpaßt. Wenn das Model dann mal richtig läuft, dann kann man immernoch Umrechnungsfaktoren in reale physikalische Werte erstellen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:28 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz