%
% Metodo delle secanti
%
% Cerco lo zero della funzione fun(x) a partire
% da due approssimazioni distinte dello zero x0 ed x1.
% epsi e' la tolleranza sotto la quale le iterate vengono
% interrotte.
%
% In uscita viene resttuito il vettore con tutte
% le iterate calcolate.
%
function X = secanti(fun,x0,x1,epsi)
  X  = [x0;x1] ;
  f0 = feval(fun,x0) ;
  f1 = feval(fun,x1) ;
  for i=1:100
    % formula di avanzamento
    df   = (f1-f0)/(X(end)-X(end-1)) ;
    xnew = X(end) - f1/df ;

    % aggiorna i vettori
    X  = [X ; xnew ] ;
    f0 = f1 ;
    f1 = feval(fun,xnew) ;
    
    % controlla se interrompere il ciclo
    if abs(f1) < epsi ; break ; end ;
  end
end
