Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- % Esercitazione 10
- % Calcolo di integrali definiti
- clc
- clear
- fprintf('\n Calcolo Integrale in [a b] (fun disponibili)');
- fprintf('\n y=sqrt(1-x.^2) [-1 1] (valore esatto pi/2) --> 1');
- fprintf('\n y=1./sqrt(x) [0 1] (valore esatto 2) --> 2');
- fprintf('\n y=2*x.^3+5*x [-10 10] (valore esatto 0) --> 3');
- fprintf('\n y=exp(-x.^2) [-10 10] --> 4');
- fprintf('\n y=1./(1+x.^2) [-5 5] --> 5');
- nf=input('\n Dai no funzione:');
- a=input('\n Dai a:');
- b=input('\n Dai b:');
- n=input('\nDai no intervalli (intero >0 pari): ');
- h=(b-a)/n;
- x=(a:h:b);
- %
- % Calcolo mediante formula dei rettangoli
- x_med(1)=(x(1)+x(2))/2;
- x_med(2:n)=(x(2:n)+x(3:n+1))/2;
- I_rett=h*sum(fun_quad(x_med,nf));
- % Calcolo mediante formula dei trapezi
- I_trap=(h/2)*(fun_quad(a,nf)+2*sum(fun_quad(x(2:n),nf))+fun_quad(b,nf));
- % Calcolo mediante formula di Simpson
- I_sim=(h/3)*(fun_quad(a,nf)+4*sum(fun_quad(x(2:2:n),nf))+...
- 2*sum(fun_quad(x(3:2:n-1),nf))+fun_quad(b,nf));
- % Calcolo mediante formula MatLab
- [I_mat, val_mat]=quad(@fun_quad,a,b,[],[],nf);
- %
- % output
- fprintf('\n Risultati finali');
- fprintf('\n Formula dei rettangoli = %e valutazioni funzione=%d', I_rett, n);
- fprintf('\n Formula dei trapezi = %e valutazioni funzione=%d', I_trap,n+1);
- fprintf('\n Formula di Simpson = %e valutazioni funzione=%d', I_sim,n+1);
- fprintf('\n Formula MatLab = %e valutazioni funzione=%d', I_mat, val_mat);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement