Противоречивый ранг Matlab для матрицы - PullRequest
0 голосов
/ 21 марта 2012

У меня диагональная матрица со значениями -3,4562e-14, 15,2673, 86,9550, 1,4873e + 03. Matlab говорит, что его ранг равен 3, а rref указывает на то же самое. Почему это так, и как я могу понять, что на самом деле происходит? Кроме того, эта диагональ получена из разложения по собственным значениям, которое вернуло четыре собственных вектора. Исходная матрица:

[ 67.0000  103.0000  -44.5000 -133.5000; 
  103.0000  573.0000  -26.5000 -709.5000; 
 -44.5000  -26.5000   46.7500   20.2500; 
 -133.5000 -709.5000   20.2500  902.7500]

1 Ответ

4 голосов
/ 21 марта 2012

Исходная матрица плохо подготовлена.Наименьшее собственное значение имеет порядок 1e-14, который близок к eps, а наибольшее значение имеет порядок 1e + 03.

Номер кондиционирования larget singular value/smallest singular value.В случае, если матрица нормальная, что также является вашим случаем, то есть larget eigenvalue/smallest eigenvalue.

В вашем случае это порядок 1e + 17, который очень велик, и поэтому наименьшее собственное значение считается равным 0 на rank, поэтому rank сообщает 3.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...