Numerisches Gesucht ist eine Lösung der Gleichung f(x) = 0. Das sverfahren ist eine numerische Methode zur Bestimmung einer Nullstelle. Es basiert auf dem Zwischenwertsatz: Satz (1.1.1) Zwischenwertsatz: Sei f : [a, b] R stetig mit f(a) < 0 f(b) > 0. Dann existiert eine Zwischenstelle ξ (a, b) mit f(ξ) = 0.
Darstellung des Zwischenwertsatzes Sei f : [a, b] R stetig mit f(a) < 0 f(b) > 0. Dann existiert eine Zwischenstelle ξ (a, b) mit f(ξ) = 0.
: Algorithmus 1 Initialisierung: x 1 = a, x 2 = b, f 1 = f(x 1 ), f 2 = f(x 2 ), δ = 10 5 2 Iteration: a) Bestimme Intervallmitte: x 3 = 1 2 (x 1 + x 2 ) b) Bestimme Funktionswert: f 3 = f(x 3 ) c) Festlegung des neuen Intervalls: i) falls f 3 f 2 0 (Nullstelle zwischen x 2 x 3), dann x 1 := x 3 f 1 := f 3 ii) falls f 3 f 2 > 0 (Nullstelle zwischen x 1 x 3), dann x 2 := x 3 f 2 := f 3 d) Abbruchbedingungen i) falls x 2 x 1 δ, dann x 3 := ξ Stop ii) falls x 2 x 1 > δ, dann weiter mit a)
Bemerkungen zum sverfahren Das sverfahren liefert nur eine Nullstelle im Intervall I = [a, b]. δ ist Abbruchskriterium sollte nicht kleiner als die Rechengenauigkeit sein. Beispiel Gegeben ist die Funktion f(x) = x 3 x 2 + 1 im Intervall I = [1, 2] Da f(1) = 0.4142 f(2) = 5.7639 liegt nach dem Zwischenwertsatz eine Nullstelle im Intervall I = [1, 2]. 1. Schritt des Algorithmus: x 3 = 1.5 f(1.5) = 1.5722 usw. Nach 13 Iterationen ergibt sich als Nullstelle: ξ = 1.1509.
Beispiel Es soll die n-ten Wurzel x = n a für a 0, a 1 berechnet werden. Diese Aufgabe ist äquivalent mit dem folgenden Nullstellenproblem: x = n a f(x) = x n a = 0 z.b. x = 5 8 f(x) = x 5 8 = 0.
Das ist die am häufigsten eingesetzte Methode zur numerischen Bestimmung einer Nullstelle f(x) = 0 im Intervall I = [a, b], da es eine schnelle Konvergenz bestitzt. Iteratives Verfahren: Man startet mit einem Startwert x 0, berechnet die Tangente an die Funktion f(x) in x 0 bestimmt den Schnittpunkt mit der x-achse. Dieser Schnittpunkt wird der neue Punkt x 1, an dem die nächste Tangente berechnet wird wieder der Schnittpunkt mit der x-achse usw..
Darstellung des s
Formeln zum Tangentengleichung in x 0 : y = f(x 0 ) + f (x 0 )(x x 0 ) Schnittpunkt x 1 mit der x-achse, d.h. für y = 0: 0 = f(x 0 ) + f (x 0 )(x 1 x 0 ) x 1 = x 0 f(x 0) f (x 0 )
Newton: Algorithmus 1 Initialisierung: wähle x 0 δ := 10 5 2 Iteration: a) Newton-Formel: x n+1 = x n f(x n) f, n = 0, 1, 2, 3,... (x n ) b) Abbruchbedingung: i) falls x n+1 x n < δ, dann δ = x n+1; Stop ii) falls x n+1 x n δ, dann weiter mit a).
Eigenschaften des s schnelle Konvergenz (wenige Iterationsschritte) bei einem schlechten Startwert kann das Verfahren divergieren. Ausweg: Finde über das sverfahren zunächst einen guten Startwert. die Ableitung f (x) muss existieren das Verfahren ist erweiterbar auf Funktion mehrerer Veränderlicher f(x, y,...)
Beispiel Gegeben ist die Funktion f(x) = x 3 x 2 + 1, im Intervall I = [1, 2]. Die Ableitung lautet: f (x) = 3x 2 x x 2 +1. Die Newton-Iteration ergibt: n x n f(x n ) 0 1.5 1.5722 1 1.2343 0.2920 2 1.1573 0.0207 3 1.1510 0.0001 4 1.1509 0.6 10 8 d.h. nach 4 Iterationen hat man die Nullstelle bis auf 8 Dezimalstellen genau bestimmt.
Das benötigt die Berechung der ersten Ableitung von f(x). Falls dies nicht möglich ist, ist das Regula falsi Verfahren eine alternative Methode zur Lösung der Gleichung f(x) = 0. Hierzu werden zwei Startwerte x 0 x 1 benötigt. Geometrisch: Statt einer Tangente wird eine Sekante zwischen den Punkten (x 0, f(x 0 )) (x 1, f(x 1 )) bestimmt dann der Schnittpunkt x 2 der Sekanten mit der x-achse berechnet. Daraus ergibt sich ein neuer Punkt (x 2, f(x 2 )), der zusammen mit (x 1, f(x 1 )) den nächsten Iterationsschritt bildet, usw..
Darstellung des Regula fals Verfahrens
Formeln zum Verfahren Sekantengleichung in x 0 x 1 : f(x 1 ) f(x 0 ) x 1 x 0 = y f(x 0) x x 0 Schnittpunkt x 2 mit der x-achse, d.h. für y = 0: x 2 = x 0 f(x 0 ) x 1 x 0 f(x 1 ) f(x 0 )
Konstruktion der Sekanten
: Algorithmus 1 Initialisierung: wähle x 0, x 1 δ := 10 5 2 Iteration: a) Sekanten-Formel: x n x n 1 x n+1 = x n 1 f(x n 1 ) f(x n ) f(x n 1 ) b) Abbruchbedingung: i) falls x n+1 x n < δ, dann δ = x n+1; Stop ii) falls x n+1 x n δ, dann weiter mit a).
Bemerkungen die Konvergenz des Verfahrens ist langsamer als die des s Bei Nullstellen von Polynomausdrücken ist das Horner-Schema zur Auswertung der Funktionswerte f(x 1 ) sehr geeignet. Es kann außerdem zur Berechnung der Ableitung f (x 1 ) an einem Punkt x 1 angewendet werden. Bei dem muss in jedem Iterationsschritt f(x n ) f (x n ) berechnet werden. Hierzu ist es schnell, das doppelte Horner-Schema zu verwenden.
Horner-Schema zur Auswertung der Ableitung Gegeben ist ein Polynomausdruck: f(x) = (x x 1 ){b k x k 1 + b k 1 x k 2 +... + b 2 x + b 1 } + b 0 Mit der Produktregel folgt } f (x) = {b k x k 1 + b k 1 x k 2 +... + b 2 x + b 1 + } (x x 1 ) {(k 1)b k x k 2 + (k 2)b k 1 x k 3 +... + b 2 f (x 1 ) = {b k x k 1 1 + b k 1 x k 2 1 +... + b 2 x 1 + b 1 } mit dem Horner-Schema ergeben sich die Koeffizienten b i : c k = b k c i 1 = b i 1 + c i x x, i = k, k 1,..., 2 f (x 1 ) = c 1.
Doppeltes Horner-Schema Beispiel Gegeben ist die Funktion f(x) = 4x 3 5x 2 + 2x + 1. Gesucht ist der Wert der Funktion f(x) der Wert der Ableitung f (x) jeweils an der Stelle x 1 = 2. 4 5 2 1 + 2 4 2 3 8 2 4 3 8 17 = f(2) + 2 4 2 11 4 11 30 = f (2)