lettura facile

La matrice triangolare in Matlab

In questa lezione ti spiego come creare le matrici triangolari con Matlab.

Cosa sono le matrici triangolari? Una matrice quadrata è detta matrice triangolare se ha gli elementi non nulli solo sulla diagonale principale e sopra (triangolare superiore) oppure sotto (triangolare inferiore) la diagonale principale. Gli altri elementi della matrice sono nulli. Ad esempio, questa matrice è una matrice triangolare inferiore $$ T = \begin{pmatrix} 1 & 0 & 0 \\ 2 & 3 & 0 \\ 4 & 5 & 6 \end{pmatrix} $$ Questa matrice, invece, è una matrice triangolare superiore. $$ T = \begin{pmatrix} 1 & 2 & 3 \\ 0 & 4 & 5 \\ 0 & 0 & 6 \end{pmatrix} $$

Ti faccio un esempio pratico.

Crea una matrice quadrata 3x3 con tre righe e tre colonne

>> M=[1 2 3;4 5 6;7 8 9]
M =
1 2 3
4 5 6
7 8 9

Digita triu(M) per trasformare la matrice quadrata M in una una matrice triangolare superiore (upper triangolar matrix)

La funzione trium() annulla tutti gli elementi della matrice M sotto la diagonale.

>> triu(M)
ans =
1 2 3
0 5 6
0 0 9

Digita tril(M) se vuoi trasformare la matrice M in una matrice triangolare inferiore (lower triangolar matrix)

La funzione trill() annulla tutti gli elementi della matrice M sopra la diagonale.

>> tril(M)
ans =
1 0 0
4 5 0
7 8 9

In questo modo puoi creare le matrici triangolari superiori e inferiori a partire da una matrice quadrata di qualsiasi ordine.

Matlab ti permette di usare le funzioni triu() e tril() anche su una matrice rettangolare.

Ad esempio crea una matrice rettangolare 3x4 con tre righe e quattro colonne

>> M2=[1 1 1 1; 2 2 2 2; 3 3 3 3]
M2 =
1 1 1 1
2 2 2 2
3 3 3 3

Poi digita triu(M2) e dai invio

La funzione genera un'altra matrice rettangolare annullando gli elementi sotto la diagonale che inizia dal primo elemento in alto a sinistra.

>> triu(M2)
ans =
1 1 1 1
0 2 2 2
0 0 3 3

Se digiti tril(M2) ottieni il risultato inverso.

In questo caso la funzione annulla gli elementi della matrice che si trovano sopra la diagonale.

>> tril(M2)
ans =
1 0 0 0
2 2 0 0
3 3 3 0




Se qualcosa non ti è chiaro, scrivi la tua domanda nei commenti.




FacebookTwitterLinkedinLinkedin