Я пытаюсь инвертировать матрицы 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?
(Не уверен, актуально ли это, но мои матрицы строковые)