
function demo_newton_for

% Oggetto.
% Demo per il metodo di Newton con ciclo for.

% default
toll=10^(-6);
nmax=1000;
esempio=1;

% esempi.
switch esempio
    case 1 % funzione piatta
        f=inline('exp(x)-2+x'); 
        f1=inline('exp(x)+1'); 
        x0=1;
        sol=0.4428544010023885;
    case 2 
        f=inline('sin(x)-x'); 
        f1=inline('cos(x)-1'); 
        x0=1;
        sol=0;
end

% newton
[xv,step,flag] = newtonfun_for(f,f1,x0,toll,nmax);

% statistiche
fprintf('\n \t soluzione : %1.15e',xv(end));
fprintf('\n \t tolleranza: %1.15e',toll);
% il numero di iterazioni e' pari alla lunghezza di 
% xv meno 1.
fprintf('\n \t numero it.: %4d',length(xv)-1);

% ---------- plot e statistiche ----------

% a) grafico step
indici=(1:length(step))';
clf; semilogy(indici,step);

% b) stampa su monitor xv
fprintf('\n \n \t Valori xv \n');
for k=1:length(xv)
    fprintf('\n \t %1.15e',xv(k));
end

fprintf('\n \n \t Valori step \n');
for k=1:length(step)
    fprintf('\n \t %1.15e',step(k));
end

fprintf('\n \n')

