Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente...
-
Upload
basilio-man -
Category
Documents
-
view
215 -
download
0
Transcript of Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente...
![Page 1: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/1.jpg)
Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e
dell'Ambiente2010-2011
![Page 2: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/2.jpg)
Teoria
1° lezione (3h): • Nozioni basilari sul linguaggio di programmazione MATLAB• Operazioni su vettori e matrici • M-files e m-functions• Funzioni principali di matematica e statistica
2° lezione (3h): • Operatori relazionali• Operatori logici • Iteratori • Polinomi • Interpolazione• Gestione dei files
3° lezione (3h): • Elementi di grafica
4° lezione (3h): • despiking • trend
5° lezione (3h): • Analisi serie temporali
Corso IFTS 2010-2011 Ilaria Pietroni 2
Esercitazioni
1° esercitazione (1h): • Nozioni base
2° esercitazione (1h): • Iteratori e operatori logici
3° esercitazione (1h):
• Gestione file• Interpolazione
4° esercitazione (2h):
• Plot 5° esercitazione (1h):
• despiking
6° esercitazione (3h): • Tesina finale
![Page 3: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/3.jpg)
Corso IFTS 2010-2011 3Ilaria Pietroni
Nozioni basilari su MATLAB
Operazioni su vettori e matrici
M-files e m-functions
Funzioni principali di Matematica e Statistica
![Page 4: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/4.jpg)
MATLAB è un programma ad alte prestazioni per il calcolo tecnico e scientifico, ed e' anche un linguaggio basato su espressioni che rende molto facile la programmazione.
È usato nella ricerca scientifica e nella risoluzione di problemi di ingegneria effettua tutte le operazioni in doppia precisione.
E' un programma incredibilmente duttile, facile da apprendere, facile da usare, velocissimo nei calcoli, opera con le più perfezionate librerie esistenti, include inoltre la visualizzazione fornendo figure a colori e ogni tipo di grafici bi e tridimensionali.
Corso IFTS 2010-2011 4Ilaria Pietroni
Generalità su MATLAB
![Page 5: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/5.jpg)
Corso IFTS 2010-2011 Ilaria Pietroni 5
MATLAB è un sistema software interattivo per
CalcoloSviluppo di algoritmiVisualizzazione e graficaAnalisi ed elaborazione di datiSimulazione e modellazioneProgrammazione in un proprio
linguaggio
![Page 6: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/6.jpg)
Corso IFTS 2010-2011 Ilaria Pietroni 6
![Page 7: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/7.jpg)
Development Environment
Il desktop di Matlab include la Command Window (finestra dove, al prompt di Matlab, si possono digitare direttamente i comandi); un’altra finestra col “diario” dei comandi dati in precedenza( Command History); un elenco dei componenti installati; browsers per accedere all’help, ecc..
Oltre a lavorare da linea comandi, l’utente può accedere a vari strumenti specialistici che si presentano come Grafical User Interfaces (GUIs)
Corso IFTS 2010-2011 Ilaria Pietroni 7
![Page 8: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/8.jpg)
Corso IFTS 2010-2011 Ilaria Pietroni 8
Barra dei menu e current directory
Current directory
![Page 9: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/9.jpg)
Corso IFTS 2010-2011 Ilaria Pietroni 9
L’ambiente di lavoro MatLab fornisce un set di strumenti che consentono di usare files e functions di Matlab. Tramite tali strumenti si manipolano, nel cosiddetto worksapce di MatLab (che ospita l’insieme delle variabili definite in un dato istante di una sessione di lavoro), le variabili stesse; si importano ed esportano dati nel e dal workspace, ecc..
![Page 10: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/10.jpg)
Corso IFTS 2010-2011 Ilaria Pietroni 10
Editor
![Page 11: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/11.jpg)
Corso IFTS 2010-2011 Ilaria Pietroni 11
Command History
![Page 12: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/12.jpg)
Corso IFTS 2010-2011 Ilaria Pietroni 12
Command window
Command window
![Page 13: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/13.jpg)
Corso IFTS 2010-2011 Ilaria Pietroni 13
Uno strumento comodo e veloce per imparare ad utilizzare le funzioni e le routine di MATLAB è l'help in linea esso è suddiviso in diverse parti: Uso del comando con
eventuali opzioni. Cenni alla
implementazione del comando (molto utile per essere sicuri che una data funzione con un nome a noi familiare svolga il compito da noi richiesto).
Eventuale esempio di utilizzo.
Funzioni correlate.
![Page 14: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/14.jpg)
Corso IFTS 2010-2011 Ilaria Pietroni 14
![Page 15: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/15.jpg)
Corso IFTS 2010-2011 15Ilaria Pietroni
Nozioni basilari su MATLAB
M-files e m-functions
Funzioni principali di matematica e Statistica
Operazioni su vettori e matrici
![Page 16: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/16.jpg)
MatLab sta per “MATrix LABoratory” ed in esso tutte le variabili sono matrici
L’elemento di base è una matrice che non richiede dimensionamento.
Corso IFTS 2010-2011 Ilaria Pietroni 16
![Page 17: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/17.jpg)
Matrice: è uno schieramento rettangolare di oggetti
Le righe orizzontali di una matrice sono chiamate righe, mentre quelle verticali sono le colonne.In generale, una matrice è una matrice con m righe e n colonne, dove m e n sono interi positivi fissati. L’elemento posizionato alla riga i-esima e alla colonna j-esima si indica con: aij oppure con a(i,j).
I vettori possono essere considerati matrici molto semplici, aventi una sola riga o una sola colonna , si parla anche di matrice riga e matrice colonna.
Una matrice in cui m=n si dice quadrata.
Gli elementi a(i,i) costituiscono la diagonale principale della matrice.
Corso IFTS 2010-2011 17Ilaria Pietroni
![Page 18: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/18.jpg)
La somma di due matrici A e B con m righe ed n colonne è la matrice (A + B) definita nel modo seguente:
(A + B)i,j: = Ai,j + Bi,j
Prodotto: La moltiplicazione per uno scalare è un'operazione che, data una matrice A ed un numero c (detto scalare), costruisce una nuova matrice, il cui elemento è ottenuto moltiplicando l'elemento corrispondente di A per c:
(cA)i,j: = cAi,j
La moltiplicazione tra due matrici A e B è un'operazione più complicata delle precedenti. A differenza della somma, non è definita moltiplicando semplicemente gli elementi aventi lo stesso posto. La definizione di moltiplicazione che segue è motivata dal fatto che una matrice modellizza una applicazione lineare, e in questo modo il prodotto di matrici corrisponde alla composizione di applicazioni lineari.La moltiplicazione è definita soltanto se le matrici A e B sono t.c. il numero p di colonne di A coincide con il numero p di righe di B. Il risultato è una matrice C di tipo:
Ci,j = Ai,1 B1,j + Ai,2 B2,j + … Ai,n Bn,j Il prodotto è chiamato prodotto riga per colonna.
Corso IFTS 2010-2011 18Ilaria Pietroni
![Page 19: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/19.jpg)
Corso IFTS 2010-2011 Ilaria Pietroni 19
Il determinante di una matrice è una funzione che associa ad ogni matrice quadrata uno scalare utile per sintetizzare alcune proprietà algebriche della matrice.
La matrice trasposta è una matrice in cui le righe e le colonne della matrice originale sono invertite:
(AT)i,j = Aj,i
La matrice inversa di una matrice quadrata A è la matrice A-1 tale che
A A-1=I
Con I= matrice identità.
![Page 20: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/20.jpg)
Corso IFTS 2010-2011 21Ilaria Pietroni
Variabili numeriche MATLAB si basa sulle matrici ed ogni variabile che utilizza è considerata come matrice
Ad es.
c=2;
È una matrice ad una riga ed una colonna
Per questo nel seguito parleremo essenzialmente di matrici.
![Page 21: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/21.jpg)
I nomi delle variabili possono essere lunghi fino ad un massimo di 19 caratteri alfanumerici, con il primo obbligatoriamente alfabetico.
Corso IFTS 2010-2011 22Ilaria Pietroni
Prova_mat:a=[1 2 3] matrice ad 1 riga e 3 colonne
b=[1;2;3] matrice ad 3 righe e 1 colonna
d=[1,2;3,4;nan,0]
a(2)=8 cambio valore all'elemento di posto 2 di a
b(5)=4 estende la matrice b
c=[]; matrice vuota
![Page 22: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/22.jpg)
Corso IFTS 2010-2011 23Ilaria Pietroni
d(1,:)=[] elimina la prima riga
d([1,2],:)=d([2,1],:) cambia la 1 e 2 riga di d.
n=length(d); massima dimensione di d
d(:,1)=d(n:-1:1,1) inverte gli elementi della prima colonna di d
size(a)Numero di righe e colonne di a
a=a'trasposta di a
size(a)
![Page 23: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/23.jpg)
Corso IFTS 2010-2011 24Ilaria Pietroni
e=[1 2 3 ... 4 5 6] continua alla riga successiva
g=1:10
f=[b;4]Concatenazione verticale
e(end)
E=[2 3]
e
D=d(:); rende la matrice un vettore colonna aggiungendo ogni colonna sotto la precedente
A=a(:); rende il vettore un vettore colonna
Attenzione: i nomi delle variabili sono case sensitive: si distingue cioè tra lettere maiuscole e minuscole!!!
![Page 24: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/24.jpg)
Corso IFTS 2010-2011 25Ilaria Pietroni
Concatenazione:Tra matrici:
A=[3,5,16];B=[9 7 22];
Orizzontale: O=[A, B];O_2=[A B];
>> 3 5 16 9 7 22
Verticale:V=[A;B];
>>3 5 16 9 7 22
A e B devono avere lo stesso numero di righe
A e B devono avere lo stesso numero di colonne
![Page 25: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/25.jpg)
% - denota un commento
. - punto dei decimali operazioni elemento per elemento nelle strutture per separare i campi
, - separa gli indici di matrice e gli argomenti di una funzione, ma anche diversi comandi
; - all’interno di [ ] separa diverse righe; separa i comandi evitando la stampa del risultato
: - crea vettori, iterazioni
[ ] - sono usate per fare vettori e matrici; la virgola e lo spazio separano elementi della stessa riga, il punto e virgola separa le diverse righe.
Corso IFTS 2010-2011 26Ilaria Pietroni
( ) - usate per determinare la precedenza in un’operazione aritmetica includere l’argomento di una funzione determinare l’elemento/i di una matrice o vettore
‘ - utilizzato per fare la trasposta di una matrice per scrivere stringhe
... continua alla riga successiva
Sommario simboli:
![Page 26: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/26.jpg)
Corso IFTS 2010-2011 27Ilaria Pietroni
Sommario indicizzazione:
![Page 27: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/27.jpg)
Corso IFTS 2010-2011 28Ilaria Pietroni
Prova_string:
a=['2','d';'w','e']
w=str2num('2')
w+3
a+2
b=[1 2; 8,9];
num2str(b)
Il testo in MATLAB è sempre inserito tra apici.
![Page 28: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/28.jpg)
Corso IFTS 2010-2011 29Ilaria Pietroni
Per visualizzare stringhe o messaggi si usa la funzione disp.
Es.: disp('Premere un tasto');
Concatenazione:S=[‘s1’,’s2’,’s3’];D=[‘d1’,’d2’,’d3’];
OrizzontaleO=[S D]O2=[S,D]O3=strcat(S,D)
VerticaleV=[S; D]V2=strvcat(S,D)
Devono avere lo stesso numero di colonne cioè di caratteri
Devono avere lo stesso numero di righe cioè di caratteri
![Page 29: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/29.jpg)
Corso IFTS 2010-2011 30Ilaria Pietroni
Prova_strut:
a=[1 2 3; 4 5 6; 7 8 9];
b.i(1).j(2).dat=a(:,1);
Una struttura è una matrice I cui elementi sono accessibili attraverso campi testuali;Ogni camp opuò essere di diverso tipo e di dimensioni diverse.
![Page 30: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/30.jpg)
Corso IFTS 2010-2011 31Ilaria Pietroni
Operazioni aritmetiche:
![Page 31: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/31.jpg)
Corso IFTS 2010-2011 32Ilaria Pietroni
Sugli scalari:a=5n=2
Addiziones=a+n
Sottrazioned=a-n
Moltiplicazionem=a*n
Divisione a destra d1=a/n
Divisione a sinistrad2=a\n
prova_opera:
![Page 32: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/32.jpg)
Corso IFTS 2010-2011 33Ilaria Pietroni
Elevamento a potenzap=a^n
Precedenze: parentesi & da sn a dsprec=(a+n)*n/2-a+((n^.5)-1)
Sui vettori:S=[1,2,5], G=[0,6,9], V=[9,5,8;1,4,6;7,7,2]; v=V(1,:);
Addizionemad=G+Spad=G+2
Sottrazionedso=G-Spso=S-2
prova_opera:
![Page 33: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/33.jpg)
Corso IFTS 2010-2011 34Ilaria Pietroni
Sottrazionepso=S-2
MoltiplicazioneRighe per colonnemdi=S*V rxc=V*V
Ogni elemento per uno scalaremscal=V*2 mpot2=V.*V (equivalente a V.^2)
Divisionesdi= S/V sdi = S*inv(V)
prova_opera:
S=[1,2,5], G=[0,6,9], V=[9,5,8;1,4,6;7,7,2]; v=V(1,:);
![Page 34: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/34.jpg)
Corso IFTS 2010-2011 35Ilaria Pietroni
Divisioneddm=v./Svdm=a./V
ogni elemento diviso uno scalaresscal=V/2 sdm=S.\v
Potenzapotenza di ogni elementompot=V.^2 rpot=S.^2
prova_opera:a=5S=[1,2,5], G=[0,6,9], V=[9,5,8;1,4,6;7,7,2]; v=V(1,:);
![Page 35: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/35.jpg)
Corso IFTS 2010-2011 36Ilaria Pietroni
Potenzaesponente pari a Snpot=2.^S
righe per colonnerxc1=V^2
Valori specialip_greco=pi ijnanInf
ans risposta più recente
prova_opera:
![Page 36: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/36.jpg)
Corso IFTS 2010-2011 37Ilaria Pietroni
a=4;b=5;
b diviso ac=a\b a diviso bd=a/b
Arrotondamenti:intero più vicinoe=round(c)intero più vicino verso zerof=fix(c)intero più vicino verso meno infinitog=floor(c)intero più vicino verso più infinitoh=ceil(c)resto di c [b-floor(c)*a]l=rem(b,a)
prova_divisioni:
![Page 37: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/37.jpg)
Comandi di uso generale
who: elenco delle variabili definite in memoria
whos: informazioni su tutte le variabili in memoria
what: elenco di tutte le funzioni MATLAB nell’area di lavoro (estensione .m) e dei file di dati che sono stati salvati (estensione .mat)
Corso IFTS 2010-2011 Ilaria Pietroni 38
![Page 38: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/38.jpg)
Cancellare variabiliSe nel workspace sono presenti tre variabili x, y e
z e si vuole eliminare una variabile non più utile (risparmiare memoria non fa mai male specie per calcoli che richiedono matrici e vettori di grandi dimensioni) esiste il comando clear:>> clear zSi noti che la variabile z non è più presente nel workspace.
Quando si vuole ripulire l'intero workspace è sufficiente digitare il comando clear seguito da invio:
>> clearATTENZIONE. I dati persi non potranno piµu
essere recuperati!Corso IFTS 2010-2011 Ilaria Pietroni 39
![Page 39: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/39.jpg)
Corso IFTS 2010-2011 40Ilaria Pietroni
Richiamare i comandi
clc: per pulire la finestra di comando
richiama l’ultimo comando digitato
string+ richiama l’ultimo comando digitato che inizia con tale stringa
oppure usare il command history browser
![Page 40: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/40.jpg)
Corso IFTS 2010-2011 Ilaria Pietroni 41
a) Scrivere una matrice riga a, che abbia come elementi le potenze di 3 con esponente un numero da 0 a 20 con passo 2
b) Cambiare il valore dell'elemento 2 di a con 10
c) Verificare le dimensioni di a
d) Scrivere la matrice colonna, b, che abbia come elementi i numeri naturali da 1 alla dimensione di a
e) Sommare elemento per elemento le matrici a e b in modo da ottenere una matrice riga
f) Sommare elemento per elemento le matrici a e b in modo da ottenere una matrice colonna
g) Scrivere la matrice c trasposta di b e d trasposta di a
![Page 41: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/41.jpg)
Corso IFTS 2010-2011 Ilaria Pietroni 42
h) Concatenare le matrici a e c orizzontalmente e b e d verticalmente
i) Sottrarre elemento per elemento le matrici a e c
l) Moltiplicare elemento per elemento le matrici a e c
m) Verificare le dimensioni della matrice precedente
n) Dividere elemento per elemento le matrici b e d
o) Approssimare intero più vicino verso meno infinito la matrice precedentemente ottenuta
![Page 42: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/42.jpg)
Corso IFTS 2010-2011 Ilaria Pietroni 43
p) Ripetere i punti (e,g,i,l,m,n,o) per le due matrici A 2x2,B 2x2 i cui elementi siano: a11=1; a12=5; a21=6; a22=9;
[e) Sommare elemento per elemento le matrici A e B; g) Scrivere la matrice C trasposta di B; i) Sottrarre elemento per elemento le matrici A e B; l) Moltiplicare elemento per elemento le matrici A e B (chiamare la nuova matrice C); m) Verificare le dimensioni della matrice precedente; n) Dividere elemento per elemento le matrici B e A (chiamare la nuova matrice D); o) Approssimare intero più vicino verso più infinito la matrice precedentemente ottenuta.]
45
32B
![Page 43: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/43.jpg)
Corso IFTS 2010-2011 Ilaria Pietroni 44
q) Costruire una matrice 6x6 del tipo
con a11=A,a12=B, a21=C, a22=D
dove le matrici A, B, sono quelle definite al punto p, mentre le matrici C,D sono quelle ottenute dalla moltiplicazione e divisione delle matrici A e B.
r) Scrivere la matrice stringa con elementi uguali agli elementi di H
2221
1211
aa
aaH
![Page 44: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/44.jpg)
Corso IFTS 2010-2011 45Ilaria Pietroni
Nozioni basilari su MATLAB
Funzioni principali di matematica e Statistica
Operazioni su vettori e matrici
M-files e m-functions
![Page 45: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/45.jpg)
Il linguaggio di programmazione MATLAB serve all’utente per sviluppare i propri algoritmi di calcolo, i quali vengono posti in nuovi M-files. Le espressioni matematiche coinvolgono intere matrici, per cui si ha una grande concisione nel linguaggio, con conseguente rapidità di programmazione.
MATLAB dispone di un editor a cui si accede mediante il comando edit. I file prodotti con questo editor vengono salvati con l’estensione .m e sono eseguibili da MATLAB.
Chiamando il file dal prompt dei comandi eseguiamo tutti i comandi in esso contenuti.
Corso IFTS 2010-2011 Ilaria Pietroni 46
![Page 46: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/46.jpg)
Corso IFTS 2010-2011 Ilaria Pietroni 47
Ci sono due tipi di M-files:
- script
- function
La maggior parte del codice che produrrete sarà creato e gestito tramite M-files
![Page 47: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/47.jpg)
Script fileUno script file è un M-file contentente una
sequenza di istruzioni in linguaggio MATLAB.
Creando un file myfile.m tramite l’editor, questo può essere eseguito come un comando nel prompt:
>> myfile(senza estensione!)
Le variabili generate da uno script sono memorizzate nel workspace della corrente sessione di matlab.
Corso IFTS 2010-2011 Ilaria Pietroni 48
![Page 48: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/48.jpg)
Function file
Possiamo aggiungere alla funzioni preesistenti, funzione costruite da noi per risolvere problemi specifici.
Un function file è anch’esso un M-file, salvo che in testa ha una definition line in cui vengono definiti esplicitamente l’input e l’output:
function [x,y]=myfun (par) descrizioneIstruzioni;
Corso IFTS 2010-2011 Ilaria Pietroni 49
![Page 49: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/49.jpg)
function [x,y]=myfun (par) descrizioneIstruzioni;
All'interno del blocco di istruzioni le variabili output vengono settati e il loro valore viene ritornato al termine della funzione stessa.
Le variabili definite all'interno di una function sono LOCALI.Il blocco di linee di commento consecutive che eventualmente segue la prima linea del file viene visualizzato digitando il comando help seguito dal nome della funzione creata.Anche le function vengono salvate con estensione .m; il nome del file che le contiene deve essere lo stesso di myfun.
Corso IFTS 2010-2011 Ilaria Pietroni 50
![Page 50: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/50.jpg)
Le funzioni :
nargin e nargout
Hanno come output il numero di variabili in input e output rispettivamente
Corso IFTS 2010-2011 Ilaria Pietroni 51
![Page 51: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/51.jpg)
Corso IFTS 2010-2011 Ilaria Pietroni 52
1) Fare script che dati pressione e temperatura calcoli la temperatura potenziale 2) Fare function che dati pressione e temperatura calcoli la temperatura potenziale
La TEMPERATURA POTENZIALE (di una particella di fluido alla pressione p è la temperatura che quella particella avrebbe se fosse portata, tramite uno spostamento adiabatico ad una pressione standard di riferimento p0, in genere 1000 millibar)è definita come:
dove T è la temperatura assoluta della particella, R la costante dei gas per l'aria (R= 287.04 m2 s-2 K-1) e cp il calore specifico a pressione costante (cp =1004.67 m2 s-2 K-1).
pcR
p
pT
/
0
![Page 52: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/52.jpg)
Corso IFTS 2010-2011 Ilaria Pietroni 53
T= [9.40 8.50 8.00 6.90 5.60 5.30 5.30 4.80 4.50 7.00 9.60 10.80 11.90 12.10…12.10 11.00 10.10 8.40 7.60 6.90 5.00 6.50 4.70 5.00 ];
P=[1000.20,1000.50,1000.60, 1000.90,1000.80, 1001.30, 1001.90, 1003.20,…1003.70, 1004.90, 1006.10, 1006.20, 1006.10, 1006.70, 1006.90, 1007.70,…1008.50, 1009.10, 1009.20, 1010.00, 1010.80, 1011.40, 1011.70, 1011.80 ];
![Page 53: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/53.jpg)
Corso IFTS 2010-2011 54Ilaria Pietroni
Nozioni basilari su MATLAB
Funzioni principali di Matematica e Statistica
Operazioni su vettori e matrici
M-files e m-functions
![Page 54: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/54.jpg)
Libreria di funzioni matematicheAlgoritmi di calcolo che vanno dalle funzioni elementari,
come seno e coseno, a funzioni più complicate, come ricerca degli autovalori di una matrice o FFT.
Ogni Toolbox non è nient’altro che una raccolta di M-files. Tra le categorie di M-files disponibili nel pacchetto-base citiamo:
Matrici e loro manipolazione;Funzioni matematiche elementariFunzioni matematiche specialisticheAnalisi dati e FFTInterpolazione, polinomiSoluzione di equazioni differenziali, ecc..
Corso IFTS 2010-2011 Ilaria Pietroni 55
![Page 55: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/55.jpg)
Corso IFTS 2010-2011 56Ilaria Pietroni
Prova_fun
a=[1,5;9,6]
% generaliVA=abs(-2.6)
LG=log(a)
RQ=sqrt(9)
EE=exp(2)
L=log10(10^5)
![Page 56: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/56.jpg)
Corso IFTS 2010-2011 57Ilaria Pietroni
SI=sin(0.06)
CO=cos(0.6)
TA=tan(0.5)
AS=asin(SI)
p=[1:15,16:-1:1]
Espressi in radianti
Sind, cosd,…. in gradi
![Page 57: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/57.jpg)
Corso IFTS 2010-2011 Ilaria Pietroni 58
La media aritmetica di un campione è definita come:
Media e mediana
La mediana di un campione ordinato è definita come il valore centrale del campione, quindi un uguale numero di dati saranno prima e dopo il valore mediano.
parinxx
med
disparinxmed
nn
n
212/2/
2/1
N
iixN
x1
1
![Page 58: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/58.jpg)
Corso IFTS 2010-2011 Ilaria Pietroni 59
Varianza e deviazione standardLa varianza di un campione è definita come:
La deviazione standard di un campione è definita come la radice quadrata della varianza:
N
ii xx
NS
1
22
1
1
N
ii xx
N 1
2
1
1
![Page 59: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/59.jpg)
Corso IFTS 2010-2011 60Ilaria Pietroni
p=[1:15,16:-1:1]
[VM,INDM]=max(p)
[vm,indm]=min(p)
media=mean(p)
mediana=median(p)
somma=sum(p)
Se p è una matrice il risultato è una matrice riga che ha per colonne le medie,… degli elementi di ogni colonna
![Page 60: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/60.jpg)
Corso IFTS 2010-2011 61Ilaria Pietroni
p=[1:15,16:-1:1]
mediana=median(p)
somma=sum(p)
prodotto=prod(p)
ordine=sort(p)
devstandard=std(p)
![Page 61: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/61.jpg)
Corso IFTS 2010-2011 62Ilaria Pietroni
Prova_date
anno = 2004;mese = 05;giorno = 15;dat_num=datenum(anno,mese,giorno) sottintende ora zerodat_0=datestr(dat_num)dat_1=datestr(dat_num,'dd-mmm-yyyy')dat_2=datestr(dat_num,'mm/dd/yy')dat_3=datestr(dat_num,'mmm')dat_5=datestr(dat_num,'mm')dat_6=datestr(dat_num,'mm/dd‘)
![Page 62: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/62.jpg)
Corso IFTS 2010-2011 63Ilaria Pietroni
dat_7=datestr(dat_num,'dd')dat_12=datestr(dat_num,'mmmyy')dat_13=datestr(dat_num,'HH:MM:SS')dat_15=datestr(dat_num,'HH:MM')dat_19=datestr(dat_num,'dd/mm')dat_20=datestr(dat_num,'dd/mm/yy')dat_24=datestr(dat_num,'dd/mm/yyyy')
Clocktotime
1-1-1970 01:00
![Page 63: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/63.jpg)
Altre funzioni predefinite Esistono poi varie funzioni predefinite per la creazione
di matrici:
eye(n) : matrice identità n righe n colonnezeros(m,n): matrice di 0 con m righe e n colonneones(m,n) : matrice di 1 con m righe e n colonnerand(m,n) : matrice casuale di valori tra 0 e 1diag(X) : se X è un vettore con n elementi, produce
una matrice quadrata diagonale di dimensione n per n con gli elementi di X sulla diagonale. Se invece X è una matrice quadrata di dimensione n per n, produce un vettore di n elementi pari a quelli sulla diagonale di X.
Corso IFTS 2010-2011 Ilaria Pietroni 64
![Page 64: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/64.jpg)
Linspace logspaceLe due funzioni che possono essere utilizzate per creare
vettori per le ascisse sono:
x = linspace(0.01,100,1000); x = logspace(-2,2,1000);
La linspace crea un vettore x di 1000 elementi compreso tra 0.01 e 100 separati linearmente.
La logspace crea lo stesso vettore, con elementi separati logaritmicamente.
Si osservi che i primi due parametri sono gli esponenti degli estremi dell’intervallo espressi in base 10.
Corso IFTS 2010-2011 Ilaria Pietroni 65
![Page 65: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/65.jpg)
Corso IFTS 2010-2011 Ilaria Pietroni 66
Scrivere una funzione che abbia come input un vettore e come output i valori:
MediaDeviazione standardMassimoMinimo
![Page 66: Corso IFTS Tecnico Superiore per il monitoraggio e la Gestione del Territorio e dell'Ambiente 2010-2011.](https://reader038.fdocument.pub/reader038/viewer/2022110118/5542eb74497959361e8dcc49/html5/thumbnails/66.jpg)
Corso IFTS 2010-2011 Ilaria Pietroni 67
Fare una funzione che calcoli la mediana
parinxx
med
disparinxmed
nn
n
212/2/
2/1