Ich glaube, die Kleinplaneten (insb jene jenseits des Neptuns) und Monde kann man bei der Berechnung weglassen (höchstens als mögliche "Ziele" für Trümmerteile drinbehalten). Das sollte die Simulation schneller machen und dürfte kaum einen Unterschied auf die Teilchenbahnen haben.
Das kann man machen. Man könnte sie möglicherweise auf eine Keplerbahn reduzieren, so dass der Rechenaufwand sehr klein wird und sie als Ziele nach wie vor vorhanden bleiben.
Okay. Wäre eine mögliche Lösung dieses Problems, dass man am Anfang nur kleine Zeitschritte simuliert, die dann mit der Zeit (z.B. in umgekehrter Abhängigkeit der Anzahl Partikel, die noch da sind) immer grösser werden?
Die Integrationszeit braucht man gewöhnlich nicht auf diese Weise variabel zu machen. Durch die immer weniger werdenden Teile wird die Simulation sowieso immer schneller. Nachwievor müssen wir das Problem lösen, dass man einen Integrator braucht, der "close encounters" simulieren kann, also die Zeitschritte senkt oder die Genauigkeit erhöht, sobald sich 2 Körper nahe kommen. Sonst wird es schwer, die Kollision zuverlässig zu erkennen.
Allerdings glaube ich momentan nicht, dass wir das Problem mit dem einfachen BS-Integrator lösen können. Wir müssen zwangsläufig auf einen symplektischen Integrator gehen. Da ist wiederum auch nicht jeder geeignet, da gibt es welche die close encounters beherrschen und andere, die es nicht können. Dann ist das Problem, dass die meisten in Fortran-77 programmiert sind oder nicht open source vorliegen. Ich hatte mir einen sehr vielversprechenden ausgesucht, der genau unsere gewünschten Eigenschaften hat, sehr schnell ist, aktuell ist (2010) und der einigermaßen gut dokumentiert ist. Dieser nennt sich SCATR und ist eine Weiterentwicklung von SWIFT, der mMn. genauso verbreitet wie Mercury ist.
Link
Die Autoren schreiben, man könne den Quellcode per EMail anfragen. Das habe ich vor einer Woche getan, aber leider keine Antwort erhalten. Möglicherweise fehlt mir dazu der wissenschaftliche Hintergrund (zb uni-email oder Mastertitel) um ernst genommen zu werden.
Vielleicht kannst du den Teil übernehmen, Bynaus, und versuchen, Kontakt aufzubauen.
Auch wenn der dann in Fortran programmiert ist, schätze ich ein, dass man ihn an ein eigenes Programm anschließen kann. Denn der ist so perfekt, dass wir wohl am Code selbst keine Änderungen mehr vornehmen müssten.
Weiter: wenn man an das Endprodukt denkt, dann wären sicher auch Exzentrizität vs. Inklination / Grosse Halbachse der einzelnen Teilchen interessant. Wäre z.B. toll, wenn man den zeitlichen Verlauf nicht nur in der xy-Ebene des Sonnensystems plotten könnte, sondern auch in diesen "Parameter-Ebenen".
Genau das möchte ich als nächstes tun. Am GUI habe ich schon entsprechende Funktionen vorbereitet. Die örtliche Verteilung ist ja letztendlich garnicht so interessant.
Das ist vermutlich ein erheblicher Mehraufwand aus Sicht des Rechenaufwandes, aber vermutlich auch unbedingt nötig. Hier sollte man m.E. nicht sparen.
Das denke ich nicht, das ist ein relativ kleiner Mehraufwand. Wir hatten auch schonmal eine Version, die die Exzentrizität berechnete. Da ist der Unterschied kaum spürbar, da die Werte wie Sonnenabstand sowieso während der Berechnung anfallen.
Blöde Frage: Könnte es die Rechenzeit optimieren, wenn man den Mars einfach als grossen Planetoiden am inneren Ende eines erweiterten Planetoidengrütels simuliert und beispielsweise nur in der Nähe der Opposition als eigenständigen Planeten ?
Ich würde eigentlich auf solche eigenen Varianten lieber verzichten, auch wenn es etwas helfen würde. Der Grund ist, wie Bynaus schonmal sagte, dass man sonst die komplette Software sozusagen wissenschaftlich verifizieren müsste, um den Einsatz in einer wissenschaftlichen Arbeit zu rechtfertigen.
Ich stehe momentan auf dem Punkt, wo ich gerne nur vorhandene, zum Problem passende Integratoren verwenden möchte.
Das hat wenig mit der Differenz zu Bernhard zu tun oder damit, dass ich selbst wohl keinen symplektischen Integrator programmieren könnte.
ich habe gerade gesehen, dass ich auf dem svn-repository keine Schreibrechte mehr habe.
Ja das ist richtig. Ich hatte deine Aussage, dass du eine eigene Variante weiterentwickeln möchtest, dementsprechend interpretiert. Ich wollte auf dem SVN space keinen Versionsstreit starten sondern einfach "meine Variante" weiter entwickeln.
SRMeister hast mit mir scheinbar doch recht große Probleme. Ist natürlich die Frage, wie man unter solchen Voraussetzungen dann weiter machen soll?
Mit Gruß
Genau die Frage hatte ich mir und hier öffentlich, bereits letzte Woche gestellt. Ich hatte dann aber den Eindruck gewonnen, du suchst keine Lösung die eine Zusammenarbeit beinhaltet. Wie ich geschrieben hatte, war ich da sehr verwirrt und wusste/weis bis jetzt eigentlich nicht so richtig, wie es nun weitergehen soll.
Ich habe die Schreibrechte nur deaktiviert, um zu vermeiden, dass du dort meine Arbeit wieder überschreibst.
SRMeister antwortet eh nicht auf meine öffentlichen Fragen also was soll's.
Ich habe auf deine Fragen doch immer geantwortet. Ich war am Wochenende nicht am PC, deswegen erst jetzt meine Rückmeldung.
Ich habe mehrere Vorschläge gemacht, wie man zusammen weiterarbeiten könnte, wie man die programmiertechnischen Probleme lösen könnte. Ich habe versucht, meine Änderungen am Programm zu rechtfertigen und angeboten, sie teilweise rückgängig zu machen, um eine gemeinsame Basis zu schaffen. Darauf hast du aber garnicht reagiert.
Gruß