2. Software#

2.1. Python#

Für numerische Berechungen benutzen wir im Kurs Python. Eine gute Einführung in Python ist im interaktiven Jupyter-Book Python Programming And Numerical Methods: A Guide For Engineers And Scientists zu finden.

Im wesentlichen werden wir fundamentale Funktionalität von Python benutzen. Für numerische Berechnungen werden wir auf NumPy und SciPy zurückgreifen. Die Visualisierung kann sehr matlab nahe mit Hilfe von Matplotlib umgesetzt werden.

Falls Sie Python mit den entsprechenden Module noch nie benutzt haben, ist es sehr sinnvoll sich vorab mit dem wesentlichen auseinander zu setzen.

2.2. NGSolve#

Im Rahmen der numerischen Methoden für partielle Differentialgleichungen werden wir die Methode der finiten Elemente kennen lernen. Wir werden für die Umsetzung auf eine C++ Bibliothek NGSolve zurückgreifen, welche eine umfangreiche Python-Schnittstelle zur Verfügung stellt.

Netgen/NGSolve ist eine hochleistungsfähige Multiphysik-Finite-Elemente-Software. Sie wird häufig zur Analyse von Modellen aus den Bereichen Festkörpermechanik, Strömungsmechanik und Elektromagnetik eingesetzt. Dank der flexiblen Python-Schnittstelle können neue physikalische Gleichungen und Lösungsalgorithmen leicht implementiert werden.

Das Ziel des Moduls besteht in der Vermittlung der mathematischen Grundlagen und insbesondere auch numerischen Anwendung derer auf konkrete Beispiele aus der Ingenieur Praxis.

Bemerkung

Installieren Sie NGSolve auf ihrem Rechner. Die dazu notwendigen Anleitungen finden Sie auf (https://ngsolve.org) unter dem Abschnitt INSTALLATION:

2.3. Jupyter Hub#

Auf dem Rechner CLT-DSK-T-7307.zhaw.ch ist ein JupyterHub eingerichtet. Der Rechner ist nur im Intranet verfügbar (VPN Verbindung notwendig).

JupyterHub

Ein Account kann selbständig kreiert werden, wobei dieser authentifiziert wird. Bitte benutzen Sie als User-Name Ihr ZHAW Kürzel und ein sicheres Passwort.

../_images/native_auth_flow.png

Abb. 2.1 Authetication workflow#