Мне нужно найти модуль 29, обратный матрице 30x30. Я пробовал использовать det^-1 * adjoint, но я не могу найти det^-1, потому что det - что-то вроде -7.4269e + 16. Есть идеи?Поиск матрицы по модулю n в октаве
1
A
ответ
1
Как и в вычислении модульных полномочий, то целесообразно и даже необходимо для эффективной реализации, чтобы уменьшить промежуточные результаты по модулю 29.
Таким образом, если нет выделенного алгоритма для этой функции или модульных целого типа номера используемого в стандартных вызовах функций в Matlab вам придется реализовать вариант Gauß-алгоритма самостоятельно.
Использование Google один конечно находит решения для всего: modsolve.m
Матрица (рядом) единственного числа. Также см. Обсуждение: http://math.stackexchange.com/questions/326063/inverse-of-a-matrix-mod-26 Вы также можете попробовать: http://planetcalc.com/3324/ - он должен дать ответьте, или скажите, что оно единственное. –
Большой определитель указывает на большое число условий, что бессмысленно для модульных вычислений. В этом случае матрица является единственной, если детерминант является целым числом, кратным 29. – LutzL
Что такое матрица? Я думаю, что можно использовать [Maxima] (http://maxima.sourceforge.net), чтобы найти модульный обратный. Maxima будет использовать точную арифметику, чтобы номер условия не влиял. Maxima, похоже, не имеет встроенной функции для модульной инверсии, но ее функция 'linsolve' будет решать уравнения с модульной арифметикой, поэтому можно сделать это с небольшой дополнительной работой. Я могу помочь с этим, если вы хотите спуститься по этой дороге. –