METODO DE RUNGE-KUTTA DE CUARTO ORDEN
FREDY MAGDANIEL TORRES
C.C. 111886322
LUIS MARIA HINCAPIES
(Docente)
UNIVERSIDAD DE LA GUAJIRA
FACULTAD DE INGENIERIA
PROGRAMA INGENIERIA CIVIL
2017
Tabla de contenido
1. Introduccin
2. Objetivos
3. Mtodo de runge kutta de cuarto orden
4. Ejemplo aplicativo
5. Algoritmo de ejemplo y de la grafica
6. Solucin del ejemplo
7. Grafica del ejemplo
8. Conclusin
INTRODUCCIN
Los mtodos numricos constituyen una herramienta muy valiosa para la
resolucin de problemas en la ingeniera, se puede definir como el grupo de
conocimiento matemticos relacionado con el diseo y anlisis de algoritmos
necesario para resolver problemas de la ciencia y ingeniera. dichas ecuaciones se
pueden expresar en funcin del tiempo que transcurre a esto se le llama una razn
de cambio donde una variable cambia en funcin de un tiempo t, dichas
ecuaciones han sido resueltas a travs de los mtodos de integracin y clculos
extensos, engorros y complicados.
En el presente trabajo daremos a conocer el mtodo de runge rutta de orden
cuatro en el desarrollaremos este ejemplos aplicativos de manera interactiva en el
programa MATLAB.
OBJETIVOS
Objetivo General
Aprender a resolver Ecuaciones Diferenciales de CUARTO orden a travs
del mtodo de Runge-Kutta en matlab
Objetivos Especficos
Conocer ventajas y desventajas del mtodo.
Interpretar y analizar los resultados obtenidos en el programa
Resolver problemas mediante este mtodo.
Identificar la exactitud del mtodo.
RUNGE-KUTTA DE CUARTO ORDEN
Si ahora m = 4, se obtiene, con un desarrollo del tipo del anterior, la siguiente
frmula, para i desde 0 hasta N-1:
+ = + ( + + + )
= ( , )
= ( + , + )
= ( + , + )
= ( + , + )
Ahora el error es de la forma e Ch4 y por tanto el mtodo es de orden 4
Si bien con facilidad se pueden deducir otras frmulas, el algoritmo expresado en
(16) se denomina mtodo de Runge-Kutta de cuarto orden, o mtodo clsico de
Runge-Kutta, abreviado como RK4. Este algoritmo es de uso extendido, y
reconocido como una valiosa herramienta de clculo, por la buena aproximacin
que produce.
Esta frmula tiene un error de truncamiento local de O(h 5), y un error global de
O(h4). De nuevo, el precio que se debe pagar por la mejora en el error, es una
mayor cantidad de evaluaciones de la funcin, resultando en un mayor tiempo de
clculo si la funcin es complicada. Tiene la ventaja, sobre el mtodo de Taylor de
orden 4 (cuyo error global es tambin O(h4), que no requiere el clculo de las
derivadas de f.
EJEMPLO APLICATIVO
Se tiene una poblacin de 100 lobos que llega a un ecosistema donde se
encuentran 400 conejos. Determinar despus de 5 aos el comportamiento
demogrfico de las especies si obedecen al siguiente sistema de ecuacin
= 4 + 2
= +
Donde x(t) es el depredador, y(t) la presa y t esta en dcadas.
SOLUCION EJERCICIO
Algoritmo matlab
clear
clc
disp(' SISTEMA DE 2 EDOs DESARROLLADO PARA EL MODELO LOTKA-
VOLTEIRA: DEPREDADOR-PRESA')
disp(' ')
r=inline('4*x+2*y','t','x','y');
s=inline('-x+y','t','x','y');
t0=input('Ingrese el valor del tiempo inicial en dcadas, t0:');
tf=input('Ingrese el valor del tiempo final en dcadas, tf:');
h=input('Ingrese el valor del paso h:');
t = t0;
x0=input('Ingrese la cantidad de individuos depredadores al inicio,
X(0):');
y0=input('Ingrese la cantidad de individuos presa al inicio, Y(0):');
tab = [t,a];
g = a;
while(t<tf)
x0 = a(1);
y0 = a(2);
t = t+h;
tab=[tab;t,x0,y0];
a = rrkk(r,s,x0,y0,t,h);
g = [g;a];
end
u = 0:h:tf;
hold on
plot(u,g)
disp('Resultados del clculo con el mtodo de Runge-Kutta 4 orden:')
disp('columna 1: t columna 2: x(t) columna 3: y(t)')
tab
title(['SOLUCIN DEL SISTEMA DEPREDADOR (x(t)) Vs. PRESA (y(t)) CON
h=',num2str(h)])
xlabel('TIEMPO (t)')
ylabel('CANTIDAD DE INDIVIDUOS')
[t,y] = ode45('dpl',[0 0.5],[100; 400]);
plot(t,y(:,1),'b--',t,y(:,2), 'g--')
legend('x(t) RK4','y(t) RK4','x(t) ode45','y(t) ode45')
disp('Resultados del clculo con el mtodo ode45 de Matlab:')
disp('columna 1: t columna 2: x(t) columna 3: y(t)')
sol = [t,y]
function q = rrkk(xx,yy,x,y,t,h)
u1=h*eval('xx(t,x,y)');
v1=h*eval('yy(t,x,y)');
u2=h*eval('xx(t+h/2,x+u1/2,y+v1/2)');
v2=h*eval('yy(t+h/2,x+u1/2,y+v1/2)');
u3=h*eval('xx(t+h/2,x+u2/2,y+v2/2)');
v3=h*eval('yy(t+h/2,x+u2/2,y+v2/2)');
u4=h*eval('xx(t+h,x+u3,y+v3)');
v4=h*eval('yy(t+h,x+u3,y+v3)');
xx1=x+(1/6)*(u1+2*u2+2*u3+u4);
yy1=y+(1/6)*(v1+2*v2+2*v3+v4);
q = [xx1,yy1];
function dy = dpl(t,y)
dy = [4*y(1)+2*y(2); -y(1)+y(2)];
SOLUCION MATLAB
SISTEMA DE 2 EDO DESARROLLADO PARA EL MODELO LOTKA-VOLTEIRA: DEPREDADOR-PRESA
Ingrese el valor del tiempo inicial en dcadas, t0:0
Ingrese el valor del tiempo final en dcadas, tf:0.5
Ingrese el valor del paso h:0.025
Ingrese la cantidad de individuos depredadores al inicio, X(0):100
Ingrese la cantidad de individuos presa al inicio, Y(0):400
Resultados del clculo con el mtodo de Runge-Kutta 4 orden:
INTERACCIONES
columna 1: t columna 2: x(t) columna 3: y(t)
0 0.1317 0.4072
0.0000 0.1317 0.4072
0.0001 0.1672 0.4137
0.0001 0.2067 0.4195
0.0001 0.2506 0.4243
0.0001 0.2994 0.4281
0.0001 0.3534 0.4307
0.0002 0.4133 0.4319
0.0002 0.4795 0.4316
0.0002 0.5526 0.4295
0.0002 0.6332 0.4253
0.0003 0.7220 0.4190
0.0003 0.8197 0.4101
0.0003 0.9272 0.3984
0.0004 1.0453 0.3836
0.0004 1.1749 0.3652
0.0004 1.3171 0.3429
0.0004 1.4730 0.3163
0.0005 1.6438 0.2849
0.0005 1.8307 0.2482
0.0005 2.0352 0.2056
GRAFICA MATLAB
SOLUCIN DEL SISTEMA DEPREDADOR (x(t)) Vs. PRESA (y(t)) CON h=0.025
2500
x(t) RK4
y(t) RK4
x(t) ode45
2000
y(t) ode45
CANTIDAD DE INDIVIDUOS
1500
1000
500
0
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
TIEMPO (t)
CONCLUSION
Despus de haberse realizado el estudio del mtodo de Runge Kutta de orden 4
podemos concluir:
Es un mtodo fcil y sencillo de utilizar para resolver problemas de ecuaciones
diferenciales.
La efectividad o exactitud del mtodo consiste en saber escoger un buen
incremento.
Se pueden resolver ecuaciones diferenciales sin tener necesidad de resolver las
integrales a dicha ecuacin solo se necesita conocer una pendiente hallada a
1 + 22 + 23 + 4
travs de la ecuacin 6
.