Title: 1a lezione - laboratorio
11a lezione - laboratorio
Corso di Laurea Ingegneria MECCANICA
2Desktop del MATLAB
4 zone che consentono un facile accesso
Launch Pad ai tools, demos, e docum. dei
prodotti MathWorks istallati sul computer.
workspace alle variabili memorizzate.
Command History ai comandi eseguiti nel Command
Windows.
3Command Windows, finestra di lavoro, viene usato
per inserire variabili ed eseguire file function
e M-file
Current Directory ai file memorizzati nella
directory di lavoro.
4La directory di lavoro
- La directory di default è c\matlab6p1\work
- Se si vuole usare unaltra directory
- si va nella directory desiderata utilizzando
current directory - si inserisce la directory desiderata nel path
5Come visualizzare il Path
- Per visualizzare il path si può
- digitare il comando path
- si può selezionare con il mouse dallambiente
di calcolo la voce File e dal menu a tendina che
compare la voce Set path.
6Come utilizzare il Path
- Per aggiungere una directory al path preesistente
selezionare con il mouse la voce File . Set
path Add Folder
7Matlab Windows
- Le tre finestre di lavoro del MATLAB
Comandi utili clcripulisce la finestra Command
windows clf ripulisce la finestra Graphic
windows quit o exit per uscire da MATLAB
8Command Windows
whos
9Introduzione al MATLAB
- MATrix LABoratory
- La MATRICE - la chiave per comprendere MATLAB
- nessun dimensionamento
- trattata nel suo insieme
- operazioni più naturali possibili
- Gli elementi di una matrice possono essere sia
dei numeri che dei caratteri
10Array numerici
x4 x 4 c1,23,4 x-1.6 sqrt(4)
(75)4/3 x -1.6000 2.0000 16.0000
I dati sono memorizzati in Double-Precision
Floating-Point
11Array numerici
x-1.6 sqrt(4) (75)4/3 x(5)abs(x(1)) x
-1.6000 2.0000 16.0000 0 1.6000 x07 x
0 1 2 3 4 5 6 7 y00.53 z7-10
xlinspace(0,7,15) rand(1,4) ans 0.8913
0.7621 0.4565 0.0185
12La matrice
Matrice Rettangolare Vettore m x 1 array
1 x n array Matrice m x n array
Scalare 1 x 1 array
Colonne (n)
1 2 3 4 5
A
Righe (m)
1 2 3 4 5
13Come individuare gli elementi di una matrice
gtgt Amagic(5)
1 2 3 4 5
A
1 2 3 4 5
A(8)
14Come estrarre elementi da una matrice
gtgt Amagic(5)
1 2 3 4 5
A
1 2 3 4 5
Si vogliono estrarre gli elementi dellultima
colonna.
15Come estrarre gli elementi dellultima colonna
gtgt Amagic(5) gtgt A(1,2,3,4,5,5) gtgt
A(15,5) gtgt A(,5) gtgt A(2125)'
ans 15 16 22 3 9
16Esercizio 1
- Data la matrice Aones(5)
- a) estrarre la seconda riga e la terza
colonna - b) sostituire lultima riga di A con il
vettore - r3 3 3 3 3.
Aones(5) a. pA(2,)qA(,3) b. r1
1 1 1 1 A(end,15)r oppure A(end,)r
oppure A(end,)1 1 1 1 1
17Formato delloutput
18Array di Stringhe
Loperatore () delimita larray di stringhe
str1 Questa e una stringa di prova
str2 che contiene 58 elementi
strstr1 str2 str Questa e una stringa di
prova che contiene 58 elementi
strstr1str2 str Questa e una stringa di
prova che contiene 58 elementi
19Regole per i nomi delle variabili
- I nomi devono cominciare con una lettera
- possono contenere lettere, cifre e il carattere
_ - Matlab distingue il Maiuscolo dal Minuscolo
20Esercizio 2
- Costruire un vettore x costituito da 10 numeri
progressivi (es. da 21 a 30). - Si calcoli la somma delle componenti del vettore
x e, quindi, della prima ed ultima componente. - Si costruisca un vettore p, le cui prime 10
componenti siano le stesse di x, mentre
lundicesima e la dodicesima siano
rispettivamente la somma e la differenza delle
prime due componenti.
21Soluzione Esercizio 2
1. x2130 oppure xlinspace(21,30,10) 2.
sum(x) somma delle componenti
x(1)x(10) oppure x(1)x(end) oppure
nlength(x) x(1)x(n) 3. px
p(11)x(1)x(2) p(12)x(1)-x(2) oppure
px x(1)x(2) x(1)-x(2) oppure
qx(1)x(2) x(1)-x(2) px q
22Variabili predefinite
pi ans 3.14159265358979 eps ans
2.220446049250313e-016 realmin ans
2.225073858507201e-308 realmax ans
1.797693134862316e308
- pi
- i, j
- eps
- realmin
- realmax
- ans
23Variabili non numeriche predefinite
0/0 Warning Divide by zero. ans NaN
b1/0 Warning Divide by zero. b Inf
24Funzioni di utilitÃ
- zeros(m,n)matrice mxn con tutti elem. 0
- ones(m,n) matrice mxn con tutti elem. 1
- rand(m,n) matrice mxn con elem. random
- uniformemente
distribuiti - magic(n) matrice magica di dimensioni nxn
- eye (n) matrice identità di dimensioni nxn
- tril(A) matrice triang. infer. estratta da A
- triu(A) matrice triang. super. estratta da A
- diag(A) vettore contenente la diagonale di A
25Esercizio 3
- a) Data la matrice A1 2 3 4 5 6 7 8 9
estrarre la seconda riga e la terza colonna. - b) Sostituire lultima riga di A con il
vettore - i1 3 7.
- 2. Estrarre la diagonale della matrice A data in
1. e creare una matrice diagonale avente sulla
diagonale gli elementi della diagonale di A. - 3. Costruire una matrice 5x5 che abbia tutti 2
sulla diagonale principale e rispettivamente 1 e
-1 sulle codiagonali superiore e inferiore.
26Soluzione Esercizio 3
1. A1 2 34 5 67 8 9 pA(2,)qA(,3)
i1 3 7 A(3,13)i oppure
A(end,)i oppure A(3,)1 3
7 2. bdiag(A) cdiag(b) oppure
cdiag(diag(A)) 3. n5 I1ones(n,1)
I2ones(n-1,1) Adiag(2I1)1diag(I2,1)-1dia
g(I2,-1)
27Esercizio 4
- Data la matrice
- A10 2 3 1 2 8 1 1 3 1 7 0
- 1 1 0 3
- calcolarne il determinante
- costruire la matrice L, triangolare inferiore,
estratta da A (tril) - costruire la matrice U, triangolare superiore,
estratta da A (triu) - costruire la matrice T, tridiagonale con gli
stessi elementi di A sulla diagonale e le
codiagonali (diag).
28Soluzione Esercizio 4
det(A) Ltril(A) Utriu(A)
T1diag(A,-1) T2diag(A) T3diag(A,1)
Tdiag(T1,-1) diag(T2)diag(T3,1)
29Operazioni su vettori
30Esempio di operazione su vettori
- amagic(3)
- a
- 8 1 6
- 3 5 7
- 4 9 2
- b1aa
- b1
- 91 67 67
- 67 91 67
- 67 67 91 b2a.a
- b2
- 64
1 36
- 9
25 49 - 16
81 4
31Esercizio 5
- Calcolare il quadrato dei singoli elementi della
matrice magica 5x5. - Calcolare il prodotto elemento per elemento tra
la matrice magica 5x5 e la matrice di elementi
random 5x5. - Costruire due vettori il primo x, contiene i
numeri pari da 1 a 10, il secondo y, contiene i
numeri dispari da 1 a 10. - Calcolare il prodotto dei due vettori x, y
ed il prodotto delle singole componenti.
32Soluzione Esercizio 5
1. Amagic(5) A.2 2.
Bmagic(5).rand(5) 3. x2210
y1210 zxy (zxy è una matrice)
zx.y