簡體   English   中英

C++ Boost:復矩陣的行列式和求逆

[英]C++ Boost: determinant and inversion of complex matrix

你知道boost有沒有計算復數矩陣的行列式和求逆的函數? 矩陣維數不大(小於 50)。

反演:輸入:矩陣 M = A +i*B,其中 A、B 是兩個維度為 (nxn) 且 n <50 的實數矩陣。

Output:

  • 反演:矩陣 N = C + i D 和 C,D 兩個維度為 (nxn) 的實數矩陣使得:(A +i B)^T (C+ i*D) = I(I:單位矩陣)
  • 行列式: det(A+iB)

我用谷歌搜索但沒有成功。

先感謝您。

最后我知道為什么這些關於矩陣的求逆和行列式的運算符沒有實現。 這是因為我們從實矩陣上的經典算子中得到了這 2 個算子的封閉形式解。

對於矩陣求逆:我們有這個封閉形式的解決方案https://fr.mathworks.com/matlabcentral/fileexchange/49373-complex-matrix-inversion-by-real-matrix-inversion

對於矩陣行列式,我們有:

det((A+iB))= det (A * (I + i A1.B)) (A1是A的逆矩陣)
= det(A) * det (I + i A1.B))

= det(A) * det (U1 (I + iD) U2) (其中U1 = A1.B,U2是U1的逆矩陣,D是U1的對角矩陣)= det(A) *det(I + ID)。 I +iD 的行列式很容易計算出來,它是一個對角矩陣。

所以,det(A+iB) = det(A) * det(I +iD) 其中 D:(A^(-1) * B) 的特征值矩陣

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM