Я использую Научную библиотеку GNU для реализации калькулятора, который должен уметь возводить матрицы в степень. К сожалению, похоже, что в GSL нет такой функции для четного умножения матриц (функция gsl_matrix_mul_elements()
умножает только с использованием процесса сложения) и, соответственно, без возведения в степень.
Я хочу иметь возможность возводить в отрицательные степени, что требует способности принимать обратное. Из моих поисков я не смог найти никакого звукового кода для вычисления обратных произвольных матриц (только те, которые имеют определенные размеры), и руководства, которые я нашел для выполнения этого вручную, используют умные «бумажные трюки», которые не не работает в коде.
Существует ли общий алгоритм, который можно использовать для вычисления обратной матрицы любого размера (конечно, за исключением случая, когда нельзя вычислить обратную)?
LU
разложением? - person John Alexiou   schedule 31.05.2015GSL
, открытая статистическая библиотека C Apophenia (apophenia .info) может быть тем, что вы ищете. Требуется немного обучения, чтобы разобраться со структурами данных, а что нет, но как только вы поймете, как это работает, тонна вещей в GSL (например, инверсия матриц) будет хорошо абстрагирована. Прочитав небольшое введение, перейдите на apophenia.info/group__linear__алгебра.html для получения дополнительной информации о инверсия матрицы в частности. - person DIMMSum   schedule 01.06.2015