Сингулярное разложение символьной матрицы
[
возвращает числовые унитарные матрицы U
,S
,V
]
= svd(A
)U
и V
со столбцами, содержащими сингулярные векторы и диагональный матричный S
содержа сингулярные значения. Матрицы удовлетворяют условию A = U*S*V'
, где V'
Эрмитово, транспонируют (комплексное сопряженное транспонирование) V
. Сингулярный векторный расчет использует арифметику переменной точности. svd
не вычисляет символьные сингулярные векторы. Поэтому входная матрица A
должно быть конвертируемым к числам с плавающей запятой. Например, это может быть матрица символьных чисел.
[___] = svd(___,
возвращает сингулярные значения в форме, заданной outputForm
)outputForm
использование любого из аргументов ввода или вывода в предыдущих синтаксисах. Задайте outputForm
как 'vector'
возвращать сингулярные значения как вектор-столбец или как 'matrix'
возвращать сингулярные значения как диагональную матрицу. (начиная с R2021b)
Вторые аргументы 0
и 'econ'
только влияйте на форму возвращенных матриц. Эти аргументы не влияют на эффективность расчетов.
Вызов svd
для числовых матриц, которые не являются символьными объектами, вызывает MATLAB® svd
функция.
Матричные расчеты, включающие много символьных переменных, могут быть медленными. Чтобы увеличить вычислительную скорость, сократите количество символьных переменных путем заменения данными значениями некоторые переменные.