如何計算NxN矩陣C#的行列式?用C#計算NxN矩陣行列式
2
A
回答
3
7
OP張貼another question具體詢問關於4x4矩陣的問題,該矩陣已被封閉爲與此問題完全相同的副本。好吧,如果你不是在尋找一個通用的解決方案,而是被限制在單獨4X4矩陣,那麼你可以使用這個難看,但嘗試和真正的代碼:
public double GetDeterminant() {
var m = _values;
return
m[12] * m[9] * m[6] * m[3] - m[8] * m[13] * m[6] * m[3] -
m[12] * m[5] * m[10] * m[3] + m[4] * m[13] * m[10] * m[3] +
m[8] * m[5] * m[14] * m[3] - m[4] * m[9] * m[14] * m[3] -
m[12] * m[9] * m[2] * m[7] + m[8] * m[13] * m[2] * m[7] +
m[12] * m[1] * m[10] * m[7] - m[0] * m[13] * m[10] * m[7] -
m[8] * m[1] * m[14] * m[7] + m[0] * m[9] * m[14] * m[7] +
m[12] * m[5] * m[2] * m[11] - m[4] * m[13] * m[2] * m[11] -
m[12] * m[1] * m[6] * m[11] + m[0] * m[13] * m[6] * m[11] +
m[4] * m[1] * m[14] * m[11] - m[0] * m[5] * m[14] * m[11] -
m[8] * m[5] * m[2] * m[15] + m[4] * m[9] * m[2] * m[15] +
m[8] * m[1] * m[6] * m[15] - m[0] * m[9] * m[6] * m[15] -
m[4] * m[1] * m[10] * m[15] + m[0] * m[5] * m[10] * m[15];
}
它假定您存儲矢量數據一個16元件陣列中稱爲_values
(的double
在這種情況下,但float
將工作太),按以下順序:
0, 1, 2, 3,
4, 5, 6, 7,
8, 9, 10, 11,
12, 13, 14, 15
0
的標準方法是LU decomposition。您可能想使用庫而不是自己編寫它。我不知道C#,但40年的標準是LAPACK。
相關問題
- 1. C程序來計算一個NxN矩陣的行列式
- 2. 遞歸計算矩陣(nxn)的行列式
- 3. 計算矩陣的行列式
- 4. 使用python計算矩陣行列式的行列式
- 5. NxN遞歸計算數組行列式C#
- 6. 使用lapack在C/C++中計算矩陣的逆矩陣
- 7. 如何使用lapack ++(2.5+)計算行列式矩陣++(2.5+)
- 8. 用cublas設備API計算矩陣行列式
- 9. 創建NxN矩陣mathematica
- 10. 矩陣計算
- 11. 計算矩陣
- 12. C++庫用於計算矩陣指數
- 13. 旋轉矩陣按列計算而不是按行計算
- 14. 斯威夫特的矩陣行列式計算器
- 15. 計算未成年人的矩陣行列式!
- 16. 使用java進行矩陣計算
- 17. 計算在矩陣
- 18. CSS矩陣計算
- 19. 矩陣計算MATLAB
- 20. 矩陣R中計算矩陣
- 21. 在計算最終骨骼矩陣時並行計算骨骼矩陣i Hirerachy
- 22. 分佈式互相關矩陣計算
- 23. 計算協方差矩陣式
- 24. 根據列和行總計計算值的矩陣
- 25. 返回NxN小波矩陣的C/C++小波庫
- 26. 如何用TensorFlow計算矩陣運算?
- 27. 計算給定行向量矩陣的距離矩陣
- 28. Javascript矩陣行列式
- 29. 只計算矩陣積的必要行
- 30. python numpy:計算跨矩陣的行
這功課嗎? – 2010-05-27 15:58:12
定義不夠:http://en.wikipedia.org/wiki/Determinant?當您嘗試在C#上實現它時,您是否遇到過一些您可能會遇到的特定問題? – 2010-05-27 15:59:31
給我們你到目前爲止的代碼,我們會幫助你。但我們不會爲你編碼。 – 2010-05-27 16:19:17