1 / 24

MATLAB

MATLAB. Stefano Gagliardo gagliardo@dima.unige.it http://www.dima.unige.it/~gagliard/. Scopo della lezione:. Introduzione a Matlab Matrici Esercizi. MATLAB. MATrix LABoratory Linguaggio di programmazione interpretato legge un comando per volta eseguendolo immediatamente.

amanda
Télécharger la présentation

MATLAB

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. MATLAB Stefano Gagliardo gagliardo@dima.unige.it http://www.dima.unige.it/~gagliard/

  2. Scopo della lezione: • Introduzione a Matlab • Matrici • Esercizi

  3. MATLAB • MATrix LABoratory • Linguaggio di programmazione interpretato • legge un comando per volta eseguendolo immediatamente

  4. POTENZIALITA’ DI MATLAB • Operazioni elementari tra matrici • (moltiplicazione, determinante, rango, • inversa ecc.); • risoluzione sistemi lineari; • calcolo degli autovalori e autovettori di • matrici; • grafica: grafici 2D e 3D

  5. 4 + 7 invio lo memorizza in ans x = 9 -> invio MATLAB come calcolatrice è possibile definire variabili e operare su esse

  6. Comandi elementari I • Operatori aritmetici + - * / ^ • Caratteri speciali ; % : • Variabili predefinite i, pi, NaN, Inf • 2/0 -> Inf • 0/0 -> NaN (Not-a-Number)

  7. Comandi elementari II • Funzioni elementari: sin, cos, log, exp • Comandi speciali: clear, clc • help • lookfor

  8. Lavorare con MATLAB In MATLAB tutte le variabili sono trattate come matrici, e quindi: • scalari -> matrici 1 x 1 • vettori riga -> matrici 1 x n v = (v1,…, vn) • vettori colonna -> matrici n x 1 v = (v1,…, vn)T • matrici -> matrici m x n

  9. Vettori • Per definire un vettore riga • Per definire un vettore colonna a = [1 2 3 4 5] o a = [1, 2, 3, 4, 5] per separare le righe a = [1; 2; 3; 4; 5] o a = [1 2 3 4 5] ’ trasposto

  10. A = [3 0; 1 2] A = [3 0 1 2] R1=[3 0 3] R2=[1 2 0] B = [R1;R2] Matrici Per definire una matrice: size(B) -> dimensioni della matrice [r c] = size(B) per memorizzare le dimesioni

  11. Creazione vettori vettori che siano delle progressione aritmetiche di passo costante p: v=val_iniziale:p:val_finale b = 1: .2 : 4 c = 3: -1: 1 Se p=1 si può omettere

  12. Esercizio 1 • Costruire un vettore di 40 elementi così fatto: • i primi 20 elementi sono 1,2,…,20 • gli ultimi 20 20,19,…,1 • Chiamare questo vettore v SOLUZIONE: v = [1:20 20:-1:1]

  13. B(2,3) B(2,3) = 1; B Individuare\modificare elementi per selezionare un elemento per modificare l’elemento per visualizzare B

  14. B(:,[2 3]) B(:,2:3) B(2,:) B(:,2) Estrarre sottomatrici estrarre la riga R2 estrarre la colonna C2 sottomatrice 2 x 2

  15. Matrici diagonali (diag) MATRICE A: diagonale di A -> d = diag(A) con d vettore colonna VETTORE d: B = diag(d) ->

  16. triu(B) tril(A) Matrici triangolari matrice triangolareinferiore matricetriangolare superiore

  17. zeros(m,n) ones(m,n) rand(m,n) Matrici notevoli identità di ordine n -> eye(n) matrice nulla m x n -> matrice m x n di 1 -> matrice m x n a valori random compresi tra 0 e 1 ->

  18. Esercizio 2 • Costruire una matrice A 3 x 7 cosi fatta: • la prima riga a1 = 7,6,…,1 • la seconda riga a2 = 1,1,…,1 • la terza riga a3 = 0,0,…,0 • Estrarre 2 sottomatrici: • una costituita dalle ultime 3 colonne • una costituita dagli elementi della I e III riga , II e IV colonna

  19. Operazioni I clear A=[1 2;3 4]; B=[1 0;-1 1]; C=[0 3 1;1 2 4]; D=[3 4 -1;5 2 3;0 1 -1];

  20. Operazioni - somma A+B ??? Error using = => + Matrix dimensions must agree. Somma / Differenza A-B A+C Trasposta A’

  21. Operazioni - prodotto Prodotto A*B #CA = #RB Elemento per elemento A.*B size(A) = size(B) Prodotto per uno scalare A*k

  22. - æ ö 3 4 1 ç ÷ æ ö 1 0 ç ÷ = = B D 5 2 3 ç ÷ ç ÷ - 1 1 è ø ç ÷ - 0 1 1 è ø ? Determinante det(B) det(D) 1 0 Determinante  2 Rango  rank(D) inv(B) inv(D) Inversa 

  23. Esercizio 3 Definite: Valutare quale delle seguenti operazioni sono lecite e nel caso lo siano eseguirle con Matlab: A+B, A*B, A.*B, A*B’; Calcolare: D=(A*A’)-I, con I matrice identica; Verificare le proprietà della trasposta: A=(A’)’, (A+B)’=A’+B’, A*B’=(B*A’)’, det(D’)=det(D), (cA)’=cA’ con c scalare.

  24. Esercizio 4

More Related