Scientific Computing mit Julia (SCJ)
6/7. Semester
5 ECTS | 4 SWS
Continuous Assessment (CA)
Rechne, simuliere und löse reale Probleme am Computer: Du lernst die Programmiersprache Julia und die Grundlagen des wissenschaftlichen Rechnens kennen, z. B. den Umgang mit Rundungsfehlern und numerischen Verfahren. Danach entwickelst du eigene Simulationen und Programme für Anwendungen aus Technik, Medizin und Wirtschaft und bekommst Einblicke in moderne Rechenmethoden und deren praktische Umsetzung.
Inhalte
- Einführung in Scientific Computing (u.a. Fließkommazahlen und Rundungsfehler)
- Einführung in die Programmiersprache Julia
- Sprachen und Entwicklungsumgebungen: Julia/VSC/quarto, (Python, jupyter, Matlab, o.ä.)
- Ausgewählte nummerische Methoden (Lösen von Gleichungssystemen, Interpolation, Integrieren, automatisches Differenzieren, Pseudo-Zufallszahlen)
- Simulationsmethoden (mittels Differentialgleichungen, ereignis-orientiert, agenten-basiert; zelluläre Automaten) incl. Parameteroptimierung
- Hochleistungsrechner und Cloud-Computing für naturwissenschaftlich-technische Anwendungen
- Zahlreiche Anwendungsbeispiele aus verschiedenen Domänen (Wirtschaft, Technik, Medizin uvm.)
- Entwicklung einer technischen Software / Simulation als Projekt in Gruppen
Lernziele/Kompetenzen
Die Studierenden sind in der Lage,
- grundlegende Probleme für wissenschaftliches Rechnen oder KI-Methoden in einer Programmiersprache zu formulieren und zu implementieren.
- komplexe technische oder wissenschaftliche Zusammenhänge zu beschreiben.
- die Komplexität der technischen Anwendungen, die in der Industrie zum Einsatz kommen, einzuschätzen.
Literatur
- Erik Engheim. Julia As a Second Language: General Purpose Programming With a Taste of Data Science, Manning 2023
- Hans-Joachim Bungartz, Stefan Zimmer, Martin Buchholz, Dirk Pflüger. Modeling and Simulation: An application-oriented introduction. Springer, 2014.
- Ulrich Hedtstück. Simulation diskreter Prozesse. Methoden und Anwendungen, Berlin Heidelberg, 2013.
- Uri Wilensky and William Rand. An introduction to agent-based modeling: modeling natural, social, and engineered complex systems with NetLogo. MIT Press, 2015.
- Thomas Huckle and Stefan Schneider. Numerische Methoden: Eine Einführung für Informatiker, Naturwissenschaftler, Ingenieure und Mathematiker. Springer, 2 Edition, 2006.
Dozentinnen / Dozenten
Empfohlene Vorkenntnisse
Keine besonderen Vorkenntnisse. Interesse an der Programmentwicklung für naturwissenschaftlich und technische Fragestellungen, beispielsweise KI-Methoden oder Spieleprogrammierung.
Daten zum Modul
| Semester |
6/7 |
| Unterrichtssprache |
Deutsch |
|
Häufigkeit
|
Sommersemester
|
| Kreditpunkte |
5 |
| Modulverantwortlich |
Prof. Dr. Markus Gumbel |
| Dauer |
1 Semester |
| Schwerpunkt(e) |
Medical Data Science (MDS)
Software Engineering (SE)
|
| Studienleistung |
Keine |
| Prüfungsvorleistung |
Keine |
| Prüfungsleistung |
Continuous Assessment (CA) |
Semesterwochenstunden
| Vorlesung |
2 SWS |
| Übung |
1 SWS |
| Labor |
1 SWS |
| Summe |
4 SWS |
Arbeitsaufwand (work load)
| Vorlesung |
40 h |
| Labor |
25 h |
| Selbststudium |
40 h |
| Aufgaben |
25 h |
| Prüfungsvorbereitung |
20 h |
| Summe |
150 h |