Метод Гаусса с выбором главного элемента (метод последовательного исключения неизвестных)

 

Процесс решения системы уравнений методом Гаусса делится на два этапа. На первом этапе (прямой ход) последовательным исключением неизвестных составляется преобразованная, эквивалентная система уравнений с треугольной матрицей, в которой все элементы под главной диагональю равны нулю. При этом одно из уравнений в системе содержит только одну неизвестную, а в каждом следующем - добавляется еще по одной неизвестной. На втором этапе (обратный ход) решается преобразованная система уравнений.

 

6.2.1 Алгоритм метода Гаусса

Прямой ход:

а) среди элементов матрицы А аij, i,j=1…n выбирается наибольший по модулю аpq называемый главным элементом. Соответственно строка с этим элементом будет главной строкой. Предположим, что аpq=a11, если это не так, то меняют местами первую строку со строкой p и первый столбец со столбцом q, при этом совершают перенумерацию коэффициентов и неизвестных. Информацию о перенумерации необходимо запомнить. Теперь первая строка становится главной;

б) полученное первое уравнение системы делится на a11 = apq и получают уравнение вида:

x1+c12x2+… +c1nxn=d1, (6.7)

где cij=a1j/a11, d1=b1/a11, j=2…n;

в) исключают, неизвестную величину х1 из каждого уравнения исходной системы начиная со второго, путем вычитания уравнения шага б), умноженного на коэффициент аi1, при х1 в соответствующем уравнении. Отбрасывают главную строку и первый столбец матрицы А и получают преобразованную систему уравнений:

c22x2+c23x3+… +c2nxn=d2

. . . . . . . . . . . . . . . . . . . . , (6.8)

cn2x2+cn3x3+… +cnnxn=dn

 

где cij=aij-cijai1, di=bi-diai1; (6.9)

г) над системой шага в) (6.8) повторяют операции шагов а) - в), в результате чего получают систему уравнений, содержащих неизвестные х3… хn. Такие преобразования продолжают до тех пор, пока не получат одно уравнение с одним неизвестным:

cnnxn=dn (6.10)

Это уравнение также считают главным.

д) объединяют все главные уравнения и получают систему с треугольной матрицей, эквивалентную исходной:

x1+c12x2+c13x3+… +c1nxn=d1

c22x2+c23x3+… +c2nxn=d2

c33x3+… +c3nxn=d3 (6.11 )

. . . . . . . . . . . . .

cnnxn=dn

 

Обратный ход.

Из системы шага д) (6.11) неизвестные определяются в обратном порядке:

xn=dn/cnn

xn-1=dn-1-cn-1xn

. . . . . . . . . . . . . . ( 6.12 )

x1=d1-c12x2-c13x3-… -c1nxn

 

В случае вырожденной матрицы сnn= 0, получить хn невозможно -метод Гаусса неприменим.

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

 

Метод Зейделя

 

Суть итерационного метода Зейделя состоит в том, что задается некоторый произвольный вектор х [0], являющийся началом приближения к искомому решению х*. Затем строят последовательность приближенных значений {x[k]}, где k=0,1,2,…, сходящихся к х*

lim x[k]=x*, при k→∞.

Последовательность векторов х[0], x[1], … , x[k] сходится к х* в том случае, если для любого ε > 0 существует натуральное число N, начиная с которого (k ≥ N) , выполняется условие

||x*-x[k]|| < ε,

где ||·|| - норма вектора.

 

6.3.1 Алгоритм метода Зейделя

А) Исходную систему линейных алгебраических уравнений

x1+c12x2+c13x3+… +c1nxn=d1

x2+c21x1+c23x3+… +c2nxn=d2

. . . . . . . . . . . . . . . . . . . . . . (6.13)

cn1x1+cn2x2+cn3x3+… +xn=dn

разрешают относительно неизвестных х1, х2, … , хn и приводят к виду:

x1=c12x2+… +c1nxn+d1

x2=c21x1+… +c2nxn+d2 (6.14)

. . . . . . . . . . . . . . . . . .

xn=cn1x1+… +cnnxn+dn

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

Б) Задают начальные значения вектора x[0]={x1[0], x2[0], … , xn[0]}. Начальный вектор может быть выбран произвольно, однако необходимо использовать всю информацию, чтобы вектор x[0] был близок к х*.

В) В первое уравнение системы (6.14) подставляют координаты точки x[0] и вычисляют значение первой координаты:

x1[1]=c12x2[0]+c13x3[0]+… +c1nxn[0]+d1.

В следующее уравнение подставляем х1[1] и значения xn[0]:

х2[1]=c21x1[1]+c23x3[0]+… +c2nxn[0]+d2.

Аналогично для xn[1]:

xn[1]=cn1x1[1]+cn2x2[1]+… +dn

В результате будет найдено

x[1]={x1[1],…,xn[1]}.

Г) Начальный вектор x[0] заменяют x[1] и вычисляют следующее приближение. В общем случае k+1 приближение определяется по формуле:

x1[k+1]=c12x2[k]+…+c1nxn[k]+d1

x2[k+1]=c21x1[k+1]+…+c2nxn[k]+d2

. . . . . . . . . . . . . . . . . . . . . . . . . . .

xn[k+1]=cn1x1[k+1]+…+dn

Итерационный процесс будет продолжаться до тех пор, пока все xi[k+1] не будут близки с xi[k], то есть выполнится условие:

||xi[k+1]-xi[k]|| < ε, (6.15)

где ε - точность вычисления.

Можно показать, что с помощью метода Зейделя строится сходящаяся к точному решению последовательность векторов {x[k]}, если матрица А системы уравнений удовлетворяет условию:

|aij| > |ai1| + |ai2| +…+ |ain| . (6.16)

Для всех i или хотя бы для одного i должно удовлетворятся условие:

|aii| > |ai1| + |ai2| +…+ |ain| . (6.17)

 








Дата добавления: 2017-09-19; просмотров: 1876;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.012 сек.