Sunteți pe pagina 1din 10

Sea f : R R. Dada la ecuacin o 1. Tiene alguna solucin? o 2. Cuntas? a 3. Cmo las calculamos?

f (x) = 0

2.1.

Existencia y unicidad de soluciones

c (a, b) tal que f (c) = 0.

Teorema 2.1 (Bolzano) Sea f : [a, b] R continua tal que f (a)f (b) < 0. Entonces existe

Teorema 2.2 (Rolle) Sea f : [, ] R una funcin continua en [, ] y derivable en (, ). o Si f () = f (), entonces existe (, ) tal que f () = 0.
om

2.2.

Mtodo del punto jo. e


w.

Cambiamos el problema. Vamos a resolver:


ww

Las soluciones de este problema se llaman puntos jos de g. Teorema 2.4 Si g C[a, b] y a g(x) b x [a, b], entonces existe un punto jo de g:

existe c [a, b] tal que c = g(c).

Teorema 2.5 Si adems g es derivable en (a, b) y |g (x)| < 1 x (a, b), entonces el punto a jo es unico.

La iteracin de punto jo se dene como o x0 R (semilla) xn+1 = g(xn ) para n 0. Generamos as de manera recursiva una sucesin (xn ). o

at
x = g(x)

em

at

ic a

1.c

Corolario 2.3 Si f (x) = 0 en (a, b), entonces la c del teorema de Bolzano es unica.

Teorema 2.6 Si g es continua y l xn = c, entonces c = g(c). m


n

Ejemplo 2.1 Vamos a resolver la ecuacin o x = ex con dos cifras de precisin: o


0.65

x0 x1 x2 x3 x4 x5 x6 x7 x8

= = e0.50 = e0.61... = e0.55... = e0.58... = e0.56... = e0.57... = e0.56... = e0.57...

= 0.50 = 0.61 . . . = 0.55 . . . = 0.58 . . . = 0.56 . . . = 0.57 . . . = 0.56 . . . = 0.57 . . . = 0.57 . . .

exp(x) x

0.6

0.55

0.5

0.45 0.45

0.5

0.55

0.6

0.65

La solucin es c = 0.57 . . .. o Nota: Puede que haya punto(s) jo(s) pero que la iteracin de punto jo no converja. Por o ejemplo, para resolver x = x2

Ejemplo 2.2 a) La funcin f (x) = x/2 + 3 es contractiva en cualquier intervalo: o 1 |f (x1 ) f (x2 )| = |x1 /2 + 3 (x2 /2 + 3)| = |x1 /2 x2 /2| = |x1 x2 |. 2 Luego la constante de contractividad en este caso es k = 1/2. b) La funcin f (x) = |x|/2 es contractiva en cualquier intervalo. Por las propiedades del valor o absoluto tenemos: 1 |f (x1 ) f (x2 )| = |x1 |/2 |x2 |/2 |x1 x2 |. 2 Teorema 2.8 Si g : [a, b] R es contractiva con constante de contractividad 0 < k < 1 en [a, b] y adems a a g(x) b x [a, b], entonces la iteracin de punto jo converge hacia la unica solucin c del problema para cualquier o o semilla x0 [a, b]. Adems se tienen los siguientes resultados sobre el error: a |c xn | k n |c x0 |, |c xn | kn k |x1 x0 |, |c xn | |xn xn1 | 1k 1k

ww w.

Denicin 2.7 Una funcin g : [a, b] R se dice contractiva si existe 0 < k < 1 tal que o o |f (x1 ) f (x2 )| k|x1 x2 | para todo x1 , x2 [a, b].

at

em

que tiene dos puntos jos c = 0 y c = 1. Si arrancamos en x0 = 2, se tiene que x1 = 4, x2 = 16, x3 = 32, ... Claramente xn +.

at

ic

a1

.c

om

En la prctica, para comprobar que una funcin derivable g(x) cumple la condicin de mapeo a o o a g(x) b x [a, b] no hay que comprobar todos los puntos del intervalo. Basta con hallar todos los puntos xi (a, b) tales que g (xi ) = 0 y comprobar que a g(xi ) b, a g(a) b y a g(b) b. El siguiente resultado nos proporciona una forma de ver si una funcin es contractiva. o Teorema 2.9 Si g C 1 [a, b] y existe 0 < k < 1 tal que |g (x)| k < 1 x [a, b], entonces g es contractiva en [a, b]. En la prctica, para comprobar si una funcin derivable 2 veces g(x) es contractiva, habr que a o a hallar los puntos pi (a, b) tales que g (pi ) = 0 y ver que |g (pi )| < 1 para todos ellos, |g (a)| < 1 y |g (b)| < 1. En este caso se puede tomar k = mx{|g (a)|, |g (b)|, |g (pi )|}. a

2.3.

Mtodos de aproximacin de ra e o ces.

Mtodo de biseccin: Se basa simplemente en el Teorema de Bolzano. Generamos 3 sucesiones e o (an ), (bn ) y (cn ) de la siguiente manera: a0 = a, b0 = b Para n 0

an + b n 2 si f (cn+1 ) f (bn ) < 0, tomamos an+1 = cn+1 , bn+1 = bn cn+1 =

si f (cn+1 ) f (an ) < 0, tomamos an+1 = an , bn+1 = cn+1 Por ejemplo: las sucesiones generadas por el mtodo de biseccin para resolver la ecuacin e o o x cos(x) = 0 en [0, /3] con XT OL = 5 103 , son n a b c fa fb fc n n n+1 ====================================== 0 0.00 1.05 0.52 -1.000 +0.547 -0.342 1 0.52 1.05 0.79 -0.342 +0.547 +0.078 2 0.52 0.79 0.65 -0.342 +0.078 -0.139 3 0.65 0.79 0.72 -0.139 +0.078 -0.032 4 0.72 0.79 0.75 -0.032 +0.078 +0.023 5 0.72 0.75 0.74 -0.032 +0.023 -0.005 6 0.74 0.75 0.74 -0.005 +0.023 +0.009 7 0.74 0.74 0.74 -0.005 +0.009 +0.002

ww w.

at em
0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 1 0

at ic a1

.c o
0.2

0.4

0.6

0.8

1.2

1.4

generada por el mtodo de biseccin converge hacia algn c (a, b) tal que f (c) = 0. Adems e o u a |cn c| bn an = ba . 2n

Teorema 2.10 Sea f : [a, b] R continua tal que f (a)f (b) < 0. Entonces la sucesin cn o

Mtodo de regula falsi: En el mtodo de biseccin no se usa ninguna informacin sobre e e o o el valor de la funcin, slo sobre su signo. Podemos mejorar eso cambiando la forma de tomar o o cn+1 . Ahora va a ser el punto de corte con el eje OX de la recta que pasa por los puntos (a, f (a)) y (b, f (b)): cn+1 = bn f (bn ) XT OL = 5 103 son n a n b n c n+1 b n an f (bn ) f (an )

Las sucesiones generadas por el mtodo de regula falsi para x cos(x) = 0 en [0, /3] con e

fa

fb

fc

0 0.00 1.05 0.68 -1.000 +0.547 -0.103 1 0.68 1.05 0.74 -0.103 +0.547 -0.006 2 0.74 1.05 0.74 -0.006 +0.547 -0.000

existe una constante 0 < k < 1 y n0 N, tal que

|cn c| k|cn1 c| n n0 . Velocidad de convergencia: Antes de seguir estudiando mtodos, vamos a dar una denicin e o que nos ayude a distinguir los mtodos rpidos de los mtodos lentos. e a e Denicin 2.12 Sea (xn ) una sucesin tal que xn x. Diremos que el orden de convergencia o o |x xn+1 | k|x xn |p n n0 Si p = 1, y 0 < k < 1 la convergencia se dice lineal y k se llama factor de convergencia. Si p = 2, la convergencia se dice cuadrtica. Si a x xn+1 =0 n |x xn | l m la convergencia se dice superlineal.

de xn hacia x es p > 0 si existe k > 0 y n0 N tal que

ww

generada por el mtodo de regula falsi converge hacia algn c (a, b) tal que f (c) = 0. Adems, e u a
w.

Teorema 2.11 Sea f : [a, b] R continua tal que f (a)f (b) < 0. Entonces la sucesin cn o

at

em

at

ic a

1.c

om

======================================

Si p > 1 y < , el orden de convergencia es p. Si p = 1 y = 0, la convergencia es superlineal. Si p = 1 y 0 < < 1, la convergencia es lineal. Ejemplo 2.3

En la prctica, una de las maneras de comprobar si el orden de convergencia de una sucesin a o es p es calcular el l mite |x xn+1 | l m = n |x xn |p

a) xn = 1/n x = 0, pero la convergencia no es ni siquiera lineal porque 1/(n + 1) |0 1/(n + 1)| = l m =1 1 n n |0 1/n| 1/n l m b) xn = 1/2n x = 0 linealmente porque 1/2n+1 = 1/2 n |1/2n |1 l m
.c om
n

n | 1/n | 1/2^n Converger linealmente es converger muy des- ----+------+---------pacio. En cada iteracin aumentamos el 1 | 1.00| 0.50000 o nmero de decimales exactos en una canti- 2 | 0.50| 0.25000 u dad ja que es aproximadamente log10 (1/k). 3 | 0.33| 0.12500 Para 1/n, log10 (1) = 0, as que no podemos 4 | 0.25| 0.06250 decir nada sobre los decimales exactos gana- 5 | 0.20| 0.03125 6 | 0.17| 0.01563 dos en cada iteracin. o n Para 1/2 , log10 (2) 0.3, as que ms o 7 | 0.14| 0.00781 a menos cada 3 iteraciones ganamos 1 decimal 8 | 0.13| 0.00391 9 | 0.11| 0.00195 exacto. 10 | 0.10| 0.00098 c) El mtodo de biseccin converge, pero la convergencia cn c no es ni siquiera lineal en e o general, ya que puede darse el caso de que el error |cn c| crezca en algunas iteraciones en vez de disminuir. Sin embargo, la convergencia bn an 0 s es lineal.
n

d) xn = 1/22 x = 0 cuadrticamente porque a 22 2 |1/22 | = l m 2n 2 = 1 l m n n 2 n (1/22 )2 Converger cuadrticamente es converger bastante rpido. Aproximadamente en cada iteraa a cin duplicamos el nmero de decimales exactos. o u n | 1/2^(2^n)
n+1

----+-------------------1 | 0.250000000000000

ww

w.

at em

at ic a1

2 | 3 | 4 | 5 | 6 |

0.062500000000000 0.003906250000000 0.000015258789063 0.000000000232831 0.000000000000000

Mtodo de la secante: Observa que al hacer regula falsi para resolver x cos(x) = 0 en e

[0, /3], siempre nos hemos apoyado en el punto b original, que est lejos de la solucin. Para a o hacer la iteracin 2 lo mejor ser haberse apoyado en los puntos de abscisas 0.68 y 0.74, que son o a los que mejor informacin tienen sobre la solucin por ser los ultimos que se han encontrado. o o En eso consiste el mtodo de la secante: e Tomar x0 , x1 dos semillas (preferentemente que cumplan la condicin de Bolzano de o cambio de signo) Para n 1 denimos xn xn1 f (xn ) f (xn1 )
.c o m

xn+1 = xn f (xn )

fx

================== 0 0.0000 -1.0000 1 1.0472 +0.5472 2 0.6768 -0.1027 3 0.7354 -0.0062 4 0.7391 +0.0001
ww

Como el ejemplo es muy sencillo sale el mismo trabajo que para regula falsi (antes calculbamos a c1 , c2 , c3 , y aqu x2 , x3 , x4 ). Teorema 2.13 Sea > 0 y f C 2 (c , c + ), tal que f (c) = 0 y f (c) = 0. Existe > 0

tal que si x0 , x1 (c , c + ), la sucesin xn generada por el mtodo de la secante converge o e a hacia c, y el orden de convergencia es al menos = (1 + 5)/2 1.618. Adems |c xn+1 | 1 f (c) l m = n |c xn | 2 f (c)
1

Mtodo de Newton Cuando en el mtodo de la secante los puntos consecutivos estn muy e e a juntos, la recta secante a la curva en esos puntos tiende hacia la tangente, y la pendiente de esta recta es la derivada en el punto. El mtodo de Newton se escribe pues e Tomar x0 una semilla.

w.

at

em

at

ic a1

En este caso la sucesin generada es: o

Para n 0 denimos

xn+1 = xn

f (xn ) . f (xn )

De nuevo x cos(x) = 0 con XT OL = 5 103 . n x fx dfx ========================== 0 0.0000 -1.0000 +1.0000 1 1.0000 +0.4597 +1.8415 2 0.7504 +0.0189 +1.6819 3 0.7391 +0.0000 +1.6736 4 0.7391 +0.0000 +1.6736 Teorema 2.14 Sea > 0 y f C 2 (c , c + ), tal que f (c) = 0 y f (c) = 0. Existe > 0 tal que si x0 (c , c + ), la sucesin xn generada por el mtodo de la secante converge hacia c, o e y el orden de convergencia es al menos cuadrtico. Adems a a 1 f (c) |c xn+1 | = n |c xn |2 2 f (c)
.c

l m

1. Newton es un mtodo de punto jo para la funcin e o

at e

m at
ww w.

Algunas consideraciones:

ic
g(x) = x f (x) f (x) |xn xn1 | < XT OL 2|xn xn1 | < RT OL |xn | + |xn1 | |f (xn )| < F T OL

2. Newton y la secante son mtodos de carcter local: convergen bajo ciertas condiciones si e a la semilla est cerca de la solucin. a o 3. Newton falla si f (xn ) = 0. Newton y la secante convergen linealmente si f (c) = 0. 4. Para parar estos algoritmos, se pueden usar varios tests de paradas y combinaciones AND y OR de ellos: Controlar el error absoluto:

Controlar el error relativo:

Buscamos que f (c) = 0, as que un posible criterio es

a1

om

Comparacin de los mtodos. Si intentamos resolver x cos(x) = 0 con XT OL = 5 1016 , o e el nmero de iteraciones es u Mtodo e iteraciones Punto jo 89 Biseccin o 51 Regula Falsi 13 Secante 7 Newton 6 Claramente, Newton y Secante son los mtodos ms rpidos, pero cul es mejor?. El orden de e a a a convergencia del mtodo de Newton es mayor (2 > 1.618), pero en cada iteracin del mtodo e o e de la secante hay que evaluar una vez la funcin, mientras que en cada iteracin del mtodo de o o e Newton hay que evaluar la funcin y su derivada. o Si evaluar f (x), lleva el mismo trabajo que evaluar f (x), tendremos que cada iteracin del o mtodo de Newton lleva el mismo trabajo que 2 iteraciones del mtodo de la Secante. Pero al e e hacer 2 iteraciones el mtodo de la secante, tendremos que e |xn+2 c| k|xn+1 c|1.618 k k|xn c|1.618
.c om
1.618

de decimales exactos por 2.6, as que es preferible el mtodo de la secante. e

En caso contrario es preferible Newton. Combinacin de Newton y biseccin: Newton es rpido, pero poco able si en alguna o o a el error de redondeo y el resultado se hace muy grande. Biseccin es lento pero seguro. He o aqu un algoritmo que combina lo mejor de cada uno de estos mtodos. e a0 = a, b0 = b, c0 = b Para n 0 cn+1 = cn Si cn+1 f (cn ) f (cn ) (an , bn ) iteracin f (xn ) 0, ya que tendremos que dividir por algo cercano a cero, con lo cual aumenta o

% Newton ha ido mal. Biseccin o an + b n cn+1 = 2 n si si f (cn+1 ) f (bn ) < 0, tomamos an+1 = cn+1 , bn+1 = bn si f (cn+1 ) f (an ) < 0, tomamos an+1 = an , bn+1 = cn+1

ww w.

Si (trabajo de evaluar f (x) ) > 44 %(trabajo de evaluar f (x) ) es preferible la secante.

at

En general se tiene la siguiente regla:

em

at ic

u ya que ((1+ 5)/2)2 2.618. En este caso, con el mismo trabajo, hemos multiplicado el nmero

a1

k|xn c|2.618

2.4.

Ejercicios

Ejercicio 2.1 Mtodo del punto jo. e 1. Demuestra que x = cos(x) tiene una unica solucin en [0, /3], que la iteracin de punto o o jo converge en ese intervalo y calcula el (peor) ritmo de convergencia k. 2. Con una calculadora calcula k 32 . Sale 0.01. 32 es el nmero de iteraciones que hay que hacer para tener 2 cifras de precisin u o en el peor de los casos. 3. Calcula la solucin con una calculadora tomando como semilla 0.75 hasta obtener 2 cifras o de precisin. Cuenta el nmero de iteraciones necesario. (Escribe 0.75 en la calculadora o u y dale a la tecla del coseno hasta que las dos primeras cifras se repitan.) Ejercicio 2.2 Mtodo de biseccin: e o a) Cuntas iteraciones de biseccin son necesarias para garantizar que el error absoluto coa o metido es ms pequeo que un > 0 dado? a n hay que hacer para ganar otro decimal?
2

Ejercicio 2.4 a) Escribe los algoritmos de biseccin, regula falsi, secante y Newton para resolver la ecuacin o o x2 2 = 0. b) Ejectalos a mano (puedes usar una calculadora) hasta lograr una precisin absoluta de 8 u o decimales. c) Demuestra que el orden de convergencia de la sucesin generada en este caso por el mtodo o e de Newton es 2.

2.5.

Ejercicios complementarios

Ejercicio 2.5 Algn ejercicio de punto jo con funcin ms complicada u o a Ejercicio 2.6 La orden fzero de Matlab usa una combinacin de biseccin y secante (en o o algunos casos tambin usa el mtodo de interpolacin cuadrtica inversa, que no hemos visto e e o a este curso). Escribe un algoritmo que combine biseccin y secante. o

ww

w.

no puede ser ningn p > 1. Escribe una tabla para n = 1, . . . , 7. u

at

Ejercicio 2.3 Probar que 1/2n converge superlinealmente, pero que su orden de convergencia

em at ic

b) Si sabemos que la aproximacin dada por cn tiene k decimales exactos, cuntas iteraciones o a

a1

.c om

Ejercicio 2.7 (Ningn mtodo es el mejor de todos) u e Sea M > (1 + 5)/2 y sea f (x) = M Mx 1 si 0 x 1 + 1/M si 1 + 1/M x M.

a) Dibuja la funcin y calcula la solucin de f (x) = 0 en [0, M ]. o o b) Para que valores de x0 es aplicable el mtodo de Newton?. Cuntas iteraciones tarda en e a converger para una precisin absoluta a ? o c) Se puede aplicar el mtodo de la secante con x0 = 0, x1 = M ? e d) Cuntas iteraciones nb del mtodo de biseccin se necesitan para lograr una precisin aba e o o
.c om

e) Aplicamos el mtodo de Regula Falsi tomando a0 = 0 y b0 = M . Dibuja esquemticamente e a


w.

1. Probar que si an1 = 0 y bn1 > 1 + 1/M , entonces cn = M n+1 /(M + 1)n . 2. Calcular la primera iteracin nr en que tiene que cnr < 1 + 1/M . o 3. Calcular el error absoluto y el relativo entre dos iteraciones consecutivas con 1 < n nr : ea = |cn cn1 |, er = ea /|cn | 4. Explicar qu ocurre si para M = 108 tomamos una tolerancia relativa de r = 106 . e 5. Probar que cnr > 1. Deducir que por tanto anr = 0 y que para este problema el mtodo e de Regula Falsi converge exactamente en nr + 1 iteraciones. f ) Sea = 252 y M 20. Es mejor el mtodo de biseccin o el de Regula Falsi? e o

ww

unas cuantas iteraciones suponiendo M >> 1.

at

em at

soluta dada a tomando a0 = 0 y b0 = M ?

ic

a1

S-ar putea să vă placă și