Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- % Eserc 9 sulla migliore approssimazione
- % nel senso dei minimi quadrati
- % utilizzando la funzione MatLab polyfit
- % xi,yi i=1:m nodi di interpolazione
- % la tabulazione è generata da funzioni test
- % n=nodi ns=numero di punti per il grafico
- % genera il grafico sia dei nodi, sia della spline
- % sia della funzione che ha generato i nodi,
- clc
- clear
- fprintf('\n Esercitazione sulla migliore approssimazione \n\n');
- fprintf('\n Funzioni disponibili: ');
- fprintf('\n 2*sin(x)+2, [-10 10] -->1');
- fprintf('\n exp(-x)*sin(2*pi*x), [0 4] -->2');
- fprintf('\n (-3*x+1.4)*sin(18*x), [0.9 1.4] -->3');
- fprintf('\n 1/(1+x^2), [-6,6] -->4');
- nf=input('\nDai il no della funzione da approssimare');
- m=input('\n Dai no. nodi:');
- n=input('\n Dai n=grado del polinomio di migliore approx(n<m):');
- ns=input('\n Dai il no. punti per il grafico:');
- a=input('\n Dai il primo estremo di [a b]:');
- b=input('\n Dai il secondo estremo di [a b]:');
- % x=[a:(b-a)/(m-1):b];
- x=linspace(a,b,m);
- y=fun8(x,nf);
- x=linspace(a,b,ns);
- % calcolo dei coefficienti del polinomio di migliore approssimazione
- % mediante MatLab
- a=polyfit(x,y,n);
- fys=polyval(a,xs);
- ys=fun8(xs,nf);
- plot(x,y,'ro',xs,ys,'k',xs,fys,'g');
- legend('nodi','funzione da approssimare','polinomio m.a.');
- title(' Esercitazione n.9', 'FontSize', 14);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement