f = @(x) 1./(1 + x.^2);
x = linspace(-5,5);
plot(x, y)
plot(x, f(x))
nodic = -cos(pi/9*[0:9]) * 5
p9c = polyfit(nodic, f(nodic), 9)
hold on
yp9c = polyval(p9c, x);
plot(x, yp9c, 'r')
nodic = -cos(pi/10*[0:10]) * 5;
p10c = polyfit(nodic, f(nodic), 10);
yp10c = polyval(p10c, x);
plot(x, yp10c, 'g')
errore = max(abs(f(x)-yp10c))
x=linspace(-5,5,1.e6);
yp10c = polyval(p10c, x);
errore = max(abs(f(x)-yp10c))
% Esempio di un'interpolazione instabile: 
% Quarteroni-Saleri, esempio 3.3, pag. 85
f=inline('sin(2*pi*x)')
nodi=linspace(-1,1,22);
p21=polyfit(nodi,f(nodi),21);
x=-1 : 0.01 : 1;
length(x)
% plottiamo la f (curva blu) e il polinomio interpolante (curva rossa);
% la curva rossa copre perfettamente la curva blue.
plot(x,f(x), x,polyval(p21,x),'r')
hold off
plot(x,f(x), x,polyval(p21,x),'r')
% numeri casuali normalmente distribuiti con la media 0
% e la deviazione standard 1
randn(1)
randn(1)
randn(1)
randn(1)
randn(1)
randn(1)
p21perturb = polyfit(nodi,f(nodi)+1.e-5*randn(1,22),21);
hold on
plot(x,polyval(p21perturb,x),'g')
p21perturb = polyfit(nodi,f(nodi)+1.e-4*randn(1,22),21);
plot(x,polyval(p21perturb,x),'k')
% costante di Lebesgue (stima)
2^22/(exp(1)*21*(log(21)+0.57722))
quit
# Octave 3.6.4, Wed Nov 20 17:01:49 2013 W. Europe Standard Time <unknown@achilles-TOSH>
