Main Content

Die Übersetzung dieser Seite ist veraltet. Klicken Sie hier, um die neueste Version auf Englisch zu sehen.

norm

Vektor- und Matrixnormen

Beschreibung

Beispiel

n = norm(v) gibt die euklidische Norm eines Vektors v zurück. Diese Norm wird auch 2-Norm, Vektorbetrag oder euklidische Länge genannt.

Beispiel

n = norm(X) gibt die 2-Norm oder den maximalen singulären Wert der Matrix X zurück, der in etwa max(svd(X)) ist.

n = norm(X,p) gibt die p-Norm der Matrix X zurück, wobei p gleich 1, 2 oder Inf ist:

Beispiel

n = norm(X,"fro") gibt die Frobeniusnorm der Matrix oder des Arrays X zurück.

Beispiele

alle reduzieren

Erstellen Sie einen Vektor und berechnen Sie den Betrag.

v = [1 -2 3];
n = norm(v)
n = 3.7417

Berechnen Sie die 1-Norm eines Vektors, bei der es sich um die Summe der Elementbeträge handelt.

v = [-2 3 -1];
n = norm(v,1)
n = 6

Berechnen Sie den Abstand zwischen zwei Punkten als Norm der Differenz zwischen den Vektorelementen.

Erstellen Sie zwei Vektoren, die die (x,y)-Koordinaten für zwei Punkte in der euklidischen Ebene darstellen.

a = [0 3];
b = [-2 1];

Verwenden Sie norm, um den Abstand zwischen den Punkten zu berechnen.

d = norm(b-a)
d = 2.8284

Geometrisch ist der Abstand zwischen den Punkten gleich dem Betrag des Vektors, der sich vom einen Punkt zum anderen erstreckt.

a=0iˆ+3jˆb=-2iˆ+1jˆd(a,b)=||b-a||=(-2-0)2+(1-3)2=8

Berechnen Sie die 2-Norm einer Matrix, bei der es sich um den größten singulären Wert handelt.

X = [2 0 1;-1 1 0;-3 3 0];
n = norm(X)
n = 4.7234

Berechnen Sie die Frobeniusnorm eines vierdimensionalen Arrays X, die äquivalent zur 2-Norm des Spaltenvektors X(:) ist.

X = rand(3,4,4,3);
n = norm(X,"fro")
n = 7.1247

Die Frobeniusnorm ist auch für dünn besetzte Matrizen sinnvoll, weil norm(X,2) keine dünn besetzten X unterstützt.

Eingabeargumente

alle reduzieren

Eingabevektor.

Datentypen: single | double
Unterstützung komplexer Zahlen: Ja

Input Array (Eingabearray), angegeben als Matrix oder Array. Für die meisten Normtypen muss X eine Matrix sein. Bei Berechnungen der Frobeniusnorm kann X ein Array sein.

Datentypen: single | double
Unterstützung komplexer Zahlen: Ja

Normtyp, angegeben als 2 (Standard), ein positiver reeller Skalar, Inf oder -Inf. Welche Werte von p gültig sind und welche Ergebnisse für sie zurückgegeben werden, hängt davon ab, ob die erste Eingabe für norm eine Matrix oder ein Vektor ist (siehe Tabelle).

Hinweis

Diese Tabelle spiegelt nicht die tatsächlichen Algorithmen wider, die in den Berechnungen verwendet wurden.

pMatrixVektor
1max(sum(abs(X)))sum(abs(v))
2 max(svd(X))sum(abs(v).^2)^(1/2)
Positiver, reellwertiger numerischer Skalarsum(abs(v).^p)^(1/p)
Infmax(sum(abs(X')))max(abs(v))
-Infmin(abs(v))

Ausgabeargumente

alle reduzieren

Normwert, zurückgegeben als Skalar. Die Norm stellt ein Maß für den Betrag der Elemente zur Verfügung. In der Regel gilt Folgendes:

  • norm gibt NaN zurück, wenn die Eingabe NaN-Werte enthält.

  • Die Norm einer leeren Matrix ist null.

Mehr über

alle reduzieren

Euklidische Norm

Die euklidische Norm (auch Vektorbetrag, euklidische Länge oder 2-Norm genannt) eines Vektors v mit N Elementen ist wie folgt definiert:

v=k=1N|vk|2.

Allgemeine Vektornorm

Die allgemeine Definition der p-Norm eines Vektors v mit N Elementen ist

vp=[k=1N|vk|p]1/p,

, wobei p ein beliebiger positiver reeller Wert, Inf oder -Inf ist.

  • Wenn p = 1, dann ist die resultierende 1-Norm die Summe der absoluten Werte der Vektorelemente.

  • Wenn p = 2, dann gibt die resultierende 2-Norm den Vektorbetrag oder die euklidische Länge des Vektors zurück.

  • Wenn p = Inf, dann v=maxi(|v(i)|).

  • Wenn p = -Inf, dann v=mini(|v(i)|).

Maximale absolute Spaltensumme

Die maximale absolute Spaltensumme einer mxn-Matrix X (mit m,n >= 2) ist wie folgt definiert:

X1=max1jn(i=1m|aij|).

Maximale absolute Zeilensumme

Die maximale absolute Zeilensumme einer mxn-Matrix X (mit m,n >= 2) ist wie folgt definiert:

X=max1im(j=1n|aij|).

Frobeniusnorm

Die Frobeniusnorm einer mxn-Matrix X (mit m,n >= 2) ist wie folgt definiert:

XF=i=1mj=1n|aij|2=trace(XX).

Diese Definition gilt natürlich auch für Arrays mit mehr als zwei Dimensionen. Wenn beispielsweise X ein N-D-Array der Größe mxnxpx-...-x-q ist, lautet die Frobeniusnorm wie folgt:

XF=i=1mj=1nk=1p...w=1q|aijk...w|2.

Tipps

  • Verwenden Sie vecnorm, um eine Matrix oder ein Array als Sammlung von Vektoren zu behandeln und die Norm entlang einer angegebenen Dimension zu berechnen. Beispielsweise kann vecnorm die Norm jeder Spalte in einer Matrix berechnen.

Erweiterte Fähigkeiten

Versionsverlauf

Eingeführt vor R2006a

alle erweitern