轉置運算子

  • .'是在 MATLAB 中轉向量或矩陣的正確方法。
  • '是在 MATLAB 中採用向量或矩陣的複共軛轉置 (也稱 Hermitian 共軛) 的正確方法。

請注意,對於轉置 .',撇號前面有一段時間。這與 MATLAB 中其他逐元素運算的語法保持一致:*乘以矩陣.*矩陣元素相乘。這兩個命令非常相似,但在概念上非常不同。與其他 MATLAB 命令一樣,這些運算子是語法糖,在執行時變為正確的函式呼叫。正如 == 成為的評估 EQ 功能,認為 .'作為簡寫 transpose 。如果你只寫'(沒有點),你實際上是使用 ctranspose 命令,它計算複共軛轉置 ,也稱為厄米特共軛 ,常用於物理學。只要轉置的向量或矩陣是實值,兩個運算子就會產生相同的結果。但是一旦我們處理複雜的數字 ,如果我們不使用正確的速記,我們將不可避免地遇到問題。 正確取決於你的應用。

考慮以下包含複數的矩陣 C 的示例:

>> C = [1i, 2; 3*1i, 4]
C =
   0.0000 + 1.0000i   2.0000 + 0.0000i
   0.0000 + 3.0000i   4.0000 + 0.0000i

讓我們使用簡寫 .'(帶句號) 進行轉置。輸出是預期的,C 的轉置形式。

>> C.'
ans =
   0.0000 + 1.0000i   0.0000 + 3.0000i
   2.0000 + 0.0000i   4.0000 + 0.0000i

現在,讓我們使用'(沒有句號)。我們看到,除了轉置之外,複數值也已經轉換為它們的複共軛

>> C'
ans =
   0.0000 - 1.0000i   0.0000 - 3.0000i
   2.0000 + 0.0000i   4.0000 + 0.0000i

綜上所述,如果你打算計算 Hermitian 共軛,複共軛轉置,那麼使用'(沒有周期)。如果你只想計算轉置而不復雜地共軛值,請使用 .'(帶週期)。