Erstellung von Diagonalmatrizen in Matlab

In dieser Lektion werde ich Ihnen zeigen, wie Sie in Matlab Diagonalmatrizen erstellen können.

Was versteht man unter einer Diagonalmatrix? Eine Diagonalmatrix ist eine quadratische Matrix, deren Hauptdiagonale mit Nicht-Null-Elementen besetzt ist, während alle anderen Positionen Nullen aufweisen. Hier ein Beispiel für eine Diagonalmatrix: $$ M = \begin{pmatrix} 1 & 0 & 0 & 0 \\ 0 & 2 & 0 & 0 \\ 0 & 0 & 3 & 0 \\ 0 & 0 & 0 & 4 \end{pmatrix} $$

Um in Matlab eine Diagonalmatrix zu erstellen, nutzen Sie die Funktion diag().

diag(v)

Der Parameter 'v' bezeichnet einen Vektor, der die Elemente enthält, die auf der Hauptdiagonale platziert werden sollen.

Ich zeige Ihnen nun ein praktisches Beispiel:

Erstellen Sie zunächst einen Vektor 'v' mit vier Elementen.

>> v=[1 2 3 4]
v =
1 2 3 4

Geben Sie anschließend den Befehl diag(v) ein.

Matlab wird daraufhin eine 4x4-Diagonalmatrix erstellen, in der die Elemente des Vektors 'v' auf der Hauptdiagonale angeordnet sind.

>> diag(v)
ans =
Diagonalmatrix
1 0 0 0
0 2 0 0
0 0 3 0
0 0 0 4

Alle übrigen Elemente der Matrix sind Null.

$$ M = \begin{pmatrix} \color{red}1 & 0 & 0 & 0 \\ 0 & \color{red}2 & 0 & 0 \\ 0 & 0 & \color{red}3 & 0 \\ 0 & 0 & 0 & \color{red}4 \end{pmatrix} $$

Dasselbe Ergebnis lässt sich erzielen, indem Sie direkt diag([1 2 3 4]) eingeben, ohne zuvor den Vektor einer Variablen zuzuweisen.

Vergessen Sie dabei nicht, die Elemente des Arrays in eckige Klammern zu setzen.

>> diag([1 2 3 4])
ans =
Diagonalmatrix

1 0 0 0
0 2 0 0
0 0 3 0
0 0 0 4

Mit dieser Methode können Sie Diagonalmatrizen beliebiger Größe kreieren.

Um beispielsweise eine 3x3-Diagonalmatrix mit drei Zeilen und Spalten zu erstellen, verwenden Sie diag([3 4 1]).

>> diag([3 4 1])
ans =
Diagonalmatrix
3 0 0
0 4 0
0 0 1

In diesem Fall erstellt Matlab eine 3x3-Matrix, da der Vektor nur aus drei Elementen besteht.

$$ M = \begin{pmatrix} \color{red}3 & 0 & 0 \\ 0 & \color{red}4 & 0 \\ 0 & 0 & \color{red}1 \end{pmatrix} $$

 
 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin

Matrizen in Matlab

Häufig gestellte Fragen