Numerik: Eine Einführung mit Python

Dieser Vorlesungsteil beinhaltet die Wiederholung der wichtigsten mathematischen Methoden zur Lösung von linearen und nichtlinearen Gleichungssystemen sowie von Differentialgleichungen. Die Umsetzung der verschiedenen Methoden in Programmcode wird mit der Programmiersprache Python gezeigt.

  1. Python Installation und erste Schritte
  2. iterative Verfahren: Fixpunktiteration, Newton-Verfahren
  3. Anfangswertaufgaben für gewöhnliche Differentialgleichungen (Euler-, Runge-Kutta-Verfahren)
  4. Randwertaufgaben für gewöhnliche Differentialgleichungen (Shooting Methode, numerische Differentiation und Integration, finite Differenzen, Gauß-Verfahren, Thomas-Algorithmus)
  5. Anfangs-Randwertaufgaben am Beispiel der instationären Diffusionsgleichung

Python Installation und erste Schritte

Python ist eine moderne, quelloffene, objektorientierte Programmiersprache mit einer sehr klaren und einfachen Syntax. Sie ist in der Wissenschaft weit verbreitet und wird an (fast) allen führenden Universitäten zur Einführung in die Programmierung verwendet.

Für wissenschaftliche Anwendungen stehen u.a. die Pakete NumPy, SciPy und MatplotLib zur Verfügung, mit denen Funktionen für wissenschaftliches Rechnen und Visualisierung bereitgestellt werden. Umfang und Syntax entsprechen in etwa Matlab (lineare Algebra, numerische Optimierung, numerische Differentiation und Integration, Interpolation, Signalverarbeitung, Lösen gewöhnlicher Differentialgleichungen und symbolische Mathematik).

Python ist für alle gängigen Betriebssysteme (Linux, MacOS, Windows) verfügbar und kann auf unterschiedliche Weise installiert werden. Um alle für wissenschaftlichen Anwendungen relevanten Module zu installieren, bietet sich die Anaconda-Distribution an.

Zur Installation

  • hier https://www.continuum.io/downloads die komplette Distribution (nicht Miniconda) für das entsprechende Betriebssystem herunterladen (Python Version 3.6) und die Installationsdatei ausführen.

  • die Kommandozeile aufrufen (in Windows im Startmenü cmd in die Suchmaske eingeben, unter MacOS in der Spotlight-Suche terminal eingeben, Linux-Nutzer wissen eh, wie das geht).

  • jupyter notebook eingeben. Es öffnet sich ein Webbrowser mit der Jupyter-Umgebung, in der Python interaktiv verwendet werden kann.

  • das Ganze sollte dann in etwa so aussehen:

  • über das Menü New --> Python [default] ein neues Arbeitsblatt erstellen.

  • in die erste Zelle Folgendes eingeben und über den run cell-Button ausführen.


In [5]:
print ("Hallo Welt")
4+5


Hallo Welt
Out[5]:
9

Weitere Tutorials zu Python und Numpy bitte selbst durcharbeiten.

Danach geht es hier weiter oder hier zurück zur Übersicht.


Der folgende Python-Code darf ignoriert werden. Er dient nur dazu, die richtige Formatvorlage für die Jupyter-Notebooks zu laden.


In [6]:
from IPython.core.display import HTML
def css_styling():
    styles = open('TFDStyle.css', 'r').read()
    return HTML(styles)
css_styling()


Out[6]: