matlab norm函数可计算几种不同类型的矩阵范数,根据p的不同可得到不同的范数,在这里小编来介绍它的用法以及实例,希望会帮助到你。
方法1当A是向量的时候,法则如下:
norm(A,p) Returns sum(abs(A).^p)^(1/p), for any 1 <= p <= ∞.
norm(A) Returns norm(A,2)
norm(A,inf) Returns max(abs(A)).
norm(A,-inf) Returns min(abs(A)).
2
我们以下面这个例子来说明:
B =
0 1 2
在MATLAB中分别输入如下命令:
当P为正整数时,norm(B,p)=sum(abs(A).^p)^(1/p)
norm(B,2)=norm(B)=5^0.5=2.2361
norm(B,1)=3
norm(B,'inf')=max(abs(B))=2
norm(B,'fro')B的Frobenius范数;
>>norm(B)
ans=
2.2361
>>norm(B,1)
ans=
3
3
步骤比较长,接着来:
norm(B,'inf')=max(abs(B))=2
norm(B,'fro')B的Frobenius范数;
>>norm(B,'inf')
ans=
2
>>norm(B,'inf')
ans=
2.2361
4当A是矩阵的时候:
n = norm(A) returns the largest singular value of A, max(svd(A))
n = norm(A,1) The 1-norm, or largest column sum of A, max(sum(abs(A)).
n = norm(A,2) The largest singular value (same as norm(A)).
n = norm(A,inf) The infinity norm, or largest row sum of A, max(sum(abs(A‘)))
n = norm(A,‘fro‘) The Frobenius-norm of matrix A, sqrt(sum(diag(A‘*A))).
5
以此为例;
A =
0 1 2
3 4 5
6 7 8
在MATLAB中分别输入如下指令:
norm(A)/norm(A,2),返回的是矩阵A的二范数,(二范数j就是矩阵A的2范数就是 A的转置矩阵乘以A特征根 最大值的开根号)
norm(A,1),返回矩阵的1泛数,是最大一列的和,从上面矩阵看,norm(A,1)=15
>>norm(A)
ans=
14.2267
>>norm(A,2)
ans=
14.2267
>>norm(A,1)
ans=
15
6
norm(A,'inf') 返回矩阵的无穷泛数,也就是最大一行的和,norm(A,'inf')=21
norm(A,'fro') 返回矩阵的Frobenius范数,
>>norm(A,'inf')
ans=
21
>>norm(A,'fro')
ans=
14.2829
1当A是向量的时候,法则如下:
norm(A,p) Returns sum(abs(A).^p)^(1/p), for any 1 <= p <= ∞.
norm(A) Returns norm(A,2)
norm(A,inf) Returns max(abs(A)).
norm(A,-inf) Returns min(abs(A)).
2
我们以下面这个例子来说明:
B =
0 1 2
在MATLAB中分别输入如下命令:
当P为正整数时,norm(B,p)=sum(abs(A).^p)^(1/p)
norm(B,2)=norm(B)=5^0.5=2.2361
norm(B,1)=3
norm(B,'inf')=max(abs(B))=2
norm(B,'fro')B的Frobenius范数;
>>norm(B)
ans=
2.2361
>>norm(B,1)
ans=
3
3
步骤比较长,接着来:
norm(B,'inf')=max(abs(B))=2
norm(B,'fro')B的Frobenius范数;
>>norm(B,'inf')
ans=
2
>>norm(B,'inf')
ans=
2.2361
4当A是矩阵的时候:
n = norm(A) returns the largest singular value of A, max(svd(A))
n = norm(A,1) The 1-norm, or largest column sum of A, max(sum(abs(A)).
n = norm(A,2) The largest singular value (same as norm(A)).
n = norm(A,inf) The infinity norm, or largest row sum of A, max(sum(abs(A‘)))
n = norm(A,‘fro‘) The Frobenius-norm of matrix A, sqrt(sum(diag(A‘*A))).
5
以此为例;
A =
0 1 2
3 4 5
6 7 8
在MATLAB中分别输入如下指令:
norm(A)/norm(A,2),返回的是矩阵A的二范数,(二范数j就是矩阵A的2范数就是 A的转置矩阵乘以A特征根 最大值的开根号)
norm(A,1),返回矩阵的1泛数,是最大一列的和,从上面矩阵看,norm(A,1)=15
>>norm(A)
ans=
14.2267
>>norm(A,2)
ans=
14.2267
>>norm(A,1)
ans=
15
6
norm(A,'inf') 返回矩阵的无穷泛数,也就是最大一行的和,norm(A,'inf')=21
norm(A,'fro') 返回矩阵的Frobenius范数,
>>norm(A,'inf')
ans=
21
>>norm(A,'fro')
ans=
14.2829
还没有评论,来说两句吧...