Жаль, что выбранная матрица, повторенная здесь снова, является либо единственной, либо плохо обусловленной:
A = matrix( [[1,2,3],[11,12,13],[21,22,23]])
По определению, инверсия А при умножении на саму матрицу А должна давать единичную матрицу. А, выбранный в столь похвальном объяснении, этого не делает. На самом деле, просто взглянув на обратное, можно понять, что инверсия не сработала правильно. Посмотрите на величину отдельных терминов - они очень, очень большие по сравнению с терминами исходной матрицы A ...
Примечательно, что люди, выбирая пример матрицы, так часто умудряются выбирать единственную матрицу!
У меня возникла проблема с решением, так что изучите ее подробнее. На платформе ubuntu-kubuntu пакет Debian numpy не имеет матрицы и подпакетов linalg, поэтому в дополнение к импорту numpy необходимо также импортировать scipy.
Если диагональные члены A умножить на достаточно большой коэффициент, скажем 2, матрица, скорее всего, перестанет быть единственной или почти единственной. Итак
A = matrix( [[2,2,3],[11,24,13],[21,22,46]])
не становится ни единичным, ни почти единичным, и этот пример дает значимые результаты ... При работе с плавающими числами нужно следить за последствиями неизбежных ошибок округления.
Спасибо за ваш вклад,
OldAl.