歡迎您光臨本站 註冊首頁

使用matlab 判斷兩個矩陣是否相等的實例

←手機掃碼閱讀     lousu-xi @ 2020-06-12 , reply:0

     數學意義的相等        

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:

.'表示非共軛轉置,轉置後虛部不變 。


[lousu-xi ] 使用matlab 判斷兩個矩陣是否相等的實例已經有346次圍觀

http://coctec.com/docs/program/show-post-238174.html