Оба они являются прямыми решателями для решения линейных систем (в отличие от итерационного решателя).
mldivide
AA x = bmldivide
mldivide
для квадратных матриц: если A симметрична и имеет вещественные положительные диагональные элементы, MATLAB пытается факторизацию Холецкого. Если факторизация Холецкого не удалась, MATLAB выполняет симметричную, неопределенную факторизацию. Если A - верхнее число Гессенберга, MATLAB использует исключение Гаусса, чтобы привести систему к треугольной матрице. Если A является квадратным, но не является перестановочным треугольным, симметричным и положительно определенным, или Hessenberg, то MATLAB выполняет общую треугольную факторизацию с использованием факторизации LU с частичным поворотом
linsolve
для квадратных матриц: факторизация LU с частичным поворотом
mldivide
и linsolve
для прямоугольных матриц: QR-факторизация
В linsolve
качестве справки документ предлагает на веб - сайте MathWorks, вы могли бы избежать дополнительных испытаний процесса (Allan использовал слово «над головой» в своем ответе), используя , opts
если и только если вы знаете , чтоA
opts.POSDEF = true; linsolve(A,b,opts)
ИксAopts
Если определенные критерии выполнены, linsolve
и mldivide
использовать тот же процесс факторизации. Например, для плотной положительно определенной системы, удовлетворяющей определенным свойствам, или у вас есть переопределенная система, и оба выполняют наименьшую квадратную подгонку.
Кроме того, linsolve
также может выполнять символьные вычисления . Это удобно, когда у вас есть небольшая недоопределенная система, которая имеет бесконечное количество решений.linsolve
позволяет решить ее символически, mldivide
не может этого сделать. Однако, если переменные не объявлены символически, mldivide
и linsolve
вы получите то же самое предупреждающее сообщение: «Матрица является единственной в точности работы».
Последнее, но не менее важное, linsolve
не поддерживает разреженные системы, такие как следующая матрица (синяя точка означает ненулевой вход). В то время как mldivide
мог справиться с разреженными системами надежно, когда размер меньше 200k на 200k.