Está en la página 1de 14

Introducción al

Cálculo Numérico
Curso para el Postgrado de Estructuras
de la Escuela de Ingeniería Civil

Prof. Richard Espinoza López


Prof. Sebastián Medina Plascencia

Solución de Ecuaciones No
Lineales.
z Definiciones básicas. ◄

z Método de Bisección. ◄

z Método de la Secante. ◄

z Método de Newton. ◄

z Iteración de Punto Fijo (Iteración Funcional).

z Métodos Específicos para Polinomios.


z Método de Bairstow para factores cuadráticos.
z Otros métodos para polinomios.
Marzo 2007 Introducción al Cálculo Numérico
Richard Espinoza - Sebastián Medina

1
Solución de Ecuaciones No
Lineales.

El mé
método de punto fijo:
Toda ecuación f(x)=0, se puede transformar mediante
manipulaciones algebraicas en la forma: x=g(x)
Ejemplo:
f ( x) = x 2 − 2 x − 3 = 0

x 2 = 2 x + 3 ⇒ x = 2 x + 3 = g1 ( x)
3
x( x − 2) = 3 ⇒ x = = g 2 ( x)
x−2
x2 − 3
2x = x2 − 3 ⇒ x = = g 3 ( x)
2
Marzo 2007 Introducción al Cálculo Numérico
Richard Espinoza - Sebastián Medina

Solución de Ecuaciones No
Lineales.
Teorema del punto fijo: Sea g:[a,b] → [a,b] continua,
entonces:
a) g posee al menos un punto fijo.(x en [a,b] tal que x=g(x)).

Veamos que sucede con el ejemplo anterior

x 2 = 2 x + 3 ⇒ x = 2 x + 3 = g1 ( x)

Marzo 2007 Introducción al Cálculo Numérico


Richard Espinoza - Sebastián Medina

2
Solución de Ecuaciones No
Lineales.
5

0
-2 -1 0 1 2 3 4 5

-1

-2

Marzo 2007 Introducción al Cálculo Numérico


Richard Espinoza - Sebastián Medina

Solución de Ecuaciones No
Lineales.
7

0
0 1 2 3 4 5 6 7

Marzo 2007 Introducción al Cálculo Numérico


Richard Espinoza - Sebastián Medina

3
Solución de Ecuaciones No
Lineales.
Teorema del punto fijo: Sea g:[a,b] → [a,b] continua,
entonces:
a) g posee al menos un punto fijo.(x en [a,b] tal que x=g(x)).

Veamos que sucede con el ejemplo anterior

x 2 = 2 x + 3 ⇒ x = 2 x + 3 = g1 ( x)
3
x( x − 2) = 3 ⇒ x = = g 2 ( x)
x−2

Marzo 2007 Introducción al Cálculo Numérico


Richard Espinoza - Sebastián Medina

Solución de Ecuaciones No
Lineales.
15

10

0
-2,2 -1,2 -0,2 0,8 1,8 2,8 3,8

-5

-10

-15

Marzo 2007 Introducción al Cálculo Numérico


Richard Espinoza - Sebastián Medina

4
Solución de Ecuaciones No
Lineales.
Teorema del punto fijo: Sea g:[a,b] → [a,b] continua,
entonces:
a) g posee al menos un punto fijo.(x en [a,b] tal que x=g(x)).

Veamos que sucede con el ejemplo anterior

x 2 = 2 x + 3 ⇒ x = 2 x + 3 = g1 ( x)
3
x( x − 2) = 3 ⇒ x = = g 2 ( x)
x−2
x2 − 3
2x = x2 − 3 ⇒ x = = g 3 ( x)
2
Marzo 2007 Introducción al Cálculo Numérico
Richard Espinoza - Sebastián Medina

Solución de Ecuaciones No
Lineales.
20

15

10

0
-3 -2 -1 0 1 2 3 4 5 6 7

-5

Marzo 2007 Introducción al Cálculo Numérico


Richard Espinoza - Sebastián Medina

5
Solución de Ecuaciones No
Lineales.
Teorema del punto fijo: Sea g:[a,b] → [a,b] continua, entonces:

a) g posee almenos un punto fijo.

b) Si además ⏐g’(x)⏐≤ k<1, ∀x ∈[a,b], entonces el punto fijo es único y si


tomamos x0 ∈[a,b], la sucesión xn+1 = g(xn) converge al punto fijo de
g(x).

Marzo 2007 Introducción al Cálculo Numérico


Richard Espinoza - Sebastián Medina

Solución de Ecuaciones No
Lineales.

Marzo 2007 Introducción al Cálculo Numérico


Richard Espinoza - Sebastián Medina

6
Solución de Ecuaciones No
Lineales.

Marzo 2007 Introducción al Cálculo Numérico


Richard Espinoza - Sebastián Medina

Solución de Ecuaciones No
Lineales.

Marzo 2007 Introducción al Cálculo Numérico


Richard Espinoza - Sebastián Medina

7
Solución de Ecuaciones No
Lineales.

Marzo 2007 Introducción al Cálculo Numérico


Richard Espinoza - Sebastián Medina

Solución de Ecuaciones No
Lineales.
Algoritmo de Punto Fijo
1.Datos
Estimación inicial: x0
Precisión deseada: tol
Tope de iteraciones: maxiter
2.Proceso: mientras no se consiga convergencia repetir
Nueva estimación: x = g(x0)
Incremento: incr = |x - x0|
Actualización: x0 = x
3.Resultado
Estimación final: x

Marzo 2007 Introducción al Cálculo Numérico


Richard Espinoza - Sebastián Medina

8
División sintética
z Se basa en el Teorema del Residuo. Es una forma
eficiente de evaluar computacionalmente polinomios y
sus derivadas en un punto dado.
z Para el polinomio de grado n:

Pn ( x ) = an x n + an −1 x n −1 +L+ a1 x + a0
z se quiere dividir entre el factor (x – x1) para obtener un
polinomio cociente Qn-1(x) (de grado n-1) y el residuo R
(constante).
Pn (x) R
= Qn−1(x) +
x − x1 x − x1
Marzo 2007 Introducción al Cálculo Numérico
Richard Espinoza - Sebastián Medina

División sintética
z reordenando se obtiene
Pn ( x ) = ( x − x1 )Qn −1 ( x )+ R
z Se debe observar que:
Pn ( x1 ) = ( x1 − x1 )Qn −1 ( x1 )+ R = R
z que es el Teorema del Residuo: “el residuo de dividir un
polinomio entre el factor (x-x1) es el valor de dicho
polinomio en x1”
z Al derivar Pn(x) se obtiene:

Pn′ (x ) = Qn −1 ( x ) + ( x − x1 )Qn′ −1 ( x )

Marzo 2007 Introducción al Cálculo Numérico


Richard Espinoza - Sebastián Medina

9
División sintética
z al hacer x = x1 se tiene

Pn′ ( x1 ) = Qn −1 ( x1 )
z El polinomio Qn-1(x) se evalúa en x1 mediante una segunda
división cuyo residuo es igual a Qn-1(x1).
z Por ejemplo: evaluar el siguiente polinomio y su derivada en
x = 3.
p ( x ) = x 4 +2 x 2 − 3 x − 3

z Usando la división sintética se obtiene:


x = 3 1 0 2 -3 -3
3 9 33 90 p (3) = 87
1 3 11 30 87
3 18 87 p′(3) = 117
1 6 29 117
Marzo 2007 Introducción al Cálculo Numérico
Richard Espinoza - Sebastián Medina

División sintética
z Se desarrolla el algoritmo de división sintética haciendo:
Pn ( x ) = ( x − x1 )Qn −1 ( x )+ R
= ( x − x1 )(bn −1 x n −1 + bn − 2 x n − 2 + L + b1 x + b0 ) + R

z al multiplicar e igualar los coeficientes de términos de igual potencia


se obtiene:

coef de : x n a n = bn −1 ⎫ ⎧b = an
⎪ ⎪ n −1
n −1 ⎪
a n −1 = bn − 2 − x1bn −1 bn − 2 = a n −1 + x1bn −1
⎪ ⎪⎪
:x
: x n − 2 a n − 2 = bn − 3 − x1bn − 2 ⎪⎬ = ⎪⎨bn − 3 = a n − 2 + x1bn − 2
M ⎪ ⎪ M
⎪ ⎪ b0 = a1 + x1b1
: x a1 = b0 − x1b1 ⎪ ⎪
const. : a0 = R − x1b0 ⎪ ⎪⎩ R = a0 + x1b0

Marzo 2007 Introducción al Cálculo Numérico
Richard Espinoza - Sebastián Medina

10
División sintética
z Método de Horner.
z Es la representación computacional de la división sintética.
z Para un polinomio con coeficientes:
a n , a n −1 , K , a1 , a 0
z Se escribe el siguiente método recursivo para hallar su valor en
x=x1 :
⎧Para n = grado del polinomio y x = x1 haga :
⎪ bn = 0


⎪ Para i = n − 1 hasta − 1 haga :
⎪⎩ bi = ai +1 + x1bi +1

z La derivada del polinomio se halla aplicando el mismo proceso a


los coeficientes bi obtenidos.

Marzo 2007 Introducción al Cálculo Numérico


Richard Espinoza - Sebastián Medina

Método de Bairstow
z Es un método de cálculo de raíces de polinomios que
permite calcularlas por pares (conjugados en el caso de
raíces complejas).
z El orden de convergencia del método es casi cuadrático
(1.84), lo que lo hace un método casi tan bueno como
el método de Newton para el cálculo de raíces de
polinomios. Además, a diferencia de Newton, permite
calcular raíces complejas sin necesidad de hacer
cálculos con números complejos.
z Se basa en la división sintética del polinomio Pn(x) por
el cuadrático (x2 - rx - s).
Marzo 2007 Introducción al Cálculo Numérico
Richard Espinoza - Sebastián Medina

11
Método de Bairstow
z La división sintética se puede extender a factores cuadráticos:
( )
Pn ( x ) = x 2 − rx − s Qn − 2 ( x )+ R
= (x − rx − s )(bn x n − 2 + bn −1 x n − 3 + L + b3 x + b2 ) + residuo
2

residuo = b1 ( x − r ) + +b0

z al multiplicar e igualar los coeficientes se obtiene:


an = bn ⎫ ⎧ bn = an
⎪ ⎪
an −1 = bn −1 − rbn ⎪ ⎪ bn −1 = an −1 + rbn
an − 2 = bn − 2 − rbn −1 − sbn ⎪ ⎪ bn − 2 = an − 2 + rbn −1 + sbn
⎪ ⎪
an −3 = bn − 3 − rbn − 2 − sbn −1 ⎬ = ⎨bn − 3 = an −3 + rbn − 2 + sbn −1
M ⎪ ⎪ M
⎪ ⎪
a1 = b1 − rb2 − sb3 ⎪ ⎪ b1 = a1 + rb2 + sb3
⎪ ⎪
a0 = b0 − rb1 − sb2 ⎭ ⎩ b0 = a0 + rb1 + sb2
Marzo 2007 Introducción al Cálculo Numérico
Richard Espinoza - Sebastián Medina

Método de Bairstow
z Se desea encontrar los valores de r y s que hacen b1 y
b0 iguales a cero pues, en ese caso, el factor cuadrático
dividirá exactamente al polinomio.
z El método funciona tomando una primera aproximación
inicial (r0, s0) y generar aproximaciones (rk, sk) cada vez
mejores usando un procedimiento iterativo, hasta que el
residuo de dividir el polinomio por el cuadrático
(x2 - rkx - sk) sea nulo.
z El procedimiento iterativo de cálculo se basa en el
hecho de que tanto b1 como b0 son funciones de r y s.

Marzo 2007 Introducción al Cálculo Numérico


Richard Espinoza - Sebastián Medina

12
Método de Bairstow
z Al desarrollar b1(rk, sk) y b0(rk, sk) en serie de Taylor alrededor
del punto (r*, s*), se obtiene:
∂b1 ∂b
b1 ( r*, s*) = b1 ( rk , sk ) + ( r * − rk ) + 1 ( s * − sk ) + L
∂r ∂s
∂b ∂b
b0 ( r*, s*) = b0 ( rk , sk ) + 0 ( r * − rk ) + 0 ( s * − sk ) + L
∂r ∂s

z Se toma (r*, s*) como el punto donde el residuo es cero y


Δr = r* - rk, Δs = s* - sk. Entonces:
∂b1 ∂b
b1 (r*, s*) = 0 ≈ b1 + Δr + 1 Δs
∂r ∂s
(1)
∂b ∂b
b0 (r*, s*) = 0 ≈ b0 + 0 Δr + 0 Δs
∂r ∂s

Marzo 2007 Introducción al Cálculo Numérico


Richard Espinoza - Sebastián Medina

Método de Bairstow
z Bairstow demostró que las derivadas parciales requeridas se
pueden obtener a partir de las bi mediante una segunda
división sintética entre el factor (x2 - r0x - s0) de la misma forma
en que los bi se obtienen de los ai.
z El procedimiento de cálculo es:
c n = bn
M M
c n −1 = bn −1 + rc n
∂b1 ∂b ∂b ∂b1 ∂b ∂b
c n − 2 = bn − 2 + rc n −1 + sc n = r 2 + b2 + s 3 = c 2 = r 2 + b3 + s 3 = c3
∂r ∂r ∂r ∂s ∂s ∂s
M
∂b0 ∂b ∂b ∂b0 ∂b ∂b
c n − k = bn − k + rc n − ( k −1) + sc n − ( k − 2) = r 1 + b1 + s 2 = c1 = r 1 + b2 + s 2 = c 2
∂r ∂r ∂r ∂s ∂s ∂s

z Así, el sistema de ecuaciones (1) se puede escribir


c2 Δr + c3 Δs = −b1
c1Δr + c2 Δs = −b0
Marzo 2007 Introducción al Cálculo Numérico
Richard Espinoza - Sebastián Medina

13
Método de Bairstow
z Ejemplo.
z Calcular los factores cuadráticos de

x 4 − 6 x 3+9.91x 2 -1.740 x − 4.160


z Usando (x2 – 0.9x – 0.55) como factor inicial (r=0.9, s=0.55).

Aplicación del método de factores


cuadráticos de Bairstow
a4 a3 a2 a1 a0
1 -6 9,91 -1,74 -4,16

r s b4 b3 b2 b1 b0 c4 c3 c2 c1 Delta r Delta s
0,9 0,55 1 -5,1 5,87 0,738 -0,2673 1 -4,2 2,64 0,804 -0,07980167 0,12555324
0,82019833 0,67555324 1 -5,17980167 6,33708856 -0,04156233 0,08695133 1 -4,35960334 3,43690241 -0,16776485 -0,02131843 -0,02633994
0,7988799 0,64921329 1 -5,2011201 6,404143 -0,00049521 -0,00274084 1 -4,40224021 3,53649509 -0,03325324 0,00111786 0,00078553
0,79999775 0,64999882 1 -5,20000225 6,40000871 -2,7452E-06 -4,0789E-06 1 -4,40000449 3,53001382 -0,03599736 2,2465E-06 1,1784E-06
0,8 0,65 1 -5,2 6,4 -1,2874E-11 -1,111E-11 1 -4,4 3,53 -0,036 7,6675E-12 3,2256E-12
0,8 0,65 1 -5,2 6,4 0 0 1 -4,4 3,53 -0,036 0 0

Marzo 2007 Introducción al Cálculo Numérico


Richard Espinoza - Sebastián Medina

14

También podría gustarte