Вы находитесь на странице: 1из 21

Министерство образования и науки Российской Федерации

Федеральное государственное бюджетное образовательное учреждение


высшего образования
«Сибирский государственный индустриальный университет»

Кафедра прикладных информационных технологий и программирования

ЧИСЛЕННОЕ РЕШЕНИЕ СИСТЕМ


ЛИНЕЙНЫХ АЛГЕБРАИЧЕСКИХ
УРАВНЕНИЙ
Методические указания к выполнению практических работ
и самостоятельной работе

Новокузнецк
2018
УДК 519.6
Ч

Составитель
Кораблина Татьяна Валентиновна

Рецензент
кандидат физико-математических наук, доцент,
доцент кафедры прикладной математики и информатики СибГИУ
О.А. Кондратова

Ч Численное решение систем линейных алгебраических уравнений


[Электронный ресурс] : метод. указ. / Сиб. гос. индустр. ун-т ; сост. : Т.В.
Кораблина. – Электр. дан. (1 файл). – Новокузнецк : Изд. центр СибГИУ,
2018. – Систем. требования: Adobe Acrobat 7.0. – Загл. с экрана.

Рассмотрены численные алгоритмы решения систем линейных ал-


гебраических уравнений, а также вопросы оценки погрешности численно-
го решения.
Предназначены для обучающихся направлений подготовки 09.03.01
Информатика и вычислительная техника, 09.03.02 Информационные си-
стемы и технологии, 09.03.03 Прикладная информатика, 01.03.02 При-
кладная математика и информатика.
Публикуется по решению комиссии по совершенствованию учебно-
методической работы в Институте информационных технологий и авто-
матизированных систем (протокол № 6 от 23.04.2018 г.).
Издано в полном соответствии с авторским оригиналом.

© Сибирский государственный
индустриальный университет, 2018

2
Содержание
Введение .............................................................................................................. 4
1 Прямые методы................................................................................................ 5
1.1 Метод Гаусса.............................................................................................. 5
1.2 Метод Халецкого ....................................................................................... 7
1.3 Метод квадратного корня ......................................................................... 9
Задание 1............................................................................................................ 11
2 Итерационные методы численного решения систем линейных
алгебраических уравнений .............................................................................. 14
2.1 Метод простой итерации ........................................................................ 15
2.2 Метод Зейделя ......................................................................................... 19
Задание 2............................................................................................................ 20
Контрольные вопросы...................................................................................... 20
Список литературы .......................................................................................... 21

3
Введение
Многие практические задачи сводятся к решению систем линейных
алгебраических уравнений (СЛАУ) с вещественными коэффициентами,
поэтому решение СЛАУ является основной задачей линейной алгебры
 a11 x1  a12 x2  ...a1n xn  b1 ,
 a x  a x  ...a x  b ,
 21 1 22 2 2n n 2
 (1)
 .............................................,
 an1 x1  an 2 x2  ...ann xn  bn
или в векторной форме
Ax= b, (2)
𝑎11 𝑎12 … 𝑎1𝑛 𝑏1 𝑥1
𝑎21 𝑎22 … 𝑎2𝑛 𝑏 𝑥2
𝐴=( ) , 𝑏 = ( 2 ) , 𝑥 = ( … ).
……………………. …
𝑎𝑛1 𝑎𝑛2 … 𝑎𝑛𝑛 𝑏𝑛 𝑥𝑛
где А – квадратная матрица nn с вещественными коэффициентами,
b – заданный вектор свободных членов с вещественными компонента-
ми,
х – искомый вектор.
Для нахождения решения систем уравнений (1) существуют два типа
методов – прямые и итерационные. Прямые методы (методы Гаусса, Ха-
лецкого, квадратного корня и др.) позволяют за конечное число действий
получить точное решение системы уравнений, если исходные данные за-
даны точно и вычисления ведутся без округления. Итерационные методы
(метод простой итерации, метод Зейделя и др.) позволяют найти прибли-
женное решение системы путем построения последовательности прибли-
жений (итераций), начиная с некоторого начального приближения. Само
приближенное решение является результатом вычислений, получаемых
после конечного числа итераций.

4
1 Прямые методы
1.1 Метод Гаусса
Метод Гаусса является наиболее распространенным методом реше-
ния систем линейных уравнений, в основе которого лежит идея последо-
вательного исключения неизвестных.
Решение системы линейных алгебраических уравнений методом
Гаусса выполняется в два этапа. Первый этап называется прямой ход, в ре-
зультате которого исходная матрица коэффициентов приводится к верх-
ней треугольной матрице. Второй этап называется обратный ход, который
предполагает последовательное вычисление корней системы, начиная с
последнего xп.
Пример 1. Имеем систему линейных алгебраических уравнений
4𝑥1 + 𝑥2 − 𝑥3 = 5
{2𝑥1 + 5𝑥2 + 𝑥3 = −5. (3)
3𝑥1 + 𝑥2 + 5𝑥3 = 9
Прямой ход. Разделим первое уравнение системы на а11=4, получим
x1+0,25x2–0,25x3=1,25. (4)
Пользуясь полученным уравнением, исключим переменную x1 из исход-
ной системы. Для этого уравнение (4) сначала умножим на коэффициент
а21=2,
2,00 x1+0,50 x2–0,500x3=2,50,
затем на коэффициент а31:
3,00 x1+0,75x2–0,75x3=3,75
и вычтем полученные уравнения из второго и третьего уравнений системы
(3) соответственно. В результате система (1) примет вид:
𝑥1 + 0,25𝑥2 − 0,25𝑥3 = 1,25,
{ 4,50𝑥2 + 1,50𝑥3 = −7,50, (5)
0,25𝑥2 + 5,75𝑥3 = 5,25.
В системе (5) второе уравнение делим на коэффициент при переменной x2:
1 2
x2  x3  1 (6а )
3 3
или
x2+0,333x3=–1,667. (6б)
В результате выполнения математических операций коэффициент
при переменной x2 является точным значением, представленным в виде
простой дроби (6 а). Но традиционно мы ведем расчеты в десятичных
1
дробях. Представить точное число в виде десятичной дроби точно не-
3
возможно, т.к. для этого потребуется взять бесконечное число знаков по-
сле запятой, поэтому переход от простой дроби к десятичной влечет за со-
5
бой внесение в погрешности. И, несмотря на то, что метод Гаусса является
точным, корни уравнения могут быть приближенными за счет вычисли-
тельной погрешности.
Далее умножим уравнение (6) на коэффициент при переменной x2
системы (5):
1 1 5
x2  x3   (7а)
4 12 12
или
0,250x2+ 0,083x3=0,417 (7б)
и вычтем из третьего уравнения:
5,667x3=5,667. (8)
В результате исходная система (3) приняла вид:
𝑥1 + 0,250𝑥2 − 0,250𝑥3 = 1,250,
{ 𝑥2 + 0,333𝑥3 = −1,667, (9)
5,667𝑥3 = 5,667,
Обратный ход. Последовательно из системы (4.7) находим корни
уравнения.
x3=1,
x2=–1,667–0,333∙1=–2,
x1=1,250 – 0,250∙(–2) + 0,250∙1=2.
Несмотря на то, что вычисления производились с округлением, по-
лученные значения корней являются точными.
Пример 2 Метод Гаусса.
2,0𝑥1 + 1,0𝑥2 − 0,1𝑥3 + 1,0𝑥4 = 2,7,
0,4𝑥1 + 0,5𝑥2 + 4,0𝑥3 − 8,5𝑥4 = 21,9,
{ (10)
0,3𝑥1 − 1,0𝑥2 + 1,0𝑥3 + 5,2𝑥4 = −3,9,
1,0𝑥1 + 0,2𝑥2 + 2,5𝑥3 − 1,0𝑥4 = 9,9.
Разделим первое уравнение системы (10) на а11=2,0, получим
x1+ 0,50 x2– 0,05 x3+ 0,50 x4 =1,35. (11)
Умножая уравнение (11) на коэффициенты при переменной x1 из ис-
ходной системы и вычитая получаемые уравнения его из соответствую-
щих уравнений системы (10), исключим переменную x1. В результате си-
стема примет вид:
𝑥1 + 0,50𝑥2 − 0,05𝑥3 + 0,50𝑥4 = 1,35,
0,30𝑥2 + 4,02𝑥3 − 8,70𝑥4 = 21,36,
{ (12)
−1,15𝑥2 + 1,015𝑥3 + 5,05𝑥4 = −4,305,
0,30𝑥2 + 2,55𝑥3 − 1,50𝑥4 = 8,55,
Разделим второе уравнение системы (12) на коэффициент при пере-
менной x2=0,30:
x2+ 13,40 x3– 29,00 x4 =71,20. (13)

6
Умножая уравнение (13) на коэффициенты при переменной x2 из си-
стемы (12) и вычитая получаемые уравнения его из соответствующих
уравнений системы (12), исключим переменную x2. В результате система
примет вид:
𝑥1 + 0,50𝑥2 − 0,05𝑥3 + 0,50𝑥4 = 1,35.
𝑥2 + 13,40𝑥3 − 29,00𝑥4 = 71,200,
{ (14)
16,425𝑥3 − 28,300𝑥4 = 77,575,
6,570𝑥3 − 10,200𝑥4 = 29,910.
Разделим третье уравнение системы (14) на коэффициент при пере-
менной x3 (16,425):
x3 – 1,72298 x4 =4,72298. (15)
Полученное уравнение умножение на коэффициент при x3 (6,570) и вычи-
таем его из последнего уравнения системы (14):
1,11998 x4 =–1,11998. (16)
Таким образом, исходная система (10) примет вид:
𝑥1 + 0,50𝑥2 − 0,05𝑥3 + 0,50𝑥4 = 1,35,
𝑥2 + 13,40𝑥3 − 29,00𝑥4 = 71,200,
.} (17)
𝑥3 − 1,72298𝑥4 = 4,72298,
1,11998𝑥4 = −1,11998.
На этом прямой ход заканчивается.
Обратный ход. Последовательно из системы (17) находим:
x4=1,
x3=4,72298–1,72298=3,
x2=71,20 – 13,40∙3 + 29,00=2,
x1=1,35 – 0,50∙2 + 0,05∙3+0,50=1.
Так как в ходе решения все вычисления производились без округле-
ния, то полученные значения корней являются точными.
1.2 Метод Халецкого
При решении системы линейных алгебраических уравнений с ис-
пользованием схемы Халецкого исходная матрица А системы Ax= b пред-
ставляется в виде произведения
A=D×C, (17)
где D – нижняя треугольная матрица с ненулевыми диагональными эле-
ментами;
С – верхняя треугольная матрица с единичными диагональными эле-
ментами.
Элементы dij и cij вычисляются согласно правилу перемножения мат-
риц по формулам:
j 1
di1  ai1 , dij  aij   dik ckj (i  j  1) , (18)
k 1

7
a1 j 1 i 1

c1 j  , cij   aij   dik ckj  (1  i  j ) . (19)
d11 dii  k 1 
После того как разложение (17) проведено, решение системы урав-
нений сводится к последовательному решению двух систем уравнений с
треугольными матрицами:
Dy=b, (20)
Cx=y. (21)
Разложение (17) и решение системы (20) – это прямой ход решения систе-
мы по схеме Халецкого, а решение системы (21) – обратный ход.
Так как матрицы D и С треугольные, то системы (20), (21) решаются:
b1 1 i 1

y1  , yi   bi   dik yk  (i  1) , (22)
d11 dii  k 1 
n
xn  yn , xi  yi  c
k i 1
ik xk (i  n) . (23)

Пример 4. Решим систему линейных уравнений методом Халецкого:


4𝑥1 + 𝑥2 − 𝑥3 = 5,
{2𝑥1 + 5𝑥2 + 𝑥3 = −5,
3𝑥1 + 𝑥2 + 5𝑥3 = 9.
Представим матрицу коэффициентов А исходной системы А∙x=b в
виде произведения двух матриц (17), и из формул (18) и (19) найдем ко-
эффициенты D и С:
di1=ai1, d11=4; d21=2; d31=3;
a 1 1
c1j= 1 j ; c12= =0,25; c13=  =–0,25;
d11 4 4
d22=a22 –d21∙c12=5 – 2∙0,25=4,5;
d32=a32 –d31∙c12=1 – 3∙0,25=0,25;
1 1 1
c23= (a23 –d21∙c13)= (1 – 2∙(–0,25))= ≈0,333;
d 22 4,5 3
1 2
d33=a33 –d31∙c13–d32∙c23= 5 – 3∙(–0,25) – 0,25∙ =5 ≈5,667.
3 3
Решаем систему D∙y=b:
d11∙y1=b1,
d21∙y1+d22∙y2=b2,
d31∙y1+d32∙y2+d33∙y3=b3,
и находим значения y1, y2, y3:
b 5
y1= 1 = =1,25,
d11 4

8
1 1 2
y2= (b2 –d21∙y1)= (–5–2∙1,25)= –1 ≈–1,667,
d 22 4,5 3
1 3 2
y3= (b3 –d31∙y1 –d32∙y2)= (9–3∙1,25–0,25∙(–1 ))=1.
d 33 17 3
Решаем систему С∙x=y:
x1+c12∙x2+c13∙x3=y1,
x2+c23∙x3=y2,
x3=y3.
и находим последовательно значения корней x3, x2, x1:
x3=1,
2 1
x2 =y2–c23∙x3=–1 – =–2,
3 3
x1 =y1 –c12∙x2 –c13∙x3=1,25–0,25∙(–2)–(–0,25)∙1=2.
1.3 Метод квадратного корня
При решении системы уравнений Ax= b с симметричной веществен-
ной невырожденной матрицей А используется разложение
A=S* ×D×S, (17)
где S – верхняя треугольная матрица с положительными элементами на
главной диагонали;
S*– транспонированная к ней ( sij*  sij );
D – диагональная матрица с элементами di, i=1, 2, …, n, равными 1.
Вычисления на основе этого разложения определяют метод квадратного
корня.
Для элементов матриц S и D используются расчетные формулы, ко-
торые получены согласно правилу перемножения матриц:
a1 j
d1  sign(a11), s11  | a11 |, s1 j  , j  2,3,..., n, (18)
s11
 i 1

di  sign  aii   | ski |2 d k  , (19)
 k 1 
i 1
sii  aii   | ski |2 d k , (20)
k 1

1  i 1

sij   ij  ki kj k  ; i  2,3,..., n; j  i  1, i  2,..., n . (21)
a  s s d
sii di  k 1 
После того, как матрицы S и D найдены, систему Ax=b заменяют двумя
эквивалентными ей системами с треугольными матрицами:
S*Dy=b, Sx=y. (22)
9
В методе квадратного корня вычислительные затраты примерно в
два раза меньше, чем в стандартном методе Гаусса (эффект учета симмет-
рии матрицы А).
Пример 5. Решим систему линейных уравнений методом квадратно-
го корня:
4𝑥1 + 2𝑥2 + 3𝑥3 = 7,
{ 2𝑥1 + 5𝑥2 + 𝑥3 = −5,
3𝑥1 + 𝑥2 + 5𝑥3 = 9.
Представим матрицу коэффициентов А исходной системы А∙x=b в
виде произведения двух матриц A=Т*∙Т, где Т – верхняя треугольная мат-
рица, Т* – транспонированная матрица Т, и из правил перемножения мат-
риц найдем коэффициенты Т и Т*.
t11= a11 = 4 =2;
a a 2 a 3
t1j= 1 j ; t12= 12  =1; t13= 13  =1,5;
t11 t11 2 t11 2
t22= a22  t122 = 5  1 =2;
a t t 1  1 1,5
t23= 23 12 13 = =–0,25;
t22 2
t33= a33  t132  t23
2
= 5  1,52  0, 252 =2,6875≈1,6394.
Решаем систему Т*∙y=b:
t11∙y1=b1,
t12∙y1+t22∙y2=b2,
t13∙y1+t23∙y2+t33∙y3=b3
и находим значения y1, y2, y3:
b 7
y1= 1 = =3,5,
t11 2
1 1 8,5
y2= (b2–t12∙y1)= (–5–3,5)= – =–4,25,
t22 2 2
1 1
y3= (b3 –t13∙y1–t23∙y2) = (9–1,5∙3,5–0,25∙4,25)=1,6394.
t33 1,6394
Решаем систему T∙x=y:
t11∙x1+t12∙x2+t13∙x3=y1,
t22∙x2+t23∙x3=y2,
t33∙x3=y3.
и находим последовательно значения корней x3, x2, x1:
y 1,6394
x3= 3 = =1,
t33 1,6394

10
1 1
x2 = (y2–t23∙x3) = (–4,25– (–0,25)∙ 1) = –2,
t22 2
1 1
x1 = (y1 –t12∙x2–t13∙x3) = (3,5+2–1,5)=2.
t11 2
Пример 6. Решить систему линейных уравнений методом квадрат-
ного корня:
1,00𝑥1 + 0,42𝑥2 + 0,54𝑥3 + 0,66𝑥4 = 0,3,
0,42𝑥1 + 1,00𝑥2 + 0,32𝑥3 + 0,44𝑥4 = 0,5,
{
0,54𝑥1 + 0,32𝑥2 + 1,00𝑥3 + 0,22𝑥4 = 0,7,
0,66𝑥1 + 0,44𝑥2 + 0,22𝑥3 + 1,00𝑥4 = 0,9.
Найдем коэффициенты матриц Т и Т*.
t11= a11 =1;
a a a a
t1j= 1 j ; t12= 12 =0,42; t13= 13 =0,54; t14= 14 =0,66;
t11 t11 t11 t11
t22= a22  t122 = 1  0, 422 =0,90752;
a t t 0,32  0, 42  0,54
t23= 23 12 13 = =0,10270;
t22 0,90752
a t t 0, 44  0, 42  0,66
t24= 24 12 14 = =0,17939;
t22 0,90752
t33= a33  t132  t23
2
= 1  0,542  0,102702 =0,83537;
a t t t t 0, 22  0,54  0,66  0,10270  0,17939
t34= 34 13 14 23 24 = =–0,18533;
t33 0,83537
t44= a44  t142  t24
2
 t34
2
= 1  0,662  0,179392  0,185332 =0,70560.
Решаем систему Т*∙y=b:
t11∙y1=b1,
t12∙y1+t22∙y2=b2,
t13∙y1+t23∙y2+t33∙y3=b3,
t14∙y1+t24∙y2+t34∙y3+t44∙y4=b4
и находим значения y1, y2, y3, y4:
b 0,3
y1= 1 = =0,3,
t11 1
1 1
y2= (b2–t12∙y1) = (0,5–0,42∙0,3)=0,41211,
t22 0,90752
1 1
y3= (b3 –t13∙y1–t23∙y2) = (0,7–0,54∙0,3–0,10270∙0,41211)=0,59336,
t33 0,83537

11
1
y4= (b4–t14∙y1–t24∙y2–t34∙y3) = 1,04597.
t 44
Решаем систему T∙x=y:
t11∙x1+t12∙x2+t13∙x3+t14∙x4=y1,
t22∙x2+t23∙x3+t24∙x4=y2,
t33∙x3+t34∙x4=y3,
t44∙x4=y3.
и находим последовательно значения корней x3, x2, x1:
y 1,04597
x4= 4 = =1,48238,
t44 0,70560
1
x3 = (y3–t34∙x4) =1,03917,
t33
1
x2 = (y2–t23∙x3–t24∙x4) =0,04348,
t22
1
x1 = (y1–t12∙x2–t13∙x3–t14∙x4) =–1,25778.
t11
Несмотря на то, что метод квадратного корня относится к точным
методам, но за счет вычислительной погрешности, полученные значения
корней являются приближенными. Подставив полученное решение в ис-
ходную систему, получим с точностью до пятого знака после запятой сле-
дующие значения элементов вектора свободных членов b=(0,30000;
0,49999; 0,70001; 0,89999). Если для практической задачи этот уровень по-
грешности допустим, то найденные значения корней принимаются за при-
ближенное решение, если же нет, то вычисления следует проводить с
большим количеством знаков после запятой.
Задание 1
1 Методом Гаусса решить системы линейных алгебраических урав-
нений.
1  5 0 1 11 2  4 1  1 7
       
A   1 3  1 b 4 A  2 3 0 b 7 
  3 2 10  6 1 1 5  11
       
3  2 0  1   3 4  2 0  1  1 
       
A   1 3 1  b 2  A  1  4 2  b    5
 1 1 4   3  1 1 3   6 
      

12
5  2 0  1 1 6  2  1 0  3
       
A  1  3 1  b   2 A   0 5 2 b  7
1 1 3   4  1  1 3  4
      
7 5 1  1   5 8  3 1  1   2
       
A  1 3 1 b 5  A   1 5  1 b 8 
 1 2 4   1  2 0 3   1 
       
9  3 1  1   1 10  3 0  1   4
       
A   2 4 1  b 5  A  2  5 1  b 9 
 1 1 3   3 2  2 6   8 
       
11  3 1  1 6 12  3 0  1  7 
       
A  2 4 1  b  9 A  2  5 1  b    2
1 1 3   4 2 2 5   1 
      
13 2 1 0    2 14  3 1 1 0
       
A   2 5  2 b    4 A 3 5 1 b   12 
1 1 3   2    1 2 4   1
       
15  3 1 1   1  16   4 2 1   5
       
A 0 2  1 b 3  A    1 5 1 b    5
1 1 5    5  2 0 3  5 
      
17  5 1 1   3 18  5 1  1  8 
       
A  1 3 1 b   1 A  1 3 1  b 0 
 2 1 4  1  1 0 2    5
       
19 4 2 1   3 20  3  1 1   4
       
A  3 5 1 b   4 A    1 3 1 b 4 
 2 1  4 6  1  1 3  4 
       
21  4 1 2   6 22  2 1 1   0 
       
A  0 3 1 b   1 A   5 1 1 b    5
 1 2 4   5   2 1  2  1 
       

13
23 3 1 1  6 
 
24  1 0  1   2
  b    3
   
A  0  2 1 A  1 1 1  b 2 
  1
 2  1 4    4 1  1   5
     
25 2 1 0    5 26  2  1 1 4
       
A  2 5 1  b 2  A   5 0 1 b  11
 2 1  4  7  1  1 1 2
       
27 5 0 1 11 28  2 1 1   3 
       
A  1  3 1 b 3 A    5 1 1 b    9
 3  1 5 11   2 1  2   2
       
29  5  1 3  0  30 1 0  1 0
       
A  1  3 1 b    6 A  1 1 1  b  1
 0 1 2  0  4 1 1  4
       

2 По схеме Халецкого решить системы линейных алгебраических


уравнений из п. 1 и сравнить результаты с полученными ранее.
3 Методом квадратного корня решить системы линейных алгебраи-
ческих уравнений из п. 1, преобразовав предварительно исходную матри-
цу А к симметричной. Например, пусть исходная матрица имеет вид
2 1 1
A   5 1 1  ,
 2 1 2 
 
тогда преобразованная матрица может выглядеть следующим образом
2 1 1   2 5 2 
A   1 1 1  или A   5 1 1  .
 1 1 2   2 1 2 
   
2 Итерационные методы численного решения
систем линейных алгебраических уравнений
Для приближенного решения больших систем линейных алгебраиче-
ских уравнений используются итерационные методы. Такие системы воз-
никают при приближенном решении многомерных краевых задач матема-
тической физики. Для решения системы алгебраических уравнений Ax = b
выбирается некоторое начальное приближение и последовательно нахо-
дятся приближенные решения (итерации) уравнения (1). Значение итера-
ции выражается через известные предыдущие итерации. Если при вычис-
лении текущей итерации используется только одна предыдущая итерация,
14
то итерационный метод называется одношаговым (или двухслойным) ме-
тодом; если текущая итерация рассчитывается через две предыдущие, то
метод называется двухшаговым (или трехслойным) и т.д. Кроме того, ите-
рационные методы делятся на явные и неявные. Будем рассматривать
только одношаговые явные методы. Точность итерационного метода ха-
рактеризуется величиной погрешности, определяемой как разность между
решением х(k), полученным на k-ой итерации и точным решением системы
линейных алгебраических уравнений x. Обычно задают некоторую по-
грешность >0, с которой надо найти приближенное решение х(k), и пре-
кращают вычисления, как только выполняется условие | x – х(k)|<.
2.1 Метод простой итерации
Пусть система линейных уравнений Ax = b каким-либо образом при-
ведена к виду
x =х+, (23)
где  – вектор столбец,  – некоторая матрица.
 x1(0) 
 (0) 
x
Исходя из произвольного вектора х(0)   2  ,
 ... 
 (0) 
 xn 
строим итерационный процесс х(k+1)= х(k)+, (k=0, 1, 2, …). Производя
итерации, получим последовательность векторов х(1), х(2), …, х(k), … Таким
образом, точное решение системы может быть получено в результате бес-
конечного процесса и всякий вектор х(k) из полученной последовательно-
сти является приближенным решением. Считается, что итерационный
процесс сходится, если какая-либо норма матрица |||| <1 при любом вы-
боре начального приближения х(0). Часто в расчетах полагают, что х(0)= .
Погрешность приближенного решения уравнения (23) на k-м шаге оцени-
вают неравенством
||  ||k 1
||x- х || 
(k)
||  || , (24)
1 ||  ||
где х – точное решение системы. Приближение х(k) в качестве решения с
точностью , можно представлять в следующей удобной для вычисли-
тельного процесса форме:
1 ||  ||
|| х(k) -х(k-1) ||  . (25)
||  ||
Пример 7. Решим систему линейных уравнений методом простой
итерации с погрешностью ε=10–2:

15
4𝑥1 + 𝑥2 − 𝑥3 = 5,
{2𝑥1 + 5𝑥2 + 𝑥3 = −5,
3𝑥1 + 𝑥2 + 5𝑥3 = 9.
Запишем систему в приведенной форме, разрешив уравнения отно-
сительно переменных
𝑥1 = 0𝑥1 − 0,25𝑥2 + 0,25𝑥3 + 1,25,
{ 𝑥2 = −0,4𝑥1 + 0𝑥2 − 0,2𝑥3 − 1 ,
𝑥3 = −0,6𝑥1 − 0,2𝑥2 + 0𝑥3 + 1,8 .
Приведенная матрица коэффициентов имеет вид:
0 −0,25 0,25
𝛼 = (−0,4 0 −0,2).
−0,6 −0,2 0
Рассчитаем нормуm приведенной матрицы
3

‖𝛼 ‖𝑚 = max {∑ |𝑎𝑖𝑗 |} = max{0,5; 0,6; 0,8} = 0,8.


1≤𝑖≤3
𝑗=1

Норма приведенной матрицы меньше единицы, условие сходимости мето-


да простой итерации выполняется. Для вычисления последовательности
итераций будем использовать уравнения:
(𝑘+1) (𝑘) (𝑘)
𝑥1 = −0,25𝑥2 + 0,25𝑥3 + 1,25,
{𝑥2(𝑘+1) = −0,4𝑥1(𝑘) − 0,2𝑥3(𝑘) − 1 ,
(𝑘+1) (𝑘) (𝑘)
𝑥3 = −0,6𝑥1 − 0,2𝑥2 + 1,8.
Окончание итерационного процесса определяется условием
‖𝛼 ‖
‖𝑋 (𝑘+1) − 𝑋 (𝑘) ‖ ≤ 𝜀.
1 − ‖𝛼 ‖
В качестве начального приближения возьмем вектор-столбец сво-
бодных членов приведенной системы
1,25
𝑋 (0) = ( −1 ).
1,8
Найдем первое приближение
(1) (0) (0)
𝑥1 = −0,25𝑥2 + 0,25𝑥3 + 1,25 = −0,25 ∙ (−1) + 0,25 ∙ 1,8 = 1,95,
{𝑥2(1) = −0,4𝑥1(0) − 0,2𝑥3(0) − 1 = −0,4 ∙ 1,25 − 0,2 ∙ 1,8 − 1 = −1,86 ,
(1) (0) (0)
𝑥3 = −0,6𝑥1 − 0,2𝑥2 + 1,8 = −0,6 ∙ 1,25 − 0,2 ∙ (−1) + 1,8 = 1,25.
Найдем расстояние по норме m между векторами Х на нулевой и
первой итерации

16
(1) (0) (1) (0) (1) (0)
‖𝑋 (1) − 𝑋 (0) ‖ = max{|𝑥1 − 𝑥1 |; |𝑥2 − 𝑥2 |; |𝑥3 − 𝑥3 |} =
= max{|1,25 − 1,95|; | − 1 + 1,86|; |1,8 − 1,25|} =
= max{0,7; 0,86; 0,55} = 0,86,
тогда
‖𝛼 ‖𝑚 0,8
‖𝑋 (1) − 𝑋 (0) ‖𝑚 = 0,86 = 3,44 > 𝜀.
1 − ‖𝛼 ‖𝑚 1 − 0,8
Погрешность найденных на первой итерации значений корней пре-
восходит заданную величину ε=10–2. Вычисления необходимо продол-
жать, до тех пор, пока не будут найдены значения корней с заданной по-
грешностью.
(2) (1) (1)
𝑥1 = −0,25𝑥2 + 0,25𝑥3 + 1,25 = −0,25 ∙ (−1,86) + 0,25 ∙ 1,25 = 2,0275,
{𝑥2(2) = −0,4𝑥1(1) − 0,2𝑥3(1) − 1 = −0,4 ∙ 1,95 − 0,2 ∙ 1,25 − 1 = −2,03 ,
(2) (1) (1)
𝑥3 = −0,6𝑥1 − 0,2𝑥2 + 1,8 = −0,6 ∙ 1,95 − 0,2 ∙ (−1,86) + 1,8 = 1,002.
‖𝛼 ‖𝑚 0,8
‖𝑋 (2) − 𝑋 (1) ‖𝑚 = 0,0195 = 0,078 > 𝜀.
1 − ‖𝛼 ‖𝑚 1 − 0,8
Вычисления продолжаем. Результаты итераций приведены в таблице
1.
Таблица 1 – Последовательность итераций
‖𝛼 ‖
k х1 х2 х3 ‖𝑋 (𝑘+1) − 𝑋 (𝑘) ‖
1 − ‖𝛼 ‖
0 1,25 –1 1,8
1 1,95 –1,86 1,25 3,44> ε=10–2
2 2,0275 –2,03 1,002 0,992> ε=10–2
3 2,008 –2,0114 0,9895 0,078> ε=10–2
4 2,000225 –2,0011 0,99748 0,0412> ε=10–2
5 1,999645 –1,99959 1,000085 0,01042> ε=10–2
6 1,999918 –1,99988 1,00013 0,001156< ε=10–2
Заданная точность решения достигается на шестой итерации.
Решить систему линейных уравнений методом простой итерации
можно очень легко, используя электронные таблицы Excel. На рисунках 1
– 4 показаны последовательные шаги решения системы линейных уравне-
ний методом простой итерации.

17
Рисунок 1 – Расчет нормы приведенной матрицы

Рисунок 2 – Расчет значений корней на первой итерации

Рисунок 3 – Расчет расстояния по норме между двумя


соседними итерациями

18
Рисунок 4 – Проверка условия окончания итерационного процесса
2.2 Метод Зейделя
Метод Зейделя является модификацией метода простой итерации.
Он заключается в том, что при вычислении (k+1)-го приближения неиз-
вестного xi при i>1 используются уже вычисленные ранее (k+1)-е прибли-
жения неизвестных х1, х2, …, хi-1, т.е.
x1( k 1)  11 x1( k )  12 x2( k )  ...  1n xn( k )
x2( k 1)   21 x1( k 1)   22 x2( k )  ...   2 n xn( k )
(26)
... .... ......
xn( k 1)   n1 x1( k 1)   n 2 x2( k 1)  ...   n1,n xn( k11)   nn xn( k )
Условия сходимости для метода простой итерации остаются верны-
ми и для метода Зейделя. Обычно метод Зейделя сходится быстрее метода
простой итерации
Пример 8. Решить систему линейных уравнений методом Зейделя с
погрешностью ε=10–2.
4𝑥1 + 𝑥2 − 𝑥3 = 5,
{2𝑥1 + 5𝑥2 + 𝑥3 = −5,
3𝑥1 + 𝑥2 + 5𝑥3 = 9.
Условие сходимости метода Зейделя аналогично условию сходимо-
сти метода простой итерации и может быть записано в виде
𝑛

|𝑎𝑖𝑖 | > ∑ |𝑎𝑖𝑗 |, 𝑖 = 1, 2, … , 𝑛.


𝑗=1
𝑖≠𝑗
Данное условие выполняется для всех уравнений системы.
Итерационные уравнения методы Зейделя имеют вид
(𝑘+1) (𝑘) (𝑘)
𝑥1 = −0,25𝑥2 + 0,25𝑥3 + 1,25,
{ 𝑥2(𝑘+1) = −0,4𝑥1(𝑘+1) − 0,2𝑥3(𝑘) − 1,
(𝑘+1) (𝑘+1) (𝑘+1)
𝑥3 = −0,6𝑥1 − 0,2𝑥2 + 1,8 .
Найдем первое приближение

19
(1) (0) (0)
𝑥1 = −0,25𝑥2 + 0,25𝑥3 + 1,25 = −0,25 ∙ (−1) + 0,25 ∙ 1,8 = 1,95,
{ 𝑥2(1) = −0,4𝑥1(1) − 0,2𝑥3(0) − 1 = −0,4 ∙ 1,95 − 0,2 ∙ 1,8 − 1 = − 2,14,
(1) (1) (1)
𝑥3 = −0,6𝑥1 − 0,2𝑥2 + 1,8 = −0,6 ∙ 1,25 − 0,2 ∙ (−1) + 1,8 = 1,058.
Условия сходимости для метода простой итерации остаются верны-
ми и для метода Зейделя. Обычно метод Зейделя сходится быстрее метода
простой итерации. Результаты итераций по методу Зейделя приведены в
таблице 2.
Таблица 2 – Последовательность итераций по методу Зейделя
‖𝛼 ‖
k х1 х2 х3 ‖𝑋 (𝑘+1) − 𝑋 (𝑘) ‖
1 − ‖𝛼 ‖
0 1,25 –1 1,8
1 1,95 –2,14 1,058 4,56> ε=10–2
2 2,0495 –2,0314 0,97658 0,4344> ε=10–2
3 2,001995 –1,996114 0,9980258 0,19002> ε=10–2
4 1,998535 –1,999019 1,0006829 0,01385> ε=10–2
5 1,9999255 –2,000107 1,0000661 0,00557 < ε=10–2
Задание 2
Найти решение системы линейных алгебраических уравнений Ax = b
(Задание 1) методом простой итерации и методом Зейделя с точностью
=10-2. Сравнить их с точным решением, полученным по методу Гаусса.
Какой из итерационных методов сходится быстрее?
Контрольные вопросы
1. Как выглядит решение системы линейных уравнений, если матрица
коэффициентов диагональная, треугольная?
2. Какие методы относятся к прямым (точным)?
3. Какие методы относятся к итерационным)
4. Какая идея лежит в основе методы Гаусса?
5. За счет чего обеспечивается уменьшение вычислительной погрешно-
сти улучшенного метода Гаусса?
6. Какая идея лежит в основе метода Халецкого?
7. Какие ограничения накладываются на использование метода квад-
ратного корня?
8. В чем отличие метода простой итерации от метода Зейделя?
9. Каков критерий существования единственного решения системы ли-
нейных уравнений при использовании метода простых итераций, метода
Зейделя?
10. Каков критерий окончания итерационного процесса метода
простых итераций?
20
Список литературы
1 Петров, И.Б. Лекции по вычислительной математике : учебное по-
собие / И.Б. Петров, А.И. Лобанов. – М. : Интернет-Университет Инфор-
мационных Технологий : Бином. Лаборатория знаний , 2010. – 522 с.
2 Волков Е.А. Численные методы : учебное пособие для вузов / Е.А.
Волков. – СПб. : Лань , 2007. – 248 с.
3 Кетков Ю. Л. MATLAB 6.х. : программирование численных мето-
дов / Ю. Л. Кетков. – Санкт-Петербург : БХВ-Петербург, 2004. – 662 с.
4 Поршнев С.В. Вычислительная математика: Курс лекций / С.В.
Поршнев. – СПб: БХВ-Петербург, 2004. – 320 с.
5 Самарский А.А. Введение в численные методы / А.А. Самарский.
– М.: Наука, 1982. – 272 с.
6 Самарский А.А. Численные методы : Учебное пособие для вузов /
А.А. Самарский, А.В. Гулин. – М.: Наука, 1989. – 432 с.
7 Копченова Н.В., Марон И.А. Вычислительная математика в при-
мерах и задачах: Учебное пособие. 3-е изд., стер. / Н.В. Копченова, И.А.
Марон – СПб.: Издательство «Лань», 2009. – 368 с.
8 Турчак Л.И. Основы численных методов. – М.: Наука, 1987. – 320
с.
9 Ракитин В.И. Практическое руководство по методам вычислений с
приложениями программ для персональных компьютеров: Учеб. пособие /
В.И. Ракитин, В.Е. Первушин. – М.: Высш. шк., 1998. – 383 с.
10 Петров И. Б. Лекции по вычислительной математике : учебное по-
собие / И. Б. Петров, А. И. Лобанов. – Москва : ИУИТ, Бином, 2010. – 522
с.
11 Пантина И. В. Вычислительная математика : учебник для вузов /
И. В. Пантина, А. В. Синчуков. – 2-е изд., перераб. и доп. – Москва : Си-
нергия, 2012. – 176 с.

21

Вам также может понравиться