Algebra. Roger Burkhardt Fachhochschule Nordwestschweiz Hochschule für Technik Institut für Geistes- und Naturwissenschaft

Ähnliche Dokumente
Algebra - Polynome und gebrochen rationale Funktionen. Roger Burkhardt (FHNW)

Nichtlineare Gleichungen

Nichtlineare Gleichungssysteme

Algebra. Roger Burkhardt Fachhochschule Nordwestschweiz Hochschule für Technik Institut für Geistes- und Naturwissenschaft

( ) Dann gilt f(x) g(x) in der Nähe von x 0, das heisst. Für den Fehler r(h) dieser Näherung erhält man unter Verwendung von ( )

KAPITEL 5. Nichtlineare Gleichungssysteme

Ziel: Iterative Lösung der (nichtlinearen) Gleichung f(x) = 0.

Nullstellenberechnung von nichtlinearen Funktionen

6 Iterationsverfahren für lineare und nichtlineare Gleichungssysteme

Fixpunkt-Iterationen

Modulprüfung Numerische Mathematik 1

Kapitel 5. Lösung nichtlinearer Gleichungen

3 Nichtlineare Gleichungssysteme

6. Iterationsverfahren. Fixpunktiteration. 6.Iterationsverfahren: Fixpunktiteration Numerisches Programmieren, Jürgen Bräckle page 1 of 16

5 Numerische Iterationsverfahren

18.4 Das Newton-Verfahren

Kapitel 4: Nichtlineare Nullstellenprobleme

Inhalt Kapitel I: Nichtlineare Gleichungssysteme

Näherungsverfahren zur Bestimmung der Nullstelle α sind iterativ, d.h. sie liefern eine Folge {x (k) } k=0 mit α = lim x (k). (3.0.

Nichtlineare Gleichungssysteme

Approximation von Nullstellen mit Hilfe der Ableitung Mit Tangenten geht es oft einfacher und schneller als mit Sehnen oder Sekanten

Ma 10 / 11 Das Newton-Verfahren Na - 4. September 2014

GMA. Grundlagen Mathematik und Analysis. Nullstellen und Fixpunkte Reelle Funktionen 3. Christian Cenker Gabriele Uchida

TEIL 1 (ohne Rechner)

Iterative Verfahren, Splittingmethoden

Institut für Geometrie und Praktische Mathematik

VF-3: Es seien A R n n beliebig aber regulär, b R n und gesucht sei die Lösung x R n von A x = b.

Rechenoperationen mit Folgen. Rekursion und Iteration.

Numerisches Programmieren, Übungen

Iterative Lösung von nichtlinearen Gleichungen und Gleichungssystemen

Kapitel 3. Konvergenz von Folgen und Reihen

Dierentialrechnung mit einer Veränderlichen

5 Numerische Mathematik

Newton-Verfahren für ein Skalarfunktion

Anleitung zu Blatt 1, Analysis II

Das Newton-Verfahren

Nichtlineare Gleichungen in einer und mehreren Unbekannten

Übungsaufgaben zur Kurvendiskussion

Unter Kurvendiskussion versteht man die Untersuchung einer gegebenen Funktion auf bestimmte Merkmale und Eigenschaften:

Mathematik. für das Ingenieurstudium. 10 Funktionen mit mehreren Variablen. Jürgen Koch Martin Stämpfle.

Banach scher Fixpunktsatz. 1) D ist abgeschlossen und konvex; 2) f ist selbstabbildend, d.h. f(d) D;

Nullstellen von algebraischen Gleichungen

Lösungen der Aufgaben zu Kapitel 9

Kapitel 16 : Differentialrechnung

dx nf(x 0). dx f(n 1) (x 0 ) = dn

8.3 Lösen von Gleichungen mit dem Newton-Verfahren

Analysis 1 für Informatiker (An1I)

2.6 Lokale Extrema und Mittelwertsatz

Nichtlineare Gleichungssysteme

Numerisches Lösen von Gleichungen

Übungen zur Vorlesung MATHEMATIK II

Probe-Klausur 1 Mathematik f. Bau-Ing + Chem. Modul1

(d) das zu Grunde liegende Problem gut konditioniert ist.

Mathematik II für Studierende der Informatik. Wirtschaftsinformatik (Analysis und lineare Algebra) im Sommersemester 2016

Musterlösung zu den Übungen zur Vorlesung Mathematik für Physiker II. x 2

Lösungen Klausur. k k (n + 1) n. für alle n N. Lösung: IA: Für n = 1 ist 1. k k + (n + 1) n+1. k k = k=1. k=1 kk = 1 1 = 1 2 = 2 1.

Kapitel 4 Folgen, Reihen & Funktionen

Umkehrfunktion. g (y) = f (x) 1, x = g(y), Umkehrfunktion 1-1

ETH Zürich Analysis I Zwischenprüfung Winter 2014 D-BAUG Musterlösungen Dr. Meike Akveld

Mathematik I Herbstsemester 2014 Kapitel 4: Anwendungen der Differentialrechnung

Mathematik für Bauingenieure

Folgen und Reihen Folgen

Numerische Ableitung

Analysis I. 6. Beispielklausur mit Lösungen

Polynome und ihre Nullstellen

Analysis I. 1. Beispielklausur mit Lösungen

2. Lineare Gleichungssysteme: direkte und iterative Lösungsverfahren

Kontrollfragen zur Unterrichtsstunde

ε δ Definition der Stetigkeit.

Das Newton Verfahren.

(x a) 3 + f (a) 4! x 4 4! Wir werden im Folgenden vor allem Maclaurin-Reihen betrachten, dies alles funktioniert aber auch. f (x) = sin x f (0) = 0

20.4 Gleichmäßige Konvergenz von Folgen und Reihen von Funktionen

Brückenkurs Rechentechniken

Gleichungen, GS und Nullstellen

Differential- und Integralrechnung

Mathe- Multiple-Choice-Test für Wirtschaftsinformatiker

Institut für Geometrie und Praktische Mathematik

Taylor-Entwicklung der Exponentialfunktion.

Gleichungen höheren Grades

Ganzrationale Funktionen

Funktionsgrenzwerte, Stetigkeit

Dem Anschein nach werden diese Zahlen kleiner und kleiner und streben gegen Null. Was sollen sie sonst auch tun? Aber der Begriff

Klasse WI06b MLAN2 zweite-klausur 13. Juni 2007

2. Geben Sie für das Jacobi-Verfahren eine scharfe a-priori Abschätzung für den Fehler. x (10) x p

7. Übungs-/Wiederholungsblatt zu Einführung in die Numerik (SS 2012)

Serie 4: Flächeninhalt und Integration

differenzierbare Funktionen

Mathematik I. Vorlesung 7. Folgen in einem angeordneten Körper

Skripten für die Oberstufe. Kurvendiskussion. f (x) f (x)dx = e x.

GFS im Fach Mathematik. Florian Rieger Kl.12

Kapitel 6 Grenzwerte von Funktionen und Stetigkeit

Funktionen mehrerer Variabler

In der Praxis werden wir häufig mit relativ komplexen Funktionen konfrontiert. y

6. Polynom-Interpolation

18 Höhere Ableitungen und Taylorformel

10 Aus der Analysis. Themen: Konvergenz von Zahlenfolgen Unendliche Reihen Stetigkeit Differenzierbarkeit

Modul Grundbildung Analysis WiSe 10/11. A.: Wurde in diesem Kapitel behandelt. C.: Weitere Fragen (Nicht nur für die Klausur interessant)

A 1 A 2 A 3 A 4 A 5 A 6 A 7

10.6. Implizite ebene Kurven und Tangenten

GRUNDLAGEN MATHEMATIK

Transkript:

Algebra Roger Burkhardt roger.burkhardt@fhnw.ch Fachhochschule Nordwestschweiz Hochschule für Technik Institut für Geistes- und Naturwissenschaft FS 2010 Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 1/48

5 Numerische Nullstellenbestimmung Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 2/48

5 Fixpunktsatz Sekantenverfahren (regula falsi) Newtonverfahren Muller-Verfahren Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 3/48

Fixpunktsatz Einführung Wie wir weiter vorne gesehen haben, ist das Bestimmen der Nullstellen eines Polynoms ab einem bestimmten Grad normalerweise nicht mehr exakt (geschlossen) möglich. In diesem Kapitel wollen wir einige numerische Verfahren betrachten, mit welchen man gute Näherungswerte für die Nullstellen finden kann. Allen Verfahren ist gemeinsam, dass von einem oder mehreren Startwerten x 0, x 1,... aus iterativ eine Folge von Näherungswerten x k gebildet wird, so dass diese Folge gegen eine Nullstelle des Polynoms strebt (konvergiert). Neben den hier betrachteten Iterationsverfahren gibt es als Alternative noch die sogenannten Einschlussverfahren. Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 4/48

Fixpunktsatz Um die verschiedenen Verfahren analytisch zu untersuchen, formen wir die Gleichungen p n (x) = 0 in eine sogenannte Fixpunktgleichung ϕ (x) = x um. Dabei sei ϕ eine im abgeschlossenen Intervall I = [a, b] stetige und reellwertige Funktion. ξ I heisst nun Lösung der neuen Gleichung oder auch Fixpunkt der Funktion ϕ, wenn ϕ (ξ) = ξ gilt. Nun konstruiert man mit einem Startwert x 0 eine Zahlenfolge (x k ) mit der Vorschrift x k+1 = ϕ (x k ), k = 0, 1, 2,... Wenn die Folge konvergiert, so gilt: lim k x k = ξ = ϕ (ξ). Beispiel Wir betrachten die transzendente Gleichung: x 2 ln (x) = 1 Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 5/48

Fixpunktsatz Beispiel (Fortsetzung) Eine mögliche Iterationsvorschrift lautet nun (nach x auflösen): x k+1 = 1 + 2 ln (x k ) Die Gleichung hat eine Lösung für x = 1 und eine weitere Lösung im Intervall [3, 4]. Wir beginnen mit dem Startwert x 0 = 3 und erhalten: Iterationsschritt W ert Iterationschritt W ert Iterationschritt W ert 0 3 10 3.51064653 20 3.51285448 1 3.19722458 11 3.51160043 21 3.5128579 2 3.32456623 12 3.51214379 22 3.51285985 3 3.40267842 13 3.51245324 23 3.51286095 4 3.44912578 14 3.51262944 24 3.51286158 5 3.4762416 15 3.51272977 25 3.51286194 6 3.49190342 16 3.5127869 26 3.51286215 7 3.50089396 17 3.51281942 27 3.51286226 8 3.50603671 18 3.51283794 28 3.51286233 9 3.50897251 19 3.51284848 29 3.51286237 Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 6/48

Fixpunktsatz Beispiel (Fortsetzung) Eine Konvergenz hin zu x = 3.51286.. lässt sich Vermuten. Ein anderer Startwert (z.b. x 0 = 4) liefert ebenfalls eine Zahlenfolge die gegen diesen Wert strebt. Wir sehen die Funktionsweise in folgender Grafik: Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 7/48

Fixpunktsatz Beispiel (Fortsetzung) Beginnend beim Startwert x 0 = 3 (schwarze Annäherung) wird der Funktionswert ϕ (3) = 3.197... berechnet (vertikaler Pfeil). Das Resultat nehmen wir als nächste Näherung x 1 = ϕ (x 0 ) (horizontaler Pfeil). Auf diese Weise fährt man fort bis eine genügend gute Näherung gefunden ist. Ziel ist der Schnittpunkt der beiden Graphen der Funktionen: y 1 = x, y 2 = ϕ (x) = 1 + 2 ln (x k ) Wir betrachten nun die zur nichtlinearen Gleichung f (x) = 0 äquivalente Fixpunktgleichung x = ϕ (x). Damit die besprochene Iteration zum Ziel führt, muss die Fixpunktgleichung bestimmte Eigenschaften aufweisen. Dies wollen wir nachfolgend etwas genauer untersuchen. Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 8/48

Fixpunktsatz Kontraktion Eine auf einem Intervall I definierte Funktion ϕ : I R nennt man eine Kontraktion, wenn es eine Konstante k [0, 1) gibt, sodass für alle Paare x 1, x 2 I gilt: ϕ (x 1 ) ϕ (x 2 ) k x 1 x 2 Bemerkung: Zwei Bildpunkte liegen also immer näher zusammen als die Ausgangspunkte: 4.0 3.5 3.0 2.5 Φ ( x ) Φ ( ) 1 x 2 2.0 1.5 1.0 0.5 x 1 x 2 0.0 0 2 4 6 8 10 Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 9/48

Fixpunktsatz Fixpunktsatz Nun können wir den zentralen Satz für die Iterationsverfahren betrachten: Banachsche Fixpunktsatz Es sei ϕ : I I eine kontrahierende Selbstabbildung über dem Intervall I mit der Kontraktionskonstanten k. Dann existiert ein eindeutiger Fixpunkt x = ϕ (x ) in I, konvergiert die durch x n+1 = ϕ (x n ) definierte Folge für jeden Startwert x 0 I gegen den Fixpunkt x, für jede so konstruierte Folge gilt die Abschätzung x n x k 1 k x n x n 1 kn }{{} 1 k x 1 x 0 }{{} a posteriori a priori Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 10/48

Fixpunktsatz Beweis: Wir zeigen zuerst, dass die so konstruierte Iterationsfolge eine Cauchyfolge 1 ist und somit sicher konvergiert. Es gilt für alle m > 0: x n+m x n = x n+m x n+m 1 + x n+m 1... + x n+1 x n x n+m x n+m 1 +... + x n+2 x n+1 + x n+1 x n = ϕ (x n+m 1 ) ϕ (x n+m 2 ) +...+ ϕ (x n+1 ) ϕ (x n ) + x n+1 x n k m 1 x n+1 x n +... + k x n+1 x n + x n+1 x n = ( k m 1 +... + k + 1 ) x n+1 x n = 1 km }{{} 1 k x n+1 x n endliche geom. Folge 1 Cauchyfolge: Die Zahlenfolge (a n) heisst eine Cauchyfolge, wenn für beliebiges ε > 0 ein Index n 0 existiert, so dass für alle n, m > n 0 immer gilt: a n a m < ε. Eine Cauchyfolge ist immer konvergent! Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 11/48

Fixpunktsatz 1 1 k x k n+1 x n 1 k x n x n 1 }{{} a posteriori Abschätzung k2 1 k x n 1 x n 2... kn 1 k x 1 x 0 }{{} a priori Abschätzung Nun gilt mit lim n k n = 0, dass der Ausdruck x i x j für grosse Indexpaare i, j beliebig klein wird und somit (x n ) eine Cauchyfolge ist. Sei nun x der Grenzwert der konvergenten Cauchyfolge, so ist er der Fixpunkt von ϕ: x = lim n x n+1 = lim n ϕ (x n) = ϕ ( ) lim x n n = ϕ (x ) Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 12/48

Fixpunktsatz Die Lösung eines kontrahierenden Fixpunktproblems x = ϕ (x) lässt sich also dadurch finden, dass man die Banach-Iteration x n+1 = ϕ (x n ) mit einem beliebigen Startwert durchführt und den Grenzwert dieser Folge abzuschätzen versucht. Dabei liefern die Ungleichungen im dritten Punkt Aussagen, wie weit ein Folgeglied noch vom Fixpunkt (maximal) entfernt ist. Die a priori Abschätzung kann dabei gleich am Anfang der Iteration durchgeführt werden, da nur die beiden ersten Folgeglieder benötigt werden. Die a priori Abschätzung liefert auch auf die Fragestellung, wie oft iteriert werden muss, damit die Folgeglieder den Grenzwert bis auf eine vorgegebene Genauigkeit δ annähern, eine Antwort: x n x < δ k n 1 k x 1 x 0 < δ Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 13/48

Fixpunktsatz k n x 1 x 0 < (1 k) δ ( ) ln (1 k)δ x 1 x 0 n > ln (k) Die so gefundene Iterationslänge ist hinreichend um die gewünschte Genauigkeit zu erzielen. Nach Ablauf der Iteration kann mit der a posteriori Abschätzung eine noch genauere Fehlerschranke angegeben werden. Nun stellen sich natürlich noch einige Probleme: Wie finde ich aus der gegebenen nichtlinearen Gleichung die Fixpunktgleichung? Erfüllt eine gefundene Fixpunktgleichung die Bedingungen des Fixpunktsatzes? Wie gross ist die Kontraktionskonstante k? Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 14/48

Fixpunktsatz Auf diese Fragen liefern die folgenden Überlegungen recht hilfreiche Antworten! Satz Es sei I ein abgeschlossenes Intervall und ϕ : I R stetig differenzierbar. Dann ist das kleinste k R mit der Eigenschaft ϕ (x) ϕ (y) k x y x, y I gegeben durch ( k = max ϕ (ξ) ) ξ I D.h. die Funktion ϕ ist somit genau dann eine Kontraktion auf I, wenn dieses Maximum kleiner als 1 ist. Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 15/48

Fixpunktsatz Beispiel Wir suchen die Nullstelle der Gleichung x + x 3 1 = 0 mit der Fixpunktgleichung x = 1 x 3 im Intervall I = [0, 1]. Um zu schauen ob die Funktion ϕ (x) = 1 x 3 eine Kontraktion ist, berechnen wir die erste Ableitung: ϕ (x) = 3x 2 Das Maximum des Betrags dieser Ableitung im gegebenen Intervall finden wir für x = 1 ϕ (1) = 3. Da dieses k grösser als 1 ist, ist die nichtlineare Gleichung nicht mit dieser Fixpunktgleichung zu lösen! Es handelt sich um einen abstossenden Fixpunkt! Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 16/48

Fixpunktsatz Beispiel (Fortsetzung) Der vorherige Satz sagt jedoch noch nichts darüber, ob man für Kontraktionen Intervalle finden kann, auf denen ϕ eine Selbstabbildung 2 ist. 2 Selbstabbildung: Eine Funktion f : A B nennt man eine Selbstabbildung, wenn f (A) A gilt. Im Fixpunktsatz von Banach wird eine Selbstabbildung erwartet!!! Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 17/48

Fixpunktsatz Diese Existenz garantiert der folgende Satz: Satz Sei A eine offene Teilmenge der reellen Zahlen und sei ϕ : A R stetig differenzierbar mit einem Fixpunkt x A. Wenn ϕ (x ) < 1 gilt, dann existiert ein abgeschlossenes Intervall I A mit x I und ϕ (I ) I, auf dem ϕ eine Kontraktion ist. Beispiel Wir suchen die Nullstelle im Intervall I = [0.6, 0.7] der Gleichung x + x 3 1 = 0 mit der Fixpunktgleichung: x = 1 ( 1 + x x 3 ) = ϕ (x) 2 Es gilt: ϕ (x) = ( 1 2 1 3x 2 ). Diese Funktion ist monoton steigend, sodass mit 0.6 < x < 0.7 folgt: Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 18/48

Fixpunktsatz Beispiel (Fortsetzung) ϕ (x ) [ ϕ (0.6), ϕ (0.7) ] = [0.04, 0.24] Also ist ϕ eine kontrahierende Selbstabbildung mit k = 0.24. Wir haben nun gesehen, dass sich der Banachsche Fixpunktsatz auf die stetig differenzierbare Funktion ϕ mit dem Fixpunkt x genau dann anwenden lässt, wenn ϕ (x ) < 1 gilt. Ein solcher Fixpunkt ist mit einer Banach-Iteration berechenbar.in diesem Fall werden in einer hinreichend kleinen Umgebung des Fixpunktes alle Punkte durch die Iteration auf den Fixpunkt zugetrieben! Die hier betrachteten Überlegungen gelten für allgemeine Gleichungen. Für Polynomgleichungen ergeben sich teilweise noch Vereinfachungen! Auch die im weiteren behandelten Verfahren kann man für allgemeine Gleichungen einsetzen. Hier werden aber die Besonderheiten für Polynomgleichungen berücksichtigt. Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 19/48

Sekantenverfahren (regula falsi) Sekantenverfahren (regula falsi) Das hier besprochene Verfahren ist ein Zweischritt-Verfahren, d.h. aus zwei vorgängigen Näherungen wird eine weitere bestimmt: x k+1 = f (x k 1, x k ) Daher lassen sich die Betrachtungen in der Einleitung nicht direkt auf die Resultate anwenden. Idee des Verfahrens ist es, die gegebene Funktion durch eine einfachere Funktion anzunähern und von dieser einfacheren Funktion die Nullstelle zu bestimmen. Ausgehend von zwei Startwerten x 0 und x 1 wird durch die Punkte auf dem Graphen (x 0, f (x 0 )) und (x 1, f (x 1 )) eine Gerade (Sekante) gelegt. Mit der Zwei-Punkt-Form der Geraden finden wir: y = f (x 1) f (x 0 ) x 1 x 0 (x x 1 ) + f (x 1 ) Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 20/48

Sekantenverfahren (regula falsi) Wenn die Steigung dieser Geraden ungleich Null ist hat die Gerade eine Nullstelle und schneidet die x-achse bei: 0 = f (x 1) f (x 0 ) (x N x 1 ) + f (x 1 ) x 1 x 0 x 1 x 0 0 = x N x 1 + f (x 1 ) f (x 0 ) f (x 1) x N = x 1 x 1 x 0 f (x 1 ) f (x 0 ) f (x 1) Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 21/48

Sekantenverfahren (regula falsi) Die Nullstelle x N der Geraden nimmt man nun als Näherung x 2 für die gesuchte Nullstelle x und führt den gleichen Prozess mit den Stützstellen x 1 und x 2 durch 3. So ergibt sich die Iterationsvorschrift wie folgt: Iterationsvorschrift Sekantenverfahren x k x k 1 x k+1 = x k f (x k ) f (x k 1 ) f (x k) (1) 3 Wird am Beginn des Verfahrens verlangt, dass die Funktionswerte bei den beiden Startpunkten x 0 und x 1 unterschiedliche Vorzeichen haben, also f (x 0) f (x 1) < 0 und bei jedem Iterationsschritt von den beiden vorangegangenen Stützstellen die ausgewählt wird, so dass mit der neuen Näherung die gesuchte Nullstelle im neuen Intervall liegt, spricht man vom regula falsi Verfahren. Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 22/48

Sekantenverfahren (regula falsi) MATLAB Eine MATLAB-Funktion für das Sekantenverfahren könnte folgendermassen aussehen: function n = poly_sekantenverfahren(p,x0,x1) %POLY_SEKANTENVERFAHREN %Zur Berechnung einer Nullstelle von einem Polynom. %p Koeffizientenliste des Polynoms [a_n,..., a_1, a_0] %x0, x1 Startwerte. %%Bsp.: Gesucht ist die Nullstelle des Polynoms % p(x)=x^3-x+5 %>>n=poly_sekantenverfahren([1,0,-1,5],-1,1) %n = % -1.9042 eps=10^(-9); kmax=10^6; k=0; Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 23/48

Sekantenverfahren (regula falsi) MATLAB (Fortsetzung) y0=poly_horner(p,x0); y1=poly_horner(p,x1); while abs(y0)>eps && abs(y1)>eps && k<kmax k=k+1; if y1==y0 x1=(x0+x1)/2; else xtemp=x0-(x1-x0)/(y1-y0)*y0; ytemp=poly_horner(p,xtemp); x0=x1; x1=xtemp; end y0=poly_horner(p,x0); y1=poly_horner(p,x1); end Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 24/48

Sekantenverfahren (regula falsi) MATLAB (Fortsetzung) if k>=kmax disp( Keine Lösung gefunden!! ) else if abs(y0)<abs(y1) n=x0; else n=x1; end end Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 25/48

Sekantenverfahren (regula falsi) Beispiel Wir suchen die Nullstelle in der Nähe von 2 des Polynoms p 3 (x) = x 3 2x 5. Wir starten mit den beiden Startwerten x 0 = 1.8 und x 1 = 2.2 (siehe Skizze weiter Oben!). Erster Schritt: x 2 = x 1 x 1 x 0 f (x 1 ) f (x 0 ) f (x 1) x 1 x 0 = x 1 ( x 3 1 2x 1 5 ) ( x0 3 2x 0 5 ) ( x1 3 2x 1 5 ) = 2.075697 Zweiter Schritt: x 3 = x 2 usw. (z.b. mit Excel): x 2 x 1 f (x 2 ) f (x 1 ) f (x 2) = 2.093470 Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 26/48

Sekantenverfahren (regula falsi) Beispiel (Fortsetzung) Die gesuchte Näherung für die Nullstelle lautet x x 7 = 2.09455148 Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 27/48

Newtonverfahren Newtonverfahren Ein Nachteil des Sekantenverfahrens ist, dass es ein Zweischrittverfahren ist. Abhilfe liefert das Ersetzen der Sekanten (durch zwei Kurvenpunkte) durch die Tangente in einem Kurvenpunkt. Für die Tangente an der Stützstelle x k findet man: y = f (x k ) (x x k ) + f (x k ) Die Nullstelle der Tangente ist somit: 0 = f (x k ) (x N x k ) + f (x k ) 0 = x N x k + f (x k) f (x k ) x N = x k f (x k) f (x k ) Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 28/48

Newtonverfahren Diese Tangentennullstelle nehmen wir wie beim Sekantenverfahren als neue Näherung x k+1 = x N und erhalten so die Iterationsvorschrift von Newton (Newtonverfahren): Iterationsvorschrift von Newton x k+1 = x k f (x k) f (x k ) (2) Beispiel Wir suchen wieder die Nullstelle in der Nähe von 2 des Polynoms p 3 (x) = x 3 2x 5. Wir starten mit dem Startwert x 0 = 1.8. Erster Schritt: x 1 = x 0 f (x 0) f (x 0 ) = x 0 x 3 0 2x 0 5 3x 2 0 2 = 1.95121951 Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 29/48

Newtonverfahren Beispiel (Fortsetzung) usw. (z.b. mit Excel): Das Newton-Verfahren hat den Vorteil, dass es nur einen Vorgängerwert braucht. Der Nachteil des Verfahrens, ist die Kenntnis der Ableitungsfunktion. Bei der Nullstellenbestimmung von Polynomfunktionen ist das Berechnen der Ableitung sehr einfach und auch mittels Computer recht einfach umzusetzen (siehe poly diff.m). Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 30/48

Newtonverfahren Nun können wir auch Überlegungen zur Güte des Verfahrens anstellen. Wir haben durch die Iterationsvorschrift ja eine Fixpunktgleichung: x = x f (x) f (x) }{{} ϕ(x) Beispiel Für das weiter oben betrachtete Beispiel ergibt sich somit: ϕ (x) = x x 3 2x 5 3x 2 2 = 2x 3 + 5 3x 2 2 In der Umgebung I = [1.8, 2.2] der gesuchten Nullstelle finden wir: Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 31/48

Newtonverfahren Beispiel (Fortsetzung) ϕ (x) = 6x 2 ( 3x 2 2 ) 6x ( 2x 3 + 5 ) (3x 2 2) 2 = 6x ( x 3 2x 5 ) (3x 2 2) 2 Also ist ϕ (x) eine kontrahierende Selbstabbildung mit k = ϕ (1.8) = 0.5016. Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 32/48

Newtonverfahren Allgemein gilt für das Newtonverfahren die Bedingung für die Konvergenz des Verfahrens: x = ϕ (x) = x f (x) f (x) Nun muss ϕ (x) < 1 gelten, also: ϕ (x) = d dx ( x f (x) ) f = 1 (f (x)) 2 f (x) f (x) (x) (f (x)) 2 = f (x) f (x) (f (x)) 2 Konvergenzbedingung Newtonverfahren f (x) f (x) (f (x)) 2 < 1 (3) Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 33/48

Newtonverfahren Beispiel Mit der Kontraktionskonstanten können wir nun Fehlerabschätzungen betreiben: a priori: Wir können bei n Iterationen mit einem Fehler kleiner als δ 1 rechnen: δ 1 < kn 1 k x 1 x 0 = 0.5016n 2.1585 1.8 1 0.5016 = 0.7193 (0.5016 n ) n δ 1 (n) 2 0.1810 3 0.0908 4 0.0455...... Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 34/48

Newtonverfahren Beispiel (Fortsetzung) a posteriori: Wir können nach n Iterationen mit einem Fehler kleiner als δ 2 rechnen: δ 2 < k 1 k x n x n 1 = 0.5016n 1 0.5016 x n x n 1 = 1.0064 x n x n 1 n δ 2 (n) 2 0.0622 3 0.0022 4 2.718 10 6...... Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 35/48

Newtonverfahren Beispiel (Fortsetzung) Der tatsächliche Fehler ist natürlich noch kleiner: n δ 1 δ 2 δ = x x n 2 0.1810 0.0622 0.0022 3 0.0908 0.0022 2.7012 10 6 4 0.0455 2.718 10 6 4.1077 10 12 5 0.0228 4.134 10 12 8.1672 10 17 6 0.0115 0 0............ Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 36/48

Newtonverfahren MATLAB Eine MATLAB-Funktion für das Newtonverfahren könnte folgendermassen aussehen: function n = poly_newton(p,x0) %POLY_NEWTON %Zur Berechnung einer Nullstelle von einem Polynom. %p Liste mit den Koeffizienten des Polynoms. %x0 Startwert % %Bsp.: Gesucht ist die Nullstelle des Polynoms % p(x)=x^3-x+5 %>>n=poly_newton([1,0,-1,5],1) %n = % -1.9042 eps=10^(-9); kmax=10^6; Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 37/48

Newtonverfahren MATLAB (Fortsetzung) k=0; y0=poly_horner(p,x0); while abs(y0)>eps && k<kmax k=k+1; dp=poly_diff(p); m=poly_horner(dp,x0); x0=x0-y0/m; y0=poly_horner(p,x0); end if k>=kmax disp( Keine Lösung gefunden!! ) else n=x0; end Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 38/48

Muller-Verfahren Muller-Verfahren Im Gegensatz zu den beiden bisher untersuchten Verfahren, ist das Verfahren von Muller in der Lage auch komplexe Nullstellen zu finden. Bei diesem Verfahren wird die gegebene Funktion auch durch eine einfachere Funktion ersetzt. Dabei wird durch drei Punkte (x k 2, f (x k 2 )), (x k 1, f (x k 1 )) und (x k, f (x k )) eine Parabel y = ax 2 + bx + c gelegt. Als nächste Näherung wird dann eine Nullstelle der Parabel verwendet. Da dies nun auch eine komplexe Nullstelle sein kann, findet das Verfahren die komplexen Nullstellen der Funktion ebenfalls. Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 39/48

Muller-Verfahren Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 40/48

Muller-Verfahren Seien x k, x k 1 und x k 2 die letzten drei Näherungen für die gesuchte Nullstelle. Die Koeffizienten der quadratischen Funktion erhält man durch das Einsetzen der Koordinaten der drei Punkte: ax 2 0 + bx 0 + c = y 0 ax 2 1 + bx 1 + c = y 1 ax 2 2 + bx 2 + c = y 2 a b c = x0 2 x 0 1 x1 2 x 1 1 x2 2 x 2 1 x0 2 x 0 1 x1 2 x 1 1 x2 2 x 2 1 1 a b c = Von den beiden Nullstellen x N,1 und x N2 der quadratischen Funktion wählt man diejenige aus, bei welcher der Betrag des Realteils kleiner ist: y 0 y 1 y 2 y 0 y 1 y 2 Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 41/48

Muller-Verfahren x N1,N2 = b ± b 2 4ac 2a { xn1 Re (x x k+1 = N1 ) Re (x N2 ) x N2 Re (x N1 ) > Re (x N2 ) Iterativ wird nun die Nullstelle angenähert. Durch Polynomdivision wird der Linearfaktor einer gefundenen Nullstelle abdividiert und beim Deflationspolynom wird mit dem gleichen Verfahren die nächste Nullstelle gesucht. Beispiel Wir suchen alle Nullstellen des Polynoms p 5 (x) = 2x 5 + 21x 4 + 81x 3 + 306x 2 + 784x 480. Erste Nullstelle: Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 42/48

Muller-Verfahren Beispiel (Fortsetzung) k 0 1 2 3 ) ( xk y k ( 1 ) ( 1020 ) 1 714 ( 0 ) 480 ( 0.4702 34.1780 ) a b c 867 327 480 464.1981 729.8019 480 ( xn1 x N2 ) ( 0.4702 3.1216 ( 0.4992 2.0714... (... )...... 0.5000... 1.5 10 11 x 1 = 0.5000 ) ) Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 43/48

Muller-Verfahren Beispiel (Fortsetzung) Polynomdivision (Hornerschema): p 4 (x) = p 5 (x) : (x 0.5) = 2x 4 + 22x 3 + 92x 2 + 352x + 960 Zweite Nullstelle: ( ) xk k a ( ) b xn1 y k x c N2 ( ) 1 0 ( 680 ) 1 1 1428 ( ) 0 2 94 ( ) 374 1.99 + 2.50i 960 1.99 2.50i 960............ Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 44/48

Muller-Verfahren Beispiel (Fortsetzung)... (... )...... 5.00 + 0.00i... (1.38 2.28i) 10 8...... x 2 = 5.0000 Polynomdivision: p 3 (x) = p 4 (x) : (x + 5) = 2x 3 + 12x 2 + 32x 2 + 192 usw.: x 3,4 = ±4i p 2 (x) = p 3 (x) : (x 4i) = 2x 2 + (12 8i) x 48i Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 45/48

Muller-Verfahren Beispiel (Fortsetzung) p 1 (x) = p 2 (x) : (x + 4i) = 2x + 12 x 5 = 6 N = {0.5, 5, 4i, 4i, 6} In den Beilagen findet man die MATLAB-Funktion poly muller.m, welche die Nullstellen eines Polynoms mit Hilfe des Muller-Verfahrens berechnet. In der Literatur findet man für die Iterationsvorschrift andere Formeln (besser für die Berechnung - Werte sind aber identisch). Hier eine kurze Erläuterung dazu: Seien x k, x k 1 und x k 2 die letzten drei Näherungen für die gesuchte Nullstelle. Mit Hilfe der Lagrange schen Iterpolation findet man die Parabel zu: Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 46/48

Muller-Verfahren Φ (x) = (x x k 1) (x x k 2 ) (x k x k 1 ) (x k x k 2 ) f (x k) + (x x k ) (x x k 2 ) (x k 1 x k ) (x k 1 x k 2 ) f (x k 1)+ (x x k) (x x k 1 ) (x k 2 x k ) (x k 2 x k 1 ) f (x k 2) Mit den Hilfsgrössen h k = x k x k 1 und h = x x k ergibt sich: Φ (x) = (h + h k) (h + h k + h k 1 ) f (x k ) h k (h k + h k 1 ) h (h + h k + h k 1 ) h (h + h k ) f (x k 1 ) + f (x k 2 ) h k h k 1 (h k + h k 1 ) h k 1 Durch Ausmultiplizieren und Einsetzen der Hilfsgrössen q k = q = h h k erhält man die Parabel zu Φ (x) = A kq 2 + B k q + C k 1 + q k h k h k 1, Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 47/48

Muller-Verfahren Dabei sei: A k = q k f (x k ) q k (1 + q k ) f (x k 1 ) + qk 2 f (x k 2) B k = (2q k + 1) f (x k ) (1 + q k ) 2 f (x k 1 ) + qk 2 f (x k 2) C k = (1 + q k ) f (x k ) Die Nullstellen des quadratischen Zählerpolynoms sind nun: q 1,2 = 2C k B k ± Bk 2 4A kc k Um die betragskleinste Nullstelle zu erhalten, muss im obigen Ausdruck der Nenner möglichst gross sein. Für den nächsten Näherungswert gilt daher: 2C k x k+1 = x k + h k ( ) = x k + h k min (q 1,2 ) max B k ± B 2k 4A kc k Roger Burkhardt roger.burkhardt@fhnw.ch Algebra 48/48