Modulbeschreibung

Computational Engineering I

ECTS-Punkte:
12
Lernziele:

Die Studierenden

  • können endlich-dimensionale Vektoren in verschiedenen Basen darstellen.

  • können Eigenwerte und Eigenvektoren von Matrizen berechnen

  • kennen die Bedeutung der Eigenwertzerlegung von Matrizen.

  • können Eigenwertzerlegung in praktischen Situationen anwenden.

  • können das Konzept der Orthogonalbasis auf Funktionenräume übertragen.

  • können die Fourierreihendarstellung berechnen und als Basisentwicklung interpretieren.

  • können die Fouriertransformation als lineare Abbildung verstehen und anwenden.
  • verstehen das Konzept der Faltung und können den Faltungssatz anwenden.

 

  • können die Programmiersprache Python zur Lösung wissenschaftlicher Fragestellung verwenden.

  • kennen die Python Entwicklungsumgebungen Spyder und Jupyter Notebook.

  • können in Python Klassen und Funktionen selber schreiben und verwenden.

  • kennen die Vor- und Nachteile des iterativen, rekursiven und funktionalen Programmierens sowie deren Unterschiede.

  • können die Kondition eines Problems beurteilen sowie die Stabilität eines einfachen Algorithmus abschätzen.

  • können numerische Verfahren zur Lösung von eindimensionalen Gleichungen anwenden.

  • können Polynome und Splines in 1D zur Interpolation verwenden.

  • können Quadraturverfahren zur numerischen Approximation von eindimensionalen Integralen verwenden.

  • wissen, wie ein Computer Pseudo-Zufallszahlen generiert und können Monte-Carlo-Methoden zur approximativen Lösung von mathematischen Problemen einsetzen.

  • kennen Graphen als Werkzeuge zur Modellierung diskreter Probleme.

  • können einfache Suchverfahren in Graphen verwenden.

  • können die theoretischen Konzepte in praktischen Anwendung umsetzen.

  • können Messdaten auslesen uns visualisieren.

  • können reale Messdaten quantisieren und interpolieren.

 

  • können ein Relationales Datenmodell entwerfen.

  • können Datenmodelle in einer relationalen Datenbank implementieren. können die Abfragesprache SQL einsetzen (DML, DDL).

  • können mit JDBC auf eine DB zugreifen.

  • verstehen verschiedene Informationssystem-Architekturen. können ein einfaches Data Warehouse planen und realisieren.

 

  • kennen den grundlegenden Aufbau einer QT Applikation.

  • kennen die Arbeitsweise von events, slots und signals.

  • können in Python GUIs mit unterschiedlichen layouts und widgets erzeugen .

  • können GUIs mit dem Qt-Creator erzeugen.

  • wissen wir man den Qt Model View Controller einsetzt.

Kurse in diesem Modul

Höhere Mathematik:

1. Lineare Algebra

    - Skalarprodukt
    - Basen, Basiswechsel
    - Orthonormale Basen
    - Eigenwerte und Eigenvektoren
    - Anwendungen: PCA und Spannungstensor
2. Funktionenräume
    - Orthonormalbasen
    - Fourierbasis und Fourierreihen
    - Diskrete Fouriertransformation
3. Fouriertransformation
    - diskrete Fouriertransformation als linearer Operator
    - kontinuierliche Fouriertransformation
    - Faltung und Faltungssatz
    - Korrelation

Klassenunterricht mit 4 Lektionen pro Woche
Wissenschaftliches Rechnen:

1.  Grundlagen des Wissenschaftlichen Rechnens
     - Die Programmiersprache Python
     - Zahlendarstellungen
     - Funktionen und Algorithmen
     - Nullstellensuche, Interpolation Quadratur
2.  Interpolation
     - Polynominterpolation
     - Spline Interpolation
3.  Graphen
     - Definition von Graphen
     - Suchalgorithmen

Klassenunterricht mit 4 Lektionen pro Woche
Datenbanken:

Es werden die Grundlagen klassischer Datenbankanwendungen vermittelt. Im Vordergrund stehen Relationale Datenbanksysteme, Client-Server Architekturen sowie der Aufbau eines Data Warehouse.

  • Die Abfragesprache SQL2016 
  • Datenmodellierung, ERM, Kardinalitäten 
  • Relationales Modell, Normalformen
  • Datenbankobjekte (z.B. View, Index, Stored Procedures) 
  • Client-side development (JDBC)
  • Transactions, Concurrency Control 
  • n-tier Architekturen
  • Thin Client / Thin Server (z.B. SQLite)
  • Fast Prototyping und Data Exploration (z.B. Pandas DataFrame)
  • Data Warehousing (Star-Schema, ETL, OLAP)
Klassenunterricht mit 4 Lektionen pro Woche
GUI Programmieren mit Python:
  • Einführung in PyQt5
  • Erstellen eigener Desktop Applikationen mit PyQt
Selbststudium mit 0 Lektionen pro Woche
Disclaimer

Diese Beschreibung ist rechtlich nicht verbindlich! Weitere Informationen finden Sie in der detaillierten Modulbeschreibung.