Startseite
Forum
Fragen
Suchen
Formeleditor
Über Uns
Registrieren
Login
FAQ
Suchen
Foren-Übersicht
->
Astronomie
Antwort schreiben
Benutzername
(du bist
nicht
eingeloggt!)
Titel
Nachrichtentext
Smilies
Weitere Smilies ansehen
Schriftfarbe:
Standard
Dunkelrot
Rot
Orange
Braun
Gelb
Grün
Oliv
Cyan
Blau
Dunkelblau
Indigo
Violett
Weiß
Schwarz
Schriftgröße:
Schriftgröße
Winzig
Klein
Normal
Groß
Riesig
Tags schließen
Schreibt eure Formeln hier im Board am besten mit Latex!
So gehts:
Latex-Kurzbeschreibung
|
Formeleditor
[quote="TomS"]ah, ja, genau, da hast recht, das ist falsch (EDIT: habe ich tatsächlich - genauso wie deine Korrektur - übersehen)[/quote]
Optionen
HTML ist
aus
BBCode
ist
an
Smilies sind
an
BBCode in diesem Beitrag deaktivieren
Smilies in diesem Beitrag deaktivieren
Spamschutz
Text aus Bild eingeben
Alle Zeiten sind GMT + 1 Stunde
Gehe zu:
Forum auswählen
Themenbereiche
----------------
Mechanik
Elektrik
Quantenphysik
Astronomie
Wärmelehre
Optik
Sonstiges
FAQ
Sonstiges
----------------
Off-Topic
Ankündigungen
Thema-Überblick
Autor
Nachricht
ProfilerOne
Verfasst am: 07. Okt 2012 10:26
Titel:
Danke Leute für die vielen Antworten, das Problem mit den falsch berechneten Bahnen hab ich dank eurer Hilfe gelöst, es waren, wie von euch angemerkt, die fehlenden Kraftkomponenten bei Berechnung des Einheitsvektors, wäre ich im Leben nicht alleine drauf gekommen, danke
Ich habe aber noch eine Frage zu der angesprochenen Problematik bei der Berechnung der Geschwindigkeit. Momentan verwende ich immer noch Euler bei ca. 50 Berechnungen pro Sekunde, ist das präzise Genug, wenn wir von Dimensionen in unserem realen Sonnensystem ausgehen (Erde & Sonne) bei "Echtzeit", also keinem schnellerem Vorlauf?
Kann mir in dem Zusammenhang jemand erklären, wie viel mehr Rechenkapazität der Ströme-Verlet-Algortimus benötigt und ob es sich lohnt diesen einzusetzen, wenn es auch um die Berechnung von mehreren Körpern geht dessen Bahnen aber nicht zu 100% physikalisch korrekt sein müssen?
Ich weiß, dass diese Fragen nicht einfach zu beantworten sind, weil die Präzision eines Verfahrens davon abhängt unter welchen Bedingungen es angewandt wird, aber so eine grobe Richtung wäre toll und ob es sich tatsächlich lohnen würde ein anderes Verfahren anzuwenden.
Danke euch
TomS
Verfasst am: 07. Okt 2012 01:01
Titel:
Danke
DrStupid
Verfasst am: 06. Okt 2012 19:43
Titel:
TomS hat Folgendes geschrieben:
DrStupid: kannst du erklären, wieso du ein Verfahren bevorzugst, das die Energie
nicht
erhält, wenn du eines kennst, das m.E. numerisch sehr einfach umsetzbar ist und das sie Energie erhält?
Das ist leicht erklärt: Die Energieerhaltung allein genügt mir nicht. Ich will Ergebnisse, die Lösung der Bewegungsgleichungen sind und in der Beziehung ist der Runge-Kutta-Nyström dem Geschwindigkeits-Störmer-Verlet haushoch überlegen. Da die Energieerhaltung in den Bewegungsgleichungen steckt, wird sie mit einer möglichst guten Lösung automatisch mitgeliefert.
Symplektische Einschrittverfahren sind besser geeignet, wenn es nur auf eine möglichst gute Energieerhaltung und nicht auf möglichst exakte Bahnen einzelner Körper ankommt. Das ist zum Beispiel in der Moleküldynamik der Fall.
TomS hat Folgendes geschrieben:
Btw.: was bedeutet "Energieerhaltung" hier genau? bzw. bis zu welcher Ordnung gilt "Energieerhaltung"?
Das kann ich Dir aus dem Stehgreif nicht beantworten. Ich kann mich zwar dunkel an eine Herleitung des obigen Verfahrens erinnern, bei der schon Glieder zweiter Ordnung vernachlässigt wurden, aber dafür lege ich nicht meine Hand ins Feuer.
TomS
Verfasst am: 06. Okt 2012 14:50
Titel:
Na, das sind doch zwei wichtige Hinweise.
DrStupid: kannst du erklären, wieso du ein Verfahren bevorzugst, das die Energie
nicht
erhält, wenn du eines kennst, das m.E. numerisch sehr einfach umsetzbar ist und das sie Energie erhält?
Btw.: was bedeutet "Energieerhaltung" hier genau? bzw. bis zu welcher Ordnung gilt "Energieerhaltung"?
DrStupid
Verfasst am: 06. Okt 2012 14:41
Titel: Re: Gravitation im Koordinatensystem
ProfilerOne hat Folgendes geschrieben:
Meine Frage:
Auf den Fehler im Nenner wurde ja schon hingewiesen. Davon abgesehen ist der Integrator ungeeignet. Mit dem Euler-Verfahren erhält man beispielsweise Spiralen anstelle von stabilen Umlaufbahnen. Kleinere Schrittweiten mildern das Problem zwar etwas ab (zu lasten der Rechenzeit), aber sie können es nicht wirklich lösen, weil sich die Fehler aller Schritte aufsummieren, anstatt sich gegenseitig auszugleichen.
Das beste mir bekannte Einschritt-Verfahren ist der Geschwindigkeits-Störmer-Verlet-Algoritmus:
Wenn die Zahl der Körper überschaubar bleibt, bevorzuge ich allerdings den Runge-Kutta-Nyström:
http://theory.gsi.de/~vanhees/faq/gravitation/node62.html
Im Gegensatz zum Geschwindigkeits-Störmer-Verlet ist der zwar nicht energieerhaltend, aber dafür so genau, dass die Fehler auch bei relativ großen Schrittweiten erträglich bleiben.
TomS
Verfasst am: 06. Okt 2012 13:59
Titel:
ah, ja, genau, da hast recht, das ist falsch
(EDIT: habe ich tatsächlich - genauso wie deine Korrektur - übersehen)
Huggy
Verfasst am: 06. Okt 2012 13:58
Titel:
Aber er hat im Nenner nur die Differenz einer Koordinate eingehen lassen, nicht die aller 3 Koordinaten.
TomS
Verfasst am: 06. Okt 2012 13:56
Titel:
Was soll daran falsch sein? Das ist doch nur eine Koordinatentransformation. Natürlich geht nur die Differenz der Koordinatenvektoren ein.
Huggy
Verfasst am: 06. Okt 2012 13:47
Titel:
@TomS
Ist dir nicht aufgefallen, dass beim Fragesteller der Nenner falsch ist? Da steht bei ihm nur das
drin!
TomS
Verfasst am: 06. Okt 2012 13:39
Titel: Re: Gravitation im Koordinatensystem
Nun, das ganze sieht zunächst vernünftig aus:
wobei ich hier den Richtungsvektor zwischen den beiden Objekten einführe und dessen Einheitsvektor sowie dessen Betrag verwende. Das passt also.
Dann ist
wobei du das für x,y,z berechnen musst; insbs. musst du auf eine genügend kleine Schrittweite Delta t achten.
Die von dir verwendete "iterative" Lösung der Bewegungsgleichung ist der einfachste Ansatz - verbunden mit diversen Schwierigkeiten. Für kleine r und damit große F bzw. a müsste man z.B. die Schrittweite Delta t verringern, um eine bessere Genauigkeit zu erzielen. Es gibt viele Ansätze, die die numerische Behandlung sowohl effizienter als auch präziser implementieren; aber welche davon für deine Zwecke geeignet sind (und noch hinreichend einfach sind) kann ich nicht beurteilen.
Huggy
Verfasst am: 06. Okt 2012 13:30
Titel:
Der Fehler steckt im Nenner der Kraft. Du hast dort
hingeschrieben. Der richtige Nenner ist:
Dieser Nenner ist für alle 3 Kraftkomponenten gleich. Nur der Zähler ändert sich.
ProfilerOne
Verfasst am: 06. Okt 2012 11:50
Titel: Gravitation im Koordinatensystem
Meine Frage:
Hallo Leute,
ich hab folgendes Probleme: Die Gravitation tut nicht, was sie sonst tut. Ich programmiere zur Zeit ein Spiel und möchte dafür die Physik zwischen Himmelskörpern simulieren. Momentan ist die Situation noch recht überschaulich - eine Sonne und ein weiteres Objekt von geringer Masse. Das Ganze muss natürlich in einem 3-dimensionalem Raum berechnet werden. Hier Beispielhaft die verwendeten Werte:
Meine Ideen:
Als Ansatz hab ich das Newtonsche Gravitationsgesetz gewählt, ich hab zwar Physik LK, aber wir haben die Gravitation nie im 3-dimensionalen Raum unter Berücksichtigung von v-Vektoren etc. besprochen, von daher hab ich versucht unser etwas einfachen Überlegungen und das was ich im Internet gefunden habe zu verbinden. Das sieht bis jetzt so aus (Beispielhaft an der x-Komponente):
Die erhaltene Geschwindigkeit wird dann dazu genutzt, die nächste Koordinate zu berechnen, welche wiederum als Grundlage für die nächste Rechnung genutzt wird.
Ich bin mir sehr unsicher, was diesen Ansatz angeht und, ich hab mir das alles grafisch anzeigen lassen, das Ergebnis gibt mir recht, das irgendwo ein Fehler sein muss, aber ich bin hier wirklich mit meiner Physik am Ende :/
Ich hoffe jemand hat da einen guten Rat und danke schonmal für eure Hilfe