MATLAB norm()-Funktion
In diesem Tutorial besprechen wir das Finden der Euklidischen und Frobenius-Norm eines Vektors oder einer Matrix mit der Funktion norm()
in MATLAB.
MATLAB-Funktion norm()
Die Funktion norm()
von MATLAB wird verwendet, um die Euklidische und die Frobenius-Norm eines Vektors oder einer Matrix zu finden. Die euklidische Norm ist der euklidische Abstand eines Vektors von seinem Ursprung, der gleich der Größe des Vektors, der 2-Norm oder der euklidischen Länge ist.
Der euklidische Abstand ist gleich der Länge einer Strecke im euklidischen Raum und zwischen zwei Punkten. Wir können die euklidische Norm auch finden, indem wir das innere Produkt eines Vektors mit sich selbst finden und dann seine Quadratwurzel ziehen.
Die Frobenius-Norm ist die euklidische Norm einer Matrix. Wenn wir einen Vektor innerhalb der Funktion norm()
übergeben, gibt sie die euklidische Norm dieses Vektors zurück, aber im Fall einer Matrix gibt die Funktion norm()
die Frobenius-Norm zurück.
Die Funktion norm()
hat fünf verschiedene Syntaxen, die unten gezeigt werden.
nm = norm(vec)
nm = norm(vec,p)
nm = norm(mat)
nm = norm(mat,p)
nm = norm(mat,"fro")
Die erste Syntax gibt die 2-Norm oder die euklidische Norm des gegebenen Vektors zurück. Die zweite Syntax gibt die p
-Norm des gegebenen Vektors zurück, wobei die p
-Norm 1-Norm, 2-Norm, 3-Norm usw. sein kann.
Die dritte Syntax gibt den maximalen Singularitätswert oder die euklidische Norm einer Matrix zurück. Die vierte Syntax gibt die p
-Norm der gegebenen Matrix zurück, und p
kann 1, 2 oder Inf
sein.
Wenn p
1 ist, gibt die Syntax die maximale absolute Summe der Spalten der gegebenen Matrix zurück, und wenn p
2 ist, wird die 2-Norm zurückgegeben. Wenn p
Inf
ist, gibt die Syntax die maximale absolute Summe der Zeilen der gegebenen Matrix zurück.
Die letzte Syntax gibt die Frobenius-Norm der gegebenen Matrix zurück. Lassen Sie uns zum Beispiel die euklidische Norm eines Vektors und einer Matrix mit der Funktion norm()
finden.
Siehe Code unten.
clc
clear
v1 = 1:5;
m = [1:10;21:30];
n1 = norm(v1)
n3 = norm(m)
Ausgabe:
n1 =
7.4162
n3 =
83.2005
In der obigen Ausgabe wird die Norm der gesamten Matrix zurückgegeben, die 83
ist. Wenn wir die Norm jeder Zeile oder Spalte in einer Matrix finden möchten, können wir die Funktion vecnorm()
verwenden, die jede Zeile oder Spalte der gegebenen Matrix als separaten Vektor behandelt und ihre Norm berechnet.
Wenn wir beispielsweise eine Matrix innerhalb der Funktion vecnorm()
übergeben, gibt sie einen Vektor zurück, der die 2-Norm jeder Spalte enthält, die in der gegebenen Matrix vorhanden ist. Wir können auch die Normnummer als zweites Argument und die Dimension, entlang der wir die Norm nehmen wollen, als drittes Argument innerhalb der Funktion vecnorm()
festlegen.
Überprüfen Sie diesen Link für weitere Details über die Funktion norm()
. Überprüfen Sie auch diesen Link für weitere Details über die Funktion vecnorm()
.
Verwandter Artikel - MATLAB Vector
- MATLAB NaN aus Vektor entfernen
- Entfernen von Nullen aus einem Vektor in MATLAB
- 2D-Interpolation mit MATLAB
- Die diff()-Funktion in MATLAB
- Die Funktion linspace() in MATLAB