% Runge-Kutta de 4ª ordem
% exemplo - metodo das tentativas

format short;

clear all
close all
n=2;
a=0; 
b=1;
h=0.5;
np=(b-a)/h+1;
y=zeros(np,n);
t=[a:h:b]';
y0=[0 1];
y(1,:)=y0;

for k=1:np-1
    k
        tk=t(k);
        yk=y(k,:)';
        k1=[yk(2) 6*tk]'
        
        tk=t(k)+0.5*h;
        yk=y(k,:)'+0.5*h*k1;
        k2=[yk(2) 6*tk]'
        
        yk=y(k,:)'+0.5*h*k2;
        k3=[yk(2) 6*tk]'
        
        tk=t(k)+h;
        yk=y(k,:)'+h*k3;
        k4=[yk(2) 6*tk]'
        
        media=h/6*(k1+2*k2+2*k3+k4);
        
        y(k+1,:)=y(k,:)+media';
        temp=y(k+1,:)'
        pause
      
 end 

 
C=y; save tentativa_3 C;
 



% grafico
% plot(x,Y(:,1),'r*:'); hold on; 
% plot(x,Y(:,2),'b+:'); hold on;
% plot(x,Y(:,3),'k.-'); hold on;
% xlabel('x_k'); hold on; 
% ylabel('y_k'); hold on; 
% legend('Runge-Kutta 4ª ordem','Valores exactos',2); hold on; 
