Скачиваний:
97
Добавлен:
27.04.2015
Размер:
705.02 Кб
Скачать

6.9.5. Метод прогонки

При преобразовании системы 6.9.1-1 к треугольному виду получаем следующую систему:

(6.9.5-1)

- элементы главной диагонали ();- элементы над главной диагональю;- элементы под главной диагональю.

Метод прогонки состоит из двух этапов:

  • прямая прогонка,

  • обратная прогонка.

С помощью прогоночных коэффициентов ивыражаем

, ,(6.9.5-2)

Рекуррентная формула для любого номера i =2,3,...,n-1

(6.9.5-3)

Обратная прогонка состоит в последовательном вычислении

далее .

Доказано, что при выполнении условия причем хотя бы для одного значения i, имеет место строгое неравенство, система имеет единственное решение.

Замечания:

  • условие является достаточным условием устойчивости метода прогонки относительно погрешности округления;

  • метод прогонки позволяет решать большие системы уравнений.

Схема алгоритма решения систем линейных уравнений методом прогонки приведена на рис. 6.9.5-1.

Рис. 6.9.5-1. Схема алгоритма метода прогонки

6.9.6. Технология решения систем линейных уравнений средствами математических пакетов

6.9.6.1. Технология решения систем линейных уравнений средствами MathCad

В пакете Mathcad системы линейных уравнений решаются с использованием вычислительного блока Given и функции Find. Однако в том случае, когда система линейных уравнений невырождена, то есть ее определитель отличен от нуля, более изящным (хотя и не самым эффективным с точки зрения вычислительной математики) является матричный способ решения.

Пример 6.9.6-1. Решить линейную систему уравнений.

Пример 6.9.6-2. Решить линейную систему уравнений с помощью встроенной функции lsolve( ).

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

Если система линейных уравнений не имеет точного решения, то вместо функции Find(x,y) следует использовать функцию Minner(x,y), позволяющую получить приближенное решение системы. При этом если точное решение существует, то функции Find( ) и Minner( ) дают одинаковые результаты.

Пример 6.9.6-3. Решить линейную систему уравнений с помощью встроенных функций Find( ) и Minner( ).

Наряду с использованием встроенных функций пользователь может самостоятельно реализовать численный метод решения системы линейных уравнений, например, метод итераций. Для этого исходную систему уравнений следует привести к виду:. В методе итераций последовательность приближений к решению определяется соотношением, гдеk=0,1, ..(n-1), а (n-1) – количество неизвестных. В качестве начального приближения может быть выбран любой вектор. Известно, что метод итераций сходится, если для нормы матрицы выполнено условие.

Пример 6.9.5-4. В данном примере справа от уравнений указаны преобразования, которые выполнены с целью обеспечения сходимости.

Приведем полученную систему уравнений к виду, удобному для итераций:

Норма матрицы, состоящая из сумм модулей коэффициентов при неизвестных в правых частях уравнения, равна {0.53; 0.75; 0.57}=0.75<1.

Для вычисления используем следующую итеративную формулу метода итераций:

.

Выбрав в качестве начальных приближений значения свободных членов, выполним 3 итерации, обеспечив точность результатов 0.01.

1-я итерация

2-я итерация

3-я итерация

Соседние файлы в папке Пособие-Раздела-06