![](http://www.tu-bs.de/institute/theophys/img/dot_clear.gif) |
Partielle Differentialgleichungen
Die Schrödingergleichung ist ein Beispiel einer
partiellen Differentialgleichung.
-
Zur Diskretisierung partieller Differentialgleichungen
vergleiche z.B. Kapitel 7.2 von [1].
-
Zum Conjugate Gradient (CG) Verfahren
vergleiche z.B. Kapitel 7.4.2 von [1].
-
Ein C++ Demonstrationsprogramm, das die Zeitentwicklung der
Diffusionsgleichung auf einem Quadratgitter mit einem
impliziten Verfahren unter Verwendung des Conjugate Gradient Verfahrens
löst:
cg-diff.cc
(benötigt X11 und gnuplot).
-
Übungsaufgaben (28. April 2003):
-
Implementieren Sie andere Anfangsbedingungen in dem Programm
cg-diff.cc (z.B. ein Quadrat) !
-
Erweitern Sie das Programm cg-diff.cc
so, daß ab einem Zeitpunkt T die Zeitentwicklung
umgekehrt wird ! Was passiert, wenn Sie zu t=0 rückwärts
entwickeln und was, wenn Sie zu t<0 gehen ?
Hinweis: Zur Zeitumkehr ersetzen Sie t durch -t.
-
Portieren Sie cg-diff.cc in Java
und ersetzen Sie die Darstellung des Zustandes mit Hilfe von
gnuplot
durch eine grau- oder farbkodierte pixelorientierte Darstellung !
Eine Musterlöusung für die ersten beiden
Aufgaben ist in cg-diff-e.cc
implementiert.
-
Übungsaufgabe (5. Mai 2003):
Wir betrachten die eindimensionale Wellengleichung
auf dem Intervall mit periodischen Randbedingungen
und Anfangsbedingungen
Lösen Sie die Zeitentwicklung mit einer impliziten Diskretisierung
und dem CG-Verfahren !
-
Eine Beschreibung des Biconjugate Gradient (BCG) Verfahrens
finden Sie z.B. in Kapitel 2.7 von [2].
Eine Gegenüberstellung der Formeln des CG und BCG Verfahrens
befindet sich auf dieser PDF-Seite.
-
Ein C++ Demonstrationsprogramm, das die Zeitentwicklung der
eindimensionalen Burgers-Gleichung
mit einer impliziten Diskretisierung unter Verwendung des
Biconjugate Gradient Verfahrens löst (eine explizite
Diskretisierung ist zum Vergleich ebenfalls implementiert):
bcg-burgers.cc
(benötigt X11 und gnuplot).
-
Eine komplexe Implementierung des BCG Verfahrens in C++
einschließlich Demonstration:
bcg-complex.cc.
-
Übungsaufgabe (12. Mai 2003):
Implementieren Sie die Zeitentwicklung für die eindimensionale
Schrödingergleichung mit Hilfe der
besprochenen Verfahren und Programme (d.h. implizierte Diskretisierung,
komplexes BCG Verfahren, ...) !
-
Eine Diskussion direkter Lösungsverfahren für die
zeitabhängige Schrödingergleichung
findet man in Kapitel 10.4 von [3].
Eine Implementation in C++
unter Verwendung des Biconjugate Gradient Verfahrens:
bcg-schrodinger.cc
(benötigt X11 und gnuplot).
-
Übungsaufgaben (19. Mai 2003):
-
Simulieren Sie verschiedene Konfigurationen von Schwellen mit
bcg-schrodinger !
-
Streuen Sie zwei Wellenpakete
mit
(kein Potential, d.h. V=0) aneinander !
Lösung der 2. Übungsaufgabe: 1 geänderte
Zeile in
bcg-schrodinger.cc
- siehe Zeilen 277/278 in
bcg-schrodinger2.cc.
Literatur:
-
Skript zur Vorlesung mit Übung
Physik mit dem Computer
im Sommersemester 2002
-
W.H. Press, S.A. Teukolsky, W.T. Vetterling, B.P. Flannery,
Numerical Recipes in C,
Cambridge University Press (1992)
-
N. Giordano,
Computational
Physics, Prentice Hall (1997)
|
|