ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

norm

ベクトルと行列のノルム

説明

n = norm(v) は、ベクトル vユークリッド ノルムを返します。このノルムは 2 ノルム、ベクトルの大きさ、またはユークリッド長とも呼ばれます。

n = norm(v,p)一般化ベクトル p ノルムを返します。

n = norm(X) は、行列 X の 2 ノルムまたは最大特異値を返します。これはおよそ max(svd(X)) となります。

n = norm(X,p) は、行列 X の p ノルムを返します。ここで p12 または Inf です。

n = norm(X,'fro') は、Xフロベニウス ノルムを返します。

すべて折りたたむ

ベクトルを作成して大さを計算します。

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

ベクトルの 1 ノルムを計算します。これは要素の大きさの合計です。

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

2 点間の距離を、ベクトル要素間の差のノルムとして計算します。

ユークリッド平面の 2 点の (x,y) 座標を表す 2 つのベクトルを作成します。

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

norm を使用して、点間距離を計算します。

d = norm(b-a)
d = 2.8284

幾何学的には、点間距離は、1 点から別の点に伸長しているベクトルの大きさと等しくなります。

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

行列の 2 ノルムを計算します。これは最大の特異値になります。

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

'fro' を使用してスパース行列のフロベニウス ノルムを計算します。これは列ベクトル S(:) の 2 ノルムを計算します。

S = sparse(1:25,1:25,1);
n = norm(S,'fro')
n = 5

入力引数

すべて折りたたむ

入力ベクトル。

データ型: single | double
複素数のサポート: あり

入力行列。

データ型: single | double
複素数のサポート: あり

ノルムのタイプ。2 (既定)、その他の正の整数スカラー、Inf または -Inf として指定します。p の有効な値とその戻り値は、次の表に示すように norm の最初の入力が行列とベクトルのどちらであるかによって異なります。

メモ

この表は、計算に使用される実際のアルゴリズムは反映していません。

p行列ベクトル
1max(sum(abs(X)))sum(abs(X))
2 max(svd(X))sum(abs(X).^2)^(1/2)
正の実数値 psum(abs(X).^p)^(1/p)
Infmax(sum(abs(X')))max(abs(X))
-Infmin(abs(X))

出力引数

すべて折りたたむ

行列またはベクトルのノルム。スカラーとして返されます。ノルムは、要素の大きさの尺度を提供します。慣例により、入力に NaN 値が含まれている場合、normNaN を返します。

詳細

すべて折りたたむ

ユークリッド ノルム

N 個の要素があるベクトル v のユークリッド ノルム (ベクトル振幅、ユークリッド長、または 2 ノルムとも呼ばれます) は、次のように定義されます。

v=k=1N|vk|2.

一般化ベクトル ノルム

N 個の要素をもつベクトル v の p ノルムの一般的定義は次のとおりです。

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

ここで、p は任意の正の実数値、Inf、または -Inf です。p の特徴的な値として次のようなものがあります。

  • p = 1 の場合、得られる 1 ノルムはベクトル要素の絶対値の合計です。

  • p = 2 の場合、結果の 2 ノルムはベクトルの大きさすなわちユークリッド長を表します。

  • p = Inf の場合は、v=maxi(|v(i)|) となります。

  • p = -Inf の場合は、v=mini(|v(i)|) となります。

列の和の最大絶対値

mn 列の行列 X (ただし、m,n >= 2) の列の和の最大絶対値は次のように定義されます。

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

行の和の最大絶対値

mn 列の行列 X (ただし、m,n >= 2) の行の和の最大絶対値は次のように定義されます。

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

フロベニウス ノルム

mn 列の行列 X (ただし、m,n >= 2) のフロベニウス ノルムは次のように定義されます。

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

ヒント

  • vecnorm を使用して、行列または配列をベクトルの集合として扱い、指定した次元に沿ってノルムを計算します。たとえば、vecnorm により行列の各列のノルムを計算できます。

拡張機能

R2006a より前に導入