file:///d /Refs/_To%20Do/12_09_04/NewtonVerfahren(1).html 27.02.2003 GFS im Fach Mathematik Florian Rieger Kl.12 1. Problemstellung NewtonApproximation Schon bei Polynomen dritter Ordnung versagen alle (den Schülern bisher bekannten) Verfahren zur exakten Nullstellenbestimmung. Deshalb liegt es nahe ein einfaches Näherungsverfahren zu finden, das es ermöglicht Nullstellen sehr genau und effizient zu berechnen. Eine solche Möglichkeit zur Nullstellenbestimmung stellt das NewtonVerfahren dar. Es ermöglicht eine sehr präzise Approximation an die eigentliche Nullstelle und kommt mit den uns bisher bekannten Mitteln der Differentialrechnung aus. Als erstes Beispiel für uns nicht lösbarer Nullstellen soll hier die Funktion dienen, da sie zum einen ein einfaches und anschauliches einzeichnen von Tangenten ermöglicht und zum anderen eine recht einfache Funktion darstellt. Der Funktionsgraph sieht wie folgt aus (Abb 1.1): Abb 1.1 Abb 1.2 Der Beweis der Nullstelle gelingt durch f(1)>0; f(2)<0 sowie die in I vorliegende Stetigkeit. Da die Funktion, wie man am Graph (Abb 1.1) erkennt, bei der zweiten Nullstelle (im file:///d /Refs/_To%20Do/12_09_04/NewtonVerfahren(1).html (1 von 7)26.02.2006 13:21:54
file:///d /Refs/_To%20Do/12_09_04/NewtonVerfahren(1).html Intervall I [1;2]) annähernd wie eine Tangente aussieht liegt es nahe, sie in der Nähe der Nullstelle durch eine annähernde Tangente zu ersetzen. Außerdem lassen sich bei einer linearen Funktion ohne Probleme die Schnittpunkte mit der xachse berechnen. Die Tangente hat die Steigung m=f (x 0 ) und geht durch den Punkt P (x 0 / f(x 0 )). Ihr Schnittpunkt mit der xachse führt zu einem genaueren xwert der Nullstelle als es der Ausgangswert x 0 ist. Führt man dieses Verfahren fort, ist es möglich die Nullstelle bis zur gewünschten Genauigkeit zu berechnen. Dabei läßt sich die nächstgenauere Approximation aus der vorhergehenden Approximation berechnen. Zu sehen sind die Tangenten und die schrittweise Annäherung in Abb 1.2. 2. Satz und Beweis 2.1 Tangentengleichung Verschiebt man das Koordinaten Kreuz um x 0 nach rechts schneidet die Tangente gerade bei (x 0 / f(x 0 ) die yachse. Somit ergibt sich für y = mx + c : y = f (x 0 )x + f(x 0 ) Um die Translation zu berücksichtigen wird statt x (x x 0 ) verwendet. Somit folgt: y = f (x 0 )(x x 0 ) + f(x 0 ) 2.2 Iterationsvorschrift Die aus 2.1 erhaltene Tangentengleichung wird auf Schnittpunkte mit der xachse untersucht, dabei ist y=0. 0 = f (x 0 )(x x 0 ) + f(x 0 ) f(x 0 ) f(x 0 ) = f (x 0 )(x x 0 ) / f (x 0 ) f(x 0 ) / f (x 0 ) = x x 0 + x 0 file:///d /Refs/_To%20Do/12_09_04/NewtonVerfahren(1).html (2 von 7)26.02.2006 13:21:54
file:///d /Refs/_To%20Do/12_09_04/NewtonVerfahren(1).html x = x 0 f(x 0 ) / f (x 0 ) x = x n+1 ; x 0 = x n x n+1 = x n f(x n ) / f (x n ) ; f (x n )? 0 Für die Aproximation gilt: N n < å (N ist die exakte Nullstelle, n die Approximation). Somit ist: = N (N ist die exakte Nullstelle, n die Approximation). 3. Durchführung 3.1 Rechnung des Beispiels aus 1 xn f(xn) f'(xn) f(xn) / f'(xn) 2,0000000000 1,8333333333 1,8325508607 0,3333333333 0,0015432099 0,0000001022 xn (f(xn) / f'(xn)) 2,0000000000 2,0000000000 0,1666666667 1,8333333333 1,9722222222 0,0007824726 1,8325508607 1,9719607858 0,0000000518 1,8325508089 file:///d /Refs/_To%20Do/12_09_04/NewtonVerfahren(1).html (3 von 7)26.02.2006 13:21:54
file:///d /Refs/_To%20Do/12_09_04/NewtonVerfahren(1).html 1,8325508089 0,0000000000 1,8325508089 0,0000000000 1,9719607684 0,0000000000 1,8325508089 1,9719607684 0,0000000000 1,8325508089 Man sieht deutlich, dass die Approximation schon nach dem dritten Schritt auf sieben Nachkommastellen genau ist. Bemerkungen zum finden eines passenden Startwertes: Das Taschenrechnerschaubild liefert ein ganzahliges Intervall I innerhalb dessen die gesuchte Nullstelle liegt. Man kann die Intervallgrenze benutzen, deren Funktionswert näher an y = 0 liegt. Eine Wertetabelle kann (mit vorausgesetzter Stetigkeit) das Intervall I eines Vorzeichenwechsels liefern. Eine in I stetige Funktion mit einem Vorzeichenwechsel in I hat zwangsläufig eine Nullstelle. Diese Methode beietet eine Möglichkeit, Funktionen großflächiger zu untersuchen, wenn z.b. die Nullstelle bei x = 100 oder ähnlich großen Zahlen liegt und das Schaubild nicht groß genug ist. 3.2 Probleme Es kann der Fall eintreten, dass f(x) an der Stelle x n nicht differenzierbar ist z.b. bei f (x) = x 1/2 an der Stelle x n = 0. Der Wert von f (x n ) müsste per Definition eine rationale Zahl sein (ein Grenzwert). Da f (0) in diesem Fall aber 1/( 0 1/2 ) = 1 / 0 ist entsteht keine rationale Zahl. f (x n ) muss ungleich null sein da sonst f(x n ) / f (x n ) nicht berechnet werden kann. Dies ist zum Beispiel der Fall bei Maxima oder Minima einer Funktion. Ein Approximationsschritt kann ein x n erzeugen, das nicht Element von D f ist. Beispielsweise bei f(x) = x 1/2 und dem Startwert 1. Die Gerade y = 0,5x+0,5 hat ihre Abszisse bei x = 1, welches nicht Element von D f ist. Der Startwert kann auf der falschen Seite eines Extremums liegen. Dadurch wird die Monotonie, welche zwischen dem Startwert und der Nullstelle gelten muss nicht eingehalten. Wählt man den Startwert also wie beschrieben erhält man gar keine (x > Unendlich, S.47 Fig.2) oder eine nicht erwünschte Nullstelle (S.47 Fig.3) 3.3 Approximationsqualität file:///d /Refs/_To%20Do/12_09_04/NewtonVerfahren(1).html (4 von 7)26.02.2006 13:21:54
file:///d /Refs/_To%20Do/12_09_04/NewtonVerfahren(1).html Bei entsprechend günstig gewählten Startwert (der Betrag der Differenz der exakten Nullstelle und des Startwerts ist kleiner als 1) wird die Approximaiton oft schon nach drei oder vier Schritten bis auf ca. 5 oder mehr Dezimalstellen genau. Dennoch wird die exakte Nullstelle meißt nicht erreicht (außer x 0 ist schon die genaue Nullstelle) sondern: Die Genauigkeit å muss vorgegeben werden und kann dann so genau berechnet werden wie die Vorgabe es verlangt Das NewtonVerfahren verzeiht Rundungsfehler, so dass es dadurch zu keinen Fehlern bei der Approximation kommt. Es werden allerdings meißt mehr Approximationsschritte benötigt Da das Näherungsverfahren immer genauer wird, sind zweimal unverändert gebliebene Dezimalstellen sicher d.h. sie ändern sich nicht mehr bei fortlaufender Approxiamtion Eine praktische Einschränkung ergibt sich durch die Maschinenungenauigkeit, d.h. Computer rechnen oft nur auf 1030 Nachkommastellen genau 4. Anwendungen 4.1 Beispiel: Schnittpunkte Die NewtonApproximation eignet sich für alle Probleme die sich auf Nullstellenprobleme zurückführen lassen. So zum Beispiel Schnittpunkte (es gilt hier f(x)g(x) = 0), Extremata (f (x) = 0) oder Wendepunkte (f (x) = 0). Als weiteres Beispiel dient der Schnittpunkt von f(x) = 3sin(x) mit g(x) = x im ersten Quadrant (siehe Pfeil Abb 4.1). Abb 4.1 Abb 4.2 Hilfsfunktion: file:///d /Refs/_To%20Do/12_09_04/NewtonVerfahren(1).html (5 von 7)26.02.2006 13:21:54
file:///d /Refs/_To%20Do/12_09_04/NewtonVerfahren(1).html 3sin(x) x Dabei ist es hilfreich eine Hilfsfunktion h(x) zu bilden, die das eigentliche Nullstellenproblem beinhaltet (Abb 4.2): h(x) = f(x) g(x) = 3sin(x) x Für h(x) gilt: x n+1 = x n h(x n ) / h (x n ) Es ergibt sich folgende Tabelle für die Approximation für x 0 = 2: xn h(xn) h'(xn) h(xn) / h'(xn) 2,0000000000 0,7278922805 2,3237320611 2,2795948216 2,2788628668 0,1346782359 0,0021612915 0,0000006102 2,2788626601 0,0000000000 2,2484405096 xn (h(xn) / h'(xn)) 2,0000000000 0,3237320611 2,3237320611 3,0513515911 0,0441372395 2,2795948216 2,9527663751 0,0007319548 2,2788628668 2,9510988738 0,0000002068 2,2788626601 2,9510984026 0,0000000000 2,2788626601 4.2 Beispiel: e x Wichtig ist dieses Approximaitonsverfahren auch für Funktionen die keine rationale Zahl als xwert ihrer Abszisse haben. Zum Beispiel f(x) = x + e x. Als Approximation ergibt sich hier: xn f(xn) f'(xn) f(xn) / f'(xn) xn f(xn) / f'(xn) 1,0000000000 0,6321205588 1,3678794412 0,4621171573 1,0000000000 0,5378828427 file:///d /Refs/_To%20Do/12_09_04/NewtonVerfahren(1).html (6 von 7)26.02.2006 13:21:54
file:///d /Refs/_To%20Do/12_09_04/NewtonVerfahren(1).html 0,5378828427 0,0461004863 1,5839833290 0,0291041487 0,5669869914 0,0002449499 1,5672319413 0,0001562946 0,5671432860 0,0000000069 1,5671432929 0,0000000044 0,5671432904 0,0000000000 1,5671432904 0,0000000000 0,5669869914 0,5671432860 0,5671432904 0,5671432904 Auch hier wird das Verfahren nach wenigen Approximaitonsschritten sehr genau. Das Newton Verfahren bietet also eine relativ einfache und schnelle Methode um Nullstellen zu approximieren. file:///d /Refs/_To%20Do/12_09_04/NewtonVerfahren(1).html (7 von 7)26.02.2006 13:21:54