Está en la página 1de 63

CATEDRA 0

Facultad de Ingeniería de Minas, Geología y Civil


Departamento académico de ingeniería de minas y civil

METODOS
NUMERICOS

Ingeniería Civil

ING. CRISTIAN CASTRO P.


Capitulo V
Ecuaciones Algebraicas
No Lineales:
Temas Especiales

ING. CRISTIAN CASTRO P.


Búsqueda de Varias
Raíces de Ecuaciones
No Lineales
Métodos Numéricos
Aplicados a la Ingeniería
BÚSQUEDA DE VARIAS RAÍCES
ECUACIONES CON VARIAS RAÍCES

• Las ecuaciones tienen una o varias raíces y es


menester localizar cada una de ellas.
• La posible existencia de raíces múltiples complica
el problema.
• En la vecindad de la raíz, tanto la función como su
derivada se acercan a cero.
• Las ecuaciones con un número par de raíces múltiples
son tangentes al eje x y no lo cruzan.
• Las ecuaciones con un número impar de raíces múltiples
cruzan al eje x en un punto de inflexión.
• En caso de raíces múltiples, al no haber cambio de signo,
los métodos cerrados no son confiables.
MÉTODO DE BÚSQUEDA INCREMENTAL
• La búsqueda consiste en empezar en un extremo del intervalo de
interés y evaluar la función con pequeños incrementos a lo largo del
intervalo.
• Si la longitud del incremento no es lo suficientemente pequeña,
algunas raíces pueden pasar inadvertidas.
f(x)

2 raíces 3 raíces 2 raíces

x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 x

x x x x x x x x x
MÉTODO DE BÚSQUEDA INCREMENTAL
• El método de búsqueda incremental se utiliza para identificar todas las
raíces de una ecuación, considerando:
• La manera como se presenta físicamente el fenómeno.
• El número de raíces reales y/o complejas que se espera tenga la ecuación,
especialmente cuando se trata de polinomios.
• Es conveniente utilizar tamaños de incremento acordes con el fenómeno
analizado y el número esperado de raíces.
• Ante la sospecha de que la ecuación algebraica o trascendente tenga
más raíces de las encontradas con cierto tamaño de incremento, se
recomienda:
• Obtener las tangentes en los extremos de cada incremento para identificar
cambios de signo y, en su caso, analizar el subintervalo de incremento más
minuciosamente.
• Reducir a la mitad el tamaño de los incrementos.
• Se ha de tener especial cuidado al hacer el bosquejo de una gráfica,
cuando no se dispone de dispositivos que grafiquen de manera confiable
porque el trazado a base de incrementos, puede ser sumamente
engañoso.
MÉTODO DE BÚSQUEDA INCREMENTAL
2

1.5

0.5

0
3.00 3.50 4.00 4.50 5.00

-0.5

-1

f(x)  10senX  3cos X


-1.5

-2
Trazado con incrementos de 0.50, parece que hay solo 2 raíces
-2.5
MÉTODO DE BÚSQUEDA INCREMENTAL
f(x)  10senX  3cos X

x f(x) f'(x) raíces revisar

3.00 -1.899161886 0.306159043

3.50 -0.903719597 -6.397834771 1

4.00 1.588967119 -5.059661863 1

4.50 1.445824188 2.841866609 1

5.00 -1.022062767 7.698796764 1

Trazado con incrementos de 0.50, parece que hay solo 2 raíces


Necesario revisar en 2 subintervalo de incremento más
MÉTODO DE BÚSQUEDA INCREMENTAL
2

1.5

0.5

0
3.00 3.20 3.40 3.60 3.80 4.00 4.20 4.40 4.60 4.80 5.00

-0.5

-1

-1.5
f(x)  10senX  3cos X
-2

Trazado con incrementos de 0.20, parece que hay solo 2 raíces


-2.5
MÉTODO DE BÚSQUEDA INCREMENTAL
f(x)  10senX  3cos X

x f(x) f'(x) raíces revisar

3.00 -1.899161886 0.306159043

3.20 -0.433261175 8.865213949

3.40 -0.185182966 -6.386078685 1

3.60 -1.18610876 1.663171794 1


3.80 0.689859445 12.30872202 1

4.00 1.588967119 -5.059661863 1

4.20 0.082913038 -4.100722292

4.40 0.823585883 8.222212542 1


4.60 1.232603226 -7.152866457 1

4.80 -1.028072018 -9.298416724 1

5.00 -1.022062767 7.698796764 1

Trazado con incrementos de 0.20, parece que hay solo 2 raíces


Necesario revisar en 6 subintervalos de incremento más
MÉTODO DE BÚSQUEDA INCREMENTAL
2

1.5

0.5

0
3.00 3.10 3.20 3.30 3.40 3.50 3.60 3.70 3.80 3.90 4.00 4.10 4.20 4.30 4.40 4.50 4.60 4.70 4.80 4.90 5.00

-0.5

-1

-1.5
f(x)  10senX  3cos X
-2

Trazado con incrementos de 0.10, parece que hay solo 4 raíces


-2.5
MÉTODO DE BÚSQUEDA INCREMENTAL
f(x)  10senX  3cos X
x f(x) f'(x) raíces revisar x f(x) f'(x) raíces revisar

3.00 -1.899161886 0.306159043 4.00 1.588967119 -5.059661863

3.10 -1.396262971 8.774060308 4.10 0.806109949 -9.083697401

3.20 -0.433261175 8.865213949 4.20 0.082913038 -4.100722292

3.30 0.110720707 1.239840209 1 4.30 0.113085296 4.568709698 1

3.40 -0.185182966 -6.386078685 1 1 4.40 0.823585883 8.222212542

3.50 -0.903719597 -6.397834771 4.50 1.445824188 2.841866609

3.60 -1.18610876 1.663171794 1 4.60 1.232603226 -7.152866457 1

3.70 -0.539302106 10.63779828 4.70 0.160731508 -12.92128286

3.80 0.689859445 12.30872202 1 4.80 -1.028072018 -9.298416724 1

3.90 1.611391725 4.952380075 4.90 -1.487337039 0.468684944 1

4.00 1.588967119 -5.059661863 1 5.00 -1.022062767 7.698796764

Trazado con incrementos de 0.10, parece que hay solo 4 raíces


Necesario revisar en 6 subintervalos de incremento más
MÉTODO DE BÚSQUEDA INCREMENTAL
2

1.5

0.5

0
3.00 3.10 3.20 3.30 3.40 3.50 3.60 3.70 3.80 3.90 4.00 4.10 4.20 4.30 4.40 4.50 4.60 4.70 4.80 4.90 5.00

-0.5

-1

f(x)  10senX  3cos X


-1.5

-2
Trazado con incrementos de 0.05, se ve que hay 6 raíces
-2.5
MÉTODO DE BÚSQUEDA INCREMENTAL
0.12

0.1

0.08

0.06

f(x)  10senX  3cos X


0.04

0.02
detalle
0
4.20 4.21 4.22 4.23 4.24 4.25 4.26 4.27 4.28 4.29 4.30

-0.02
MÉTODO DE NEWTON RAPHSON MODIFICADO

1. Consiste en elegir un punto inicial cualquiera x1 como


aproximación de la raíz.
2. Obtener los valores de la función, de su primera y de su
segunda derivada en ese punto.
3. Establecer la función (x) = f(x)/f’(x) y obtener el valor de la
misma en el punto inicial.
4. Trazar una recta tangente a la función (x) por ese punto.
5. El punto de intersección de esta recta con el eje de las
abscisas (x2, 0), constituye una segunda aproximación de
la raíz.
6. El proceso se repite n veces hasta que el punto de intersec-
ción xn coincide prácticamente con el valor exacto de la raíz
MÉTODO DE NEWTON RAPHSON MODIFICADO
f(x)

x
MÉTODO DE NEWTON RAPHSON MODIFICADO
f(x)

x1 x
MÉTODO DE NEWTON RAPHSON MODIFICADO

f’(x1)
f ’(x) f ”(x)

f(x)

x1 x

f(x1)
f”(x1)
MÉTODO DE NEWTON RAPHSON MODIFICADO
(x)
f(x)
(x) 
f '(x)

x1 x

(x1)
MÉTODO DE NEWTON RAPHSON MODIFICADO
(x)

x1 x
MÉTODO DE NEWTON RAPHSON MODIFICADO

• Para deducir la fórmula de recurrencia:


f(x)
(x) 
f '(x)
f '(x)f '(x)  f(x)f "(x) [f '(x)]2  f(x)f "(x)
 '(x)  2

[f '(x)] [f '(x)]2
(xi )
xi1  xi 
 '(xi )
f(x i )[f '(xi )]2
xi1  xi 
 
f '(xi ) [f '(x i )]2  f(xi )f "(xi )
f(xi )f '(xi )
xi1  xi 
[f '(xi )]2  f(xi )f "(xi )
MÉTODO DE NEWTON RAPHSON MODIFICADO
(x)

(xi )
xi1  xi 
 '(xi )

(x2)

x1 x2 x

f(xi )f '(xi )
xi1  xi 
[f '(xi )]2  f(xi )f "(xi )
MÉTODO DE NEWTON RAPHSON MODIFICADO
f(x)

x1 x2 x
MÉTODO DE NEWTON RAPHSON

5
f(X) = x4 - 6x3 + 12x2 - 10x + 3
4

triple raíz
1

0
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4

-1

-2

-3
MÉTODO DE NEWTON RAPHSON MODIFICADO

f(x) = x4 - 6x3 + 12x2 - 10x + 3

iteración Xi f(Xi) f'(Xi) f"(Xi) Xi '(Xi) e(%) e*(%)

1 0 3 -10 24 -0.3 0.28 100.00

2 1.07142857 -0.00070283 -0.02915452 -0.79591837 0.02410714 0.341875 7.14 100.00

3 1.00091408 -1.5268E-09 -5.0102E-06 -0.01095889 0.00030474 0.33343478 0.09 7.05

4 1.00000014 0 -1.1191E-13 -1.6623E-06 0 1 0.00 0.09

5 1.00000014 0 -1.1191E-13 -1.6623E-06 0 1 0.00 0.00

Recurrencia Función x1 = 1, x2 = 1, x3 = 1
MÉTODO DE NEWTON RAPHSON TRADICIONAL
f(x) = x4 - 6x3 + 12x2 - 10x + 3
iteración Xi f(Xi) f'(Xi) e(%) e*(%)
1 0 3 -10 100.00

2 0.3 0.9261 -4.312 70.00 100.00

3 0.51477273 0.28392375 -1.86965136 48.52 41.72

4 0.66663192 0.08644807 -0.81500014 33.34 22.78

5 0.77270315 0.02615522 -0.35695527 22.73 13.73

6 0.84597625 0.0078707 -0.15695571 15.40 8.66

7 0.89612227 0.00235824 -0.06922711 10.39 5.60

8 0.93018753 0.00070426 -0.03060369 6.98 3.66

9 0.95319963 0.00020981 -0.01355167 4.68 2.41

10 0.96868175 6.2398E-05 -0.00600787 3.13 1.60

11 0.97906779 1.8535E-05 -0.00266563 2.09 1.06

12 0.98602119 5.5013E-06 -0.00118337 1.40 0.71

13 0.99067004 1.6319E-06 -0.00052554 0.93 0.47

14 0.99377522 4.839E-07 -0.00023345 0.62 0.31

15 0.995848 1.4345E-07 -0.00010372 0.42 0.21

16

17
0.99723105

0.99815361
4.2519E-08

1.2601E-08
-4.6088E-05

-2.048E-05
0.28

0.18
0.14

0.09
x1 = 1
18 0.99876888 3.7342E-09 -9.1014E-06 0.12 0.06 x2 = 1
19 0.99917917 1.1065E-09 -4.0448E-06 0.08 0.04

20 0.99945274 3.2789E-10 -1.7976E-06 0.05 0.03


x3 = 1
21 0.99963515 9.7155E-11 -7.9891E-07 0.04 0.02

22 0.99975675 2.8788E-11 -3.5507E-07 0.02 0.01


MÉTODO DE NEWTON RAPHSON TRADICIONAL

f(x) = x4 - 6x3 + 12x2 - 10x + 3

iteración Xi f(Xi) f'(Xi) e(%) e*(%)

1 3.4 5.5296 20.736 240.00

2 3.13333333 1.29453827 11.5294815 213.33 8.51

3 3.02105263 0.17379579 8.51327832 202.11 3.72

4 3.00063796 0.00510855 8.01531833 200.06 0.68

5 3.00000061 4.8777E-06 8.00001463 200.00 0.02

6 3 4.4444E-12 8 200.00 0.00

Recurrencia Función X4 = 3
MÉTODO DE NEWTON RAPHSON MODIFICADO

f(x) = x4 - 6x3 + 12x2 - 10x + 3

iteración Xi f(Xi) f'(Xi) f"(Xi) Xi '(Xi) e(%) e*(%)

1 3.4 5.5296 20.736 40.32 0.26666667 0.48148148 240.00

2 2.84615385 -0.96803333 4.71916249 18.7455621 -0.20512821 1.81481481 184.62 19.46

3 2.95918367 -0.30694416 7.05012367 22.5506039 -0.04353741 1.13925926 195.92 3.82

4 2.99739922 -0.02072518 7.93770296 23.9064531 -0.00261098 1.00786364 199.74 1.27

5 2.99998983 -8.1379E-05 7.99975586 23.9996338 -1.0173E-05 1.00003052 200.00 0.09

6 3 -1.2418E-09 8 24 -1.5522E-10 1 200.00 0.00

Recurrencia Función x4 = 3
MÉTODO DE NEWTON RAPHSON

• El método de Newton Raphson tradicional, en la búsqueda de raíces


múltiples, converge linealmente, en vez de hacerlo cuadráticamente,
como sucede en la búsqueda de una raíz simple.

• El método de Newton Raphson modificado, en la búsqueda de raíces


múltiples, converge cudráticamente, al igual que en la búsqueda de
una raíz simple.

• La lentitud en la convergencia del método de Newton Raphson


tradicional es un claro indicativo de la presencia de raíces múltiples.

• A mayor número de raíces múltiples, menor es la velocidad de


convergencia del método tradicional.
MÉTODO DE NEWTON RAPHSON
• El método de Newton Raphson es aplicable al caso
de funciones con raíces complejas, a condición de
que el punto inicial considerado como primera
aproximación sea complejo.
• Haciendo cálculos manuales, se ha de tener cuidado
de cumplir con este requisito.
• Si los cálculos se hacen a través de computadora, el
lenguaje de programación ha de ser capaz de
soportar el manejo de valores complejos, previa
declaración de dimensionamiento.
En Fortran, VB, C, PASCAL, MATLAB tal manejo
está garantizado.
Raíces de Polinomios
de Ecuaciones
No Lineales
Métodos Numéricos
Aplicados a la Ingeniería
Definición

Un polinomio de grado n es una expresión de la forma:


P(x) = anxn + an-1xn-1 + ... +a1x + a0
Donde an <> 0

Teorema (teorema fundamental del álgebra): Si P(x) es un


polinomio de grado n >= 1, entonces P(x) = 0 tiene al menos
una raíz (posiblemente compleja).
Corolario
Si P(x) es un polinomio de grado n >= 1, entonces existen
constantes únicas x1, x2, ... xk, posiblemente complejas, y
enteros positivos m1, m2, ..., mk, tales que:
k

m
i 1
i n

P ( x)  an  x  x1  x  x2 m ...x  xk m
m1 2 k
Método de Horner
Sea
P(x) = anxn + an-1xn-1 + ... +a1x + a0
Si bn = an y

bk = ak + bk+1x0 para k = n – 1, n – 2, ..., 1, 0

Por tanto b0 = P(x0). Más aún, si


Q(x) = bnxn–1 + bn-1xn-2 + ... +b2x + b1
Entonces
P(x) = (x – x0) Q(x) + b0
Ejercicios
Evaluar:

P(x) = 2x4 – 3x2 + 3x – 4 en x0 = –2

P(x) = 7x5 + 6x4 – 6x3 + 3x – 4 en x0 = 3

P(x) = – 5x6 + 3x4 + 2x2 – 4x en x0 = –1


Método de Horner en C
double horner(double p[],int n, double x){
double y = p[0];
int i;
for(i = 1; i<n; i++){
y = x*y + p[i];
}
return y;
}

double eval(double p[],int n, double x){


double s = 0;
int i;
for(i = 0; i<n; i++){
s = s + p[i]*pow(x,n-i-1);
}
return s;
}
Evaluación de la derivada
Dado que:
P(x) = (x – x0) Q(x) + b0
donde
Q(x) = bnxn–1 + bn-1xn-2 + ... +b2x + b1
Derivando
P’(x) = Q(x)+(x – x0)Q’(x)
En x = x0,
P’(x0) = Q(x0)
Evaluación de la derivada en C

void hornerDer(double p[],int n, double


x,double &y,double &z){
y = p[0];
z = p[0];
int i;
for(i = 1; i<n-1; i++){
y = x*y + p[i];
z = x*z + y;
}
y = x*y + p[n-1];
}
Método horner
Entrada: grado n, a0, a1, ..., an, x0
Salida: y =P(x0), z = P’(x0)
1. y = an //calcule bn para P
2. z = an //calcule bn-1 para Q
3. Para j = n –1, n – 2, .... , 1
4. y = x0*y + aj
5. z = x0*z + y
6. y = x0*y + a0
7. regresar y, z
Método de Horner en Matlab
function [y,z]=Horner(x,x0)
%x es un vector con los coeficientes
%de P(x)
%regresa en y el polinomio y en z
%la derivada evaluados en x0
[muda n] = size(x);
y = x(1); %calcule bn para P.
z = x(1); %calcule bn-1 para Q
for j = 2:n-1,
y = x0*y + x(j);
z = x0*z + y;
end
y = x0*y + x(n);
Método de Newton para polinomios

Se puede aplicar el método de Newton para polinomios


evaluando el polinomio y su derivada mediante el método de
Horner.
El esquema sería

P  xn  P  xn 
xn 1  xn   xn 
P '  xn  Q  xn 
Newton para polinomios en C
double NewtonPol(double p[],int n,double x0,double ee,
int ni){
int i=0;
double f,df,x = x0,error;
while(i<ni){
hornerDer(p,n,x,f,df);
x = x0 - f/df;
error = fabs((x-x0)/x);
if(error<=ee)
return x;
i++;
x0 = x;
}
std::cout << "No solución en " << i << " pasos\n";
return x;
}
Método de Müller

Se aproxima el siguiente valor utilizando una parábola en lugar


de una recta como en el método de la secante.
f(x)
f(x) parábola

Línea
recta

Raíz
Raíz estimada
estimada

x
x1 x0 x
x2 x1 x0
raíz
Método de Müller

Utiliza tres aproximaciones: x0, x1, x2.


Determina la siguiente aproximación x3 encontrando la
intersección con el eje x de la parábola definida por los
puntos (x0,f(x0)), (x1,f(x1)), (x2,f(x2)).

x0 x1 x2 x3
Método de Müller

Se considera el polinomio
P(x) = a(x – x2)2 + b(x – x2) + c
Se puede encontrar a, b y c resolviendo
f(x0) = a(x0 – x2)2 + b(x0 – x2) + c
f(x1) = a(x1 – x2)2 + b(x1 – x2) + c
f(x2) = a(x2 – x2)2 + b(x2 – x2) + c
Método de Müller
Se llega a

c  f ( x2 )

 x0  x2   f ( x1 )  f ( x2 )   x1  x2   f ( x0 )  f ( x2 )
2 2
b
x0  x2 x1  x2 x0  x1 

 x1  x2  f ( x0 )  f ( x2 )   x0  x2  f ( x1 )  f ( x2 )
a
x0  x2 x1  x2 x0  x1 
Método de Müller
Los cálculos pueden simplificarse usando

h0  x1  x0
h1  x2  x1
f  x1   f  x0 
d0 
h0
f  x2   f  x1 
d1 
h1
d1  d 0
a
h1  h0
b  ah1  d1
c  f  x2 
Método de Müller

Para minimizar el error al resolver la cuadrática P(x) = 0, se


calcula x3 con
2c
x3  x2 
b  signo(b) b 2  4ac

El proceso se reinicia tomando ahora x1, x2, y x3.


Müller en MatLab
function y = muller(p,x0,x1,x2,ee,ni)
i = 3;
while i<=ni
h1 = x1-x0;
h2 = x2-x1;
[fx0 muda] = horner(p,x0);
[fx1 muda] = horner(p,x1);
[fx2 muda] = horner(p,x2);
d1 = (fx1-fx0)/h1;
d2 = (fx2-fx1)/h2;
a = (d2-d1)/(h2+h1);
b = d2+h2*d1;
c = fx2;
D = sqrt(b*b-4.0*a*c);
if(abs(b-D)<abs(b+D))
E = b+D;
else
E = b-D;
end
h = -2.0*c/E;
x3 = x2+h;
if(abs(h)<ee)
break;
end
x0 = x1;
x1 = x2;
x2 = x3;
i=i+1;
end
y = x3;
Ejemplo
P(x) = 16x4 – 40x3 + 5x2 + 20x + 6

x0 = 0.5 x1 = -0.5 x2 = 0.0


i xi P(xi)
3 -0.555556 + ( -0.598352)i -29.400701 + ( 3.898725)i
4 -0.435450 + ( -0.102101)i 1.332225 + ( 1.193097)i
5 -0.390631 + ( -0.141852)i 0.375058 + ( 0.670168)i
6 -0.357698 + ( -0.169926)i -0.146750 + ( 0.007446)i
7 -0.356051 + ( -0.162856)i -0.001840 + ( -0.000538)i
8 -0.356062 + ( -0.162758)i 0.000002 + ( -0.000001)i
Ejemplo
x0 = 2.5 x1 = 2.0 x2 = 2.3
i xi P(xi)
3 1.960592 + ( 0.000000)i -0.611310 + ( 0.000000)i
4 1.970564 + ( 0.000000)i 0.007455 + ( 0.000000)i
5 1.970447 + ( 0.000000)i 0.000029 + ( 0.000000)i

x0 = 0.5 x1 = 1.0 x2 = 1.5


i xi P(xi)
3 1.287855 + ( 0.000000)i -1.376275 + ( 0.000000)i
4 1.237459 + ( 0.000000)i 0.126945 + ( 0.000000)i
5 1.241605 + ( 0.000000)i 0.002193 + ( 0.000000)i
6 1.241677 + ( 0.000000)i -0.000001 + ( 0.000000)i
Actividad
Encontrar las raíces reales y complejas del
siguiente polinomio por el método de Müller en
MatLab.

P(x) = x4 – 2x3 + 6x2 – 8x + 8


Raíces de no lineales en Matlab
fzero(FUN, x0) – encuentra la raíz de FUN cerca al punto
x0.
Ejemplos:
FUN puede especificarse usando @:
X = fzero(@sin,3)
regresa pi.
X = fzero(@sin,3,optimset('disp','iter'))
regresa pi, usa la tolerancia por omisión y despliega
información de las iteraciones.

FUN puede ser una función en línea:


X = fzero(inline('sin(3*x)'),2);
Polinomios con Matlab
polyval(P, x) – evalua el polinomio P en el punto x. El
polinomio se especifica como un vector donde P(1) es el
coeficiente de la potencia más alta y P(length(P)) es el
término independiente.
polyder(P) – obtiene la derivada delpolinomio P.
con(A, B) – multiplica el polinomio A por el polinomio B.
[Q R] = deconv(A, B) – divide los dos polinomios A y
B y almacena el cociente en Q y el residuo en R.
roots(P) – encuentra todas las raices reales y complejas
del polinomio P.
Método de Bairstow
El enfoque de Bairstow es el de utilizar el Método de Newton
para ajustar los coeficientes r y s en la cuadrática x2 – rx + s
hasta que sus raíces sean también raíces del polinomio que se
quiere resolver.
Con estos coeficientes se determina la cuadrática
correspondiente que se utiliza para simplificar la expresión,
eliminando estas raíces del conjunto buscado.
El proceso se repite hasta que el polinomio se convierta en uno
cuadrático o lineal, momento en que todas las raíces quedan
determinadas.
La División Larga de un polinomio
n
P x    ai x i
i 0

por x2 – rx – s resulta en un cociente de la forma


n2
Q x    bi x i
i 0

y un residuo b1(x – r) + b0 tal que

 
 
n2
Px   x 2  rx  s   bi x i   b1  x  r   b0
 i 2 
Se utiliza la división sintética para obtener la división entre el factor
cuadrático:
bn = an
bn–1 = an–1 + rbn
bi = ai + rbi+1 + sbi+2 (i = n – 2,…, 0)
El método se reduce a determinar los valores de r y s que hacen que el factor
cuadrático sea un divisor exacto.
Se utiliza el método de Newton-Raphson. Se calculan incrementos r y s
para acercarse a la solución.
b1 b
r  1 s  b1
r s
b0 b
r  0 s  b0
r s

Las derivadas parciales se calculan por un proceso de división sintética


similar al utilizado para calcular las b’s.
cn = b n
cn–1 = bn–1 + rcn
ci = bi + rci+1 + sci+2 (i = n – 2,…, 1)
Donde:
b1 b
c2  , c3  1
r s
b b
c0  0 , c2  0
r s

Se resuelven las ecuaciones para r y s y se emplean para mejorar r y s.


Ejemplo

Encontrar las raíces del siguiente polinomio en Excel


P( x) = x5 – 3.5x4 + 2.75x3 + 2.125x2 – 3.88x +1.25
Comience en r = -1 y s = -1
Hoja de Excel de Bairstow

Haga doble clic sobre la hoja para ver las fórmulas. Los valores
en amarillo son los valores que se obtuvieron paso a paso. Los
valores en naranja son los coeficientes del polinomio de grado
n–2 que hay que resolver aplicando el mismo método. Note
que los coeficientes b0 y b1 son casi cero.

Método de Bairstow
n-> 5 4 3 2 1 0r s valores calculados x1 x2
a-> 1 -3.5 2.75 2.125 -3.875 1.25 -0.5 0.5 -1 -1 #¡NUM! #¡NUM!
-0.5 2.5 -4.625 3.875 -1.250000456 Dr Ds -0.6442 0.1381 0.1697 -0.8139
b-> 1 -4 5.25 -2.5 5E-07 -4.55699E-07 7E-08 1E-08 -0.5111 0.4697 0.4759 -0.9870
-0.5 2.75 -6.25 8.375 Error r Error s -0.4997 0.5002 0.5002 -0.9999
c-> 1 -4.5 8.000001 -8.75 8.375 1E-05 2E-06 -0.5000 0.5000 0.5000 -1.0000
sistema b -0.5 0.5
c2,c3 -8.75 8 -4.9E-07 7E-08
c1,c2 8.38 -8.75 4.56E-07 1E-08
Muchas Gracias

También podría gustarte