Facharbeit

Transcrição

Facharbeit
Städtisches Luisengymnasium
Kollegiatenjahrgang 1999 / 2001
Facharbeit
aus dem Fach
Physik
Thema:
Simulation der Gravitation am Computer
Verfasser:
Sebastian Grembowietz
Leistungskurs:
Physik
Kursleiter:
W. Mauer
Abgabetermin:
Donnerstag, 1. Februar 2001, 1305 Uhr
Erzielte Note:
...................... in Worten:
...................................................
Erzielte Punkte:
...................... in Worten:
...................................................
(Einfache Wertung)
Abgabe bei der Kollegstufenbetreuerin am .............................
............................................
Unterschrift des Kursleiters
2
Disposition
1.
Einleitung
2.
Simulation der Gravitation am Computer
2.1
Verwendete Formeln
2.2
Computerprogramme Editor und Player
2.2.1
Bedienung des Editors
2.2.1.1 Hauptfenster
2.2.1.2 Popup-Menü
2.2.1.3 Globale Eigenschaften
2.2.1.4 Erstellen eines Szenarios
2.2.2
Bedienung des Players
Anhang A
Aufbau des ‚SZN’ - Dateiformates
Anhang B
Literaturverzeichnis
3
1.
Einleitung
Isaac Newton (1643 - 1727) gilt als der Begründer der modernen Mechanik. Er
konnte bei seinen Forschungen über die Gravitation auf die Arbeiten des Astronomen
Johannes Kepler, des Forschers Galileo Galilei und auf die Thesen seines Rivalen
Robert Hooke zurückgreifen. Er wurde während der zwei Jahre andauernden,
aufreibenden Arbeit an seinem größten Werk1, der ‚Philosophiae naturalis principia
mathematica’ (1687), immer wieder durch den Astronomen Edmund Halley
aufgemuntert, da dieser Newtons Genie sehr schätzte und um die Bedeutsamkeit der
‚Principia’ zu wissen schien. Halley selbst hatte mehrmals mit dem Astronomen
Christopher Wren und dem oben erwähnten Robert Hooke ausgehend von den
Keplerschen Gesetzen erfolglos versucht, die Anziehungskraft der Sonne zu
beweisen, die seiner Auffassung nach indirekt proportional zum Quadrat des
Abstands wirkte.
Newton bewies durch seine ‚Principia’ nicht nur diese Gesetzmäßigkeit, er definierte
auch Begriffe wie Masse und Kraft und entdeckte, dass eine Kraft für jede Änderung
der Geschwindigkeit eines Körpers verantwortlich ist. Er formulierte drei
Grundgesetze der klassischen Mechanik und konnte mit seinem universellen
Gravitationsgesetz nachweisen, dass die Bahnen der Planeten und Monde einerseits
und der Fall eines Apfels andererseits sämtlich durch dieselbe Kraft verursacht
werden. Es ist überliefert, dass Newton seine berühmt gewordene Anekdote vom
Fall des Apfels wie folgt schilderte:
„Weswegen fällt ein Apfel immer senkrecht herunter, warum nicht zur Seite,
und stets nach der Erdmitte? Es muss eine Anziehungskraft in der Materie
geben, welche im Erdinnern konzentriert ist. Wenn die Materie eine andere
Materie so sehr anzieht, muss eine Proportionalität mit ihrer Masse bestehen.
Deswegen zieht der Apfel die Erde genauso wie die Erde den Apfel an. Es
muss deswegen eine Kraft geben, ähnlich der, welche wir Schwerkraft nennen,
und die sich über das ganze Weltall ausbreitet.“2
1
Stephen Hawking nannte es einmal das ‚sicherlich einflußreichste Buch in der Geschichte der
Physik’
2
Thomas Bührke, ‚Newtons Apfel’, S. 28
4
Gegenstand der Facharbeit ist die allgemeine qualitative Simulation der Bewegungen
von Himmelskörpern mit gleicher oder verschiedener Masse am Computer. Weil
diese angesichts der unendlichen Dimensionen des Kosmos ein reelles Abbild
existierender Konstellationen einer Vielzahl von Himmelskörpern nicht darzustellen
vermag, ist sie notwendigerweise auf die Art der Bewegungen beschränkt. Dies
bedingt einige Verzerrungen. Innerhalb einer Sekunde, die allen Berechnungen
zugrundeliegt,
sind die realen Auswirkungen der Gravitation geringfügig, im
Computer werden sie ‚weggerundet’. Die deswegen erforderliche Verstärkung der
Gravitationskraft
um
einen
konstanten
Faktor3
verzerrt
ihrerseits
die
Geschwindigkeiten der Körper. Dennoch lassen sich die Einflüsse mehrerer Massen
aufeinander anschaulich darstellen, wie die Computersimulationen belegen.
2.
Simulation der Gravitation am Computer
Die Bewegungen von Himmelskörpern unter Einfluss der Gravitation werden anhand
zweier Computerprogramme veranschaulicht, sie heissen Editor und Player.
Der Editor hat den Zweck, verschiedene Konstellationen von Himmelskörpern zu
erstellen und zu verändern. Der eigens entwickelte Player stellt die Bewegungen der
Himmelskörper dreidimensional dar.
3
normalerweise 11 Zehnerpotenzen
5
2.1
Erläuterung der verwendeten Formeln
Jeder massebehafteter Körper ist der Gravitation unterworfen. Diese Kraft ist
allerdings sehr gering, so dass sie am Besten im Makroskopischen beobachtet
werden kann. In dieser Facharbeit wird das Verhalten kugelförmiger Körper im
Vakuum simuliert, die allein der Gravitation unterworfen sind. Anhand eines
einfachen Beispiels soll veranschaulicht werden, welche Formeln für die
Bewegungen der Körper verantwortlich sind.
Nachfolgende Abbildung (1) stellt eine Konstellation zweier Himmelskörper dar.
H
r
y
x
z
Himmelskörper 1 Himmelskörper 2
Mittelpunkte
M1 (x1|y1|z1)
Geschwindigkeiten vL1
H
Beschleunigungen ak 1
M2 (x2|y2|z2)
L
v2
H
ak 2
Masse
mk2
mk1
Bild 1
In diesem Beispiel wird nur die auf den zweiten Himmelskörper wirkende Kraft
H
( Fgrav ) berechnet.
6
Zunächst wird die Gravitationskraft ( Fgrav = G
Mechanik4 ( F = m ⋅ a ) gleichgesetzt :
H
m m
mk 2 ⋅ ak 2 = G kH1 2k 2 ⋅ β
|r |
H
ak 2 =
mit G = 6,673 ⋅ 10
−11
G ⋅ mk 1 ⋅ β
( x1 − x2 ) 2 + ( y1 − y2 ) 2 + ( z1 − z 2 ) 2
2
=
m1m2
) dem Grundgesetz der
r2
æ x1 − x2 ö
ç
÷
H
m3
und
r
M
M
y
y
=
=
−
ç
2
1
1
2÷
kg ⋅ s 2
çz −z ÷
è 1 2ø
(5)
G ⋅ mk 1 ⋅ β
;
( x1 − x2 ) + ( y1 − y2 ) 2 + ( z1 − z 2 ) 2
2
H
Sodann wird dem Betrag der Beschleunigung ak 2 des 2. Körpers ein Vektor6
‚zugewiesen’, damit die Beschleunigungen in x-, y- und z-Richtung bestimmt
werden können:
H
H
H
H
H
H
H
G ⋅ mk1 ⋅ β
r H
r
;
a k 2 = λ ⋅ r ∨ ak 2 = λ ⋅ r Þ a k 2 = H ⋅ a k 2 = H ⋅
2
r
r ( x1 − x2 ) + ( y1 − y2 ) 2 + ( z1 − z 2 ) 2
Die daraus resultierende vektorielle Beschleunigung wird schließlich noch zu der
Geschwindigkeit des 2. Körpers addiert:
H H H
v = v0 + a ⋅ t
H H
H H
H H H
mit v0 = v2 , t = 1s und a = ak 2 Þ v = v2 + ak 2 ⋅ 1s;
Ähnliches gilt für die Konstellation mit mehr als 2 Himmelskörpern (Mehrkörperproblem). In diesen Fällen wirken neben der Beschleunigung, die durch den 1.
Himmelskörper verursacht worden ist, die Anziehungskräfte der weiteren Körper.
Die Bewegung des 2. Körpers ist das Ergebnis des Zusammenwirkens der Kräfte
aller vorerwähnten Körper.
H
n
ö
æ r (i )
H H
G ⋅ mki ⋅ β
÷
v = v2 + å çç H
⋅
2
2
2 ÷
i =1 è | r (i ) | ( xi − x2 ) + ( yi − y2 ) + ( z i − z 2 ) ø
4
(siehe Fußnote 7 )
Beide Gesetze wurden von Newton entdeckt
ß ist ein Faktor, der den Sinn hat, die Kräfte zu verstärken, denen die Körper ausgesetzt sind. Ohne
diesen Faktor sind die Kräfte zu minimal, um überhaupt eine Bewegung ausmachen zu können (sie
werden vom Computer ‚weggerundet’).
H
H
6
Die Vektoren ak 2 und r sind kollinear
5
7
Für alle i außer für i = 2
7
In gleicher Weise lassen sich die wechselseitigen Einwirkungen der in Beziehung
zueinander stehenden Himmelskörper hinsichtlich der Beschleunigung und der
Geschwindigkeit berechnen.
Nachdem die Beschleunigungen für alle Konstellationen berechnet wurden, wird die
H
jeweilige Geschwindigkeit v zu der Position des Körpers addiert:
H
H H H
H
H H
H
x = x0 + v ⋅ t mit x 0 = M 2 und t = 1s Þ x = M 2 + v ⋅ 1s;
8
2.2
Computerprogramme Editor und Player
Nach Klärung des mathematischen Hintergrundes wird im Folgenden die Bedienung
der Computerprogramme im Einzelnen behandelt. An Systemvoraussetzungen sind
mindestens erforderlich: Intel Pentium III oder AMD Athlon Prozessor ab 400 MHz,
OpenGL-Unterstützung (als Soft- oder Hardware) und Microsoft Windows 95/98/
ME/NT.
2.2.1 Bedienung des Editors
Beim Ausführen des Editors (editor.exe) erscheint folgendes Fenster:
Bild 2
Dieser Editor wird zur Erstellung und Veränderung von Szenarien verwendet.
Zusätzlich kann eine Preview8 der Simulation der Gravitation berechnet werden, die
im Vergleich zum Player (player.exe) folgender Einschränkung unterliegt:
Die Berechnungen berücksichtigen zwar alle drei Dimensionen, die Darstellung der
Himmelskörper erfolgt jedoch nur zweidimensional ohne korrigierende Maßnahmen,
wobei die z-Komponente ausgeblendet wird. Dadurch wird der Eindruck der Tiefe
nicht vermittelt.
8
preview (engl.) – Vorschau, Vorbesichtigung, Ausblick
9
2.2.1.1
Hauptfenster9
Im Hauptmenü befinden sich das Untermenü ‚Datei’ und die Punkte ‚Optionen’
und ‚?’. Über das Menü ‚Datei’ kann eine neue Datei erstellt werden (‚Neu...’),
wobei alle existierenden Körper gelöscht
werden, weiterhin eine gültige ‚.szn’-Datei
geöffnet werden (‚Öffnen...’), das aktuelle
Szenario
gesichert
‚Speichern
unter...’)
geschlossen
werden
10
Mausklick
(‚Speichern’
und
der
(‚Beenden’).
und
Editor
Ein
Bild 3
auf den Menüeintrag ‚?’ öffnet
nebenstehendes Fenster mit Copyrightinformationen (Bild 3). Der Menüeintrag
‚Optionen’ soll später dargestellt werden (siehe 2.2.1.3), da er ein eigenes Fenster
mit vielen Einstellungen öffnet.
Die schematische Darstellung stellt das Zentrum des Editors dar, durch sie können
Szenarien erstellt und verändert werden, auch können Bewegungen der Körper
vorläufig dargestellt werden (allerdings eingeschränkt).
Das Fenster wird am unteren Rand von der Statusbar (Statusleiste) abgeschlossen.
Diese enthält den Dateinamen des aktuell geöffneten Szenarios und die Anzahl der
Himmelskörper. Im rechten oberen Teil des Editors liegen zwei Buttons11 zur
Verwaltung der Himmelskörper. Nach Aktivierung des Buttons ‚neuen Körper
erstellen’ kann in der schematischen Darstellung durch einen Mausklick ein neuer
Himmelskörper eingefügt werden. Der zweite Button (‚Körper auswählen’)
ermöglicht die Verschiebung eines Körpers per Drag and Drop12 und die
Veränderung
seiner
zusätzlichen
Eigenschaften
wie
Masse
und
Anfangsgeschwindigkeit durch einen Rechtsklick. Diese Option wird unter 2.2.1.2
noch genauer erläutert.
9
siehe Bild 2
Grundsätzlich ist mit Mausklick ein Klick mit der linken Taste gemeint
11
Ein Button, hier genauer gesagt ein Speed-Button, ist ein Knopf, der durch einen Links-Klick
aktiviert (erscheint ‚vertieft’, siehe z.B. Button ‚Rahmen zur Orientierung’ in Bild 2) oder deaktiviert
werden kann. (normale Erscheinung, siehe z.B. Button ‚Körper auswählen’ in Bild 2)
12
Klicken und Ziehen mit der Maus
10
10
Die Buttons / Spinedits13 zur Verwaltung der schematischen Darstellung finden
sich am rechten mittleren Rand des Hauptfensters. Durch sie läßt sich ein Rahmen
zeichnen (Button ‚Rahmen zur Orientierung’), der lediglich der Orientierung dient
und selbst keine Perspektive hervorrufen soll, der Ursprung (Mittelpunkt) dieses
Rahmens kann entweder direkt durch Aktivierung des Buttons ‚Ursprung
verschieben’ und einen anschließenden Mausklick auf die schematische Darstellung
oder indirekt durch Änderungen der Werte der Spinedits ‚X-Offset (in %)’ und ‚YOffset (in %)’ bestimmt werden. Außerdem können die Richtungen (der x- und yAnteile) der aktuellen Geschwindigkeiten der Himmelskörper angezeigt werden
(Button ‚v(t) anzeigen’). Eine letzte Einstellmöglichkeit, durch die die schematische
Darstellung verändert werden kann, ergibt sich durch den Zoom-Faktor. Dieser
verändert durch das Feld ‚Zoom (Promille)’ die Größe des dargestellten
Ausschnittes.
Sämtliche Einstellungen des letzten Absatzes beeinflussen nicht die Berechnungen,
sondern passen allein die Parameter der schematischen Darstellung an.
Ein vorläufige Simulation der Bewegungen der Körper kann durch Aktivieren des
Buttons ‚Preview starten’ vorgenommen werden (Einschränkungen siehe 2.2.1). Für
eine realistische Darstellung sollte der Player verwendet werden (Erläuterung der
Funktionsweise siehe 2.2.2).
Die ‚Infobox’ enthält kurze Hinweise zum Umgang mit dem Editor und
gegebenenfalls Daten eines ausgewählten Himmelskörpers wie Radius, Masse,
Geschwindigkeit und Position. Dieses Feld dient lediglich der Information.
13
Ein Spinedit ist ein Eingabefeld für Zahlen, das zusätzlich noch mit zwei kleinen Buttons
ausgestattet ist, die einen bestimmten Wert vom aktuellen Wert des Eingabefelds subtrahieren oder
dazu addieren (siehe Spinedit ‚Zoom (Promille)’ in Bild 2)
11
2.2.1.2 Popup-Menü14
Wird ein Rechts-Klick auf der schematischen Darstellung ‚über’ einem ausgewählten
Himmelskörper ausgeführt, erscheint das Popup-Menü (siehe Bild 4).
Bild 4
Das Popup-Menü kann verschiedene Formen annehmen, da es sich auch aktivieren
läßt, wenn kein Himmelskörper ausgewählt ist. In diesem Fall sind nur die Einträge
‚Szenario neu zeichnen’, ‚Himmelskörper einfügen...’ und eventuell ‚Himmelskörper
einfügen’ verfügbar.
Durch den Eintrag ‚Szenario neu zeichnen’ wird die schematische Darstellung
aktualisiert. Die nächsten fünf Einträge, ‚Himmelskörper einfügen’, ‚... kopieren’, ‚...
ausschneiden’ und ‚... löschen’ betreffen das Duplizieren oder Entfernen von
Himmelskörpern beziehungsweise das Einfügen voreingestellter Himmelskörper
(z.B. Sonne, Erde, Erdmond - siehe Bild 4).
14
Ein Popup-Menü ist ein Menü, das allgemein durch einen Rechts-Klick aktiviert wird und
spezifische Eigenschaften anzeigt.
12
Durch einen Mausklick auf ‚Eigenschaften’ erscheint ein Fenster, in dem alle Daten
eines Himmelskörper verändert werden können (siehe Bild 5). Die Lage des
Himmelskörpers15, die Anfangsgeschwindigkeiten und der Radius sind in relativen
Werten angegeben, zu diesen
Werten
kommt
stets
der
Umrechnungsfaktor µ hinzu.
Die
Anfangsgeschwindig-
keiten werden in der Einheit
‚Meter pro Zyklus’ angegeben.
Da
ein
Berechnungszyklus
stellvertretend für eine Sekunde
stehen soll (siehe 2.1), ergibt
sich nach dem Multiplizieren
mit dem Umrechnungsfaktor µ
Bild 5
die Einheit ‚Meter pro Sekunde’16.
Jeder Himmelskörper besitzt eine Farbe, die durch einen Mausklick auf das in Bild 5
ersichtliche Farbfeld verändert werden kann. Der den Grad der Transparenz des
Körpers zwischen 0 und 255 anzeigende Alpha-Wert ist für spätere Versionen des
Players bestimmt und wird für die vorliegende Untersuchung nicht herangezogen.
Über den ‚Reset’-Button können eventuell geänderte Werte eines Himmelskörpers
wieder zurückgesetzt werden, der ‚OK’- Button übernimmt die in den Feldern
stehenden Werte. ‚Abbrechen’ verwirft alle eventuell getätigten Änderungen. Über
das Feld ‚Körper Nummer’ ist der direkte Zugang zu den Eigenschaften jeweils eines
anderen Himmelskörpers möglich.
15
Der Ursprung des Koordinatensystems befindet sich in der linken oberen Ecke des ‚Rahmen zur
Orientierung’
16
extrem verzerrt, siehe Einleitung
13
2.2.1.3
Globale Eigenschaften
Der Eintrag ‚Optionen’ im Hauptmenü öffnet ein Fenster, in dem die globalen
Eigenschaften des Editors festgelegt werden können (Bild 6).
Es lassen sich DefaultWerte17 für die Anfangsgeschwindigkeiten,
die
Farbe, die Masse, den
Radius und den z-Wert
der
Position
eines
Körpers vorgeben. Der
Faktor
µ
dient
Umrechnung
relative
der
realer in
Werte
(und
umgekehrt), der Faktor ß
Bild 6
gibt den Grad der Verstärkung der Gravitationskraft an.
Die Felder ‚min. Radius’ und ‚max. Radius’ begrenzen die verwendeten Radien aller
Körper. Sie fliessen also auch in die Berechnungen ein. Dadurch entsteht zwar eine
Verzerrung, da z.B. Himmelskörper mit dem relativen Radius der Sonne von 696 und
demjenigen der Erde von 0,0006368 nicht gleichzeitig unter Verwendung des
gleichen Maßstabs abgebildet werden können. Diese Einschränkungen wurden zur
Veranschaulichung der Bewegungen der Himmelskörper getroffen, da eine
vernünftige unverzerrte Darstellung unseres Sonnensystems nicht darstellbar ist, so
wie man auf einer Landkarte eine Strasse auch nicht mit ihrer tatsächlichen Breite
eintragen kann.
Für den Fall einer Kollision zweier Körper sind zwei Möglichkeiten gegeben:
‚Kollision nicht berücksichtigen’ und ‚Überschneiden wird vernachlässigt’. Bei der
Aktivierung des ersten Feldes richten sich die Bewegungen der Himmelskörper nur
nach dem Abstand ihrer Mittelpunkte, eine Überschneidung zweier Körper hat
keinerlei Einfluss auf die Berechnungen. Bei Aktivierung des zweiten Feldes rechnet
das Programm bei Überschneidung zweier Himmelskörper nur noch mit einer
17
Default-Werte sind im Computer-Jargon vorgegebene Werte
14
maximal möglichen Gravitationskraft, die bei Berührung der beiden Körper
entstehen würde.
2.2.1.4
Erstellen eines Szenarios
Nach der obigen Beschreibung aller grundlegenden Funktionen wird im Folgenden
Schritt für Schritt unter Anleitung ein Beispielszenario mit 2 Himmelskörpern
erstellt.
Bild 7
Zuerst erstellen Sie einen Himmelskörper durch Aktivieren des Buttons ‚neuen
Körper erstellen’ und anschliessendes Drücken und Halten der linken Maustaste auf
der schematischen Darstellung. Dabei wird ein blauer Ring dargestellt werden, der
durch Bewegung der Maus frei positioniert werden kann. Setzen Sie diesen Ring auf
die Koordinaten (0,2 | 0,2)
(18)
und kontrollieren Sie seine aktuelle Position mit der
‚Infobox’. Das Hauptfenster sollte so aussehen wie in Bild 7. Lassen Sie nun die
linke Maustaste los. Der blaue Kreis füllt sich, damit ist der erste Himmelskörper
erstellt.
Positionieren Sie einen weiteren Himmelskörper auf den Koordinaten (0,8 | 0,8).
Aktivieren Sie sodann den Button ‚Körper auswählen’, der die Angleichung einiger
Daten der Körper ermöglicht. Bewegen Sie den Mauszeiger über den ersten
18
Es sind nur die x|y –Werte angegeben, da man durch die schematische Darstellung nur diese beiden
direkt beeinflussen kann.
15
Himmelskörper. Sollten dabei die Koordinaten der Körper (siehe ‚Infobox’) von den
Vorgaben abweichen, lassen sich die Körper entweder per Drag and Drop auf der
schematischen Darstellung verschieben. Oder die Koordinaten der Körper werden im
Fenster ‚Eigenschaften’ neu eingegeben.
Aktivieren Sie nun mit der rechten Maustaste das Popup-Menü, wählen Sie den
Eintrag ‚Eigenschaften’ und geben Sie im neu geöffneten Fenster ‚Eigenschaften’
(siehe Bild 5) den Himmelskörpern die folgenden Werte ein:
1. Himmelskörper
2. Himmelskörper
Lage des Himmelskörpers
(0,2 | 0,2 | 0,05)
(0,8 | 0,8 | -0,05)
Anfangsgeschwindigkeiten
(0 | 0,005 | 0)
(0 | -0,005 | 0)
Masse
1E16
Radius
0,04
(19)
1E16
0,04
Bestätigen Sie abschließend ihre Änderungen mit ‚OK’ und aktivieren Sie nun im
Hauptfenster den Button ‚Preview starten’. Daraufhin führen die zwei gleich
schweren Himmelskörper eine hantelförmige Bewegung aus (Bild 8).
Bild 8
19
1E16 bedeutet 1*1016 , Fließkommazahlen müssen in dieser Notation eingegeben werden.
16
2.2.2 Bedienung des Players
Der Player (player.exe) wird aus der MS-DOS-Eingabeaufforderung heraus gestartet.
Die Ausgaben des Programms beim Aufruf ohne Parameter und mit dem Parameter
„--help“ gibt folgendes Bild wieder:
Bild 9
Durch den Parameter „--ignore“ lassen sich die im Szenario gespeicherten
Konstanten ignorieren, der Player verwendet nun die Default-Werte von µ und G20.
Es können aber auch beliebige Fließkomma-Werte durch „--my=“ und „--G=“
eingegeben werden.
20
Hier ist G ein durch β „korrigierter“ Wert der Gravitationskonstante.
17
Durch Angabe einer SZN-Datei wird der Player gestartet (z.B. player Szenario1.szn):
Bild 10
Die Bedienung erfolgt allein über die Tastatur, die wie folgt belegt ist:
Taste (Alternative)
21
Auswirkung
Cursortaste Å
Bewegung21 nach links
Cursortaste Æ
Bewegung nach rechts
Cursortaste Ç
Bewegung nach vorne
Cursortaste È
Bewegung nach hinten
Bildtaste Ç
Bewegung nach oben
Bildtaste È
Bewegung nach unten
Leertaste (‚P’)
Simulation startet / stoppt
‚S’
Shading-Model22 ändern
‚D’
Draw-Style23 ändern
‚R’
Ursprüngliche Position des Betrachters
Escape (‚Q’)
Player beenden
Der Player stellt ein Szenario aus Sicht eines virtuellen Betrachters dar, auf den sich diese
Bewegungen beziehen.
22
Das Shading-Model ist OpenGL-spezifisch, zwischen Smooth- und Flat-Shading kann gewechselt
werden. Es ist verantwortlich für die Lichtreflexion auf den Körpern / Kugeln.
23
Der Draw-Style ist OpenGL-spezifisch, durch ihn kann zwischen einer Darstellung der Körper
bestehend aus Punkten, Linien und Flächen gewechselt werden.
18
Anhang A
Aufbau des ‚SZN’ - Dateiformates
Das ‚SZN’ - Dateiformat24 wird in den folgenden Zeilen erläutert.
Der Header25 besteht nur aus einem Tag26:
Tag
pHYX
Inhalt (Größe in Byte, Typ)
Bedeutung
Versionsnummer (4, integer)
Version des Dateiformats
G * ß (8, double)
korr.
µ (8, double)
Konstante zur Umrechnung28
Gravitationskonstante27
Darauf folgen die einzelnen Himmelskörper:
Tag
nPLN
Inhalt (Größe in Byte, Typ)
Größe (4, integer)
Bedeutung
Größe in Byte
mASS Masse (8, double)
Masse in kg
cOOR x, y, z – Werte (je 8, double)
Position (relativ)
vELO v.x, v.y, v.z – Werte (je 8, double) Geschwindigkeit (relativ)
rADO Radius (8, double)
Radius (relativ)
cOLR Farbwert (4, tcolor)
Farbinformationen (r, g, b)
Alphawert (4, integer)
nAME Länge des Strings (4, integer)
Namens-String (x, char)
24
Alphawert29
Größe des Namens in Byte
Name mit abschließender 0
Das Suffix ‚.szn’ steht für ‚Szenario’ (allgemein werden Dateiformate nach ihren Endungen
benannt)
25
Der Header ist der Anfang einer Datei, in ihm werden allgemein grundlegende Informationen
gespeichert.
26
Ein Tag ist ein 4 Byte großer String ohne abschließende Null (wie bei C++), der nur auf die hinter
ihm gelegenen Informationen verweist.
27
Hier wird der Wert G*ß gespeichert, die ‚korrigierte Gravitationskonstante’, da es beim Player
programmiertechnische Schwierigkeiten gab, die auf diese Weise gelöst werden konnten.
28
µ wird zur Umrechnung relativer in reale Werte verwendet, die zur Berechnung der
Gravitationskraft benötigt werden.
29
Der Alphawert darf Werte zwischen 0 und 255 annehmen, wird aber in dieser Version der
Facharbeit noch nicht unterstützt
19
Anhang B
Verwendet Literatur und Software
Literatur:
• Barth/Mühlbauer/Nikol/Wörle, „Mathematische Formeln und Definitionen“,
J.Lindauer-Verlag, 7. Auflage, 1998
• Doberenz/Kowalski, „Borland Delphi 3 für Profis“, Hanser, München, 1997
• Hammer/Hammer, „Physikalische Formeln und Tabellen“,
J.Lindauer-
Verlag, 6. Auflage, 1998
• Bührke, „Newtons Apfel – Sternstunden der Physik“, Verlag C.H. Beck, 3.
Auflage, 1998
Software:
30
•
Borland Delphi v3.0 (30)
•
Microsoft Word 2000 (Build 9.0.2812) (31)
•
Sybase Watcom C++ Compiler v11.0
zur Erstellung des Editors
zur Erstellung der Dokumentation
32
zur Erstellung des Players
31
(32)
20
Ich erkläre hiermit, dass ich meine Facharbeit ohne fremde Hilfe angefertigt und nur
die im Literaturverzeichnis angeführten Quellen und Hilfsmittel benützt habe.
München, den 1. Februar 2001
...............................................
Unterschrift des Schülers