Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МУ по самостоятельной работе ВТиП_ч1_Гаусс.pdf
Скачиваний:
5
Добавлен:
21.02.2016
Размер:
781.16 Кб
Скачать

МЕТОДИЧЕСКИЕ УКАЗАНИЯ к самостоятельной работе по курсу

«Вычислительная техника и программирование» Часть 1.

методы решения систем уравнений. Метод Гаусса (для студентов строительных специальностей)

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ УКРАИНЫ ДОНБАССКАЯ НАЦИОНАЛЬНАЯ АКАДЕМИЯ СТРОИТЕЛЬСТВА И АРХИТЕКТУРЫ

Кафедра высшей и прикладной математики и информатики

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

к самостоятельной работе по курсу «Вычислительная техника и программирование» Часть 1. Методы решения систем уравнений. Метод Гаусса

(для студентов строительных специальностей дневной формы обучения)

УТВЕРЖДЕНО на заседании кафедры

высшей и прикладной математики и информатики

Протокол № 2 от 16.09.2004 г.

Макеевка 2004 г.

УДК 519.682:681.3.06 (071)

Методические указания к самостоятельной работе по курсу «Вычислительная техника и программирование». Часть 1. Методы решения систем уравнений. Метод Гаусса (для студентов строительных специальностей дневной формы обучения) / Сост. Грицук Ю.В., Митраков В.А., Акулов В.Ф. – Макеевка,

ДонНАСА, 2004. – 18 с.

Методические указания содержат краткие теоретические сведения и индивидуальные задания к самостоятельной работе на тему «Методы решения систем уравнений. Метод Гаусса» в рамках курса «Вычислительная техника и программирование». Приведены примеры выполнения работ.

Составители:

Ю.В. Грицук, к.т.н., доцент

 

В.А. Митраков, к.ф-м.н., доцент

 

В.Ф. Акулов, ассистент

Рецензент: В.М. Левин, д.т.н., профессор

Ответственный за выпуск

В.А. Моисеенко, к.ф-м.н., доцент

СОДЕРЖАНИЕ

 

КРАТКИЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ............................................................

4

Концепция методов...................................................................................................................

5

Метод Гаусса.............................................................................................................................

6

Верхняя треугольная система линейных уравнений ..............................................................

6

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

7

Схема единственного деления................................................................................................

12

ИНДИВИДУАЛЬНЫЕ ЗАДАНИЯ..........................................................................

14

ВОПРОСЫ ДЛЯ САМОПРОВЕРКИ......................................................................

16

ЛИТЕРАТУРА...........................................................................................................

18

3

КРАТКИЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ

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

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

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

УРАВНЕНИЯ

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

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

ЛИНЕЙНОЕ

 

 

 

 

 

 

ЛИНЕЙНАЯ

 

НЕЛИНЕЙНАЯ

(одно

 

НЕЛИНЕЙНОЕ

 

(одно

 

(несколько

решение)

 

 

 

 

 

 

решение)

 

решений)

 

 

 

 

 

 

 

 

 

 

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

 

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

 

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

(n решений)

 

 

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

 

 

 

 

 

Рис. 1. Классификация уравнений и систем уравнений в зависимости от числа решений

Любое уравнение с одним неизвестным может быть записано в виде: f (x )= 0

Если функция f (x) представлена многочленом первой степени, т.е. уравнение имеет вид:

4

f (x)= a x + b = 0 ,

то такое уравнения называется линейным и оно имеет одно решение x = −ab .

Если функция f (x) представлена многочленом n -ой степени, т.е. уравне-

ние имеет вид:

f (x)= an xn + an1 xn1 + ...+ a1 x + a0 = 0 ,

то такое уравнение называется алгебраическим. Алгебраическое уравнение n - ой степени имеет n корней, считая и комплексные корни.

Если функция f (x) содержит в себе тригонометрические, логарифмиче-

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

Систему уравнений будем называть линейной или нелинейной в зависимости от математической природы входящих в нее уравнений.

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

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

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

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

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

(метод итерации, метод Зейделя и др.).

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

Эффективное применение итерационных методов существенно зависит от удачного выбора начального приближения и быстроты сходимости процесса.

В общем виде линейная система уравнений записывается следующим образом:

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 – размерность системы).

5

Метод Гаусса

Рассмотрим систему 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)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

 

a

n1

x

1

+a

n2

x

2

+ ...+ a

nn

x

n

= b

 

 

 

 

 

 

 

 

 

 

 

 

n

 

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

x1 +α

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

 

 

 

x2 + +α2n xn = β2

 

 

 

,

(2)

 

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

 

 

 

 

xn = βn

 

 

 

 

 

решение которой находят по рекуррентным формулам:

 

xn = βn , xi = βi n

αi , j x j , (i = n 1, n 2,...,1)

(3)

j=i+1

 

 

В матричной записи это означает, что сначала (прямой ход метода Гаусса) элементарными операциями над строками приводят расширенную матрицу системы к ступенчатому виду:

 

a11

a12

L a1n

b1

 

1 α12 L α1n

β1

 

 

A

a

 

a

 

L a

 

 

b

 

0 1 L α

 

β

 

 

=Â1,

=

21

 

22

 

2n

2

 

 

 

2 n

 

 

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). Рассмотрим изложенное более подробно.

Верхняя треугольная система линейных уравнений

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

6

Определение: Матрица

 

 

размера N x

 

N называется верхней тре-

 

A = aij

 

угольной

в

 

том

случае,

если элементы

aij

= 0 ,

как

 

только

i > j . Матрица

 

 

 

размера N x N называется нижней треугольной в том случае, если

A = aij

 

 

элементы aij

= 0 , как только i < j .

 

 

 

 

 

 

 

 

 

 

 

 

 

Рассмотрим метод получения решения верхней треугольной системы ли-

нейных уравнений.

 

Если

A - верхняя треугольная матрица,

то говорят, что

A x = B - это верхняя треугольная система уравнений, и она имеет вид:

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

(4)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

M

 

 

 

 

 

 

 

 

M

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a

NN

x

N

= b

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

N

 

Теорема (обратная подстановка). Предположим,

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

треугольная система уравнений, заданная в виде (4). Если

 

akk

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

 

 

 

 

 

 

 

 

 

 

 

 

(5)

то существует единственное решение системы (4)

 

 

 

 

Доказательство.

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

xN =

 

bN

.

(6)

 

 

 

 

aNN

 

Известное xN можно использовать в следующем уравнении:

 

xN 1

= bN 1 aN 1 N xN .

(7)

 

 

 

aN 1 N 1

 

Затем известные xN и xN 1 используем для нахождения xN 2 :

 

xN 2 = bN 2 aN 2 N 1 xN 1 aN 2 N xN .

(8)

 

 

 

aN 2 N 2

 

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

N

bk akj x j

xk =

j=k+1

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

(9)

akk

 

 

 

Легко видеть, что решение единственно.

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

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

7

Говорят, что две линейные системы размера N x N эквивалентны, если они имеют одно и то же множество решений. Теоремы из линейной алгебры показывают, что применение определенных преобразований к заданной системе не изменяет множества решений.

Теорема (элементарные преобразования). Следующие операции, приме-

ненные к линейной системе, приводят к эквивалентной системе.

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

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

Масштабирование

Умножение уравнения на не равную нулю константу

Замещение

Уравнение можно заменить суммой этого же уравнения и

 

любого другого уравнения, умноженного на не равную

 

нулю константу

Чаще всего используют замещение, чтобы заменить уравнение разностью между этим уравнением и кратным другому уравнению. Рассмотрим это на примере

Пример. Найдем параболу 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 )

(10)

A + 2

 

B + 9 C = 1

( 3;1 )

 

A + 3

 

Если вычесть первое уравнение из второго и третьего, то исключается переменная А. Это применение преобразования замещения. В результате получаем эквивалентную линейную систему.

A + B +C = 1

 

 

B + 3 C = −2

(11)

 

 

2 B +8 C =0

 

 

 

Переменная В исключается из третьего уравнения (11) путем двукратного вычитания из него второго уравнения. Получается эквивалентная верхняя тре-

угольная система уравнений.

 

A + B +C = 1

 

 

B + 3 C = −2

(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)

8

столбце матрицы. Расширенная матрица обозначается как A B , и систему уравнений представляют в виде:

 

 

 

a11

a12 L a1 N

b1

 

 

 

 

 

a

 

a

 

L a

 

b

 

 

A

 

B

=

 

21

 

22

 

2 N

2

 

(13)

 

 

 

 

M

M

L M

M

 

 

 

 

 

 

 

 

 

 

a

 

L a

 

b

 

 

 

 

 

a

N 1

N 2

NN

 

 

 

 

 

 

 

 

 

N

 

К расширенной матрице также можно применять операции согласно вышеизложенной теореме об элементарных преобразованиях.

Определение (главный элемент). Коэффициент 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 . Результатом первого исключения будет

 

 

 

 

2

1

4

 

13

 

 

 

 

 

 

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

 

 

 

 

1

 

 

 

 

 

0

4

2

5

 

2

 

 

m32=1,5

0

6

2

15

 

32

 

 

m42=-1,75

 

7

6

14

 

45

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

Вторая строка используется, чтобы исключить элементы под диагональю во втором столбце. Эта строка является главной, и значение mk 1 является мно-

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

9

 

 

 

 

2

1

4

 

13

 

 

 

 

 

 

 

 

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

 

 

 

 

1

 

 

 

 

 

0

4

2

5

 

2

 

 

 

 

0 0

 

7 ,5

 

35

 

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

9,5

5,25

 

48,5

 

 

m43=-1,9 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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Для решения системы линейных уравнений воспользуемся алгоритмом об-

ратной подстановки и получим:

 

 

 

 

 

 

 

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

(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

a11

a11

 

 

a1 j

 

 

 

 

 

 

 

 

 

 

 

(1)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Обозначим a1 j

=

 

 

. Тогда уравнение примет вид:

a11

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x + a(1) x

2

+ a(1) x

3

+ a(1) x

4

= a(1)

 

 

1

12

 

13

 

14

 

15

 

Исключим x1 из остальных уравнений системы, сложив их с первым, умноженным, соответственно, на ai 1 (i 2). Для коэффициентов при x2 , x3 , x4 введем обозначение:

10

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)

 

 

 

 

 

 

(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)

 

 

 

Взяв последние три уравнения, получим систему трех уравнений с тремя неизвестными:

a

(1)

x

2

+ a(1)

x

3

+ a

(1)

x

4

= a

(1)

 

 

 

22

 

23

 

 

24

 

 

25

 

 

 

(1)

x2

(1)

x3

 

(1)

x4

 

(1)

(16)

a32

+ a33

+ a34

= a35

 

 

(1)

x2

(1)

x3

 

(1)

x4

 

(1)

 

 

a42

+ a43

+ a44

= a45

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

В системе (16) разделим первое уравнение на a22(1) 0 для выделения x2 (если a22(1) = 0 , то меняем уравнения местами):

x2 + a23(2) x3 + a24(2) x4 = a25(2), где a2(2j)

= a2(1j)

(1) , ( j > 2)

(17)

Исключив x2

 

 

 

 

 

 

 

 

 

a22

 

из остальных уравнений (16) получим их в виде:

 

 

 

(2)

x3

(2)

 

 

 

(2)

 

 

 

 

a33

+ a34

x4 = a35

 

 

(18)

 

 

(2)

x

 

+ a(2)

x

 

= a

(2)

 

 

 

a

3

4

 

 

 

 

 

43

 

44

 

 

45

 

 

 

где aij(2) = aij(1)

ai(21) a2(2j) ,

(i , j 3)

 

 

 

 

 

 

И, наконец, разделив первое уравнение (18) на a33(2) , получим:

 

x3 + a34(3) x4 = a35(3), где a3(3j) = a3(2j)

(2)

, ( j > 3)

(19)

Исключив x3

 

 

 

 

 

 

 

 

a33

 

 

 

из второго уравнения (16) получим:

i , j 4)

 

 

a44(3) x4

= a45(3)

(aij(3)

= aij(2) ai(32)

a3(3j) ,

(20)

Отсюда уже можно найти x4 .

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

akj(k ) = akj(k1)

(k1) , ( j > k , k =

 

a jk

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

1,2,...,n)

k )

(21)

(22)

Формула (21) – для ведущих уравнений, а (22) – для остальных.

Таким образом, в результате прямого хода получена верхняя треугольная система из уравнений (15), (17), (19) и (20) из которой можно найти:

11