не требует, чтобы матрицы были
eig(A,B, 'qz') — не требует, чтобы матрицы были симметрическими и возвращает вектор, содержащий обобщенные собственные значения, используя QZ-алгоритм; при явном указании этого флага QZ-алгоритм используется вместо алгоритма Холецкого даже для симметрической матрицы и симметрической положительно определенной матрицы В, так как может давать более стабильные значения, чем предыдущий метод. Для несимметрических матриц в MATLAB 6 всегда используется QZ-алгоритм и параметр 'chol' или 'qz' игнорируется;
[V.D] = eig(A.B) — возвращает диагональную матрицу обобщенных собственных значений D и матрицу V, чьи столбцы являются соответствующими собственными векторами, так чтобы A*V=B*V*D. Пример:
» В = [3 -12 -.6 2*eps:-2 48 -1 -eps;-eps/8 eps/2 -1 10;-.5 -.5 .3 1]
В =
3.0000 -12.0000 -0.60000.0000
-2.0000 48.0000-1.0000-0.0000
-0.0000 0.0000 -1.0000 10.0000
-0.5000 -0.5000 0.3000 1.0000
» [G.H]=eig(B)
G =
-0.2548 0.7420 -0.4842 0.1956
0.9670
0.0193 -0.0388 0.0276
-0.0015 -0.6181 -0.8575 0.9780
-0.0075 -0.2588 -0.1694 -0.0676
H =
48.5287 0 0 0
0 3.1873 0 0
0 0 0.9750 0
0 0 0 -1.6909
svd(X) — возвращает вектор сингулярных чисел. Команда svd выполняет сингулярное разложение матрицы X;
[U.S, V] = svd(X) — вычисляет диагональную матрицу S тех же размеров, которые имеет матрица X, с неотрицательными диагональными элементами в порядке их убывания, и унитарные матрицы U и V, так что X=U*S*V ' ;
Содержание Назад Вперед