Решение систем линейных уравнений
решает линейную систему A X = B с помощью одного из этих методов:X = linsolve(A,B)
Когда A является квадратным, linsolve LU-факторизация использования с частичным поворотом.
Для всех других случаев, linsolve QR-факторизация использования с поворотом столбца.
linsolve предупреждает если A плохо обусловливается (для квадратных матриц) или неполный ранг (для прямоугольных матриц).
использует соответствующий решатель, как определено структурой опций X = linsolve(A,B,opts)opts. Поля в opts логические значения, описывающие свойства матричного A. Например, если A верхняя треугольная матрица, можно установить opts.UT = true сделать linsolve используйте решатель, спроектированный в верхних треугольных матрицах. linsolve не тестирует, чтобы проверить тот A задали свойства в opts.
[ также возвращает X,r] = linsolve(___)r, который является обратной величиной числа обусловленности A (для квадратных матриц) или ранг A (для прямоугольных матриц). Можно использовать любую из комбинаций входных аргументов в предыдущих синтаксисах. С этим синтаксисом, linsolve не предупреждает если A плохо обусловливается или неполный ранг.
Преимущество скорости linsolve может варьироваться в зависимости от матричной структуры и относительной оптимизации базовых алгоритмов. В некоторых случаях (такой как с маленькими матрицами) не может быть никакого ускорения по сравнению с mldivide. Преимущество скорости с linsolve возникает путем предотвращения дорогостоящих проверок на свойствах больших матриц, или путем выбора алгоритма, который лучше подходит для входа, чем выбор что mldivide делает.