Main Content

vecnorm

ベクトル単位のノルム

説明

N = vecnorm(A) は、A の 2 ノルム、つまりユークリッド ノルムを返します。

  • A がベクトルの場合、vecnorm はそのベクトルのノルムを返します。

  • A が行列の場合、vecnorm は各列のノルムを返します。

  • A が多次元配列である場合、vecnorm は、サイズが 1 に等しくない最初の配列次元に沿ってノルムを返します。

N = vecnorm(A,p)一般化ベクトル p ノルムを計算します。

N = vecnorm(A,p,dim) は、次元 dim に沿って処理します。この次元のサイズは 1 に縮小しますが、他の次元はいずれもサイズが変化しません。

すべて折りたたむ

3 次元空間の点 (2,2,2) に対応するベクトルの 2 ノルムを計算します。2 ノルムは、ベクトルのユークリッド長 12 と同じです。

x = [2 2 2];
n = vecnorm(x)
n = 3.4641

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

n = vecnorm(x,1)
n = 6

行列の列の 2 ノルムを計算します。

A = [2 0 1;-1 1 0;-3 3 0]
A = 3×3

     2     0     1
    -1     1     0
    -3     3     0

n = vecnorm(A)
n = 1×3

    3.7417    3.1623    1.0000

代わりに、関数 norm を使用して行列全体の 2 ノルムを計算することもできます。

入力引数

すべて折りたたむ

入力配列。ベクトル、行列または多次元配列として指定します。慣例により、演算の対象となるベクトルに NaN 値が含まれている場合、vecnormNaN 値を返します。

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

ノルムのタイプ。2 (既定値)、正のスカラー、Inf のいずれかとして指定します。

演算の対象の次元。正の整数のスカラーとして指定します。値を指定しない場合、既定値はサイズが 1 でない最初の配列次元です。

次元 dim は、長さが 1 に縮小した次元を示します。つまり、size(N,dim)1 ですが、他の次元はいずれもサイズが変化しません。

2 次元の入力配列 A について考えます。

  • vecnorm(A,p,1) は各列のノルムを計算します。

    vecnorm(A,p,1) column-wise computation

  • vecnorm(A,p,2) は各行のノルムを計算します。

    vecnorm(A,p,2) row-wise computation

    vecnorm は、dimndims(A) より大きいか、size(A,dim)1 である場合に abs(A) を返します。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

詳細

すべて折りたたむ

ユークリッド ノルム

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

v=k=1N|vk|2.

一般化ベクトル ノルム

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

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

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

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

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

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

拡張機能

バージョン履歴

R2017b で導入