appunti di laboratorio di calcolo numerico con matlabluca.paulon/matlab.pdf · infine realizzare il...

70
Ing. Luca Paulon ([email protected] ) Appunti di Laboratorio di Calcolo Numerico con Matlab 1 Ing. Luca Paulon - Laboratorio di Calcolo Numerico

Upload: nguyenlien

Post on 29-May-2018

226 views

Category:

Documents


0 download

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

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

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

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

� 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

� 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

� 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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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 )