gpt4 book ai didi

c# - 在 C# 中计算 NxN 矩阵行列式

转载 作者:太空宇宙 更新时间:2023-11-03 17:22:49 25 4
gpt4 key购买 nike

如何计算 NxN 矩阵的行列式 C#?

最佳答案

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];
}

它假定您将矢量数据存储在一个名为 _values 的 16 元素数组中(在本例中为 double,但 float 可以工作也),按以下顺序:

0, 1, 2, 3,
4, 5, 6, 7,
8, 9, 10, 11,
12, 13, 14, 15

关于c# - 在 C# 中计算 NxN 矩阵行列式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2922690/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com