appunti di laboratorio di calcolo numerico con matlabluca.paulon/matlab.pdf · infine realizzare il...
TRANSCRIPT
![Page 1: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/1.jpg)
Ing. Luca Paulon ([email protected] )
Appunti di Laboratorio di Calcolo Numerico
con Matlab
Ing. Luca Paulon ([email protected] )
1 Ing. Luca Paulon - Laboratorio di Calcolo Numerico
![Page 2: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/2.jpg)
RiferimentiRiferimentiRiferimentiRiferimenti
� [1] Matlab help
� [2] MathWork web site
� [3] “Manualetto di Matlab”,
� [4] Calcolo Scientifico (Quarteroni, 4a edizione, Springer)
[5] http://www.dmmm.uniroma1.it/~paulon/matlab.pdf
Ing. Luca Paulon - Laboratorio di Calcolo Numerico2
� [5] http://www.dmmm.uniroma1.it/~paulon/matlab.pdf
� [6] http://www.dmmm.uniroma1.it/~paulon/matlab.zip
� [7] http://www.dmmm.uniroma1.it/~paulon/esercizi.pdf
� [8] Esercizi di Calcolo Numerico (Gori, Lo Cascio, Pitolli) –Edizioni Kappa
![Page 3: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/3.jpg)
SommarioSommarioSommarioSommario� Day1Introduzione a Matlab: riferimenti; ambiente di sviluppo (IDE) di script. Tipi di variabili. Variabili predefinite. Variabili complesse.
Esempi.
� Day2Operatori puntuali e funzioni vettoriali. Istruzione linspace. Realizzazione di una function.
Ing. Luca Paulon - Laboratorio di Calcolo Numerico3
una function.Esempi.
� Day3Realizzazione di una function. Output su schermo (disp). Istruzioni condizionali (if-else-end). Operatori relazionali e operatori logici. Cicli enumerativi (do-end). Ciclo while.
Esempi.
![Page 4: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/4.jpg)
� Day4Matrici
� Day5Sistemi Lineari, metodi iterativi di Jacobi e Gauss-Seidel
� Day6
Ing. Luca Paulon - Laboratorio di Calcolo Numerico4
� Day6Compito in classe
� Day7Correzione compiti e illustrazione di alcune domande di esame.
![Page 5: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/5.jpg)
� Day8Applicazioni Matlab: demo e toolbox.
� Day9Integrazione numerica (approssimazione di integrali)
Ing. Luca Paulon - Laboratorio di Calcolo Numerico5
� Day10Differenziazione numerica (approssimazione di derivate)
� Day11Correzione compiti e illustrazione di alcune domande di esame.
![Page 6: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/6.jpg)
� Appendice 0
Concetti fondamentali di Calcolo Numerico
� Appendice 1
Esempio di applicazione in matlab
Ing. Luca Paulon - Laboratorio di Calcolo Numerico6
� Appendice 2
Gpu Computing
![Page 7: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/7.jpg)
Day1: IDE di Day1: IDE di Day1: IDE di Day1: IDE di MatlabMatlabMatlabMatlab
Ing. Luca Paulon - Laboratorio di Calcolo Numerico7
![Page 8: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/8.jpg)
Day1: IDE Day1: IDE Day1: IDE Day1: IDE ���� WorkspaceWorkspaceWorkspaceWorkspace
Ing. Luca Paulon - Laboratorio di Calcolo Numerico8
![Page 9: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/9.jpg)
Day1: Variables Types
Ing. Luca Paulon - Laboratorio di Calcolo Numerico9
![Page 10: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/10.jpg)
Day1: variabili predefinite
Ing. Luca Paulon - Laboratorio di Calcolo Numerico10
![Page 11: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/11.jpg)
Day1: variabili complesse
Esempio
Ing. Luca Paulon - Laboratorio di Calcolo Numerico11
![Page 12: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/12.jpg)
Day2-Day3: figure con grafici di funzioni
N=50;x=linspace(0,1,N);
func1=randn(N,1);func2=randn(N,1);
subplot(2,1,1);title('funzione1');Xlabel('Tempo');
Ing. Luca Paulon - Laboratorio di Calcolo Numerico12
Xlabel('Tempo');Ylabel('Ampiezza ');plot(x, func1);
subplot(2,1,2);title('funzione2');Xlabel('Tempo');Ylabel('Ampiezza ');plot(x, func2);
![Page 13: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/13.jpg)
Day2 - Day3
Ing. Luca Paulon - Laboratorio di Calcolo Numerico13
![Page 14: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/14.jpg)
Day2 - Day3
Ing. Luca Paulon - Laboratorio di Calcolo Numerico14
![Page 15: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/15.jpg)
Day2 - Day3 (versione di matlab 2008 o superiore)
ESECUZIONE DELLO SCRIPT –OPZIONE2 (dall’editor di matlab)
1: richiamare il seguente menu a discesa dalla toolbar dell’editor di matlab
2: clicca su ‘Edit Run config….’
Ing. Luca Paulon - Laboratorio di Calcolo Numerico15
0 100 200 300 400 500 600 700 800 900 1000-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
3: inserisci il codice per il test dello script
4: esegui lo script
![Page 16: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/16.jpg)
Day2-Day3
Dalla CommandWindow…
ESECUZIONE DELLO SCRIPT – OPZIONE1(dalla command window di matlab)
Ing. Luca Paulon - Laboratorio di Calcolo Numerico16
![Page 17: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/17.jpg)
Day3
Esempio. Il metodo di bisezione [4]
Algoritmo
Ripeti il seguente ragionamento fino a che le condizioni di arresto non sono
soddisfatte:
Ing. Luca Paulon - Laboratorio di Calcolo Numerico17
![Page 18: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/18.jpg)
Day3
Esempio. Il metodo di bisezione [4]. L’errore (di troncamento)
Ing. Luca Paulon - Laboratorio di Calcolo Numerico18
![Page 19: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/19.jpg)
Day3
del metodo di bisezione [4]
Ing. Luca Paulon - Laboratorio di Calcolo Numerico19
Implementazionedel metodo di bisezione [4]
![Page 20: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/20.jpg)
Day3
del metodo di bisezione [4]
Ing. Luca Paulon - Laboratorio di Calcolo Numerico20
Implementazionedel metodo di bisezione [4]
![Page 21: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/21.jpg)
Day3
Implementazione del metodo di bisezione [4]
Ing. Luca Paulon - Laboratorio di Calcolo Numerico21
![Page 22: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/22.jpg)
Day3 Esempio. Il metodo di bisezione [4]. Applicazione ad un caso specifico
Ing. Luca Paulon - Laboratorio di Calcolo Numerico22
![Page 23: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/23.jpg)
Day3 Esempio. Il metodo di bisezione [4]. Applicazione ad un caso specifico
Ing. Luca Paulon - Laboratorio di Calcolo Numerico23
![Page 24: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/24.jpg)
Day3 Esercizio per casa. Eseguire il debug dell’implementazione del metodo di bisezione per correggere errori o apportare modifiche. Infine realizzare il profiling temporale del metodo di bisezione usando i comandi tic e toc.
Esempio di uso di tic e toc
Ing. Luca Paulon - Laboratorio di Calcolo Numerico24
Esempio di uso di tic e toc
Dal prompt dei comandi:
>> tic; surf(peaks(40)); toc
![Page 25: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/25.jpg)
Day4
Verifica dell’ ‘Esercizio per casa’ relativo all’implementazione del metodo di bisezione.
Esercizio: scrivere uno script per il test della funzione bisection per il caso specifico f(x) in figura 2.2 tale da graficare in uscita gli andamenti
Ing. Luca Paulon - Laboratorio di Calcolo Numerico25
caso specifico f(x) in figura 2.2 tale da graficare in uscita gli andamenti dell’ errore relativo e assoluto per tolleranze diverse.
![Page 26: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/26.jpg)
Day4 - Matrici
Definizione di matrici1. ‘manuale’2. attraverso i comandi zeros, ones, diag
Salvataggio/caricamento matrice di dati
Ing. Luca Paulon - Laboratorio di Calcolo Numerico26
Definizione di matrici in singola precisione
![Page 27: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/27.jpg)
Day4
% Esempio:
clear;n=10;B = 2*diag(ones(1,n));
Ing. Luca Paulon - Laboratorio di Calcolo Numerico27
B = 2*diag(ones(1,n));C =diag(ones(1,n-1),1);D = diag(ones(1,n-1),-1);
A = B – C – D
![Page 28: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/28.jpg)
Day4
% Calcolo del determinante
det (A)
% Calcolo della norma 1, 2, infinito
Ing. Luca Paulon - Laboratorio di Calcolo Numerico28
nrm1 = norm (A,1)nrm2 = norm (A,2)nrmInf = norm (A,inf)
![Page 29: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/29.jpg)
Day4 % Calcolo dei numeri di condizionamento 1,2, infinito
C1 = cond (A,1)C2 = cond (A,2)Cinf = cond (A,inf)
Ing. Luca Paulon - Laboratorio di Calcolo Numerico29
% Calcolo degli autovalori e degli autovettori
[ V, W ] = eig(A);
% Calcolo del raggio spettrale
rho = max (abs(W))
![Page 30: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/30.jpg)
Day4 % Calcolo del terzo autovalore e del corrispondente autovettore
lambda3 = W(3,3)v3 = V(:,3)
% Verifica che la matrice degli autovettori diagonalizza A
Ing. Luca Paulon - Laboratorio di Calcolo Numerico30
% Verifica che la matrice degli autovettori diagonalizza A
Vinv = inv(V);e = W–Vinv *A*VnormErr = norm ( e, 2)
% Verifica che la matrice degli autovettori diagonalizza A
ordineErr = normErr / eps
![Page 31: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/31.jpg)
Day5 – Sistemi Lineari
Il metodo di Jacobi (vedi script jacobi.m)
Esercizio: test del metodo di jacobi (vedi jacobi_test.m)
Ing. Luca Paulon - Laboratorio di Calcolo Numerico31
Esercizio: realizzare un test più articolato
![Page 32: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/32.jpg)
Day5 – Sistemi Lineari
il metodo di Gauss-Seidel (vedi script gaussseidel.m)
Esercizio: realizzare un test semplice del metodo di Gauss Seidel
Ing. Luca Paulon - Laboratorio di Calcolo Numerico32
Esercizio: confrontare i due metodi
![Page 33: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/33.jpg)
Day6 – Compito in classe sui sistemi lineari
Tradurre in linguaggio matlab le soluzioni degli esercizi 2.20 e 2.30 riportate nel file “esercizi.pdf ”. Scrivere ogni soluzione in script diversi.
NB: la teoria è fondamentale … , ad esempio sapere per i metodi iterativi di Jacobi e Gauss-Seidel:
Ing. Luca Paulon - Laboratorio di Calcolo Numerico33
![Page 34: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/34.jpg)
Day 7 – Correzione compiti e
illustrazione delle domande di esame
� http://www.dmmm.uniroma1.it/~paulon/matlabesame.pdf
Ing. Luca Paulon - Laboratorio di Calcolo Numerico34
![Page 35: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/35.jpg)
GUI = Graphics UserInterface
Day8 – Applicazioni Matlab
SCRIPT
CommandWindow
35
SCRIPT
Dettaglio per una applicazione Matlab
Modello a “strati” (layers) di un sistema composto da utente, hardware e software
![Page 36: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/36.jpg)
Day8 – Applicazioni Matlab - DemoEsempio: Discrete Time Fourier transform. Nella command window digitare sigdemo1
36
![Page 37: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/37.jpg)
Day8 – Applicazioni Matlab - DemoEsempio: Discrete Time Fourier transform.
37
![Page 38: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/38.jpg)
Day8 – Applicazioni Matlab - Toolbox
Esempio: Signal Processing (SP) Toolbox. Digitare SPtool nella command line
38
MainWindow (finestra principale) della GUI del toolbox SPtool
![Page 39: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/39.jpg)
Day8 – Applicazioni Matlab - ToolboxEsempio di elaborazione di un segnale con il toolbox SPTool
INPUTELABORAZIONE (FILTRAGGIO) OUTPUT
39
Filtro “passa basso”
![Page 40: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/40.jpg)
Day8 - Applicazioni Matlab - ToolboxEsempio2: il toolbox symbolic
Ing. Luca Paulon - Laboratorio di Calcolo Numerico40
Polinomio di Taylor
![Page 41: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/41.jpg)
Day 9 – Integrazione numerica
Ing. Luca Paulon - Laboratorio di Calcolo Numerico41
![Page 42: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/42.jpg)
Day 9 – Integrazione numericaEsempio 1: distribuzione di probabilità normale (o gaussiana)
Ing. Luca Paulon - Laboratorio di Calcolo Numerico42
L’area rappresenta la probabilità che il numero S (per esempio si pensi ad S come l’altezza in metri di una persona) sia compreso nell’intervallo [1.8, 1.9].
Problema: calcolare la suddetta probabilità (risolvendo numericamente l’integrale definito)
![Page 43: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/43.jpg)
Day 9 – Integrazione numerica Il metodo dei trapezi Il metodo dei trapezi Il metodo dei trapezi Il metodo dei trapezi (semplice e composito)
cioè
Ing. Luca Paulon - Laboratorio di Calcolo Numerico43
![Page 44: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/44.jpg)
Day 9 – Integrazione numerica Il metodo dei trapezi Il metodo dei trapezi Il metodo dei trapezi Il metodo dei trapezi (semplice e composito)
Implementazione in matlab (vedi [4]) del metodo dei trapezi
Ing. Luca Paulon - Laboratorio di Calcolo Numerico44
![Page 45: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/45.jpg)
Day 9 – Integrazione numerica Il metodo del punto medio o rettangoli Il metodo del punto medio o rettangoli Il metodo del punto medio o rettangoli Il metodo del punto medio o rettangoli (semplice e composito)
cioè
Ing. Luca Paulon - Laboratorio di Calcolo Numerico45
![Page 46: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/46.jpg)
Day 9 – Integrazione numerica
Implementazione in matlab (vedi [4]) del metodo composito del punto medio (rettangoli)
Ing. Luca Paulon - Laboratorio di Calcolo Numerico46
![Page 47: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/47.jpg)
Day 9 – Integrazione numerica Il metodo diIl metodo diIl metodo diIl metodo di Simpson Simpson Simpson Simpson (semplice e composito)
Ing. Luca Paulon - Laboratorio di Calcolo Numerico47
![Page 48: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/48.jpg)
Day 9 – Integrazione numerica
Implementazione in matlab del metodo di Simpson ( vedi [4] )
Ing. Luca Paulon - Laboratorio di Calcolo Numerico48
![Page 49: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/49.jpg)
Day 9 – Integrazione numerica
Ing. Luca Paulon - Laboratorio di Calcolo Numerico49
![Page 50: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/50.jpg)
Day 10 – Differenziazione numerica(approssimazione delle derivate)
Ing. Luca Paulon - Laboratorio di Calcolo Numerico50
In generale, e quindi anche nel caso della differenziazione numerica, ci possono essere diversi metodi che si possono usare per i calcoli, ciascuno con le proprie ipotesi di applicabilità e i propri vantaggi e svantaggi, che occorre conoscere bene. Sperimentalmente (cioè attraverso le implementazioni, per esempio in matlab) si procede, fissata una applicazione da sviluppare, nel confronto di essi considerando tempi di esecuzione, errore di approssimazione, etc. Infine si decide il migliore, se ne esiste uno, da utilizzare.
![Page 51: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/51.jpg)
Day 10 – Differenziazione numerica(approssimazione delle derivate)
Esempio 1
Ing. Luca Paulon - Laboratorio di Calcolo Numerico51
![Page 52: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/52.jpg)
Day 10 – Differenziazione numericaIl metodo della differenza finita in avanti.Il metodo della differenza finita in avanti.Il metodo della differenza finita in avanti.Il metodo della differenza finita in avanti.
Ing. Luca Paulon - Laboratorio di Calcolo Numerico52
Implementazione in matlab (realizzare uno script per esercizio)
…
![Page 53: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/53.jpg)
Day 10 – Differenziazione numericaIl metodo della differenza finita all’indietro.Il metodo della differenza finita all’indietro.Il metodo della differenza finita all’indietro.Il metodo della differenza finita all’indietro.
Ing. Luca Paulon - Laboratorio di Calcolo Numerico53
Implementazione in matlab (realizzare uno script per esercizio)
…
![Page 54: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/54.jpg)
Day 10 – Differenziazione numericaIl metodo della differenza finita Il metodo della differenza finita Il metodo della differenza finita Il metodo della differenza finita intermedia.intermedia.intermedia.intermedia.
Ing. Luca Paulon - Laboratorio di Calcolo Numerico54
Implementazione in matlab (realizzare uno script per esercizio)
…
![Page 55: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/55.jpg)
Day 10 – Differenziazione numerica(approssimazione delle derivate)
Esempio 2
Ing. Luca Paulon - Laboratorio di Calcolo Numerico55
![Page 56: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/56.jpg)
Day 10 – Differenziazione numerica(approssimazione delle derivate)
Svolgimento
Ing. Luca Paulon - Laboratorio di Calcolo Numerico56
(usare gli script realizzati)
![Page 57: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/57.jpg)
Day 11 – Correzione compiti e
illustrazione delle domande di esame
� http://www.dmmm.uniroma1.it/~paulon/matlabesame.pdf
Ing. Luca Paulon - Laboratorio di Calcolo Numerico57
![Page 58: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/58.jpg)
Appendice 0 [vedi 4]
Ing. Luca Paulon - Laboratorio di Calcolo Numerico58
![Page 59: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/59.jpg)
Appendice 0 [vedi 4]
Ing. Luca Paulon - Laboratorio di Calcolo Numerico59
![Page 60: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/60.jpg)
Appendice 0 [vedi 4]
Ing. Luca Paulon - Laboratorio di Calcolo Numerico60
![Page 61: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/61.jpg)
Appendice 0
Ing. Luca Paulon - Laboratorio di Calcolo Numerico61
![Page 62: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/62.jpg)
Appendice 0
Ing. Luca Paulon - Laboratorio di Calcolo Numerico62
![Page 63: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/63.jpg)
Appendice 0
Ing. Luca Paulon - Laboratorio di Calcolo Numerico63
![Page 64: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/64.jpg)
Appendice 0
Ing. Luca Paulon - Laboratorio di Calcolo Numerico64
![Page 65: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/65.jpg)
Appendice 0
Ing. Luca Paulon - Laboratorio di Calcolo Numerico65
![Page 66: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/66.jpg)
Appendice 0
Ing. Luca Paulon - Laboratorio di Calcolo Numerico66
![Page 67: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/67.jpg)
Appendice 1: un semplice esperimento con Matlab
spike1
Realizzazione di uno script per la simulazione di una tensione sinusoidale disturbata dalla presenza di due o più “spike”
spike2
5
10
15
Matlab
Ing. Luca Paulon - Laboratorio di Calcolo Numerico67
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1-15
-10
-5
0
![Page 68: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/68.jpg)
Appendice 2: GPU computing
Ing. Luca Paulon - Laboratorio di Calcolo Numerico68
![Page 69: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/69.jpg)
Appendice 3
Ing. Luca Paulon - Laboratorio di Calcolo Numerico69
![Page 70: Appunti di Laboratorio di Calcolo Numerico con Matlabluca.paulon/matlab.pdf · Infine realizzare il profilingtemporale del metodo di bisezione usando i comandi tic e toc. Esempio](https://reader030.vdocuments.site/reader030/viewer/2022020114/5b0d7a6a7f8b9a8b038dc636/html5/thumbnails/70.jpg)
Ringraziamenti
% Il dipartimento Me.Mo.Mat. , il Laboratorio di Informatica ed in particolare la Prof.ssa F. Pitolli
% Tutti gli studenti del corso ( per la pazienza e la dedizione dimostrate durante le lezioni in laboratorio )
Ing. Luca Paulon - Laboratorio di Calcolo Numerico70
durante le lezioni in laboratorio )