function atrator(to,T,xo,N)

% atrator(to,T,xo,h)
% Traca o atrator de Lorenz, baseado no metodo de Euler modificado
%
% Sugestao de uso:
% atrator(0,30,[1;1;1],2000)

close all
  
t = linspace(to,T,N+1); % particao do intervalo [to,T] com N intervalos
h = (T-to)/N;
m = length(xo);          % dimensao do vetor xo (e x)
x = zeros(m,N+1);        % formata vetor x que armazena a solucao x(t)
x(:,1) = xo;             % condicao inicial
clf()
hold on;
for n = 1:N
  F1 = h*fv(t(n),x(:,n));
  F2 = h*fv(t(n) + h/2 , x(:,n) + F1/2 );
  x(:,n+1) = x(:,n) + F2;
  plot3(x(1,n:n+1),x(2,n:n+1),x(3,n:n+1))
  axis([-30,30,-30,30,0,50]);
  view(60,30)
  if(mod(n,100)==0)
    drawnow;
  end
end 

hold off
