Hajos Homepage Numerical Physics: Berechnen, nicht simulieren
Numerical Physics
In der physikalischen Forschung spielen seit langem numerische Methoden eine wesentliche
Rolle. Die Programmierumgebung "Numerical Physics" soll helfen, dieses Thema auch
im Schulunterricht mithilfe einer einfachen Programmiersprache zu behandeln, die nicht durch
Eingabe-, Ausgabe- und graphische Befehle unübersichtlich wird. Diese werden in einen gesonderten
Programmvorspann ausgelagert und sind zum Verständnis des eigentlichen Programms nicht erforderlich.
Im Gegensatz zu den üblichen Simulationen ist dadurch nachvollziehbar, wie das Ergebnis über die
bekannten einfachen Grundgleichungen zustande kommt.
Der Programmteil, den die Schülerinnen und Schüler verstehen müssen, enthält im Wesentlichen nur
diese wenigen Gleichungen wie F = ma oder
sn = sn+1 + v Δt.
Damit kann z. B. der Verlauf einer Federschwingung dargestellt werden, als Graph wie auch als
Simulation. Da das Programm Vektorrechnung beherrscht, lassen sich ähnlich einfach auch
Planetenbewegungen, Elektronenbahnen im Magnetfeld (einschließlich der möglichen Spiralbahn)
oder das Rutherford-Experiment darstellen.
Selbst komplexe Themen wie unendlich hoher Potentialtopf oder Energieverteilung in
einem idealen Gas können behandelt werden, jedoch mit entsprechend höherem Programmieraufwand.
Auch in anderen Fächern wie Biologie kann z. B. die Räuber-Beute-Beziehung mit diesem Programm
veranschaulicht werden.
Die genannten Beispiele werden unten kurz vorgestellt. Beispielprogramme und Erläuterungen dazu
können im Abschnitt "Download" unter "Explanations DE.pdf", "Examples DE.zip" oder "AllInOne DE.zip"
runtergeladen werden.
Ein einfaches Programm: Der schiefe Wurf
Einfacher geht es kaum: Lediglich die Gleichungen für geradlinige Bewegung und konstante
Beschleunigung werden benötigt, allerdings in einer Schleife für jeweils einen sehr kurzen
Zeitabschnitt Δt.
Aber bereits hier werden Stärken der Programmier­umgebung sichtbar: Trennung der Physik von
Eingabe, Ausgabe und Graphik, Beherrschung der Vektor­rechnung, Anzeige einer Simulation
statt Graphik, und bei der Simulation die Synchronisierung mit der Realzeit.
Noch ein einfaches Programm: Federschwingung
Benötigt werden die Definition von Geschwindigkeit und Beschleunigung, das Hooksche Gesetz
und die Newtonsche Grundgleichung. Damit wird, ausgehend von den Startwerten, die nächste
Position und Geschwindigkeit der schwingenden Masse berechnet. Dies wird in einer Schleife
wiederholt.
Gedämpfte Schwingung:
Durch Hinzufügen eines Dämpfungsterms können auch gedämpfte Schwingungen veranschaulicht
werden. Auch die Darstellung im Phasenraum kann einfach realisiert werden, indem im Befehl
GRAPH die Zeit durch die zweite Variable (Impuls oder Geschwindigkeit ersetzt wird.
Gekoppelte Schwingungen:
Das gleiche Programm wie oben, aber zweimal. Dazu kommt die Kopplungskraft mit unterschiedlichen
Vorzeichen für die beiden Federn (im Programmtext farbig markiert). Man sieht deutlich, wie die
Energie zwischen den beiden Federn hin- und her wandert.
Gekoppelte Schwingungen als Animation:
Die ist im Wesentlichen das gleiche Programm wie zuvor. Der Unterschied zwischen der Anzeige als
Graph bzw. Simulation besteht in einer einzigen Anweisung im Definitionsteil.
Zusätzlich kann der zeitliche Verlauf mit der wirklichen Zeit synchronisiert werden. Ohne Kopplung
beträgt die Periode einer Masse hier 2.0 s.
Vektorrechnung: Lorentz-Kraft
Die Programmiersprache beherrscht Vektorrechnung. Damit lassen sich z. B. Planetenbahnen
sowie Bahnen geladener Teilchen im Magnetfeld ähnlich einfach wie die Federschwingung mithilfe
der Lorentzkraft berechnen. Hier sieht man die Spiralbahn eines Elektrons im Magnetfeld.
Der Operator für das Kreuzprodukt ist #.
Sonnensystem
Mithilfe der Vektorrechnung kann auch das 3-Körper-Problem behandelt werden. Wenn möglich zeigen
Sie die Bilder mit Rechtsklick der Maus vergrößert an.
Im Programm links werden die gegenseitigen Kräfte von Sonne, Erde und Mond berechnet. (Die
Auswirkung auf die Sonne kann wegen ihrer großen Masse ignoriert werden.) Der Abstand Erde-Mond
wird als Differenz der Vektoren Sonne-Erde und Sonne Mond berechnet.
Im Programm rechts werden die gegenseitigen Kräfte von Erde und Mond berücksichtigt. Man sieht,
wie die Erde um den gemeinsamen Schwerpunkt (weißer Punkt) rotiert. (Setzen Sie die Maus auf
diesen Punkt, damit Sie sehen, dass er stabil bleibt. Vergrößern Sie das Bild, z. B. mit dem Mausrad.)
Quantenphysik:
Die Mathematik der DeBroglie-Wellen ist in der zeitunabhängigen Schroedingergleichung die gleiche
wie für Federschwingungen. Der (unendlich hohe sowie der endliche) Potentialtopf lassen sich mit
der gleichen Methode behandeln.
Allerdings ist das Programm aufwändiger: durch Iteration der Energie
des Teilchens muss ein nicht divergierender Zustand gesucht werden.
Ideales Gas:
Numerical Physics erlaubt auch statistische Untersuchungen. Hier wird die Energieverteilung
der Teilchen im idealen Gas berechnet. Zum Vergleich ist auch die theoretische Kurve gezeigt.
Alle np Teilchen erhalten eine der Temperatur T entsprechende Anfangsenergie,
dann stößt jedes nc‑mal mit jedem. Die die Gleichungen für den elastischen Stoß
liefern die neuen Energien.
Andere Naturwissenschaften z. B. Biologie: Räuber-Beute Verhältnis:
Auch für andere Naturwissenschaften kann diese Programmierumgebung verwendet werden.
So lässt sich z. B. in der Biologie die Räuber-Beute Beziehung anhand der Lotka-Volterra-Gleichungen
behandeln (Populationen in Abhängigkeit von der Zeit oder als Phasendiagramm).