htw saar Piktogramm QR-encoded URL
Zurück zur Hauptseite Version des Moduls auswählen:
Lernziele hervorheben XML-Code


Scientific Computing

Modulbezeichnung:
Bezeichnung des Moduls innerhalb des Studiengangs. Sie soll eine präzise und verständliche Überschrift des Modulinhalts darstellen.
Scientific Computing
Studiengang:
Studiengang mit Beginn der Gültigkeit der betreffenden ASPO-Anlage/Studienordnung des Studiengangs, in dem dieses Modul zum Studienprogramm gehört (=Start der ersten Erstsemester-Kohorte, die nach dieser Ordnung studiert).
Praktische Informatik, Master, ASPO 01.10.2017
Code: PIM-SCOM
SWS/Lehrform:
Die Anzahl der Semesterwochenstunden (SWS) wird als Zusammensetzung von Vorlesungsstunden (V), Übungsstunden (U), Praktikumsstunden (P) oder Projektarbeitsstunden (PA) angegeben. Beispielsweise besteht eine Veranstaltung der Form 2V+2U aus 2 Vorlesungsstunden und 2 Übungsstunden pro Woche.
2V+2U (4 Semesterwochenstunden)
ECTS-Punkte:
Die Anzahl der Punkte nach ECTS (Leistungspunkte, Kreditpunkte), die dem Studierenden bei erfolgreicher Ableistung des Moduls gutgeschrieben werden. Die ECTS-Punkte entscheiden über die Gewichtung des Fachs bei der Berechnung der Durchschnittsnote im Abschlusszeugnis. Jedem ECTS-Punkt entsprechen 30 studentische Arbeitsstunden (Anwesenheit, Vor- und Nachbereitung, Prüfungsvorbereitung, ggfs. Zeit zur Bearbeitung eines Projekts), verteilt über die gesamte Zeit des Semesters (26 Wochen).
6
Studiensemester: 1
Pflichtfach: nein
Arbeitssprache:
Deutsch
Prüfungsart:
Bearbeitung von Übungsblättern sowies eines Projekts inkl. Bericht und Präsentation

[letzte Änderung 05.03.2024]
Verwendbarkeit / Zuordnung zum Curriculum:
Alle Studienprogramme, die das Modul enthalten mit Jahresangabe der entsprechenden Studienordnung / ASPO-Anlage.

KIM-SCOM Kommunikationsinformatik, Master, ASPO 01.10.2017 , 1. Semester, Wahlpflichtfach, telekommunikationsspezifisch
PIM-SCOM Praktische Informatik, Master, ASPO 01.10.2017 , 1. Semester, Wahlpflichtfach, informatikspezifisch
Arbeitsaufwand:
Der Arbeitsaufwand des Studierenden, der für das erfolgreiche Absolvieren eines Moduls notwendig ist, ergibt sich aus den ECTS-Punkten. Jeder ECTS-Punkt steht in der Regel für 30 Arbeitsstunden. Die Arbeitsstunden umfassen Präsenzzeit (in den Vorlesungswochen), Vor- und Nachbereitung der Vorlesung, ggfs. Abfassung einer Projektarbeit und die Vorbereitung auf die Prüfung.

Die ECTS beziehen sich auf die gesamte formale Semesterdauer (01.04.-30.09. im Sommersemester, 01.10.-31.03. im Wintersemester).
Die Präsenzzeit dieses Moduls umfasst bei 15 Semesterwochen 60 Veranstaltungsstunden (= 45 Zeitstunden). Der Gesamtumfang des Moduls beträgt bei 6 Creditpoints 180 Stunden (30 Std/ECTS). Daher stehen für die Vor- und Nachbereitung der Veranstaltung zusammen mit der Prüfungsvorbereitung 135 Stunden zur Verfügung.
Empfohlene Voraussetzungen (Module):
Keine.
Als Vorkenntnis empfohlen für Module:
Modulverantwortung:
Prof. Dr. Peter Birkner
Dozent/innen: Prof. Dr. Peter Birkner

[letzte Änderung 09.02.2024]
Lernziele:
Die Studierenden wissen, was wissenschaftliches Rechnen ist und kennen typische Anwendungen. Sie beherrschen die wichtigsten Aspekte der Programmiersprache Python und können externe Bibliotheken einbinden und nutzen.
 
Sie haben verstanden, wie man numerische Probleme in Python zusammen mit NumPy implementiert. Das Gleiche gilt für Probleme, die symbolisch mit SymPy gelöst werden. Die Studierenden können die Lösungen von mathematischen Problemen sowie Daten mit Hilfe von Matplotlib visualisieren.
 
Die Studierenden wissen, was paralleles Rechnen ist und kennen den MPI-Standard; Sie beherrschen dessen Grundlagen und können einfache parallele Programme entwerfen und in Python und C implementieren.
 
Die Studierenden kennen wichtige Computeralgebrasysteme (CAS) und wissen, welches für eine bestimmte Art von Problem am besten geeignet ist. Sie können auch grundlegende mathematische Berechnungen in den vorgestellten CAS ausführen.
 
Weiterhin erkennen sie mathematische Konzepte aus den Vorlesungen Mathematik 1-3 wieder und können diese mit einem CAS und/oder Python und zugehörigen Bibliotheken praktisch umsetzen.

[letzte Änderung 25.03.2024]
Inhalt:
 
1. Einführung, Überblick und Anwendungen von Scientific Computing
 
2. Python für wissenschaftliche Berechnungen
    1. Kurze Einführung in Python
    2. Numerische Berechnungen mit NumPy
    3. Symbolische Mathematik mit SymPy
    4. Visualisierung mit Matplotlib
 
3. JupyterLab und Jupyter Notebook
    1. Installation und Einsatz von JupyterLab
    2. Verwendung von verschiedenen Programming Language Kernels
 
4. Parallel Computing mit MPI
    1. Überblick über den MPI-Standard
    2. Prozesskommunikation bei parallelen Berechnungen
    3. Anwendungen mit Python und C
 
5. Mathematische Bibliotheken und wichtige Anwendungen
    1. GNU Scientific Library
    2. BLAS (Basic Linear Algebra Subprograms)
    3. LAPACK (Linear Algebra Package)
 
6. Computeralgebrasysteme und ihre Programmierschnittstellen
    1. SageMath, Maxima und PARI/GP (Interactive Shell und C-Bibliothek)
    2. Maple und MATLAB
 
7. Praktische mathematische Anwendungen
    1. Iterative Nullstellenbestimmung
    2. Polynom-Interpolation
    3. Wichtige Operationen auf Matrizen und Vektoren
    4. Lineare Gleichungssysteme


[letzte Änderung 05.03.2024]
Literatur:
 
- Kofler: Python - Der Grundkurs, Rheinwerk, 2022
 
- Steinkamp: Mathematische Algorithmen mit Python, Rheinwerk, 2022
 
- Johansson: Numerical Python - Scientific Computing and Data Science Applications with Numpy, SciPy and Matplotlib (Second Edition), Apress, 2019
 
- Bressert: SciPy and NumPy, O’Reilly Media, 2012
 
- Idris: NumPy Beginner´s Guide (Second Edition), Packt Publishing, 2013
 
- Bauke, Mertens: Cluster Computing, Springer-Verlag, 2006
 
- Czech: Introduction to Parallel Computing, Cambridge University Press, 2016


[letzte Änderung 05.03.2024]
[Sat Apr 27 19:02:07 CEST 2024, CKEY=psca, BKEY=pim2, CID=PIM-SCOM, LANGUAGE=de, DATE=27.04.2024]