matlab中norm函数的用法

时间:2022-08-21 05:27:16

格式:n=norm(A,p)
功能:norm函数可计算几种不同类型的矩阵范数,根据p的不同可得到不同的范数

以下是Matlab中help norm 的解释

NORM   Matrix or vector norm.
    For matrices...
      NORM(X) is the largest singular value of X, max(svd(X)).
      NORM(X,2) is the same as NORM(X).
      NORM(X,1) is the 1-norm of X, the largest column sum,
                      = max(sum(abs(X))).
      NORM(X,inf) is the infinity norm of X, the largest row sum,
                      = max(sum(abs(X'))).
      NORM(X,'fro') is the Frobenius norm, sqrt(sum(diag(X'*X))).
      NORM(X,P) is available for matrix X only if P is 1, 2, inf or 'fro'.
    For vectors...
      NORM(V,P) = sum(abs(V).^P)^(1/P).
      NORM(V) = norm(V,2).
      NORM(V,inf) = max(abs(V)).
      NORM(V,-inf) = min(abs(V)).

1、如果A为矩阵

n=norm(A) 《Simulink与信号处理》

返回A的最大奇异值,即max(svd(A))

n=norm(A,p)

根据p的不同,返回不同的值

 p  返回值
 1  返回A中最大一列和,即max(sum(abs(A)))
 2  返回A的最大奇异值,和n=norm(A)用法一样
inf  返回A中最大一行和,即max(sum(abs(A’)))
 ‘fro’  A和A‘的积的对角线和的平方根,即sqrt(sum(diag(A'*A)))

2、如果A为向量

norm(A,p)

返回向量A的p范数。即返回 sum(abs(A).^p)^(1/p),对任意 1<p<+∞.

norm(A)

返回向量A的2范数,即等价于norm(A,2)。

norm(A,inf)

返回max(abs(A))

norm(A,-inf)

返回min(abs(A))

矩阵 (向量) 的范数运算
为了反映了矩阵 (向量) 某些特性,线性代数中引入了范数的概念,它分为2-范数,1-范数,无穷范数和Frobenius范数等.在MATLAB中,用函数norm( )或normest( ) 计算矩阵 (向量) 的范数.其使用格式如下.
norm(X) —— 计算矩阵 (向量) X的2-范数;
norm(X,2) —— 同上;
norm(X,1) —— 计算矩阵 (向量) X的1-范数;
norm(X,inf) —— 计算矩阵 (向量) X的无穷范数;
norm(X,'fro') —— 计算矩阵 (向量) X的Frobenius范数;
normest(X) —— 只计算矩阵 (向量) X的2-范数;并且是2-范数的估计值,适用于计算norm(X)比较费时的情况.

转载自:https://blog.csdn.net/Evan123mg/article/details/39347949