Lecture WS 16/17 Einführung in die Grundlagen der Numerik
Vorlesung im Wintersemester 2016/2017:
Einführung in die Grundlagen der Numerik (V2E1/MB10)
Prof. Dr. Sven Beuchler
Assistent: Markus Siebenmorgen
Die Mathematik stellt eine wichtige Grundlage für viele Bereiche des alltäglichen Lebens dar. Ingenieurswesen, Transport, und selbst Finanzmärkte profitieren von mathematischen Methoden und Modellen. Während viele Probleme direkt gelöst werden können, ist der Großteil von Hand nicht mehr zu bewältigen. Aus diesem Grund bedient man sich des Computers als Hilfsmittel zur Umsetzung mathematischer Verfahren.Ziel und Inhalt der Vorlesung ist die Vermittlung von Fähigkeiten, die Schritte von der mathematischen Formulierung eines Problems bis hin zur Schritt-für-Schritt-Umsetzung in einem Algorithmus durchzuführen. Der Entwurf geeigneter Verfahren ist dabei ebenso Bestandteil des Lehrmaterials wie die Verifikation und Analyse von benötigter Laufzeit und erreichter Qualität (bei approximativen Verfahren).
Vorkenntnisse:
Vorausgesetzt werden die Inhalte der beiden vorangegangenen Vorlesungen Algorithmische Mathematik I und Algorithmische Mathematik II. Im Rahmen der Vorlesung wird jedoch auch die Fähigkeit zur konkreten Implementierung von Verfahren in C/C++ gelehrt. Eine Vertiefung der zugehörigen Grundlagen aus der AlMa I und AlMa II in Eigenarbeit wird empfohlen. Zu diesem Zweck können die unter Literatur angegeben Materialien dienlich sein (s.u.).Vorlesungszeiten:
Termin: | Di | 10:15-12 Uhr |
Do | 8:30-10 Uhr | |
Beginn: | Di | 18.10.2016 |
Ort: | Kleiner Hörsaal Mathematik, We 10 |
Die Sprechstunde von Prof. Beuchler ist Mi 10:30-11:30 Uhr.
Die Konsultation findet am Dienstag, den 14.02.2017 um 13:30 im kleinen Hörsaal statt.
Klausureinsicht am 23.03.2017
Achtung: Lichtbildausweis (Personalausweis oder Reisepass) und Studentenausweis sind auch zur Klausureinsicht mitzubringen!Termin der Klausureinsicht: | Do | 23.03.2017 |
Beginn: | 11:00 | |
Ende: | 11:30 | |
Ort: | Wegelerstraße 6, Raum 6.020 |
Vorlesungsskript
Vorlesungsbegleitend wird ein Skript ausgearbeitet. Es wird versucht, das Skript auf dem Stand der Vorlesung zu halten. Dennoch soll und kann es nicht eine tagesaktuelle Mitschrift der Vorlesung ersetzen. Hier finden Sie das Skript zur Vorlesung Algorithmische Mathematik I+II aus den vorherigen Semestern. Das Skript ist Passwort-geschützt. Das Passwort erhalten Sie in der Vorlesung oder bei Ihrem Tutor.
Übungsblätter:
Die Abgabe der Übungszettel erfolgt stets zu Beginn der Vorlesung am Dienstag. Die Übungszettel müssen also bis Dienstag, 10.15 Uhr abgegeben sein. Die Abgabe der Übungsaufgaben erfolgt stets in Gruppen mit exakt 2 Studenten.
|
Übungsgruppen:
Achtung: Die Übungsgruppen werden neu eingeteilt. Die folgende Neueinteilung ist ab dem 7.11.2016 gültig.
|
Raum: SR 0.011, Tutor: Benjamin V. |
Raum: We6 6.020, Tutor: Gabriel P. | |
Raum: Zeichensaal, Tutor: Lukas P. |
Klausurtermine:
1. Termin: 17.02.2017: 09:00-11:00 Uhr
2. Termin: 22.03.2016: 09:00-11:00 Uhr
Bitte seien Sie um 8:45 Uhr im großen Hörsaal der Mathematik.Programme und Dateien zur Vorlesung und Übung
Hinweise zu den Programmieraufgaben:
Die Tutoren in den CIP-Pools stehen auch außerhalb der Abgabezeiten gerne für Fragen bzgl. der Programmieraufgaben zur Verfügung. Alle Programmieraufgaben werden in C / C++ gelöst.Achtung:Jeder Student benötigt für die Programmierabgabe einen lauffähigen Hochschul-Rechenzentrums-Login-Account.
Es wird jede Woche Programmieraufgaben geben. Diese werden alle zwei Wochen in unseren CIP-Pools testiert / bepunktet. Die Abgabe der Programmieraufgaben erfolgt stets in Gruppen mit exakt 2 Studenten.
Wichtig:Jeder Studierende muss alle Programmieraufgaben beherrschen. Gegebenenfalls werden auch innerhalb einer Abgabegruppe unterschiedliche Punkte vergeben, wenn nicht alle Aufgaben erklärt werden können.
Vorführung der Aufgaben
Die Vorführung der Programmieraufgaben erfolgt in der Woche nach der Ausgabe des jeweils zweiten Übungsblattes. Dabei erfolgt die Abgabe zu dem Termin für den sich die Abgabegruppe in die Anmelde-Listen eingetragen hat. Vorgeführt wird dann im jeweils geöffneten CIP-Pool (siehe auch CIP-Pool Homepage).Bitte bringen Sie auch über den von Ihnen ausgewählten Abgabezeitraum hinaus etwas Zeit mit, falls sich zeitliche Schwankungen ergeben.
Die Termine des Aushangs der Anmeldelisten und die jeweilige Abgabe-Woche wird stets auch auf den Übungszetteln vermerkt sein. Desweiteren sind in den Programmieraufgaben alle in der Algorithmischen Mathematik erstellten Programme verwendbar. Als weitere Hilfsmittel sind zusaetzlich die einfachsten Routinen aus der BLAS erlaubt: http://www.netlib.org/blas/
Klausurzulassung
Zur Klausur ist zugelassen, wer nachfolgende Bedingungen erfüllt:- 50% der Punkte in den Theorieaufgaben der Übungszettel werden erreicht.
- 50% der Punkte in den Programmieraufgaben werden erreicht.
- Es wurde 2-3 Mal eine Aufgabe an der Tafel in der Übungsgruppe vorgerechnet.
- Zwei Personen pro Gruppe sowohl in den Tutorien als auch in den Programmieraufgaben
Literatur
Theorie
- Martin Hanke-Bourgois: Grundlagen der Numerischen Mathematik. Teubner
- Josef Stoer: Numerische Mathematik I. Springer
- P. Deuflhard, A. Hohmann: Numerische Mathematik, de Gruyter
- C. Uberhuber: Computer-Numerik 1/2. Springer, 1995
- Kuegler/Windsteiger: Algorithmische Methoden Bd 1, Birkhaeuser, 2009
- David S. Watkins: Fundamentals of Matrix Computations, 2002
- Golub, G.H. and Van Loan, C.F.: Fundamentals of Matrix Computations, 2002
- Quateroni, A. Numerical Mathematics, 2000
Programmieren
- Brian W. Kernighan, Dennis M. Ritchie: Programmieren in C
- Bjarne Stroustrup: Die C++-Programmiersprache
- Bruce Eckel: Thinking in C++ [frei erhältlich zum Download]
- Stanley B. Lippman, Josée Lajoie, Barbara E. Moo: C++ Primer
Die Beispiele in der Vorlesungen werden in C vorgestellt werden. Dennoch ist oben genannte Literatur zu C++ uneingeschränkt zu empfehlen, da C++ Compiler auch C verstehen. C++ ist die modernere Sprache, deren Kenntnis insbesondere auch nach abgeschlossenem Studium hohen Wert hat. Programmieraufgaben können entsprechend in C oder C++ abgegeben werden.