Fork me on GitHub

matlab中norm与svd函数用法

格式:n=norm(A,p)

功能:norm函数可计算几种不同类型的矩阵范数,根据p的不同可得到不同的范数

以下是Matlab中help norm 的解释:

 NORM   Matrix or vector norm.
    For matrices...
      NORM(X) is the 2-norm of X.
      NORM(X,2) is the same as NORM(X).
      NORM(X,1) is the 1-norm of X.
      NORM(X,inf) is the infinity norm of X.
      NORM(X,'fro') is the Frobenius norm of 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)   
返回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))

posted @ 2016-12-10 20:06  wangduo  阅读(765)  评论(0编辑  收藏  举报