2013年3月4日 星期一

8.矩陣轉置運算

在MATLAB中矩陣轉置運算時要注意,若運算對象(運算元)為實數,可使用「'」作矩陣轉置運算例如
>> A=magic(3)
A =
     8     1     6
     3     5     7
     4     9     2
>> A'
ans =
     8     3     4
     1     5     9
     6     7     2
但是,若運算對象為複數,則要使用「.'」作矩陣轉置運算例如
>> z=ones(3)+magic(3)*j
z =
   1.0000 + 8.0000i   1.0000 + 1.0000i   1.0000 + 6.0000i
   1.0000 + 3.0000i   1.0000 + 5.0000i   1.0000 + 7.0000i
   1.0000 + 4.0000i   1.0000 + 9.0000i   1.0000 + 2.0000i
>> z'
ans =
   1.0000 - 8.0000i   1.0000 - 3.0000i   1.0000 - 4.0000i
   1.0000 - 1.0000i   1.0000 - 5.0000i   1.0000 - 9.0000i
   1.0000 - 6.0000i   1.0000 - 7.0000i   1.0000 - 2.0000i
>> z.'
ans =
   1.0000 + 8.0000i   1.0000 + 3.0000i   1.0000 + 4.0000i
   1.0000 + 1.0000i   1.0000 + 5.0000i   1.0000 + 9.0000i
   1.0000 + 6.0000i   1.0000 + 7.0000i   1.0000 + 2.0000i 
由此可看出,若運算對象為複數,只使用「'」作矩陣轉置運算,會得到矩陣共軛轉置,而不是預期中的轉置運算

沒有留言:

張貼留言