Матричная лаборатория MatLab



 

Определитель и ранг матрицы

Для нахождения определителя (детерминанта) и ранга матриц в MATLAB имеются следующие функции:

  • det(X) — возвращает определитель квадратной матрицы X. Если X содержит только целые элементы, то результат — тоже целое число. Использование det(X)=0 как теста на вырожденность матрицы действительно только для матрицы малого порядка с целыми элементами.
Пример:

» А=[2,3,6:1.8.4;3.6,7] 

А = 

2

3

6

1

8

4

3

6

7

» det(A)

ans = 

-29
Детерминант матрицы вычисляется на основе треугольного разложения методом исключения Гаусса:

[L.U>lu(A): s=det(L): d=s*prod(diag(U)).

Ранг матрицы определяется количеством сингулярных чисел, превышающих порог

tol=max(size(A))*nprm(A)*eps.

При этом используется следующий алгоритм:

s=svd(A);tol=max(size(A))*npnri(A)*eps;r=sum(s>tol);

Для вычисления ранга используется функция rank:

  • rank (А) — возвращает количество сингулярных чисел, которые являются большими, чем заданный по умолчанию допуск; 
  • rank(A.tol) — возвращает количество сингулярных чисел, которые превышают tol. Пример:
» rank(hilbdl)) 

ans = 

10

 

Назад Начало Вперед