Seminar Numerik 1 Seminar Numerik 1 Ulrike Leffler Mathematisches Institut der Universität Leipzig 15. und 16. April 2015 Seminar Numerik 1 Organisatorisches Organisatorisches Seminar Numerik 1 Organisatorisches Organisatorisches Aufgaben sollen in Gruppen von 3 bis 4 Studenten bearbeitet werden Seminar Numerik 1 Organisatorisches Organisatorisches Aufgaben sollen in Gruppen von 3 bis 4 Studenten bearbeitet werden Lösungen sowie zusätzliche Aufgaben werden in den Übungen besprochen bzw. bearbeitet Seminar Numerik 1 Organisatorisches Organisatorisches Aufgaben sollen in Gruppen von 3 bis 4 Studenten bearbeitet werden Lösungen sowie zusätzliche Aufgaben werden in den Übungen besprochen bzw. bearbeitet 50% der Punkte sind für die Zulassung zur Klausur hinreichend Seminar Numerik 1 Organisatorisches Organisatorisches Aufgaben sollen in Gruppen von 3 bis 4 Studenten bearbeitet werden Lösungen sowie zusätzliche Aufgaben werden in den Übungen besprochen bzw. bearbeitet 50% der Punkte sind für die Zulassung zur Klausur hinreichend Quellcode soll in C, C++, Java oder Fortran geschrieben werden und ist gut zu kommentieren! Dieser ist vor dem Abgabetermin an [email protected] zu senden. Seminar Numerik 1 Organisatorisches Organisatorisches Aufgaben sollen in Gruppen von 3 bis 4 Studenten bearbeitet werden Lösungen sowie zusätzliche Aufgaben werden in den Übungen besprochen bzw. bearbeitet 50% der Punkte sind für die Zulassung zur Klausur hinreichend Quellcode soll in C, C++, Java oder Fortran geschrieben werden und ist gut zu kommentieren! Dieser ist vor dem Abgabetermin an [email protected] zu senden. Programmausgabe ausdrucken und an die Papierhausaufgaben heften! Seminar Numerik 1 Organisatorisches Organisatorisches Aufgaben sollen in Gruppen von 3 bis 4 Studenten bearbeitet werden Lösungen sowie zusätzliche Aufgaben werden in den Übungen besprochen bzw. bearbeitet 50% der Punkte sind für die Zulassung zur Klausur hinreichend Quellcode soll in C, C++, Java oder Fortran geschrieben werden und ist gut zu kommentieren! Dieser ist vor dem Abgabetermin an [email protected] zu senden. Programmausgabe ausdrucken und an die Papierhausaufgaben heften! Bei der Ausgabe bitte an die wissenschaftliche Notation der Zahlen denken Seminar Numerik 1 Organisatorisches Organisatorisches Seminar Numerik 1 Organisatorisches Organisatorisches Material und Informationen zu der Vorlesung und zu den Übungen findet man auf meiner Seite Seminar Numerik 1 Organisatorisches Organisatorisches Material und Informationen zu der Vorlesung und zu den Übungen findet man auf meiner Seite Übungsaufgaben befinden sich auf meiner Seite und dem Übungsaufgabenserver http://www.mathematik.uni-leipzig.de/∼leffler/ Seminar Numerik 1 Organisatorisches Organisatorisches Material und Informationen zu der Vorlesung und zu den Übungen findet man auf meiner Seite Übungsaufgaben befinden sich auf meiner Seite und dem Übungsaufgabenserver http://www.mathematik.uni-leipzig.de/∼leffler/ Seminar Numerik 1 Organisatorisches Organisatorisches Material und Informationen zu der Vorlesung und zu den Übungen findet man auf meiner Seite Übungsaufgaben befinden sich auf meiner Seite und dem Übungsaufgabenserver http://www.mathematik.uni-leipzig.de/∼leffler/ Fragen/Probleme und Anregungen zu den Übungen bitte an: [email protected] oder 0341-9732139 Seminar Numerik 1 Organisatorisches Organisatorisches Material und Informationen zu der Vorlesung und zu den Übungen findet man auf meiner Seite Übungsaufgaben befinden sich auf meiner Seite und dem Übungsaufgabenserver http://www.mathematik.uni-leipzig.de/∼leffler/ Fragen/Probleme und Anregungen zu den Übungen bitte an: [email protected] oder 0341-9732139 Sprechzeiten: nach Vereinbarung! Zimmer A-326 Seminar Numerik 1 Organisatorisches Klausur Seminar Numerik 1 Organisatorisches Klausur Klausurtermin (unter Vorbehalt): Freitag 17.07. von 9-11 im HS 5 Seminar Numerik 1 Organisatorisches Klausur Klausurtermin (unter Vorbehalt): Freitag 17.07. von 9-11 im HS 5 erlaubt sind in der Klausur alle Hilfsmittel (Literatur, Skript, Übungsaufgaben etc. sowie nichtprogrammierfähige Taschenrechner (keine (numerische) Differentiation oder Integration) Seminar Numerik 1 Organisatorisches Literatur Seminar Numerik 1 Organisatorisches Literatur Stoer/Bulirsch: Numerische Mathematik 1; Springer. Seminar Numerik 1 Organisatorisches Literatur Stoer/Bulirsch: Numerische Mathematik 1; Springer. Deufelhard/Hohmann: Numerische Mathematik I; Walter de Gruyter. Seminar Numerik 1 Organisatorisches Literatur Stoer/Bulirsch: Numerische Mathematik 1; Springer. Deufelhard/Hohmann: Numerische Mathematik I; Walter de Gruyter. siehe Liste im Netz Seminar Numerik 1 Einleitung-Fehleranalyse Fehleranalyse Seminar Numerik 1 Einleitung-Fehleranalyse Fehleranalyse wichtigste Aufgabe der numerischen Mathematik ist die Beurteilung der Genauigkeit eines Rechenergebnisses Seminar Numerik 1 Einleitung-Fehleranalyse Fehleranalyse wichtigste Aufgabe der numerischen Mathematik ist die Beurteilung der Genauigkeit eines Rechenergebnisses es gibt im wesentlichen drei verschiedene Arten von Fehlern: Seminar Numerik 1 Einleitung-Fehleranalyse Fehleranalyse wichtigste Aufgabe der numerischen Mathematik ist die Beurteilung der Genauigkeit eines Rechenergebnisses es gibt im wesentlichen drei verschiedene Arten von Fehlern: Fehler in den Eingangsdaten (z.B. Messwerte) Seminar Numerik 1 Einleitung-Fehleranalyse Fehleranalyse wichtigste Aufgabe der numerischen Mathematik ist die Beurteilung der Genauigkeit eines Rechenergebnisses es gibt im wesentlichen drei verschiedene Arten von Fehlern: Fehler in den Eingangsdaten (z.B. Messwerte) Rundungsfehler Seminar Numerik 1 Einleitung-Fehleranalyse Fehleranalyse wichtigste Aufgabe der numerischen Mathematik ist die Beurteilung der Genauigkeit eines Rechenergebnisses es gibt im wesentlichen drei verschiedene Arten von Fehlern: Fehler in den Eingangsdaten (z.B. Messwerte) Rundungsfehler Approximationsfehler (Methode liefert meist nicht die Lösung eines Problems P sondern die eines Problems P̃ , welches P approximiert.) Seminar Numerik 1 Einleitung-Fehleranalyse Fehleranalyse wichtigste Aufgabe der numerischen Mathematik ist die Beurteilung der Genauigkeit eines Rechenergebnisses es gibt im wesentlichen drei verschiedene Arten von Fehlern: Fehler in den Eingangsdaten (z.B. Messwerte) Rundungsfehler Approximationsfehler (Methode liefert meist nicht die Lösung eines Problems P sondern die eines Problems P̃ , welches P approximiert.) Quelle: Stoer/Bulirsch: Numerische Mathematik 1; Springer. Seminar Numerik 1 Einleitung-Fehleranalyse Beispiele Approximationsfehler Seminar Numerik 1 Einleitung-Fehleranalyse Beispiele Approximationsfehler Sei P das Problem der Berechnung der Zahl e mittels der unendlichen Reihe e=1+ 1 1 1 + + + ··· 1! 2! 3! Seminar Numerik 1 Einleitung-Fehleranalyse Beispiele Approximationsfehler Sei P das Problem der Berechnung der Zahl e mittels der unendlichen Reihe e=1+ 1 1 1 + + + ··· 1! 2! 3! Seminar Numerik 1 Einleitung-Fehleranalyse Beispiele Approximationsfehler Sei P das Problem der Berechnung der Zahl e mittels der unendlichen Reihe e=1+ 1 1 1 + + + ··· 1! 2! 3! P̃ entspricht dann der Summation von endlich vielen Reihengliedern Seminar Numerik 1 Einleitung-Fehleranalyse Beispiele Approximationsfehler Sei P das Problem der Berechnung der Zahl e mittels der unendlichen Reihe e=1+ 1 1 1 + + + ··· 1! 2! 3! P̃ entspricht dann der Summation von endlich vielen Reihengliedern → Abbrechfehler Seminar Numerik 1 Einleitung-Fehleranalyse Beispiele Approximationsfehler Sei P das Problem der Berechnung der Zahl e mittels der unendlichen Reihe e=1+ 1 1 1 + + + ··· 1! 2! 3! P̃ entspricht dann der Summation von endlich vielen Reihengliedern → Abbrechfehler P̃ erhält man häufig durch Diskretisierung von P Seminar Numerik 1 Einleitung-Fehleranalyse Beispiele Approximationsfehler Sei P das Problem der Berechnung der Zahl e mittels der unendlichen Reihe e=1+ 1 1 1 + + + ··· 1! 2! 3! P̃ entspricht dann der Summation von endlich vielen Reihengliedern → Abbrechfehler P̃ erhält man häufig durch Diskretisierung von P Integrale werden durch endliche Summen approximiert Seminar Numerik 1 Einleitung-Fehleranalyse Beispiele Approximationsfehler Sei P das Problem der Berechnung der Zahl e mittels der unendlichen Reihe e=1+ 1 1 1 + + + ··· 1! 2! 3! P̃ entspricht dann der Summation von endlich vielen Reihengliedern → Abbrechfehler P̃ erhält man häufig durch Diskretisierung von P Integrale werden durch endliche Summen approximiert Differentialquotienten durch Differenzenquotienten Seminar Numerik 1 Einleitung-Fehleranalyse Beispiele Approximationsfehler Sei P das Problem der Berechnung der Zahl e mittels der unendlichen Reihe e=1+ 1 1 1 + + + ··· 1! 2! 3! P̃ entspricht dann der Summation von endlich vielen Reihengliedern → Abbrechfehler P̃ erhält man häufig durch Diskretisierung von P Integrale werden durch endliche Summen approximiert Differentialquotienten durch Differenzenquotienten → Diskretisierungsfehler Seminar Numerik 1 Einleitung-Fehleranalyse Beispiele Approximationsfehler Sei P das Problem der Berechnung der Zahl e mittels der unendlichen Reihe e=1+ 1 1 1 + + + ··· 1! 2! 3! P̃ entspricht dann der Summation von endlich vielen Reihengliedern → Abbrechfehler P̃ erhält man häufig durch Diskretisierung von P Integrale werden durch endliche Summen approximiert Differentialquotienten durch Differenzenquotienten → Diskretisierungsfehler Quelle: Stoer/Bulirsch: Numerische Mathematik 1; Springer. Seminar Numerik 1 Numerische Effekte Numerische Effekte Seminar Numerik 1 Numerische Effekte Numerische Effekte Auslöschung entsteht bei Subtraktion von nahezu gleichgroßen Werten. Seminar Numerik 1 Numerische Effekte Numerische Effekte Auslöschung entsteht bei Subtraktion von nahezu gleichgroßen Werten. Aufgabe 1 Gegeben sind die beiden Terme √ x2 + x − x und √ x2 x +x+x Seminar Numerik 1 Numerische Effekte Numerische Effekte Auslöschung entsteht bei Subtraktion von nahezu gleichgroßen Werten. Aufgabe 1 1 √ x +x+x Man zeige, dass die beiden Terme gleichwertig sind! Gegeben sind die beiden Terme x2 + x − x und √ x2 Seminar Numerik 1 Numerische Effekte Numerische Effekte Auslöschung entsteht bei Subtraktion von nahezu gleichgroßen Werten. Aufgabe 1 1 √ x +x+x Man zeige, dass die beiden Terme gleichwertig sind! Gegeben sind die beiden Terme x2 + x − x und √ x2 Seminar Numerik 1 Numerische Effekte Numerische Effekte Auslöschung entsteht bei Subtraktion von nahezu gleichgroßen Werten. Aufgabe 1 1 2 √ x +x+x Man zeige, dass die beiden Terme gleichwertig sind! Gegeben sind die beiden Terme x2 + x − x und √ x2 Man berechne mit den Taschenrechner den Wert der Terme für die Argumente x = 10, x = 108 , x = 1018 Seminar Numerik 1 Numerische Effekte Numerische Effekte Auslöschung entsteht bei Subtraktion von nahezu gleichgroßen Werten. Aufgabe 1 1 2 √ x +x+x Man zeige, dass die beiden Terme gleichwertig sind! Gegeben sind die beiden Terme x2 + x − x und √ x2 Man berechne mit den Taschenrechner den Wert der Terme für die Argumente x = 10, x = 108 , x = 1018 Seminar Numerik 1 Numerische Effekte Numerische Effekte Auslöschung entsteht bei Subtraktion von nahezu gleichgroßen Werten. Aufgabe 1 1 2 √ x +x+x Man zeige, dass die beiden Terme gleichwertig sind! Gegeben sind die beiden Terme x2 + x − x und √ x2 Man berechne mit den Taschenrechner den Wert der Terme für die Argumente x = 10, x = 108 , x = 1018 Was kann man feststellen? Seminar Numerik 1 Numerische Effekte Numerische Effekte Lösung x √ x2 + x − x √ x x2 + x + x Seminar Numerik 1 Numerische Effekte Numerische Effekte Lösung x 10 √ x2 + x − x √ x x2 + x + x Seminar Numerik 1 Numerische Effekte Numerische Effekte Lösung x 10 √ x2 + x − x 0, 4880884 √ x x2 + x + x Seminar Numerik 1 Numerische Effekte Numerische Effekte Lösung x 10 √ x2 + x − x 0, 4880884 x x2 + x + x 0, 4880884 √ Seminar Numerik 1 Numerische Effekte Numerische Effekte Lösung x 10 108 √ x2 + x − x 0, 4880884 x x2 + x + x 0, 4880884 √ Seminar Numerik 1 Numerische Effekte Numerische Effekte Lösung x 10 108 √ x2 + x − x 0, 4880884 0, 5 x x2 + x + x 0, 4880884 √ Seminar Numerik 1 Numerische Effekte Numerische Effekte Lösung x 10 108 √ x2 + x − x 0, 4880884 0, 5 x x2 + x + x 0, 4880884 0, 49999999 √ Seminar Numerik 1 Numerische Effekte Numerische Effekte Lösung x 10 108 1018 √ x2 + x − x 0, 4880884 0, 5 x x2 + x + x 0, 4880884 0, 49999999 √ Seminar Numerik 1 Numerische Effekte Numerische Effekte Lösung x 10 108 1018 √ x2 + x − x 0, 4880884 0, 5 0, 0 x x2 + x + x 0, 4880884 0, 49999999 √ Seminar Numerik 1 Numerische Effekte Numerische Effekte Lösung x 10 108 1018 √ x2 + x − x 0, 4880884 0, 5 0, 0 x x2 + x + x 0, 4880884 0, 49999999 0, 5 √ Seminar Numerik 1 Numerische Effekte Numerische Effekte Lösung x 10 108 1018 √ x2 + x − x 0, 4880884 0, 5 0, 0 x x2 + x + x 0, 4880884 0, 49999999 0, 5 √ Fazit: Es ist zu erkennen, dass bei der Berechnung von analytisch äquivalenten Ausdrücken, unterschiedliche Ergebnisse auftreten können. Seminar Numerik 1 Numerische Effekte Numerische Effekte Beispiel Gegeben sind die beiden Terme 1 − x x1 und x − exp (ln(x)) Welchen exakten Wert haben beide Terme? In einem Rechner können die Werte für x = 10, 108 , 1018 wie folgt berechnet sein: x 1 − x x1 x − exp (ln(x)) −17 10 −5, 55111512313 ∗ 10 −1, 77635683940 ∗ 10−15 8 −17 10 −2, 09251019290 ∗ 10 −1, 78813934326 ∗ 10−7 1018 −7, 15573433840 ∗ 10−17 1, 408000000 ∗ 103 Seminar Numerik 1 Numerische Effekte Numerische Effekte Fazit: Ausdrücke, welche eigentlich Null sein müssten, sind bei der numerischen Berechnung fast nie genau Null. Meist liegen sie nur in einer Umgebung von Null. Dies ist bei Abbruchtests zu beachten! Seminar Numerik 1 Computerarithmetik Normalisierte Gleitkommazahl Eine normalisierte Gleitkommazahl z 6= 0 ist eine reelle Zahl der Form z = ±M · bE , wobei Seminar Numerik 1 Computerarithmetik Normalisierte Gleitkommazahl Eine normalisierte Gleitkommazahl z 6= 0 ist eine reelle Zahl der Form z = ±M · bE , wobei b ∈ N, b ≥ 2 die Basis der Gleitkommazahl Seminar Numerik 1 Computerarithmetik Normalisierte Gleitkommazahl Eine normalisierte Gleitkommazahl z 6= 0 ist eine reelle Zahl der Form z = ±M · bE , wobei b ∈ N, b ≥ 2 die Basis der Gleitkommazahl Pt M = 0.m1 m2 · · · mt = i=1 mi · b−i die Mantisse der Gleitkommazahl mit den Mantissenstellen mi ∈ {0, 1, · · · , b − 1}, m1 6= 0 und t die Anzahl der Mantissenstellen Seminar Numerik 1 Computerarithmetik Normalisierte Gleitkommazahl Eine normalisierte Gleitkommazahl z 6= 0 ist eine reelle Zahl der Form z = ±M · bE , wobei b ∈ N, b ≥ 2 die Basis der Gleitkommazahl Pt M = 0.m1 m2 · · · mt = i=1 mi · b−i die Mantisse der Gleitkommazahl mit den Mantissenstellen mi ∈ {0, 1, · · · , b − 1}, m1 6= 0 und t die Anzahl der Mantissenstellen E der Exponent E ∈ [E1 , E2 ], E, E1 , E2 ∈ Z und E1 < 0 < E2 . Seminar Numerik 1 Computerarithmetik Normalisierte Gleitkommazahl Eine normalisierte Gleitkommazahl z 6= 0 ist eine reelle Zahl der Form z = ±M · bE , wobei b ∈ N, b ≥ 2 die Basis der Gleitkommazahl Pt M = 0.m1 m2 · · · mt = i=1 mi · b−i die Mantisse der Gleitkommazahl mit den Mantissenstellen mi ∈ {0, 1, · · · , b − 1}, m1 6= 0 und t die Anzahl der Mantissenstellen E der Exponent E ∈ [E1 , E2 ], E, E1 , E2 ∈ Z und E1 < 0 < E2 . Durch die Normalisierungsvorschrift m1 ≥ 1 ist die Darstellung eindeutig. Die Menge der Gleitkommazahl wird mit Fb,t bezeichnet. Seminar Numerik 1 Computerarithmetik Fließkommarealisierung Seminar Numerik 1 Computerarithmetik Fließkommarealisierung Man kann bei den Grundrechenarten nicht erwarten, dass die Verknüpfung zweier Maschinenzahlen wieder eine Maschinenzahl ist. Als Modell verwenden wir deshalb für die Grundrechenarten folgende Fließkommarealisierungen: (a)x ⊕ y = f l(x + y), (b)x y = f l(x − y), (c)x y = f l(x · y), (d)x y = f l(x/y), entsprechend für sogenannte Standardfunktionen f (x) = f l(f (x)), etwa mit f ∈ {sqrt, exp, log, sin, cos, arctan, . . . } Seminar Numerik 1 Wiederholung Rechnerarithmetik Wiederholung Aufgabe5 In der Arithmetik von F10,3 berechne man den folgenden Wert: y = (x1 · x2 + x3 · x4 )(x5 − x6 ) wobei x1 = 0, 234; x2 = 0, 341; x3 = 0, 123; x4 = 0, 143; x5 = 0, 157; x6 = 0, 888 sind. Weitere Aufgaben siehe Präsenzübung Seminar Numerik 1 Wiederholung Rechnerarithmetik Wiederholung Aufgabe5 In der Arithmetik von F10,3 berechne man den folgenden Wert: y = (x1 · x2 + x3 · x4 )(x5 − x6 ) wobei x1 = 0, 234; x2 = 0, 341; x3 = 0, 123; x4 = 0, 143; x5 = 0, 157; x6 = 0, 888 sind. Weitere Aufgaben siehe Präsenzübung Seminar Numerik 1 Wiederholung Rechnerarithmetik Wiederholung Aufgabe5 In der Arithmetik von F10,3 berechne man den folgenden Wert: y = (x1 · x2 + x3 · x4 )(x5 − x6 ) wobei x1 = 0, 234; x2 = 0, 341; x3 = 0, 123; x4 = 0, 143; x5 = 0, 157; x6 = 0, 888 sind. Weitere Aufgaben siehe Präsenzübung Seminar Numerik 1 Kommutativgesetz Kommutativgesetz Seminar Numerik 1 Kommutativgesetz Kommutativgesetz Aufgabe 3 Berechne für a = 1020 , b = 10, c = 17 und d = 130 die folgenden Terme 1 a + c − b + d − a =? Seminar Numerik 1 Kommutativgesetz Kommutativgesetz Aufgabe 3 Berechne für a = 1020 , b = 10, c = 17 und d = 130 die folgenden Terme 1 a + c − b + d − a =? 2 a + c − b − a + d =? Seminar Numerik 1 Kommutativgesetz Kommutativgesetz Aufgabe 3 Berechne für a = 1020 , b = 10, c = 17 und d = 130 die folgenden Terme 1 a + c − b + d − a =? 2 a + c − b − a + d =? 3 a + c − a − b + d =? Seminar Numerik 1 Kommutativgesetz Kommutativgesetz Aufgabe 3 Berechne für a = 1020 , b = 10, c = 17 und d = 130 die folgenden Terme 1 a + c − b + d − a =? 2 a + c − b − a + d =? 3 a + c − a − b + d =? 4 a − a + c − b + d =? Seminar Numerik 1 Kommutativgesetz Kommutativgesetz Aufgabe 3 Berechne für a = 1020 , b = 10, c = 17 und d = 130 die folgenden Terme 1 a + c − b + d − a =? 2 a + c − b − a + d =? 3 a + c − a − b + d =? 4 a − a + c − b + d =? 5 a + c + d − a − b =? Seminar Numerik 1 Kommutativgesetz Kommutativgesetz Lösung Seminar Numerik 1 Kommutativgesetz Kommutativgesetz Lösung 1 a+c−b+d−a=0 Seminar Numerik 1 Kommutativgesetz Kommutativgesetz Lösung 1 a+c−b+d−a=0 2 a + c − b − a + d = 130 Seminar Numerik 1 Kommutativgesetz Kommutativgesetz Lösung 1 a+c−b+d−a=0 2 a + c − b − a + d = 130 3 a + c − a − b + d = 120 Seminar Numerik 1 Kommutativgesetz Kommutativgesetz Lösung 1 a+c−b+d−a=0 2 a + c − b − a + d = 130 3 a + c − a − b + d = 120 4 a − a + c − b + d = 137 Seminar Numerik 1 Kommutativgesetz Kommutativgesetz Lösung 1 a+c−b+d−a=0 2 a + c − b − a + d = 130 3 a + c − a − b + d = 120 4 a − a + c − b + d = 137 5 a + c + d − a − b = −10 Seminar Numerik 1 Kommutativgesetz Kommutativgesetz Lösung 1 a+c−b+d−a=0 2 a + c − b − a + d = 130 3 a + c − a − b + d = 120 4 a − a + c − b + d = 137 5 a + c + d − a − b = −10 Seminar Numerik 1 Kommutativgesetz Kommutativgesetz Lösung 1 a+c−b+d−a=0 2 a + c − b − a + d = 130 3 a + c − a − b + d = 120 4 a − a + c − b + d = 137 5 a + c + d − a − b = −10 Fazit: In vielen Fällen verliert das Kommutativgesetz (auch das Assoziativgesetz) bei der Berechnung mit dem Computer seine Gültigkeit!!!