You are on page 1of 36

Mtodos Computacionales (ING.

INDUSTRIAL)
Informtica Aplicada (ING. MECANICA)

NOTAS DE CLASE DE LABORATORIO

Tema: Races de Ecuaciones no


Lineales
(Parte 1)

ltima revisin: Agosto 2006


Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

Problema:

f (z) 0

problema

z ?

TEOREMA DEL VALOR MEDIO


Dado un intervalo [a,b] en el cual la funcin f es continua y
satisface que su signo en a sea distinto de su signo en b,
entonces existe al menos un punto z, llamado raz, tal que f(z)
= 0.

Mtodo Biseccin
Mtodo Secante y Falsa posicin
Mtodo de Newton, Newton-Raphson
Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

biseccin
falsa posicin
secante
mtodos de Newton

BISECCIN

f(x)

cc
a
bc

Notas de Clase de Laboratorio

Races de Ecuaciones
no Lineales
Ecuaciones
no lineales

Mtodos
Error
Convergencia

biseccin
falsa posicin
secante
mtodos de Newton

BISECCIN
IDEA

Dividir el intervalo en mitades y tomar el valor medio como

ALGORITMO Dada una funcin f en [a, b], donde el sign(f(a)) ~=


sign(f(b)), y una tolerancia (tol)

PASO 1

Calcular un nuevo punto

PASO 2

Sigo? Si |a b| < tol |f(c)| < tol, detengo el proceso y


retorno el valor de c como respuesta

PASO 3

Actualizo el intervalo. Si el sign(f(c)) = sign(f(a)), entonces


a c caso contrario b c. Retorno al paso 1

Notas de Clase de Laboratorio

c = (a + b)/2

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

biseccin
falsa posicin
secante
mtodos de Newton

Matlab: bisec.m, fbisec.m

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

biseccin
falsa posicin
secante
mtodos de Newton

La funcin f(x) = x3 - 3x + 2 tiene una raz simple en x=-2 y una raz doble en

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

Ventajas

Desventajas

biseccin
falsa posicin
secante
mtodos de Newton

convergencia garantizada

pobre velocidad de convergencia


necesidad de intervalo acotado
existencia de otros mtodos ms
rpidos

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

biseccin
falsa posicin
secante
mtodos de Newton

FALSA POSICIN

f(x)

c=b3 c=b2 c=b1


a=a1=a2=a3

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

biseccin
falsa posicin
secante
mtodos de Newton

FALSA POSICIN
IDEA

Similar a Biseccin pero reemplaza el punto medio por el


punto en el cual la recta secante corta al eje x.

ALGORITMO

Dada una funcin f en [a, b], donde el sign(f(a)) ~=


sign(f(b)), y una tolerancia (tol)

PASO 1
PASO 2
PASO 3

Calculo un nuevo punto

ba
c b f b
f b f a

Sigo? Si |a b| < tol |f(c)| < tol, detengo el proceso y


retorno el valor de c como respuesta
Actualizo el intervalo. Si el sign(f(c)) = sign(f(a)), entonces
a c caso contrario b c. Retorno al paso 1

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

biseccin
falsa posicin
secante
mtodos de Newton

Matlab: falsi.m, ffalsi.m

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

Notas de Clase de Laboratorio

biseccin
falsa posicin
secante
mtodos de Newton

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

biseccin
falsa posicin
secante
mtodos de Newton

SECANTE

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

biseccin
falsa posicin
secante
mtodos de Newton

SECANTE
IDEA

Aproximar la funcin por su lnea secante utilizando


siempre los dos puntos ms recientes

ALGORITMO Dada una funcin f en [a, b], un par de puntos xo x1 y una


tolerancia (tol)

PASO 1

Calculo un nuevo punto

x1 x0
x2 x1 f x1
f x1 f x0

PASO 2

Sigo? Si |x2 x1| < tol |f(x2)| < tol, detengo el proceso y
retorno el valor de c como respuesta

PASO 3

Actualizo xo x1; x1 x2 . Retorno al paso 1

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

biseccin
falsa posicin
secante
mtodos de Newton

Matlab: secant.m, fsecant.m

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

Notas de Clase de Laboratorio

biseccin
falsa posicin
secante
mtodos de Newton

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

Ventajas

biseccin
falsa posicin
secante
mtodos de Newton

mejora la convergencia lineal en la


proximidad de una raz simple
mantiene convergencia lineal para races
mltiples
no requiere de derivada

mtodo iterativo puede diverger


Desventajas no es fcil de acotar

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

biseccin
falsa posicin
secante
mtodos de Newton

MTODOS DE NEWTON

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

biseccin
falsa posicin
secante
mtodos de Newton

MTODOS DE NEWTON
IDEA

Utilizar la derivada de f para encontrar la pendiente de


la lnea que aproxima a f

ALGORITMO Dada una funcin f en [a, b], y f ~= 0 en [a,b], un punto de


arranque xo y una tolerancia (tol)

f x0
x1 x0
f x0

PASO 1

Calculo un nuevo punto

PASO 2

Sigo? Si |x1 x0| < tol |f(x1)| < tol, detengo el proceso y
retorno el valor de c como respuesta

PASO 3

Actualizo xo x1 . Retorno al paso 1

f xn 1
xn xn 1
Frmula de recurrencia
f xn 1
Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

biseccin
falsa posicin
secante
mtodos de Newton

Matlab: newt.m, fnewt.m

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

biseccin
falsa posicin
secante
mtodos de Newton

Qu puedo hacer si el clculo de la derivada no est disponible


es muy laborioso ?

Aproximo numricamente el clculo de la/las derivada/s


Frmulas CENTRADAS

f x0 h f x0 h
f x0
2h
f x0 h 2 f x0 f x0 h

f x0
h2

MTODOS DE NEWTON
+
DERIVACIN NUMRICA

Matlab: newtderiv.m

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

df1dx.m
df2dx.m

Mtodos
Error
Convergencia

biseccin
falsa posicin
secante
mtodos de Newton

df1dx.m

Calcular la raz simple de la funcin f(x) = x3 - 3x + 2


utilizando
La derivada analtica y la derivada numrica. Adoptar
diferentes valores del parmetro h
QU ENCONTR?

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

biseccin
falsa posicin
secante
mtodos de Newton

MTODO DE NEWTON-RAPHSON La derivada segunda de la funcin no


se anula en el intervalo

Si f(a) y f(a) tienen igual signo el punto de arranque


adecuado es a caso contrario es b.
IMPORTANTE: f NO SE DEBE ANULAR EN [a,b]
Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

biseccin
falsa posicin
secante
mtodos de Newton

Matlab: newtraph.m

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

biseccin
falsa posicin
secante
mtodos de Newton

La funcin f(x) = x3 - 3x + 2 tiene una


raz simple en x=-2 y una raz doble en
x=1.

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

Ventajas

Desventajas

biseccin
falsa posicin
secante
mtodos de Newton

convergencia cuadrtica cerca de una raz


simple
convergencia lineal cerca de una raz
mltiple
mtodo iterativo puede diverger
requiere evaluar la derivada
no es fcil de acotar

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

redondeo

ERROR DE REDONDEO

No utilice f(a) f(b) > 0 para verificar si el signo


f(a) coincide con el de f(b). Utilice sign(f(a)) =
sign(f(b))
Puede llevar a Underflow.
Un nuevo valor iterado puede ser igual a uno
anterior si la diferencia entre a y b es muy pequea.
La cantidad (b a)/(f(b) f(a)) en el mtodo de
la secante puede llevar a un Overflow, lo mismo en
el caso de utilizar diferenciacin numrica.

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

chequeo
velocidad

MTODOS DE NEWTON

f xk 1 tol ?

f(x)

x*
x k 1 x k

f(x)

k 1

xk 1 xk tol ?

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

chequeo
velocidad

PROXIMIDAD El punto de arranque xo debe estar lo


suficientemente prximo a la raz x*

f(x)

X*

X2

Notas de Clase de Laboratorio

X1

X0

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

chequeo
velocidad

ELECCIN DEL VALOR INICIAL


convergente
divergente

f(x)

x1

x1
x

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

chequeo
velocidad

ELECCIN DEL VALOR INICIAL

f(x)

Oscilacin
Convergencia a

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

chequeo
velocidad

VELOCIDAD DE CONVERGENCIA
Supongamos que la sucesin {xn} converge x y sea En = x-xn para n > 0. Si
existen dos constantes A>0 y R>0 tal que

lim
n

x xn 1
x xn

lim
n

En 1
En

R velocidad (orden) de convergencia


A constante asinttica del error

R=1, se dice que la convergencia es lineal


R=2, se dice que la convergencia es cuadrtica

VERIFIQUE LA VELOCIDAD DE CONVERGENCIA DE LOS MTODOS VIS

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

f(x) = x3 - 3x + 2

chequeo
velocidad

Modifique ligeramente la funcin newt.m a los


fines de poder completar la tabla siguiente (x0 =
-2.4)

en el lmite

En 1 A En

2 (velocidad cuadrtica)

0.66666

Prxima iteracin E(5) ~ 1.6 10-21 !!!!!

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

f(x) = x3 - 3x + 2

chequeo
velocidad

Arrancando de x0 = 1.2 llegamos a la raz doble


x=1

Al costo de

En 1 A En

0.5

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

1 (velocidad lineal)

Mtodos
Error
Convergencia

chequeo
velocidad

Secante?, Falsa posicin?

Mtodo de la secante: 1.618


Utilice los valores de R siguientes
Mtodo de la falsa posicin: 1.

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

resumen

Mtodos
Error
Convergencia

COMPARACIN ENTRE MTODOS ALGORITMOS


Mtodo

Nuevo punto

Actualiza

Biseccin

Parte al medio

Retiene dos
puntos que acotan
la raz

Falsa posicin

Traza una lnea

Retiene los dos


ltimos puntos

Secante

Traza una lnea


(secante)

Retiene dos
puntos que acotan
la raz

Newton

Traza una lnea


(tangente)

Retiene el punto
ms reciente

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales

Mtodos
Error
Convergencia

resumen

COMPARACIN ENTRE MTODOS - CONVERGENCIA

Mtodo

Convergencia

Velocidad de
convergencia

Biseccin

Garantizada

Lenta |En+1|=O(|En|)
|En+1|2-n-1(b-a)

Falsa posicin

Garantizada

Puede ser lenta


|En+1|=O(|En|)

Secante

No garantizada

Rpida
|En+1|=O(|En|(1+5)/2)

Newton

No garantizada

Rpida
|En+1|=O(|En|2)

Notas de Clase de Laboratorio

Races de Ecuaciones no Lineales