Сингулярное разложение
s = svd(A)
[U,S,V] = svd(A)
[U,S,V] = svd(A,'econ')
[U,S,V] = svd(A,0)
возвращает сингулярные значения матричного s = svd(A)
A
в порядке убывания.
выполняет сингулярное разложение матричного [U,S,V] = svd(A)
A
, такого что A = U*S*V'
.
производит разложение размера экономики [U,S,V] = svd(A,'econ')
m
-by-n
матричный A
:
m > n
— Только первые столбцы n
U
вычисляются, и S
является n
-by-n
.
m = n
— svd(A,'econ')
эквивалентен svd(A)
.
m < n
— Только первые столбцы m
V
вычисляются, и S
является m
-by-m
.
Разложение размера экономики удаляет дополнительные строки или столбцы нулей из диагональной матрицы сингулярных значений, S
, наряду со столбцами или в U
или в V
, которые умножают те нули в выражении A = U*S*V'
. Удаление этих нулей и столбцов может улучшить время выполнения и уменьшить требования устройства хранения данных, не ставя под угрозу точность разложения.
производит различное разложение размера экономики [U,S,V] = svd(A,0)
m
-by-n
матричный A
:
m > n
— svd(A,0)
эквивалентен svd(A,'econ')
.
m <= n
— svd(A,0)
эквивалентен svd(A)
.