Graeffe's method
From Wikipedia, the free encyclopedia
Graeffe's method is an algorithm for finding multiple roots of a polynomial. It was developed independently by Karl Heinrich Gräffe, Dandelin, and Lobachevsky. The method separates the roots of a polynomial by squaring them repeatedly, and uses the Vieta relations in order to approximate the roots.
Let p(x) be an nth degree polynomial.
- p(x) = (x − x1)(x − x2)...(x − xn)
- Then p( − x) = ( − 1)n(x + x1)(x + x2)...(x + xn)
- Hence
The roots of q(x2) (when viewed as a polynomial in the variable x2) are . We have squared the roots of our original polynomial p(x). Iterating this procedure several times separates the roots with respect to their magnitudes. Repeating k times gives a polynomial in the variable of degree n. Write this polynomial as qk(y) = yn + a1yn − 1 + ... + an
with roots y1,y2,...,yn.
Next the Vieta relations are used
- a1 = − (y1 + y2 + ... + yn)
- a2 = y1y2 + y1y3 + ... + yn − 1yn
- an = ( − 1)n(y1y2...yn)
So that if the roots are sufficiently separated
- and so on.
Finally logarithms are used in order to find the roots of the original polynomial. Graeffe's method works best for polynomials with simple real roots, though it can be adapted for polynomials with complex roots and double roots.
[edit] See also
- Root-finding algorithm
- Vieta relations