Kapitel 6 Nullstellen nach Newton Das Newtonsche Näherungsverfahren, auch Newton-Raphsonsche Methode1 , ist in der Mathematik ein Standardverfahren zur numerischen Lösung von nichtlinearen Gleichungen und Gleichungssystemen. Die grundlegende Idee dieses Verfahrens ist, die Funktion in einem Ausgangspunkt zu linearisieren, was z.B. bei Polynomen einfach ist. Ein Charakteristikum dieses Verfahrens ist, dass es im allgemeinen sehr schnell gute Näherungswerte liefert. 6.1 Polynome Sei K := R der Körper der reellen Zahlen. Mit Körper meinen wir nicht nur die Menge der Zahlen, die R enthält, sondern auch die uns vertrauten Rechenarten einschließlich der Rechenregeln. Ein Auszug davon ist: Addition a + b = b + a . Subtraktion a − b = b − a mit a − a = 0 . (0 ist die Null) Multiplikation ab = ba mit 1a = a . (1 ist die Eins) Division ab−1 = a/b mit bb−1 = 1 . (Achtung: b 6= 0!) Anordnung a > 0 oder a = 0 oder a < 0 . √ n Wurzel n a = a . (Achtung: a ≥ 0, d.h. a > 0 oder a = 0) Distributionelles Rechnen a(b + c) = ab + ac Betrag |a| = a, falls a ≥ 0, −a, sonst. Unten werden wir noch kurz auf den Körper K := C der komplexen Zahlen zu sprechen kommen. In diesem Zahlbereich ist Vorsicht bei der Wurzelberechnung geboten, eine Anordnung komplexer Zahlen existiert nicht! Betrachte p(x) := p(a0 ,...,an ) (x) = a0 + a1 x + · · · + an−1 xn−1 + an xn = n X ak xk , (6.1) k=0 Ein Ausdruck dieser Art heisst ein Polynom mit Koeffizienten a0 , . . . , an in R . Ist an 6= 0 und n ≥ 1, so sagen wir, dass das Polynom den Grad n hat, anderenfalls den Grad 0 . Wir fassen die Polynome zusammen in R[x]: R[x] := {p|p Polynom} . (6.2) Eine Teilmenge davon bilden die Polynome vom Grad höchstens n: Rn [x] := {p|p Polynom vom Grad ≤ n} . 1 Sir Isaac Newton, 1669 und Joseph Raphson, 1690 65 (6.3) Ein solches Polynom p ∈ R[x] kann man auch als Abbildung interpretieren: R ∋ x 7−→ p(x) ∈ R . Aus der Schulmathematik ist man vertraut mit Polynomen kleinen Grades: • Grad 0: Konstanten • Grad 1: Lineare Funktionen. • Grad 2: Parabeln (Graphen von quadratischen Polynomen) • Grad 3: Kubische Polynome Die Auswertung von p in einem Punkt x ∈ R kann durch Auswertung der Monome und Aufsummierung der Terme erfolgen. Man muss folgenden Aufwand betreiben: n Additionen und 1 + 2 + · · · + n = 21 n(n + 1) Multiplikationen. Ein effizientere Methode basiert auf der Beobachtung, dass jedes Polynom p = p(a0 ,...,an ) (siehe (6.1)) als p(x) = a0 + x(a1 + x(a2 + · · · + x(an−1 + an x) · · · )). (6.4) geschrieben werden kann. Diese Schreibweise eines Polynoms führt zur Horner–Methode zur Auswertung von Polynomen. Wir lesen ab, dass die Auswertung von p in x auf diese Weise mit Hilfe von n Additionen und n Multiplikationen erfolgen kann. Dieses Beobachtung kann als Geburtsstunde der Komplexitätstheorie für Algorithmen angesehen werden. Hier ist ein algorithmisches Fragment der Horner Methode: Horner–Methode: bn−1 := an ; for j = n − 2, n − 3, . . . , 0 do bj := aj+1 + xbj+1 ; p(x) = a0 + xb0 6.2 Interpolation mit Polynomen In der Praxis wissenschaftlichen Rechnens wird man häufig mit der Situation konfrontiert, dass von einem funktionalen Zusammenhang nur diskrete Datenpunkte vorliegen, sei es weil nicht mehr bekannt ist, sei es, weil die dem funktionalen Zusammenhang zu Grunde liegende Funktion nur sehr schwer zu handhaben ist. Um daraus wieder einen funktionalen Zusammenhang zurückzugewinnen, ist nach einer Methode gesucht, die diskreten Datenpunkte irgendwie“ zu ” verbinden. Grundsätzlich sind Polynome dazu sehr gut geeignet, denn sie haben eine Reihe sehr guter Eigenschaften für eine effiziente Nutzung: (1) Einfache Speicherung durch die Koeffizienten. (2) Effiziente Evaluation; siehe oben. (3) Einfache Manipulation (Addition, Differentiation, Integration, . . . ). (4) Gute Approximationseigenschaften; siehe Anhang 8.5. 66 Für die zuletzt genannte Eigenschaft benötigt man einen Abstandsbegriff für Funktionen. Dazu eignet sich, Funktionen punktweise zu vergleichen: Der Tschebychev-Abstand zweier Funktionen f, g : [a, b] −→ R ist gegeben durch kf − gk∞ := sup |f (x) − g(x)| . x∈[a,b] Hierin verbirgt sich ein Problem: ist das Supremum definiert, d.h. gibt es eine Schranke b mit |f (x) − g(x)| ≤ b für alle x ∈ [a, b] ? Für stetige Funktionen ist dies der Fall, wie wir aus Satz 5.1.2 wissen. Für solche ist das Supremum sogar ein Maximum, d.h. das Supremum wird durch einen Funktionswert von f − g realisiert. Die obige Fragestellung zur Darstellung eines funktionalen Zusammenhangs mittels Interpolation mit Polynomen lässt sich nun so formulieren: Interpolationsaufgabe Es seien n + 1 verschiedene Punkte (Stützstellen) x0 < x1 < . . . < xn auf der reellen Zahlengerade gegeben. Ferner seien so genannte Stützwerte y0 , . . . , yn+1 ∈ R gegeben. Finde ein Polynom p such that p(xi ) = yi for i = 0, . . . , n. p wird eine Interpolierende genannt. In der obigen Aufgabe haben wir noch den Grad des Polynoms offen gelassen. Klar sein sollte: ist der Grad zu klein, ist nicht zu erwarten, dass alle Interpolationsforderungen p(xi ) = yi erfüllt werden können, sind Polynoms mit großem Grad zugelassen, wird es in der Regel viele Polynome geben, die die Interpolationsforderungen p(xi ) = yi erfüllen. Es lässt sich daraus schließen, dass es wohl einen ausgezeichneten Grad gibt, der sicherstellt, dass die Aufgabe genau eine Lösung besitzt. Ein solcher lässt sich auch aus der Aufgabe ableiten: es sind n+1 Forderung gestellt, also benötigen wir n+1 Freiheiten, um diese Forderung zu erfüllen. Ein Polynom n-ten Grades hat n+ 1 Freiheitsgrade, nämlich n + 1 frei wählbare Koeffizienten. Also sollte die Interpolationsaufgabe mit dem Grad n gelöst werden können. Die Überraschung ist, dass wir dann eine Lösung explizit hinschreiben können, und zwar so: Wir definieren Polynome L0,n , . . . , Ln,n vom Grade n mit folgender Eigenschaft: Lj,n (xi ) = δij , i, j = 0, . . . , n , (6.5) wobei δi,j das so genannte Kronecker-Symbol ist.2 Solche Polynome existieren. Hier ist ihre Definition: n Y x − xk , x ∈ R. Lj,n(x) = xj − x k k=0,k6=j Da die Eigenschaft (6.5) offenbar erfüllt ist, können wir eine Lösung der Interpolationsaufgabe so hinschreiben: n X yj Lj,n (x) . (6.6) p(x) = j=0 2 δi,j := ( 1 0 falls i = j falls i = 6 j 67 Beispiel 6.2.1 Sei f die Exponentialfunktion: f (x) := ex , x ∈ R . Betrachte die Datenpunkte (xi , yi ), wobei yi = f (xi ), i = 1, 2, 3, und x1 = 0, x2 = 1, x3 = 2. Dann L0,2 (x) = (x − 1)(x − 2) 1 3 (x − x1 )(x − x2 ) = = x2 − x + 2 (x0 − x1 )(x0 − x2 ) (0 − 1)(0 − 2) 2 2 L1,2 (x) = (x − x0 )(x − x2 ) (x − 0)(x − 2) = = −x2 + 2x (x1 − x0 )(x1 − x2 ) (1 − 0)(1 − 2) L2,2 (x) = (x − 0)(x − 1) 1 1 (x − x0 )(x − x1 ) = = x2 − x (x2 − x0 )(x2 − x1 ) (2 − 0)(2 − 1) 2 2 Eine Lösung ist gegeben durch p(x) = 2 X j=0 = f (xj )Lj,2 (x) = 1 · L0,2 (x) + e · L1,2 (x) + e2 · L2,2 (x) 1 1 (e − 1)2 x2 − (e − 1)(e − 3)x + 1 2 2 Damit ist das Existenzproblem gelöst. Bleibt, für eine mathematisch befriedigende Betrachtung, die Eindeutigkeitsfrage. Diese ist mit einem einfachen analytischem Resultat zu klären. Hat man zwei Polynome p, q vom Grad n, die die Interpolationsaufgabe lösen, so gilt offenbar für f := p − q : f (xi ) = 0 , i = 0, . . . , n . Als Polynom ist f sicher differenzierbar. Dann gibt es jeweils zwischen xi und xi+1 ein ξ mit f ′ (ξ) = 0 , i = 0, . . . , n ; siehe Satz 5.2.2. Zählen wir ab: f hat n+1 Nullstellen, f ′ hat nun mindestens n Nullstellen. Fährt man so fort, erhält man, dass die n-te Ableitung f (n) immer noch eine Nullstelle hat. f (n) ist aber, da bei jeder Differentiation der Grad von f um Eins verringert wird, eine konstante Funktion, also notwendigerweise die Nullfunktion. Daraus schließt man, dass f (n−1) eine konstante Funktion ist, welche aber 2 Nullstellen hat, was nicht möglich ist, es sei denn f (n−1) ist die Nullfunktion. So fortfahrend erhält man, dass f = f (0) die Nullfunktion ist; p und q stimmen also überein. Die Darstellung der Lösung des Interpolationsproblems in 6.6 ist für die Berechnung nicht sehr gut geeignet. Es gibt numerisch stabilere und effizientere Berechnungverfahren; Stichwort ist die Newton-Darstellung. 6.3 Das Nullstellenproblem Wir betrachten nun das Problem der Auflösbarkeit von polynomialen Gleichungen mit Koeffizienten im Körper R . Eine Gleichung der Form x−c=0 (6.7) heißt eine lineare Gleichung. Der einzige Lösung ist x = c . Gegeben sei die quadratische Gleichung ax2 + bx + c = 0 68 (6.8) b , denn für y ergibt sich die für a 6= 0. Sie wird vereinfacht durch die Substitution y = x + 2a Gleichung b2 − 4ac , (6.9) y2 = 4a2 deren Lösungskandidaten auf der Hand liegen: y=± 1p 2 b − 4ac . 2a Die Lösungskandidaten von (6.8) werden damit mit x=− 1p 2 b b − 4ac ± 2a 2a (6.10) beschrieben. Aus der Gleichung (6.10) liest man auch die Methode der quadratischen Ergänzung ab: b b b2 b2 c (x + )2 = x2 + x + 2 = − + 2 . 2a a 4a a 4a Lösbarkeit der Gleichung (in R) liegt also vor, wenn b2 − 4ac ≥ 0 ist. Die Tatsache, dass keine Lösbarkeit vorliegt, wenn dies nicht der Fall ist, hat das Interesse für eine Erweiterung der reellen Zahlen zum Körper C der komplexen Zahlen geweckt (Hier liegt dann Lösbarkeit universell vor. Insbesondere hat die Gleichung x2 + 1 = 0 die Lösungen (Wurzeln) x = ±i.) Bemerkung 6.3.1 Aus der Formel (6.10) lesen wir ab, dass das Produkt der Lösungen der quadratischen Gleichung (6.8) für a = 1 gleich dem Koeffizienten c ist. Diese Tatsache bezeichnet man als Vietaschen Wurzelsatz. Betrachte die kubische Gleichung ax3 + bx2 + cx + d = 0 (6.11) b , denn für y ergibt sich die für a 6= 0. Sie wird vereinfacht durch die Substitution y = x + 3a Gleichung y 3 = py + q, wobei p, q gewisse rationale Ausdrücke in a, b, c, d sind. Diese Gleichung ist immer noch nicht einfach, aber folgende Substitution y = u + v 3 Diese Idee hilft weiter, denn es entsteht 3uv(u + v) + u3 + v 3 = p(u + v) + q. Wir spalten auf in 3uv = p , u3 + v 3 = q, p setzen v := 3u , und lösen u3 + ( p p 3 ) = q , d.h. (u3 )2 − qu3 + ( )3 = 0 . 3u 3 Dies ist eine quadratische Gleichung in u3 und wir haben mit (6.10) r p q q 3 u = ± ( )2 − ( )3 . 2 2 3 3 Die Idee mit den Hilfsgrößen u, v hatte wohl Scipione del Ferro (1465? – 1526), ausgearbeitet wurde sie dann von Niccolo Tartaglia (1500? – 1557) und Geronimo Cardano (1501 – 1576). 69 Die Symmetrie der Formeln in u und v hat zur Folge, dass sich für v nichts wesentlich Neues ergibt. Wir erhalten r r q 2 q q p 3 3 q p 3 u = + ( ) − ( ) , v = − ( )2 − ( )3 , 2 2 3 2 2 3 und daher x= s 3 q + 2 r p q ( )2 − ( )3 + 2 3 s 3 q ( − 2 r p b q ( )2 − ( )3 − . 2 3 3a (6.12) b gefunFür die ursprüngliche Gleichung (6.11) haben wir so einen Lösungskandidaten x = y − 3a den. Durch Division mit Rest reduzieren wir dann die Gleichung 3. Grades auf eine Gleichung 2. Grades und behandeln diese nach dem schon vorgestellten Verfahren für Gleichungen 2. Grades weiter. Betrachte die quartische Gleichung ax4 + bx3 + cx2 + dx + e = 0 (6.13) b vereinfacht zu für a 6= 0. Diese Gleichung wird durch die Substitution y = x + 4a y 4 + py 2 + qy + r = 0, wobei p, q, r gewisse rationale Ausdrücke in a, b, c, d, e sind. Wir schreiben sie um zu (y 2 + p)2 = py 2 − qy + p2 − r – dieser Reduktionsschritt geht wohl auf R. Descartes zurück – und erweitern (y 2 + p + u)2 = (py 2 − qy + p2 − r) + 2u(y 2 + p) + u2 mit beliebigem u ∈ K. Wähle nun u so, dass py 2 − qy + p2 − r + 2u(y 2 + p) + u2 = Ay 2 + By + C ein Quadrat wird; hierbei ist A := p + 2u, B := −q, C := p2 − r + 2up + u2 . Dies gelingt dann, wenn B 2 − 4AC = 0 gilt. Dies ist eine kubische Gleichung für u, die nach dem obigen Verfahren behandelt werden kann. Nach Wahl von u ziehen wir nun die Wurzel und lösen die resultierende quadratische b ergibt Lösungen für die Gleichung Gleichung für y. Einsetzen in die Substitution x = y − 4a (6.13). Betrachte das Polynom p(x) := p(a0 ,...,an ) (x) = a0 + a1 x + · · · + an−1 x n−1 n + an x = n X ak xk (6.14) k=0 mit den reellen Koeffizienten a0 , . . . , an . Wenn wir alle Nullstellen kennen, dann können wir das Polynom hinschreiben als Produkt der Linearfaktoren: m1 p(x) = an (x − z1 ) mk · · · (x − zk ) , k X ml = n l=1 wobei zl bzw. ml die l-te Nullstelle von p bzw. ihre Mehrfachheit bezeichnet. 70 Die Aussage, dass jedes nicht konstante Polynom mit Koeffizienten in R eine Nullstelle im Körper der komplexen Zahlen besitzt, wird der Fundamentalsatz der Algebra genannt. Alle bekannten Beweise dieses Satzes4 benützen offen oder versteckt auch das Konzept Stetigkeit“ ” aus der Analysis. Hier sind drei Probleme, die schon im Altertum formuliert wurden und die alle mit polynomialen Gleichungen zu tun haben. 1. Dreiteilung des Winkels (Teilung eines Winkels in drei gleiche Teile.) 2. Verdoppelung des Würfels (Konstruktion der Seite eines Würfels, dessen Volumen zweimal so groß ist wie das des gegebenen Würfels.) Es wird das Delische Problem genannt. 3. Quadratur des Kreises (Konstruktion eines Quadrates mit einer Fläche, die der Fläche eines gegebenen Kreises gleich ist.) Die Herausforderung bei der Beschäftigung mit den Problemen besteht darin, dass als Handi” cap“ verlangt wird, dass die Lösungen der Probleme mit Zirkel und Lineal konstruierbar sein sollen. Ob dies möglich ist, kann mit der algebraischen Theorie der Körpererweiterung beantwortet werden. Bezogen auf die Probleme bedeutet dies, dass gewisse den Problemen zugeordnete Polynome Nullstellen in Körpern besitzen, die aus dem Körper Q der rationalen Zahlen problembezogen in durchsichtiger Weise abgeleitet werden. Die Quadratur des Kreises kann nicht gelingen, da man nun weiß, dass die Kreiszahl π transzendet ist, also keine Nullstelle eines Polynoms mit rationalen Koeffizienten sein kann. Ebenso besitzt das Delische Problem keine Lösung mit Zirkel und Lineal. Auch das Problem der Winkeldreiteilung mit Zirkel und Lineal besitzt im allgemeinen keine Lösung. Etwa ist dies der Fall für die Dreiteilung von π . 6.4 Nullstellensuche nach Newton Isaac Newton beschreibt5 ein Rechenverfahren zum Lösen einer polynomialen Gleichung und begründet damit ein Verfahren, das heutzutage als Newtaon-Verfahren bezeichnet wird. Er tut dies am Beispiel des Polynoms p(x) := x3 − 2x − 5 = 0 . Eine leicht zu erratende Näherung 0-ter Ordnung“ ist x0 = 2, denn p(2) = −1 ist klein“. Newton machte den Ansatz ” ” x = 2 + p mit einem als klein“ angenommenen p und setzte diesen Ansatz in die Gleichung ein. ” Es gilt: x3 = (2 + p)3 = 8 + 12p + 6p2 + p3 , 2x = 2(2 + p) = 4 + 2p . Also folgt ! x3 − 2x − 5 = −1 + 10p + 6p2 + p3 = 0 . Da p als klein“ angenommen wurde, können die Terme höherer Ordnung gegen den linearen ” und konstanten Anteil vernachlässigt werden, womit 10p − 1 = 0 bzw. p = 0.1 übrig bleibt. Als Näherung x1 1-ter Ordng resultiert x1 = 2.1 . Wir können nun dieses Vorgehen wiederholen und p = 0.1 + q ansetzen, in die Gleichung p3 + 6p2 + 10p − 1 = 0 einsetzen, höhere Terme weglassen und q = −0.061/11.23 = −0.0054 . . . erhalten. Als Näherung x2 2-ter Ordnung resultiert x1 = 2.0946 . 4 C.F. Gauß (1777 – 1855) publizierte 1799 den ersten strengen Beweis, später gab er einige weitere Beweise dafür. 5 Isaac Newton, 1643–1727; Methodus fluxionum et serierum infinitarum“ ” 71 Raphson6 beschrieb diesen Rechenprozess formal und illustrierte den Formalismus an der allgemeinen Gleichung 3. Grades, die abstrakte Form des Verfahrens mit Benutzung von Ableitungen stammt von Thomas Simpson. Zur Simpsonschen Form kommen wir nun. Sei f : R −→ R . Eine Nullstele wird nach folgendem Vorgehen gesucht: (1) Man rät eine Näherung x0 . O.E. f (x0 ) 6= 0 . (2) Man berechnet/zeichnet die Tangente t0 an den Graphen von f im Punkt (x0 , f (x0 )) . (3) Man berechnet/konstruiert die Nullstelle x1 der Tangente. (4) Man setzt x0 := x1 und wiederholt den Vorgang, beginnend bei (1). Klar, um die Tangente bestimmen zu können, müssen wir voraussetzen, dass diese existiert, was die Differenzierbarkeit von f voraussetzt. Dann lautet die Tangentengleichung t0 : y = x0 + f ′ (x0 )(x − x0 ) (6.15) und die Berechnung der Nullstelle von t0 führt zur Formel x1 = x0 − f ′ (x0 )−1 f (x0 ) . (6.16) Hier tritt das Problem auf, dass f ′ (x0 ) 6= 0 gelten muss, d.h. dass f in (x0 , f (x0 )) keine waagrechte Tangente besitzt. Von der Anschauung her, keine überraschende Forderung, von der Analyse des Verfahrens her eine Forderung, die sukzessive oder a-priori sichergestellt werden muss. Schreiben wir das Verfahren nun kompakt auf: xn+1 := xn − f ′ (xn )−1 f (xn ) , n = 0, . . . . (6.17) Dabei ist die Startnäherung x0 zu wählen. Wir nennen dieses Vorgehen nun Newton–Verfahren; siehe Abbildung 6.1. Das Newton–Verfahren ist ein so genanntes lokal konvergentes Verfahren. Konvergenz der in der Newton–Iteration erzeugten Folge zu einer Nullstelle ist also nur garantiert, wenn der Startwert, d.h. das 0-te Glied der Folge, schon ausreichend ” nahe“ an der Nullstelle liegt. Ist der Startwert nicht gut genug, so haben wir zu rechnen mit: • Die Folge divergiert, der Abstand zur Nullstelle wächst über alle Grenzen. • Die Folge divergiert, bleibt aber beschränkt. Sie kann z.B. periodisch werden, d.h. endlich viele Punkte wechseln sich in immer derselben Reihenfolge ab. Man sagt auch, dass die Folge oszilliert (Bei f (x) := x3 − 2x + 2 ist dies machbar). t f(x) t x1 x0 x2 Abbildung 6.1: Newtonverfahren • Die Folge konvergiert, falls die Funktion mehrere Nullstellen hat, gegen eine andere als die gewünschte Nullstelle konvergieren; in der Abbildung 6.1 kann man dies erahnen. 6 Joseph Raphson, 1648–1715; Arbeit Analysis Aequationum universalis“ ” 72 Ist der Startwert x0 so gewählt, dass das Newton–Verfahren konvergiert, so ist die Konvergenz allerdings quadratisch, also mit der Konvergenzordnung 2 (falls die Ableitung an der Nullstelle nicht verschwindet). Bemerkung 6.4.1 Wie ordnet sich das Newtonsche Vorgehen hier nun ein? Ausgehend von der Startnäherung x0 = 2 wird ein Newtonschritt auf die Nullstellengleichung p(x + 2) = 0 mit x = 0 als Startnäherung angewendet: x1 := 0 − 1 p(2) . = ′ 10 p (2) Nun betrachtet man die Nullstellengleichung p(x + 2.1) = 0 mit x = 0 als Startnäherung und wendet wieder einen Newtonschritt mit Ausgangsnäherung x = 0 an: x2 := 0 − p(2.1) 0.061 . = 11.23 p′ (2.1) Und so weiter! Viele nichtlineare Gleichungen haben mehrere Lösungen, so hat ein Polynom n-ten Grades bis zu n Nullstellen. Will man alle Nullstellen in einem bestimmten Bereich D ⊂ R ermitteln, so muss zu jeder Nullstelle ein passender Startwert in D gefunden werden, für den das Newton–Verfahren konvergiert. Ein beliebtes Vorgehen dazu besteht in Einschachtelungsverfahren: zwischen zwei Punkten z 1 , z 2 , so dass f (z 1 ), f (z 2 ) unterschiedliche Vorzeichen besitzen, liegt immer eine Nullstelle von f, da wir ja Differenzierbarkeit von f (und damit Stetigkeit) voraussetzen. (Man erinnere sich an die Charakterisierung der Stetigkeit, einen Graph in einem Zug hinzeichnen zu können. Man kommt dann bei einer Funktion, die Werte unterschiedlichen Vorzeichens annimmt, unwillkürlcih beim Wert Null vorbei“.) ” Beispiel 6.4.2 Ein Spezialfall des Newtonschen Näherungsverfahrens ist das Babylonische Wurzelziehen, auch bekannt als Heronverfahren nach Heron von Alexandria: Wendet man das Verfahren zur Nullstellenbestimmung auf die Funktion f (x) := x2 − a (a > 0), so erhält man wegen √ der Ableitungsfunktion f ′ (x) = 2x für die Lösung a das Näherungsverfahren a 1 n (xn )2 − a x + = . xn+1 := xn − 2xn 2 xn Dieses Verfahren konvergiert für jedes a ≥ 0 und für jeden beliebigen Anfangswert x0 > 0 . Beispiel 6.4.3 Die Quadratwurzel einer Zahl a > 0 sind die Nullstellen der Funktion f (x) := 1− a/x2 . Diese Funktion hat die Ableitung f ′ (x) = 2a/x3 , die Newton-Iteration erfolgt also nach der Vorschrift xn (xn )2 (xn )3 xn + = 3− . xn+1 := xn − 2a 2 2 a Der Vorteil dieser Vorschrift gegenüber dem Wurzelziehen nach Heron (siehe Beispiel 6.4.2) ist, dass es divisionsfrei ist, sobald einmal der Kehrwert von a bestimmt wurde. Als Startwert wurde in der Tabelle x0 := (1 + a)/2 gewählt. Die Iterierten wurden an der ersten ungenauen Stelle abgeschnitten. Es ist zu erkennen, dass nach wenigen Schritten die Anzahl gültiger Stellen schnell wächst. n 0 1 2 3 4 5 xn bei a = 2 xn bei a = 3 xn bei a = 5 1, 5 2 3 1, 40 1, 6 1, 8 1, 4141 1, 72 2, 1 1, 41421355 1, 73203 2, 22 1, 41421356237309502 1, 7320508074 2, 23601 1, 414213562373095048801688724209697 1, 73205080756887729351 2, 236067975 73 Das Newton-Verfahren gilt als ein sehr effizientes Verfahren (in den Naturwissenschaften und anderswo). Worin ist dies begründet, obwohl das Problem der guten Startnäherung und die Tatsache, dass eine Ableitung ausgerechnet werden muss, schwer wiegen? Es liegt an vier Beobachtungen, die in der Literatur ausreichend diskutiert wurden und immer noch werden: (1) Das Verfahren hat eine naheliegende Erweiterung auf Aufgaben in mehreren Variablen. (2) Das Verfahren konvergiert unter gut zu durchschaubaren Voraussetzung (siehe unten) quadratisch, (3) Das Verfahren kann modifiziert werden, um die Berechnung der Ableitung in jedem Schritt zu vermeiden. Etwa durch: xn+1 := xn − f ′ (x0 )−1 f (xn ) , n = 0, . . . . (6.18) Allerdings ist dann die Konvergenzgeschwindigkeit schlechter. (4) Das Verfahren kann globalisiert werden, d.h. man kann Vorkehrungen einbauen, die sicherstellen, dass das so abgeänderte Verfahren auch bei schlechten“ Startwerten konvergiert; ” das Stichwort ist Schrittweitensteuerung: xn+1 := xn − λn f ′ (xn )−1 f (xn ) , n = 0, . . . . (6.19) Sei f eine dreimal differenzierbare Funktion mit einer Nullstelle z , in der die erste Ableitung nicht verschwindet, d.h. f ′ (z) 6= 0 . Diese Voraussetzung besagt, dass der Graph von f die x-Achse transversal schneidet“. Wir wissen aus ” 1 0f (z) = f (x) + f ′ (x)(z − x) + f ′′ (ξ)(z − x)2 2 und daher f(x) 1 f′′ (ξ) x − z = .′ + . ′ (x − z)2 . f (x) 2 f (x) Nun stellen wir so um, dass wir eine Verbindung mit der Newtoniteration sehen: f(x) 1 f′′ (ξ) x − z = x − .′ −z = .′ (x − z)2 . 2 f (x) f (x) Ist nun I ein Intervall um z, in dem die Ableitung von f nicht verschwindet – dies kann auf Grund der Tatsache, dass f ′ (z) 6= 0 gilt, sichergestellt werden – dann folgt mit m := inf |f ′ (x)| , M := max |f ′′ (x)| , K := x∈I x∈I M 2m die Abschätzung f(x) |x − .′ − z| ≤ K|x − z|2 , x ∈ I . f (x) Dies hat zur Konsequenz, dass für die Newtoniterierten xn gilt n K|xn − z| ≤ (K|x0 − z|)2 , n ∈ N0 , was man mittels vollständiger Induktion beweisen kann. Ist also K|x0 −z| < 1, dann wird |xn −z| sehr schnell klein. Bei der Bestimmung von Nullstellen von Polynomen ist folgender Hinweis wichtig: hat man eine Nullstelle z 0 gefunden, so kann man diese Nullstelle aus dem Polynom entfernen durch ” Polynomdivision durch den Linearfaktor x − z 0 ; man hat so den Grad des Polynoms um eins verkleinert. 74 Beispiel 6.4.4 Betrachte das Polynom p(x) := x3 − 3x2 − x + 3 . Es hat die Nullstelle x = 1, was man etwa erraten kann. Polynomdivision ergibt p(x) : (x − 1) = x2 − 2x − 3 und als weitere Nullstellen finden wir x = 1 und x = 3 . Division mit Rest ist nicht nur mit Linearfaktoren möglich. Allgemeiner führt man die Rechnung r(x) p(x) : q(x) = s(x) + q(x) durch. 6.5 Anhang: Realisierung des Newtonverfahrens in den komplexen Zahlen Die Tatsache, dass in R eine Anordnung existiert, zeigt, dass in R die Gleichung x2 + 1 = 0 (6.20) keine Lösung hat, da x2 nichtnegativ und 1 = 12 positiv ist. Wir erweitern nun die reellen Zahlen zu einem Körper der komplexen Zahlen. In diesem Körper hat dann die Gleichung (6.20) eine Lösung. Definiere in R2 die folgenden Verknüpfungen: + : R2 × R2 ∋ ((a, b), (c, d)) 7−→ (a + c, b + d) ∈ R2 , · : R2 × R2 ∋ ((a, b), (c, d)) 7−→ (ac − bd, ad + bc) ∈ R2 . (Addition) (Multiplikation) Dann sind (R2 , +) , (R2 \{(0, 0)}, ·) abelsche Gruppen . Das neutrale Element bzgl. der Addition ist (0, 0), das neutrale Element bzgl. der Multiplikation ist (1, 0) . Das Inverse von (a, b) ∈ R2 bzgl. der Addition ist (−a, −b), das Inverse von (a, b) 6= (0, 0) bzgl. der Multiplikation ist (a(a2 + b2 )−1 , −b(a2 + b2 )−1 ) . Mit diesen Verknüpfungen wird R2 ein Körper. Diesen Körper wollen wir nun den Körper der komplexen Zahlen nennen. Eine vielleicht eher bekannte Notation der Elemente von C ergibt sich aus der Darstellung (a, b) = (1, 0)a + (0, 1)b , (a, b) ∈ R2 . (6.21) Wir haben (1, 0) · (1, 0) = (1, 0) und (0, 1) · (0, 1) = (−1, 0) = −(1, 0) . Nun schreiben wir für das Einselement (1, 0) kurz 1 und für (0, 1) führen wir die imaginäre Einheit i ein. Dies bedeutet nun, daß wir wegen (6.21) jedes Element (a, b) ∈ C so (a, b) = a + ib , 75 schreiben können, wobei wir nochmal abgekürzt haben: Statt 1a haben wir einfach a geschrieben. Damit schreiben wir nun C := {a + ib|a, b ∈ R} und passen die Verknüpfungen an: + : C × C ∋ (a + ib, c + id) 7−→ (a + c) + i(b + d) ∈ C , (Addition) · : C × C ∋ (a + ib, c + id) 7−→ (ac − bd) + i(ad + bc) ∈ C . (Multiplikation) Ist z = a + ib eine komplexe Zahl, so heißt a Realteil und b Imaginärteil von z ; wir schreiben a = ℜz oder a = Rez , b = ℑz oder b = Imz . Wir unterscheiden nun nicht zwischen a+i0 ∈ C und a ∈ R und schreiben für a+ib manchmal auch a + bi . Beachte auch, daß in dieser Schreibweise nun aus a + ib = 0 stets a = b = 0 folgt. Definition 6.5.1 Sei z = a + √ ib eine komplexe Zahl. Die zu z konjugierte Zahl ist z := a − ib, der Betrag von z ist |z| := a2 + b2 . Offenbar gilt für jede komplexe Zahl die Identität |z|2 = zz . Ein Quotient z1 z2−1 , z2 6= 0, läßt sich dann wegen z1 z 2 z1 z 2 z1 z2−1 = = z2 z 2 |z2 |2 in ein Produkt komplexer Zahlen mit anschließender Division durch eine reelle Zahl überführen, z.B. 1 1−i 1−i 1 1 = = = + i 1+i (1 + i)(1 − i) 2 2 2 Da wir nun mit der Betragsfunktion eine Abstandsfunktion auf C haben, können wir die Kreisscheiben D̄r (z) := {z ′ ∈ C||z ′ − z| ≤ r} , D̄r := D̄r (0) , definieren. Ebenso ist die Konvergenz von Folgen definiert. Wir halten es nochmal fest: Definition 6.5.2 Sei (zn )n∈N eine Folge komplexer Zahlen. Wir sagen, dass (zn )n∈N gegen z ∈ C konvergiert, wenn ∀ ε > 0 ∃ N ∈ N ∀ n ≥ N (|zn − z| < ε) gilt. z heißt dann Grenzwert und wir schreiben z = lim zn . n∈N Es ist leicht einzusehen, dass eine Folge komplexer Zahlen (zn )n∈N genau dann konvergiert, wenn die Folgen (ℜzn )n∈N und (ℑzn )n∈N als reelle Zahlenfolgen konvergieren. Damit ist die Konvergenz komplexer Zahlenfolgen auf die reeller Zahlenfolgen zurückgeführt. Die über Grenzwerte von reellen Zahlen angeführten Regeln behalten ihre Gültigkeit auch im Körper der komplexen Zahlen; z.B.: der Grenzwert ist eindeutig bestimmt. Da R vollständig ist, ist auch C vollständig. Die trigonometrische Schreibweise für eine komplexe Zahl z = a + ib ist z = r(cos φ + i sin φ) √ wobei r = |z| := a2 + b2 der Betrag und φ := arg z das Argument der Zahl z ist, d.h. sin(φ) cos(φ)−1 = ab . Für z = r(cos φ+i sin φ) verwendet man auch die exponentielle Schreibweise z = reiφ , d.h. eiφ = cos φ + i sin φ . 76 Die Menge C− := C\{z ∈ C|ℑz = 0, ℜz ≤ 0} nennt man die negativ geschlitzte Ebene. Für jedes z ∈ C− gibt es genau ein φ ∈ (−π, π) und r > 0 mit z = r(cos φ + i sin φ) . Die Theorie der komplexen Funktionen, also der Funktionen f : C −→ C läßt sich prinzipiell wie die der reellen Funktionen anpacken. Allerdings können gewisse komplexe Funktionen sehr überraschende Eigenschaften haben, die im Zusammenhang mit der Differenzierbarkeit stehen. Definition 6.5.3 f : C −→ C heißt differenzierbar in z0 ∈ C, falls gilt: lim z→z0 f (z) − f (z0 ) z − z0 existiert. Beispiele differenzierbarer Funktionen sind die Polynome mit komplexen Koeffizienten. Beispiel 6.5.4 Wie berechnet man eine Wurzel aus einer komplexen Zahl? Sei z = a + ib ∈ C . Mit der trigonometrischen Darstellung von z als z = reiφ (r = |z|) gelingt die Berechnung von w mit w2 = z ganz einfach: w= Beachte, daß auch w′ = √ √ φ rei 2 := √ φ φ r(cos( ) + i sin( )) . 2 2 φ rei( 2 +π) eine solche Zahl ist. Der Ausgangspunkt unserer Überlegung war die Lösbarkeit der Gleichung (6.20). Diese hat nun in der Tat in C eine Lösung, nämlich das Element i und das Element −i . Die Lösbarkeit dieser Gleichung haben wir durch Körpererweiterung erreicht. In Analogie zum Newtonverfahren im Reellen formuliert man zur Gleichung z 3 = 1 im Komplexen die Iteration z3 − 1 2z 3 + 1 zn+1 := zn − n 2 = n 2 , n ∈ N0 . 3zn 3zn Wie sieht nun das Konvergenzverhalten der zugehörigen Orbits aus? Diese Frage erweist sich als außerordentlich tiefliegend. Die Arbeiten von B. Mandelbrot zu Fraktalen in den Jahren von 1975 bis 1985 machten diese lange schon diskutierte Frage wieder populär. Die zunächst naheliegende Vermutung, daß die Einzugsgebiete der drei Nullstellen 1 1 1√ 1√ 3 + i , z3∗ = − 3− i z1∗ = 1 , z2∗ = − 2 2 2 2 an jeweils einer Halbgeraden zusammenstoßen sollten, trifft nicht zu. Computerbilder zeigen eine ganz überraschende Unübersichtlichkeit des Konvergenzverhaltens. Die Ränder der jeweiligen Einzugsgebiete sind so ineinander verwoben, daß immer dort, wo zwei Einzugsbereiche zusammenstoßen, der dritte Einzugsbereich bereits vorhanAbbildung 6.2: Fraktal im Komplexen den ist. Die Ränder der Einzugsbereiche sind keine glatten Kurven, sondern sehr eigenwillig gefranste Gebilde, sie stellen wieder eine so genante Julia–Menge dar, die die oben angeführten Eigenschaften besitzt. 77 Das seltsame Verhalten der Newton–Iteration im Komplexen wurde untersucht für die Gleichungen z 4 − 1 = 0 , z 5 − 1 = 0 , (z − 1)(z 2 + z + c) = 0 (c ∈ C) . Immer wieder stößt man auf Einzugsgebiete, deren Ränder vom Typ Julia–Mengen sind. Überraschend ist, daß als geradezu universelle Menge wieder das Apfelmännchen ins Spiel kommt: Färbt man die Parameter c im dritten Fall schwarz ein, wenn z0 = 0 kein guter Startwert (keine Konvergenz!) ist, so entsteht wieder ein Apfelmännchen. 6.6 Übungen 1.) 78