Das Bairstow-Verfahren ist ein Iterationsverfahren der numerischen Mathematik und dient dazu, die Nullstellen eines Polynoms zu bestimmen.
Merkmale des Verfahrens
Polynome mit reellen Koeffizienten können auch komplexe Nullstellen haben. Mit Verfahren wie der Regula Falsi und dem Newton-Verfahren, die nur eine Nullstelle finden, ist nicht möglich, komplexe Nullstellen zu finden, ohne dass auch die Berechnung im Komplexen mit komplexer Arithmetik ausgeführt wird. Das Bairstow-Verfahren nutzt die Eigenschaft von Polynomen mit reellen Koeffizienten, die besagt, dass komplexe Nullstellen immer paarweise konjugiert auftreten und sich somit als Lösung einer quadratischen Gleichung mit rein reellen Koeffizienten schreiben läßt.
Die Merkmale des Verfahrens in der Übersicht:
- Bei einem Polynom mit reellen Koeffizienten arbeitet das Bairstow-Verafhren vollständig im Reellen und
- findet auch eventuell auftretende, paarweise konjugiert komplexen Nullstellen (a+bi und a-bi).
- Die Nullstellenberechnung wird auch Programmen zugänglich, die mit komplexer Arithmetik nicht umgehen können
- Eine Iteration in reeller Arithmetik ist erheblich schneller, als die Berechnung in komplexer Arithmetik.
Das Bairstow-Verfahren ist aus dem Newton-Verfahren abgeleitet und konvergiert wie dieses mit 2. Ordnung.
Algorithmus
Gegeben sei ein Polynom n-ten Grades, dessen Nullstellen gesucht werden:
- .
Grundzüge des Verfahrens
Das Verfahren beruht auf folgenden Schritten:
- Aus den Startwerten der Iteration für zwei Nullstellen wird ein quadratisches Polynom konstruiert.
- Das Polynom n-ten Grades wird durch dieses quadratische Polynom dividiert
- Das bei der Division entstehende Polynom (n-2)-ten Grades wird erneut durch das quadratische Polynom dividiert
- Bei der Division entstehen Divisionsreste
- Aus den Divisionsresten wird ein verbessertes quadratisches Polynom bestimmt
- Wenn bei der Polynomdivision kein Rest mehr bleibt, sind die Nullstellen des quadratischen Polynoms auch Nullstellen des Polynoms n-ten Grades.
Iteration
- Durch Polynomdivision mit dem quadratischen Polynom
- erhält man ein Polynom (n-2)-ten Grades:
- Die zugehörigen beiden Divisionsreste können mit der folgenden Rekursionsformel zur Bestimmung von berechnet werden:
- Erneute Division von q(x) durch p(x) ergibt sich ein neues Polynom und dessen Divisionsreste und
- wobei ebenfalls eine Rekursionsformel zum Einsatz kommt
- Mit den Divisionsresten verbessert man die Koeffizienten p, l des quadratischen Polynoms:
- Die verbesserten Startwerte ergeben sich aus
Anmerkungen zum Ablauf
- Die Bestimmung von kann als Lösung des folgenden Gleichungssystems aufgefasst werden:
- Das Verfahren läßt sich numerisch relativ einfach, schnell und speichergünstig umsetzen, wenn man nicht erst q(x) berechnet und speichert, sondern die sofort dazu verwendet, auch die Koeffizienten zu berechnen.
- Als Startwerte für die Iteration kann man beispielsweise wählen.
- Die Iteration kann abgebrochen werden, wenn , dann wurden passende Nullstellen gefunden und q(x) ist ein Teiler von f(x). In diesem Fall lohnt es sich, alle Koeffizienten von q(x) bestimmen und dann mit q(x) die nächsten Nullstellen suchen, denn wenn man f(x) die Nullstellen abdividiert, erhält man q(x).
Siehe auch: Regula Falsi, Newton-Verfahren, Polynome