Computer-Physik
Sommer 2013

Überblick
Die Vorlesung behandelt numerische Methoden zur Lösung physikalischer Probleme. Dabei werden zum einen grundlegende numerische Verfahren eingeführt und auf Fragestellungen der Mechanik, Elektrodynamik und Quantenmechanik angewendet.Übungen
Die Übungen finden im CIP-Pool statt; der reguläre Übungsgruppenbetrieb beginnt in der ersten Semesterwoche. Die Einteilung der Übungsgruppen finden Sie in dieser Übersicht.Übungsblätter
- Übungsblatt 0: Hello world, Eulersche Zahl, Dezimalzahlen, Funktionen, 2D Daten
- Übungsblatt 1: Fibonacci-Zahlen, Gumowski-Mira Attraktor, Zellulärer Automat [demo code]
- Übungsblatt 2: Divide and Conquer, Newton Verfahren, Newton-Fraktale, Mandelbrot- und Julia-Mengen







- Übungsblatt 3: sys-Modul in Python, Cache-Effekte, Bessel-Funktion via numerische Integration
- Übungsblatt 4: Paralleles Programmieren mit MPI, Euler Methoden, Runge-Kutta Verfahren, Ein hart umkämpftes Pendel
- Übungsblatt 5: Einfache Animationen, Lorenz-Attraktor, Monde auf der Überholspur




- Übungsblatt 6: Visualisierung von Vektorfeldern, Heisser Draht, Plattenkondensator, Steife Differentialgleichungen
- Übungsblatt 7:
Als die Funktionen laufen lernten, Allerlei aus dem Potentialtopf, Pendeln in der Quantenwelt,
Zeitaufgelöste Streuung an Potentialbarrieren [demo code] - Übungsblatt 8: Lineare Algebra mit Python, Matrix halb und halb, Der heisse Draht 2.0



- Übungsblatt 9: Geschwindigkeitskontrolle, Eigenwerte im Radar, Anharmonischer Oszillator, Das bewegte Feld [demo code]
- Übungsblatt 10: Würfeln mit Python, Pseudo-Zufallszahlen, Viele Wege führen nach Pi, Was wächst denn da?
- Übungsblatt 11: Integrieren mit Python, Zufallszahlen-Verteilungen, Integration mit gezinkten Würfeln, Dendriten-Wachstum




- Übungsblatt 12: Nobody is perfect, Integration auf Irrwegen, Ising Modell
- Übungsblatt 13: Rennschlange Cython, Perkolation — eine löchrige Angelegenheit
Syllabus / Vorlesungen
- Vorlesung 0001: Motivation/Einführung Computer-Physik, Überblick Computer Hardware + Software
- Vorlesung 0010: Iterative Verfahren, Nullstellensuche, Newton-Verfahren
- Vorlesung 0011: Integrationsmethoden
- Vorlesung 0100: Gewöhnliche Differentialgleichungen: Euler-Methode, Runge-Kutta Verfahren, Verlet Algorithmus
- Vorlesung 0101: Partielle Differentialgleichungen: Finite Differenzen, Anfangswertprobleme, Crank-Nicolson Methode
- Vorlesung 0110: Partielle Differentialgleichungen: Randwertprobleme, Relaxationsmethode, Yee-Vischen Algorithmus
- Vorlesung 0111: Quantenmechanik: Numerov-Algorithmus, Variationsansatz
- Vorlesung 1000: Lineare Gleichungssysteme, Gauss-Elimination
- Vorlesung 1001: Eigenwert-Probleme, Jacobi-Verfahren
- Vorlesung 1010: Zufallszahlen: Korrelationstests, Generatoren
- Vorlesung 1011: Zufallszahlenverteilungen, Monte Carlo-Integration, importance sampling
- Vorlesung 1100: Markov Ketten, Metropolis-Algorithmus
- Vorlesung 1101: Boltzmann-Verteilung, Ising Modell, Monte Carlo Simulation
- Vorlesung 1110: Monte Carlo Simulationen: Thermalisierung, Autokorrelationseffekte, Optimierungsprobleme
Programmiertechniken
Wer sich ein wenig in die Programmiersprache Python einarbeiten möchte, dem sei dieses von Max Gerlach zusammengestellte Python Tutorial empfohlen.Dokumentation zum Einstieg:
Direkt lauffähige, recht vollständige Distribution mit aktuellen Programmversionen (Linux, Windows, OS X):
Klausurtermine
Klausur: Dienstag, 30. Juli 2013 | 13:30 - 16.30 | HS INachklausur: Freitag, 18. Oktober 2013 | 14:00 - 17:00 | HS II
Mailing-Liste
Wir haben für alle TeilnehmerInnen der Vorlesung eine Mailing-Liste eingerichtet, über welche wir weiterführende Informationen zu Vorlesung, Übungen und Übungsbetrieb verschicken werden:Wir bitten alle Studierenden, sich auf dieser Mailing-Liste einzutragen.