Vektoroperationen in Matlab
In dieser Lektion erkläre ich die wichtigsten Vektorberechnungen in MATLAB anhand einfacher praktischer Beispiele.
Zunächst definieren Sie einen Vektor.
>> v=[1; 3; 4;]
Dann definieren Sie einen weiteren Vektor im selben Raum.
>> w=[2; 1; -1]
Die beiden Vektoren haben jeweils drei vertikal angeordnete Komponenten, sie sind also Spaltenvektoren im dreidimensionalen Raum (x, y, z).
Beachten Sie, dass ich Sie in diesen Beispielen gebeten habe, Spaltenvektoren zu definieren, aber Sie können auch Zeilenvektoren definieren. Vektorberechnungen sind unabhängig davon, ob es sich um Zeilen- oder Spaltenvektoren handelt, gleich.
Hier sind einige mathematische Operationen, die Sie mit den beiden Vektoren in MATLAB durchführen können.
Vektorenaddition
Der Operator für die Addition von zwei Vektoren ist das Pluszeichen (+).
Um die beiden Vektoren in MATLAB zu addieren, geben Sie v + w ein
>> v+w
Antwort =
3
4
3
$$ \vec{v} + \vec{w} = \begin{pmatrix} 1 \\ 3 \\ 4 \end{pmatrix} + \begin{pmatrix} 2 \\ 1 \\ -1 \end{pmatrix} = \begin{pmatrix} 1+2 \\ 3+1 \\ 4-1 \end{pmatrix} = \begin{pmatrix} 3 \\ 4 \\ 3 \end{pmatrix} $$
Vektorensubtraktion
Der Operator für die Subtraktion zwischen zwei Vektoren ist das Minuszeichen (-).
Um die Differenz zwischen zwei Vektoren zu erhalten, geben Sie v - w ein
>> v-w
Antwort =
-1
2
5
$$ \vec{v} - \vec{w} = \begin{pmatrix} 1 \\ 3 \\ 4 \end{pmatrix} - \begin{pmatrix} 2 \\ 1 \\ -1 \end{pmatrix} = \begin{pmatrix} 1-2 \\ 3-1 \\ 4-(-1) \end{pmatrix} = \begin{pmatrix} -1 \\ 2 \\ 5 \end{pmatrix} $$
Skalarprodukt von Vektoren
Der Operator für die Multiplikation zwischen zwei Vektoren ist das Sternchen (*).
In diesem Fall haben Sie zwei Spaltenvektoren definiert. Um das Skalarprodukt der beiden Vektoren zu berechnen, müssen Sie einen der Vektoren in einen Zeilenvektor umwandeln.
Um einen Vektor zu transponieren, fügen Sie ein Apostroph rechts vom Arraynamen hinzu.
Multiplizieren Sie beispielsweise den ersten Vektor v mit der Transponierten des zweiten Vektors w'
>> v*w'
Antwort =
2 1 -1
6 3 -3
8 4 -4
$$ \vec{v} \cdot \vec{w}^T = \begin{pmatrix} 1 \\ 3 \\ 4 \end{pmatrix} \cdot \begin{pmatrix} 2 & 1 & -1 \end{pmatrix} = \begin{pmatrix}1 \cdot 2 & 1 \cdot 1 & 1 \cdot (-1) \\3 \cdot 2 & 3 \cdot 1 & 3 \cdot (-1) \\ 4 \cdot 2 & 4 \cdot 1 & 4 \cdot (-1) \end{pmatrix} = \begin{pmatrix}2 & 1 & -1 \\ 6 & 3 & -3 \\ 8 & 4 & -4 \end{pmatrix} $$
Sie können auch den ersten Vektor v' transponieren und ihn mit dem zweiten Vektor w multiplizieren.
Denken Sie jedoch daran, dass die Vektormultiplikation nicht dem Kommutativgesetz folgt. Das Produkt v'*w unterscheidet sich also vom Produkt v*w'.
>> v'*w
Antwort = 1
$$ \vec{v}^T \cdot \vec{w} = \begin{pmatrix} 1 & 3 & 4 \end{pmatrix} \cdot \begin{pmatrix} 2 \\ 1 \\ -1 \end{pmatrix} = \begin{pmatrix} 1 \cdot 2 + 3 \cdot 1 + 4 \cdot (-1) \end{pmatrix} = \begin{pmatrix} 2 + 3 - 4 \end{pmatrix} \begin{pmatrix} 1 \end{pmatrix} = 1 $$
Elementweise Multiplikation
Elementweise Multiplikation ist eine weitere Art der Vektormultiplikation.
Hierbei berechnet die Operation das Produkt der Elemente der beiden Vektoren, die an der gleichen Position stehen.
Um eine elementweise Multiplikation in Matlab durchzuführen, verwenden Sie das Symbol .* (Punkt und Sternchen).
>> v.*w
Antwort =
2
3
-4
Bei der elementweisen Multiplikation müssen beide Vektoren entweder Zeilenvektoren oder Spaltenvektoren sein.
Außerdem müssen die Vektoren v und w dieselbe Anzahl an Komponenten haben.
$$ \vec{v} \cdot \vec{w} = \begin{pmatrix} 1 \\ 3 \\ 4 \end{pmatrix} \ .* \ \begin{pmatrix} 2 \\ 1 \\ -1 \\ \end{pmatrix} = \begin{pmatrix} 1 \cdot 2 \\ 3 \cdot 1 \\ 4 \cdot -1 \end{pmatrix} = \begin{pmatrix} 2 \\ 3 \\ -4 \end{pmatrix} $$
Multiplikation von Skalaren und Vektoren
Die Multiplikation eines Vektors mit einem Skalar erfolgt mit demselben Operator wie die gewöhnliche Multiplikation, also dem Sternchen *.
Hierbei bezieht sich der Begriff "Skalar" auf eine beliebige Zahl.
Zum Beispiel, um den Skalar 2 mit dem Vektor v in Matlab zu multiplizieren, tippen Sie 2*v.
>> 2*v
ans =
2
6
8
$$ 2 \cdot \begin{pmatrix} 1 \\ 3 \\ 4 \end{pmatrix} = \begin{pmatrix} 2 \cdot 1 \\ 2 \cdot 3 \\ 2 \cdot 4 \end{pmatrix} = \begin{pmatrix} 2 \\ 6 \\ 8 \end{pmatrix} $$
Die Multiplikation von Skalaren und Vektoren erfüllt das Kommutativgesetz.
Daher können Sie auch v*2 schreiben. Das Ergebnis bleibt dasselbe.
>> v*2
ans =
2
6
8
$$ \begin{pmatrix} 1 \\ 3 \\ 4 \end{pmatrix} \cdot 2 = \begin{pmatrix} 1 \cdot 2 \\ 3 \cdot 2 \\ 4 \cdot 2 \end{pmatrix} = \begin{pmatrix} 2 \\ 6 \\ 8 \end{pmatrix} $$
Division eines Vektors durch einen Skalar
Der Divisionsoperator zwischen einem Vektor und einem Skalar ist das Symbol / (Schrägstrich).
Zum Beispiel, um den Vektor v durch den Skalar 2 in Matlab zu teilen, tippen Sie v/2
>> v/2
ans =
0.5
1.5
2.0
$$ \frac{ \vec{v} }{2} = \begin{pmatrix} 1 \\ 3 \\ 4 \end{pmatrix} \cdot \frac{1}{2} = \begin{pmatrix} \frac{1}{2} \\ \frac{3}{2} \\ \frac{4}{2} \end{pmatrix} = \begin{pmatrix} 0.5 \\ 1.5 \\ 2 \end{pmatrix} $$
Elementweise Vektordivision
Bei der elementweisen Vektordivision werden die Elemente zweier Vektoren, die sich in derselben Position befinden, geteilt.
Für diese Art der Division verwenden Sie das Symbol ./ (Punkt und Schrägstrich)
>> v./w
ans =
0.5
3
-4
Bei der elementweisen Division müssen beide Vektoren entweder Zeilenvektoren oder Spaltenvektoren sein.
Außerdem müssen die beiden Vektoren dieselbe Anzahl von Elementen aufweisen.
$$ \vec{v} \cdot \vec{w} = \begin{pmatrix} 1 \\ 3 \\ 4 \end{pmatrix} \ ./ \ \begin{pmatrix} 2 \\ 1 \\ -1 \end{pmatrix} = \begin{pmatrix} \frac{1}{2} \\ \frac{3}{1} \\ \frac{4}{-1} \end{pmatrix} = \begin{pmatrix} 0.5 \\ 3 \\ -4 \end{pmatrix} $$
Elementweise Vektorexponentiation
In Matlab können Sie auch eine elementweise Exponentiation durchführen.
Diese Operation erhöht die Elemente eines Vektors um denselben Exponenten (Skalarzahl).
Für diese Operation verwenden Sie den Operator .^
>> v.^2
ans =
1
9
16
$$ \vec{v} \ \text{.^} \ 2 = \begin{pmatrix} 1^2 \\ 3^2 \\ 4^2 \end{pmatrix} = \begin{pmatrix} 1 \\ 9 \\ 16 \end{pmatrix} $$
Wenn der Exponent ebenfalls ein Vektor ist, erhöht diese Operation jedes Element des Basisvektors um das Element des Exponentenvektors, das sich in derselben Position befindet.
>> v.^w
ans =
1
3
0.25
$$ \vec{v} \ \text{.^} \ \vec{w} = \begin{pmatrix} 1 \\ 3 \\ 4 \end{pmatrix} \ \text{.^} \ \begin{pmatrix} 2 \\ 1 \\ -1 \end{pmatrix} = \begin{pmatrix} 1^2 \\ 3^1 \\ 4^{-1} \end{pmatrix} = \begin{pmatrix} 1 \\ 3 \\ 0.25 \end{pmatrix} $$
In diesem Fall müssen beide Vektoren entweder Zeilenvektoren oder Spaltenvektoren sein und dieselbe Anzahl von Elementen aufweisen.
Vektornorm (Magnitude oder Länge)
Um die Euklidische Norm eines Vektors zu berechnen, die die Größe (Länge) des Vektors angibt, verwenden Sie die Funktion norm().
>> norm(v)
ans = 5.0990
$$ | \vec{v} | = \sqrt{1^2+3^2+4^2} = \sqrt{1+9+16} = \sqrt{26} = 5,099 $$