WIA: Programmiersprachen im Wissenschaftlichen Rechnen
Semester | Sommersemester 2020 |
Vorlesender | Dr. Simon Praetorius |
Zeit |
Vorlesung Di 2. DS (09:20-10:50) |
Das WIA Modul bildet eine Fortsetzung der SCPROG Vorlesung(en) und hat zum Ziel tiefer in einzelne Aspekte des Wissenschaftlichen Programmierens einzutauchen. Dabei sollen die Programmiersprachen, die in den SCPROG Veranstaltungen gelehrt wurden, im Fokus stehen, aber auch darüber hinaus Themen betrachtet werden, die interessante Anwendungen des wissenschaftlichen Rechnens aufzeigen.
Einschreibung
Inhalt und Ablauf
Das Modul wird eine Kombination aus studentischen Vorträgen und Vorlesungen, sowie externen Vorträgen/Videovorträgen sein. Zu Beginn werden Vorträge von internationalen Konferenzen betrachtet und diskutiert. Danach sollen einzelne Themen von den Studierenden aufbereitet und entweder online über eine Kommunikationsplatform / Video-Konferenz-Lösung, bzw. (falls das dann wieder möglich sein sollte) in persönlichen Vorträgen präsentiert werden.
Fragen und Antworten
Im Matrix-Room #wia-scprog:tu-dresden.de können Fragen rund um das Modul gestellt werden. Im Semester dient dieser Raum außerdem dazu sich über verschiedene Themen des Kurses auszutauschen und darüber zu diskutieren. Hinweis: Login via ZIH-Login.
Ziele und Anforderungen
Ziel dieses Modul ist es zum einen das Verständnis von Programmiertechniken und Paradigmen zu vertiefen und zu aufgewählten Themen einen tieferen Einblick zu bekommen, aber zum anderen auch diese Techniken auszuprobieren und in eigenen kleinen Programmierprojekten oder im Rahmen von open-source Projekten etwas zu implementieren.
Termine
Termin | Ort | Inhalt |
---|---|---|
07.04.2020 09:20 Uhr |
BBB: https://t1p.de/wia-scprog | Kennenlernen, Vorstellung des Moduls, und Organisation des Semesters |
08.04.2020 13:00 Uhr |
Matrix: #wia-scprog:tu-dresden.de | TBA. |
(BBB ... BigBlueButton, ein open-source video-conferencing tool, gehostet am ZIH, Matrix ... Eine Chat und Kommunikationsplatform mit Chat-Client Riot)
Themenvorschläge
- Polymorphismus (Compiletime vs. Runtime Polymorphismus)
- Objektorientiertes Design (Sprachen im Vergleich)
- Concurrency (Threads, Tasks, asynchrones Rechnen)
- Parallelisierung mittels OpenMP, OpenCL, MPI, ...
- Expression Templates (z.B. symbolisches differenzieren mittels expression templates)
- Vektorisierung und Autoparallelisierung
- Variadische Funktionen
- Arbitrary precision Arithmetik
- Intervall-Arithmetik
- Moderne Sprachen im Vergleich (Rust, Go, Pony, Julia,...)