Математические задачи в пакете MathCAD 12



8.3.3.LU-разложение



LU-разложением матрицы А, или треугольным разложением, называется матричное разложение вида PA=LU, где L и U — нижняя и верхняя треугольные матрицы соответственно, ар— (диагональная) матрица перестановок, P, А, L, и — квадратные матрицы одного порядка:

  •  lu (A) — LU-разложение матрицы:

  •  А — квадратная матрица.


Результатом работы встроенной функции LU-разложения является матрица, составленная из матриц L и и соответственно. Чтобы выделить сами матрицы LU-разложения, а именно, P, L, U, необходимо применить функцию выделения подматрицы submatrix (листинг 8.20).

Листинг 8.20. LU-разложение

Треугольное разложение матрицы системы линейных уравнений производится при ее решении численным методом Гаусса. Фактически именно алгоритм LU-разложения заложен во встроенной функции isolve, применяемой для "точного" решения хорошо обусловленных систем (см. разд. 8.1.2). Таким образом, посредством LU-разложения можно решать СЛАУ с хорошо обусловленной матрицей д.

Почему метод LU-разложения является мощным средством решения СЛАУ и особенно важен при обработке соответствующих экспериментальных данных? Чтобы понять это, заменим исходную систему Аx=b эквивалентной системой PLUх=Pb, а ее, в свою очередь, парой других систем: Lу=Pb и Uх=у. Несложно сообразить, что обе системы решаются прямой подстановкой, т. к. матрицы PL и U — треугольные. Сначала из первой СЛАУ определяется промежуточный вектор у, а затем (из второй системы) — искомый вектор х. Главное преимущество метода LU-разложения заключается в том, что явный вид вектора правой части ь при решении СЛАУ используется только на заключительном этапе (в формулах прямого хода), а наиболее трудоемкие операции по вычислению самих матриц b и и вовсе не требуют знания вектора b. Таким образом, если решается серия СЛАУ с одной и той же матрицей А, но разными правыми частями b (что весьма характерно в обратных задачах интерпретации эксперимента), очень выгодно единожды вычислить LU-разложение матрицы А, а уже затем быстрой подстановкой решить каждую из конкретных систем. Сказанное иллюстрирует листинг 8.21, в котором решается две СЛАУ с матрицей из предыдущего листинга и различными векторами правых частей b.