当前位置:首页 >> 脚本专栏

使用matlab 判断两个矩阵是否相等的实例

数学意义的相等

all(A(:) == B(:))

isequal(A, B)

但须注意的是:B = A,未必能保证 isequal(A, B)返回真,因为如果 A 中包含NaN,因为按照定义,NaN ~= NaN

 A = [1, NaN]
 B = A
 isequal(A, B)
0

 NaN == NaN
0

浮点数相等

对于浮点数矩阵,判断两个矩阵是否精确相等意义不大,真正有意义的比较是比较两个矩阵是否足够接近:

all(abs(A(:)-B(:))<col)

或者:

max(abs(A(:)-B(:))) < col

补充知识:matlab矩阵转置中.'和'的不同

两者对于实矩阵没有差异,均表示转置矩阵

ctranspose:

'表示复共轭转置,转置后虚部符号相反。

transpose:

.'表示非共轭转置,转置后虚部不变

以上这篇使用matlab 判断两个矩阵是否相等的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。