In
numerical analysis
Numerical analysis is the study of algorithms that use numerical approximation (as opposed to symbolic manipulations) for the problems of mathematical analysis (as distinguished from discrete mathematics). It is the study of numerical methods th ...
, Bairstow's method is an efficient
algorithm
In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing ...
for finding the
root
In vascular plants, the roots are the organs of a plant that are modified to provide anchorage for the plant and take in water and nutrients into the plant body, which allows plants to grow taller and faster. They are most often below the sur ...
s of a real
polynomial
In mathematics, a polynomial is an expression consisting of indeterminates (also called variables) and coefficients, that involves only the operations of addition, subtraction, multiplication, and positive-integer powers of variables. An ex ...
of arbitrary degree. The algorithm first appeared in the appendix of the 1920 book ''Applied Aerodynamics'' by
Leonard Bairstow.
The algorithm finds the roots in
complex conjugate
In mathematics, the complex conjugate of a complex number is the number with an equal real part and an imaginary part equal in magnitude but opposite in sign. That is, (if a and b are real, then) the complex conjugate of a + bi is equal to a - ...
pairs using only real arithmetic.
See
root-finding algorithm
In mathematics and computing, a root-finding algorithm is an algorithm for finding zeros, also called "roots", of continuous functions. A zero of a function , from the real numbers to real numbers or from the complex numbers to the complex numbe ...
for other algorithms.
Description of the method
Bairstow's approach is to use
Newton's method
In numerical analysis, Newton's method, also known as the Newton–Raphson method, named after Isaac Newton and Joseph Raphson, is a root-finding algorithm which produces successively better approximations to the roots (or zeroes) of a real ...
to adjust the coefficients ''u'' and ''v'' in the
quadratic
In mathematics, the term quadratic describes something that pertains to squares, to the operation of squaring, to terms of the second degree, or equations or formulas that involve such terms. ''Quadratus'' is Latin for ''square''.
Mathematics ...
until its roots are also roots of the polynomial being solved. The roots of the quadratic may then be determined, and the polynomial may be divided by the quadratic to eliminate those roots. This process is then iterated until the polynomial becomes quadratic or linear, and all the roots have been determined.
Long division
In arithmetic, long division is a standard division algorithm suitable for dividing multi-digit Hindu-Arabic numerals ( Positional notation) that is simple enough to perform by hand. It breaks down a division problem into a series of easier steps ...
of the polynomial to be solved
:
by
yields a quotient
and a remainder
such that
:
A second division of
by
is performed to yield a quotient
and remainder
with
:
The variables
, and the
are functions of
and
. They can be found recursively as follows.
:
The quadratic evenly divides the polynomial when
:
Values of
and
for which this occurs can be discovered by picking starting values and iterating Newton's method in two dimensions
:
until convergence occurs. This method to find the zeroes of polynomials can thus be easily implemented with a programming language or even a spreadsheet.
Example
The task is to determine a pair of roots of the polynomial
:
As first quadratic polynomial one may choose the normalized polynomial formed from the leading three coefficients of ''f''(''x''),
:
The iteration then produces the table
After eight iterations the method produced a quadratic factor that contains the roots −1/3 and −3 within the represented precision. The step length from the fourth iteration on demonstrates the superlinear speed of convergence.
Performance
Bairstow's algorithm inherits the local quadratic convergence of Newton's method, except in the case of quadratic factors of multiplicity higher than 1, when convergence to that factor is linear. A particular kind of instability is observed when the polynomial has odd degree and only one real root. Quadratic factors that have a small value at this real root tend to diverge to infinity.
The images represent pairs
. Points in the upper half plane ''t'' > 0 correspond to a linear factor with roots
, that is
. Points in the lower half plane ''t'' < 0 correspond to quadratic factors with roots
, that is,
, so in general
. Points are colored according to the final point of the Bairstow iteration, black points indicate divergent behavior.
The first image is a demonstration of the single real root case. The second indicates that one can remedy the divergent behavior by introducing an additional real root, at the cost of slowing down the speed of convergence. One can also in the case of odd degree polynomials first find a real root using Newton's method and/or an interval shrinking method, so that after deflation a better-behaved even-degree polynomial remains. The third image corresponds to the example above.
Reference
External links
Bairstow's Algorithm on MathworldExample polynomial root solver (deg(''P'') ≤ 10) using Bairstow's Method*
ttp://catc.ac.ir/mazlumi/jscodes/bairstow.php Online root finding of a polynomial – Bairstow's methodby Farhad Mazlumi
{{Root-finding algorithms
Root-finding algorithms