
Лабораторная робота №3.
Тема: Численные методы решения систем линейных уравнений.
Цель: сформировать у студентов представления о прямых и итерационных методах решения систем линейных уравнений, выработать умения составлять и применять алгоритмы и программы для решения систем уравнений, дать навыки в использовании программных средств для решения систем уравнений.
Ход работы:
Запустите МаthCad.
Метод Гаусса—Жордана.
Решить систему уравнений методом Гаусса—Жордана с точностью = 0,001:
Решение с использованием встроенных функций Mathcad:
Введите матрицу коэффициентов при неизвестных А и матрицу свободных членов В:
Задайте функцию, реализующую метод Гаусса—Жордана. Аргументы функции: А — матрица коэффициентов при неизвестных, В - матрица свободных членов:
Проверьте решение с помощью встроенных функций Mathcad: 1- с помощью функции lsolve; 2 - матричный способ;
1.
2.
Метод Гаусса:
функция, переставляющая строки матрицы при обнаружении в текущей строке нулевого элемента на главной диагонали
прямой ход – приведение системы к треугольному виду
обратный ход – нахождение значений неизвестных:
Задайте матрицу системы и вектора-столбца свободных членов:
Проверьте правильность работы функции Simplex (прямой ход):
Решите систему линейных уравнений методом Гаусса (обратный ход):
Решите систему 2.1 методом Гаусса.
Метод простой итерации.
Решить систему линейных уравнений :
Приведите исходную систему к виду с преобладающими диагональными коэффициентами. Для этого, например, первое уравнение запишите третьим, третье уравнение умножьте на 2, вычтите второе и запишите на первом месте, а второе уравнение умножьте на 2, вычтите первое и запишите на втором месте
Коэффициенты, расположенные по диагонали и подчеркнутые, являются преобладающими по строке.
Составьте матрицы коэффициентов при неизвестных в левой части и свободных членов.
Получите преобразованную систему:
Получите систему:
Для обеспечения условий сходимости нужно получить такую систему, чтобы коэффициенты в правой части системы были существенно меньше единицы.
Проверьте одно из условий сходимости итерационного процесса, для чего установите сходимость, т. е. "погрузите" систему в пространство с одной из трех метрик:
В пакете Mathcad коэффициенты сжатия можно определить с помощью функций normi (АА) , norml (АА) , norme (АА) (соответственно для: )
или воспользоваться формулами для определения коэффициента сжатия, данными ниже, набирая их учитывайте, что сначала набирается функция max(), а внутри скобок выберите
матрицу 3 строки, 1 столбец и в каждой строке набирайте формулу, значок суммы берем из
Заметьте, что все коэффициенты
меньше единицы, значит, систему можно
"погрузить" в пространство с любой
из метрик. Остановимся на пространстве
с метрикой
.
Итак, итерационный процесс
сходится, причем
=
0,733 .
Найдите критерий достижения заданной точности при решении системы уравнений методом простой итерации. Для достижения точности
= 0,001 приближения нужно находить до тех пор, пока будет выполняться неравенство
, т. е. расстояние между двумя соседними приближениями не должно превышать числа Е.
Вычислите значения итерационной последовательности:
Для определения, какое приближение будет являться решением, необходимо найти расстояния между двумя соседними приближениями по метрике (т. к. выбрано это пространство)
Введите формулу и поставьте равно:
Полученное
десятое значение суммы модулей разностей
коэффициентов при неизвестных, равное
,
удовлетворяет условию критерия. Это
значит, что в таблице значений х
девятый
столбец является решением системы
уравнений методом простой итерации.
Визуализируйте полученные значения, построив график:
Графики показывают, что, начиная с к = 10, все три линии перестают преломляться, а значит, десятое приближение будет являться решением системы уравнений методом простой итерации.
Ответ:
решением системы является вектор-столбец
,
полученный на десятом шаге итерации.