Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Resumen:
La solucin de modelos dinmicos que surgen de la interpretacin matemtica de fenmenos
fsicos involucra la integracin de ecuaciones diferenciales ordinarias. As existen casos no-lineales
en los que no es posible encontrar una solucin analtica. En la prctica los sistemas dinmicos se
resuelven por medio de computadoras, en el aprendizaje de los mtodos numricos para la
solucin de ecuaciones diferenciales. El alumno normalmente integra las ecuaciones manualmente
consumiendo un tiempo importante que puede ser usado en la interpretacin fsica de la solucin.
En este artculo se propone introducir a los alumnos de licenciatura en la integracin numrica de
ecuaciones diferenciales ordinarias aplicando el lenguaje de programacin C++. Esto permite
ahorrar tiempo en tareas iterativas para enfocarse en la interpretacin fsica de la solucin y del
fenmeno que se est estudiando, generar nuestro propio algoritmo evitando el uso de programas
comerciales. Adems, se mostrar una breve revisin de los mtodos numricos (comparando tres
mtodos numricos clsicos (Euler, Euler modificado y Runge Kutta de 4 orden)) analizando la
convergencia que existen entre estos mtodos de integracin numrica.
Palabras clave: Mtodos numricos, aplicacin, programacin, Runge Kutta
INTRODUCCIN
dy yk 1 yk
dx xk 1 xk
y g ( x, c )
La solucin de la Ecuacin 1 es de la forma
donde c es una constante
determinada por las condiciones iniciales. Puesto que la curva es continua,
pequeos segmentos de la curva se pueden suponer como lneas rectas a si en el
( xk , yk )
punto particular
sobre la curva se tiene que la pendiente de la recta en este
punto esta dada por:
dy
tan( ) xk , yk g ( xk , yk )
(2)
dx
yk 1
Entonces el punto
aproximado linealmente al punto exacto
calcular de acuerdo a la Figura (1) por:
yk 1 yk g ( xk , yk )* dx
dy
yk 1 yk
dx
xk , y k
* dx
f ( xk 1 )
se puede
(3)
(4)
La cual proporciona una formula iterativa para hallar puntos de la solucin de una
forma aproximada a lo largo de la curva de solucin por medio de una recta.
Mientras ms pequeos sea dx ms exacta ser la aproximacin Figura 2.
yk 1mod ificada yk g ( xk , yk ) g ( xk 1 , yk 1 ) *
Donde
yk 1
dx
2
(5)
y ( x0 ) y0
y ( x)
k 1
funcin
posee
derivadas, que sean continuas en un intervalo abierto que
contenga a y x, entonces podemos escribir
y ( x) y (a ) y (a )
xa
( x a )2
( x a )( k 1)
( k 1)
y (a )
... y
(c )
...
1!
2!
( k 1)!
(6)
xn
Donde c es un numero entre a y x si remplazamos a por
formula anterior se transforma en
y ( xn 1 ) y ( xn ) dxy( xn ) y( xn )
y x por
(dx) 2
(dx ) ( k 1)
( k 1)
... y (c)
...
2!
( k 1)!
xn 1 xn dx
la
(7)
dx 2
y(c )
2
xn y xn 1
k 1
En donde c es un numero entre
cuando
y el residuo
es
dx h
pequeo, cambiando
; h es el intervalo de paso, se obtiene la formula de
iteracin;
yn1 yn hyn
(8)
(9)
1
k1 2k2 2k3 k4
6
RESULTADOS Y ANLISIS
Problema de valor inicial
El diagrama de flujos para cada uno de los algoritmos se presenta a continuacin
en la figura 3;
2002).
y e( x
dy
2 xy donde y (1) 1 para el intervalo 1, 2
dx
1)
Analtica
Euler
Euler
modifica
1.2
1.5527
1.4000
1.5360
Runge
Kutta
4orden
1.5526
1.4
2.6117
2.0720
2.5412
2.6109
1.6
4.7588
3.2323
4.5212
4.7554
1.8
9.3933
5.3010
8.6374
9.3799
20.0855
9.1177
17.6893
20.0338
Euler
(%error)
Euler
modifica
(%error)
Runge
Kutta
4orden
(%error)
52.59
11.48
0.24
X
1.050
1.100
1.150
1.200
Analtica
Euler
Euler
modifica
1.1079
1.2337
1.3806
1.5527
1.1000
1.2155
1.3492
1.5044
1.1078
1.2332
1.3798
1.5514
Runge
Kutta
4orden
1.1079
1.2337
1.3806
1.5527
1.250
1.300
1.350
1.400
1.450
1.500
1.550
1.600
1.650
1.700
1.750
1.800
1.850
1.900
1.950
2.000
1.7551
1.9937
2.2762
2.6117
3.0117
3.4903
4.0654
4.7588
5.5985
6.6194
7.8656
9.3933
11.2740
13.5991
16.4858
20.0855
1.6849
1.8955
2.1419
2.4311
2.7714
3.1733
3.6493
4.2149
4.8893
5.6960
6.6643
7.8306
9.2401
10.9495
13.0299
15.5708
1.7531
1.9909
2.2721
2.6060
3.0038
3.4795
4.0506
4.7388
5.5714
6.5828
7.8162
9.3267
11.1841
13.4777
16.3219
19.8637
1.7551
1.9937
2.2762
2.6117
3.0117
3.4903
4.0653
4.7588
5.5985
6.6193
7.8656
9.3933
11.2739
13.5989
16.4856
20.0852
Tabla 4. Errores relativos de los tres mtodos con un paso de h=0.1 y h=0.05.
Euler
(%error)
Euler
modifica
(%error)
Runge
Kutta
4orden
(%error)
52.59
11.48
0.24
22.47
1.10
0.001
CONCLUSIONES
Los mtodos iterativos de Runge Kutta se basan en el desarrollo de la serie infinita
de Taylor, en donde la serie truncada en la que aparece una primera derivada se
denomina de primer orden y a si sucesivamente, el mtodo de Runge Kutta de
4orden es el mas empleado debido a su simplicidad y su rapidez de
convergencia, en la Tabla 4 y en las Figuras 4 y 5 se observa claramente como el
mtodo de Runge Kutta de 4 orden es bastante exacto con tan solo 5 iteraciones
alcanza un error relativo del 0.24% en comparacin de los otros dos mtodos.
Esta es la razn principal por la que es el ms utilizado. Al aumentar el nmero de
iteraciones, el mtodo de Runge Kutta es tambin el que ms rpido converge a la
solucin exacta.
REFERENCIAS