Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Irene Tischer
Typeset by FoilTEX
Mtodos numricos
Contenido
1. Generalidades 2. El mtodo de Biseccin 3. El mtodo de Newton-Raphson 4. Sistemas de ecuaciones no lineales
Typeset by FoilTEX
Mtodos numricos
Contenido
1.
Generalidades
Typeset by FoilTEX
Mtodos numricos
1. Generalidades
Motivacin
En muchas situaciones surge, de manera natural, el clculo de las races de una ecuacin no lineal en una variable,
f (x) = 0
Ciertas ecuaciones no lineales pueden resolverse analticamente:
6x2 7x + 2 = 0
(3x 2)(2x 1) = 0
x = 2, 1 3 2 x=
n n 5 , 2 ,n
x2
10 x + 1 = 0,
cosh
x2 + 1 ex + log | sin x| = 0
Muchas veces los coecientes de las ecuaciones no lineales se conocen solo de forma aproximada, por lo que carecera de sentido un clculo exacto.
Typeset by FoilTEX 4
Mtodos numricos
1. Generalidades
f (x) = 0 en [a, b]
que permitan aproximarlas con el grado de precisin deseado. Los mtodos numricos para buscar la las races de una ecuacin no lineal
f (x) = 0
estn basados en tcnicas iterativas: Comenzando por una solucin aproximada, se utiliza un algoritmo numrico que mejora la solucin hasta que se satisface un determinado criterio de convergencia.
Typeset by FoilTEX
Mtodos numricos
1. Generalidades
f (x) = 0 en [a, b]
podemos distinguir dos etapas principales, 1.
2.
iterativo que conduce a una sucesin: {xn} que tiende al valor de la raz. n=0 Se toma como aproximacin de la solucin un elemento de la sucesin prximo a la raz.
Typeset by FoilTEX
Mtodos numricos
1. Generalidades
Teorema de Bolzano
Sea f una funcin real, continua en el intervalo [a, b]. Si el signo de f cambia en los extremos del intervalo, es decir si f (a)f (b) < 0, entonces f tiene por lo menos una raz en (a, b).
raiz a b
Typeset by FoilTEX
Mtodos numricos
1. Generalidades
Teorema de Rolle
Sea f una funcin real, continua y diferenciable en el intervalo [a, b]. Si f (a) = f (b), entonces existe u en (a, b) tal que f (u) = 0.
fHuL=0
fHaL
fHbL
Typeset by FoilTEX
Mtodos numricos
1. Generalidades
Typeset by FoilTEX
Mtodos numricos
Contenido
1. Generalidades 2.
El mtodo de Biseccin
Typeset by FoilTEX
10
Mtodos numricos
2. El mtodo de Biseccin
Objetivo
Dada la funcin f (x) continua en [a, b] tal que f (a)f (b) < 0, el objetivo es encontrar x (a, b) tal que f (x) = 0 y en su defecto una aproximacin cuyo error absoluto sea menor que una tolerancia deseada. Se supone que hay una raz y solo una en el intervalo [a, b].
Typeset by FoilTEX
11
Mtodos numricos
2. El mtodo de Biseccin
Procedimiento
El mtodo de biseccin est basado en el teorema de Bolzano que garantiza la existencia de una raz en [a, b] si hay cambio de signo de f . Partiendo del intervalo inicial, el mtodo de biseccin construye un sucesin de intervalos siempre ms pequeos que contiene una raz ya que se mantiene el cambio de signo (gura 3).
0.75
1.125
1.5
Figura 3. Tres pasos de biseccin para la funcin f (x) = x2 2, empezando en el intervalo [0,3].
intervalo iteracion 3
Typeset by FoilTEX
12
Mtodos numricos
2. El mtodo de Biseccin
Procedimiento
macin inicial de la raz. Pueden presentarse dos casos:
(continuacin)
a+b es la aproxi2
2. f (x) = 0. entonces se elige aquel intervalo [a, x] [x, b], en cuyos extremos la funcin toma signos opuestos. De esta forma se aplica otra vez el teorema de Bolzano. Reiterando el proceso anterior bien obtenemos la raz exacta bien una sucesin de intervalos cerrados encajados que tienden hacia el valor de la raz. Se toma como aproximacin de la raz el punto medio del intervalo obtenido en la ltima iteracin.
Typeset by FoilTEX 13
a+b . 2
Mtodos numricos
2. El mtodo de Biseccin
(1)
b a 1 (0) = = L . 2 2
ba 1 L(k) = L(k1) = k . 2 2
Esto signica que la sucesin de intervalos construida por el mtodo de biseccin, se contrae a un solo punto, que es una raz exacta de la funcin f .
Typeset by FoilTEX
14
Mtodos numricos
2. El mtodo de Biseccin
(continuacin)
La aproximacin de la raz en la k -sima iteracin es el punto medio del intervalo xk . Por eso, el error es menor o igual que la mitad de la longitud del intervalo.
0 = |x0 x|
L ; 2
L(1) L 1 = |x1 x | = 2; 2 2
. . .
El error converge a 0, es decir, el mtodo de biseccin converge a la raz verdadera. La convergencia es lenta, en cada iteracin el error se reduce a la mitad.
Typeset by FoilTEX
15
Mtodos numricos
2. El mtodo de Biseccin
Tolerancia
El comportamiento del error permite calcular con anticipacin el nmero de iteraciones requeridas para obtener una aproximacin con una tolerancia deseada. Sea la tolerancia deseada, es decir, se debe iterar hasta que |x x| , Despus de la k -sima iteracin tenemos |x x| Seleccionando kmax tal que la tolerancia deseada .
L(k) 2
ba 2k+1
ba 2kmax+1
Por eso, para el nmero kmax de iteraciones requeridas para obtener la tolerancia se debe cumplir:
kmax + 1 log2 ba
o sea
Typeset by FoilTEX
16
Mtodos numricos
2. El mtodo de Biseccin
Algoritmo BISECCIN
Entrada: Salida: Paso 1: la funcin f ; el intervalo [a, b]; la tolerancia . solucin aproximada o exacta o mensaje de fracaso Si f (a) f (b) 0 , si la funcin no cambia de signo, el mtodo de biseccin no funciona
Paso 2:
` ba kmax (int) log2 para k = 1 hasta kmax haga si f (x) = 0, devuelva x si f (a) f (x) < 0, entonces b x sino a x
(n para) devuelva x .
Paso 3:
x es la aproximacin de la raz
Typeset by FoilTEX
17
Mtodos numricos
2. El mtodo de Biseccin
Ejemplo
Determinar la raz de la funcin f denida por f (x) := x2 2 con una tolerancia = 0.01, empezando con el intervalo [0, 2].
Typeset by FoilTEX
18
Mtodos numricos
2. El mtodo de Biseccin
Paso 1:
f (0) = 2, f (2) = 2, es decir tenemos signos opuestos. ` kmax = (int) log2 ba = (int) (log2 200) = 7.
Se necesitan 7 iteraciones Iteracin
a
0 1 1
Solucin
Paso 2:
it.
0 1 2 3 4 5 6 7
b
2 2 1.5 1.5 1.5 1.4375 1.4375 1.421875
x
1 1.5 1.25 1.375 1.4375 1.40625 1.421875 1.4140625
f (a)
-2 -1 -1 -0.4375 -0.109375 -0.109375 -0.0224609375 -0.0224609375
f (b)
2 2 0,25 0.25 0.25 0.06640625 0.06640625 0.021728515625
f (x)
-1 0.25 -0.4375 -0.109375 0.06640625 -0.0224609375 0.021728515625 -0.00042724609375
err.
1
21 22 23 24 25 26 27
Paso 3:
Obtenemos la aproximacin de la raz x = 1,4140625 con una tolerancia = 0.01 (el error verdadero es
Typeset by FoilTEX
19
Mtodos numricos
2. El mtodo de Biseccin
Observaciones generales
1. Si la funcin f es continua y cambia de signo en el intervalo [a, b], el mtodo de biseccin converge a una raz (gura 4a). 2. Si la funcin f es continua y no cambia de signo en el intervalo [a, b], el mtodo de biseccin no funciona. Es decir, el mtodo no es capaz de encontrar la raz en la situacin de la gura 4b. 3. Si la funcin f no es continua, el mtodo encuentra un punto de discontinuidad donde la funcin cambia de signo (gura 4c). Un seguimiento de los valores de f (x) muestra si se trata de una raz o una discontinuidad. 4. Si la funcin f es continua y cambia de signo en el intervalo [a, b], el mtodo encuentra una raz de la funcin. Si f tiene varias races, se es importante separarlas para poder controlar el procesos (gura 4d).
Typeset by FoilTEX
20
Mtodos numricos
2. El mtodo de Biseccin
Typeset by FoilTEX
21
Mtodos numricos
Contenido
1. Generalidades 2. El mtodo de Biseccin 3.
El mtodo de Newton-Raphson
Typeset by FoilTEX
22
Mtodos numricos
3. El mtodo de Newton-Raphson
x x
f (x) f (x)
Typeset by FoilTEX
23
Mtodos numricos
3. El mtodo de Newton-Raphson
xk+1 = xk
f (xk ) . f (xk )
Typeset by FoilTEX
24
Mtodos numricos
3. El mtodo de Newton-Raphson
Interpretacin grca
La primera iteracin consiste en tomar como aproximacin el punto x1 de corte de la recta tangente a la grca de la funcin f (x) en el punto x1. La ecuacin de esta recta es y = f (x0) + (x x0)f (x0). Por tanto la interseccin de la recta con el eje de abscisas es x1 = x0
f (x0 ) f (x0 ) .
Typeset by FoilTEX
25
Mtodos numricos
3. El mtodo de Newton-Raphson
2. En trminos del valor de la funcin en la aproximacin: |f (xk )| f , donde f signica la desviacin mxima de 0. 3. En trminos del nmero de iteraciones: esta condicin que garantiza que el algoritmo para, aun que no converge. En resumen, para actuar con cautela el consejo es parar las iteraciones cuando los dos tests se cumplen o cuando se han realizado el nmero de iteraciones.
Typeset by FoilTEX
26
Mtodos numricos
3. El mtodo de Newton-Raphson
k 1; x1 x0
f (x0 ) f (x0 )
k < kmax x0 x1 ; x1 x0
Paso 3 si determinar nueva aproximacin
k k + 1;
devuelva parada por tolerancia si no devuelva parada por nmero de iteraciones devuelva x1 .
Typeset by FoilTEX
x1 es aproximacin de la raz
27
Mtodos numricos
3. El mtodo de Newton-Raphson
Ejemplo
Aplicar el mtodo de Newton - Raphson a la funcin f (x) = x2 2, iniciando en el punto x0 = 1, usando las tolerancias x = 105, f = 105 y un nmero mximo de 50 iteraciones.
Solucin
it.
1 2 3 4
x0
1 1.5 1.41666667 1.41421569
f (x0)
-1 0.25 0.00694445 0.00000602
f (x0)
2 3 2.83333334 2.82843138
x1 = x0
1.5
f (x0 ) f (x0 )
Despus de 4 iteraciones se alcanza una aproximacin con las tolerancias deseadas. La aproximacin de la raz ya coincide en los 8 primeros decimales con el valor verdadero.
Typeset by FoilTEX
28
Mtodos numricos
3. El mtodo de Newton-Raphson
k f (xk ) +
1 2 k f (k ) con k entre xk y 2
2 f (xk ) f (k f (xk ) k f (xk ) f (xk ) x = k = = k = xk+1 r = xk k+1 f (xk ) f (xk ) f (xk ) 2f (xk ) 2 2 f (r) k f (k ) es decir: k+1 = k = C 2. k 2f (xk ) 2f (x) Esto signica que el error en la iteracin k + 1 es proporcional al cuadrado de error en la iteracin k. Por eso se habla de convergencia cuadrtica. Este hecho
Typeset by FoilTEX
29
Mtodos numricos
3. El mtodo de Newton-Raphson
fHxL
g2HxL
g1HxL
Figura 6. El mtodo de Newton-Raphson diverge, ya que el punto inicial x0 no se encuentra sucientemente cercano a la raz.
Typeset by FoilTEX 30
x0 x1 x2
Mtodos numricos
3. El mtodo de Newton-Raphson
Supuestos
La convergencia del mtodo de Newton se asegura mediante los siguientes supuestos sobre la funcin f : [a, b] R. continuas.
f C 2[a, b], es decir las funciones derivadas de f hasta el orden 2 son f (a)f (b) < 0. f tiene signo constante en [a, b]. f tiene signo constante en [a, b].
(Convergencia del mtodo de Newton-Raphson)
Teorema
Si la funcin f : [a, b] R verica los supuestos anteriores y tomamos x0 el extremo del intervalo [a, b] tal que, signof (x0) = signof entonces el mtodo de Newton converge al menos cuadrticamente a la nica raz de f (x) en [a, b].
Typeset by FoilTEX 31
Mtodos numricos
3. El mtodo de Newton-Raphson
Typeset by FoilTEX
32
Mtodos numricos
3. El mtodo de Newton-Raphson
El mtodo de la secante
Si no se dispone de la derivada de la funcin f , o si la derivada es difcil de evaluar, se puede utilizar una aproximacin numrica de la derivada:
xk+1 = xk f (xk )
Typeset by FoilTEX
33
Mtodos numricos
3. El mtodo de Newton-Raphson
Interpretacin grca
La interpretacin grca de este mtodo ilustra la gura 7. Dadas las aproximaciones xk y xk1 de la raz, obtenidas en los dos ltimas iteraciones se construye la recta que coincide con f en estos puntos. La nueva aproximacin es la raz de esta recta.
Figura 7. El mtodo de la secante para la funcin f (x) = x2 2. Los puntos iniciales son x0 = 0 y x1 = 3.
x0=0
x2
x3
x4
x1=3
Typeset by FoilTEX
34
Mtodos numricos
3. El mtodo de Newton-Raphson
Ejemplo
Aplicar el mtodo de la secante a la funcin f (x) = x2 2, iniciando con x0 = 0 y x1 = 3.
Solucin
x x 30 3 x2 = x1 f (x1) f (x11)f0(x) = 3 f (3) f (3)f (0) = 3 7 7(2)) = 2 3
x3 = x2
f (x2) f (xx2x1 1) 2 )f (x
=2
2 2 3 3 f ( 3 ) f ( 2 )f (03) 3
= 1,0909.
La sucesin (xk ) de aproximaciones de la raz que se obtiene es: 0, 3, 0.6667, 1.0909, 1.5517, 1.3974, 1.1434, 1.4142.... Se observa, que el mtodo de la secante se comporta muy parecido al mtodo de Newton-Raphson: converge muy rpido.
Typeset by FoilTEX
35
Mtodos numricos
3. El mtodo de Newton-Raphson
Typeset by FoilTEX
36
Mtodos numricos
3. El mtodo de Newton-Raphson
Ejemplo
La funcin f (x) := (x 1)3(x 3) tiene raz triple en x = 1. Aplicar el mtodo de Newton-Raphson iniciando en el punto x0 = 0.
Solucin
Aplicando el mtodo de Newton-Raphson se obtiene las siguientes aproximaciones de la raz: 0, 0.3, 0.5148, 0.6666, 0.7727, 0.8460, 0.8961, 0.9302, 0.9532, 0.9687, 0.9791, 0.9860, 0.9907, 0.9938, 0.9958, 0.9972, 0.9982, 0.9988, 0.9992, 0.9995, 0.9996, ... Se observa que la convergencia es muy lenta.
Typeset by FoilTEX
37
Mtodos numricos
3. El mtodo de Newton-Raphson
xk+1
f (xk ) = xk m . f (xk )
Typeset by FoilTEX
38
Mtodos numricos
3. El mtodo de Newton-Raphson
f (x) tiene las mismas races que f , f (x) se aplica el mtodo de Newton-Raphson a u para obtener las races de f .
Aplicando la regla del cociente se obtiene:
d u (x) = dx f (x) f (x) f (x)f (x) f (x)f (x) = (f (x))2
xk+1 = xk
Typeset by FoilTEX
39
Mtodos numricos
3. El mtodo de Newton-Raphson
Ejemplo
Aplicar los mtodos modicados para races mltiples a la funcin
Typeset by FoilTEX
40
Mtodos numricos
3. El mtodo de Newton-Raphson
Solucin
Las derivadas de f son:
Typeset by FoilTEX
41
Mtodos numricos
3. El mtodo de Newton-Raphson
Solucin: Variante 1
La raz x = 1 tiene multiplicidad m = 3, por eso se aplica la frmula
xk+1
Iniciando en x0 = 0 se obtiene
f (x0) 9 (0 1)3(0 3) x1 = x0 3 = = 0,9. =03 2 (2 0 5) f (x0) 2(0 1) 10 (0,9 1)3(0,9 3) f (x1) = 0,9 3 = 0,9984 x2 = x1 3 f (x1) 2(0,9 1)2(2 0,9 5) f (x2) (0,9984 1)3(0,9984 3) x3 = x2 3 = 0,9984 3 = 1. f (x2) 2(0,9984 1)2(2 0,984 5)
Se observa que el mtodo modicado converge muy rpido a la raz mltiple.
Typeset by FoilTEX
42
Mtodos numricos
3. El mtodo de Newton-Raphson
Solucin: Variante 2
Iniciando en x0 y aplicando la frmula modicada
xk+1 = xk
se obtiene
x1 = x0 = x0
f (x0)f (x0)
2
((x0
5)) (x0
1)3(x
3)12(2 3x0 +
x2 )
= 1,0714
y de manera anloga:
x2 = 1,0009; x3 = 1.
Otra vez se verica la convergencia rpida del mtodo.
Typeset by FoilTEX
43
Mtodos numricos
Contenido
1. Generalidades 2. El mtodo de Biseccin 3. El mtodo de Newton-Raphson 4.
Typeset by FoilTEX
44
Mtodos numricos
El problema multidimensional
Generalizando el caso undimensional, se busca la solucin de un sistema de n ecuaciones en n variables:
donde X = [x1, x2, . . . , xn]; 0 es el vector de n componentes iguales a 0 y f1(X) f2(X) n n . F la funcin de R R denida por F (X) = . . . fn(X)
F [X] = 0
Typeset by FoilTEX
45
Mtodos numricos
El problema multidimensional
(continuacin)
Se debe encontrar la interseccin de los conjuntos de las races de cada ecuacin, un problema difcil en el caso no lineal ya que las ecuaciones no son relacionadas entre s (gura 8). Generalmente ni siquiera se sabe, cuantas soluciones tiene el sistema. Si las funciones f1,f2, ..., fn son lineales, el problema es ms sencillo: se busca la solucin del sistema lineal
Typeset by FoilTEX
46
Mtodos numricos
Typeset by FoilTEX
Mtodos numricos
Ejemplo
Resolver el sistema:
f1(x1, x2) = c (x1 2)2 + (x2 2)2 x1 f2(x1, x2) = sen(x1 x2) + c x2 + 1
y el sistema correspondiente se escribe como
F (X) =
f1(X) f2(X)
= 0
Typeset by FoilTEX
48
Mtodos numricos
Ejemplo
(continuacin)
En la gura siguiente (gura 8) se hace evidente la dicultad de un procedimiento analtico para la solucin del problema. Se muestran las 2 funciones y sus lineas de nivel. Las soluciones del sistema corresponden a las intersecciones de las lineas de nivel 0 de llas dos funciones. Se observa como se varian las soluciones para diferentes valores del parmetro c. No existe relacin geomtrica que se puede aprovecha en un algoritmo que localiza las races.
Typeset by FoilTEX
49
Mtodos numricos
4
2
2 0 -2 -4 0 1 2 3 1 3
0 0 1 2 3 4
a) La grca tridimensional de f1
40
3 2 1 0 -1 0 1 2 3 1
4 3
1
0 0 1 2 3 4
c) La grca tridimensional de f2 .
40
Figura 8.
Typeset by FoilTEX 50
Mtodos numricos
F (X0 + H) = F (X0) + F |X0 H + R1 donde para el residuo R1 se tiene: R1 = O( H 2). h1 Aqu H = es el paso: h1 para la variable x1 y h2 para x2.; h2 x1 , x2
es el gradiente.
f1 f2
, se obtiene
Dado que F = de F .
F =
f1 x1 f2 x1
f1 x2 la matriz jacobiana f2 x2
Typeset by FoilTEX
51
Mtodos numricos
X1 = X0 + H.
Typeset by FoilTEX 52
Mtodos numricos
Xk+1 = Xk + H.
donde H = J
1 Xk
F (Xk )
Typeset by FoilTEX
53
Mtodos numricos
Ejemplo
Aplicar el mtodo de Newton-Raphson para resolver el sistema
0,5 0,5
Typeset by FoilTEX
54
Mtodos numricos
Solucin
x1
x2
f2(x1, x2) = 4x2 1 x1 x2 1 8x2 + 4 la matriz jacobiana por ende es: J |X = 2x1 + 1 4x2 1
Typeset by FoilTEX
55
Mtodos numricos
Empezando en X0 =
0,5 0,5
Solucin
(continuacin)
obtenemos:
Primera iteracin:
Segunda iteracin:
F (X1) =
1 JX =
0,25 30,375
; JX 1 =
1 11
10 2
Typeset by FoilTEX
56
Mtodos numricos
Solucin
1,98026 0,236523 1,01216 0,00365759
(continuacin)
X3 = X6 =
; X4 = ; X7 =
1,36419 0,0997861
; X5 =
1,09826 0,0287798 1 0
,
1,00024 0,0000730198
; X8 =
Typeset by FoilTEX
57
Mtodos numricos
Condiciones de parada
Las condiciones de parada equivalen a aquellas desarrolladas para el caso de una dimensin, reemplazando el valor absoluto por una norma vectorial: 1. En trminos del error aproximativo relativo: la tolerancia deseada.
2. En trminos del valor de la funcin en la aproximacin: f (Xk ) < f , donde f signica la desviacin mxima de 0. 3. El nmero de iteraciones.
Typeset by FoilTEX
58
Mtodos numricos
Paso 3
X1 X0 + H ; X1 X0 > x F (X1) > f ( k < kmax) mientras X1 X0 X1 ; 1 H JX0 F (X0); X1 X0 + H ; k k+1 X1 X0 si x y F (X1) f devuelva parada por tolerancia X1
si no devuelva parada por nmero de iteraciones devuelva X1 .
Typeset by FoilTEX
59