1> % Esempio di Carl Runge 1> f = inline('1./(1 + x.^2)') f = f(x) = 1./(1 + x.^2) 2> x = linspace(-5,5); 3> plot(x,f(x)); 4> axis equal; 5> hold on; 6> nodi = linspace(-5,5,10); 7> p9 = polyfit(nodi,f(nodi),9) p9 = Columns 1 through 5: -3.8696e-20 5.5359e-05 1.7568e-18 -2.8746e-03 -2.4400e-17 Columns 6 through 10: 4.9166e-02 1.5258e-16 -3.3044e-01 -3.7977e-16 8.6154e-01 8> 8> yp9 = polyval(p9,x); 9> plot(x,yp9,'r'); 10> nodi16 = linspace(-5,5,16); 11> p15 = polyfit(nodi16,f(nodi16),15); 12> yp15 = polyval(p15,x); 13> plot(x,yp15,'g'); 14> axis equal off; 15> hold off; 16> % nodi di Chebyshev-Gauss-Lobatto 16> nodic = -5*cos(pi/15*[0:15]); 17> p15c = polyfit(nodic,f(nodic),15); 18> yp15c = polyval(p15c,x); 19> plot(x,f(x)); 20> hold on; 21> plot(x,yp15c,'r'); 22> % retta di regressione o dei minimi quadrati 22> x = [1 2 5] x = 1 2 5 23> y = [4 1 4] y = 4 1 4 24> hold off; 25> plot(x,y, 'or'); 26> retta = polyfit(x,y,1) retta = 0.23077 2.38462 27> xx = linspace(1,5); 28> yretta = polyval(retta,xx); 29> plot(xx,yretta) 30> hold on 31> plot(x,y, 'or'); 32> plot(mean(x),mean(y),'ob'); 33> cov(x,y)/var(x) ans = 0.23077 34> % scambio di x e y NON risulta in una retta di regressione 34> % specolare rispetto alla retta di equazione y =x 34> plot(mean(y),mean(x),'og'); 35> plot(xx,xx,'k'); 36> axis equal; 37> retta2 = polyfit(y,x,1); 38> yretta2 = polyval(retta2, xx); 39> plot(xx, yretta2, 'g'); 40> quit