Академический Документы
Профессиональный Документы
Культура Документы
Problemas de valores iniciales (P.V.I.) Existencia y unicidad de solucion. Solucion numerica de un P.V.I. Metodo de Euler. Metodos Runge-Kutta.
521230
-1-
521230
-2-
0, entonces, para algun intervalo I = [a , a + ], existe una unica solucion y = y(x) del P.V.I. denida en ese intervalo I .
521230
-3-
k = max
Ejemplo. Considere la ecuacion
(x,y)D
f (x, y) < . y
f (x, y) = 1 + sen(xy) y
Luego, dado cualquier (a, y0 ) con 0
f (x, y) = x cos(xy) k = 1. y
< a < 1, por el teorema existe una unica solucion del P.V.I. en algun intervalo centrado en a. Mas aun, puede demostrarse que el P.V.I. tiene solucion unica en todo el intervalo [0, 1].
521230
-4-
y (x) = f (x, y(x)), x [a, b], y(a) = y0 dado, a = x0 < x1 < < xN = b,
y obtener sucesivamente N numeros y1 , y2 , . . . , yN que aproximan a los valores y(x1 ), . . . , y(xN ) de la solucion exacta en los nodos x1 , . . . , xN . Tpicamente los nodos se escogen equiespaciados; es decir, estan denidos por
xi = a + ih, i = 0, . . . , N,
ba . con h = N
521230
-5-
y por la
y
i
yi+1
xi
xi+1
521230
-6-
y2 := y1 + hf (a + h, y1 ).
521230
-7-
Algoritmo (Euler)
= 0, . . . , N 1 xi = a + ih yi+1 = yi + hf (xi , yi ) n i.
Para i
521230
-8-
Metodos Runge-Kutta
Los metodos Runge-Kutta consideran, en cada intervalo [xi , xi+1 ], algunos nodos auxiliares de la forma:
xij := xi + j h , j = 0, 1, . . . , q,
donde, q verican: N recibe el nombre de rango del algoritmo y los parametros j
0 j 1,
As, en cada caso,
con
0 = 0 y q = 1. xiq = xi+1 .
xi0 = xi
xi=xi0
i1
xi2
i3
...
x =x
iq
i+1
521230
-9-
yi0 yij
siendo yi+1
:= :=
yi , yi + h
j1
j = 1, . . . , q,
Cuando los puntos xij y las constantes Ajl se determinan de manera que el desarrollo de yij coincida hasta el termino en hp con el desarrollo de Taylor de la solucion exacta del P.V.I. local:
RKpq .
521230
- 10 -
|i+1 | Chp+1 ,
pero
0iN 1
i = 0, . . . , N 1, |Ei+1 | Chp .
max
521230
- 11 -
xi0 = xi
xi1 = xi + h = xi+1 .
Como se trata de un metodo de orden 1, el coeciente A10 debe determinarse de modo que el error local de truncamiento sea O(h2 ).
521230
- 12 -
y (xi+1 )
con xi
521230
- 13 -
yi+1 = yi + hf (xi , yi ),
i = 0, . . . , N 1.
i+1
h2 y (i ), = 2
i = 0, . . . , N 1.
max
|Ei+1 | Ch.
521230
- 14 -
Ejemplo.
y = y, y(0) = 1.
Solucion:
y(x) = ex .
1.5
Metodo de Euler.
0.5 0.2
0.2
0.4
0.6
0.8
1.2
521230
- 15 -
Metodos RK22
Estos metodos resultan ser de orden 2 (p
= 2) y rango 2 (q = 2). Por lo tanto los errores locales de truncamiento son O(h3 ) y el error global es O(h2 ).
Los nodos se obtienen con 0
xi0 = xi ,
xi1 = xi + 1 h
Los desarrollos en potencias de h para los correspondientes valores yi1 e yi2 se utilizan para obtener una expresion de yi+1 que se iguala al desarrollo de Taylor de la solucion del P.V.I. local y (xi+1 ) hasta los terminos en h2 . As se obtiene la siguiente familia de algoritmos RK22 (dependiente del parametro 1 ):
f (xi , yi ) + h
1 21
f (xi1 , yi1 ).
521230
Casos particulares
1.- Metodo de Euler mejorado (tangente mejorada) Corresponde a la eleccion de 1 del intervalo [xi , xi+1 ]. De las ecuaciones anteriores se obtiene algoritmo queda as: Algoritmo (Euler mejorado) Para i
= 1 , con lo cual xi1 resulta ser el punto medio 2 yi+1 = yi + hf (xi1 , yi1 ) y el
= 0, . . . , N 1 xi = a + ih xi1 = xi + yi1 = yi +
h 2 h 2 f (xi , yi )
521230
- 17 -
yi+1
yi1
i1
i+1
521230
- 18 -
2.- Metodo de Euler-Cauchy Corresponde al caso en que 1 queda as: Algoritmo (Euler-Cauchy) Para i
n i.
521230
- 19 -
Mtodo de EulerCauchy
yi+1
yi1
xi
i+1
=x
i1
521230
- 20 -
0 = 0,
Por lo tanto,
1 = 2 =
1 , 2
3 = 4 = 1.
xi0 = xi ,
xi1 = xi2
h = xi + , 2
yi4 .
La expresion de yi+1 que se obtiene a partir de esos desarrollos se iguala al desarrollo de Taylor de la solucion y (xi+1 ) del P.V.I. local, hasta los terminos en
h4 (p = 4).
As se obtiene un algoritmo con error local de truncamiento O(h5 ) y, por lo tanto, error global O(h4 ).
521230
- 21 -
Este metodo, tambien conocido como RK4, es sumamente utilizado debido a su alta precision. El algoritmo del metodo puede escribirse convenientemente del siguiente modo:
Algoritmo (RK4)
521230
- 22 -
Ejemplo.
y = y, y(0) = 1.
Euler: Sol. Cal.
1.000000 1.100000 1.210000 1.331000 1.464100 1.610510 1.771561 1.948717 2.143588 2.357947 2.593742 2.853116 3.138428 3.452271 3.797498 4.177248
Solucion exacta:
y(x) = ex .
h = 0.1
Error
0.0 5.1 103 1.1 102 1.8 102 2.7 102 3.8 102 5.0 102 6.5 102 8.1 102 0.1 0.12 0.15 0.18 0.21 0.25 0.30
x
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 1.1 1.2 1.3 1.4 1.5
Sol. Ex.
1.000000 1.105170 1.221402 1.349858 1.491824 1.648721 1.822118 2.013752 2.225540 2.459603 2.718281 3.004166 3.320116 3.669296 4.055199 4.481689
RK44 : h = 0.1
Sol. Cal.
1.000000 1.105170 1.221402 1.349858 1.491824 1.648720 1.822117 2.013751 2.225539 2.459601 2.718279 3.004163 3.320113 3.669293 4.055195 4.481683
Error
0.0 8.4 108 1.8 107 3.1 107 4.5 107 6.3 107 8.3 107 1.0 106 1.3 106 1.6 106 2.0 106 2.5 106 3.0 106 3.6 106 4.3 106 5.1 106
521230
- 23 -
4.5
Solucin exacta Mtodo de Euler, h=0.2 Mtodo de Euler, h=0.1 Mtodo RK4, h=0.2
3.5
2.5
1.5
0.5 0.2
0.2
0.4
0.6
0.8
1.2
1.4
1.6
521230
- 24 -
< h.
521230
- 25 -
Esquemas Runge-Kutta-Fehlberg
Una estrategia para el control del error es la de los esquemas Runge-Kutta-Fehlberg. En particular, uno muy utilizado es el de cuarto orden, RKF45, el cual consiste en un RK45 acoplado con un RK56 . Este esquema minimiza el numero de evaluaciones de f , ya que el RK56 utiliza las mismas 5 evaluaciones del RK45 y una sola mas. En cada paso, el valor de la solucion calculado por el metodo de mayor orden
(RK56 ) se utiliza para estimar a posteriori el error del calculado por el de menor orden (RK45 ).
De ese modo, este metodo permite una seleccion automatica del paso de integracion h (metodos adaptivos de paso variable) como se puede apreciar en el algoritmo que sigue. Este esquema se utiliza en M ATLAB mediante el comando ode45. A su vez el comando ode23 implementa un esquema RKF23 similar.
521230
- 26 -
Algoritmo (RK45) Dados f (x, y), a, y0 , b, Para i (1) y h (paso inicial tentativo)
9 k ) 32 2 k4 = hf (xi + 12 h, yi + 1932 k1 7200 k2 + 7296 k3 ) 13 2197 2197 2197 845 k5 = hf (xi + h, yi + 439 k1 8k2 + 3680 k3 4104 k4 ) 216 513 8 k6 = hf (xi + 1 h, yi 27 k1 + 2k2 3544 k3 + 1859 k4 11 k5 ) 2 2565 4104 40 25 yi+1 = yi + 216 k1 + 1408 k3 + 2197 k4 1 k5 2565 4104 5 1 128 2197 1 2 i+1 := 360 k1 4275 k3 75240 k4 + 50 k5 + 55 k6 s := 0.84 ( / |i+1 |)1/4
(2)
Si |i+1 |
521230
- 27 -