Матричное разложение для решения линейных систем
decomposition
создает переиспользуемые матричные декомпозиции (LU, LDL, Cholesky, QR и многое другое), которые позволяют более эффективно решать линейные системы (Ax = b или xA = b). Для примера, после вычисления dA = decomposition(A)
вызов dA\b
возвращает тот же вектор, что и A\b
, но обычно намного быстрее. decomposition
объекты хорошо подходят для решения задач, которые требуют повторных решений, поскольку разложение матрицы коэффициентов не нужно выполнять несколько раз.
Можно использовать decomposition
dA объекта
со многими из тех же операторов, которые можно использовать на исходной матрице коэффициентов A
:
Комплексный сопряженный транспонирующий dA'
Отрицание -dA
Умножьте или разделите на скаляр, используя c*dA
или dA/c
.
Решить линейную систему Ax = b используя x = dA\b
.
Решить линейную систему xA = b используя x = b/dA
.
возвращает разложение матрицы dA
= decomposition(A
)A
который можно использовать, чтобы решить линейные системы более эффективно. Тип разложения автоматически выбирается на основе свойств матрицы входа.
задает, что только верхний или нижний треугольный фрагмент dA
= decomposition(A
,type
,triangularFlag
)A
должен использоваться в разложении. triangularFlag
можно 'upper'
или 'lower'
. С помощью этого синтаксиса тип разложения должен быть 'ldl'
, 'chol'
, или 'triangular'
.
задает дополнительные опции, используя один или несколько dA
= decomposition(___,Name,Value
)Name,Value
пара аргументов с использованием любого из предыдущих синтаксисов. Для примера, dA = decomposition(A,'CheckCondition',false)
задает, чтобы предупреждение не выдавалось на основе условия A
при решении dA\b
.
Основные функции и операторы, которые можно использовать с decomposition
объекты связаны с решением линейных систем уравнений. Если тип разложения 'qr'
, тогда вы не можете решить A'\B
или B/A
. Вместо этого используйте 'cod'
для проблем с этими формами.
ctranspose | Комплексная сопряженная транспозиция |
mldivide | Решите системы линейных уравнений, Ax = B для x |
mrdivide | Решите системы линейных уравнений, xA = B для x |
isIllConditioned | Определите, является ли матрица плохо обусловленной |
Можно также проверить число обусловленности или ранг базовой матрицы decomposition
объекты. Поскольку используются различные алгоритмы, результаты использования этих функций на decomposition
объект может отличаться по сравнению с использованием тех же функций непосредственно на матрице коэффициентов.
rank |
|
rcond |
|