Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МК к лаб работам по Выч мат ИТ.doc
Скачиваний:
1
Добавлен:
18.12.2018
Размер:
880.13 Кб
Скачать

Лабораторная работа № 1

Тема: «Прямые и итерационные методы решения систем линейных уравнений»

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

Технические средства: IBM PS AT.

Программное средство: Delphi или Visual Studio

Теоретические сведения

Система m линейных алгебраических ура­в­не­ний с n не­известными в общем виде может быть за­­­писана сле­ду­ющим образом:

(1.1)

или в матричном виде AX = B, где A - прямоу­голь­­­ная мат­рица размерности mn, X - век­тор n-го по­ряд­ка, B - век­тор m-го порядка. Ре­ше­нием сис­­темы (1) на­зы­ва­ет­ся такая упо­­ря­до­ченная со­­во­куп­ность чисел которая об­ра­ща­ет все уравнения сис­­те­мы в вер­ные ра­­вен­ства. Две системы называются эк­­ви­ва­лентными (рав­но­­силь­ны­ми), если множества их ре­ше­­ний сов­­падают.

Система линейных уравнений называется сов­­­мест­­­­ной, ес­ли она имеет хотя бы одно ре­ше­ние, и не­­сов­­мест­ной - в про­тивном случае. Сов­мест­­ная сис­­те­ма на­зы­ва­ет­­ся определенной, если она имеет един­ст­вен­ное ре­ше­ние, и не­оп­ре­де­лен­ной - в про­тив­­ном слу­чае. Система яв­ля­­ется опре­де­­ленной, ес­­ли rang A = rang B, где матри­ца B, по­­лученная из матрицы A добавлением стол­бца сво­бод­ных чле­­нов, на­зы­­вается рас­ши­рен­ной.

Если матрица A - квадратная и det A  0, то она на­зы­­вается неособенной (невырожденной), при этом сис­те­ма уравнений, имеющая не­о­со­бен­ную мат­ри­цу A, сов­мес­­тна и имеет единственное ре­­шение.

Eсли уравнения (1) являются не­ли­ней­­­ными от­но­си­тельно неизвестного вектора Х, то со­от­вет­с­т­ву­ю­щая сис­тема, записанная в век­тор­ной форме

(1.2)

на­­­зы­вается системой нелинейных уравнений. Она мо­жет быть также представлена в ко­орди­натном виде:

1 < k < n.

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

Метод исключения Гаусса для систем линейных уравнений

Из курса линейной алгебры из­­вестно, что ре­ше­ние системы линейных урав­не­ний можно прос­то най­ти по правилу Крамера - че­­рез отношение оп­ре­де­ли­те­лей. Но этот способ не очень удобен для ре­шения сис­тем урав­не­ний с чис­­лом неизвестных > 5, т.е. когда най­ти опре­де­ли­тель сложно, а при чис­­ле не­известных > 10 на­­­хож­де­ние оп­ре­­де­ли­теля с до­ста­точ­но высокой сте­пенью точ­нос­ти ста­но­вится са­мо­сто­ятельной вы­чис­­ли­тель­­­ной за­дачей. В этих слу­чаях применяют иные методы ре­­­шения, среди ко­то­рых самым рас­про­­стра­нен­ным яв­ля­ет­ся метод Га­ус­са.

Запишем систему линейных уравнений (1.1) в ви­де

(1.3)

Если матрица системы верхняя треугольная, т.е. ее эле­мен­ты ниже главной диагонали рав­ны ну­­лю, то все хj можно найти по­сле­до­ва­тель­но, на­­чиная с хn, по фор­му­ле

. (1.4)

При j > k и аjj  0 этот метод дает возможность най­­ти решение системы.

Метод Гаусса для произвольной системы (1.1) ос­­­но­ван на приведении матрицы А сис­те­мы к верх­­ней или ниж­ней треугольной. Для это­го выч­и­та­ют из второго уравнения системы первое, умно­­­­женное на такое число, при котором а21 = 0, т.е. ко­­­эф­фи­ци­ент при х1 во второй строке должен быть ра­вен ну­­лю. Затем та­ким же образом ис­­клю­чают по­­сле­до­­ва­­тельно а31 , а41 , ..., аm1 . После за­вер­ше­­ния вы­чис­­ле­ний все эле­мен­ты первого столбца, кроме а11, бу­­дут равны ну­лю.

Продолжая этот процесс, исключают из мат­ри­­­цы А все коэффициенты аij, лежащие ниже главной ди­а­го­на­ли.

Построим общие формулы этого процесса. Пусть ис­клю­чены коэффициенты из k - 1 столб­ца. Тог­да ниже глав­ной диагонали долж­­­ны остаться урав­не­ния с нену­ле­выми эле­­­ментами:

Умножим k-ю строку на число

и вычтем ее из m-й строки. Первый не­ну­­­левой элемент этой строки обратится в нуль, а ос­­­таль­ные изменятся по формулам

(1.5)

Произведя вычисления по формулам (1.5) при всех ука­занных индексах, исключим эле­мен­ты k-го столб­ца. Та­кое исключение назовем цик­­лом, а вы­­полнение всех цик­лов назовем пря­мым ходом ис­ключения.

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

Формальные параметры процедуры. Входные: n (тип in­te­ger) - порядок системы; а (тип real) - мас­сив ко­эф­фи­ци­­ентов системы размером nn; b (тип real) - массив-стро­­ка свободных чле­нов. Выход­ные: х (тип real) - мас­сив-строка, в который по­ме­ща­ется ре­­шение системы.