% Se uso Octave % #! ese01 -qf % % INIZIO DEL PROGRAMMA % % tutte le variabili eventualmente presenti in memoria % sono messe a disposizione con le istruzioni clear e close % clear all close all % % Esercitazione n. 1 % % Se uso Octave % printf('Hello, this is the beginning ! \n'); % % Se uso MatLab % display('Hello, this is the beginning !'); % % Definisco l'intervallo di integrazione % dt = 0.2; % Intervallo di definizione della funzione (definita in modalità discreta) t = 0:dt:8; % % Definizione della funzione da integrare a = - t .^3 + 10 * t.^2 - 20 * t ; % % Definzione della velocità % ipotizzo v = 0 per t = 0 % v = - (1/4) * t.^4 + (10/3)*t.^3 - 10*t.^2; % % Definizione dello spazio percorso % s = - (1/20)* t.^5 + (5/6)*t.^4 - (10/3)*t.^3; % % funzione costante nulla % zero = s * 0; % figure(1) plot(t,a,'-b','LineWidth',1); ylabel(' Spazi = verde, Velocità = rosso, Accelerazione = blu'); xlabel(' Valori del tempo in s '); title([' Metodo analitico (posso scrivere anche lettere greche \mu ) ']); set(1,'Color','w'); hold on plot(t,v,'-r','LineWidth',1); hold on plot(t,s,'-g','LineWidth',1); hold on plot(t,zero,'-.k','LineWidth',1); hold off % % % FORMULA DI BEZOUT % % Calcolo delle velocità % inizializzazione % vB = zero; termine = length(zero)-1; for j = 1:1:termine vB(j+1) = vB(j) + dt * ( (a(j+1) + a(j))/2 ); end; % % % FORMULA DI CAVALIERI SIMPSON % % inizializzazione % vCS = zero; vCS(2) = v(2); for j = 1:2:termine vCS(j+2) = vCS(j) + dt * ( a(j) + 4 * a(j+1) + a(j+2) ) / 3 ; end; for j = 2:2:(termine-1) vCS(j+2) = vCS(j) + dt * ( a(j) + 4 * a(j+1) + a(j+2) ) / 3 ; end % figure(2) plot(t,v,'-b','LineWidth',1); ylabel(' Velocità Analitica = blu, Bezout = rosso , Cavalieri Simpson = verde'); xlabel(' Valori del tempo in s '); title([' Metodo Bezout e Cavalieri Simpson (posso scrivere anche apici B_3 ) ']); set(2,'Color','w'); hold on plot(t,vB,'-.r','LineWidth',1); hold on plot(t,vCS,'-.g','LineWidth',1); hold on plot(t,zero,'-.k','LineWidth',1); hold off % % Errori sulla velocità % erroriB = vB - v; erroriCS = vCS - v; figure(3) ylabel(' Errori Bezout = rosso , Errori Cavalieri Simpson = verde'); xlabel(' Valori del tempo in s '); title([' Errori Bezout e Cavalieri Simpson (dt = ',num2str(dt), ') ']); set(3,'Color','w'); hold on plot(t,erroriB,'-.r','LineWidth',1); hold on plot(t,erroriCS,'-.g','LineWidth',1); hold off % Calcolo degli spazi con Bezout e Cavalieri Simpson % % .... Ora tocca a me ! ............ % % % Se uso Matlab % display(' I have done ! ') % display(' Good bye class ! ') % Se uso Octave % printf('I have done! \n'); % printf('Good bye class ! \n');