我正在尝试反转 4x4 矩阵,我已经看到了一些用几十次计算计算行列式的示例,这似乎对我不起作用,我可能只是在某个地方搞砸了,但我一直在尝试为了找到另一种方法来解决这个问题,我的回答是:
public Matrix inverse()
{
double[] array = new double[]{
1/m[0], m[4], m[8], 0,
m[1], 1/m[5], m[9], 0,
m[2], m[6], 1/m[10], 0,
-m[12], -m[13], -m[14], 1/m[15]
};
return new Matrix(array);
}
基本上我所做的是,计算它所有组件的反转,这一直工作得很好,期待数字 15,最后一个数字,由于某种原因它一直在喷出无穷大,有人知道为什么吗?我唯一的猜测是除以零,但接下来的问题是,0 的倒数是什么?答案是 0?
(不确定这是否相关,但我的矩阵是行优先的)