Skip to main content

2025 | Buch

Numerische Physik mit Python

Mechanik, Elektrodynamik, Optik, Statistische Physik und Quantenmechanik in Jupyter-Notebooks

verfasst von: Harald Wiedemann, Gert-Ludwig Ingold

Verlag: Springer Berlin Heidelberg

insite
SUCHEN

Über dieses Buch

Dieses Lehrbuch bietet eine Einführung in die numerische Physik anhand von physikalischen Fragestellungen aus den Grundgebieten der Theoretischen Physik im Bachelorstudium und lädt ein, in Python mit den vorkommenden Problemparametern zu experimentieren.

Besonderheiten:

Der Streifzug durch die computergestützte Physik wiederholt jeweils den theoretischen Hintergrund, bevor das Programmieren im Vordergrund steht und schließt mit Übungen ab. Studierende können so Gelerntes im Grundstudium vertiefen. Für Lehrende ist dieses Buch eine vielfältige Quelle für Ergänzungen Ihrer Vorlesungen. Alle besprochenen Programme stehen zum Download bereit.

Der Inhalt

1. Erste Schritte mit Python und Jupyter-Notebooks - 2. Mechanik von Punktmassen - 3. Elektrodynamik und Optik - 4. Statistische Physik - 5. Quantenmechanik - 6. Praktische Aspekte von Python

Die Zielgruppe:

Physikstudierende sollten dieses Buch als Begleiter im Bachelorstudium nutzen. Lehrende können die Möglichkeiten der Simulation physikalischer Systeme zeigen. Ebenso profitieren Studierende der Ingenieurwissenschaften, der Informatik und einfach alle mit Interesse an computergestützter Physik von den vielfältigen Beispielen - egal ob im Bachelor, Master oder darüber hinaus.

Vorkenntnisse:

Grundkenntnisse in der Programmierung in Python werden vorausgesetzt. Ebenso sollte die thematisierte Physik aus der entsprechenden Vorlesung oder einem Lehrbuch prinzipiell bekannt sein.

Inhaltsverzeichnis

Frontmatter
Kapitel 1. Erste Schritte mit Python und Jupyter-Notebooks
Zusammenfassung
Im einleitenden Kapitel wird zunächst diskutiert, warum sich Python als Sprache für das numerische Arbeiten in der Physik eignet, und es wird der Vergleich mit klassischen Sprachen in diesem Bereich wie C und Fortran angestellt. Für Python-Anfänger werden einige Hinweise auf Lernmaterialien zu Python gegeben, da im Kapitel 6 dieses Buch nur ausgewählte Aspekte dieser Programmiersprache besprochen werden. Da der Code zu diesem Buch in Form von Jupyter-Notebooks zur Verfügung gestellt wird, werden im zweiten Teil dieses Kapitels die Grundlagen der Benutzung von Jupyter-Notebooks besprochen. Insbesondere wird darauf eingegangen, wie Notebooks in JupyterLab verwendet werden können. Während in diesem Kapitel die Benutzung der verschiedenen Werkzeuge im Vordergrund steht, werden Installationsfragen im Kapitel 6 behandelt.
Harald Wiedemann, Gert-Ludwig Ingold
Kapitel 2. Mechanik von Punktmassen
Zusammenfassung
In diesem Kapitel wird die Dynamik von Punktmassen anhand zahlreicher Beispiele unter verschiedenen numerischen Blickwinkeln untersucht. Eine zentrale Rolle spielt die Lösung von gewöhnlichen Differentialgleichungen. Dabei wird schrittweise der Weg von der grundlegenden Euler-Methode über die modifizierte Euler-Methode hin zu fortgeschritteneren Methoden, die von der SciPy-Bibliothek zur Verfügung gestellt werden, diskutiert. Eine Reihe von schwingenden Systemen gibt Einblicke in numerische Aspekte wie die Verwendung der Energieerhaltung zur Kontrolle der Lösung oder das Problem steifer Differentialgleichungen bei einem System gekoppelter Federn. Am Beispiel des quartischen Potentials wird auch die Behandlung von Randwertproblemen besprochen. Das Doppelpendel führt schließlich zur nichtintegrablen Dynamik, für die Konzepte wie der Poincaréschnitt und der Ljapunovexponent eingeführt werden. In diesem Zusammenhang wird ferner die Bewegung in Billards diskutiert. Getriebene Systeme führen abschließend zu einer Betrachtung von Grenzzyklen und Bifurkationsdiagrammen.
Harald Wiedemann, Gert-Ludwig Ingold
Kapitel 3. Elektrodynamik und Optik
Zusammenfassung
Dieses Kapitel ist der Elektrodynamik und Optik gewidmet. Anhand einer Reihe von elektrostatischen Problemstellungen werden Methoden zur Lösung partieller Differentialgleichungen diskutiert. Für Multipolfelder sowie eine Ladung in einem Faradaykäfig wird die Berechnung von Feldlinien und Äquipotentiallinien vorgeführt. Die Entwicklung nach Eigenfunktionen wird für eine geerdete Schachtel demonstriert, auf deren Deckel eine Potentialverteilung vorgegeben ist. Als allgemeinste Methode wird die Finite-Differenzen-Methode auf die Berechnung der Feldverteilung eines Plattenkondensators in zwei Dimensionen angewandt. Für zwei verschränkte Kreisströme wird die Form der Feldlinien berechnet und dabei die Brücke zu nicht integrablen Systemen in Kapitel 2 geschlagen. Als optisches Problem wird die Ausbreitung eines Lichtstrahls in einem inhomogenen Medium mit Hilfe zweier Methoden untersucht. Das Fermat’sche Prinzip führt zunächst auf ein Optimierungsproblem, das direkt numerisch oder durch Behandlung des Randwertproblems der zugehörigen Euler-Lagrange-Gleichung gelöst werden kann.
Harald Wiedemann, Gert-Ludwig Ingold
Kapitel 4. Statistische Physik
Zusammenfassung
Im Kapitel zur Statistischen Physik steht die Verwendung von Zufallszahlen im Vordergrund. Zunächst werden die statistischen Eigenschaften einer Zufallsbewegung in einer Dimension untersucht. Eine weitergehende Modellierung betrachtet die eindimensionale Bewegung eines schweren Teilchens unter dem Einfluss eines thermischen Gases leichter Teilchen. Hierbei wird der Zusammenhang zwischen Fluktuationen und Dissipation numerisch verdeutlicht. Wie sich das Problem der Auswertung der Zustandssumme in hochdimensionalen Zustandsräumen bewältigen lässt, wird zunächst anhand der numerischen Integration in höherdimensionalen Räumen diskutiert. Die hierbei eingeführte Monte-Carlo-Integration bildet die Grundlage für die spätere Behandlung der Thermodynamik des Ising-Modells in ein und zwei Dimensionen. Dabei werden sowohl der Metropolis- als auch der Wolff-Algorithmus eingeführt. Den Abschluss bildet die Behandlung des Perkolationsübergangs für zweidimensionale Quadratgitter.
Harald Wiedemann, Gert-Ludwig Ingold
Kapitel 5. Quantenmechanik
Zusammenfassung
Das Kapitel zur Quantenmechanik beginnt mit der Bestimmung stationärer Lösungen der Schrödingergleichung. Anhand der numerischen Behandlung des endlichen Potentialtopfs wird deutlich, wie die Randbedingungen im Unendlichen zur Energiequantisierung gebundener Zustände führen. Der harmonische Oszillator sowie eindimensionale Atom- und Molekülmodelle werden mit Hilfe der numerischen Lösung endlichdimensionaler Eigenwertprobleme betrachtet. Für die Dynamik eines freien Wellenpakets wird die Bedeutung eines optischen Potentials demonstriert. Darauf aufbauend wird die Split-Operator-Technik verwendet, um die Dynamik eines Wellenpakets an einer Tunnelbarriere zu untersuchen. Die Dynamik eines frei fallenden Wellenpakets wird unter Berücksichtigung der Reflexion an einem Boden durch Zerlegung nach Eigenzuständen berechnet. Nach der Behandlung von drei verschiedenen Szenarien zum Tunneleffekt schließt das Kapitel mit der Hartreebehandlung für den Zweielektronengrundzustand des Heliumatoms ab.
Harald Wiedemann, Gert-Ludwig Ingold
Kapitel 6. Praktische Aspekte von Python
Zusammenfassung
Im letzten Kapitel werden zunächst verschiedene Möglichkeiten dargestellt, wie die Softwareumgebung, die für die Ausführung der Jupyter-Notebooks dieses Buches erforderlich ist, unter Linux und unter Windows installiert werden kann. Dabei werden auch einige Hinweise zu den Vor- und Nachteilen der Installationsvarianten gegeben. Anschließend werden eine ganze Reihe ausgewählter Aspekte von Python diskutiert. Dabei wird nicht versucht, eine vollständige Einführung in Python zu geben, sondern es werden Themen von besonderer Bedeutung für dieses Buch angesprochen. Den Abschluss bilden Erweiterungen des Jupyter-Notebooks zum Ising-Modell mit Fokus auf das Schreiben in und Lesen aus Dateien sowie die Parallelisierung von trivial parallelisierbaren Problem in Python.
Harald Wiedemann, Gert-Ludwig Ingold
Backmatter
Metadaten
Titel
Numerische Physik mit Python
verfasst von
Harald Wiedemann
Gert-Ludwig Ingold
Copyright-Jahr
2025
Verlag
Springer Berlin Heidelberg
Electronic ISBN
978-3-662-69567-8
Print ISBN
978-3-662-69566-1
DOI
https://doi.org/10.1007/978-3-662-69567-8