6 5 Numerische Mathematik Die Numerische Mathematik setzt sich aus mehreren Einzelmodulen zusammen Für alle Studierenden ist das Modul Numerische Mathematik I: Grundlagen verpflichtend In diesem Modul lernen Sie sowohl numerische Verfahren kennen, die sich auf Ergebnisse aus der Linearen Algebra als auch auf Ergebnisse aus der Analysis beziehen a) Numerische Lineare Algebra In der Linearen Algebra lernen Sie den Gauß-Algorithmus kennen, mit dem man lineare Gleichungssysteme lösen kann In der Numerik-Vorlesung wird darauf eingegangen, welche Vorkehrungen getroffen werden müssen, damit die (theoretisch zu erzielenden) Ergebnisse auch numerisch, dh im Rahmen der Rechengenauigkeit sinnvoll sind Wir rechnen mit einer endlichen Menge von Zahlen; in der Regel sind dies die sog Gleitpunktzahlen des Rechners Definition Gleitpunktzahlen sind die 0 und alle Zahlen z = ± m 10 i, wobei m = t a k 10 k k=1 ein endlicher Dezimalbruch mit m 0, Ziffern a k {0, 1,, 9} und i Z aus dem Intervall I = [ I 1, I ] Z ist Die Zahl i sei dabei so gewählt, dass a 1 0 ist (dh 0 m < 1 gilt) m heißt Mantisse, i Exponent von z Die Menge aller Gleitpunktzahlen mit diesen Parametern bezeichnen wir mit F (10, t, I 1, I ) Betrachten wir zb F (10, 3, 10, 10), so sind für m alle Zahlen mit 3 Stellen nach dem Komma, wobei die führende Ziffer von Null verschieden ist, also alle Zahlen der Form 0100, 0110,, 0999 möglich und damit für z alle Zehner-Potenzen hiervon mit den Faktoren 10 10 bis 10 10 Die Zahl 9999 ist in F (10, 3, 10, 10) nicht darstellbar Sie muss zu der nächstgelegenen Zahl aus F (10, 3, 10, 10) gerundet werden Dies ist die Zahl 10 5 10 1 = 0100 10 5 Dafür schreibt man (10 4 1) R = 0100 10 5 Die Zahl 10 4 ist ebenfalls in F (10, 3, 10, 10) nicht darstellbar; für sie gilt auch (10 4 ) R = 0100 10 5 Betrachten wir nun das folgende Gleichungssystem in F (10, 3, 10, 10): (I) 0100 10 3 x 1 + 0100 10 1 x = 0100 10 1 (II) 0100 10 1 x 1 + 0100 10 1 x = 000 10 1 Als exakte Lösung erhalten wir: x 1 = 104 10 4 1 und x = 104 10 4 1 Ein Programm möge folgendermaßen arbeiten: Gleichung (I) werde mit 10 4 multipliziert, und davon wird Gleichung (II) subtrahiert Man erhält: (I ) x 1 + 10 4 x = 10 4
63 (II) x 1 + x = Also (I ) - (II) exakt: (II ) (10 4 1) x = 10 4 Aber in F (10, 3, 10, 10) wird folgendermaßen gerechnet: also woraus (10 4 1) R x = (10 4 ) R, 0100 10 5 x = 0100 10 5 (Auslöschung signifikanter Stellen), folgt Setzt man in Gleichung (I) ein, so folgt: also x = 1 0100 10 3 x 1 + 0100 10 1 1 = 0100 10 1, x 1 = 0 Über solche Phänomene muss man sich bei dem Einsatz des Gauß-Algorithmus im Klaren sein Es gibt Möglichkeiten, dies zu verhindern Der Gauß-Algorithmus ist ein direktes Verfahren zur Lösung linearer Gleichungssysteme; man kann solche Gleichungssysteme auch iterativ lösen Dazu schreibt man zb die Koeffizientenmatrix des Gleichungssystems A x = b mit einer quadratischen (m m)-matrix A in der Form A = L + D + R mit einer echten unteren Dreiecksmatrix L, 0 0 0 a 1 0 0 L = a m1 a m,m 1 0 einer invertierbaren Diagonalmatrix D a 11 0 D = 0 a mm und einer echten oberen Dreiecksmatrix R 0 a 1 a 1m R = 0 0 a m 1,m 0 0 0
64 Dann schreibt man das Gleichungssystem in der Form D x = b (L + R) x x = D 1 (L + R) x + D 1 b Mit diesem Ansatz definiert man mit einem beliebigen Startwert x (0) (x (n) ) n 0 durch x (n+1) = D 1 (L + R) x (n) + D 1 b rekursiv eine Folge Unter geeigneten Voraussetzungen an die Matrix D 1 (L + R) erhalten wir eine konvergente Folge (x (n) ) n 0 im R m Notwendig und hinreichend für die Konvergenz des Verfahrens ist, dass der betragsgrößte Eigenwert der sog Iterationsmatrix D 1 (L + R) kleiner als 1 ist Hier sieht man, dass Kenntnisse aus der Linearen Algebra (Eigenwerte von Matrizen) und aus der Analysis (Konvergenz) erforderlich sind Ein anderes Thema in der Numerik ist die iterative Berechnung von Eigenwerten von Matrizen und die Abschätzung von Eigenwerten b) Nichtlineare Gleichungen und Gleichungssysteme Wenn man sich an dem Newton-Verfahren zur Bestimmung von Nullstellen differenzierbarer Funktionen (unter geeigneten Voraussetzungen) orientiert, erhält man ein Verfahren, das zur Nullstellenbestimmung von nichtlinearen Gleichungen und Gleichungssystemen geeignet ist Wie läuft das Newton-Verfahren ab? Wir starten in der Nähe einer Nullstelle, sagen wir x 0, und ersetzen den Graphen der Funktion f, von der wir eine Nullstelle berechnen wollen, durch die Tangente an den Graphen im Punkt (x 0, f(x 0 )) Der Schnittpunkte der Tangente mit der x-achse wird dann als neue Näherung genommen Die Tangentengleichung lautet: Der Schnittpunkt mit der x-achse ist hieraus resultiert das Iterationsverfahren y = f(x 0 ) + f (x 0 )(x x 0 ) x 1 = x 0 f(x 0) f (x 0 ) ; x n+1 = x n f(x n) f (x n ) = x n (f (x n )) 1 f(x n ), das unter geeigneten Forderungen an f konvergiert Dieses Verfahren wird auch eingesetzt zur Nullstellenbestimmung von Funktionen f : R n R n, dh von Abbildungen x 1 f 1 (x 1,, x n ) f(x) = x n f n (x 1,, x n ) Dabei ist (f (x n )) 1 die Inverse der Funktionalmatrix der Abbildung f Wie man eine Funktionalmatrix berechnet, lernt man im Grundlagenmodul Analysis, wie man die Inverse einer quadratischen Matrix berechnet, lernt man im Grundlagenmodul Lineare Algebra
65 c) Interpolation und Integration Will man einem krummlinig begrenzten Flächenstück eine Flächenmaßzahl zuordnen, so wird man auf die Fragestellung der Integration geführt; als einfachste Situation betrachtet man ein Flächenstück, das durch die x-achse, zwei Parallelen zur y-achse durch die Punkte (a, 0) und (b, 0) mit a < b und den Graphen einer nichtnegativen, beschränkten Funktion f : [a, b] R begrenzt wird In manchen Situationen gibt es zu f eine sog Stammfunktion F mit F = f; dann gilt für die gesuchte Flächenmaßzahl µ(f) b a: µ(f) b a = F (b) F (a) Häufig gibt es zu f keine, in elementarer Form darstellbare Funktion F ; dann ist man dazu gezwungen, die Zahl µ(f) b a näherungsweise zu berechnen; das ist Thema der numerischen Integration Dazu unterteilt man das zugrundeliegende Intervall [a, b] in äquidistante Teilintervalle [x i, x i+1 ] mit x i+1 x i = h = b a n, dh a = x 0 < x 1 < < x n 1 < x n = b Als Ersatz für die Flächenmaßzahl µ(f) x i+1 x i wählen wir die Rechteckfläche mit dem Inhalt und damit als Ersatz für µ(f) b a die Näherung M i = h f(x i + h ) n 1 M h (f) = h f(x i + h n 1 ) = h f(x i + h ) i=0 Dies ist die Mittelpunktregel Statt der Rechteckfläche können wir auch die Trapezfläche mit den Eckpunkten (x i, 0), (x i+1, 0), (x i+1, f(x i+1 )), (x i, f(x i )) betrachten, und erhalten sowie i=0 T i = h (f(x i) + f(x i+1 )) T h (f) = h n 1 f(a) + h f(x i ) + h f(b) Dies ist die Trapezregel In Abhängigkeit von der Glattheit der Funktion f kann man angeben, wie groß der Fehler ist, wenn man die exakte Flächenmaßzahl µ(f) b a durch M h (f) bzw T h (f) ersetzt Natürlich kann man noch viele andere Ersatzmöglichkeiten angeben Man kann die näherungsweise Integration auch folgendermaßen auffassen: wir ersetzen im Fall der Mittelpunkt-Regel die gegebene Funktion f durch die stückweise konstante Funktion g mit ( g 0 (x) = f x i + h ) für x [x i, x i+1 ] und berechnen dann µ(g 0 ) b a = M h (f) Im Fall der Trapez-Regel ersetzen wir f durch die stückweise lineare Funktion h mit g 1 (x) = f(x i ) + f(x i+1 f(x i ) (x x i ) für x [x i, x i+1 ] h i=1
66 Es entsteht ein Polygonzug durch die Punkte und es gilt (a, f(a)), (x 1, f(x 1 )),, (x n 1, f(x n 1 )), (b, f(b)), µ(g 1 ) b a = T h (f) Ist die gegebene Funktion f strikt konvex, dh gilt f (x) > 0 für alle x [a, b], so ist T h (f) immer größer als die gesuchte Flächenmaßzahl µ b a Ersetzen wir aber auf dem Teilintervall [x i, x i+1 ] die Funktion durch eine Parabel durch die Punkte so erhalten wir die Funktion g mit g (x) = ( [(x x h i + h (x i, f(x i )), (x i + h, f(x i + h )), (x i+1, f(x i+1 )), )) (x x i+1 )f(x i ) + (x x i )(x x i+1 )f ( ( + x x i + h )) ] (x x i )f(x i+1 ) ( x i + h ) Die Aufgabe, zu n + 1 paarweise verschiedenen vorgegebenen Punkten x 0,, x n ein Polynom höchstens n-ten Grades anzugeben, das an den Punkten x i vorgegebenen Werte y i annimmt, ist eine Interpolationsaufgabe In Abhängigkeit von den Punkten x i und den Daten y i kann die Aufgabe auch darin bestehen, statt des (algebraischen) Polynoms ein trigonometrisches Polynom oder eine Linearkombination eines anderen Funktionensystems zu betrachten Eine andere Verallgemeinerung besteht darin, nicht nur die Funktionswerte des Polynoms, sondern auch die Ableitungen des Polynoms an vorgegebenen Punkten vorzuschreiben