Чтение онлайн

на главную

Жанры

Maple 9.5/10 в математике, физике и образовании

Дьяконов Владимир Павлович

Шрифт:

Конечной целью большинства матричных операций является решение систем линейных уравнений. Для этого пакет LinearAlgebra предлагает ряд методов и средств их реализации. Основными методами решения являются следующие:

• обращением матрицы коэффициентов уравнений и решением вида Х=А– 1;

• применением метода LU-декомпозиции (method='LU');

• применением метода QR-декомпозиции (method='QР');

• применением метода декомпозиция Холесского (method='Cholesky');

• метод обратной подстановки (method='subs').

Решение с применением обращения матрицы коэффициентов левой части системы уравнений А уже не раз рассматривалось и вполне очевидно. В связи с этим отметим особенности решения систем линейных уравнений

другими методами. Любопытно отметить, что указание метода может быть сделано и без его заключения в одинарные кавычки.

6.3.4. Решение системы линейных уравнений методом LU-декомпозиции

Зададим матрицу А левой части системы уравнений и вектор свободных членов В:

> restart; with(LinearAlgebra): UseHardwareFloats := false:

> A:=<<4|.24|-.08>,<.09|3|-.15>,<.041-.08|4>>; B:=<8, 9, 20>;

Прямое решение этим методом выполняется одной из двух команд, отличающихся формой записи:

> х := LinearSolve(А, В, method= 'LU');

х := LinearSolve(<А|B>, method='LU');

Проверим решение данной системы уравнений:

> А.х-В;

В данном случае решение точно (в пределах точности вычислений по умолчанию).

Можно также выполнить решение проведя отдельно LU-декомпозицию, что делает наглядным алгоритм решения и операции подстановки:

> P,L,U:=LUDecomposition(A);

> V2:=Transpose(Р).В;

> V3:=ForwardSubstitute(L,V2);

> x:=BackwardSubstitute(U,V3);

> A.x-B;

6.3.5. Решение системы линейных уравнений методом QR-декомпозиции

Выполним теперь решение для тех же исходных данных методом QR-декомпозиции, обозначив метод в функции LinearSolve:

> х := LinearSolve(А, В, method='QR');

> A.x-B;

Другой, более явный, но и более громоздкий метод решения представлен ниже:

> Q,R := QRDecomposition(А);

> V2:=Transpose(Q).B;

> x:=BackwardSubstitute(R,V2);

> A.x-B;

Тут,

пожалуй, любопытно, что погрешность вычислений оказалась несколько выше, чем при использовании функции LinearSolve. Однако погрешность не выходит за рамки допустимой по умолчанию.

6.3.6. Решение системы линейных уравнений методом декомпозиции Холесски

Выполним решение еще и методом декомпозиции Холесски:

> x:=LinearSolve(А, В, method='Cholesky');

Приведем еще один пример решения системы из четырех линейных уравнений с применением метода декомпозиции Холесски:

> M_temp := Matrix(4, (i,j)->i+i*j-7, shape=triangular[lower]);

M :=M_temp.Transpose(M_temp);

IsMatrixShape(M, symmetric); IsDefinite(M);

> V := <6,1,3,-2>;

> x:=LinearSolve(M, V, method='Cholesky');

> M.x-V;

> M:=Matrix(3, (i,j)->i+2*j-8, shape=triangular[lower]); V:=<7,8,1>;

> x := ForwardSubstitute(M, V);

x := LinearSolve(M, V);

6.3.7. Одновременное решение нескольких систем уравнений

Мы ограничимся простым примером одновременного решения сразу трех систем уравнений. Дабы не загромождать книгу массивными выражениями, ограничимся решением систем из двух линейных уравнений, матрица коэффициентов у которых одна, а векторы свободных членов разные. Ниже показан пример решения такой системы:

> М:=Matrix([[1.,3],[4,5]],datatype=float);

V1:=<1.,2>;

V2:=<7,-11>;

V3:=<-34,-67>;

> LinearSolve(М,<V1|V2|V3>);

> М: =Matrix([[1.,3],[4,5]],datatype=float);

ipiv, M := LUDecomposition(M,output=['NAG'], inplace);

LinearSolve([ipiv, M], <V1|V2|V3>);

Поделиться:
Популярные книги

Черный Маг Императора 13

Герда Александр
13. Черный маг императора
Фантастика:
попаданцы
аниме
сказочная фантастика
фэнтези
5.00
рейтинг книги
Черный Маг Императора 13

Последняя Арена 4

Греков Сергей
4. Последняя Арена
Фантастика:
рпг
постапокалипсис
5.00
рейтинг книги
Последняя Арена 4

Маяк надежды

Кас Маркус
5. Артефактор
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Маяк надежды

Великий перелом

Ланцов Михаил Алексеевич
2. Фрунзе
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Великий перелом

Сопротивляйся мне

Вечная Ольга
3. Порочная власть
Любовные романы:
современные любовные романы
эро литература
6.00
рейтинг книги
Сопротивляйся мне

Инквизитор Тьмы 2

Шмаков Алексей Семенович
2. Инквизитор Тьмы
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Инквизитор Тьмы 2

Мастер Разума V

Кронос Александр
5. Мастер Разума
Фантастика:
городское фэнтези
попаданцы
5.00
рейтинг книги
Мастер Разума V

Бандит 2

Щепетнов Евгений Владимирович
2. Петр Синельников
Фантастика:
боевая фантастика
5.73
рейтинг книги
Бандит 2

Истребители. Трилогия

Поселягин Владимир Геннадьевич
Фантастика:
альтернативная история
7.30
рейтинг книги
Истребители. Трилогия

Гардемарин Ее Величества. Инкарнация

Уленгов Юрий
1. Гардемарин ее величества
Фантастика:
городское фэнтези
попаданцы
альтернативная история
аниме
фантастика: прочее
5.00
рейтинг книги
Гардемарин Ее Величества. Инкарнация

Падение Твердыни

Распопов Дмитрий Викторович
6. Венецианский купец
Фантастика:
попаданцы
альтернативная история
5.33
рейтинг книги
Падение Твердыни

"Дальние горизонты. Дух". Компиляция. Книги 1-25

Усманов Хайдарали
Собрание сочинений
Фантастика:
фэнтези
боевая фантастика
попаданцы
5.00
рейтинг книги
Дальние горизонты. Дух. Компиляция. Книги 1-25

Ох уж этот Мин Джин Хо 2

Кронос Александр
2. Мин Джин Хо
Фантастика:
попаданцы
5.00
рейтинг книги
Ох уж этот Мин Джин Хо 2

Энфис 6

Кронос Александр
6. Эрра
Фантастика:
героическая фантастика
рпг
аниме
5.00
рейтинг книги
Энфис 6