У меня возникли трудности с приемом метода, с помощью которого программа может найти ранг матрицы. В частности, я не совсем понимаю, как вы можете убедиться, что программа поймает все случаи линейных комбинаций, приводящих к зависимостям.C++ - Как найти ранг матрицы
Общая идея, как решить это, это то, что меня интересует. Однако, если вы хотите принять ответ на шаг дальше, я специально ищу решение только для квадратных матриц. Также код будет в C++.
Спасибо за ваше время!
Функция «rank» является численно неустойчивой. Обычно вы хотите знать, является ли матрица * плохо обусловленной *, то есть она очень близка к матрице низкого ранга. Однако, если вас не беспокоит ошибка округления, вы можете использовать исключение Гаусса-Джордана, чтобы сделать треугольную матрицу с тем же рангом. –