Einführung in die Programmiersprache JULIA (14722.0016)

JULIA ist eine junge, frei verfügbare Programmiersprache mit Zielanwendung im Bereich der numerischen und algorithmischen Mathematik.

Die grundlegende Syntax und der Funktionsumfang sind vergleichbar zu MATLAB, jedoch erlaubt der Aufbau der Sprache rund um ein dynamisches Typsystem und die deutlich höhere Ausführungsgeschwindigkeit aufgrund optionaler Typisierung auch die Erstellung komplexerer Programme. Dies wird weiter vereinfacht durch die integrierte Paketverwaltung, welche eine Vielzahl an Funktionalitäten und wissenschaftlichen Bibliotheken zur Verfügung stellt.

Die Lehrveranstaltung (9LP) richtet sich an Masterstudierende und ist in zwei Teilen organisiert: Der erste Teil ist eine Blockveranstaltung mit Start am 27. September bis zum 5. Oktober (3. Oktober keine Veranstaltung). Der zweite Teil ist eine semesterbegleitende Vorlesung/Übung (2 SWS).

Im ersten Teil der Lehrveranstaltung (Block) gibt es eine Einführung in die Programmiersprache Julia. Hierzu werden die allgemeinen Grundlagen der Programmiersprache und die Besonderheiten hinsichtlich Typsystem und Paketverwaltung erläutert. Die Programmiersprache wird direkt mit Beispielen, z. B. aus der numerischen Mathematik während der Veranstaltung vertieft und angewandt. Zum Abschluss der Blockveranstaltung wird als exemplarisches Projektbeispiel ein einfacher Strömungslöser entwickelt.

Im zweiten Teil der Lehrveranstaltung (Vorlesung während des Semesters) sollen die Kenntnisse vertieft und selbständig von den Studierenden angewandt werden. Ausgehend von dem Projektbeispiel am Ende der Blockveranstaltung ist es das Ziel, dieses während des Semesters zu erweitern: dazu soll ein neues numerisches Verfahren implementiert werden und zusätzlich die partielle Differentialgleichung geändert werden. Am Ende des Semesters wird das Projekt von den Studierenden in einer kurzen Präsentation vorgestellt. Dies zählt auch als Teil der Note. Die ergänzende mündliche Prüfung findet nach dem Semester statt.

Voraussetzungen: Algorithmische Mathematik, Numerische Mathematik (Numerik 1)
Anmeldung: Email an aggassner(at)math.uni-koeln.de (max. Teilnehmerzahl = 20)

Vorbereitung: Die PCs im CIP-Pool stehen zur Verfügung und sind mit Julia Pro vorinstalliert. Wer will, kann auch seinen eigenen Laptop verwenden. Dafür sollte aber vorab Julia 0.7, Jupyter und ein Editor (etwa Atom+Juno) installiert werden. Wir empfehlen die freie Version von Julia Pro (https://juliacomputing.com/products/juliapro.html).


Veranstaltungsort und -zeit:
Teil 1: Start der Blockveranstaltung ist am Donnerstag, 27. September 2018 um 11.00 Uhr. Generell findet die Blockveranstaltung von 09.00 bis 18.00 Uhr im Raum -118 des Mathematischen Instituts statt (mit Pausen).

Teil 2: Der zweite Teil findet dann während des Semesters freitags von 14.00 bis 15.30 Uhr im Übungsraum 2 des Mathematischen Instituts statt.

Kontakt: Prof. Dr. G. Gassner