Simulation unseres Sonnensystems: Unterschied zwischen den Versionen

Aus Physik
Zur Navigation springen Zur Suche springen
Zeile 67: Zeile 67:
 
<table>
 
<table>
 
<tr valign=top>
 
<tr valign=top>
<td>In nebenstehender Abbildung ist das Ergebnis der Simulation in 2D zu sehen. Die Sonne hat den Startpunkt (x=0,y=0,z=0). Jedoch behält sie diesen über längere Zeit gesehen nicht exakt bei, da sie auch von den anderen Planeten, wenn auch aufgrund der weitgrößeren Masse nicht gravierend, angezogen wird. </td>
+
<td>In nebenstehender Abbildung ist das Ergebnis der Simulation in 2D zu sehen. Die Sonne hat den Startpunkt (x=0,y=0,z=0). Jedoch behält sie diesen über längere Zeit gesehen nicht exakt bei, da sie auch von den anderen Planeten, wenn auch aufgrund der weit größeren Masse nicht gravierend, angezogen wird. </td>
 
<td>[[Image:interface.jpg|thumb|Ergebnis der Simulation unseres Sonnensystems]]</td>
 
<td>[[Image:interface.jpg|thumb|Ergebnis der Simulation unseres Sonnensystems]]</td>
 
</tr>
 
</tr>
Zeile 73: Zeile 73:
 
<br>
 
<br>
 
== Kontakt ==
 
== Kontakt ==
Für Fragen stehe Ich gerne zur Verfügung ([mailto:knami@sbox.tugraz.at knami])
+
Für Fragen oder Anregungen stehe ich gerne zur Verfügung ([mailto:knami@sbox.tugraz.at knami])

Version vom 17. März 2005, 18:14 Uhr

Projektdefinition

Projektidee

Die Idee, die hinter diesem Projekt steckt, ist eine Simulation unseres Sonnensystems. Im Vordergrund dieser Simulation steht die programmtechnische Verwirklichung der physikalischen Zusammenhänge und nicht die grafische Darstellung.

Ziele

  • Wirklichkeitsgetreue Simulation unseres Sonnensystems
  • Leichte Adaptierbarkeit auf ein beliebiges Sonnensystem


Programmtechnische Anforderungen

  • Kernfunktionalität ist die Modulation der physikalischen Beziehungen
  • Lösung des Differenzialgleichungssystem der Umlaufbahnen der Planeten
  • Grafische Darstellung wahlweise in 2D oder 3D
Solarsystem.jpg


Projektentwurf

Physikalische Grundlagen

Damit die Planetenumlaufbahnen berechnet werden können, muss folgendes Differenzialgleichungssysem gelöst werden

Anfangsbedingungen:

  • Startposition aller Planeten (r1, r2, ... rn)
  • Startgeschwindigkeiten aller Planeten (v1, v2, ... vn)

Differenzialgleichungen:

r1 = v1
r2 = v2
...
rn = vn
v1 = a1
v2 = a2
...
vn = an

Die Teilbeschleunigungen, die ein Planet durch die Gravitationsfelder aller anderen Planeten erfährt, werden mit Hilfe des NEWTONschen Gravitationsgesetz, das die Anziehungskraft zweier Massepunkte bzw. zweier homogenen Kugeln, wie es Planeten in diesem Modell näherungsweise sind, berechnet:

F=gamma ... anderseits F=ma ==> a=... mit gamma =6.67

Um zur Gesamtbeschleunigung zu gelangen werden alle Teilbeschleunigungen vektoriell addiert: ages=a1+a2+...+an

Sequenzdiagramme nach UML

Das Sequenzdiagramm zeigt schematisch den Ablauf des Systems. Grundsätzlich ist das Sequenzdiagramm der objektorientierten Programmierung vorbehalten, doch auch in der strukturierten Programmierung kann man dadurch ausgezeichnete Einblicke in das System erlangen. Das Sequenzdiagramm beschreibt in der Horizontalen die Funktionen, die aufgerufen werden, die Vertikale repräsentiert die Zeit.

Sequenzdiagramm

Projektrealisierung

Die Lösung des Differenzialgleichungssystem wird mithilfe des Solvers ode23 durchgeführt, da dieser geringere Toleranzwerte besitzt als ode45.
Die Zeit, die in der Simulation zwischen zwei dargestellten Frames vergeht beträgt 10^6 Sekunden (rund 11,5 Tage). Außerdem ist es möglich das System auf eine beliebige Anzahl von Planeten zu erweitern oder zu reduzieren in dem man die Konfigurationsdatei überarbeitet.
Die Darstellelung kann entweder in drei oder in zwei Dimensionen erfolgen.

Ergebnisse

In nebenstehender Abbildung ist das Ergebnis der Simulation in 2D zu sehen. Die Sonne hat den Startpunkt (x=0,y=0,z=0). Jedoch behält sie diesen über längere Zeit gesehen nicht exakt bei, da sie auch von den anderen Planeten, wenn auch aufgrund der weit größeren Masse nicht gravierend, angezogen wird.
Ergebnis der Simulation unseres Sonnensystems


Kontakt

Für Fragen oder Anregungen stehe ich gerne zur Verfügung (knami)