Está en la página 1de 31

Ecuaciones no lineales

Tema 2. Resolución aproximada de ecuaciones

Ecuaciones no lineales 1 / 39
Índice

1 Ecuaciones no lineales
Método de la bisección
Método del punto fijo
Método de Newton
Método de la secante
Aceleradores
2 Resolución numérica de sistemas de ecuaciones
Método iterativo del punto fijo
Método de Newton-Raphson
Método de Broyden
Métodos de continuación
3 Métodos con dirección de búsqueda
4 Métodos de Newton inexactos

Ecuaciones no lineales 2 / 39
Introducción. Problema: Oscilación amortiguada de una estructura.
Supongamos que la oscilación de una estructura, dotada de un sistema de
amortiguación, ante un movimiento oscilatorio, viene dada por la función

t
y (t) = 10 e 2 cos 2t.

...
t/2
Se trata de resolver la ecuación 10 e cos 2t = 4, de incógnita t.

Este problema es imposible de resolver por medios analíticos sencillos.


Ecuaciones no lineales

Los métodos para la búsqueda de raı́ces de una función generalmente


se clasifican en
Métodos cerrados. Se parte de un intervalo en el que se sabe que hay al
menos una raı́z y convergen siempre. Método de la Bisección.
Métodos abiertos. Se parte de una aproximación inicial y tienen un
cierto radio de convergencia. Método del punto fijo, Método de
Newton, Método de la secante.

Ecuaciones no lineales 3 / 39
Método de la bisección
Supongamos, por ejemplo, que se quiere calcular una solución de la
ecuación
x2 = 2 ,
sabiendo que la solución está en un intervalo [a, b] = [1, 2].
Probamos con un punto c que sea el punto medio del intervalo
a+b
c= ,
2
calculamos c 2 = (1,5)2 = 2,25. Como c 2 > 2, entonces tendremos que la
raı́z estará en un nuevo intervalo [a0 , b0 ] = [a, c].
Repitiendo esta estrategia se van obteniendo intervalos cada vez más
pequeños que contienen la raı́z buscada.
f (a)
f (a)
Méthode de la bisection

a z c
b
a b
f (c)

4 / 39
Método de la bisección & (Teorema de Bolzano)

Bisección
Se parte de una intervalo [an , bn ] tal que f (an ) f (bn ) < 0. Entonces f (x)
tiene una raı́z en el intervalo. Se construye un intervalo [an+1 , bn+1 ] que
también la contiene del siguiente modo. Se calcula
bn − an
cn = an + ,
2
y luego
an+1 = an y bn+1 = cn si f (an) f (cn) < 0 ,
o bien
an+1 = cn y bn+1 = bn si f (an) f (cn) > 0 ,

Ecuaciones no lineales 6 / 39
Convergencia del método Bisección

Teorema: Si f(x) es una función continua en [a, b], entonces el


método de la bisección converge a una raíz r tal que f(r) = 0.
lı́m an = lı́m bn = lı́m cn = r
n→∞ n→∞ n→∞

Aproximación y error
Una aproximación a la solución de la ecuación f(x) = 0. en el paso n es
cn. Una cota del error cometido será:
1 |b − an | = 1 |bn−1 − an−1|| =
= 1 |b − a|.
|r − cn | ≤ n
2 2
2 2n+1
t
Se trata de resolver la ecuación f (t) = 10 e 2 cos 2t − 4 = 0.
Supongamos que deseamos que en ≤ ε = 10−3 .

Resolución aproximada del problema de la oscilación amortiguada de una estructura

Como f (0) = 6 > 0 y f (1) = −6.524 < 0 entonces podemos tomar [a, b] = [0, 1].
El número de iteraciones que debemos realizar para asegurar la tolerancia
de error considerada es:
1
log −3
n≥ 10 − 1 ≈ 8.966,
log 2

t = 0.5128
function alpha=biseccion(a,b,f,E)
Método de la bisección % función a calcular ceros
f=inline('f','x') %a=0,b=1,E=0.01
close
M=2; clc
a=1; if sign(b)~=sign(a)
b=2; l=abs(b-a);
k=0; while l/2>E
l=abs(b-a);
tol=1.0e-5; xn=a+l/2;
while (b-a) >tol Fxn=feval(f,xn);
x=(a+b)/2; Fa=feval(f,a);
if x^2>M if sign(Fxn)==sign(Fa)
b=x; a=xn;
else
else b=xn;
a=x; end
end end
k=k+1; else
end disp('Hay un error')
end
sol=(a+b)/2
alpha=xn;
10
Converge más rápidamente que el Método de Bisección.
1. x0 = a, x1 = b
xn−1 f (xn ) − xn f (xn−1 )
2. Para n = 1, 2 . . ., hacer xn+1 =
f (xn ) − f (xn−1 )

Método de la secante

t
f (t) = 10 e 2 cos 2t − 4 = 0.
Tomando x0 = 0 y x1 = 1, se obtiene la siguiente sucesión de
aproximaciones:
x2 = 0.479078
x3 = 0.517905 con lo cual podemos afirmar que una
x4 = 0.513640 aproximación con cuatro decimales
x5 = 0.513652, exactas de la solución es 0.5126.
Método de Newton -Rapshon
Este m´etodo se basa en utilizar el desarrollo de Taylor. Escribimos
x1 = x0 + ∆x, o recta tg y − f (x0) = f 0(x0)(x − x0),

f (x1) = f (x0) + f 0 (x0) ∆x + o (∆x2)

y suponiendo que f (x1) = 0, queda


f (x0 )
x1 = x0 − .
f 0 (x0 )

El método de Newton-Raphson se basa en esta ecuación y consiste en


calcular los valores de una sucesión de la forma
f (xn )
xn+1 = xn − .
f 0 (xn )

(UPV) Ecuaciones no lineales Curso 2011-2012 12 / 39


Método de Newton-Raphson
Algoritmo: f (xn )
1. Dado x0 2. Para n = 1, 2 . . ., hacer xn+1 = xn −
n f 0 (xn )

y mediante esta relación obtenemos una sucesión, {xn }n∞=1 de


aproximaciones al valor de la raíz buscada.
El error que se comete en la iteración n-ésima será

| r − xn |<
M
| xn − xn−1 | , f ′′ (θ )
en+1 = ′ n e n .
2m 2f (xn)
00
donde 0 < m ≤| f (x) | y | f (x) |≤ M, ∀x ∈ (a, b).
Método de Newton-Rapshon

Otro modo de obtener este método consiste en suponer que f : [a, b] → R


es continua en [a, b] y tal que f 00 (x) no cambia de signo en [a, b] con
f (a)f (b) < 0. El proceso para encontrar un x tal que f (x) = 0 consiste en
lo siguiente:
1) Fijamos c = a ó b, tal que f (c)f 00 (x) > 0, ∀x ∈ (a, b).
2) x0 = c.
3) Hallamos la ecuación de la tangente que pasa por (x0 , f (x0 ))
y el punto de corte de dicha tangente con el eje X . El
proceso se repite hasta conseguir una sucesión de
aproximaciones que converge a la raı́z de f (x) = 0.

(UPV) Ecuaciones no lineales Curso 2011-2012 13 / 39


Método de Newton-Raphson

Observaciones sobre el Método de Newton-Raphson

Es el más rápido
Requiere que f 0 (s) 6= 0
Elegir x0 puede ser delicado
La acotación del error es complicada
El criterio de parada más usual es la repetición de cifras.
Otro problema es localizar las raíces: Ejemplo y = 4x4 - 4x2
Método de Newton-Raphson
Ejemplos
A continuación presentamos la solución aproximada de algunas
ecuaciones con el método:

--> caso
diverdente
Código (Newton-Raphson)
function
alpha=Newton_tol(f,fpri,tol,x0)
xm=x0;
a=1;
while a>tol
xn=xm;
Numera=feval(f,xn); Denomi=feval(fpri,xn);
xm=xn-Numera/Denomi;
a=abs(xm-xn);
end
xm

Este código necesita de la


función y de su derivada
para ser ejecutado. Además
hay que pasarle una
tolerancia y un punto
inicial.
Método del punto fijo
Punto fijo
Diremos que un punto p es un punto fijo de una función ϕ(x) si se
satisface ϕ(p) = p.

Supongamos que se busca una raı́z de una ecuación


f (x) = 0 ,
el método del punto fijo consiste en reescribir esta ecuación de la forma
x = ϕ(x) ,
y construir una sucesión de la forma
x1 = ϕ(x0 )
x2 = ϕ(x1 )
..
.
xn+1 = ϕ(xn )
Ecuaciones no lineales
Application de la méthode du point fixe (cont’d)
Método del punto fijo
Soit h(x) = x − 2 x4/5 + 2 = 0 et les 2 fonctions d’itération
 x + 2 5/4
g1 (x) = 2x4/5 − 2 g2 (x) =
2
Dada la ecuación
h = inline(’x - 2*x.^(4/5) + 2’);
bracketing(h,0,50,30)
ans = x − x 4/5 − 2 = 0
f (x) g2FPI(g2,18.5)
== inline(’((x+2)/2).^(5/4)’);
3.3333 5.0000
ans =
18.3333 20.0000
si tomamos la función de iteración
g1 = inline(’2*x.^(4/5) - 2’);
19.7603
FPI(g2,3,5)
??? Error using ==> fpi
FPI(g1,18.5)
Maxit in FPI
ans =
19.7603
NOS (4311010) – M. Gilli g (x) = x 4/5 + 2 Spring 2008 – 88

Las iteraciones
Convergence de la méthode de point fixe (illustrations)
Soit f (x) = x − x4/5 − 2 = 0 et la fonctions d’itération g1 (x) = x4/5 + 2

3 3 3

1 1 1

5.28
4.41

1 3 4.41

Mais avec la fonctions d’itération g2 (x) = (x − 2)5/4

Ecuaciones no lineales
Método del punto fijo

Si existe un m tal que xm+1 ≈ xm, se cumplirá que xm ≈ ϕ(xm) y, por


tanto, se podrá tomar como valor aproximado de la raı́z xm .
Ejemplo
Suponemos que se quiere buscar una raı́z de la función

f (x) = x 3 + 4x 2 − 10

en [1, 2]. Se pueden hacer diferentes elecciones de la función ϕ(x), por


ejemplo,
1/2
a) ϕ1 (x) = x − x 3 − 4x 2 + 10; b) ϕ2 (x) = 10x − 4x ;
1 3 1/2 1/2

c) ϕ3 (x) = 2 10 − x ;  d) ϕ4 (x) = (10/(4 + x)) ;
e) ϕ5 (x) = x − x 3 + 4x 2 − 10 / 8x + 3x 2


Ecuaciones no lineales
Método del punto fijo
Resultado para la iteración del punto fijo x = ϕ(x).
n a) b) c) d) e)
0 1.5 1.5 1.5 1.5 1.5
1 -0.875 0.8165 1.286953768 1.348399725 1.37333333
2 6.732 2.9969 1.402540804 1.367376372 1.365262015
3 -469.7 – 1.345458374 1.364957015 1.365230014
4 1.03 ×108 1.375170253 1.365264748 1.365230013
5 1.360094193 1.365225594
6 1.367846968 1.365230576
7 1.363887004 1.365229942
8 1.365916734 1.365230022
9 1.364878217 1.365230012
10 1.365410062 1.365230014

1º f(x)=0→-g(x)+x=0→g(x)=x
2º f(x)=0→f(x)+x=x→g(x)=x. En muchos casos g(x)=x-λ*f(x) que es una forma similar
Una buena forma de elegir λ si el signo de g(x) es constante en eun intervalo en es:
2 2
Si f(x)>0 𝜆 = Si f(x)<0 𝜆 =
max 𝑓′ min 𝑓′
Ecuciones no lineales
Teorema: Si F es una función contractiva que va de un cerrado C ⊂ R
en C (F (C) ⊂ C), entonces F tiene un único punto fijo r ∈ C. Además, r
es el líımite de cualquier sucesión que se obtenga a partir de la expresión
xn+1 = F (xn) siendo x0 ∈ C.
Teorema (Teorema del punto fijo)
Sea ϕ : [a, b] → [a, b] una función continua en [a, b] y derivable en ]a, b[, y
además que cumple que | ϕ0(x) |≤ k < 1, ∀x ∈]a, b[. Entonces existe un único
c ∈]a, b[ tal que ϕ(c) = c. Además para todo x0 ∈]a, b[, la sucesión x0, {xn}n
obtenida de la forma xn = ϕ(xn−1) converge a c.

Este teorema ayuda a elegir una función ϕ(x) adecuada,


ϕ4 (x) = (10/(4 + x))1/2 ;
0 √
ϕ4 (x) = 10 (−1/2) (4 + x)−3/2 ;
0 √ √
ϕ4 (x) = 10/2 (4 + x)−3/2 < 10/(2 · 53/2 ) = 0,141 < 1 .

La sucesión converge en [1, 2].

Ecuaciones no lineales 11 / 39
Interpretación gráfica de los métodos iterativos
Según sea g (x) y se elija x0 , los métodos iterativos pueden ser
convergentes o divergentes y, en ambos casos pueden variar en forma
espiral o en escalera, como se indican en los siguientes gráficos.
Convergencia de los métodos iterativosivos

Definición 2
Se define el orden de convergencia de una sucesión {xn } hacia un valor

_
s como aquel número real p ≥ 1 tal que
lim en+1 = λ 6= 0, ∞.
n→+∞ enp

Se deduce que si {xn} → s con orden de convergencia p ≤ 1 entonces


en+1 ≈ λenp, n → +∞.
Método de Aitken
Método de Steffensen

Método de Aitken

Teorema de aceleración de Aitken


Sea xn → s al menos linealmente. Se define

(xn+1 − xn )2
xn = xn − .
xn+2 − 2xn+1 + xn
b

xn → s más rápidamente en el sentido


Entonces b

en
b
lim = 0,
n→+∞ en

siendo b xn − s y en = xn − s.
en = b
Método de Aitken
Método de Steffensen

Método de Steffensen
Dado x0 , consideremos el método iterativo xn+1 = g (xn ). Sean x1 y x2
las dos primeras aproximaciones.
Definimos
(x1 − x0 )2
x000 = x0 − ,
x2 − 2x1 + x0

Y, en general, para cada n >= 0, se define


(n+1)
x0 = xn00
(n+1) (n+1)
x1 = g (x0 ),
(n+1) (n+1)
x2 = g (x1 ),
(n+1) (n+1) 2
00 (n+1) (x1 − x0 )
xn+1 = x0 − (n+1) (n+1) (n+1)
.
x2 − 2x1 + x0
Ejemplo La siguiente tabla muestra las sucesiones de aproximaciones
obtenidas mediante el método de iteración funcional xn+1 = g (xn ), el
método de aceleración de Aitken y el de superaceleración de Steffensen.

Comparación convergencias
En concreto se considera g (x) = e−x y x0 = 0.5 (que tiene convergencia
lineal):
Sistemas de ecuaciones
Partimos, por ejemplo, de un sistema de dos ecuaciones de la forma
f1 (x, y ) = 0 ,
f2 (x, y ) = 0 ,
del que se pretende obtener la solución. Para utilizar el método del punto
fijo, se reescribe el sistema de la forma
x = g1 (x, y ) ,
y = g2 (x, y ) .
Se construye la sucesión
(xn+1 , yn+1 ) = (g1 (xn , yn ), g2 (xn , yn ))
que como ocurre en el caso escalar la eficiencia del método dependerá de
la elección de las funciones g1 y g2 .
Se puede hacer una implementación similar al método de Jacobi y otra
como la de Gauss-Seidel.
Ecuaciones no lineales
Método iterativo del punto fijo

Ejemplo
Suponemos que se quiere buscar una solución del sistema

x 2 − 10x + y 2 + 8 = 0 ,
xy 2 + x − 10y + 8 = 0 .

Se eligen
1  2 
x = x + y2 + 8 ,
10
1  2 
y = xy + x + 8 .
10
Se parte de (x, y ) = (0, 0) y, utilizando el método del punto fijo,

Ecuaciones no lineales

También podría gustarte