Documentos de Académico
Documentos de Profesional
Documentos de Cultura
2 1
1 1
( )
( ) ( ) ( ). .
2
i
i i i
x t
x t x t x t t t
= + A + A donde se puede demostrar que:
1 1
( )
i
x t m
= y
2 1
1
( )
i
m m
x t
t
=
A
.
As, reemplazando, queda que
1 2
1
( ) ( )
2
i i
m m
x t x t t
+ | |
= + A
|
\ .
siendo este el
ALGORITMO principal del mtodo.
El mtodo de Runge-Kutta estima derivadas por pendientes usando un promedio
ponderado de pendientes para resolver los sistemas de ecuaciones.
RUNGE-KUTTA DE ORDEN 4
function [t,x]=RK4(f,t0,x0,tf,h)
pasos=floor(abs(tf-t0)/h)+1;
t=linspace(t0,tf,pasos);
hutil=t(2)-t(1);
x(:,1)=x0;
for k=2:pasos
m1=f(t(k-1),x(:,k-1));
m2=f(t(k-1)+hutil/2,x(:,k-1)+m1*hutil/2);
m3=f(t(k-1)+hutil/2,x(:,k-1)+m2*hutil/2);
m4=f(t(k-1)+hutil,x(:,k-1)+m3*hutil);
x(:,k)=x(:,k-1)+((m1+2*m2+2*m3+m4)/6)*hutil;
end
Runge-Kutta de orden 4 se deriva de la serie de Taylor pero su demostracin y
algoritmo son muy complicados. Utiliza un promedio de 4 pendientes: una del
principio, dos del medio, y una del final del intervalo.
RUNGE-KUTTA DE RDENES 2-4
function [t,x]=RK24(f,t0,x0,tf,h,tol)
if nargin==4
h=abs(tf-t0)/100;
tol=0.001;
end
if nargin==5
tol=0.001;
end
[tr2,xr2]=RK2(f,t0,x0,tf,h);
[tr4,xr4]=RK4(f,t0,x0,tf,h);
err=norm(xr2-xr4)/norm(xr4);
while(err>=tol)
h=h/2;
[tr2,xr2]=RK2(f,t0,x0,tf,h);
[tr4,xr4]=RK4(f,t0,x0,tf,h);
err=norm(xr2-xr4)/norm(xr4);
end
t=tr4;
x=xr4; Es una combinacin efectiva de ambos mtodos.