Está en la página 1de 11

Metodos Matematicos 2

Metodos Numericos y Ecuaciones Diferenciales


Ordinarias
L. A. N u nez
*
Centro de Astrofsica Teorica,
Departamento de Fsica, Facultad de Ciencias,
Universidad de Los Andes, Merida 5101, Venezuela
y
Centro Nacional de Calculo Cientco
Universidad de Los Andes (CeCalCULA),
Corporacion Parque Tecnologico de Merida,
Merida 5101, Venezuela
Merida, Octubre 2003, Version

Indice
1. Sistemas Dinamicos 2
2. Los Metodos y su Clasicacion 2
3. El Rebusque de Taylor 3
4. La idea de la Integracion 3
5. El Metodo de Euler y el problema de Valores Iniciales 4
6. Los Metodos de Runge-Kutta 5
7. Metodos Multipaso 6
8. Control del Paso 10
*
e-mail: nunez@ula.ve
1
1. Sistemas Dinamicos
Dada una ecuacion diferencial de segundo orden de la forma
d
2
x(t)
dt
2
= F
_
d x(t)
dt
, x(t), t
_
siempre se puede convertir en un sistema de dos ecuaciones lineales de primer orden, al extender el
espacio de variables de la forma
d x(t)
dt
def
= p(t)
x(t)
def
= q(t)
_

d
2
x(t)
dt
2
= F
_
d x(t)
dt
, x(t), t
_

_
d q(t)
dt
= p(t)
d p(t)
dt
= F (p(t), q(t), t)
este sistema puede ser re-arreglado en forma vectorial
d
_
q(t)
p(t)
_
dt
=
_
p(t)
F (p(t), q(t), t)
_

d Q(t)
dt
= F(Q(t),t)
As dado un conjunto de potenciales elasticos y las fuerzas que de ellos derivan,
V (x) =
_

_
kx p = 1
1
2
kx
2
p = 2
1
3
kx
3
p = 3
.
.
.
1
p
k x
p
F
k
(x) =
d V (x)
dx
F
k
(x) =
_

_
k
x
x
kx
kx
2
.
.
.
k x
p1 x
x
el sistema dinamico correspondiente a la ecuacion de Newton correspondiente sera
d Q(t)
dt
= F(Q(t),t)
d
_
_
x(t)
p(t)
_
_
dt
=
_
_
_
p(t)
1
m
[F
ext
(x(t), t)] k x(t)
p1 x(t)
x(t)
_
_
_
2. Los Metodos y su Clasicacion
Dada una ecuacion diferencial de primer orden,
dy(x)
dx
= y

(x) = f(y(x), x), con y


k
el valor de la
funcion obtenida con el metodo, con y
k
= y(x
k
), donde x
k
= x
0
+ kh y h el paso. Diremos que un
metodo es de paso unico si la determinacion de y
k+1
solo involucra un unico valor de y
k
y m ultiple
paso si para calcularlo se utilizan varios valores y
k
, y
k1
, , y
kp
. Por otra parte se denomina un
metodo explcito si para determinar y
k+1
se utilizan valores anteriores y
k
, y
k1
, , y
kp
y implcito
si se utilizan una funcion del mismo valor y
k+1
. As
y
k+1
= y
k1
+ 2h f (x
k
, y
k
)
2
representa un metodo explcito de paso unico mientras que
y
k+1
= y
k
+
h
2
[f (x
k
, y
k
) + f (x
k+1
, y
k+1
)]
sera implcito de m ultiples pasos.
3. El Rebusque de Taylor
Tal y como hemos dicho arriba, dada una ecuacion diferencial, su solucion a traves de un metodo
de paso unico puede ser escrita como
y

(x) = f(y(x), x) y
k+1
= y
k
+ (x
k
, y
k
, h) con h = x
i+1
x
i
;
Lo primero que se puede hacer es expandir por Taylor alrededor del punto x = x
k
y(x) = y(x
k
) + (x x
k
) y

(x
k
) +
1
2!
(x x
k
)
2
y

(x
k
) + +
1
n!
(x x
k
)
n
y
(n)
(x
k
) +
e identicamos
y(x
k
) y
k
y

(x) = f(y(x), x)
y

(x
k
) f(y
k
, x
k
)
y

(x
k
) f

(y
k
, x
k
) =
f
x

x=x
x
y=y
k
+
f
y

x=x
x
y=y
k
y

k
y

(x
k
) f

(y
k
, x
k
) =
x
f

+
y
f

k
=
xx
f + (
xy
f) y

k
+
_

yx
f + (
yy
f) y

k
+
y
f y

k
.
.
.
por lo que reconstruimos la serie de Taylor hasta el orden que podamos o requiramos
y
n+1
= y
n
+ h f(y
k
, x
k
) +
1
2!
h
2
f

(y
k
, x
k
) +
1
3!
h
3
f

(y
k
, x
k
) + +
1
n!
h
n
f
(n1)
(y
k
, x
k
) +
quedando acotado el error por

red
=
1
(n + 1)!
h
n+1
f
(n)
(y(), x())
4. La idea de la Integracion
La idea de integrar una ecuacion diferencial ordinaria puede ilustrarse, formalmente de la siguiente
forma
y

(x) = f(y(x), x) y
k+1
= y
k
+
_
x
k+1
x
k
d f (, y())
3
entonces el metodo se centra en como se aproxima la funcion dentro de la integral
Euler Se aproxima la funcion con en el punto anterior
f (x
k
, y
k
) y
k+1
= y
k
+ h f (x
k
, y
k
)
Euler Mejorado o Heuns Se aproxima la funcion mediante un promedio en los extremos
1
2
[f (x
k
, y
k
) + f (x
k+1
, y
k+1
)] y
k+1
= y
k
+
h
2
[f (x
k
, y
k
) + f (x
k+1
, y
k+1
)]
y
k+1
= y
k
+
h
2
[f (x
k
, y
k
) + f (x
k+1
, y
k
+ h f (x
k
, y
k
))]
con h = x
i+1
x
i
el paso de integracion. Notese ademas que hemos utilizado Euler otra vez para
expresar y
k+1
= y
k+1
(y
k
, x
k
)
El Metodo de Euler constituye una expansion por Taylor hasta primer orden por lo que el er-
ror es claramente de segundo orden por cuanto si comparamos con la expansion en series de Taylor
correspondiente tendremos
y
k+1
= y
k
+ h
d y
dx

x=x
k
+
h
2
2!
d
2
y
dx
2

x=x
k
+

tot

h
2
2!
d
2
y
dx
2

x=x
k
5. El Metodo de Euler y el problema de Valores Iniciales
Este metodo si bien no se utiliza en la practica en su forma estandar para ecuaciones diferenciales
ordinarias, si ilustra el proceso de discretizacion de una ecuacion diferencial y su solucion mediante
metodos numericos.
Para resolver la ecuacion de un oscilador armonico libre que parte del reposo, i.e.
d
2
(t)
dt
2
+
2
0
(t) = 0 con:
2
0
=
k
m
; (t
0
) = 1; y
d(t)
dt

t=t
0
= 0
en la cual (t) representa la posicion de un cuerpo de masa m unido a un resorte de constante elastica
k.
Discretizando mediante diferencia centrada
h = t
i+1
t
i
;
d
2
(t)
dt
2

1
h
2
[(t
i+1
) 2(t
i
) + (t
i1
)]
1
h
2
[
i+1
2
i
+
i1
]
con lo cual la ecuacion del oscilador libre queda como
d
2
(t)
dt
2
+
2
0
(t) = 0
i+1

_
2 h
2

2
0
_

i
+
i1
= 0
esta ultima ecuacion es la version en diferencias nitas de la ecuacion diferencial y es claro que se
convierte en una ecuacion algebraica. Finalmente, los dos valores iniciales para la iteracion
0
y
1
surgen de las condiciones iniciales

0
(t = t
0
) = 1
d(t)
dt

t=t
0
= 0
1

0
4
6. Los Metodos de Runge-Kutta
Es el conjunto de metodos mas populares y de mayor uso. La idea del metodo de Runge-Kutta es
producir resultados equivalentes a desarrollos en Taylor de orden superior a Euler en metodos de un
unico paso por lo tanto
y

(x) = f(y(x), x) y
k+1
= y
k
+
_
x
k+1
x
k
d f (, y())
y se aproxima la funcion con un promedio ponderado.
f (, y()) [ f (y
k
, x
k
) + f (y
k
+ f (y
k
, x
k
) h
k
, x
k
+ h
k
)] con h
k
= x
k+1
x
k
donde , , y son los pesos estadsticos a ser determinados. Por lo tanto
y
k+1
= y
k
+ [ f (y
k
, x
k
) + f (y
k
+ f (y
k
, x
k
) h
k
, x
k
+ h
k
)] h
k
Expandiendo por Taylor de dos variables
g (x + , y + ) = g (x, y) + [
x
g +
y
g] +
1
2!
_

2
x
g + 2
xy
g +
2

2
y
g

+
tendremos
y
k+1
= y
k
+ [ + ] f
k
h
k
+ [
x
f
k
+ f
k

y
f
k
] h
2
k
+
+
_

2
2

2
x
f
k
+ 2 f
k

xy
f
k
+

2
2
f
2
k

2
y
f
k
_
h
3
k
+
con f
k
= f (y
k
, x
k
) y como se ve claramente, queda libertad para escoger
Euler Mejorado o Heuns = =
1
2
; = = 1
y
k+1
= y
k
+ f
k
h
k
+
1
2
[
x
f
k
+ f
k

y
f
k
] h
2
k
Euler Modicado = 0; = 1; = =
1
2
y
k+1
= y
k
+ f
k
h
k
+
_
1
2

x
f
k
+
1
2
f
k

y
f
k

h
2
k
Runge-Kutta de cuarto orden aproxima la funcion f (, y()) en cuatro puntos intermedios en el inter-
valo x
k
< x < x
k+1
por lo cual
y
k+1
= y
k
+ [
1
+
2
+
3
+
4
] h
k
podemos plantearnos varias formas de hacerlo
y
k+1
= y
k
+
h
k
6
[
1
+ 2
2
+ 2
3
+
4
]
5
donde

1
= f (x
k
, y
k
)

2
= f
_
x
k
+
1
2
h
k
, y
k
+
1
2

1
_

3
= f
_
x
k
+
1
2
h
k
, y
k
+
1
2

2
_

4
= f (x
k
+ h
k
, y
k
+
3
)
o tambien
y
k+1
= y
k
+
h
k
8
[
1
+ 3
2
+ 3
3
+
4
]
donde

1
= f (x
k
, y
k
)

2
= f
_
x
k
+
1
3
h
k
, y
k
+
1
3

1
_

3
= f
_
x
k
+
1
3
h
k
, y
k
+
1
3

2
_

4
= f (x
k
+ h
k
, y
k
+
3
)
Mas a un el metodo de Fehlberg de 4/5 orden se puede escribir como
y
k+1
= y
k
+ h
k
[C
1

1
+ C
2

2
+ C
3

3
+ C
4

4
+ C
5

5
+ C
6

6
] + O(h
6
)

1
= f (x
k
, y
k
)

2
= f (x
k
+ a
2
h
k
, y
k
+ b
21

1
)

3
= f (x
k
+ a
3
h
k
, y
k
+ b
31

1
+ b
32

2
)

4
= f (x
k
+ a
4
h
k
, y
k
+ b
41

1
+ b
42

2
+ b
43

3
)
.
.
.

6
= f (x
k
+ a
6
h
k
, y
k
+ b
61

1
+ b
62

2
+ b
63

3
+ b
64

4
+ b
65

5
)
la cual puede ser redenida y truncada para obtener
y
k+1
= y
k
+ h
k
_

C
1

1
+

C
2

2
+

C
3

3
+

C
4

4
+

C
5

5
_
+ O(h
5
)
7. Metodos Multipaso
Los metodos multipaso se basan encontrar el valor y
n+k
como una funcion de k valores precedentes:
y
n+k1,
y
n+k2,
y
n+k3,
y
n
. Para k = 1, retomamos los metodos de paso unico del tipo Euler
o Runge-Kutta. Sera explcito (abierto) si el valor y
n+k
puede ser calculado directamente o implcito
(abierto) si la formula contiene el valor y
n+k
deseado.
6
Otra vez la idea esta en aproximar el argumento de la integracion formal
y

(x) = f(y(x), x) y
i+1
= y
i
+
_
x
i+1
x
ik
d f (, y())
notese en este caso que el punto i + 1 recibe la contribucion de k puntos anteriores. El integrando
f (, y()) lo aproximaremos con un polinomio de interpolacion de Newton de orden n. Tal que
f (, y()) f () = p
n
() + R
n
()
con p
n
() el polinomio de interpolacion y R
n
() el residuo. Donde
i
p
n
(x) = f [x
n
] + (x x
n
) f [x
n
, x
n1
] + (x x
n
) (x x
n1
) f [x
n
, x
n1
, x
n2
] +
+ (x x
n
) (x x
n1
) (x x
n2
) (x x
1
) f [x
n
, x
n1
, x
n2
, x
n3
, x
0
]
R
n
(x) = (x x
n
) (x x
n1
) (x x
n2
) (x x
0
)
f
(n+1)
()
(n + 1)!
con x
0
< < x
n
haciendo p
n
(x) f (x
n
+ h) con cero o negativo de tal modo que en terminos del operador difer-
encias atrasada f(x) = f(x) f(x h) siendo h el incremento
f (x
n
+ h) = f
n
+ f
n
+
( + 1)
2!

2
f
n
+
( + 1) ( + 2)
3!

3
f
n
+
+
( + 1) ( + 2) ( + r 1)
r!

r
f
n
donde hemos denotado f
n
f (x
n
, y(x
n
)),
m
f
n

m
f|
x=x
n
, y = (x x
i
) /h Por lo tanto
y
i+1
= y
i
+
_
x
i+1
x
ik
d f (, y())
= y
i
+ h
_
1
k
d f (x
n
+ h)
y
i+1
= y
i
+ h
_
f
i
+

2
2
f
i
+
2
_

3
+
1
2
_

2
f
i
2!
+
2
_

2
4
+ + 1
_

3
f
i
3!
+
+
2
_

3
5
+
3
2
2
+
11
3
+ 3
_

4
f
i
4!
+
_
1
k
por razones de conveniencia que son evidentes al hacer el desarrollo, se toman las formulas para k = r
7
y k impar y obtendremos
k = 0
r = 3
_

_
_
_
y
i+1
= y
i
+ h
_
f
i
+
1
2
f
i
+
5
12

2
f
i
+
3
8

3
f
i

R =
251
720
h
5
f
(4)
()
k = 1
r = 1
_

_
_
_
y
i+1
= y
i
+ h[2f
i
+ 0f
i
]
R =
1
3
h
3
f
(2)
()
k = 3
r = 3
_

_
_
_
y
i+1
= y
i
+ h
_
4f
i
4f
i
+
3
8

2
f
i
+ 0
3
f
i

R =
14
45
h
5
f
(4)
()
k = 5
r = 5
_

_
_
_
y
i+1
= y
i
+ h
_
6f
i
12f
i
+ 15
2
f
i
9
3
f
i
+
33
10

4
f
i

R =
41
140
h
7
f
(6)
()
y al expresar las diferencias atrasadas las formulas explcitas (abierta) quedan expresadas como
k = 0
r = 3
_
y
i+1
= y
i
+
h
24
[55f
i
59f
i1
+ 37f
i2
9f
i3
] R O
_
h
5
_
k = 1
r = 1
_
y
i+1
= y
i
+ 2hf
i
R O
_
h
3
_
k = 3
r = 3
_
y
i+1
= y
i
+
4h
3
[2f
i
f
i1
+ 2f
i2
] R O
_
h
5
_
k = 5
r = 5
_
y
i+1
= y
i
+
3h
10
[11f
i
14f
i1
+ 26f
i2
14f
i3
+ 11f
i4
] R O
_
h
7
_
Siguiendo el mis procedimiento se pueden escribir las formulas implcitas (cerradas) para las mismas
curiosas situaciones. Para este caso la conveniencia se obtienes para k impar y r = k + 2
k = 0
r = 3
_

_
_
_
y
i+1
= y
i
+ h
_
f
i+1

1
2
f
i+1

1
12

2
f
i+1

1
24

3
f
i+1

R =
19
720
h
5
f
(4)
()
k = 1
r = 3
_

_
_
_
y
i+1
= y
i1
+ h
_
2f
i+1
2f
i

1
3

2
f
i+1
0
3
f
i+1

R =
1
90
h
5
f
(4)
()
k = 3
r = 5
_

_
_
_
y
i+1
= y
i3
+ h
_
4f
i+1
8f
i

20
3

2
f
i+1

8
3

3
f
i+1
+
14
45

4
f
i+1

R =
8
945
h
5
f
(4)
()
desarrollando las diferencias atrasadas, tendremos
k = 0
r = 3
_
y
i+1
= y
i
+
h
24
[9f
i+1
+ 19f
i1
5f
i1
+ 9f
i2
] R O
_
h
5
_
k = 1
r = 3
_
y
i+1
= y
i1
+
h
3
[f
i+1
+ f
i
+ f
i1
] R O
_
h
5
_
k = 3
r = 5
_
y
i+1
= y
i3
+
2h
45
[7f
i+1
+ 32f
i
+ 12f
i1
+ 32f
i2
+ 7f
i3
] R O
_
h
7
_
8
Se debe puntualizar lo siguiente respecto a las formulas explcitas e implcitas de los metodos
multipaso antes mencionados
Los metodos multipasos, normalmente, requieren menos evaluaciones de las funciones que los
metodos monopaso para un mismo nivel de precision.
Los metodos multipaso requieren de un metodo monopaso que le permita determinar los y
n+k1,
y
n+k2,
y
n+k3,
, y
n
puntos iniciales.
Las formulas explcitas son, normalmente, menos precisas que las implcitas. La razon se fun-
damenta en que, mientras las explcitas extrapolan la solucion al punto y
i+1
, las implcitas la
interpolan, por cuanto la toman en cuenta en el momento de calcularla.
Las formulas explcitas e implcitas deben ser consideradas como complementarias, por cuanto
las explcitas pueden predecir el valor de y
i+1
necesario para la f
i+1
= f(x
i+1
, y
i+1
) del calculo
de y

i+1
en la formula implcita.
Existen varias combinaciones predictor-corrector, entre ellas mencionamos:
Milne de cuarto orden
Predictor
y
i+1
= y
i3
+
4h
3
[2f
i
f
i1
+ 2f
i2
]
Corrector
y
i+1
= y
i1
+
h
3
[f
i+1
4f
i
+ f
i1
]
Milne de sexto orden
Predictor
y
i+1
= y
i5
+
3h
10
[11f
i
14f
i1
+ 26f
i2
14f
i3
+ 11f
i4
]
Corrector
y
i+1
= y
i3
+
2h
45
[7f
i+1
+ 32f
i
+ 12f
i1
+ 32f
i2
+ 7f
i3
]
Adams Modicado o Adams Moulton
Predictor
y
i+1
= y
i
+
h
24
[55f
i
59f
i1
+ 37f
i2
9f
i3
]
Corrector
y
i+1
= y
i
+
h
24
[9f
i+1
+ 19f
i
5f
i1
+ f
i2
]
El metodo de extrapolacion multipaso mas exitoso (conjuntamente con los metodos de paso unico
del tipo Runge-Kutta) es el de extrapolacion racional de Bulirsch-Stoer en el cual se dene un
paso superior de H y una serie de subpaso h

= H/ con el aumento del n umero de subpasos, en alg un


momento siguiendo alg un criterio de convergencia se hace una extrapolacion (racional) que representa
el lmite .
9
El metodo de Bulirsch-Stoer tiene una estrategia diferente al los anteriores y posee, como motor
de aproximacion el metodo del punto medio modicado o salto de rana (leap frog). Este esquema se
utiliza con frecuencia en discretizaciones de ecuaciones diferenciales en derivadas parciales y se basa en
aproximar la derivada por el valor el promedio en los dos extremos:
y

(x) = f(y(x), x) y

(x
n
) = f(y(x
n
), x
n
) =
y(x
n
) y(
n1
)
2h
por lo tanto
z
0
y(x)
z
1
= z
0
+ hf(x, z
0
)
.
.
.
z
n+1
= z
n1
2hf(x + nh, z
n
)
para nalmente calcular
y(x + H) y
n

1
2
[z
n
+ z
n1
+ hf (x + H, z
n
)]
Notese que si reacomodamos
y(x + H)
4y
n
y
n/2
3
obtendremos un metodo de cuarto orden que requiere menos evaluaciones de f(y(x
n
), x
n
) por paso h
8. Control del Paso
En General para metodos de 4
to
orden. Tal y como se menciono en el caso de la integracion
numerica, el primer criterio que surge es dividir el paso h en la midad, calcular todo de nuevo y
comparar los resultados a ver si esta dentro del los lmites de tolerancia que nos hemos impuesto
_
_
_
_
y
h
y
h/2
y
h
_
_
_
_

_
y
h
, y
h/2
_
<
max

max

_
y
h
, y
h/2
_
_
h
0
h
t
_
5
h
0
= h
t
_

max

_
y
h
, y
h/2
_
_
1/5
donde hemos denotado h
0
como el paso ideal. Esta relacion es general para cualquier metodo de 4
orden de paso unico, multipaso, implcito o explcito.
Mas a un, la practica ha indicado que
h
0
=
_

_
Mh
t
_

max
(y
h
,y

h
)
_
0,20
Mh
t
_

0

h
_
0,20

0

1
Mh
t
_

max
(y
h
,y

h
)
_
0,25
Mh
t
_

0

h
_
0,25

0
<
1
10
donde 0 < M< 1 un factor de seguridad
Para metodos Runge-Kutta. es importante mencionar que se utilizan mayoritariamente metodos
hasta cuarto orden porque de mayor orden (M, por ejemplo) involucran mas de M evaluaciones (y
menos M 2) de la derivada. Por ello para este tipo de metodos se descubrio que considerando el
mismo n umero de puntos para la evaluacion intermedia se pueden generar metodos de distinto orden,
y para colomo de suerte el menor orden de esta situacion se expresa para metodos de 4 y 5 orden. En
particular Runge-Kutta de 5 orden se puede escribir como:
y
k+1
= y
k
+ h
k
[C
1

1
+ C
2

2
+ C
3

3
+ C
4

4
+ C
5

5
+ C
6

6
] + O(h
6
)

1
= f (x
k
, y
k
)

2
= f (x
k
+ a
2
h
k
, y
k
+ b
21

1
)

3
= f (x
k
+ a
3
h
k
, y
k
+ b
31

1
+ b
32

2
)

4
= f (x
k
+ a
4
h
k
, y
k
+ b
41

1
+ b
42

2
+ b
43

3
)
.
.
.

6
= f (x
k
+ a
6
h
k
, y
k
+ b
61

1
+ b
62

2
+ b
63

3
+ b
64

4
+ b
65

5
)
y con los mismos puntos ( las mismas evaluaciones !) se puede reescribir para 4 orden como:
y
k+1
= y
k
+ h
k
_

C
1

1
+

C
2

2
+

C
3

3
+

C
4

4
+

C
5

5
_
+ O(h
5
)
por lo tanto el error se puede estimar
(y
k+1
, y
k+1
) =
6

i=1
_
C
i


C
i
_
k
i
y el control del paso se utiliza exactamente igual
h
0
= h
t
_

max
(y
h
, y
h
)
_
0,20
Para metodos multipasos y predictor corrector la situacion puede tener un renamiento adicional
antes de proceder a modicar el paso h. El esquema sera para un metodo predictor corrector del tipo
Adams Modicado o Adams Moulton, donde el
Predictor
y
i+1
= y
i
+
h
24
[55f
i
59f
i1
+ 37f
i2
9f
i3
]
Corrector
y
i+1
= y
i
+
h
24
[9f
i+1
+ 19f
i
5f
i1
+ f
i2
]
se realiza una serie de iteraciones dentro de la formula de corrector, i.e.
y
i+1
1
= y
i
+
h
24
_
9f
_
x
i+1
, y
i+1
0
_
+ 19f (x
i
, y
i
) 5f (x
i1
, y
i1
) + f (x
i2
, y
i2
)
_
11

También podría gustarte