Sekantenverfahren

Aus testwiki
Version vom 30. August 2024, 16:43 Uhr von imported>Wurz1982 (growthexperiments-addlink-summary-summary:1|0|2)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Bei dem Sekantenverfahren handelt es sich um ein schon seit dem Mittelalter bekanntes numerisches Verfahren zur näherungsweisen Lösung einer Gleichung des Typs f(x)=0. Es entspricht einer Vereinfachung des Newton-Verfahrens, da nicht die Ableitung der Funktion berechnet werden muss.

Verfahren

Zwischen zwei Punkten P(x1|f(x1)) und Q(x2|f(x2)) der Funktion f wird eine Sekante gelegt. Der Schnittpunkt der Sekante mit der x-Achse wird als verbesserter Startwert x3 für die Iteration verwendet. Mithilfe von x3 wird der neue Funktionswert f(x3) berechnet. Mit f(x3) und dem alten Wert f(x2) wird dieser Schritt wiederholt und erneut eine Sekante angelegt. Man wiederholt diesen Schritt so lange, bis eine ausreichende Näherung der gesuchten Nullstelle erreicht wurde.

Konstruktion am Graphen

Die folgende Animation zeigt, wie mit den Startwerten x1 und x2 weitere Punkte konstruiert werden.

Animation zeigt mehrere Iterationsschritte des Sekantenverfahrens
Animation zeigt mehrere Iterationsschritte des Sekantenverfahrens

Das Verfahren verwendet folgende Iterationsvorschrift:

xn+1=xnxnxn1f(xn)f(xn1)f(xn)

Dabei wird mit zwei Näherungswerten x0,x1 begonnen.

Im Gegensatz zum Regula-falsi-Verfahren kann es beim Sekantenverfahren auftreten, dass die Nullstelle für einige Iterationsschritte nicht mehr zwischen xn und xn+1 liegt.

Zusammenhang mit dem Newton-Verfahren

Das Verfahren lässt sich als Modifikation des Newtonschen Näherungsverfahrens mit der Iterationsvorschrift

xn+1=xnf(xn)f(xn)

auffassen, indem man die Ableitung f(xn) durch den Differenzenquotienten

f(xn)f(xn)f(xn1)xnxn1

ersetzt.

Konvergenz

Aufgrund der Verwandtschaft mit dem Newtonschen Verfahren gelten für die Konvergenz des Sekantenverfahrens ähnliche Bedingungen:

  • Das Sekantenverfahren konvergiert superlinear mit der Konvergenzordnung Φ=1+521,618 (dies entspricht dem Verhältnis des goldenen Schnittes), d. h. die Zahl der korrekten Stellen des Näherungswertes erhöht sich pro Durchgang ungefähr um den Faktor Φ. Dies hängt damit zusammen, dass der Differenzenquotient nur eine Näherung für die Ableitung ist; entsprechend geringer ist die Konvergenzgeschwindigkeit im Vergleich zum quadratisch konvergenten Newton-Verfahren.
  • Das Verfahren verliert an Genauigkeit und Konvergenzgeschwindigkeit, wenn die Ableitung f(x) an der Nullstelle 0 wird, da sich in der Berechnung ein Ausdruck der Form xn+1=xn00f(xn) ergibt. Speziell bei Polynomen entspricht dies einer mehrfachen Nullstelle.
f(xn)f(xn1)xnxn1
mit zunehmender Annäherung an die Nullstelle durch Auslöschung der Ziffern in die Form 0/0 übergeht. Während das Verfahren selbst die Abschätzung für die Nullstelle immer weiter verbessern könnte, wird in der tatsächlichen Berechnung dieser Gewinn in der Nähe der Nullstelle durch zunehmende Rundungsfehler überkompensiert. Dadurch lässt sich auf Rechnern mit endlicher Stellenzahl prinzipiell mit dem Sekantenverfahren nicht die Genauigkeit des Newtonschen Verfahrens erreichen.

Vorteile des Verfahrens

Gegenüber dem Newtonschen Verfahren ergeben sich mehrere Vorteile:

  • Es müssen nur die Funktionswerte berechnet werden. Im Gegensatz zur Newton-Iteration können damit die Nullstellen jeder beliebigen, hinreichend glatten Funktion auch ohne Kenntnis oder Berechnung der Ableitungen berechnet werden.
  • Je Iterationsschritt muss nur der Funktionswert f(x) einmal berechnet werden. Beim Newtonverfahren muss zusätzlich auch noch der Funktionswert der Ableitung f(x) bestimmt werden.
  • Durch die Vorgabe von zwei Startwerten lässt sich das Verfahren besser auf ein bestimmtes Intervall fokussieren, da die Richtung der Sekante durch die beiden Startwerte vorgegeben wird. Die Konvergenz kann dadurch allerdings nicht erzwungen werden.

Das Sekantenverfahren im Mehrdimensionalen

Analog zum mehrdimensionalen Newton-Verfahren kann man auch ein mehrdimensionales Sekantenverfahren definieren, um Nullstellen von Funktionen f:Dnn zu bestimmen.

Wurde im Eindimensionalen die Ableitung durch den Differenzenquotient approximiert, so wird im Mehrdimensionalen die Jacobi-Matrix approximiert:

J(x):=fixj=(f1x1f1x2f1xnf2x1f2x2f2xnfnx1fnx2fnxn)J~(x,h)=(F(x,h)jk)j,k{1,,n},

wobei F(x,h)jk zu einer gegebenen Schrittweitenmatrix hn×n definiert ist durch:

F(x,h)jk:={fjxk(x),falls hjk=0fj(x+hjkek)fj(x)hjk,sonst, sofern x,x+hjkekD ist.

Nun ergibt sich analog zum Newtonverfahren folgende Iterationsvorschrift:

xn+1=xn(J~(xn,h))1f(xn)

Da das Lösen von

Δxn:=(J~(xn,h))1f(xn),

über die Berechnung der Inversen einer Matrix und anschließender Multiplikation mit f(xn) aufwändiger und numerisch ungünstiger ist, wird stattdessen das lineare Gleichungssystem

J~(xn,h)Δxn=f(xn)

gelöst. Danach erhält man xn+1 aus:

xn+1=xnΔxn.

Literatur

  • Martin Hanke-Bourgeois: Grundlagen der numerischen Mathematik und des wissenschaftlichen Rechnens. 1. Auflage. Teubner, Stuttgart 2002, ISBN 3-519-00356-2, Kapitel 18.2.
  • Martin Hermann: Numerische Mathematik, Band 1: Algebraische Probleme. 4., überarbeitete und erweiterte Auflage. Walter de Gruyter Verlag, Berlin und Boston 2020. ISBN 978-3-11-065665-7.