それではx = [1 2 3;4 5 6]
なぜnorm(x,2)
と違うのかnorm(x(:),2)
norm(x,2) = 9.5080
とnorm(x(:),2)=9.5394
。
このプログラムを Matlab R2012a で実行しました。
ノルムの Matlab ヘルプで定義されているように、戻り値は行列とsum(abs(A).^2)^(1/2)
ベクトルの「最大特異値」です。
追加資料: ウィキペディア - マトリックス ノルム
x(:)
はベクトルです。コマンド ラインで単純に入力した場合の Matlab の戻り値を確認してください。x
行列です。行列の 2 ノルムとベクトルの 2 ノルムは異なる方法で計算されます。一般に、配列の要素のベクトルの 2 ノルムは、配列の 2 ノルムと同じにはなりません。詳細については、古き良き Golub と Van Loan を参照してください。
行列と配列の 2 ノルムが異なるのはなぜですか? それは数学であるため、ここではトピックから外れているので、あえて答えません。