Vous êtes sur la page 1sur 45

Diferenciacin numrica

Se le conoce con un nombre especial en el anlisis


numrico: diferencia finita dividida y generalmente se
representa como
=

+1
= + +1 ()
+1


= + ()

Diferenciacin numrica

Donde a se le conoce como la primera diferencia hacia


adelante y a se le llama el tamao del paso o incremento;
esto es, la longitud del intervalo sobre el cual se realiza la
aproximacin. Se le llama diferencia hacia delante,
porque usa los datos en + 1 para estimar la derivada
(figura 1). Al trmino completo / se le conoce como
primer diferencia finita dividida.
Diferenciacin numrica

Grfica de aproximaciones con


diferencias finitas divididas de
la primera derivada:
a) hacia delante
Diferenciacin numrica

Grfica de aproximaciones con


diferencias finitas divididas de
la primera derivada:
b) hacia atrs
Diferenciacin numrica

Grfica de aproximaciones con


diferencias finitas divididas de
la primera derivada:
c) centrales
Diferenciacin numrica

Esta diferencia dividida hacia adelante es slo una de tantas


que pueden desarrollarse a partir de la serie de Taylor para
la aproximacin de derivadas numricas
Diferenciacin numrica

Las primeras usan valores en 1 (figura b); mientras


que las segundas utilizan valores igualmente espaciados
alrededor del punto donde la derivada est estimada (figura
c).
Ejemplo Aproximacin de derivadas por
diferencias finitas divididas

Planteamiento del problema. Use aproximaciones con


diferencias finitas hacia adelante y hacia atrs de () y
una aproximacin de diferencia centrada de 2 para
estimar la primera derivada de

= 0.1 4 0.15 3 0.5 2 0.25 + 1.2


Ejemplo Aproximacin de derivadas por
diferencias finitas divididas

En = 0.5. Utilizando un incremento de = 0.5. Repita el


calculo con = 0.25. Observe que la derivada se calcula
directamente como

= 0.4 3 0.45 2 1.0 0.25

Y se puede utilizar para calcular el valor verdadero como


0.5 = 0.9125
Ejemplo Aproximacin de derivadas por
diferencias finitas divididas

Solucin. Para = 0.5, la funcin se emplea para determinar

Evaluamos en = 0.1 4 0.15 3 0.5 2 0.25 + 1.2

1 = 0 1 = 1.2

= 0.5 = 0.925

+1 = 1.0 +1 = 0.2
Ejemplo Aproximacin de derivadas por
diferencias finitas divididas

Esos valores sirven para calcular las diferencias divididas


hacia adelante

+1
= + +1
+1

0.20.925
0.5 = 1.45
10.5


= 100%

Ejemplo Aproximacin de derivadas por
diferencias finitas divididas

0.91251.45
= 100% = 58.9%
0.9125
Ejemplo Aproximacin de derivadas por
diferencias finitas divididas

La diferencia dividida hacia atrs

1 1
= =

0.9251.2
0.5 = 0.55
0.5


= 100%

Ejemplo Aproximacin de derivadas por
diferencias finitas divididas

0.91250.55
= 100% = 39.7%
0.9125
Ejemplo Aproximacin de derivadas por
diferencias finitas divididas

La diferencia dividida centrada

+1 1
= 2
2

0.21.2
0.5 = 1.0
2 0.5


= 100%

Ejemplo Aproximacin de derivadas por
diferencias finitas divididas

0.91251.0
= 100% = 9.6%
0.9125
Ejemplo Aproximacin de derivadas por
diferencias finitas divididas

Solucin. Para = 0.25 , la funcin se emplea para


determinar

1 = 0.25 1 = 1.10351563

= 0.5 = 0.925

+1 = 0.75 +1 = 0.63632813
Ejemplo Aproximacin de derivadas por
diferencias finitas divididas

Esos valores sirven para calcular las diferencias divididas


hacia adelante

+1
= + +1
+1

0.636328130.925
0.5 = 1.155
0.25


= 100%

Ejemplo Aproximacin de derivadas por
diferencias finitas divididas

0.91251.155
= 100% = 26.5%
0.9125
Ejemplo Aproximacin de derivadas por
diferencias finitas divididas

La diferencia dividida hacia atrs

1 1
= =

0.9251.10351563
0.5 = 0.714
0.25


= 100%

Ejemplo Aproximacin de derivadas por
diferencias finitas divididas

0.91250.714
= 100% = 21.7%
0.9125
Ejemplo Aproximacin de derivadas por
diferencias finitas divididas

La diferencia dividida centrada

+1 1
= 2
2

0.636328131.10351563
0.5 = 0.934
0.5


= 100%

Ejemplo Aproximacin de derivadas por
diferencias finitas divididas

0.91250.934
= 100% = 2.4%
0.9125
6.2 Runge-Kutta Methods
Mtodos de Runge-Kutta
Todos los mtodos de Runge-Kutta son
generalizaciones de la frmula bsica de Euler,
en la que la funcin pendiente f se remplaza
por un promedio ponderado de pendientes en el
intervalo xn x xn+1
(1)
yn1 yn h( w1k1 w2k2 wm km )
donde las ponderaciones wi, i = 1, 2, , m son
constantes que satisfacen w1 + w2 + + wm = 0,
y ki es la funcin evaluada en un punto
seleccionado (x, y) para el cual xn x xn+1.
El nmero m se llama el orden. Si tomamos m = 1, w1 = 1, k1 = f(x, yn),
llegamos al mtodo de Euler. Por consiguiente, se dice que el mtodo de Euler
es un mtodo de Runge-Kutta de primer orden.
Mtodo de Runge-Kutta de Segundo Orden
Tratamos de hallar unas constantes de modo
que la frmula
yn1 yn (2)
ak1 bk2
donde k1= f(xn, yn),
k2= f(xn+h, yn+hk1)
concuerde con un polinomio de Taylor de grado
2.
Las constantes deben satisfacer
1 1
w1 w2 1, w2 (3)
, y w2
2 2
1 1
luego w1 1 w2 , , y
(4)
2w2 2w2

donde w2 0.
Ejemplo: escogemos w2 = , de donde w1 = , = 1, = 1, y (2) se transforma
en

yn+1= yn+(k1+ k2)h/2

donde k1= f(xn, yn), k2= f(xn+h, yn+hk1).


Puesto que xn + h = xn+1, yn + hk1 = yn + hf(xn, yn), es idntica al mtodo de Euler
mejorado.
Mtodo de Runge-Kutta de Cuarto Orden

Tratamos de hallar parmetros de modo que la frmula

(5)
yn1 yn ak1 bk2 ck3 dk4
donde

k hf ( xn , yn )
k2 hf ( xn 1h, yn 1k1 )
concuerde con un polinomio de Taylor de orden 4.

k3 hf ( xn 2 h, yn 2 k1 3k 2 )
k4 hf ( xn h, yn k3 )
El conjunto de valores usado con ms frecuencia para los parmetros produce
el siguiente resultado

(6)1
yn1 yn (k1 2k2 2k3 k4 )
6
k1 hf ( xn , yn )
k2 hf ( xn 1/2 h, yn 1/2 k1 )
k3 hf ( xn 1/2 h, yn 1/2 k2 )
Ejemplo 1
Use el mtodo RK4 con h = 0.1 para obtener y(1.5)
para la solucin de y = 2xy, y(1) = 1.
Solucin
Primero se calcula el caso n = 0.
k1 (0.1) f ( x0 , y0 ) (0.1)( 2 x0 y0 ) 0.2
k2 (0.1) f ( x0 1/2(0.1), y0 1/2(0.2))
(0.1)2( x0 1/2(0.1))( y0 1/2(0.2)) 0.231
k3 (0.1) f ( x0 1/2(0.1), y0 1/2(0.231))
(0.1)2( x0 1/2(0.1))( y0 1/2(0.231)) 0.234255
k4 (0.1) f ( x0 0.1, y0 0.234255)
(0.1)2( x0 0.1)( y0 0.234255) 0.2715361
Ejemplo 1 (2)

Por lo tanto, 1
y1 y0 (k1 2k2 2k3 k4 )
6
1
1 (0.2 2(0.231) 2(0.234255) 0.2715361)
6
Vase la Tabla 6.5. 1.23367435
Tabla 6.5 h=0.1

Valor Error % error


xn yn
real Abs. relativo
1.00 1.0000 1.0000 0.0000 0.00
1.10 1.2337 1.2337 0.0000 0.00
1.20 1.5527 1.5527 0.0000 0.00
1.30 1.9937 1.9937 0.0000 0.00
1.40 2.6116 2.6117 0.0001 0.00
1.50 3.4902 3.4904 0.0001 0.00
En la Tabla 6.6 comparan algunos resultados.
h = 0.1 h = 0.05
Euler Valor Euler Valor
xn Euler RK4 xn Euler RK4
mejorado real mejorado real
1.00 1.0000 1.0000 1.0000 1.0000 1.00 1.0000 1.0000 1.0000 1.0000
1.10 1.2000 1.2320 1.2337 1.2337 1.05 1.1000 1.1077 1.1079 1.1079
1.20 1.4640 1.5479 1.5527 1.5527 1.10 1.2155 1.2332 1.2337 1.2337
1.30 1.8154 1.9832 1.9937 1.9937 1.15 1.3492 1.3798 1.3806 1.3806
1.40 2.2874 2.5908 2.6116 2.6117 1.20 1.5044 1.5514 1.5527 1.5527
1.50 2.9278 3.4509 3.4902 3.4904 1.25 1.6849 1.7531 1.7551 1.7551
1.30 1.8955 1.9909 1.9937 1.9937
1.35 2.1419 2.2721 2.2762 2.2762
1.40 2.4311 2.6060 2.6117 2.6117
1.45 2.7714 3.0038 3.0117 3.0117
1.50 3.1733 3.4795 3.4903 3.4904
Errores de Truncamiento para el Mtodo RK4

Como es de grado 4, el error de truncamiento local es O(h5) y el error de


truncamiento global es O(h4). Sin embargo, esto no se abarca en este texto.
Ejemplo 2
Determine una cota para los errores de truncamiento local del mtodo RK4
aplicado a
y ' 2 xy , y (1) 1
Solucin
Al calcular la quinta derivada de la solucin conocida
se obtiene
y ( x) e x 1 ,
2

(7)
5 5
h 5 c 1 h
2
(c) (120c 160c 32c )e
As con c y=( 51.5,
) entonces (7) = 0.00028. 3
La Tabla 6.7 proporciona
5! aproximaciones a la solucin del problema
5! de valor
inicial en x = 1.5 por el mtodo RK4.
Tabla

h Aproximacin Error
0.1 3.49021064 1.32321089 10-4
0.05 3.49033382 9.13776090 10-6
Mtodos de Varios Pasos

Mtodo de Adams-Bashforth-Moulton
El predictor es la frmula de Adams-Bashforth
h
yn1 yn (55 yn 59 yn 1
*
37n2 9 yn 3 ) ,
24(1)
yn f ( xn , yn )
yn 1 f ( xn1 , yn1 )
donde n 3.
yn 2 f ( xn2 , yn2 )
yn 3 f ( xn3 , yn3 )
El valor de yn+1* se sustituye en el corrector de Adams-Moulton

h
yn1 yn (2)(9 yn 1 19 yn 5 yn 1 yn 2 )
24
yn 1 f ( xn1, yn*1 )
Ejemplo 1

Use el mtodo anterior con h = 0.2 para obtener y(0.8) para la solucin de
y x y 1 , y(0) 1
Solucin
Con h = 0.2, y(0.8) se aproxima mediante y4. En principio s emplea el mtodo
RK4 con x0 = 0, y0 = 1, h = 0.2 para obtener
y1 = 1.02140000, y2 = 1.09181796,
y3 = 1.22210646
Ejemplo 1 (2)

Ahora con x0 = 0, x1 = 0.2, x3 = 0.4, x4 = 0.6, y


f(x, y) = x + y 1, hallamos
y0 f ( x0 , y0 ) (0) (1) 1 0
y1 f ( x1 , y1 ) (0.2) (1.02140000) 1 0.22140000
y2 f ( x2 , y2 ) (0.4) (1.09181796) 1 0.49181796
El predictor (1) da
y3 f ( x3 , y3 ) (0.6) (1.22210646) 1 0.82210646

0.2
*
y4 y3 (55 y3 59 y2 37 y1 9 y0 ) 1.42535975
24
6.3 Mtodos de Varios Pasos

Mtodo de Adams-Bashforth-Moulton
El predictor es la frmula de Adams-Bashforth
h
yn1 yn (55 yn 59 yn 1
*
37n2 9 yn 3 ) ,
24(1)
yn f ( xn , yn )
yn 1 f ( xn1 , yn1 )
donde n 3.
yn 2 f ( xn2 , yn2 )
yn 3 f ( xn3 , yn3 )
El valor de yn+1* se sustituye en el corrector de Adams-Moulton

h
yn1 yn (2)(9 yn 1 19 yn 5 yn 1 yn 2 )
24
yn 1 f ( xn1, yn*1 )
Ejemplo 1

Use el mtodo anterior con h = 0.2 para obtener y(0.8) para la solucin de
y x y 1 , y(0) 1
Solucin
Con h = 0.2, y(0.8) se aproxima mediante y4. En principio s emplea el mtodo
RK4 con x0 = 0, y0 = 1, h = 0.2 para obtener
y1 = 1.02140000, y2 = 1.09181796,
y3 = 1.22210646
Ejemplo 1 (2)

Ahora con x0 = 0, x1 = 0.2, x3 = 0.4, x4 = 0.6, y


f(x, y) = x + y 1, hallamos
y0 f ( x0 , y0 ) (0) (1) 1 0
y1 f ( x1 , y1 ) (0.2) (1.02140000) 1 0.22140000
y2 f ( x2 , y2 ) (0.4) (1.09181796) 1 0.49181796
El predictor (1) da
y3 f ( x3 , y3 ) (0.6) (1.22210646) 1 0.82210646

0.2
*
y4 y3 (55 y3 59 y2 37 y1 9 y0 ) 1.42535975
24
Ejemplo 1 (3)

Para usar el corrector (2), se necesita


y4 f ( x4 , y4* ) 0.8 1.42535975 1 1.22535975

0.2
y4 y3 (9 y4 19 y3 5 y2 y1 ) 1.42552788
24

Vous aimerez peut-être aussi