Computational Physics

Robert Roth
Sommer 2025
Am 30. Juni beginnen die abschließenden Projektarbeiten, die die Grundlage für die Prüfungsleistung bilden. Es gibt fünf verschiedene Themen aus verschiedenen Bereichen der Physik mit verschiedenen Schwerpunkten und Schwierigkeiten zur Auswahl. Die folgenden Notebooks enthalten eine kurze Beschreibung der Themen mit einigen Basisfragen und weiterführenden Anregungen.

Titel Notebook Experte/in
X01 Klassiches Vielteilchenproblem
Bei diesem Projekt geht es um die numerische Beschreibung klassischer Vielteilchenprobleme und ihrer Dynamik. Als konkretes Beispiel wird die Dynamik des Sonnensystems unter dem Einfluss der Gravitationswechselwirkung aller Körper betrachtet. Es handelt sich um ein typisches Anfangswertproblem für ein gekoppeltes System von Differentialgleichungen.
X02 Quantenmechanische Zeitentwicklung
In diesem Projekt soll die exakte quantenmechanische Zeitentwicklung eines eines Wellenpakets in ein bzw. zwei Dimensionen in verschiedenen Potentialen untersucht werden. Dabei wird eine besonders eleganter und effizienter Algorithmus, die Split-Operator Fast-Fourier-Transform Methode verwendet, um den Zeitentwicklungsoperator auf einem Gitter anzuwenden.
X03 Diffusions-Quanten-Monte-Carlo
Es gibt eine Reihe von Verfahren zur numerischen Lösung der stationären Schrödingergleichung - eines der interessantesten und leistungsfähigsten ist der sog. Diffusions-Monte-Carlo-Algorithmus. In diesem Projekt soll der Algorithmus entwickelt, implementiert und angewendet werden. Zu den möglichen Anwendungen gehören sogar recht komplexe Probleme, wie z.B. das H3+-Ion.
X04 Ameisenalgorithmus
Bei diesem Projekt geht es um ein klassisches Problem der diskreten Optimierung, das sog. Travelling-Salesman-Problem oder die Suche nach der kürzesten Verbindung einer gegebenen Menge von (geographischen) Punkten. Das besondere Verfahren, das hierfür verwendet wird, orientiert sich am Verhalten einer Ameisenkolonie bei der Futtersuche und bildet einige der wesentlichen biologischen Elemente im Algorithmus nach.
X05 Neuronale Netzwerke
Mit diesem Projekt werfen Sie einen Blick in die Welt des maschinellen Lernens und der künstlichen neuronalen Netzwerke im Zusammenhang mit physikalischen Problemstellungen. Es geht um die Entwicklung eines fully-connected feed-forward Netzwerkes für die Vorhersage des Ergebnisses einer quantenmechanischen Vielteilchenrechnung. Bei diesem forschungsnahen Beispiel lassen sich alle Elemente und auch Schwierigkeiten der neuronalen Netzwerke erkunden.

 

Hier noch einige Hinweise:

  • Aus den fünf Themen können Sie sich eines aussuchen. Die Themen haben unterschiedliche Gewichtungen was die Programmierung und den physikalischen Hintergrund angeht. Wählen Sie sich ein Thema aus, das ihnen machbar erscheint - aber unterschätzen Sie sich nicht.

  • Sie können die Projekte entweder allein oder in Zweiergruppen bearbeiten, wobei dann nur ein Notebook abgegeben werden muss. Natürlich können und sollten Sie auch mit anderen Gruppen diskutieren (und wetteifern), die das gleiche Projekt bearbeiten.

  • Die Projekte können in den angestammten Übungsgruppen mit Betreuung durch die Übungsgruppenleiter bearbeitet werden. Natürlich sollten Sie auch außerhalb der Übungszeiten im Pool oder Zuhause an den Projekten arbeiten.

  • Sollte Ihr/e Übungsgruppenleiter/in Ihnen bei einem speziellen Problem nicht weiterhelfen können, dann wenden Sie sich an einen der Experten für Ihr Projekt (siehe oben), d.h. gehen Sie einmalig einfach in seine Übungsgruppe. Die studentischen Emailadressen der Experten sind oben angegeben.

  • Die angegeben "Basisfragen" sollen nur als Minimalziel dienen, d.h. ihre richtige Bearbeitung ist notwendig für das Testat. Sie sollten kreativ werden und zusätzliche Fragen untersuchen bzw. eigene Schwerpunkte entwickeln.

  • Das Endprodukt der Projektarbeit sollte ein ausführlich dokumentiertes Mathematica-Notebook sein. Neben dem eigentlichen Programm, das in der Regel aus wenigen Modulen besteht, sollte eine ausführliche Dokumentation des Programmcodes und eine detaillierte Diskussion der Algorithmen und physikalischen Anwendungen enthalten sein. Diese Punkte sind der häufigste Grund für nicht gegebene Testate.

  • Das Notebook sollte so gestaltet sein, dass es von "jedem" bedient und verstanden werden kann - entsprechend ausführlich muss die Dokumentation sein. Idealerweise sollte sich das Notebook von oben nach unten ausführen lassen.

  • Die ausgearbeiteten Projekt-Notebooks müssen bis zum 6. August 2025 (23:59 Uhr) per Email "abgegeben" werden (genaueres hierzu später).

  • Nach Abgabe werden die Übungsgruppenbetreuer oder ich mit Ihnen über Ihr Notebook diskutieren, d.h. Sie stellen uns Ihre Arbeit in einem maximal 10-minütigen "Pitch" vor. Die Testate werden zeitlich gestaffelt vom 11. bis 15 August 2025 stattfinden. Dazu gibt es später eine individuelle Terminbuchung.

An dieser Stelle werden die in den Vorlesungen verwendeten Mathematica-Notebooks zur Vor- und Nachbereitung als pdf-File () und als Mathematica-nb-File () bereitgestellt.

Sektion Titel Notebook
L01 Crash-Kurs I: Grundlagen
Zehn Überlebensregeln - Variablen und Zuweisungen - Funktionen - Listen und Ersetzungsregeln
  
L02 Crash-Kurs II: Algebra
Exakte vs. approximative Arithmetik - Symbolische Manipulation - Gleichungen und Gleichungssysteme - Lineare Algebra
  
L03 Crash-Kurs III: Analysis
Differentiation und Taylorentwicklung - Integration - Differentialgleichungen - Verschiedenes
  
L04 Crash-Kurs IV: Graphik
Funktionsplots - Listenplots - Graphikprogrammierung - Graphische Manipulatoren
  
L05 Crash-Kurs V: Programmierung
Programmierung - Daten-I/O - Datenmodellierung und Analyse - Unsicherheiten und Fehlerrechnung
  
L06 ODEs & Anfangswertprobleme
Erzwungene Schwingung mit Reibung - Lorenz-Attraktor - Algorithmen und Genauigkeitsfragen
  
L07 ODEs & Randwertprobleme
Randwertproblem und Shooting-Methode - Flugbahn eines Golfballes - Eindimensionale Schrödingergleichung
  
L08 PDEs & Diskretisierung
Differenzenquotienten - zeitabhängige Probleme - Wärmeleitung, FTCS-Methode und Stabilität - Wellenausbreitung in 2D
  
L09 PDEs & Randwertprobleme
Poissongleichung auf dem Gitter - Relaxationsmethoden - Eigenmoden einer 2D Membran
  
Folgende Übungsgruppen werden angeboten. Alle Übungen finden im PC-Pool S206|25 bzw. S201|2 statt.

Termin Raum Betreuer/in Bemerkung
A Mo. 11:40 - 13:20 S206|25 Maximilian Weigmann
B Di. 9:50 - 11:30 S201|2 Luis Hoff
D Mi. 13:30 - 15:10 S206|25 Pierre Knötzele
E Di. 9:50 - 11:30 S206|25 Cedric Wenz
F Di. 11:40 - 13:20 S206|25 Philipp Hack

Sie können in den Übungen gerne mit dem eigenen Laptop arbeiten, sofern Sie sich eine Mathematica-Lizenz über den Fachbereich organisiert und Mathermatica installiert haben.

Alternativ können Sie die Rechner im PC-Pool verwenden. Dafür ist aber ein Account im PC-Pool erforderlich. Bitte kümmern Sie sich frühzeitig (d.h. vor Beginn der Vorlesungszeit) darum.

Hier finden sie die Aufgabenblätter zu den Übungen in Form von Mathematica- Notebooks. Bitte speichern sie das entsprechende File in ihrem Benutzerverzeichnis und bearbeiten sie es. Nach den jeweiligen Übungsterminen werden die vervollständigten Notebooks an dieser Stelle veröffentlicht.

Datum Sektion Titel Notebook Lösung
22.04. P01 Mathematica Warm-Up
Frontend und Dokumentation - Erste Schritte
28.04. P02 Crash-Kurs: Grundlagen
Variablen und Funktionen - Listen - Rekursive Funktionen
05.05. P03 Crash-Kurs: Algebra 1
Ersetzungsregeln - Symbolische Manipulation - Gleichungen
12.05. P04 Crash-Kurs: Algebra 2
Gleichungen - Lineare Algebra - Normalmoden einer linearen Kette
19.05. P05 Crash-Kurs: Analysis
Ableitungen und Integrale - Senkrechter Wurf mit Reibung - Gauß-Gymnastik
26.05. P06 Crash-Kurs: Graphik
Allgemeine Plots - Dipol- und Quadrupolfelder - Plots der Kugelflächenfunktionen
02.06. P07 Crash-Kurs: Programmierung
Simulierte Versuchsauswertung - Theorie der Zufallsmatrizen
09.06. P08 Lotka-Volterra-Modell
ODEs & Anfangswertprobleme - Jäger-Beute-Populationsdynamik
16.06. P09 Shooting-Methode
Eindimensionale Schrödingergleichung - Morse Oszillator
23.06. P10 Schrödingergleichung auf dem Gitter
Diskretisierung der Schrödingergleichung - Matrix-Eigenwertproblem - Potentialtopf und Bindungszustände
30.06. P11 Eigenschwingungen einer 2D Membran
Diskretisierung - Randbedingungen - Matrix-Eigenwertproblem

Speichern sie das gewünschte Notebook in ihrem Home-Verzeichnis bzw. einem geeigenten Unterverzeichnis und öffnen sie es anschließend im Mathematica-Frontend.

Der Fachbereich Physik finanziert (u.a., aus Mitteln für die Qualitätssicherung in der Lehre) ein Mathematica-Lizenzpaket, das sog. Home-Use Lizenzen für alle Studierende des Fachbereichs beinhaltet. Sie können damit auf einfache Weise eine offizielle Mathematica Lizenz für Ihren eigenen Laptop oder PC (Windows, Linux, oder MacOS) erhalten. Weitere Informationen finden Sie unter:

https://www.physik.tu-darmstadt.de/der_fachbereich/service_physik/software_physik

Es wird sehr empfohlen, von diesem Angebot Gebrauch zu machen!

Einen exzellenten Einstieg in Mathematica bieten die folgenden kostenlosen Online-Bücher:
  • An Elementary Introduction into the Wolfram Language
    Online Book
  • The Wolfram Language: A Fast Introduction for Programmers
    Online Book

Hier einige Bücher zum Einsatz von Mathematica in der Physik:

  • R. L. Zimmerman, F.I. Olness - Mathematica for Physics
    Addison-Wesley (2002) - ISBN 0 805 38700 5
  • G. Baumann - Mathematica in Theoretical Physics
    Springer (1996) - ISBN 0 387 94424
  • J. M. Feagin - Quantum Methods with Mathematica
    Springer (2002) - ISBN 0 387 95365 5

Und ein paar Bücher zur Computational Physics und zu numerischen Methoden allgemein:

  • T. Pang - An Introduction to Computational Physics
    Cambridge Univ. Press (2002) - ISBN 0 521 48592 4
  • A. L. Garcia - Numerical Methods for Physics
    Prentice Hall (2000) - ISBN 0 13 906744 2
  • W. H. Press et al. - Numerical Recipes: The Art of Scientific Computing
    Cambridge Univ. Press (2007) - ISBN 0 521 88068 8