Physik mit Python

Sie studieren Physik oder eine Ingenieurwissenschaft mit hohem physikalischen Anteil oder Sie beabsichtigen, ein solches Studium zu beginnen? Vielleicht unterrichten Sie auch selbst und möchten Ihren Unterricht durch Simulationen und Animationen anreichern? Dann sollten Sie unbedingt einmal etwas von Python gehört haben!

Python ist eine Programmiersprache, die nicht nur bei Einsteigern sondern auch bei Profis überaus beliebt ist, da sie sehr einfach zu erlernen und dennoch überaus mächtig ist: Mit Python werden nicht nur LEGO® Roboter programmiert, sondern auch Anwendungen des maschinellen Lernens bei großen Internetkonzernen.

Dieses Lehrbuch führt Sie anhand von physikalischen Fragestellungen aus der Mechanik in die Programmiersprache Python ein. Neben der reinen Simulation von physikalischen Systemen wird besonderes Augenmerk auf die Visualisierung von Ergebnissen und das Erstellen von Animationen gelegt. Mit zahlreichen Beispielen und Übungsaufgaben ermöglicht dieses Buch so den praktischen Einstieg in das wissenschaftliche Rechnen.

Mit diesem Buch haben Sie einen optimalen Begleiter, der Sie anhand von physikalischen Fragestellungen aus den ersten Studiensemestern in die Programmiersprache Python einführt. Sie lernen Kurvenanpassungen durchzuführen sowie lineare und nichtlineare Gleichungssysteme zu lösen, die bei der Behandlung von statischen Problemen auftreten. Auch die Lösung von Differentialgleichungen, die dynamische Systeme beschreiben, sowie Themen wie Fourier-Transformationen und Eigenwertprobleme kommen nicht zu kurz. Auf diese Weise lernen Sie nicht nur, wie man mit Python physikalische Systeme simuliert, sondern auch wie Sie Ihre Ergebnisse visualisieren und Animationen erstellen können.

Alle im Buch vorgestellten Programme, die fertigen Animationen sowie die Lösungen zu den Übungsaufgaben werden auf diesen Webseiten online bereitgestellt.

Ob Sie also Physik oder eine Ingenieurwissenschaft mit hohem physikalischem Anteil studieren, oder ob Sie unterrichten und Ihre Lehre durch Simulationen und Animationen anreichern möchten – dieses Buch ist dabei Ihr optimaler Begleiter!

Lerne ich dabei auch etwas über Physik?

Vielleicht denken Sie sich: »Ich habe doch schon genug mit meinen Physik- und Mathevorlesungen zu kämpfen. Sollte ich dann wirklich auch noch anfangen zu programmieren?«

Die Antwort lautet: »Ja, unbedingt!«

Früher oder später kommen Sie in Ihrem Studium oder im Beruf mit großer Wahrscheinlichkeit nicht umhin, programmieren zu können, da Computersimulationen und computerunterstützte Auswertungen von experimentellen Daten in vielen Bereichen die wesentliche Arbeitsgrundlage von Natur- und Ingenieurwissenschaftlern bilden. Nutzen Sie also die Gelegenheit und steigen Sie früh damit ein. Mit Python fällt der Einstieg besonders leicht und Sie lernen eine Sprache, mit der Sie auch professionellen Ansprüchen genügen. Der wichtigste Punkt ist aber:

Das Programmieren hilft Ihnen, die Physik besser zu verstehen!

Aufgrund der Arbeitsweise des Computers sind Sie gezwungen, eine Problemlösung in ganz klar definierte Arbeitsschritte zu zerlegen. Von Steve Jobs stammt das Zitat:

»Everyone should learn how to code, it teaches you how to think.«

Das Erstellen von Computerprogrammen trainiert in besonderer Art und Weise eine strukturierte Herangehensweise an Probleme. Das ist genau die Fähigkeit, die Sie auch benötigen, um physikalische Aufgaben von Hand zu lösen. Darüber hinaus zeigt sich oft erst beim Erstellen einer Computersimulation, welchen großen Vorteil es bringt, die physikalischen Gesetze in einer möglichst allgemeingültigen Form aufzuschreiben.

Beispielvideo

Das Buch enthält 99 Übungsaufgaben. In vielen dieser Übungsaufgaben werden Sie, ausgehend von den im Buch ausführlich erklärten Python-Programmen, selbst Simulationen und Animationen erstellen. Die Musterlösungen zu diesen Aufgaben werden hier online zur Verfügung gestellt.
Die unten dargestellte Animation zeigt ein Beispielergebnis der Musterlösung einer Aufgabe aus dem 13. Kapitel "Objektorientierte Simulationen".


Aufgabe 13.9: Stoß mehrerer Kugeln. Eine von links kommende Kugel trifft auf eine Anordnung von 5 ruhenden Kugeln.