%****************************************************************
% File: FLUSSO.M
%
% Scopo: Creazione linee di campo di flusso dell' equazione
%		 y'=f(x,y)
%
% Input: ax,bx estremi intervallo x
%	 ay,by	  "       "       y
%	 nx,ny numero intervalli in x, y
%	 f     stringa contenente la funzione f(x,y).
%
% Output:
% Richiami:
% Commenti:
%
% Autori: mf
%*****************************************************************
%

hx=(bx-ax)/(nx-1);
hy=(by-ay)/(ny-1);
h=min(hx,hy);	    % lunghezza frecce
xx=[ax:hx:bx];
yy=[ay:hy:by];
axis([ax bx ay by])
plot(ax,bx,'x',bx,by,'x')
hold on
for i=1:nx
  x=xx(i);
  xp(1)=x;
  for j=1:ny
    y=yy(j);
    ff=eval(f);
    t=atan(ff);
    yp(1)=y;
    xp(2)=x+h*cos(t);
    yp(2)=y+h*sin(t);
    plot(xp,yp,xp(2),yp(2),'+')
  end
end
title(' Campo di flusso')
xlabel(['f(x,y) = ' f])
hold off