Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КЛ по ВТиП-часть2_укр.pdf
Скачиваний:
40
Добавлен:
21.02.2016
Размер:
3.34 Mб
Скачать

Тема 1. Методи розв'язання систем лінійних рівнянь

Лекція 1. Метод Гауса

Інженерові часто доводиться вирішувати алгебраїчні і трансцендентні рівняння, що може являти собою самостійну задачу або бути частиною більш складних задач. В обох випадках практична цінність методу значною мірою визначається швидкістю й ефективністю отриманого рішення.

Вибір відповідного методу для рішення рівнянь залежить від характеру розглянутої задачі. Задачі, що зводяться до рішення алгебраїчних і трансцендентних рівнянь, можна класифікувати по числу рівнянь і залежно від пропонованого характеру й числа рішень (Рис. 1.1).

АЛГЕБРАИЧЕСКИЕ И ТРАНСЦЕНДЕНТНЫЕ

УРАВНЕНИЯ

ОДНО УРАВНЕНИЕ

СИСТЕМА УРАВНЕНИЙ

ЛИНЕЙНОЕ

 

НЕЛИНЕЙНОЕ

 

ЛИНЕЙНАЯ

 

НЕЛИНЕЙНАЯ

(одно

 

 

(одно

 

(несколько

решение)

 

 

 

 

 

 

решение)

 

решений)

 

 

 

 

 

 

 

 

 

 

АЛГЕБРАИЧЕСКОЕ

 

ТРАНСЦЕНДЕНТНОЕ

 

(неопределенное

(n решений)

 

 

число решений)

 

 

 

 

 

Рис. 1.1 Класифікація рівнянь і систем рівнянь залежно від числа рішень

Одне рівняння будемо називати лінійним, алгебраїчним або трансцендентним залежно від того, чи має воно одне рішення, n рішень або невизначене число рішень. Систему рівнянь будемо називати лінійною або нелінійної залежно від математичної природи вхідних у неї рівнянь.

6

Рішення лінійного рівняння з один невідомим виходить досить просто й тут не розглядається.

Концепція методів

Способи рішення систем лінійних рівнянь діляться на дві групи:

точні (прямі) методи, що представляють собою кінцеві алгоритми для обчислення корінь системи (рішення систем за допомогою зворотної матриці, метод Крамера, метод Гауса й ін.), тобто при використанні таких методів за кінцеве число дій одержуємо точне рішення системи. Точне рішення

виходить у тому випадку, якщо обчислення проводити без округлень, тобто поняття точне ставиться до алгоритму рішення 1.

ітераційні (наближені) методи, що дозволяють одержати рішення системи із заданою точністю шляхом збіжних ітераційних процесів (метод ітерації, метод Зейделя й ін.).

Внаслідок неминучих округлень результати навіть точних методів є наближеними. При використанні ітераційних методів, поверх того, додається погрішність методу.

Ефективне застосування ітераційних методів істотно залежить від удалого вибору початкового наближення й швидкості збіжності процесу.

У загальному виді лінійна система рівнянь записується в такий спосіб:

a

11

x

1

+ a

12

x

2

+ a

13

x

3

+ ...+ a

1n

x

n

= b

 

 

 

 

 

 

 

 

 

 

 

1

 

a21 x1 + a22 x2 + a23 x3

+ ...+ a2n xn

= b2

,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

 

a

n1

x

1

+ a

n2

x

2

+ a

n3

x

3

+ ...+ a

nn

x

n

= b

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n

 

або частіше в матричному виді: a x = B , де а – квадратна матриця розміром n x n, B і x – вектори розміром n (n – розмірність системи).

Метод Гауса

Розглянемо систему n лінійних алгебраїчних рівнянь відносно n невідомих

х1, х2, , хn:

a

11

x

1

+ a

12

x

2

+ ...+ a

1n

x

n

= b

 

 

 

 

 

 

 

 

1

 

a21 x1 + a22 x2

+ ...+ a2n xn

= b2

(1.1)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

 

a

n1

x

1

+ a

n2

x

2

+ ...+ a

nn

x

n

= b

 

 

 

 

 

 

 

 

 

 

 

 

n

 

Метод Гауса, його ще називають методом Гаусових виключень (методом послідовних виключень), полягає в тому, що систему (1.1) приводять послідовним виключенням невідомих до еквівалентної системи з верхньою трикутною матрицею:

1 Метод Крамера для ЭВМ не всегда удобен. Ведь чтобы вычислить определитель nго порядка нужно сделать (n-1)·n! вычислений. Тогда, при n=20 получаем 19·20!=4,5·1019 действий, что для ЭВМ с быстродействием в 1 млн. операций в секунду потребует 1,4·106 лет!

Метод Гаусса дает 2n3/3+0(n2) операций, что гораздо меньше и вполне приемлемо.

7

x1 +α

12 x2 + ...+α1n xn = β1

 

 

x2 + +α2n xn = β2

 

 

,

 

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

 

 

 

xn = βn

 

 

 

рішення якої знаходять по рекурентним формулах:

n

xn = βn , xi = βi αi , j xj , (i = n 1, n 2,...,1)

j=i+1

(1.2)

(1.3)

У матричному записі це означає, що спочатку (прямій хід методу Гауса) елементарними операціями над рядками приводять розширену матрицю системи до східчастого виду:

 

a11

a12

L a1n

b1

 

1 α12 L α1n

β1

 

 

A

a

 

a

 

L a

 

 

b

 

0 1 L α

 

β

 

 

=Â1,

=

21

 

22

 

 

2n

2

 

 

 

2n

 

 

2

 

1

 

 

L L L L

 

 

 

 

 

 

 

 

 

 

L

 

L L L L L

 

 

 

 

 

 

a

 

L a

 

b

 

1

β

 

 

 

 

a

n1

n2

nn

 

0 0 L

n

 

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

а потім (зворотний хід методу Гауса) цю східчасту матрицю перетворять

так, щоб у перших n стовпцях вийшла одинична матриця:

 

 

1

0

L 0

x1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

L

 

0

x2

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

L L L L L

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

L

 

1

x

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

Останній, (n+1) стовпець цієї матриці містить рішення системи (1.1). Розглянемо викладене більш докладно.

Верхня трикутна система лінійних рівнянь1

Розглянемо алгоритм зворотної підстановки, що корисний для рішення систем лінійних рівнянь, що мають верхню трикутну матрицю коефіцієнтів.

Визначення: Матриця

 

розміру

N x

N називається

верхньої

A = aij

трикутної в тому випадку,

якщо елементи aij

= 0 ,

як тільки i > j .

Матриця

A = aij розміру N x N називається нижньої трикутної в тому випадку, якщо

елементи aij = 0 , як тільки i < j .

Розглянемо метод одержань рішення верхньої трикутної системи лінійних рівнянь. Якщо A - верхня трикутна матриця, то говорять, що A x = B - це верхня трикутна система рівнянь, і вона має вигляд:

1 Основы работы с матрицами в MS Excel представлены в приложении 1

8

a

11

x

1

+ a

12

x

2

+ a

13

x

3

+K+ a

1 N 1

x

N 1

+ a

1 N

x

N

= b

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

a22 x2 + a23 x3 +K+ a2 N 1 xN 1 + a2 N xN = b2

 

 

 

 

 

 

 

 

 

a33 x3 +K+ a3 N 1 xN 1 + a3 N xN

= b3

(1.4)

 

 

 

 

 

 

 

 

 

 

 

 

 

M

 

 

 

 

 

 

 

 

M

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

aN 1 N 1 xN 1 + aN 1 N xN = bN 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a

NN

x

N

= b

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

N

 

Теорема (зворотна підстановка). Припустимо,

 

що A x = B - верхня

трикутна система рівнянь, задана у вигляді (1.4). Якщо

 

 

 

 

akk 0 для k = 1, 2,K, N ,

 

 

 

 

 

 

 

 

 

 

(1.5)

те існує єдині рішення системи (1.4)

 

 

 

 

 

 

 

 

 

 

Доказ.

Рішення можна легко знайти. Останнє рівняння включає тільки один невідоме xN , тому обчислюємо його першим:

 

xN =

 

bN

.

 

(1.6)

 

 

 

 

 

 

 

aNN

 

Відоме xN можна використати в наступному рівнянні:

 

 

xN 1

= bN 1 aN 1 N xN .

(1.7)

 

 

 

 

 

aN 1 N 1

 

Потім відомі xN й xN 1

використаємо для знаходження xN 2 :

 

xN 2

=

bN 2 aN 2 N 1 xN 1 aN 2 N xN

.

(1.8)

 

 

 

 

 

 

aN 2 N 2

 

Коли значення xN , xN 1 ,K, xk+1 відомі, можна записати загальну формулу:

 

 

N

 

 

 

bk

akj xj

 

 

xk =

 

j=k+1

для k = N 1, N 2,K, 1

(1.9)

 

akk

 

 

 

 

Легко бачити, що рішення єдине.

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

Розглянемо схему рішення системи A x = B N рівнянь із N невідомими. Нашою метою є побудова еквівалентної верхньої трикутної системи α x = β ,

яку можна вирішити методом зворотної підстановки.

Говорять, що дві лінійні системи розміру N x N еквівалентні, якщо вони мають те саме множину рішень. Теореми з лінійної алгебри показують, що застосування певних перетворень до заданої системи не змінює множини рішень.

Теорема (елементарні перетворення). Наступні операції, застосовані до лінійної системи, приводять до еквівалентної системи.

9

Перестановки

Порядок двох рівнянь може бути змінений

Масштабування

Множення рівняння на не рівну нулю константу

Заміщення

Рівняння можна замінити сумою цього ж рівняння й будь-

 

якого іншого рівняння, помноженого на не рівну нулю

 

константу

Найчастіше використають заміщення, щоб замінити рівняння різницею між цим рівнянням і кратним іншому рівнянню. Розглянемо це на прикладі

Приклад. Знайдемо параболу y = A + B x + C x2 , що проходить через три

крапки: (1; 1), (2; -1), (3; 1).

Для кожної крапки знайдемо рівняння єднальне значення x зі значенням y . Результатом є система лінійних рівнянь:

A + B + C = 1

( 1;1 )

 

 

B + 4 C = −1

( 2;1 )

(1.10)

A + 2

 

B + 9 C = 1

( 3;1 )

 

A + 3

 

Якщо відняти перше рівняння із друг і третього, то виключається змінна А. Це застосування перетворення заміщення. У результаті одержуємо еквівалентну лінійну систему.

A + B + C = 1

 

 

B + 3 C = −2

(1.11)

 

 

2 B + 8 C = 0

 

 

 

Змінна У виключається із третього рівняння (1.11) шляхом дворазового вирахування з нього другого рівняння. Виходить еквівалентна верхня трикутна система рівнянь.

A + B + C = 1

 

 

B + 3 C = −2

(1.12)

 

 

2 C = 4

 

 

 

Скористаємося алгоритмом зворотної підстановки для знаходження

коефіцієнтів: C = 4 / 2 = 2 ;

B = −2

3 2 = −8 ; A = 1 ( 8 ) 2 =7 . Отже

рівняння параболи має вигляд:

y =7 8

x + 2 x2 .

Ефективніше всього можна зберігати коефіцієнти лінійної системи A x = B як матрицю розміру N х (N+1). Коефіцієнти В зберігаються в (N+1)

стовпці

 

матриці.

Розширена матриця позначається як

A

 

B

, і систему

 

рівнянь представляють у вигляді:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a11

a12 L a1 N

b1

 

 

 

 

 

 

 

 

a

 

a

 

L

a

 

b

 

 

 

 

 

A

 

B

=

 

21

 

22

 

 

2 N

2

 

 

 

 

(1.13)

 

 

 

 

M

M

L

M

M

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a

 

L

a

 

b

 

 

 

 

 

 

 

 

a

N 1

N 2

NN

 

 

 

 

 

 

 

 

 

 

 

 

 

N

 

 

 

 

До розширеної матриці також можна застосовувати операції відповідно до вищевикладеної теореми про елементарні перетворення.

10

Визначення (головний елемент). Коефіцієнт

arr матриці А, що

використається, щоб виключити елементи akr , де

k = r + 1, r + 2,K, N ,

називається r головним (ведучим) елементом і r рядок – головним рядком.

Приклад. Представити наступну систему у формі розширеної матриці, знайти еквівалентну їй верхню трикутну систему лінійних рівнянь і її рішення

x1 +2 x2 + x3 +4 x4 =13

2 x1

+0 x2 +4 x3 +3 x4 =28

4 x1

+2 x2 +2 x3 + x4 =20

3 x1 + x2 +3 x3 +2 x4 = 6

Розширена матриця має вигляд:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

2

1

4

13

 

Главный элемент

 

 

 

2

0

4

3

28

 

 

m21=2

 

 

 

 

m31=4

 

4

2

2

1

20

 

 

 

m41=-3

 

3 1 3

2

6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Перший рядок використається, щоб виключити елементи під діагоналлю в першому стовпці. Ми звертаємося до першого рядка, як до головного, і називаємо елемент a11 = 1 головним. Значення mk 1 є множником рядка 1, що

віднімаємо з k рядків, k = 2,3,4 . Результатом першого виключення буде

 

 

 

1

2

1

4

 

13

 

 

 

 

Главный элемент

 

 

 

 

 

 

 

 

0

4

2

5

 

2

 

m32=1,5

0

6 2 15

 

32

 

 

 

7

6

14

 

45

 

m42=-1,75

0

 

 

 

 

 

 

 

 

 

 

 

 

Другий рядок використається, щоб виключити елементи під діагоналлю в другому стовпці. Цей рядок є головної, і значення mk 1 є множником рядка 2,

що віднімаємо з k рядків,

k = 3,4 . Результатом виключення буде.

 

 

 

 

1

2

1

4

 

 

13

 

 

 

 

 

 

 

Главный элемент

 

 

 

 

 

 

 

 

 

 

 

 

0

4

2

5

 

2

 

 

 

 

0 0

 

7 ,5

 

35

 

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

m43=-1,9

 

 

0

9,5

5,25

 

 

48,5

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Нарешті, множимо

m43 = −1,9 на третій рядок, віднімаємо із четвертої

стоки й у результаті одержуємо верхню трикутну систему рівнянь

 

 

 

 

1

2

1

4

 

13

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

4

2

5

 

2

 

 

 

 

0 0 5 7 ,5

 

 

35

 

 

 

 

 

 

0

0

9

 

 

18

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

11

Для рішення системи лінійних рівнянь скористаємося алгоритмом зворотної підстановки й одержимо:

x4 = 2

x3 = 4

x2 = −1

x1 = 3

Описаний вище процес

називається

методом

виключення Гауса й

повинен бути модифікований так, щоб його можна було використати в більшості випадків. Якщо akk = 0 , то рядок k не можна використати для

виключення елементів стовпця k й рядок k варто замінити такою ж рядком під діагоналлю, щоб одержати не дорівнює нулю головний елемент. Якщо цього не можна зробити, виходить, матриця коефіцієнтів системи лінійних рівнянь є вирідженою і система не має єдиного рішення.

Розглянемо рішення системи в загальному виді на прикладі системи 4 рівнянь із 4 невідомими:

a11 x1 + a12 x2 + a13 x3 + a14 x4 =a15

 

 

x1

+ a22 x2

+ a23 x3 + a24 x4

=a25

 

a21

(1.14)

 

x1

+ a32 x2

+ a33 x3 + a34 x4

=a35

a31

 

 

x1

+ a42 x2

+ a43 x3 + a44 x4

=a45

 

a41

 

Перший крок. Виберемо провідний елемент першого кроку, відмінний від 0. Якщо a11 0 , то візьмемо його за ведучий на першому кроці, якщо дорівнює

0, то переставимо рівняння в системі так, щоб a11 0 .

Розділимо перше рівняння на провідний елемент a11 , одержимо рівняння:

 

 

x1

+

a12

x2

+

a13

x3 +

a14

x4 =

a15

 

 

 

 

 

 

 

a11

 

a11

 

 

 

 

 

a1 j

 

a11

 

 

 

a11

 

 

 

 

 

(1)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Позначимо a1 j

=

 

. Тоді рівняння прийме вид:

 

 

 

 

 

a11

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Виключимо x1

x1 + a12(1) x2 + a13(1) x3 + a14(1) x4 = a15(1)

 

 

 

з

інших рівнянь системи, склавши їх з першим,

помноженим, відповідно, на

ai 1 (i 2).

Для

коефіцієнтів при

x2 , x3 , x4

введемо позначення:

 

aij(1) = aij ai 1 a1(1j) , (i , j 2)

 

 

 

 

 

 

 

 

 

 

 

 

 

Розглянемо систему:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a11 x1 + a12(1) x2 + a13(1) x3 + a14(1) x4 =a15(1)

 

 

 

 

 

x

 

+ a(1) x

 

+ a(1) x

 

+ a(1)

x

 

=a(1)

 

 

 

 

 

 

 

 

 

(1.15)

 

 

 

 

 

1

 

 

22

 

 

2

23

 

 

3

24

 

 

4

25

 

 

 

 

x1 + a32(1) x2

+ a33(1) x3 + a34(1) x4 =a35(1)

 

 

 

 

 

x1 + a42(1) x2

+ a43(1) x3 + a44(1) x4

=a45(1)

 

 

 

 

 

 

Взявши останні три рівняння, одержимо систему трьох рівнянь із трьома невідомими:

12

 

a22(1) x2 + a23(1) x3 + a24(1) x4 = a25(1)

 

 

 

(1)

x2

(1)

 

 

 

(1)

x4

 

(1)

(1.16)

 

a32

+ a33

x3 + a34

= a35

 

 

(1)

x2

(1)

 

 

 

(1)

x4

 

(1)

 

 

 

a42

+ a43

x3 + a44

= a45

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

У системі (1.16) розділимо перше рівняння на a22(1) 0 для виділення x2

(якщо a22(1) = 0 , те міняємо рівняння місцями):

 

 

 

 

x2 + a23(2)

x3 + a24(2) x4 = a25(2) , де a2(2j) = a2(1j)

(1) , ( j > 2)

(1.17)

Виключивши x2

 

 

 

 

 

 

 

 

 

 

a22

 

з інших рівнянь (1.16) одержимо їх у вигляді:

 

 

 

(2)

x3

(2)

 

 

 

(2)

 

 

 

 

 

a33

+ a34

x4 = a35

 

 

 

(1.18)

 

 

 

x

 

+ a(2)

x

 

= a(2)

 

 

 

 

a(2)

3

4

 

 

 

 

 

 

43

 

44

 

 

45

 

 

 

 

де aij(2) = aij(1) ai(21) a2(2j) , (i , j 3)

 

 

 

 

 

 

 

І, нарешті, розділивши перше рівняння (1.18) на a33(2) , одержимо:

 

x3 + a34(3)

x4

= a35(3) , де a3(3j) = a3(2j)

(2) , ( j > 3)

(1.19)

Виключивши x3

 

 

 

 

 

 

 

 

a33

 

 

 

 

із другого рівняння (1.16) одержимо:

 

a44(3) x4 = a45(3)

(aij(3)

= aij(2) ai(32) a3(3j) ,

i , j 4)

(1.20)

Звідси вже можна знайти x4 .

На цьому закінчується прямий хід. Легко доглянути загальний вид формул перерахування коефіцієнтів для прямого ходу:

akj(k ) = akj(k1)

(k1) , ( j > k , k =

 

ajk

aij(k ) = aij(k1) aik(k1) akj(k ) , (i, j

1,2,...,n)

k )

(1.21)

(1.22)

Формула (1.21) - для провідних рівнянь, а (1.22) - для інших.

Таким чином, у результаті прямого ходу отримана верхня трикутна система з рівнянь (1.15), (1.17), (1.19) і (1.20) з якої можна знайти:

a(3)

x4 = 45 a44(3) ,

x3 = a35(3) a34(3) x4 ,

x2 = a25(2) a23(2) x3 a24(2) x4 ,

x1 = a15(1) a14(1) x4 a13(1) x3 a12(1) x2

Це називається зворотним ходом.

13