Octave - Método de Runge-Kutta
Em análise numérica, os métodos de Runge–Kutta formam uma família importante de metódos iterativos implícitos e explícitos para a resolução numérica (aproximação) de soluções de equações diferenciais ordinárias. Aqui, vamos resolver o PVI por Runge-Kutta de ordem 4.
Descrição
Em análise numérica, os métodos de Runge–Kutta formam uma família importante de metódos iterativos implícitos e explícitos para a resolução numérica (aproximação) de soluções de equações diferenciais ordinárias. Aqui, vamos resolver o PVI por Runge-Kutta de ordem 4.
function [Vetx,Vety] = RungeKutta(funcao,a,b,m,y0)
%parametros de entrada: funcao,a,b,m,y0 - > lim. inf., lim. sup., num.
%subintervalos e valor inicial
%parametros de saida: Vetx,Vety -> abcissas e solucao do PVI
h = (b-a)/m;
xt = a;
yt = y0;
Vetx(1) = xt;
Vety(1)=yt;
disp (' i xt yt');
disp([ 0 xt yt]);
for i=1:m
x = xt;
y = yt;
k1 = eval(funcao);
x = xt + h/2;
y = yt + h/2 * k1;
k2 = eval(funcao);
y = yt + h/2 * k2;
k3 = eval(funcao);
x = xt + h;
y = yt + h * k3;
k4 = eval(funcao);
xt = a+i*h;
yt = yt+h/6*(k1+2*(k2+k3)+k4);
disp([ i xt yt]);
end
end