En análisis numérico, el método de Bairstow es un algoritmo eficiente de búsqueda de las raíces de un polinomio real de grado arbitrario. Es un método iterativo, basado en el método de Müller y de Newton Raphson. Dado un polinomio se encuentran dos factores, un polinomio cuadrático
- y
El procedimiento general para el método de Bairstow es el siguiente. Dado:
- y y
- 1. Utilizando el método de Newton Raphson se calcula:
- y , tal que, el residuo de sea igual a cero.
- 2. Se determinan la raíces , utilizando la fórmula general.
- 3. Se calcula
- 4. Se hace
- 5. Si el grado del polinomio es mayor que tres regresamos al paso 2; en caso contrario, terminamos.
La principal diferencia de este método, respecto a otros, es que permite calcular todas las raíces de un polinomio (reales e imaginarias).
Para calcular la división de polinomios, hacemos uso de la división sintética. Así dado:
Al dividir entre , se tiene como resultado el siguiente polinomio:
con un residuo , el residuo será cero solo si lo son.
Los términos b, se calculan utilizando división sintética, la cual puede resolverse utilizando la siguiente relación de recurrencia:
Una manera de determinar los valores de r y s que hacen cero el residuo es utilizar el método de Newton-Raphson. Para ello necesitamos una aproximación lineal de respecto a r y s la cual calculamos utilizando la serie de Taylor
donde los valores de r y s están dados y se calculan los incrementos dr y ds que hacen a y igual a cero. El sistema de ecuaciones que se tiene que resolver es:
Bairstow muestra que las derivadas parciales pueden obtener haciendo un procedimiento similar a la división sintética, así:
donde:
Análisis del algoritmo
El algoritmo de Bairstow tiene orden de convergencia cuadrático como el método de Newton, excepto en el caso de que el polinomio tenga factores cuadráticos de multiplicidad superior a 1, pudiendo ser el orden de convergencia menor.
Enlaces externos
- http://lc.fie.umich.mx/~calderon/programacion/Mnumericos/Bairstow.html
- Weisstein, Eric W. «Algoritmo de Bairstow». En Weisstein, Eric W, ed. MathWorld (en inglés). Wolfram Research.
- Cálculo interactivo de raíces polinomiales utilizando el Método de Bairstow en savetman.com (en inglés)
- Determinación de las raíces de polinomios (gr(P)<= 10) utilizando el Método de Bairstow (en inglés)
- LinBairstowSolve, implementación de código libre en C++ del Método de Lin-Bairstow, disponible como método de la librería VTK (en inglés)
- Descripción en español del método de Bairstow con ejemplos (Universidad Michoacana de San Nicolás de Hidalgo)