matlab cristina campi [email protected]. outline introduzione a matlab matrici esercizi
TRANSCRIPT
MATLAB
Cristina [email protected]
Outline
Introduzione a MatlabMatriciEsercizi
MATLAB MATrix LABoratory Linguaggio di programmazione interpretato
legge un comando per volta eseguendolo immediatamente
MATLAB come calcolatrice
è possibile definire variabili e operare su esse x = 9 -> invio
4 + 7
invio
Comandi elementari I
Operatori aritmetici + - * / ^ Caratteri speciali ; % :Variabili predefinite i, pi, NaN, Inf
2/0 -> Inf0/0 -> NaN (Not-a-Number)
Funzioni elementari:sin, cos, log, exp
Comandi speciali: clear, clc
help
lookfor
Comandi elementari II
Lavorare con MATLABIn 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
mnm
n
aa
aa
A
1
111
Vettori
Per definire un vettore riga
Per definire un vettore colonna
a = [1 2 3 4 5]o
a = [1, 2, 3, 4, 5]
a = [1; 2; 3; 4; 5]o
a = [1 2 3 4 5] ’ trasposto
per separare le righe
Matrici
Per definire una matrice:
size(B) -> dimensioni della matrice [r c] = size(B) per memorizzare le dimesioni
22
21
03
RA
A = [3 0; 1 2]A = [3 0 1 2]
32
021
303
RB B = [3 0 3; 1 2 0]
Creazione vettori
vettori che siano delle progressionearitmetiche di passo costante p:
v=val_iniziale:p:val_finale
b = 1: .2 : 4c = 3: -1: 1
Se p=1 si può omettere
Esercizio 1 Costruire un vettore di 40 elementi così
fatto: i primi 20 elementi sono 1,2,…,20gli ultimi 20 20,19,…,1
Chiamare questo vettore v
SOLUZIONE:
v = [1:20 20:-1:1]
Individuare\modificare elementi
per selezionare un elemento
per modificare l’elemento
per visualizzare B
32
021
303
RB
B(2,3)
B(2,3) = 1;
B
Estrarre sottomatrici
estrarre la riga R2
32
021
303
RB
B(2,:)
B(:,2:3)
estrarre la colonna C2B(:,2)
sottomatrice 2 x 2
B(:,[2 3])
Matrici diagonali
22
21
03
RA
diagonale di A -> d = diag(A) con d vettore colonna
B = diag(d) ->
20
03B
Matrici triangolari
22
21
03
RA 32
021
303
RB
matrice triangolare inferiore
tril(A)
matrice triangolare superiore
triu(B)
Matrici notevoli
identità di ordine n -> eye(n)
matrice nulla m x n -> zeros(m,n)
matrice m x n di 1 -> ones(m,n)
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
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];
Operazioni - somma
Somma / Differenza
A+B
A-B
A+C
??? Error using = => +
Matrix dimensions must
agree.
Trasposta A’
Operazioni - prodotto
11
01
43
21BA
Prodotto A*B #CA = #RB
Elemento per elemento
A.*B size(A) = size(B)
Prodotto per uno scalare A*k
Determinante
Determinante det(B)
det(D)
1
0
Inversa inv(B)
inv(D)
Rango rank(D) 2
?
110
325
143
11
01DB
11
01
Esercizio 3
300
000
000
100
010
001
01168
0163
0142
0121
BA