Нажмите LU(A) и откройте пошаговое решение: там L и U строятся рядом, вместе с матрицей перестановок P, если строки пришлось менять местами.
Зачем нужно разложение
Запись A = L·U представляет матрицу произведением нижней и верхней треугольных. По сути это метод Гаусса, только сохранённый: U — результат исключения, а L помнит множители, которые при этом использовались.
Польза видна, как только правых частей становится несколько. Система Ax = b распадается на Ly = b и Ux = y — две треугольные системы, решаемые прямым и обратным ходом за n² операций. Дорогое разложение выполняется один раз, а каждая следующая правая часть обходится почти даром; именно поэтому численные библиотеки поступают так, а не обращают матрицу.
Разобранный пример
| 4 | 3 |
| 6 | 3 |
| 1 | 0 |
| 1,5 | 1 |
| 4 | 3 |
| 0 | −1,5 |
Число 1,5 в L — это в точности множитель, на который умножили первую строку перед вычитанием из второй. Определитель равен произведению диагонали U, умноженному на −1 за каждую перестановку строк: для уже разложенной матрицы он достаётся бесплатно.
Частые ошибки
- Не замечать матрицу перестановок. С выбором главного элемента верно P·A = L·U, а не A = L·U.
- Ждать единственного разложения. Единственным оно становится лишь после соглашения, что на диагонали L стоят единицы.
- Применять его к прямоугольной матрице. В этом виде LU-разложение рассчитано на квадратные матрицы.
- Обходиться без выбора главного элемента. Ноль в ведущей позиции останавливает алгоритм, а очень малое значение губит точность.