Uploaded by Дарья Васина

pv

advertisement
Учреждение образования
«Брестский государственный университет имени А.С. Пушкина»
О.В. Матысик
В.Ф. Савчук
ВЫЧИСЛИТЕЛЬНЫЕ МЕТОДЫ
Электронный учебно-методический комплекс
для студентов математического факультета
Брест
БрГУ имени А.С. Пушкина
2011
2
СОДЕРЖАНИЕ
Предисловие......................................................................................................... 5
§1.
Учет погрешностей вычислений............................................................. 6
§2.
Оценка погрешностей результатов действий
над приближенными значениями чисел................................................. 9
§3.
Приближенные вычисления без учета погрешностей ........................ 10
§4.
Связь между количеством верных цифр
и относительной погрешностью............................................................ 12
§5.
Функция от приближенных значений аргументов.............................. 13
§6.
Обратная задача теории погрешностей ................................................ 15
§7.
Метод границ .......................................................................................... 16
Лабораторная работа № 1 .................................................................... 137
Лабораторная работа № 2 .................................................................... 144
§8.
Понятие корректно и некорректно поставленных задач .................... 21
§9.
Решение уравнений с одним неизвестным. Дихотомия ..................... 24
§10. Метод простой итерации для алгебраических
и трансцендентных уравнений .............................................................. 25
§11. Метод хорд ............................................................................................. 30
§12. Метод касательных................................................................................. 34
§13. Метод секущих........................................................................................ 37
Лабораторная работа № 3 .................................................................... 147
§14. Вычисление собственных векторов
и собственных значений матрицы ........................................................ 39
§15. Приведение симметрической матрицы
к трехдиагональной форме методом вращений................................... 40
§16. Определение коэффициентов характеристического
многочлена для трехдиагональной матрицы ....................................... 43
§17. Вычисление собственных векторов
для симметричных матриц..................................................................... 45
§18. Итерационные методы определения собственных
векторов и собственных значений матрицы ........................................ 47
3
§19. Численные методы решения систем
линейных алгебраических уравнений .................................................. 50
§20. Метод исключения Гаусса ..................................................................... 51
Лабораторная работа № 4 .................................................................... 153
§21. Метод Гаусса. Схема с выбором главного элемента .......................... 54
Лабораторная работа № 5 .................................................................... 155
§22. Вычисление обратной матрицы методом Гаусса ................................ 55
§23. Метод оптимального исключения ........................................................ 61
§24. Метод квадратного корня ...................................................................... 63
§25. Вычисление определителей................................................................... 66
Лабораторная работа № 6 .................................................................... 157
Лабораторная работа № 7 .................................................................... 158
§26. Метод ортогонализации ......................................................................... 68
§27. Прогонка .................................................................................................. 69
§28. Плохо обусловленные системы............................................................. 71
§29. Итерационные методы ........................................................................... 72
§30. Метрические пространства.................................................................... 73
§31. Принцип сжимающих отображений..................................................... 77
§32. Метод простой итерации для решения систем
линейных алгебраических уравнений .................................................. 79
Лабораторная работа № 8 .................................................................... 163
§33. Решение систем нелинейных уравнений.............................................. 86
§34. Метод Ньютона для нелинейных систем уравнений .......................... 90
§35. Интерполирование функций.................................................................. 92
§36. Интерполяционный многочлен Лагранжа ........................................... 93
Лабораторная работа № 9 .................................................................... 167
§37. Конечные разности. Разделенные разности......................................... 94
§38. Интерполяционный многочлен Ньютона............................................. 96
Лабораторная работа № 10 .................................................................. 171
4
§39. Интерполирование внутри таблицы.
Интерполяционная формула Стирлинга .............................................. 98
§40. Численное дифференцирование
(применение интерполированияк вычислению производных)........ 100
§41. Некоторые частные формулы вычисления производных ................ 101
§42. Эмпирические формулы. Метод наименьших квадратов ................ 103
Лабораторная работа № 11 .................................................................. 177
§43. Приближенное вычисление определенных интегралов.
Квадратурные формулы Ньютона-Котеса ......................................... 105
§44. Формула трапеций ................................................................................ 107
Лабораторная работа № 12 .................................................................. 181
§45. Формула Симпсона (парабол) ............................................................. 110
Лабораторная работа № 13 .................................................................. 186
§46. Формулы прямоугольников................................................................. 112
§47. Формула «трех восьмых»..................................................................... 113
§48. Выбор шага интегрирования. Правило Рунге.................................... 114
§49. Аналитические методы решения задачи Коши ................................. 116
§50. Метод Эйлера ........................................................................................ 118
Лабораторная работа № 14 .................................................................. 190
§51. Метод Рунге-Кутта ............................................................................... 120
Лабораторная работа № 15 .................................................................. 194
§52. Задача линейного программирования ................................................ 123
§53. Графический метод решения задач
линейного программирования............................................................. 125
§54. Симплекс-метод решения задач
линейного программирования............................................................. 127
Лабораторная работа № 16 .................................................................. 203
Литература ....................................................................................................... 206
5
ПРЕДИСЛОВИЕ
Настоящий учебно-методический комплекс предназначен для студентов стационара математического факультета специальностей «Экономическая кибернетика», «Прикладная математика», «Математика. Информатика», «Информатика. Иностранный язык (английский)» и студентов
ОЗО. Он составлен в соответствии с действующей базовой программой
курса «Вычислительные методы и компьютерное моделирование», утвержденной Советом Брестского государственного университета имени А.С.
Пушкина.
В учебно-методическом комплексе излагается курс лекций по темам
дисциплины «Вычислительные методы»: теория погрешностей, методы
решения уравнений с одним неизвестным, проблема нахождения собственных векторов и собственных значений, приближение функций, численное дифференцирование, обработка данных эксперимента, приближенное
вычисление интегралов, аналитические и численные методы решения задачи Коши для обыкновенных дифференциальных уравнений, методы решения задач линейного программирования. Приводятся образцы выполнения лабораторных работ и даются задания к лабораторным работам.
Учебно-методический комплекс ставит своей целью облегчить самостоятельную работу студентов с теоретическим материалом при подготовке к лабораторным занятиям и экзамену.
6
§1. Учет погрешностей вычислений
При решении математических задач появляются погрешности по
различным причинам. Можно выделить следующие основные источники
погрешностей.
1. При составлении математической модели какого-либо явления
приходится принимать некоторые условия, упрощающие задачу. Таким образом, математическая формулировка задачи не точно отображает реальные явления, а лишь дает в некоторой степени идеализированную картину.
При этом возникает погрешность постановки задачи.
2. Бывает, что в данной постановке задачу решить трудно или вообще
невозможно. Тогда применяют некоторый метод приближенного решения
задачи, т.е. данную задачу заменяют задачей, решение которой в определенном смысле близко к решению данной задачи. Погрешность, возникающую при этом, называют погрешностью метода.
3. Погрешность могла быть вызвана тем, что при вычислениях приходится производить действия над приближенными, а не точными значениями параметров, входящих в математическую формулу. Очевидно, что
погрешность таких начальных данных (начальная погрешность) в некоторой степени переносится в результат. Такую погрешность называют погрешностью действий.
4. Погрешность возникает при округлении бесконечных и конечных
десятичных чисел, имеющих большее количество значащих цифр или десятичных знаков, чем требуется при вычислениях. Это погрешность округления.
Таким образом, погрешность результата решения задачи складывается из погрешностей, возникающих по разным причинам.
Пусть х – некоторое число. Приближенным значением (или приближением) числа х называют некоторое число а, которое в определенном
смысле мало отличается от х и заменяет его в вычислениях. Запись х ≈ а
будет означать в дальнейшем, что число а есть приближенное значение
числа х.
Определение 1.1. Погрешностью ∆ а приближенного значения а числа х называют разность ∆ а = х − а.
7
Модуль погрешности (абсолютная погрешность) указывает, насколько отличается приближение от точного значения. По знаку погрешности
можно определить, как взято приближение а с избытком или недостатком.
Погрешность положительна, если приближение а взято с недостатком и
отрицательнa в противном случае. Границей приближенного значения а
числа х называют всякое неотрицательное число ha , которое не меньше
модуля погрешности ∆ а ≤ h . Говорят, что число а является приближенным
значением числа х с точностью до ha , если выполнено неравенство
х − а ≤ hа .
Отсюда следует, что число
х
заключено в границах
a – ha ≤ x ≤ a + ha. Запись х = а ± hа означает, что число a есть приближенное значение числа x с точностью до hа.
Пример 1. Число a = 0,273 – приближенное значение числа x с точностью до 0,001.Указать границы, в которых заключено число x.
Решение.
a – 0,001 ≤ х ≤ a + 0,001 , 0,272 ≤ х ≤ 0, 274.
Определение 1.2. Относительной погрешностью ωа приближенно∆
го значения а ( а ≠ 0 ) числа x называют отношение ωа = а .
а
При округлении чисел считают, что граница погрешности округления
равна половине единицы округляемого разряда hokp = 0,5 ⋅ 10α , где α – порядок округляемого разряда.
Пример 2. Округлить до разряда единиц числа а) 2,3; б) 1,998; в) 4,5.
Решение.
Граница погрешности округления равна 0,5, h okp =0,5. После округления получим числа 2, 2, 4.
Пример 3. Округлить до десятых следующее число 27,52. Найти погрешность и относительную погрешность округления.
Решение.
∆
0,02
1
=
.
x = 27,52; a = 27,5; ∆a = x – a = 0,02; ωa = a =
a 27,5 1375
Так же, как и погрешность, относительная погрешность не всегда может быть вычислена, поэтому приходится иногда лишь оценивать ее модуль.
8
Модуль относительной погрешности часто выражают в процентах.
Чем меньше модуль относительной погрешности, тем лучше приближенное значение характеризует точное значение числа или тем выше качество
приближения.
Определение 1.3. Границей относительной погрешности приближенного значения а числа х называют всякое неотрицательное число ε а ,
которое не меньше модуля относительной погрешности: ωа ≤ ε а .
Связь между границами погрешности
и границами относительной погрешности.
Пусть известны a и его граница погрешности ha , тогда
ωа =
∆ а ha
≤ .
а
a
Следовательно, за границу относительной погрешности ε а можно
принять отношение
ha
h
, т.е. ε а = а .
a
a
Пусть известны приближение a и граница его относительной погрешности ε а . Тогда ∆ а ≤ а ε a , т.е. ha = a ε a – граница погрешности.
Округление приближенных значений чисел
Пусть x – число; a – приближенное значение числа x.
При округлении приближенного значения a числа x получается новое
приближенное значение a1 того же числа x.
Вычислим погрешность этого нового приближения a1:
∆ a1 = x − a1 = x − a + a − a1 = ( x − a ) + ( a − a1 ) = ∆ a + ∆ окр ≤
≤ ∆ a + ∆ окр ≤ ha + ∆ окр ,
где ∆ окр – погрешность округления a до a1;
ha – граница погрешности приближения a.
Таким образом, за границу погрешности полученного приближения
a1 можно принять сумму границ погрешности округляемого приближенного значения и погрешности округления:
ha + ∆ окр = ha1 .
9
Таким образом, доказана
Теорема 1.1. При округлении приближенного значения числа получается новое приближенное значение, для которого границей погрешности
является сумма границ погрешности округляемого приближения и погрешности округления.
§2. Оценка погрешностей результатов действий
над приближенными значениями чисел
n
Пусть X = ∑ xi , где xi − некоторые числа любого знака, заданные
i =1
n
приближениями аi c точностью до hai . Обозначим A = ∑ ai .
Тогда
i =1
X = A ± hA, где hA – граница погрешности суммы приближенных значений ai..
Теорема 2.1. Сумма границ погрешностей приближенных слагаемых
является границей погрешности их алгебраической суммы:
n
∑ ha
i =1
i
= hA .
Доказательство
∆A = X − A =
n
n
∑ xi − ∑ ai =
i =1
i =1
n
n
n
∑ ( xi − ai ) ≤ ∑ xi − ai ≤ ∑ hai , т.е.
i =1
i =1
i =1
n
∑ ha
i =1
i
= hA ,
ч.т.д.
Теорема 2.2. Среди границ относительной погрешности суммы положительных приближенных слагаемых существует такая, которая не
превышает наибольшей из границ относительных погрешностей слагае-
{
}
мых: ε A ≤ max ε a1 , ε a2 ,..., ε an .
Теорема 2.3. Сумма границ относительных погрешностей приближенных сомножителей является границей относительной погрешности
их произведения: ωаb ≤ ε а + ε b , ( x = a ± ha , y = b ± hb ) .
Следствие 2.1. При умножении приближенного значения числа на
точный множитель k граница относительной погрешности не изменяется, а граница погрешности увеличивается в к раз.
10
Следствие 2.2. Произведение границы относительной погрешности
приближенного значения а числа х на n является границей относительной
погрешности результата возведения а в целую положительную степень n:
ωа n ≤ n ε a .
Следствие 2.3. Частное границы относительной погрешности приближенного значения а числа х и n является границей относительной погрешности корня n-ой степени из а : ωn a ≤
εa
.
n
Теорема 2.4. Сумма границ относительных погрешностей приближенных значений делителя и делимого является границей относительной
погрешности частного: ω а ≤ ε a + ε b .
b
§3. Приближенные вычисления без учета погрешностей
Правило 3.1. Для того, чтобы вычислить алгебраическую сумму
приближенных слагаемых, нужно:
1) среди слагаемых выделить наименьшее точное,
2) все остальные слагаемые округлить, сохраняя один запасной разряд,
следующий за последним разрядом в выделенном слагаемом,
3) cложить полученные после округления числа,
4) округлить полученный результат до предпоследнего разряда.
Пример 1. Найти сумму приближенных слагаемых 2,737; 0,77974;
27,1; 0,283.
Решение.
1) Наименее точным слагаемым является 27,1.
2) Округляем остальные слагаемые до сотых: 2,74; 0,78; 27,1; 0,28.
3) Сумма равна 39,90.
4) Округляем до десятых 30,9.
Определение 3.1. Значащими цифрами в десятичной записи числа
называют все его цифры, кроме нулей, записанных слева от первой цифры,
отличной от нуля.
Правило 3.2. Для того, чтобы произвести умножение (деление)
приближенных значений чисел, следует:
11
1) выделить сомножитель, имеющий наименьшее количество значащих
цифр,
2) округлить остальные сомножители, сохраняя на одну запасную значащую цифру больше, чем в выделенном сомножителе,
3) произвести умножение (деление),
4) полученный результат округлить, сохраняя столько значащих цифр,
сколько их в выделенном сомножителе.
Пример 2. Вычислить ρ = 4,748 ⋅3,34 ⋅ 0,7 .
Решение.
1) Hаименьшее число значащих цифр в 0,7, только одна.
2) Остальные сомножители округляем, сохраняя по две значащие цифры
4,7 и 3,3.
3) 4,7 ⋅ 3,3 ⋅ 0,7 = 10,657 .
4) Округляем
результат,
сохраняя
одну
значащую
цифру,
как
в
выделенном сомножителе: 1·101 . Следовательно, ρ = 1·101 .
Правило 3.3. При возведении приближенного значения в квадрат или
куб, а также при извлечении корня квадратного или кубического из него в
результате следует сохранить столько значащих цифр, сколько их имеет
основание.
Правило 3.4. Если число является результатом промежуточных
действий, то следует сохранить в нем на одну-две цифры больше, чем указано в правилах 3.1.–3.3.
Правило 3.5. При вычислениях с заданной точностью исходные данные следуют брать с таким количеством верных цифр, чтобы действуя
по правилам 3.1.–3.4., обеспечить количество верных цифр на одну больше,
чем требуется. Иначе говоря, при небольшом количестве промежуточных
действий количество значащих (десятичных) цифр в исходных данных следует брать на одну – две больше, чем требуется в результате.
Правило 3.6. При вычислении по таблицам значения синуса и косинуса приближенного аргумента, выраженного в радианах, в результате
следует сохранить столько десятичных знаков, сколько их имеет аргумент.
12
Правило 3.7. Если приближенное значение угла, выраженное в радианах, принадлежит промежутку  − π , π  , то при вычислении значе 4 4
ния тангенса этого угла в результате следует сохранить не больше десятичных знаков, чем иx имеет приближенное значение угла.
Правило 3.8. При вычислении мантиссы десятичного логарифма
приближенного аргумента в результате следует сохранять на один десятичный знак меньше, чем количество значащих цифр аргумента. При
этом в результате все цифры верные, если они верны в аргументе.
Правило 3.9. Если значение функции является результатом промежуточных действий, то следует сохранять в нем на одну цифру больше,
чем рекомендуют правила 3.6–3.8.
§4. Связь между количеством верных цифр
и относительной погрешностью
Пусть х ≈ а , ∆ а = х − а .
Определение 4.1. Цифра приближенного значения, записанная в разряде α , называется верной, если модуль его погрешности ∆ а не превосходит половины единицы этого разряда, т.е. ∆ а ≤ 0,5 ⋅ 10α .
Очевидно, что слева от верной цифры находятся верные цифры.
Пример 1. x = 27,421; a = 27,384; ∆ а = 0,037.
Решение.
неверно
4 – неверная, так как ∆ а = 0,037 ≤
неверно
8 – неверная, так как ∆ а = 0,037 ≤
0,5·10-3 = 0,0005.
0,5·10-2 = 0,005.
3 – верная, так как ∆ а = 0,037 ≤ 0,5·10-1 = 0,05.
Итак, 2, 7, 3 – верные цифры.
Пусть известно количество m верных значащих цифр приближенного
значения числа, тогда в стандартной форме его можно записать так:
a = ± β 0 , β −1β −2 ...β − m+1 ⋅ 10n , где 1 ≤ β 0 ≤ 9, 0 ≤ β −i ≤ 9, i = 1, m − 1 .
По предположению, m-ая цифра верна, поэтому ∆ а ≤ 0,5 ⋅ 10− m+1 ⋅ 10n .
13
ha
0,5 ⋅ 10n−m+1
0,5 − m+1
Тогда ωa ≤
10
=
≤
≤ 0,5 ⋅ (0,1)m−1.
n
β0
a β 0 , β −1...β − m+1 ⋅ 10
Итак, доказана
Теорема 4.1. Если приближение имеет m верных значащих цифр, то
число 0,5·(0,1)m–1 является границей его относительной погрешности.
Замечание. Пусть приближение имеет m верных значащих цифр. Если известна первая значащая цифра приближения, то за границу относительной погрешности можно принять число
1
2
β 0 (0,1)m−1 ≥ 0,5 ⋅ ( 0,1)
m−1
1
2
β 0 (0,1) m−1, поскольку
.
Граница относительной погрешности зависит от количества верных
значащих цифр m, от величины первой из них β0, но не зависит от порядка
числа n.
Теорема 4.2. Если граница относительной погрешности равна 0,5
m
(0,1) , то приближение а имеет не менее m верных значащих цифр.
Доказательство
Пусть β 0 − первая значащая цифра приближенного значения а и n –
порядок разряда этой цифры. Тогда ∆ а ≤ ε а ⋅ a ≤ 0,5 ⋅ ( 0,1)
m
( β0 + 1) ⋅ 10n ≤
≤ 0,5 ⋅ 10 ⋅ 10n−m = 0,5 ⋅ 10− m+1 ⋅ 10n , т.е. ∆ а ≤ 0,5 ⋅ 10− m+1 ⋅ 10n .
Следовательно, цифра записанная в − ( m − 1) разряде значащей части
числа верная, следовательно, после запятой верных m − 1 цифр и еще β0 –
верная, итого всех верных цифр не менее m, ч.т.д.
Пример 2. Если известно, что относительная погрешность приближения по модулю не превосходит 0,03%, то согласно теореме это приближение имеет не менее трех значащих верных цифр, так как 0,03% =
= 0,0003 < 0,5 ⋅ ( 0,1) .
3
§5. Функция от приближенных значений аргументов
Пусть функция y = f ( x1, x2 ,..., xn ) задана в области G и дифференцируема в ней по всем переменным хi .
14
(
)
Пусть аi – приближенное значение аргумента хi , i = i, n , ∆ ai – погрешность аi, причем точка A ( a1, a2 ,..., an ) ∈ G.
Требуется оценить погрешность приближенного значения функции
yɶ = f ( a1, a2 ,..., an ) . Имеем ∆ yɶ = y − yɶ = f ( x1, x2 ,..., xn ) − f ( a1, a2 ,..., an ) =
= f ( a1 + ∆а1,..., an + ∆аn ) − f ( a1, a2 ,..., an ) .
Если предположить, что ∆ai достаточно малые величины, то их произведениями, квадратами и высшими степенями можно пренебречь.
Тогда получим
∆ yɶ ≈ df ( a1, a2 ,...an )
n 
n 
 ∂f 
∂f 
∂f 
⋅
∆
≤
= ∑
⋅
∆
a
≤
a

∑  ∂x 
∑  ∂x  hai
i
i
∂
x
i
i
i A




i =1
i =1
i =1 
A
A
n
n 
∂f 
Поэтому за границу погрешности yɶ можно взять hyɶ = ∑ 
 hai .
x
∂
i A
i =1 
f ( a1, a2 ,..., an ) > 0, то, разделив последнее равенство на
Если
f ( a1, a2 ,..., an ) , получим оценку модуля относительной погрешности yɶ :
n
n 
hyɶ
 ∂f 
1
∂ ln f 
hai = ∑ 
≤∑


 hai .
yɶ i =1 f ( a1, a2 ,..., an )  ∂xi  A
∂
x
i A
i =1 
 ∂ ln f ( x1, ...xn ) 
Следовательно, ε yɶ = ∑ 
 hai .
∂
x
i
A
i =1 
n
Пример 1. Вычислить величину погрешности приближенного значения большего корня уравнения х2 + ρх + q = 0 ( ρ =ɺ 3,5, q =ɺ −7,8 ) , обусловленной погрешностями приближенных значений коэффициентов. (Точка над
знаком «=» означает, что в записи числа участвуют только верные цифры).
Решение.
ρ
2
ρ
x1 ( ρ , q ) = − +   − q ; ρ =ɺ 3,5; q =ɺ −7,8; ρɶ = 3,5; qɶ = −7,8 ;
2
2
x1 ( ρɶ , qɶ ) = xɶ1 (обозначим), hρɶ = 0,05 , hqɶ = 0,05 .
Тогда
15
 ∂x ( ρ , q ) 
 ∂x1 ( ρ , q ) 
∆ xɶ1 ≤  1
 ⋅ hρɶ + 
 ⋅ hqɶ =
∂q
 ∂ρ
 ρɶ ,qɶ

 ρɶ ,qɶ
1
=− +
2
1
= − +
2
ρɶ
2
 ρɶ 
4 ⋅   − qɶ
2
3,5
hρɶ +
⋅ 0,05 +
2
 3,5 
4⋅ 
 + 7,8
 2 
1
2
 ρɶ 
2 ⋅   − qɶ
2
1
2
hqɶ =
⋅ 0,05 ≤ 0,02 .
 3,5 
2⋅ 
 + 7,8
 2 
Таким образом, hxɶ1 = 0,02 .
§6. Обратная задача теории погрешностей
Все задачи теории погрешностей можно разделить на два класса:
прямые и обратные задачи.
Прямая задача. Определить погрешность данной функции от приближенных значений аргументов, заданных с известной относительной или
абсолютной точностью (см. раздел 5).
Обратная задача. Какими должны быть абсолютные или относительные погрешности аргументов, чтобы модуль абсолютной или относительной погрешности значения функции от этих аргументов не превышал заданной величины.
Пусть y = f ( x1, x2 ,..., xn ) – функция непрерывно-дифференцируемая
в области G. Пусть точка A ( a1, a2 ,..., an ) ∈ G вместе с параллелепипедом
(
)
ai − hai ≤ xi ≤ ai + hai , i = 1, n .
С какой точностью hai следует взять приближенные значения ai аргументов xi , чтобы погрешность значения функции yɶ = f ( a1, a2 ,..., an ) не
превышала по модулю заданную величину hyɶ . Из условия задачи имеем:
 ∂f 
∆ yɶ ≤ ∑ 
 ⋅ hai ≤ hyɶ .
x
∂
i A
i =1 
n
16
Существуют различные подходы к решению этой задачи. Рассмотрим
принцип равных влияний, который заключается в дополнительном предположении, что погрешности всех аргументов вносят одинаковые доли в погрешность функции, т.е. все частные дифференциалы равны между собой
по модулю. Тогда
hyɶ
 ∂f 
⋅
h
≤
, i = 1, n .


ai
x
n
∂
 i A
Отсюда следует: для того, чтобы значение yɶ было вычислено с точностью до hyɶ , достаточно, чтобы погрешности аргументов не превосходили по модулю
hai ≤
hyɶ
 ∂f 
n

 ∂xi  A
, i = 1, n .
Иногда при решении обратной задачи предполагают, что погрешность всех аргументов одна и та же, т.е. ha1 = ha2 = ... = han = h,
тогда hai = h ≤
hyɶ
 ∂f 
∑  ∂x 
i A
i =1 
n
, i = 1, n.
Пример 1. С каким числом десятичных знаков следует представить
дроби, чтобы сумма S = 1 23 − 1 28 + 13 − 1 7 могла быть получена с точностью
до 0,001?
Решение.
Обозначим x1 =
1
23 ,
x2 =
1
28 ,
x3 =
1
3,
x4 =
1
7.
Тогда S = x1 − x2 + x3 − x4. Обозначим приближенное значение суммы,
получаемое как сумма приближенных значений xɶ аргументов x буквой Sɶ ,
i
i
Sɶ − S ≤ hsɶ . Тогда hsɶ не должно превосходить 0,001. Положим hsɶ = 0,001.
Требуется установить допустимые границы погрешностей
hxɶi
hsɶ
= 0,00025. Таким обра4
зом, дроби следует представлять в десятичном виде так, чтобы модуль по-
( i = 1,2,3,4 ).
По принципу равных влияний: hxɶi ≤
17
грешности не превосходил 0,00025, т.е. с четырьмя десятичными знаками.
При этом модуль погрешности не будет превосходить не только 0,00025 но
и 0,00005, а следовательно, вычисление суммы с указанной точностью будет заведомо обеспечено.
§7. Метод границ
Метод границ позволяет установить границы, в которых заключено
значение, вычисляемое по формуле, если известны границы, в которых заключены значения параметров, содержащихся в этой формуле.
Рассмотрим сначала метод границ для четырех действий арифметики, а также действий возведения в целую положительную степень и извлечения корня.
Для этого нижнюю и верхнюю границы, в которых заключено значение некоторой переменной будем обозначать соответственно НГ и ВГ.
Например,
HГх, BГх – границы для х ,
HГy, BГy – границы для y ,
HГхy, BГхy – границы для произведения хy .
Теорема 7.1. Сумма верхних (нижних) границ слагаемых является
верхней (нижней) границей суммы:
HГх+y = HГх + HГy ;
BГх+y = BГх + BГy.
Доказательство
Действительно, если справедливы неравенства: HГх ≤ x ≤ BГх и
HГy ≤ y ≤ BГy, то по теореме о сложении неравенств, будет справедливо неравенство HГх + BГх ≤ x + y ≤ BГх + BГy , ч.т.д.
Пример 1. Найти сумму x + y, если известны границы, в которых заключены x и y: 5,7 ≤ x ≤ 8,4; 3,3 ≤ y ≤ 5,4.
Решение.
HГx = 5,7; BГх = 8,4.
HГy = 3,3; BГy = 5,4.
Отсюда
HГх+y = HГх + HГy = 9.0,
18
BГх+y = BГх+BГy = 13,8,
т. е. 9,0 ≤ x + y ≤ 13,8.
Теорема 7.2. Разность верхней (нижней) границы уменьшаемого и
нижней (верхней) границы вычитаемого является верхней (нижней) границей разности:
HГх-y = HГх – BГy;
BГх-y = BГх – HГy .
Доказательство
По теореме о вычитании неравенств противоположного смысла
HГх – BГy ≤ x – y ≤ BГx – HГy, ч.т.д.
Пример 2. Найти разность x – y, если известны границы, в которых
заключены x и y:
5,2 ≤ х ≤ 8,8; 3,2 ≤ y ≤ 5,0.
Решение.
HГx = 5,2; BГх = 8,8;
HГy = 3,2; BГy = 5,0.
Отсюда
HГх-y = HГх – BГy = 0,2;
BГх-y = BГх – HГy = 5,6 и 0,2 ≤ х − y ≤ 5,6 .
Теорема 7.3. Пусть нижние границы сомножителей неотрицательные. Тогда произведение верхних (нижних) границ сомножителей является верхней (нижней) границей произведения:
BГxy = BГx · BГy,
HГхy = HГх · HГy.
Доказательство
Так как HГх ≤ х ≤ BГx и HГy ≤ y ≤ BГy, то по теореме о произведении
неравенств одного смысла имеем HГх· HГy ≤ хy ≤ BГx· BГy, ч.т.д.
Пример 3. Вычислить произведение xy, если известно:
3,7 ≤ x ≤ 4,1; 1,1 ≤ y ≤ 1,4.
Решение.
HГхy = HГх · HГy = 4,07;
BГхy = BГх· BГy =5,74;
4,07 ≤ хy ≤ 5,74.
19
Теорема 7.4. Пусть нижняя граница числа х неотрицательна, а n –
целое положительное число. Тогда n-ная степень нижней (верхней) границы числа х является нижней (верхней) границей n-ной степени числа х:
HГхn = ( HГ х )
n
BГxn = ( ВГ х ) .
n
;
Пример 4. Найти границы х3, если 3,7 ≤ х ≤ 3,8.
Решение.
( HГ х )3
= 50,653 > 50;
HГх3 = 50; BГx3 = 55;
50 ≤ х 3≤ 55.
Теорема 7.5. Если нижняя граница числа х неотрицательна, то при
извлечении корня n-ной степени из него корень этой степени из верхней
(нижней) границы является верхней (нижней) границей корня из числа х:
НГ n x =
Пример 5. Вычислить
n
НГ х , BГ n x =
n
BГ х .
x, если 5,74 ≤ х ≤ 5,80.
Решение.
HГх = 5,74; BГх = 5,80.
Отсюда
НГ х = 2,39… > 2,39 и НГ
x
BГ х = 2,40… < 2,41; BГ
= 2,41;
х
= 2,39;
2,39 ≤ x ≤ 2,41.
Теорема 7.6. Пусть нижняя граница делителя положительна. Тогда
частное верхней (нижней) границы делимого и нижней (верхней) границы
делителя является верхней (нижней) границей частного чисел:
BГ х
НГ х
BГ х =
, НГ х =
.
НГ y
ВГ y
y
y
Доказательство
Так как НГ y > 0, то
НГ х х
BГ х
1
1
1
≤ ≤
≤ ≤
, a тогда
, ч.т.д.
ВГ y y HГ y
ВГ y y HГ y
Пример 6. Вычислить
x
, если 5,7 ≤ х ≤ 8,7 и 3,5 ≤ y ≤ 4,1.
y
20
Решение.
a) НГ х = 5,7; BГ х = 8,7; НГ y = 3,5; BГ y = 4,1.
НГ x = 1,39; BГ x = 2,49; 1,39 ≤
y
y
х
≤ 2,49.
y
Метод границ для функции
Теорема 7.7. Пусть функция y = f ( x1, x2 ,..., xn ) определена в области G , непрерывна и монотонна в ней по каждому аргументу xi , i = 1, n .
Пусть параллелепипед G ∗ : НГ хi ≤ хi ≤ BГ хi , i = 1, n , целиком содержится в G.
Тогда
границы,
в
которых
заключено
значение
функции
y = f ( x1, x2 ,..., xn ) для точек принадлежащих G ∗ , могут быть вычислены
(
)
по формулам: НГ y = f ( x1, x 2 ,..., x n ) и BГ y = f x1, x 2 ,..., x n , где
НГ х , если функция f возрастающая по этому аргументу хi ,

i
xi = 
 BГ х , если функция f убывающая по этому аргументу хi ;
i

BГ хi , если функция f возрастающая по этому аргументу хi ,
хi = 
 HГ хi , если функция f убывающая по этому аргументу хi .
При этом следует заметить, что значения xi (для всех i ) и
f ( x1, x 2 ,..., x n ) можно округлять лишь в сторону уменьшения нижней
(
)
границы функции, а значения xi и f x1, x 2 ,..., x n можно округлять лишь в
сторону увеличения верхней границы функции.
Доказательство
Действительно, если f ( x1, x2 ,..., xn ) возрастающая по x1 , то для любой точки параллелепипеда G ∗ будет справедливо неравенство:
(
)
(
)
(
)
f HГ х1 , x2 ,..., xn ≤ f ( x1, x2 ,..., xn ) ≤ f BГ х1 , x2 ,..., xn .
Если f ( x1, x2 ,..., xn ) убывающая по x1 , то
(
)
f BГ х1 , x2 ,..., xn ≤ f ( x1, x2 ,..., xn ) ≤ f HГ х1 , x2 ,..., xn .
Обозначим
21
 HГ x1 , если функция f возрастающая по x1,
x1 = 
 BГ x1 , если функция f убывающая по x1.
Тогда можно записать в общем виде
(
(
)
)
f x1, x2 ,..., xn ≤ f ( x1, x2 ,..., xn ) ≤ f x1, x2 ,..., xn .
Так как функция монотонна по x2 , то в G ∗ справедливо:
(
)
f x1 , x2 ,..., xn ≤ f ( x1, x2 ,..., xn )
и
(
)
(
)
f x1, x2 , x3, ..., xn ≤ f x1, x2, x3, ..., xn .
Отсюда
(
(
)
)
f x1, x2 , x3, ..., xn ≤ f ( x1, x2 ,..., xn ) ≤ f x 1 , x2 , x3 ,..., xn .
Проводя аналогичные рассуждения для всех остальных аргументов,
получим утверждение теоремы, ч.т.д.
Пример 7. Вычислить границы, в которых заключены значения
 2,57 ≤ x ≤ 2,58
x − y) z
(

, если G ∗ :  1,45 ≤ y ≤ 1,46
функции А ( x, y, z ) =
x+ y
8,33 ≤ z ≤ 8,34.

Решение.
∂A x − y ∂A
2 zy
∂A
−2 xz
=
;
=
;
=
.
2
∂z x + y ∂x ( x + y )
∂y ( x + y )2
Так как для любой точки ( x, y, z ) ∈ G ∗ имеют место неравенства
∂A
∂A
∂A
> 0;
> 0;
< 0, то функция А ( x, y, z ) является в G ∗ возрастающей
∂y
∂z
∂x
по x и z и убывающей по y.
Обозначим согласно теореме 7.7:
x = 2,57; x = 2,58;
y = 1,46; y = 1,45;
z = 8,33; z = 8,34.
(
)
Тогда HГ А = А ( x, y, z ) = 2,29; BГ А = А x, y, z = 2,34.
22
Отсюда
A = 2,315 ± 0,025 или A =ɺ 2,3 ,
так как 0,025 + 0,015 = 0,04 ≤ 0,05.
§8. Понятие корректно и некорректно поставленных задач
При приближенном решении математических или прикладных задач
весьма существенным является вопрос о том, корректна ли решаемая задача. Большинство некорректных задач может быть приведено к уравнению I
рода, имеющему вид:
Аx = y, x ∈ X , y ∈ Y ,
(8.1)
в котором по заданному, не обязательно линейному, оператору А , действующему из пространства X в пространство Y , и по заданному элементу
y ∈ Y требуется определить решение x в пространстве X .
Пространства X и Y будем считать метрическими, а в особо оговариваемых случаях, банаховыми или даже гильбертовыми.
Определение 8.1. Задача определения решения x = R ( y ) из про-
странства X по исходным данным y ∈ Y называется устойчивой на пространствах X и Y , если для любого числа ε > 0 можно указать такое
число δ ( ε ) > 0, что из неравенства ρY ( y1, y2 ) ≤ δ ( ε ) следует, что
ρ X ( x1, x2 ) ≤ ( ε ) , где x1 = Ry1, x2 = Ry2 , x1, x2 ∈ X , y1, y2 ∈ Y .
По-другому, если бесконечно малым вариациям правой части y соответствуют бесконечно малые вариации x. Помимо этого говорят вместо
устойчивости x в пространстве X о непрерывной зависимости x от y ∈ Y .
Определение 8.2. Следуя Ж. Адамару, задачу отыскания x ∈ X из
уравнения (8.1) называют корректной (корректно поставленной), если при
любой фиксированной правой части y = y0 из Y ее решение:
a) существует в пространстве X ;
б) единственно в X ;
в) устойчиво в X .
Если хотя бы одно из условий не выполняется, то задачу называют
некорректной (некорректно поставленной).
23
Таким образом, корректность задачи связана с наличием обратного
оператора А−1, определенного и непрерывного на всем пространстве Y .
Условия корректности задачи и особенно ее решения представляются
настолько естественными с точки зрения приложений математики, что долгое время некорректные задачи считались не имеющими физического
смысла и поэтому не изучались. Между тем практика и научные исследования стали одну за другой выдвигать некорректные задачи. Так задача
Коши для уравнения Лапласа оказалась важной для географических методов разведки полезных ископаемых, а задача Коши для эллиптических
уравнений и систем – для сверхзвуковой аэродинамики. Уравнение Фредгольма I рода приходится решать в спектроскопии и в обратных задачах
теории потенциала. Некорректна и задача теплопроводности с обращенным
временем, в которой требуется определить распределение температур в
прошлом по данным, относящимся к настоящему. Вообще некорректно
большинство так называемых обратных задач, в которых по результатам
действий какого-либо физического поля или процесса определяются первоначальные характеристики самого этого поля или процесса.
Если не изменить постановку неустойчивых задач, то обычные методы, применяемые для решения корректных задач, оказываются, естественно, непригодными для решения некорректных задач, так как сколь бы малой ни была бы погрешность исходных данных нельзя быть уверенным в
малости погрешности решения. Поэтому потребности практики в решении
некорректных задач привели к необходимости пересмотреть классическое
понятие корректности и выработать более широкий и приспособленный к
реальным нуждам подход.
Приведем следующее определение.
Определение 8.3. Назовем задачу (8.1) корректной по Тихонову на
множестве М ⊂ X , а само множество M – ее множеством корректности, если:
а) точное решение задачи существует в классе M,
б) принадлежащее множеству M решение задачи единственно для любой
правой части y из множества N = AM ⊂ Y ,
в) принадлежащее множеству M решение задачи устойчиво относительно любой правой части y из множества N.
24
В случае нарушения любого из этих условий задачу (8.1) называют
некорректной.
Начало изучению некорректных задач и методов их решения было
положено в 1943 году А.Н. Тихоновым. После работ А.Н. Тихонова систематическое изучение некорректных задач началось в 50-х годах, но особый
размах оно приняло в последние 40 лет. Основные результаты отражены в
монографиях М.М. Лаврентьева, А.Н. Тихонова и В.Я. Тананы, О.А. Лисковца и других.
Для решения некорректных задач нашли большое применение метод
квазирешений В.К. Иванова, метод регуляризации А.Н. Тихонова, метод невязки Д.Л. Филипса и В.К. Иванова. Особое место среди решения некорректных задач занимают итеративные методы. Их изучению посвящены работы М.М. Лаврентьева, В.Н. Страхова, Ю.Т. Антохина, Б.А. Андреева, О.А.
Лисковца, Я.В. Константиновой и других. Во всех работах того времени
число итераций выбирается априорно. И.В. Емелин и М.А. Красносельский
предложили для метода простых итераций выбирать число итераций апостериорно, используя правила останова по невязке и по соседним приближениям. Дальнейшее развитие идеи их работ получили в работах Г.М. Вайникко, предложившего правила останова, которые превращают метод итерации в регуляризующий алгоритм для задачи (10.1), не требуя при этом знания истокопредставимости точного решения, но в случае истокопредставимости обеспечивают оптимальную в классе скорость сходимости.
25
§9. Решение уравнений с одним неизвестным. Дихотомия
Исследование уравнения
Пусть задана непрерывная функция f ( x) и требуется найти все или
некоторые корни уравнения
f ( x) = 0 .
(9.1)
Корнем уравнения (9.1) называется такое значение x = x∗ , что
f ( x∗ ) = 0.
Если функция f ( x ) непрерывна на и ее значения на концах отрезка
разных знаков, f ( a ) f ( b ) ≤ 0, то на [ a, b ] найдется, по крайней мере, один
корень уравнения.
Отделить корень уравнения – значит, найти такой интервал, внутри
которого имеется корень данного уравнения и притом единственный на
данном интервале. Для отделения корней уравнения (9.1) применяют следующий критерий: если на отрезке [ a, b ] функция f ( x) непрерывна и монотонна, а ее значения на концах отрезка имеют разные знаки, то на рассматриваемом отрезке существует и только один корень данного уравнения. Достаточный признак монотонности функции на отрезке – сохранение
знака производной функции.
Отделение корней уравнения (9.1) можно выполнить графически.
Для этого надо построить график функции уравнения f ( x) , по которому
можно судить, в каких интервалах находятся точки его пересечения с осью
OX . Наиболее совершенным способом отделения корней является метод
Штурма.
Дихотомия (метод деления отрезка пополам).
( ) f ( x1 ) ≤ 0, т.е. на от-
Пусть мы нашли такие точки x0 и x1, что f x0
резке [ x0 , x1 ] лежит не менее одного корня уравнения. Найдем середину
отрезка x2 =
x0 + x1
и вычислим f ( x2 ) . Из двух половин отрезка выберем
2
(
)
ту, для которой f ( x2 ) ⋅ f xгран ≤ 0, ибо один из корней лежит на этой по-
26
ловине. Затем новый отрезок опять делим пополам и выберем ту половину,
на концах которой функция имеет разные знаки и т.д. (рисунок 1).
x0
x2
x*
x1
Рисунок 1
Если требуется найти корень с точностью до ε , то продолжаем деление до тех пор, пока длина отрезка не станет меньше 2ε . Тогда середина
последнего отрезка дает значение корня с требуемой точностью.
Дихотомия проста и очень надежна: к простому корню она сходится
для любых непрерывных функций f ( x ) , в том числе недифференцируемых, при этом она устойчива к ошибкам округления. Скорость сходимости
невелика: за одну итерацию точность увеличивается примерно вдвое.
Недостатки метода. Для начала расчетов надо найти отрезок, на котором функция меняет знак. Если в этом отрезке несколько корней, то заранее неизвестно, к какому из них сойдется процесс. Метод не применим к
корням четной кратности. Для корней нечетной кратности он сходится, но
менее точен и хуже устойчив к ошибкам округления возникающих при вычислениях f ( x ) . Наконец, на системы дихотомия не распространяется.
§10. Метод простой итерации для алгебраических
и трансцендентных уравнений
Применим принцип сжимающих отображений к исследованию сходимости итерационных методов решения скалярного уравнения
f ( x ) = 0,
(10.1)
f ( x ) – вещественная функция вещественного аргумента.
Для решения алгебраических и трансцендентных уравнений вида
(10.1) разработано много различных итерационных методов. Чаще всего по
функции f ( x ) строят функцию φ ( x ) такую, что искомый корень x = x∗
уравнения (10.1) является и корнем уравнения
27
x = φ ( x),
(10.2)
и затем строят последовательность { xk } с помощью соотношения
xk = φ ( xk −1 ) , k = 1, 2,...,
(10.3)
начиная с некоторого приближения x0 . Сходимость последовательности
обеспечивается соответствующим выбором функции φ и начального приближения x0 . Выбирая различными способами функцию φ (зависящую от
f ( x)), можно получить различные итерационные методы.
Теорема 10.1. Пусть уравнение (10.2) имеет корень x = x∗ и в неко-
{
}
торой окрестности R этого корня (R= x : x − x∗ ≤ r ) функция φ ( x) удовлетворяет условию Липшица φ ( x ) − φ ( x′ ) ≤ q x − x′ , где 0 < q < 1. Тогда,
каково бы ни было x0 ∈R, последовательность (10.3) сходится к x∗ , причем скорость сходимости характеризуется неравенством:
x − x∗ ≤ q k x0 − x∗ .
Доказательство
Совокупность точек отрезка R образует полное метрическое пространство, если расстояние между точками x и y определить соотношением ρ ( x, y ) = x − y . Если x ∈ R, то y = φ ( x ) также принадлежит R, ибо
(
)
( )
ρ y, x∗ = y − x∗ = φ ( x ) − φ x∗ ≤ q x − x∗ < r. Таким образом, функция
y = φ ( x ) задает некоторое отображение отрезка R в себя. Это отображение
является
сжимающим,
поскольку
для
ρ (φ ( x ) , φ ( x′ ) ) = φ ( x ) − φ ( x′ ) ≤ q x − x′ = q ρ ( x, x′ ) ,
любых
где
x,
0 < q < 1.
x′ ∈ R,
Тогда
x = x∗ , так как в силу принципа сжимающих отображений в R существует
одна и только одна неподвижная точка отображения, определяемого функцией φ ( x ) . Эту точку можно получить как предел последовательности
(10.3) при любом x0 ∈R.
Используя условие Липшица, имеем:
( )
xk − x∗ = φ ( xk −1 ) − φ x∗ ≤ q xk −1 − x∗ ,
то есть
28
xk − x∗ ≤ q xk −1 − x∗ ≤ q 2 xk −2 − x∗ ≤ … q k x0 − x∗ .
Таким образом,
{ xk }
сходится к x∗ со скоростью геометрической
прогрессии со знаменателем q. Скорость сходимости метода простой итерации линейная, ч.т.д.
Замечание. Условие Липшица с константой q < 1 выполняется для
функции φ ( x ) на отрезке R, если эта функция имеет на R производную
φ ′ ( x ) , удовлетворяющую неравенству:
φ ′ ( x ) ≤ q < 1.
(10.4)
Действительно, в этом случае для любых x, y из R имеем:
φ ( x ) − φ ( y ) = φ ′ (ξ ) x − y ≤ q x − y , (ξ ∈R).
y
y
y=x
y = ϕ(x)
y=x
y = ϕ(x)
0
x* x1
x0
x
0
x0 x2
x*
x3 x1 x
(0 < ϕ′(x) ≤ q < 1)
(–1 < –q ≤ ϕ′(x) < 0)
Рисунок 2
Рисунок 3.
Формула (10.3) определяет численный метод решения уравнения
x = φ ( x ) , который обычно называют методом простой итерации.
В нашем случае метод простой итерации имеет простую геометрическую интерпретацию. На рисунке 2 изображено поведение последовательных приближений для случая, когда 0 < φ ′ ( x ) ≤ q < 1, а на рисунке 3 – когда
−1 < −q ≤ φ ′ ( x ) < 0 в некоторой окрестности корня. Из этой окрестности и
выбирается начальное приближение x0 .
Отметим еще раз, что при выполнении условий только что доказанной теоремы 10.1 метод простой итерации сходится при любом выборе начального приближения x0 из R. Благодаря этому он является самоисправ-
29
ляющимся: допущенная при вычислениях ошибка (не выводящая за пределы отрезка R) не влияет на конечный результат, поскольку ошибочное значение можно рассматривать как новое начальное приближение. Свойство
самоисправления делает метод простой итерации одним из надежнейших
методов вычислений.
Метод простой итерации очень удобен для реализации его на электронных вычислительных машинах.
В дальнейшем мы будем предполагать, что уравнение (10.1) имеет
только изолированные корни, то есть для каждого корня уравнения f ( x ) = 0
существует окрестность, не содержащая других корней этого уравнения.
Приближенное нахождение изолированных вещественных корней
уравнения (10.1) обычно складывается из двух этапов:
1) отделение корней, то есть установление таких промежутков, в каждом из которых содержится один и только один корень уравнения (10.1);
2) уточнение приближенных значений корней, то есть вычисление
каждого корня тем или иным численным методом с заданной точностью.
Пример 1. Методом итераций найти меньший положительный корень уравнения x3 − 5 x + 1 = 0.
Решение.
Графически отделяя корни данного уравнения, заключаем, что уравнение имеет три действительных корня, лежащих в отрезках [–3; –2], [0; 1],
[2; 3]. Найдем меньший положительный корень, принадлежащий отрезку
[0; 1]. Укажем отрезок меньшей длины, на котором находится корень. По11
1 1 5
скольку f ( 0 ) = 1 > 0, f   = − + 1 = − < 0, то корень находится на от8
2 8 2
резке [0; 0,5].
Данное уравнение приведем к виду (10.2):
1
1
x = x3 + 1 или x = φ ( x ) , где φ ( x ) = x3 + 1 .
5
5
(
)
(
)
3x 2
3
, max φ ′ ( x ) =
< 1, то условие (10.4) выполня5 0≤ x≤0,5
20
ется; процесс итерации будет сходиться. Взяв в качестве нулевого приблиТак как φ ′ ( x ) =
30
жения середину отрезка [0; 0,5], т.е. приняв x0 = 0,25, вычисление последующих приближений проведем по формуле
1
xn+1 = xn3 + 1 .
5
Результаты этих вычислений представлены в таблице 1, из которой
видно, что искомый корень ξ = 0, 20164.
Таблица 1
1 3
xn
xn + 1 = xn+1
n
xn3
xn3 +1
5
0
0,25
0,01563
1,01563
0,20313
1
0,20313
0,00838
1,00838
0,20168
2
0,20168
0,00821
1,00821
0,20164
3
0,20164
0,00820
1,00820
0,20164
(
)
(
)
При нахождении двух других корней методом итераций уже нельзя
1
пользоваться формулой x = φ ( x ) , где φ ( x ) = x3 + 1 , так как
5
(
)
3x 2 27
=
> 1.
2≤ x ≤3 5
5
max φ ′ ( x ) = max
2≤ x≤3
В этом случае данное уравнение следует представить в другом виде,
например x = 3 5 x − 1; для функции φ ( x ) = 3 5 x − 1 на отрезкаx [–3; –2],
[2; 3] условие (10.4) будет выполняться.
Пример 2. Методом итераций найти отрицательный корень уравнения x 4 + x − 3 = 0.
Решение.
Данное уравнение имеет два действительных корня; отрицательный
корень находится на отрезке [–1,5; –1,4], так как для его концов выполняется условие f ( −1,5 ) ⋅ f (1, 4 ) < 0.
Уравнение запишем в виде x = x + c ( x 4 + x − 3 = 0 ) , где c – постоянная.
31
Выберем
значение
(
постоянной
)
так,
φ ( x ) = x + c x 4 + x − 3 выполнялось условие
чтобы
max
−1,5≤ x≤−1,4
для
функции
φ ′ ( x ) = q < 1. В каче-
стве такого значения можно взять c = 0,1; тогда
φ ( x ) = 0,1x 4 + 1,1x − 0,3, φ ′ ( x ) = 0,4 x3 + 1,1,
max φ ′ ( x ) = 0, 25 < 1.
1,5≤ x ≤−1,4
Взяв x0 = 1,45, вычислим последующие приближения по формуле
xn+1 = 0,1xn4 + 1,1n − 0,3
и запишем результаты (таблица 2), где ξ = −1, 45262 – корень уравнения
x 4 + x − 3 = 0.
Таблица 2
n
0
1
2
3
4
xn2
xn
–1,45
–1,45295
–1,45259
–1,45263
–1,45262
2,1025
2,11106
2,11002
2,11011
2,11011
xn4
4,4206
4,45657
4,45218
4,45265
4,45256
0,1xn4
0,44205
0,44566
0,44522
0,44527
0,44526
1,1 xn
–1,595
–1,59825
–1,59785
–1,59789
–1,59788
xn+1
–1,45295
–1,45259
–1,45263
–1,45262
–1,45262
§11. Метод хорд
Предположим теперь, что на некотором отрезке [ а, b ] функция f ( x )
непрерывна вместе с производными f ′ ( x ) и f ′′ ( x ) , причем f ( a ) f ( b ) < 0,
производные не меняют своего знака на интервале ( а, b ) . Это означает, что
на отрезке [ а, b ] существует единственный корень x = x∗ уравнения (10.1).
Если функция ψ ( x ) непрерывна в некоторой окрестности x∗ , то
уравнение (10.2), где
φ ( x ) = x −ψ ( x ) f ( x ) ,
(11.1)
также имеет x∗ своим корнем. Функцию ψ ( x ) в (11.1) можно подобрать
так, что итерационный процесс (10.3) для уравнения
x = φ ( x ) = x −ψ ( x ) f ( x )
будет сходящимся.
32
Пусть x0 – некоторая точка из отрезка [ а, b ] , выбранного, как указано
выше, причем f ( x0 ) f ′′ ( x0 ) > 0. В (11.1) в качестве функции ψ ( x ) возьмем
функцию:
ψ ( x) =
Тогда φ ( x ) = x −
x − x0
.
f ( x ) − f ( x0 )
x f ( x ) − xf ( x0 )
x − x0
f ( x ) и уравнение x = 0
f ( x ) − f ( x0 )
f ( x ) − f ( x0 )
также имеет корень x∗ . Примем за начальное приближение любую, достаточно близкую к x∗ точку x1 из отрезка [ а, b ] , в которой f ( x1 ) имеет знак,
противоположный знаку f ( x0 ) , а последующие приближения будем строить обычным способом:
x f ( xk ) − xk f ( x0 )
xk +1 = 0
, k = 1, 2,...
f ( xk ) − f ( x0 )
(11.2)
Для доказательства сходимости процесса оценим φ ′ ( x ) . Имеем:
( )
φ′ x
∗
f ( x0 ) + ( x∗ − x0 ) f ′ ( x∗ )
=
.
f ( x0 )
По формуле Тейлора
∗ )2
(
x
−
x
f ( x ) = f ( x∗ ) + ( x − x∗ ) f ′ ( x ∗ ) +
2
f ′′ (ξ ) ,
где ξ заключено между x∗ и x. Полагая x = x0 , получаем:
f ( x0 ) + ( x∗ − x0
( )
Таким образом, φ ′ x
Так как lim
x0 → x∗
∗
( x0 − x∗ )
2 f ( x0 )
x0 − x∗ )
(
∗
) f ′( x ) =
x0 − x∗ )
(
=
2 f ( x0 )
2
2
f ′′ (ξ ) .
2
f ′′ (ξ ) .
2
f ′′ (ξ ) = 0, то φ ′ ( x∗ ) − малое число, если x0
достаточно близко к x∗ . В силу непрерывности φ ′ ( x ) на [ а, b ] найдется окрестность ∪ x∗ точки x∗ , такая, что для всех x ∈ ∪ x∗ будет иметь место не-
33
равенство: φ ′ ( x ) ≤ q < 1; и если x1 взято из этой окрестности, то последовательность, построенная по формулам (11.2), будет сходиться к x∗ .
Для оценки точности приближения пользоваться формулой:
xk − x∗ ≤
f ( xk )
m1
,
(11.3)
где m1 = min f ′ ( x ) . Действительно, f ( xk ) = f ( xk ) − f ( x∗ ) = f ′ (ξ ) ( xk − x∗ ) ,
[ a ,b]
где ξ заключено между xk и x∗ . Отсюда xk − x∗ =
f ( xk )
f ( xk )
≤
.
f ′ (ξ )
m1
Скорость сходимости метода хорд линейная.
На практике применяются следующие формулы.
Если известно ( n − 1) -е приближение, то n -е можно вычислить по
формуле
bf ( xn−1 ) − xn−1 f ( b )
xn =
( n = 1, 2, 3,...)
f ( xn−1 ) − f ( b )
(рисунок 4), когда
f ( b ) f ′′ ( x ) > 0
или по формуле
af ( xn−1 ) − xn−1 f ( a )
xn =
f ( xn−1 ) − f ( a )
(рисунок 5), когда
f ( a ) f ′′ ( x ) > 0.
(11.4)
(11.5)
(11.6)
(11.7)
В первом случае за начальное приближение принимается a, т.е. x0 = a,
во втором – b, т.е. x0 = b.
34
y
y
a=x0
0
x1
x2
*
x
a x*
b x
0
Рисунок 4
x2 x1
b=x0 x
Рисунок 5
Пример 1. Методом хорд найти корень уравнения x3 − 2 x + 7 = 0.
Решение.
Отделяя корни данного уравнения с помощью способов, рассмотренных в разделе 9, заключаем, что единственный вещественный корень его
находится на отрезке [ −3, −2]; действительно, f ( −3) = −27 + 6 + 7 < 0,
f ( −2 ) = −8 + 4 + 7 > 0. Рассмотрев середину этого отрезка, т.е. точку
x = −2,5, получим f ( −2,5 ) = ( −2,5 ) − 2 ( −2,5 ) + 7 = −3,625 < 0; это означает,
3
что корень принадлежит отрезку [ −2,5;− 2]. Продолжая аналогичные рассуждения, находим отрезок [ −2,3; −2, 2] , которому принадлежит корень, так
как f ( −2,3) f ( −2, 2 ) < 0. На этом отрезке производные f ′ ( x ) = 3 x 2 − 2 и
f ′′ ( x ) = 6 x сохраняют знак. Поскольку f ( −2,3) ⋅ f ′′ ( −2,3) > 0, т.е. выполне-
но условие (10.6), пользуемся формулой (10.7), полагая x0 = −2, 2. Приняв во
внимание, что f ( x0 ) = f ( −2, 2 ) = 0,752, a = −2,3, f ( a ) = f ( −2,3) = −0,567,
по этой формуле получим результаты, приведенные в таблице 3.
Таблица 3.
n
xn−1
f ( xn−1 ) a ⋅ f ( xn−1 ) xn−1 f ( a )
1 –2,2
0,752
–1,7296
2 –2,25701 0,016558 –0,038083
3 –2,25823 0,000371 –0,000853
1,2474
1,279725
1,280417
af ( xn−1 ) −
f ( xn−1 ) −
− xn−1 f ( a )
− f (a)
–2,9770
–1,317809
–1,281270
1,319
0,583558
0,567371
Следовательно, найден корень уравнения ξ = −2,258 .
xn
–2,25701
–2,258231
–2,258259
35
Пример 2. Решить уравнение
до 0,0001).
Решение.
x3 − 0,9 x + 0,6 = 0
(с точностью
Так как графики функций y = x3 и y = 0,9 x − 0,6 пересекаются в
единственной точке, данное уравнение имеет действительный корень на
отрезке [ −2,1]. Поскольку f ( −1, 2 ) < 0; f ( −1,1) > 0, корень принадлежит
отрезку [ −1, 2; − 1,1] , на котором f ′′ ( x ) = 6 x < 0. Здесь выполняется неравенство f ( −1, 2 ) f ′′ ( x ) > 0 (т.е. условие (11.7)), поэтому можно пользоваться формулой (11.6). Чтобы сократить количество вычислений, укажем отрезок меньшей длины, на котором находится корень. Так как
f ( −1,186 ) < 0, f ( −1,185 ) > 0, то корень уравнения расположен на отрезке
[ −1,186; − 1,185], длина которого равна 0,001.
С помощью формулы (11.6) вычисляем значения корня уравнения
(таблица 4).
Оценим абсолютную погрешность с помощью формулы (11.3).
Так как
f ( x3 ) = f ( −1,18573) = 0,00007, min f ′ ( x ) = min 3 x 2 − 0,9 = 3,31269,
a≤ x ≤b
a ≤ x ≤b
( a = −1,186; b = −1,185) ,
то ξ − x3 ≤
0,00007
≈ 0,00002 < 0,0001, т.е. корень вычислен с заданной
3,31269
точностью.
n
1
2
3
4
I
xn−1
–1,185
–1,18570
–1,18572
–1,18573
II(I*I)
III(II*I)
IY(I*(–0,9))
Таблица 4
Y(III+IY+0,6)
x 2n−1
x3n−1
–0,9 xn−1
f ( xn−1 )
1,40422
1,40591
1,40593
1,40596
–1,66400
–1,66700
–1,66704
–1,66709
1,06650
1,06739
1,06715
1,06716
0,00250
0,00014
0,00011
0,00007
36
n
YI
YII
YIII(YI–YII)
IX
X
af ( xn−1 )
xn f ( a )
af ( xn−1 ) − xn−1 f ( a )
f ( a ) − f ( xn−1 )
xn
1
2
3
–0,00297
–0,00017
–0,00013
0,00955 –0,01252
0,00956 –0,00973
0,00956 –0,00969
0,01056
0,00820
0,000817
–1,18570
–1,18572
–1,18573
§12. Метод касательных
Классическим методом решения скалярного уравнения f ( x ) = 0 яв-
ляется метод Ньютона.
Положим в (11.1) ψ ( x ) =
f ( x)
1
. Тогда φ ( x ) = x −
и нужно найf ′( x )
f ′( x )
ти корень x∗ уравнения x = x −
f ( x)
. По-прежнему будем предполагать,
f ′( x )
что на отрезке [ а, b ] функция f ( x ) имеет непрерывные, не обращающиеся
в
нуль
производные
f ′( x )
( f ′ ( x ) ) − f ( x ) f ′′ ( x ) ,
φ′( x ) = 1 −
2
( f ′( x ))
2
и
f ′′ ( x )
и
f ( a ) f ( b ) < 0.
Имеем:
так что φ ′ ( x∗ ) = 0. В силу непрерывности
φ ′ ( x ) найдется окрестность ∪ x∗ точки x∗ , такая, что для всех x ∈ ∪ x∗ имеет место неравенство: φ ′ ( x ) ≤ q < 1. Если начальное приближение x0 взято
из этой окрестности, то последовательность { xk } , построенная по формулам xk +1 = xk −
f ( xk )
, k = 0,1,..., будет сходиться к x∗ . Начальное приf ′ ( xk )
ближение x0 целесообразно выбирать так, чтобы было выполнено условие:
f ( x0 ) f ′′ ( x0 ) > 0.
Если за начальное приближение в методе Ньютона взять точку x0 ,
такую что f ( x0 ) f ′′ ( x0 ) < 0, то мы можем не прийти к корню x = x∗ , если
только начальное приближение не очень хорошее.
Оценим скорость сходимости метода Ньютона. По формуле Тейлора:
37
( )
(
)
f x∗ = f ( xk ) + f ′ ( xk ) x∗ − xk +
( )
(
1
f ′′ (ξ ) x∗ − xk
2
)
2
( ξ заключено между x∗ и xk ). Так как f x∗ = 0, то
f ( xk )
1 f ′′ (ξ ) ∗
= xk − x∗ −
x − xk
2 f ′ ( xk )
f ′ ( xk )
(
).
2
Следовательно,
xk +1 − x∗ = xk − x∗ −
f ( xk ) 1 f ′′ (ξ ) ∗
x − xk
=
f ′ ( xk ) 2 f ′ ( xk )
(
).
2
Если m1 = min f ′ ( x ) , а M 2 = max f ′′ ( x ) , то
[ a ,b]
[ a ,b]
2
M2
(12.1)
xk − x∗ .
2m1
Неравенство (12.1) гарантирует быструю сходимость метода НьютоM2
на, если начальное приближение x0 таково, что
x0 − x∗ ≤ c < 1. Дейст2m1
xk +1 − x∗ ≤
вительно в этом случае из неравенства (12.1) следует: xk − x∗ ≤
2m1 2 k
c .
M2
Скорость сходимости метода Ньютона квадратичная.
Геометрический смысл метода касательных
Метод Ньютона, который часто называют также методом касательных, состоит в следующем. Пусть на отрезке [ а, b ] находится единственный корень уравнения f ( x ) = 0. Проведем касательную к кривой y = f ( x )
в точке A  a, f ( a )  до пересечения с осью Ox (рисунок 6). Уравнение касательной,
проходящей
через
точку
A,
будет
следующим:
y = f ( a ) + f ′ ( a )( x − a ) . Если f ′ ( a ) ≠ 0, то из этого уравнения (при y = 0 )
находим абсциссу x1 точки пересечения касательной с осью Ox :
x1 = a −
f (a)
.
f ′( a )
Абсциссу x1 точки пересечения можно взять в качестве приближенного значения корня. Если проведем касательную через соответствующую
38
точку A1  x1, f ( x1 )  и найдем точку пересечения с осью Ox, получим второе приближение корня x2 . Аналогично определяются последующие приближения. Применяя метод касательных, n − е приближение находят по
формуле
f ( xn−1 )
xn = xn−1 −
, ( n = 1,2,3,...) ,
(12.2)
f ′ ( xn−1 )
причем за нулевое приближение x0 принимается такое значение из отрезка
[ a, b], для которого выполняется условие
y
A
A1
A2
y
a
x1
b
x2 x*
x
B
f ( x0 ) ⋅ f ′′ ( x0 ) > 0.
(12.3)
Рисунок 6
Пример 1. Вычислить приближенно (с точностью до пяти десятичных знаков после запятой) больший отрицательный корень уравнения
x3 − 12 x − 8 = 0.
Решение.
Графически отделяя корни этого уравнения, заключаем, что уравнение имеет три действительных корня, больший отрицательный корень принадлежит отрезку [ −1, 0]. Можно указать отрезок меньшей длины, на котором находится корень, вычислив значения многочлена f ( x ) = x3 − 12 x − 8 с
помощью схемы Горнера.
Таким отрезком является
[ −0,7; − 0,65]. Поскольку
f ( −0,65 ) ⋅ f ′′ ( −0,65 ) > 0, т.е. вы-
отрезок
f ′′ ( x ) = 6 x, f ′′ ( −0,65 ) < 0, f ( −0,65 ) < 0,
полнено условие (12.3), то в качестве нулевого приближения берем
39
x0 = −0,65. По формуле (12.2) вычисляем последовательные приближения,
зафиксированные в таблице 5.
Таблица 5
n
0
1
2
xn
–0,65
–0.694223
–0,964593
1
f ′ ( xn )
f ( xn )
–0,474625
–0,003902
–0,000003
–0,093175
–0,094759
–0,095711
∆=
f ( xn )
f ′( n)
0,044223
0,000370
0,0000003
xn+1
–0,694223
–0,694593
–0,694593
Из таблицы 5 видно, что искомый корень ξ = −0,694593.
Замечание. Два других корня данного уравнения можно найти аналогичным способом: сначала отделить каждый из них на отрезке достаточно
малой длины, потом вычислить с помощью метода касательных. Можно
поступить и по-другому. Разделив многочлен x3 − 12 x − 8 на x − ξ , получим квадратное уравнение, корни которого можно принять за начальные
приближения двух других корней исходного уравнения, а потом вычислить
их по методу касательных.
§13. Метод секущих
К числу достаточно эффективных итерационных методов решения
нелинейного уравнения f ( x ) = 0 можно отнести метод, описываемый
формулой
xn+1 = xn −
xn − xn−1
f ( xn ) ,
f ( xn ) − f ( xn−1 )
который, в силу его геометрической интерпретации, носит название метода
секущих. Скорость сходимости этого процесса сверхлинейная, точнее для
n-го приближения xn и x∗ – решения уравнения f ( x ) = 0 имеет место соα
отношение xn − x∗ ≤ α xn−1 − x∗ , α =
5 +1
.
2
40
В связи с тем, что в методе секущих на каждом шаге процесса находится лишь одно значение функции, то при одинаковом объеме вычислительной работы метод эффективнее метода хорд и метода Ньютона.
Недостаток метода состоит в том, что при подходе к решению разность f ( xn ) − f ( xn−1 ) может стать столь малой, что будет происходить потеря точности, что выразится в хаотическом блуждании элементов последовательности { xn }, полученной по методу секущих вокруг корня. Этот
феномен носит название «разболтки». Для предотвращения «разболтки»
применяется принцип Гарвика. Суть его в следующем. Выбираем 0 ≠ ε << 1
и ведем счет, следя за тем, чтобы xn − xn−1 было меньше ε . Как только мы
этого достигаем, делаем еще несколько шагов до момента, когда убывание
xк − xk −1 прекратится и в качестве приближенного значения корня принимаем xkn , предшествующее тому xk , при котором началось возрастание
xк − xk −1 . Метод секущих применяют в комплексе с методом Ньютона (или
с методом хорд и Ньютона).
Для методов итераций, Ньютона, хорд, секущих используются следующие правила останова.
Правило останова по соседним приближениям
Задается уровень останова ε > 0 и момент останова m итерационной
процедуры определяется условием
xn − xn+1 > ε , ( n < m ) , xm − xm+1 ≤ ε .
Правило останова по невязке
Задается уровень останова ε > 0 и момент останова m итерационной
процедуры определяется условием
f ( xn ) > ε ,
(n < m),
f ( xm ) ≤ ε .
41
§14. Вычисление собственных векторов
и собственных значений матрицы
Некоторые определения и теоремы. Для того чтобы найти собственный вектор матрицы A (размерности n × n ), соответствующий собственному значению λ , нужно решить однородную систему ( A − λ E ) x = 0. Эта
система имеет ненулевое решение тогда и только тогда, когда A − λ E = 0.
Это алгебраическое уравнение n-ой степени относительно λ. Корни его и
являются собственными значениями матрицы A.
Существует много приближенных методов для решения алгебраических уравнений: методы Ньютона, простых итераций, секущих, хорд и т.д.
При нахождении же собственных векторов (и собственных значений)
сложности возникают при вычислении самих коэффициентов характеристического многочлена (если матрица A произвольная). Здесь мы разберем
случай, когда А − λ E матрица A симметричная.
Из курса линейной алгебры известно, что если A = AT , то все ее собственные значения – действительные числа. Построение характеристического многочлена симметрической матрицы осуществляется весьма просто
после предварительного ее преобразования; это преобразование подбирается так, чтобы полученная матрица имела те же собственные значения,
что и исходная. Объясним, почему это возможно.
Определение 14.1. Матрица A называется подобной матрице B ,
если существует невырожденная матрица С, такая, что B = C −1 AC.
Теорема 14.1. (о собственных значениях подобных матриц). Собственные значения подобных матриц совпадают.
Доказательство
Пусть матрицы A и B подобны, то есть существует матрица C , такая, что B = C −1 AC , и пусть λ0 − собственное значение матрицы A. Докажем, что λ0 − собственное значение матрицы B. Действительно,
B − λ0 E = C −1 AC − λ0 E = C −1 AC − λ0C −1EC =
= C −1 A − λ0 E С = C −1 C A − λ0 E = A − λ0 E = 0 , ч.т.д.
42
Собственные векторы подобных матриц A и B связаны соотношением: x = Cy, где x − собственный вектор A, y − собственный вектор B. Действительно, By = λ y; но B = C −1 AC , то есть C −1 ACy = λ y, или ACy = λCy,
то есть Cy = x − собственный вектор матрицы A.
Мы видим, что, зная собственные значения и собственные векторы
матрицы, подобной исходной, можно легко найти собственные значения и
собственные векторы исходной матрицы.
Ниже мы опишем, как симметричную матрицу А можно привести к
подобной ей трехдиагональной матрице. Для трехдиагональной же матрицы выписать характеристический многочлен и вычислить собственные
векторы уже легко.
§15. Приведение симметрической матрицы
к трехдиагональной форме методом вращений
Итак, займемся приведением симметрической матрицы к трехдиагональной форме. Введем понятие матрицы вращения.
Определение 15.1. Матрица Сij ( i < j ) вида
 1 0 ...
 0 1 ...

. . .

 0 0 ...
. . .

 0 0 ...
. . .

 0 0 ...
в которой
... 0 
0 ... 0 ... 0 
. .
.
. .

с ... − s ... 0 
,
(15.1)
.
. . . . 

s ... с ... 0 
.
. . . . 

0 ... 0 ... 1 
отличны от единицы i-й и j-й столбцы и i-я и j-я строки и
0 ...
0
с 2 + s 2 = 1, называется матрицей вращения.
 c −s 
Название связано с тем, что в R 2 матрица 
 является матриs c 
цей преобразования декартовых координат при повороте осей на угол
φ : cos φ = c, sin φ = s . Обратная матрица к матрице вращений существует и
43
совпадает с CijT (это проверяется умножением Сij на CijТ ). Следовательно,
матрица Сij−1 ACij подобна матрице A.
Покажем, что любую симметричную матрицу последовательными
умножениями на матрицы вращения можно привести к подобной ей трехдиагональной.
Посмотрим вначале, что получится, если умножить симметричную
матрицу A справа на Сij и слева на Сij−1 . Все столбцы матрицы A, кроме
i − го и j − го, останутся без изменения. Обозначим i -ый и j -ый столбцы
матрицы Сij через Bi и B j соответственно; тогда
Вi = cAi + sA j ,
(15.2)
B j = − sAi + cA j .
(15.3)
( Ai и A j − i -ый и j -ый столбцы матрицы A). При умножении матрицы
ACij на Cij−1 (слева) будут изменяться только i -ая и j -ая строки, которые
вычисляются по формулам аналогичным (15.2) и (15.3).
Но в силу симметричности матрицы A и структуры Cij все элементы
этих строк, кроме элементов, стоящих на пересечении с i -ым и j -ым
столбцами, равны уже вычисленным элементам i -го и j -го столбцов.
Теперь подберем матрицы вращения так, чтобы при умножении A на
эти матрицы получить трехдиагональную матрицу.
Вначале получим нули на месте элементов а13 и а31. Для этого ум−1
ножим матрицу A на матрицу С23 справа и С23
слева (какую именно, мы
скажем ниже):
 а11 а12с + а13s −a12 s + a13c a14
а
 21 а22с + а23s −a22 s + a23c a24
 .
.
.
.
AC23 = 
.
.
.
 .
 .
.
.
.

 аn1 аn 2с + аn3s −an 2 s + an3c an 4
... a1n 
... a2n 
... . 
,
... . 
... . 

... ann 
44
а11
а12с + а13с −а12 + а13с

 а с+а s
′
′
a22
a23
13
 12
 −а12 s + а13с
′
′
a32
a33

′
′
a 41
a42
a43
−1
С23 АС23 = 

.
.
.

.
.
.


.
.
.

аn1
аn′ 2
а′n3

′ = 0, поэтому элементы s
Мы хотим, чтобы а13
... а1n 
... a2n 
... a3n 

... a4n 
... . 

... . 
... . 

... аnn 
и c матрицы C23
должны удовлетворять условиям:
 s 2 + c 2 = 1,

−a12 s + a13c = 0.
a13
a12
. Можно всегда брать
, s=
Из этих условий c =
2
2
2
2
a12 + a13
a12 + a13
арифметический корень
то с = −
a12
2
a12
2
+ a13
2
2
a12
+ a13
. Действительно, если s = −
a13
2
a12
2
+ a13
,
, и оба слагаемые второго уравнения меняют знаки.
«Обнулим» теперь элементы аi −1, j (1 < i < j ) . Для этого умножим A на
матрицы Cij справа и на Cij−1 = CijТ слева, такие, чтобы неизвестные элементы c и s матрицы Cij удовлетворяли условиям:
 s 2 + c 2 = 1,

−ai −1, i s + ai−1, j c = 0,
то есть
c=
s=
ai−1, i
ai2−1,i + ai2−1, j
ai −1, j
ai2−1,i + ai2−1, j
,
(15.4)
.
(15.5)
45
Заметим, что описанные умножения (на матрицы вращения) нулевых
элементов не меняют. Общее число преобразований для приведения симметричной матрицы к трехдиагональной форме не превосходит числа
(n − 1)(n − 2)
. Контроль вычислений после каждого умножения произво2
дится путем вычислений следа матрицы, то есть суммы ее диагональных
элементов. Выше мы доказали, что собственные значения подобных матриц совпадают; следовательно, должны быть равны и следы этих матриц.
§16. Определение коэффициентов характеристического
многочлена для трехдиагональной матрицы
Коэффициенты характеристического многочлена для симметричной
трехдиагональной матрицы A находятся по рекуррентным формулам, связывающим характеристические многочлены k − ой и k + 1 − ой степеней
главных миноров Akk матрицы A.
Пусть φk ( λ ) − нормированный характеристический многочлен матрицы A (т.е. такой, что коэффициент при λk равен 1):
φk ( λ ) = ( −1) A − λ E =
k
= ( −1)
k
a11 − λ
a12
0
.
.
.
0
0
a12
a22 − λ
a23
.
.
.
0
0
0
. . .
0
0
a23
a33 − λ
.
.
.
0
0
. . .
0
0
. . .
0
0
. . .
.
.
. . .
.
.
. . .
.
.
. . . ak −1,k −1 − λ
. . .
ak −1,k
.
ak −1,k
akk − λ
Разлагая определитель по элементам последнего столбца и нормируя
многочлены φk −1 ( λ ) и φk −2 ( λ ) , получим:
φk ( λ ) = ( −1) ( akk − λ ) ( −1)
k
k −1
φk −1 ( λ ) −
46
− ( −1) ak −1,k
k
a11 − λ
a12
.
.
.
0
0
a12
a22 − λ
.
.
.
0
0
0
а23
.
.
.
0
0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0
.
0
.
.
.
.
.
.
. ak −2,k −2 − λ
.
0
0
0
.
.
.
=
ak −2,k −1
ak −1,k
= − ( akk − λ )φk −1 ( λ ) − ak2−1,k φk −2 ( λ ) .
(16.1)
Формула (16.1) справедлива при k ≥ 3. Если положить φ0 = 1, то эта
формула будет верна и для k = 2.
Действительно,
φ1 ( λ ) = λ − a11, φ2 ( λ ) = ( −1)
2
a11 − λ
a12
a12
=
a22 − λ
2
2
= ( a11 − λ )( a22 − λ ) − a12
= ( λ − a22 )φ1 ( λ ) − a12
φ0 ( λ ) .
Коэффициенты характеристического многочлена удобно вычислить
по формуле (16.1), заполняя следующую таблицу:
Таблица 6
Многочлен
Степень
φ0
φ1
φ2
…
φn−1
λn
1
λ n−1
…
.
.
.
…
λ
1
1
π nn−1
1
…
π 2n−1
π 2n
1
π12
…
π1n−1
π1n
π 10
π 02
π 0n−1
π 0n
.
λ0
φn
47
Здесь π ij − коэффициент при λ j в многочлене φi , причем
π ij = − ai2−1,iπ ii −2 − aiiπ ij−1 + π ij−−11 ( i ≥ 2 ) .
Вычисление коэффициентов характеристического многочлена для
матрицы, приведенной к трехдиагональной форме в разделе 18 содержится
в таблице 6.
§17. Вычисление собственных векторов
для симметричных матриц
Предположим, что симметричная матрица A приведена к подобной
трехдиагональной матрице B, пусть для B вычислены собственные значения λi . Тогда для вычисления соответствующих этим λi собственных векторов матрицы A нужно решить несколько систем однородных уравнений
( A − λi E ) x = 0 .
Таблица 7
Многочлен
Степень
ϕ0
ϕ1
ϕ2
ϕ3
λ4
ϕ4
1
λ3
1
–42,3292
1
–35,5918
434,1562
1
–27,2941
195,3415
–1439,8524
964,3942
λ2
λ1
λ0
1
–3,31
50,8472
–150,5478
ai2−1,i
1
28,5402
81,9840
0,9815
aii
3,31
23,9841
8,2977
6.7374
Поскольку при каждом λ = λi каждая система имеет ненулевое решение, матрица A − λ E
( λ = λI )
вырожденна. Поэтому вначале нужно опре-
делить, какое из уравнений системы является следствием остальных ее
уравнений. Используя же матрицы вращения Cij , вычисленные при приведении A к трехдиагональной форме, и зная собственные векторы матрицы
48
B, можно получить собственные векторы матрицы A. Действительно, если
y − собственный вектор B, где
(
)
−1
B = Cn−−11, n .....C23
A(C 23 .....Cn −1, n ),
(17.1)
то вектор
x = C23C 24 .....C n −1, n у
(17.2)
собственный вектор А (см. раздел 14).
После того, как вычислен вектор у, найти вектор x сравнительно
легко, так как матрицы Cij имеют очень простую структуру. При каждом
умножении вектора у на матрицы Сij будут меняться только две компоненты ранее полученного вектора: i -ая и j -ая (обозначим их через ( уi′ и
у ′j ). Эти компоненты всякий раз определяются по формулам
уi′ = cyi − sy j ,
(17.3)
y ′j = syi + cy j
(значения c и s соответствуют той матрице Cij , на которую в данный момент мы умножаем).
Таким образом, для вычисления собственных векторов A нужно знать
собственные векторы подобной ей трехдиагональной матрицы. Собственные векторы трехдиагональной матрицы B находятся в свою очередь из
однородных систем с матрицей B − λi E ( λi – соответствующее искомому
собственному вектору собственное значение):
( B − λi E ) y = 0.
(17.4)
Положим λi = λ. Как и выше, матрица B − λ E – вырожденная. При
условии, что все bi , i +1 ≠ 0 (1 ≤ i ≤ n − 1), последнее уравнение системы
(b11 − λ ) y1 + b12 y2 = 0,
b21 y + (b22 − λ ) y 2 + b23 y3 = 0,
…………………………………………………………………………………….
bn−1,n−2 yn−2 + ( bn−1,n−1 − λ ) yn−1 + bn−1,n yn = 0,
bn, n −1 yn −1 + (bnn − λ ) y n = 0
является следствием остальных уравнений. Действительно, при этом условии определитель треугольной матрицы, полученной из B − λ E удалением
49
1-го столбца и n − ой строки, отличен от нуля, то есть строки
1-ая,…, (n − 1) -ая линейно независимы. Придавая компоненте y1 вектора
y произвольное, отличное от нуля значение, из образующейся системы с
треугольной
матрицей
последовательно
находятся
компоненты
у 2 , y3 ,..., yn . Последнее уравнение применяется для контроля вычислений.
Если некоторые bi , i +1 = 0, то матрицу системы (17.4) разбивают на
блоки, после чего общее решение для каждого из блоков находят описанным выше способом.
50
§18. Итерационные методы определения
собственных векторов и собственных значений матрицы
В этом разделе мы вкратце опишем некоторые итерационные методы
определения собственных векторов и собственных значений матрицы A.
Как правило, итерационные методы позволяют определить собственные значения без предварительного вычисления коэффициентов характеристического многочлена исходной матрицы. В основе этих методов лежит
построение последовательностей таких подобных матрице A матриц, для
которых собственные значения определяются уже легко. При этом собственные значения и собственные векторы исходной матрицы А являются
пределами собственных значений и собственных векторов построенных
последовательностей матриц.
1. Метод вращений (метод Якоби) предназначен для определения
собственных значений симметричной матрицы. Известно, что всякая симметричная матрица A может быть записана в виде A = TLT ∗ , где T − унитарная матрица, L − диагональная с диагональными элементами λ1 ,..., λ n ,
равными собственным значениям матрицы A. Из представления A = TLT ∗
получаем, что AT = TL (напомним, что T ∗ = T −1 ). Если расписать это равенство по столбцам, то окажется что каждый i − ый столбец матрицы T
является собственным вектором, соответствующим собственному значению λi . Преобразуя равенство A = TLT ∗ , получим T ∗ AT = L В методе
вращений матрица T строится как предел бесконечного произведения элементарных матриц вращения. При этом получается последовательность
матриц A k :
А1 = Т1∗ АТ1 ,..., A k = Tk∗ A k −1Tk ,...,
где T1 ,..., Tk − элементарные матрицы вращения.
На k − oм шаге матрица вращения Tk строится в зависимости от матрицы А k −1 так, чтобы сумма квадратов внедиагональных элементов была
как можно меньше.
Это возможно благодаря справедливости следующей т е о р е м ы:
всякую квадратную матрицу А можно привести к подобной ей почти диагональной матрице В:
51
 λ1 b12 ... b1n 
b

b
λ
...
21
2
2
n

В=
 .
.
.
. 


 bn1 bn 2 ... λn 
где B = C −1 AC , λ1 , λ 2 ,..., λ n − собственные значения матрицы A, a
bij < ε
(при i ≠ j ), ε − сколь угодно малое положительное число.
Пусть Sk – матрица, получающаяся из A k заменой всех ее внедиагональных элементов на нулевые. По построению матрицы А k при больших
k матрицы A k и Sk близки (это можно доказать строго); поэтому близки и
коэффициенты их характеристических многочленов. В силу непрерывной
зависимости нулей характеристического многочлена от его коэффициентов
собственные значения матриц А k и Sk также близки между собой. Собственные же значения матрицы Sk – это диагональные элементы матрицы A k ,
а собственные значения подобных матриц A k и A совпадают. Таким образом, диагональные элементы матрицы A k можно считать приближениями к
собственным значениям матрицы A. Собственные же векторы матрицы A
приближенно совпадают со столбцами T k = T1.....Tk (см. раздел 17).
2. Метод Якоби укладывается в схему так называемых степенных
методов. Другой тип схемы степенных методов имеет вид:
А = L1R1 ,
R1L1 = L2 R2 ,
......................
Rk −1Lk −1 = Lk Rk .
Известно несколько схем такого типа. Наиболее распространенные
среди них – это записанный выше LR-алгоритм и QR-алгоритм (см. ниже).
Несколько слов об этих двух алгоритмах (в предположении, что все главные миноры исходной матрицы A отличны от нуля и что все ее собственные значения различны).
а) В LR − алгоритме матрицы Lk и Rk − треугольные: Rk − верхняя треугольная, Lk − нижняя треугольная с единичными элементами по диагонали.
52
Легко видеть, что
Rk Lk = ( L1.....Lk ) −1 A( L1.....Lk ),
так что матрицы Rk Lk подобны матрице A.
Можно доказать, что при больших k матрица Lk близка к единичной
матрице, а матрица Rk − к диагональной, у которой по диагонали стоят
собственные значения λ1 ,..., λ n матрицы A; то есть что при k → ∞ после-
довательность матриц {Rk Lk } сходится к верхней треугольной матрице,
подобной A. Так что в этом случае определение собственных значений
матрицы A достаточно просто: они близки к диагональным элементам матрицы Rk при больших k. Собственные векторы матрицы A после определения собственных векторов матрицы Rk Lk (k достаточно велико) определяются по формуле (см. раздел 17):
x = y ⋅ L1.....Lk
(здесь y − собственный вектор матрицы Rk Lk ); учитывая же, что Lk → E
при k → ∞, получаем что собственные векторы исходной матрицы совпадают с собственными векторами матриц Rk при больших k (разумеется, мы
всюду пользуемся тем фактом, что корни характеристического многочлена
непрерывно зависят от его коэффициентов).
б) В QR − алгоритме разложение матрицы осуществляется по схеме:
A = Q1R1,
R1Q1 = Q2 R2 .
...................
Rk −1Qk −1 = Qk Rk ,
...........................
Здесь Qk − унитарные матрицы, Rk − верхние треугольные матрицы.
В этом алгоритме последовательность матриц Rk Qk при k → ∞ сходится к верхней треугольной матрице, подобной A (мы предположили, что
у A нет кратных собственных значений). После определения собственных
векторов y предельной матрицы собственные векторы исходной находятся
по формуле:
x = y lim Q1 .....Qk ,
k →∞
53
где lim Q1 .....Qk – матрица, к которой сходится при k → ∞ произведение
k →∞
унитарных матриц Q1 ⋅ …Qk .
§19. Численные методы решения систем
линейных алгебраических уравнений
Методы решения систем линейных алгебраических уравнений условно можно разделить на точные и итерационные.
Точные методы дают решение задачи за конечное число арифметических действий. Решение получается точным только в том случае, если
исходные данные заданы точно и промежуточные вычисления выполняются без округлений.
Итерационные методы дают бесконечную последовательность приближенных решений, предел которой (если он существует) является решением системы.
В этой главе мы рассмотрим следующие точные методы решения
линейных алгебраических систем: метод исключения Гаусса, метод оптимального исключения, метод квадратного корня (для систем с симметричной матрицей).
Выбор конкретного метода решения определяется спецификой рассматриваемой задачи и возможностями ЭВМ, находящейся в распоряжении
вычислителя. Вот некоторые соображения, влияющие на выбор метода.
1. Если матрица рассматриваемой системы алгебраических уравнений содержит большое число нулевых элементов, то необходимо выбрать
такой метод решения, которых сохраняет при преобразованиях особенности структуры матрицы. Реализация многих методов существенно упрощается, если A, например, является симметричной или трехдиагональной.
2. На выбор метода существенно влияет требуемая точность решения
системы. Иногда нужно определить немного верных цифр в результате (с
малой точностью), но с минимальными затратами на сам счет. В других
случаях, напротив, необходимо иметь достаточно точный результат, пусть
и за счет увеличения времени счета.
3. При решении системы Ax = b необходимо знать, как влияет на результат изменение элементов матрицы A и вектора b. Слабая чувствитель-
54
ность к вариациям элементов матрицы и вектора правой части является
важной характеристикой метода.
§20. Метод исключения Гаусса
Идея этого метода заключается в том, чтобы исходную систему линейных уравнений
Ax = b
(20.1)
с произвольной матрицей A свести некоторыми эквивалентными преобразованиями (не меняющими множества решений системы (20.1)) к системе
вида
Ax = b ,
(20.2)
где A – треугольная (например, верхняя треугольная) матрица. Ясно, что
алгоритм решения систем вида (20.2) уже прост: из последнего уравнения
легко находится xn , затем из предпоследнего – x n−1 и т.д.
Рассмотрим одну из возможных реализаций метода Гаусса более
подробно. Распишем систему (20.1) в виде:
a11x1 + a12 x2 + ... + a1n xn = b1 ,
a21x1 + a22 x2 + ... + a2 n xn = b2 ,
(20.3)
...............................................
an1x1 + an 2 x2 + ... + ann xn = bn
( )
(мы считаем, что матрица A = aij невырождена).
В предположении, что a11 ≠ 0 , делим первое уравнение системы
(20.3) на коэффициент a11 , в результате чего получаем уравнение
x1 +
a12
a
b
x2 + ... + 1n xn = 1 .
a11
a11
a11
Затем из каждого из остальных уравнений вычитается первое, умноженное на соответствующий коэффициент ai1 . В результате первое неизвестное оказывается исключенным из всех уравнений, кроме первого,
и мы приходим к системе, эквивалентной (20.3):
1
x1 + a12
x2 + ... + a11n xn = b11 ,
a122 x2 + ... + a12 n xn = b21 ,
(20.4)
55
..........................................
a1n 2 x2 + ... + a1nn xn = bn1
(здесь a11 j =
a1 j
a11
, j = 2, …, n, b11 =
b1
,
a11
a1ij = aij − ai1a11 , bi1 = bi − b11ai1 , i = 2, 3, …, n, j =1, 2, …, n).
Далее предполагается, что a122 ≠ 0 , делим второе уравнение системы
(20.4) на коэффициент a122 и исключаем неизвестное x2 из всех уравнений,
начиная с третьего. Получим систему, эквивалентную исходной:
1
1
x1 + a12
x1 + a13
x3 + ... + a11n xn = b11 ,
2
x2 + a23
x3 + ... + a22n xn = b22 ,
..........................................
2
an23 x3 + ... + ann
xn = bn2 ,
где
a22 j
=
a12 j
a122
,
aij2
=
a1ij
− a22 j a1i 2 ,
b22
b21
= 1 , bi2 = bi1 − b22a1i 2 ,
a22
i = 3, 4, …, n, j = 2, 3, … , n .
Продолжая описанный процесс исключения неизвестных (т.е. исключая x3 , x4 , ..., xn ), мы вместо системы (20.3) получим эквивалентную
систему:
1
1
x1 + a12
x2 + a13
x3 + ... + a11n xn = b11 ,
2
x2 + a23
x3 + ... + a22n xn = b22 ,
......................................................
(20.5)
xn = bnn .
Выпишем формулы для коэффициентов преобразованной системы на
k-ом шаге (когда xk исключается из всех уравнений, начиная с (k +1)-го):
akjk
=
bkk =
akjk −1
k −1
akk
, aijk = aijk −1 − akjk aikk −1 ,
bkk −1
, bik = bik −1 − bkk aikk −1 ,
k −1
akk
(20.6)
56
i = k +1, k +2, …, n; j = k, k +1, …, n.
Процесс сведения системы (20.3) к системе с треугольной матрицей
называется прямым ходом метода Гаусса. Выполнение всех указанных
преобразований возможно, если получающиеся при расчетах коэффициенn−1
отличны от нуля. В противном случае, например, если a122
ты a122 , …, ann
= 0, нужно произвести перестановку уравнений и перенумерацию неизвестных: среди коэффициентов a132 , …, a1n 2 обязательно найдется хотя бы
один, отличный от нуля, – иначе матрица A была бы вырожденной .
Получив систему (20.5), последовательно находим ее решение:
xn = bnn ,
xn−1 = bnn−−11 − ann−−1,1 n xn ,
................................
xk = bkk
−
(20.7)
n
∑ akik xi .
i =k +1
Нахождение решения системы (20.5) обычно называют обратным
ходом метода Гаусса.
Контроль вычислений в методе Гаусса. При вычислениях, производимых по методу Гаусса, без помощи ЭВМ велика вероятность случайных
ошибок. В таких случаях необходимо проводить текущий контроль правильности вычислений. Для проверки прямого хода метода Гаусса вводят
контрольный столбец системы
 K∑1 


K∑=  ⋮  ,
K∑ 
n

состоящий из контрольных элементов уравнений системы:
n
K ∑ i = ∑ aij + bi .
j =1
При преобразовании уравнений системы над контрольными элементами производятся те же операции, что и над свободными членами уравнений. В результате этого контрольный элемент каждого нового уравнения
должен равняться сумме коэффициентов этого уравнения; большое расхождение между ними указывает на ошибки в вычислениях или на неустой-
57
чивость алгоритма вычислений по отношению к вычислительной погрешности. Однако совпадение этих сумм еще не дает гарантии правильности
выполнения всех операций. Конечно, маловероятно, чтобы при «взаимном
гашении» нескольких ошибок получался верный результат, но окончательный контроль все же необходим. Это можно сделать следующим образом.
Рассмотрим вместе с системой Ax = b систему Ax = K Σ . Легко видеть, что
решения x1 , ..., xn и x1 , ..., xn этих двух систем связаны соотношением
xi = xi + 1 .
Поскольку со столбцом KΣ свободных членов системы Ax = K Σ мы
производим (при контроле) все те же действия, что и со столбцом b свободных членов исходной системы (при приведении ее матрицы коэффициентов к треугольному виду), у нас в конце прямого хода метода Гаусса
система Ax = K Σ также имеет треугольный вид, и мы легко можем найти
значения неизвестных x1 , ..., xn . Если окажется, что xi − xi = 1 для всех
i = 1, ..., n , то решение x1 , ..., xn найдено правильно.
§21. Метод Гаусса. Схема с выбором главного элемента
Задачи и примеры предыдущего параграфа решаются сравнительно
просто. В случае, когда коэффициентами системы уравнений являются
дробные числа или числа, достаточно большие по абсолютной величине,
вычисления усложняются. Чтобы упростить их и иметь возможность контролировать производимые вычисления, применяют несколько видоизмененный метод Гаусса.
Пусть дана система линейных алгебраических уравнений
a11x1 + a12 x2 + ... + a1n xn = b1; 
a21x1 + a22 x2 + ... + a2 n xn = b2 ; 

................................................
an1x1 + an 2 x2 + ... + ann xn = bn , 
(21.1)
которую в матричном виде можно записать так:
A x = b,
где
(21.2)
58
a1n 
 x1 
 b1 


b 
a2 n 
x
2
, x =  , b =  2.
(21.3)
.... 
....
..... 
 
 

ann 
 xn 
bn 
Метод Гаусса с выбором главного элемента состоит в следующем.
В системе (21.1) выбирают сначала уравнение, в котором содержится
наибольший по абсолютной величине коэффициент системы (главный
элемент), и делят данное уравнение на этот коэффициент.
После этого так же, как и в простейшей схеме метода Гаусса, исключают из остальных уравнений то неизвестное, при котором был наибольший коэффициент в выбранном уравнении (для удобства главный элемент
можно поместить в первую строку и первый столбец матрицы, над которой
производятся соответствующие преобразования). Далее, оставляя неизменным уравнение с главным элементом, ищут наибольший по абсолютной величине коэффициент в остальных уравнениях (новый главный элемент), делят на него уравнение, в котором он находится, и исключают из
остальных уравнений соответствующее неизвестное и т.д., пока не останется одно уравнение с одним неизвестным, т.е. пока система (21.1) не будет приведена к диагональному виду.
Чтобы не сделать ошибок, применяют контрольные вычисления. Для
этого поступают следующим образом. Делают замену
y = x +e,
(21.4)
 a11 a12
a
a22
A =  21
..... .....

 an1 an 2
...
...
...
...
 y1 
 x1 
1
y 
x 
1
2
2
у =  , x =  , е =   ,
⋮ 
⋮ 
⋮ 
 
 

1
 yn 
 xn 
т.е.
yi = xi + 1 ( i = 1, 2, ..., n ) ,
в результате чего приходят к новой системе
Ay = Ax + Ae = b + Ae = σ ; Ay = σ ,
где
(21.5)
(21.6)
(21.7)
59
σ1 
σ 
n
2

σ=
, σ = b + aik .
(21.8)
⋮  i i ∑
k =1
 
σ n 
Одновременно решают обе системы (21.1), (21.7), приводят их к диагональному виду, все вычисления сводят в таблицу, контролируют их с
помощью чисел контрольного столбца, как показано в примерах 1 и 2.
§22. Вычисление обратной матрицы методом Гаусса
Пусть дана неособенная матрица
A =  aij  (i, j = 1, 2, ..., n) .
(22.1)
Для нахождения ее обратной матрицы
A−1 =  xij 
(22.2)
используем основное соотношение
AA−1 = E ,
где E – единичная матрица.
(22.3)
Перемножая матрицы A и A−1 , будем иметь n систем уравнений относительно n 2 неизвестных xij
1, когда
n
∑ aik xkj = δ ij , (i, j = 1, 2, ..., n) , где δ ij =  0, когда
i = j,
i ≠ j.

Полученные n систем линейных уравнений для j = 1, 2, ..., n, имеюk =1
щих одну и ту же матрицу A и различные свободные члены, одновременно
можно решить методом Гаусса.
Пример 1. Найти обратную матрицу A−1 для матрицы
 1,8 −3,8 0,7
0,7 2,1 −2,6
A=
 7,3 8,1 1,7

 1,9 −4,3 −4,9
−3,7 
−2,8 
.
−4,9 

−4,7 
60
Решение.
Составим схему с единственным делением. При этом будем иметь
четыре столбца свободных членов (таблица 8). Заметим, что элементы
строк обратной матрицы получаются в обратном порядке.
x1 j
1,8
0,7
7,3
1,9
1
1
x2 j
Таблица 8
Вычисление обратной матрицы методом Гаусса
x3 j
x4 j
j =1
j=2
j =3
j=4
Σ
-3,8
2,1
8,1
-4,3
-2,11111
3,57778
23,51110
-0,28889
0,7
-2,6
1,7
-4,9
0,38889
-2,87222
-1,13890
-5,63889
-3,7
-2,8
-4,9
-4,7
-2,05556
-1,36111
10,10559
-0,79444
1
0
0
0
0,55556
-0,38885
-4,05551
-1,05554
0
1
0
0
0
1
0
0
0
0
1
0
0
0
1
0
0
0
0
1
0
0
0
1
-4,0
-1,6
13,2
-11,0
-2,2222
-0,0444
29,4222
-6,7777
1
-0,80279
17,73557
-5,87081
1
1
1
-0,38043
19,04992
-0,90434
1,07411
5,40155
1
-0,10868
-1,50032
-1,08694
-0,08459
-1,58355
-0,29316
0,23030
-0,03533
-0,21121
0,27950
-6,57135
0,08074
-0,37108
-2,09780
-0,38837
0,04607
0,16873
-0,46003
0
1
0
0,05638
0,33100
0,06128
-0,00944
0,01573
0,16284
0
0
1
0
1
0,18513
-0,19885
-0,08920
0,26956
-0,0124
29,7140
-6,7813
1,6753
3,0545
0,5654
1,0680
1,0601
0,7626
На основании результатов таблицы получаем:
0,26956 
 −0,21121 −0,46003 0,16284

0,16873
0,01573 −0,08920 
−1  −0,03533
.
A =
 0, 23030 0,04607 −0,00944 −0,19885 


0,18513 
 −0, 29316 −0,38837 0,06128
Для проверки составим произведение
 1,8 −3,8 0,7

2,1 −2,6
−1  0,7
AA =
 7,3 8,1 1,7

 1,9 −4,3 −4,9
−3,7 
−2,8 
×
−4,9 

−4,7 
61
0, 26956 
 −0,21121 −0,46003 0,16284
 −0,03533 0,16873
0,01573 −0,08920 

 =
×
 0, 23030 0,04607 −0,00944 −0,19885 


0,18513 
 −0,29316 −0,38837 0,06128
 0,99997 0,00000 −0,00001 0,00000 
 −0,00025 0,99997 −0,00002 −0,00039 
 =
=
 −0,00808 −0,01017 0,99982 0,00009 


 0,00000 0,00000 0,00000 1,00048 
 0,03 0,00 0,01 0,00 

0,03 0,02 0,39 
−3  0, 25
.
= E − 10 ⋅
8,08 10,17 0,18 −0,09 


0,00 0,00 0,00 −0,48
Мы видим, что благодаря округлению обратная матрица получилась
не вполне точной. Ниже мы укажем метод исправления элементов приближенной обратной матрицы.
Исправление элементов приближенной обратной матрицы
Пусть имеем неособенную матрицу A и требуется найти обратную
матрицу A−1 . Положим, что мы получили приближенное значение обратной матрицы D0 ≈ A−1 . Тогда для улучшения точности можно воспользоваться методом последовательных приближений в специальной форме. В
качестве предварительной меры погрешности используем разность
F0 = E − AD0 .
Если F0 = 0 , то очевидно, что D0 = A−1 , поэтому, если модули элементов матрицы F0 малы, то матрицы A−1 и D0 близки между собой. Будем строить последовательные приближения по формуле
Dk = Dk −1 + Dk −1Fk −1 (k = 1, 2, 3, ... ) ,
причем соответствующая погрешность есть Fk = E − ADk .
Оценим быстроту сходимости последовательных приближений.
Имеем:
F1 = E − AD1 = E − A( D0 + D0 F0 ) = E − AD0 ( E + F0 ) =
(22.4)
62
= E − ( E − F0 )( E + F0 ) = E − ( E − F02 ) = F02 .
Аналогично, F2 = F12 = F04 и, вообще,
Fk = F02
k
( k = 1, 2, 3,... ).
(22.5)
Докажем, что если
F0 ≤ q < 1,
(22.6)
где F0 – какая-нибудь каноническая норма матрицы F0 , то процесс итерации (1) сходится, т.е. lim Dk = A−1 .
k →∞
Действительно, из формулы (22.5) имеем: Fk ≤ F0
2k
k
≤ q2 .
Поэтому lim Fk = 0 и, следовательно, lim Fk = lim ( E − ADk ) = 0
k →∞
k →∞
k →∞
или E − A lim D k =0, т.е. lim Dk = A−1E = A−1 .
k →∞
k →∞
Таким образом, утверждение доказано.
В частности, используя т-норму, получаем, что если элементы матq
рицы F0 =  fij  удовлетворяют неравенству f ij ≤ , где п – порядок матn
рицы и 0 ≤ q < 1 , то процесс итерации (22.4) заведомо сходится.
Предполагая неравенство (22.6) выполненным, оценим погрешность
k
Rk = A−1 − Dk ≤ A−1 E − ADk = A−1 Fk ≤ A−1 q 2 .
Так как AD0 = E − F0 , то A−1 = D0 ( E − F0 ) = D0 ( E + F0 + F02 + ...) .
−1
Отсюда A−1 ≤ D0
{

q 
E + q + q 2 + ... = D0  E +
.
1
−
q


}
Для т-нормы или l-нормы имеем E = 1 , и поэтому A−1 <
Таким образом,
D
A−1 − Dk ≤ 0 Fk
1− q
или
D
A−1 − Dk ≤ 0 q 2 k ,
1− q
D0
.
1− q
(22.7)
(22.8)
63
где норма понимается в смысле т – нормы или l – нормы. Из формулы
(22.7) следует, что сходимость процесса (22.4) при q << 1 очень быстрая.
На практике процесс уточнения элементов обратной матрицы прекращают, когда обеспечено неравенство Dk − Dk −1 ≤ ε , где ε - заданная
точность.
Пример 2. Исправить элементы приближенной обратной матрицы,
полученной в примере 1.
Решение.
Для матрицы
 1,8 −3,8 0,7
0,7 2,1 −2,6
A=
 7,3 8,1 1,7

 1,9 −4,3 −4,9
−3,7 
−2,8 

−4,9 

−4,7 
методом Гаусса получена приближенная обратная матрица
0, 26956 
 −0, 21121 −0,46003 0,16284
 −0,03533 0,16873
0,01573 −0,08920 
−1

,
A ≈ D0 =
 0, 23030 0,04607 −0,00944 −0,19885 


 −0,29316 −0,38837 −0,06128 0,18513 
причем
 0,03 0,00 0,01 0,00 

0,03 0,02 0,39 
−3  0, 25
.
AD0 = E − 10
8,08 10,17 0,18 −0,09 


0,00 0,00 0,00 −0, 48
Отсюда
 0,03 0,00 0,01 0,00 

0,03 0,02 0,39 
−3  0,25
.
F0 = E − AD0 = 10 ⋅
8,08 10,17 0,18 −0,09 


0,00 0,00 0,00 −0, 48
Для дальнейшего уточнения элементов матрицы D0 воспользуемся
итерационным процессом Dk +1 = Dk + Dk Fk , Fk = E − ADk (k = 0, 1, 2, ... ) .
64
Так как q = F0
l = 10
−3
⋅ ( 0,03 + 10,17 ) = 1,02 ⋅ 10−2 << 1 , то процесс
итерации быстро сходится.
Имеем
0, 26956 
 −0, 21121 −0,46003 0,16284
 −0,03533 0,16873
0,01573 −0,08920 

×
D0 F0 =
 0, 23030 0,04607 −0,00944 −0,19885 


 −0,29316 −0,38837 −0,06128 0,18513 
1,64
 0,03 0,00 0,01 0,00 
 1,19


0,03 0,02 0,39 
0,16
−3  0, 25
−3  0,17

×10 ⋅
= 10 ⋅
8,08 10,17 0,18 −0,09 
 −0,06 −0,09



0,61
0,00 0,00 0,00 −0, 48
 0,39
Отсюда
0,02 −0,32 
0,01 0,11 
.
0,00 0,11 

0,00 −0, 24 
0, 26956 
 −0, 21121 −0,46003 0,16284
 −0,03533 0,16873
0,01573 −0,08920 

×
D1 = D0 + D0 F0 =
 0, 23030 0,04607 −0,00944 −0,19885 


0,18513 
 −0,29316 −0,38837 0,06128
1,64
 1,19

0,16
−3  0,17
× 10 ⋅
 −0,06 −0,09

0,61
 0,39
0,02 −0,32 
0,01 0,11 
=
0,00 0,11 

0,00 −0, 24 
0,26924 
 −0,21002 −0,45839 0,16286
 −0,03516 0,16889
0,01574 −0,08909 

.
=
 0,23024
0,04598 −0,00944 −0,19874 


0,18489 
 −0,29277 −0,38776 0,06128
Можно считать A−1 ≈ D1 , так как
 2 −2 1

2 −1
−5  0
AD1 = E − 10 ⋅
 3 4 −5

1 0 0
и
3
0

1

1
65
 2 −2 1

2 −1
−5  0
F 1 = E − AD1 = 10 ⋅
 3 4 −5

1 0 0
3
0
.
1

1
На основании формулы (22.4) для погрешности имеем оценку
D0 l
A−1 − D1 ≤
F1 l .
l
1− q
Так как
D0 l =0,46003+0,16873+0,04607+0,38837<1,07
и
F1 l =10−5 ⋅ ( 2 + 2 + 4 ) = 8 ⋅ 10−5 ,
то окончательно имеем:
A−1 − D1 ≤
l
1,07
⋅ 8 ⋅ 10−5 < 9 ⋅ 10−5 .
−2
1 − 1,02 ⋅ 10
§23. Метод оптимального исключения
Метод оптимального исключения по существу является вариацией
метода Гаусса. Идея этого метода состоит в том, что последовательным
исключением неизвестных матрица системы приводится к диагональному
виду. Возможность же таких эквивалентных преобразований следует из
теоремы о приведении матрицы к диагональному виду, формулировку которой (без доказательства) мы сейчас приведем.
Теорема 23.1. Для любой квадратной вещественной матрицы A n -го
порядка существуют такие квадратные вещественные матрицы u и v
( n -го порядка), что матрица UAV – диагональная.
Опишем вкратце схему оптимального исключения. Пусть у нас есть
система общего вида (2.3) с матрицей A . Допустим, что коэффициент
a11 ≠ 0 . Разделив все коэффициенты первого уравнения на a11 , получим
систему:
1
x1 + a12
x2 + ... + a11n xn = b11 ,
a21x1 + a22 x2 + ... + a2 n xn = b2 ,
...............................................
66
an1x1 + an 2 x2 + ... + ann xn = bn .
Умножив первое уравнение на коэффициент - a21 , сложив его со вто1
рым и поделив все коэффициенты второго уравнения на a22 − a12
a21 (в
1
предположении, что a22 − a12
a21 ≠ 0 ), придем к системе:
1
x1 + a12
x2 + ... + a11n xn = b11 ,
x2 + ... + a12 n xn = b21 ,
a31x1 + a32 x2 + ... + a3n xn = b3 ,
................................................
an1x1 + an 2 x2 + ... + ann xn = bn .
1
Умножив теперь второе уравнение на – a12
и сложив его с первым,
исключим неизвестное x2 из первого уравнения.
Допустим, что таким образом мы преобразовали первые k уравнений ( k ≥ 1) , исключив из первого уравнения системы неизвестные x2 ,..., xk ,
из второго неизвестные x1, x3 ,..., xk ; наконец, из k -го уравнения – неизвестные x1, x2 ,..., xk −1 . То есть допустим, что система Ax = b приведена к
эквивалентной системе вида:
x1 + a1,k k +1xk +1 + ... + a1kn xn = b1k ,
x2 + a2,k k +1xk +1 + ... + a2kn xn = b2k ,
.................................................
k
xk + akk,k +1xk +1 + ... + akn
xn = bkk ,
ak +1,1x1 + ak +1,2 x2 + ... + ak +1,k xk + ak +1,k +1xk +1 + ... + ak +1,n xn = bk +1 ,
........................................................................................................
an1x1 + an 2 x2 + ... + ank xk + an,k +1xk +1 + ... + ann xn = bn .
Исключим теперь неизвестные x1, x2 ,..., xk из k + 1 -го уравнения. Для
этого сложим его с первым, умноженным на −ak +1,1 ; со вторым, умножен-
67
ным на −ak +1,2 , и т.д. Разделим полученное в результате этих действий
уравнение на коэффициент при xk +1 ; k + 1 -ое уравнение примет вид:
xk +1 + akk++1,1 k + 2 xk +2 + ... + akk++1,1 n xn = bkk++11 .
Умножая это уравнение на – a1,k k +1 , – a2,k k +1 , …, – akk,k +1
и складывая его соответственно с первым, вторым, …, k-ым уравнениями,
получим систему, в первых k уравнениях которой коэффициенты при xk +1
равны нулю.
После аналогичных преобразований всех уравнений системы получим систему с диагональной матрицей:
xi = bin
( i = 1,..., n ) .
Заметим, что количество арифметических операций для решения
системы методом оптимального исключения примерно то же самое, что и в
методе Гаусса. Однако этот метод требует несколько меньшего объема используемой памяти ЭВМ.
§24. Метод квадратного корня
Теоретическая основа метода
Метод квадратного корня применяется для решения систем линейных уравнений с симметричной матрицей A. Матрица A представляется в
виде
A = CТDC,
(24.1)
Т
где С – верхняя треугольная матрица; C – транспонированная к ней:
 c11 c12
 0 c
22
C =
 ... ...

0
 0
... c1n 
... c2 n 
... ... 

... cnn 
причем все cii >0 , D - диагональная матрица с элементами dii , равными +1
или –1.
Матричное равенство (24.1) образует систему уравнений, из которой
определяются элементы матриц C и D : aij = c1i c1 j d11 + ... + cii cij dii при i ≤ j
68
(уравнения при i > j отброшены, так как уравнения, соответствующие парам ( i, j ) и
( j , i ) , эквивалентны). Отсюда получаем рекуррентные форму-
лы для определения элементов dii и cij :
i −1


dii = sign  aii − ∑ cki2 d kk  ,
k =1


i −1
aii − ∑ cki2 d kk ,
cii =
(24.2)
k =1
i −1
cij =
aij − ∑ cki ckj d kk
k =1
cii dii
при i < j ,
cij = 0 при i > j .
Из этих формул видно, что матрица C является верхней треугольной, и таким образом, после представления A в виде (24.1) решение исходной системы Ax = b сводится к последовательному решению двух систем с треугольными матрицами. Заметим, что в случае A > 0 (т.е. она положительно определена, ее все главные миноры Aii положительны) все
dii = 1
и
A = CT C .
(24.1′)
В этом случае решение системы Ax = b ( A − симметричная, положи-
тельно определенная матрица) сводится к решению системы C T Cx = b . Это
прямой ход метода квадратного корня. Положив Cx = z , получим, что решение системы Ax = b эквивалентно решению двух систем с треугольными матрицами: C T z = b и Cx = z . Элементы zi ( i = 1,..., n ) находятся по
формулам:
i −1
b
z1 = 1 , zi =
c11
bi − ∑ cik zk
k =1
cii
( i > 1) .
Вычисление xi осуществляется аналогично обратному ходу в схеме
Гаусса по формулам:
69
z
xn = n , xi =
cnn
n
zi −
∑ cik xk
k =i +1
cii
(i < n) .
Схема реализации метода квадратного корня в случае A > 0.
Матрица С вычисляется по строкам, начиная с первой. Для каждой
строки вначале вычисляется диагональный элемент cii , а затем все остальные ее элементы по формулам (24.2), где все d kk =1.
При ручном счете вычисления удобно объединить в следующую таблицу (здесь n = 4 ).
Контроль хода вычислений организуется так же, как в схеме Гаусса.
При суммировании учитываются все элементы матрицы, а не только впиn
санные в таблицу:
∑ i = ∑ aij + bi .
j =1
Для контроля правильности прямого хода проверяется выполнение
равенства:
n
∑ ∑ cik + zi .
'
=
i
k =i
Элементы А
a11
a12
a22
a13
a23
a33
Элементы С
c11
c12
c22
c13 c14
c23 c24
c33 c34
c44
a14
a24
a34
a44
xi
x1
x2
x3
x4
xi
x1
x2
x3
x4
Таблица 9
b
Σ
b1
Σ1
b2
Σ2
b3
Σ3
b4
Σ4
z1
z2
z3
z4
Σ′1
Σ′ 2
Σ′3
Σ′ 4
70
где
∑i
'
получаются из
∑i
по тем же формулам, что и zi . Правильность
обратного хода обеспечивается выполнением равенств: xi − xi = 1 ; элементы xi находятся из условия C x = ∑
'
.
Упражнение. Решить методом квадратного корня следующую систему:
0,82 x1 – 1,22 x2 + 2,22 x3 + 0,62 x4 = 2,86,
–1,22 x1 + 7,22 x2 + 0,85 x3 – 5,83 x4 = 0,26,
2,22 x1 + 0,85 x2 + 18,11 x3 – 5,83 x4 = 18,26,
0,62 x1 – 5,83 x2 – 5,83 x3 + 8,88 x4 = – 1,26.
Результаты вычислений приведены в таблице 10.
Таблица 10
Решение системы линейных уравнений с симметричной матрицей
методом квадратного корня
A1
A2
A3
A4
0,82
–1,22
7,22
2,22
0,85
18,11
0,9055
–1,3473
2,3248
2,4517
1,7864
2,9846
xi
0,1306
1,1190
1,4298
0,62
–5,83
–5,83
8,88
0,6847
–2,1109
–1,2523
1,5450
1,5224
xi
1,1308
2,1187
2,4296
2,5219
Σ
b
2,86
0,26
18,26
–1,26
3,1585
1,9422
2,3610
2,3521
5,3
1,28
33,61
–3,42
5,8531
3,9424
4,0934
3,8964
Σ′
5,3
1,28
33,61
–3,42
5,8531
3,9424
4,0933
3,8971
x1 = 0,13 , x2 = 1,12 , x3 = 1,43 , x4 = 1,52 .
§25. Вычисление определителей
Идея способа Гаусса последовательного исключения неизвестных в
системе уравнений может быть перенесена на задачу вычисления определителей, и здесь она переходит в способ последовательного понижения
71
порядка n определителя. Рассмотрим схему
дан определитель
a11 a12 ...
a
a22 ...
D = 21
... ... ...
единственного деления. Пусть
a1n
a2 n
.
...
an1 an 2 ... ann
Выберем как-либо ведущий элемент первого шага преобразований.
Он должен быть отличным от нуля; чтобы избежать сильного разброса в
порядках чисел, за него принимают либо наибольший по модулю элемент
D, либо наибольший элемент в избранной строке или избранном столбце.
Выполняя, если нужно, перестановку строк и столбцов, можно считать, что
за ведущий элемент принят a11 . Вынося a11 из первой строки (первого
столбца) за знак D, приведем определитель к виду
D = a11
1 b12 ... b1n
a21 a22 ... a 2 n
.
... ... ... ...
an1 an 2 ... ann
Умножая первую строку последовательно на a21, a31,..., an1 и вычитая из второй, третьей и т.д. строк, получим
1 b12 ... b1n
0 a22.1 ... a 2 n.1
D = a11
= a11
... ... ... ...
0 an 2.1 ... ann.1
a221⋅ a231⋅ ... a2 n⋅1
a321⋅ a331⋅ ... a 3n⋅1
.
... ... ... ...
an 21⋅ an31⋅ ... ann⋅1
(25.1)
Этим мы понизим порядок определителя на единицу и можем перейти ко второму шагу преобразований, применяя к полученному порядку
n − 1 такие же преобразования. Выполняя все n шагов, найдем определитель D как произведение ведущих элементов:
D = a11 ⋅ a22.1 ⋅ a33.2 ...ann.n−1 .
(25.2)
Можно было бы применить к вычислению определителя идеи метода
оптимального исключения неизвестных , но, как легко видеть, в этом случае проделана излишняя, по сравнению с изложенным методом вычислительная работа. Это связано с тем, что в описанных выше преобразованиях
72
таблица элементов, если не понижать порядка определителей, будет приведена к правой треугольной; определитель по этой причине будет вычислен просто, так как он равен произведению диагональных элементов. При
применении же метода оптимального исключения таблица будет приведена не к треугольной, а к диагональной, что при вычислении определителя
является излишним упрощением.
§26. Метод ортогонализации
Будем считать, что определитель системы (20.3) отличен от нуля и,
следовательно, система имеет единственное решение. Запишем ее в виде
a11x1 + ... + a1n xn + a1n+1 = 0,
..........................................
an1x1 + ... + ann xn + ann+1 = 0,
(26.1)
ain+1 = −bi .
Исключим из расстояния неинтересный случай, когда система (26.1)
является однородной и все ain+1 равны нулю.
Введем n + 1 − мерные векторы a i = (ai1,..., ain , ain+1 ) и y = ( x1,..., xn ,1) .
Это позволит придать уравнениям (8.1) форму условий ортогональности вектора y к векторам a i ( i = 1,..., n ) :
(a , y) = 0
i
( i = 1,..., n ) ,
(26.2)
что дает возможность применить к нахождению y хорошо известный процесс ортогонализации. Единственное ограничение, которому нужно заранее подчинить вектор y, – это равенство единице его последней составляющей.
Ортогональность y к ai равносильна ортогональности y к линейному
подпространству Pn , натянутому на векторы a i , и, следовательно, к любому базису этого подпространства. Построим ортогональный базис при помощи известного процесса ортогонализации системы векторов: положим ∗ )
73
1
1
k
u = a ,v =
1
u
k −1
(
)
u ,..., u = a − ∑ a k , vi vi ,... Векторы vi ( i = 1,2,..., n ) обраk
k
k
k
i =1
зуют в Pn ортонормированный базис.
Присоединим теперь к ν i ( i = 1,..., n ) еще любой вектор a n+1, от них
линейно не зависящий. Таким будет, например, вектор a n+1 = ( 0,...,0,1) .
Выделим из него часть, ортогональную ко всем vi (1,..., n ) , положив
u
n+1
=a
n+1
n
(
)
− ∑ a n+1, vi vi . Для u n+1 выполняются равенства
i =1
(
(u
n+1
)
, vi = 0
)
или равносильные им u n+1, a i = 0 ( i = 1,..., n ) . Запишем их более подробно:
(u
n+1
(u
n+1
)
, a i = a11u1n+1 + ... + a1nun n+1 + unn++11a1n+1 = 0,
.....................................................................................
)
, a n = an1u1n+1 + ... + annun n+1 + unn++11ann+1 = 0.
(26.3)
Последняя составляющая unn++11 вектора u n+1 отлична от нуля, ибо если она равна нулю, то составляющие u1n+1,..., unn+1 были бы решением одно-
{ }
родной системы с матрицей A = aij . Но так как эта система может иметь
только нулевое решение, то все составляющие вектора u n+1 были бы равны
нулю и вектор a n+1 являлся бы линейной комбинацией векторов vi , что
противоречит выбору a n+1.
Если уравнения системы (26.3) разделить на unn++11 , то будет видно, что
uin+1
вектор y = ( x1,..., xn ,1) , для которого xi = n+1 ( i = 1,..., n ) , будет решением
un+1
системы (26.2), а вектор x = ( x1,..., xn ) − решением заданной системы (20.3).
Метод ортогонализации требует выполнения большего числа умножений и делений, чем метод Гаусса, и в этом отношении уступает ему.
74
§27. Прогонка
Наиболее важным частным случаем метода Гаусса является метод
прогонки, применяемый к системам с трехдиагональной матрицей (они
часто встречаются при решениях краевых задач для дифференциальных
уравнений второго порядка). Такие системы обычно записывают в каноническом виде
ai xi −1 − bi xi + ci xi +1 = d1, 1 ≤ i ≤ n, a1 = cn = 0.
(27.1)
Формула (27.1) называется разностным уравнением второго порядка,
или трехточечным уравнением. В этом случае прямой ход (без выбора
главного элемента) сводится к исключению элементов ai . Получается треугольная система, содержащая в каждом уравнении только два неизвестных, xi и xi+1. Поэтому формулы обратного хода имеют следующий вид:
xi = ξi +1xi+1 + ηi+1, i = n, n − 1,...,1.
(27.2)
Уменьшим в формуле (27.2) индекс на единицу и подставим в уравнение (27.1):
ai (ξi xi + ηi ) − bi xi + ci xi +1 = di .
Выражая отсюда xi через xi+1, получим
xi =
ci
a η − di
xi +1 + i i
.
bi − aiξi
bi − aiξi
Чтобы это выражение совпало с (9.2), надо, чтобы стоящие в его правой части дроби были равны соответственно ξi +1 и ηi +1. Отсюда получим
удобную запись формул прямого хода
ξi +1 = ci / ( bi − aiξi ) ,
ηi +1 = ( aiηi − di ) / ( bi − aiξi ) , i = 1, 2,... , n .
(27.3)
Попутно можно найти определитель трехдиагональной матрицы
n
det A = ∏ ( aiξi − bi ).
(27.4)
i −1
Вычисления по формулам прогонки (27.3)-(27.4) требуют всего 3n
ячеек памяти и 9n арифметических действий, т.е. они гораздо экономнее
общих формул метода исключения.
В формулах прямого и обратного хода начало счета «замаскировано»: для начала (развязки) расчета формально требуется задать величины
75
ξ1, η1 и xn+1, которые неизвестны. Однако перед этими величинами в формулах стоят множители ai или ξ n+1 ~ cn , равные нулю. Это позволяет начать вычисления, полагая, например, ξ1 = η1 = xn+1 = 0.
Покажем, что если выполнено условие преобладания диагональных
элементов
bi ≥ ai + ci
(27.5)
(причем хотя бы для одного i имеет место неравенство), то в формулах
прямого хода (27.3) не возникает деления на нуль, и тем самым исходная
система (27.1) имеет единственное решение. Для этого предположим, что
ξi < 1 при некотором значении индекса.
Тогда легко проверяется цепочка неравенств
ξi +1 = ci / bi − aiξi ≤ ci / ( bi − ai ξi ) ≤ ci / ( ci + ai − ai × ξi ) < 1.
Поскольку можно положить ξ1 = 0, отсюда по индукции следует
ξi < 1; значит, bi − aiξi > ci ≥ 0, что и требовалось доказать. При выполнении условия (27.5) формулы прогонки устойчивы относительно ошибок
округления и позволяют успешно решать системы уравнений с несколькими сотнями неизвестных.
Условие (27.5) является достаточным, но не необходимым условием
устойчивости прогонки. Конечно, можно построить примеры неустойчивости при несоблюдении этого условия. Но в практических расчетах для
хорошо обусловленных систем типа (27.1) прогонка часто оказывается
достаточно устойчивой даже при нарушении условия преобладания диагональных элементов.
Заметим, что к линейным системам с трехдиагональной матрицей
обычно приводят трехточечные разностные схемы для дифференциальных
уравнений второго порядка.
§28. Плохо обусловленные системы
Если система Ax = b плохо обусловлена, то это значит, что погрешности коэффициентов матрицы и правых частей или погрешности округления при расчетах могут сильно исказить решение. Для уменьшения погрешностей округления можно было бы провести на ЭВМ расчет с двой-
76
ным или тройным числом знаков. Но при наличии погрешности коэффициентов это бесполезно, и нужно регуляризовать исходную задачу.
Исходную систему Ax = b можно переписать в эквивалентной форме
( Ax − b, Ax − b ) = 0. Если коэффициенты матрицы или правые части известны не точно, то решение также является приближенным. Поэтому на
самом деле мы можем требовать только приближенного равенства
( Ax − b, Ax − b ) ≈ 0. Задача становится неопределенной, и для определенности надо добавить какие-то дополнительные условия.
Таким условием может быть требование, чтобы решение как можно
меньше отклонялось от заданного вектора x0 , т.е. чтобы скалярное произведение ( x − x0 , x − x0 ) было минимально. Тогда регуляризованная задача
формулируется следующим образом:
( Ax − b, Ax − b ) +α ( x − x0 , x − x0 ) = min, α > 0.
(28.1)
Это можно переписать в эквивалентной форме
( x, A
H
) (
)
Ax − 2 x, AH b + ( b, b ) + α ( x, x ) − 2 ( x, x0 ) + ( x0 , x0 )  = min,
(28.2)
где α – малый положительный управляющий параметр и AH − эрмитово
сопряженная матрица. Варьируя x в (10.1) и (28.2), получим следующее
уравнение:
(A
H
)
A + α E x = AH b + α x0 ,
(28.3)
где E – единичная матрица. Решая его (например, методом исключения
Гаусса), найдем регуляризованное значение xα , зависящее от параметра α .
Остановимся на выборе параметра. Если α = 0, то система (28.3) переходит в плохо обусловленную систему вида Ax = b . Если же α велико,
то регуляризованная система (28.3) будет хорошо обусловленной благодаря присутствию в левой части хорошо обусловленной матрицы α E ; но сама система (28.3) при большом α сильно отличается от исходной системы,
и регуляризованное решение xα не будет близким к искомому решению.
Поэтому слишком малое или слишком большое α непригодны. Очевидно,
оптимальным будет наименьшее значение α , при котором обусловленность системы (28.3) еще удовлетворительна.
77
Для фактического нахождения оптимума вычисляют невязку
rα = Axα − b и сравнивают ее по норме с известной погрешностью правых
частей δ b и с влиянием погрешности коэффициентов δ A ⋅ x. Если α
слишком велико, то невязка заметно больше этих погрешностей, если
слишком мало – то заметно меньше. Проводят серию расчетов с различными α ; оптимальным считают тот, в котором rα ≈ δ b + δ A ⋅ x .
Для выбора x0 нужны дополнительные соображения; если их нет, то
полагают x0 = 0.
Заметим, что матрица системы (28.3) эрмитова, так что для ее решения можно применять метод квадратного корня.
§29. Итерационные методы
При использовании современной вычислительной техники очень
удобны итерационные методы. Эти методы применяются для приближенного решения алгебраических и трансцендентных уравнений, систем уравнений и других задач вычислительной математики. Решение уравнения
или системы уравнений при помощи итерационного метода получается как
предел последовательности приближений, вычисляемых в ходе процесса
итераций. Итерационные методы часто называют также методами последовательных приближений.
При решении задачи методом последовательных приближений с самого начала задают некоторые приближенные значения неизвестных. Из
этих начальных приближений получают новые, «улучшенные» приближенные значения. Новые приближенные значения снова «улучшают» и т.д.
При определенных условиях построенная таким образом последовательность приближений сходится к точному решению.
При применении того или иного итерационного метода прежде всего
встает вопрос о том, сходится ли построенная данным методом последовательность приближений и является ли предел этой последовательности
(если он существует) решением поставленной задачи. Множество начальных приближений, при которых последовательность приближений сходится к решению задачи, называют областью сходимости метода.
78
Кроме сходимости к решению, при применении итерационных методов существенной является и скорость сходимости. Для некоторых задач
сходимость итерационного процесса может оказаться настолько медленной, что практически достигнуть удовлетворенной близости к решению
невозможно. В связи с этим при применении итерационных методов важную роль играет предварительная подготовка, то есть сведение данной задачи к задаче, для которой бы выбранный итерационный процесс сходился
по возможности быстро. Большое значение имеют также различные приемы ускорения сходимости.
В основе многих итерационных методов лежит так называемый
принцип сжимающих отображений. Этот принцип широко применяется
как для доказательства теорем существования и единственности решения
уравнений и систем уравнений различных типов, так и при исследовании
сходимости итерационных методов.
Прежде чем сформулировать и доказать принцип сжимающих отображений, напомним ряд понятий и фактов функционального анализа.
§30. Метрические пространства.
Множество R элементов произвольной природы называется метрическим пространством, если каждой упорядоченной паре элементов
х, y ∈ R поставлено в соответствие неотрицательное число ρ( х, y ), называемое расстоянием между этими элементами или метрикой пространства R и удовлетворяющее следующим условиям (аксиомы метрики):
1) ρ ( x, y ) = 0 тогда и только тогда, когда x = y;
2) ρ ( x, y ) = ρ ( y, x ) для любых х и y ;
3) ρ ( x, z ) ≤ ρ ( x, y ) + ρ ( y, z ) для любых x, y, z (неравенство треугольника).
Элементы метрического пространства R называют также точками
этого пространства.
Пример 1. Любое множество точек на вещественной прямой E ′ является метрическим пространством с расстоянием ρ ( x, y ) = x − y .
Пример 2. Любое множество точек n-мерного евклидова пространства также является метрическим пространством. Расстояние между точ-
79
ками x = ( x1, x2 , ..., xn ) и y = ( y1, y2 ,..., yn ) этого пространства определяется
формулой: ρ ( x, y ) =
n
∑ ( xi − yi )
2
.
i =1
Выполнение аксиом 1) и 2) здесь очевидно. Для проверки аксиом 3)
(неравенства треугольника) воспользуемся неравенством Коши:
n
∑ aibi
n
n
∑ ai ∑ bi
≤
i =1
2
i =1
2
,
i =1
которое имеет место для любых чисел a1, a2 ,..., an , b1, b2 ,..., bn .
В самом деле, если z = ( z1, z2 ,..., zn ) , то, полагая в этом неравенстве
ai = xi − yi , bi = yi − zi , находим:
n
n
ρ 2 ( x, z ) = ∑ ( xi − zi ) = ∑ (( xi − yi ) + ( yi − zi )) 2 =
2
i =1
n
i =1
n
n
i =1
i =1
= ∑ ( xi − yi ) + 2∑ ( xi − yi )( yi − zi ) + ∑ ( yi − zi ) ≤
2
i =1
n
≤ ∑ ( xi − yi ) + 2
i =1
2
n
n
∑ ( xi − yi ) ∑ ( yi − zi )
2
i =1
2
2
+
i =1
2
n
 n

2
2
2
2
+ ∑ ( yi − zi ) =  ∑ ( xi − yi ) + ∑ ( yi − zi )  = ( ρ ( x, y ) + ρ ( y, z ) ) .
 i =1

i =1
i =1


Пример 3. Любое множество n-мерных векторов становится метрическим пространством также в том случае, если расстояние между элементами этого множества определяется формулой: ρ1 ( y, z ) = max xi − yi .
n
1≤i≤n
Справедливость условий 1) – 3) здесь очевидна.
Пример 4. Во множестве n-мерных векторов можно ввести расстояn
ние и по такой формуле: ρ 2 ( x, y ) = ∑ xi − yi . Условия 1) – 3), очевидно,
i =1
выполняются, и, таким образом, любое векторное множество с метрикой
ρ 2 также является метрическим пространством.
80
Последние три примера показывают, что одно и то же множество
элементов может быть метризовано по-разному; при этом получаются различные метрические пространства.
Неравенство треугольника можно обобщить на случай любого числа
1
2
m
элементов x( ) , x( ) ,..., x( ) :
(
) (
) (
)
(
)
ρ x(1) , x( m ) ≤ ρ x(1) , x( 2 ) + ρ x( 2) , x( 3) + ... + ρ x( m−1) , x( m ) .
Последнее неравенство получается путем последовательного применения неравенства треугольника.
Отметим еще одно простое свойство расстояний, которое можно назвать «неравенством четырехугольника»: для любых точек x, y, z , u метрического пространства ρ ( x, z ) − ρ ( y, u ) ≤ ρ ( x, y ) + ρ ( z , u ) .
Геометрически это означает, что разность длин двух сторон четырехугольника не превосходит суммы длин двух других его сторон. Доказательство вытекает из неравенств:
ρ ( x, z ) ≤ ρ ( x, y ) + ρ ( y , u ) + ρ ( u , z ) и ρ ( y , u ) ≤ ρ ( y , x ) + ρ ( x, z ) + ρ ( z , u ) .
Расстояние, определенное для элементов произвольной природы позволяет дать обобщение одного из важнейших понятий математического
анализа– понятия предела. Будем говорить, что последовательность точек
1
2
k
x( ) , x( ) ,..., x( ) ,... произвольного метрического пространства R сходится к
(
)
точке x того же пространства R , если lim ρ x, x k = 0.
k→∞
Точка x в этом случае называется пределом последовательности
{x } и обозначается: lim x( ) = x.
k
(k )
k→∞
Следующее утверждение очевидно. Во-первых, никакая последовательность не может иметь двух различных пределов; во-вторых, если по-
{ }
следовательность x ( k ) сходится в точке x, то и всякая ее подпоследовательность сходится в этой точке.
В качестве следствия из неравенства четырехугольника можно получить доказательство непрерывности расстояния ρ ( x, y ) (как функции от x
(
)
и y ) в том смысле, что если x ( k ) → x и y ( k ) → y, то ρ x ( k ) , y ( k ) → ρ ( x, y )
81
при k → ∞. Действительно, с помощью неравенства четырехугольника
(
)
(
) (
)
имеем: ρ x ( k ) , y ( k ) − ρ ( x, y ) ≤ ρ x ( k ) , x + ρ y ( k ) , y → 0 при k → ∞.
{ }
k
Определение 30.1. Последовательность x( ) точек метрического
пространства R называется фундаментальной, если для любого положительного ε существует номер N , такой, что для любых k и l , больших
(
)
k
l
N , выполняется неравенство: ρ x( ) , x( ) < ε .
(
)
k
l
Кратко в таком случае можно писать: lim ρ x( ) , x( ) = 0.
k , l→∞
Любая сходящаяся последовательность является фундаментальной.
k
Действительно, пусть lim x( ) = x.
k→∞
k
Тогда ρ ( x ( k ) , x (l ) ) ≤ ρ ( x( ) , x ) + + ρ ( x, x (l ) ) → 0 при k , l → ∞.
Если R – вещественная прямая с обычной метрикой, то понятие фундаментальной последовательности точек пространств R совпадает с классическим понятием фундаментальной числовой последовательности.
В теории числовых последовательностей имеется критерий Коши, в
силу которого всякая фундаментальная числовая последовательность является сходящейся.
В общем метрическом пространстве критерий Коши уже несправедлив. Например, рассмотрим открытый интервал (0,1). Он представляет собой метрическое пространство с обычной метрикой числовой оси
( ρ ( x, y ) = x − y ). Последовательность 12 , 13 ,..., 1n ,..., очевидно, является
фундаментальной в этом метрическом пространстве, но она не является в
нем сходящейся.
Определение 30.2. Метрическое пространство R называется полным, если в нем всякая фундаментальная последовательность является
сходящейся.
Пример 1. Проверим что n-мерное евклидово пространство E
расстоянием ρ ( x, y ) =
n
∑ ( xi − yi )
i =1
2
n
с
является полным метрическим про-
82
(
)
k
k
k
k
странством. Пусть векторы x( ) = x1( ) , x2( ) ,..., xn( ) , k = 1, 2,..., состав-
ляют фундаментальную последовательность.
Поскольку
k
l
xi ( ) − xi ( ) ≤
∑(
n
k
l
xi ( ) − xi ( )
i =1
)
2
(
)
k
l
= ρ x( ) , x( ) ,
числовая
{ }
k
последовательность xi ( ) при каждом фиксированном i = 1, 2..., n являет-
ся фундаментальной числовой последовательностью и имеет некоторый
предел xi . Числа x1, x2 , ..., xn определяют вектор x ∈ E n .
Поскольку
(
)
ρ x, x ( k ) =
∑ ( xi − xi
n
i =1
(k )
)
2
→0
при
k → ∞,
вектор
x = ( x1, x2 ,..., xn ) есть предел взятой фундаментальной последовательности.
Итак, каждая фундаментальная последовательность n-мерного евклидова
пространства E n имеет предел, что и требовалось доказать.
Пример 2. Множество всех n-мерных векторов, в котором введена
метрика ρ1 ( x, y ) = max xi − yi , также является полным метрическим про1≤i≤n
странством. Доказательство аналогично приведенному для примера 1.
Пример 3. Совершенно аналогично примерам 1 и 2 доказывается,
что и метрическое пространство, состоящее из всех n-мерных векторов с
n
расстоянием ρ 2 ( x, y ) = ∑ xi − yi , полно.
i =1
§31. Принцип сжимающих отображений
Пусть X и Y – два метрических пространства. Будем говорить, что
оператор y = Фx отображает X в Y , если каждому элементу x ∈ X поставлен в соответствие элемент y ∈ Y .
Если X = Y , то этот оператор задает отображение Ф пространства
X в себя.
Всякая точка x, которая переводится отображением Ф в себя (т.е.
для которой Фx = x ), называется неподвижной точкой этого отображения.
83
Определение 31.1. Пусть R − метрическое пространство, а оператор
y = Фx отображает R в себя. Если при некотором α , 0 < α < 1, отображение y = Фx удовлетворяет условию ρ (Фx, Фx′ ) ≤ αρ ( x, x′ ) для любых
x, x′ ∈ R, то такое отображение называют сжимающим.
Теорема 31.1. (принцип сжимающих отображений). Если отображение y = Фx сжимающее ( x ∈ R, Ф : R → R, R – полное метрическое пространство), то существует одна и только одна неподвижная точка этого отображения, то есть уравнение x = Фx имеет единственное решение.
Решение этого уравнения может быть получено как предел последова0
k
k −1
тельности x( ) = Фx( ) , k = 1,2,..., где x( ) – произвольный элемент из R.
Доказательство.
0
Пусть x( ) − произвольный элемент из R. Рассмотрим последоваk
k −1
тельность x( ) = Фx( ) , k = 1, 2,.... Докажем, что она является фундамен-
тальной. Действительно, для любого k имеем:
(
) (
) (
)
≤ α ρ ( x( ) , x( ) ) ≤ ... ≤ α ρ ( x( ) , x( ) ) .
ρ x( k ) , x( k +1) = ρ Фx( k −1) , Фx( k ) ≤ αρ x( k −1) , x( k ) ≤
k −2
2
k −1
0
k
1
Следовательно, при любых k и l , k < l ,
ρ ( x( k ) , x( l ) ) ≤ ρ ( x( k ) , x( k +1) ) + ρ ( x( k +1) , x( k + 2) ) + ... + ρ ( x( l −1) , x( l ) ) ≤
α
1
≤ (α k + α k +1 + ... + α l −1 ) ρ ( x (0) , x( ) ) =
(
)
(
)
−αl
αk
0 (1)
ρ x ,x ≤
ρ x( 0) , x(1) .
1−α
1−α
При достаточно большом k эта величина может быть сделана как
угодно малой (α < 1) , что и доказывает фундаментальность выбранной последовательности { x
(k )
k
}.
Так как R полно, то существует элемент x∗ = lim x k .
k →∞
Для этого элемента x∗ имеем:
ρ (Фx∗ , x∗ ) ≤ ρ (Фx∗ , x( k ) ) + ρ ( x( k ) , x∗ ) = ρ (Фx∗ , Фx( k −1) ) +
(
)
(
)
k
k −1
∗
+ ρ x( ) , x∗ ≤ αρ x∗ , x( ) + ρ ( x ( k ) , x( ) ) → 0 при k → ∞.
84
Поскольку k произвольное, а ρ (Фx∗ , x∗ ) не зависит от k , получаем:
ρ (Фx∗ , x∗ ) = 0, то есть Фx∗ = x∗.
Остается показать, что x∗ – единственная неподвижная точка отображения Ф. Допустим, что z – вторая неподвижная точка, так что вместе с
равенством Фx∗ = x∗ имеет место и равенство Фz = z.
Тогда
(
) (
)
(
)
ρ x∗ , z = ρ Фx∗ , Фz ≤ αρ x∗ , z .
(
)
(
)
Если ρ x∗ , z > 0, то, сократив на ρ x∗ , z , получим: 1 ≤ α − проти-
(
)
воречие. Поэтому ρ x∗ , z = 0,
x∗ = z , то есть неподвижной точки, от-
личной от x∗ , не существует. Теорема доказана.
k
k −1
k
Точки x( ) , получаемые по формуле x( ) = Фx( ) , k = 1,2,..., являются
последовательными приближениями решения x∗ уравнения x = Фx. Из по-
(
)
(
)
ak
k ) (l )
(
ρ x( 0) , x(1) , где k < l , пелученного выше неравенства ρ x , x ≤
1−α
реходом к пределу при l → ∞ и фиксированном k , получаем (используя
непрерывность расстояния):
(
)
(
)
ak
k ) (∗)
(
ρ x ,x ≤
ρ x( 0) , x(1) .
(31.1)
1−α
Последнее неравенство дает оценку расстояния между точным реше-
нием x∗ и его приближением x( ) . Это расстояние убывает со скоростью
геометрической прогрессии со знаменателем α . неравенство (31.1) позволяет также в конкретных задачах заранее оценить число шагов, необходиk
мое для вычисления x∗ с заданной точностью.
85
§32. Метод простой итерации для решения
систем линейных алгебраических уравнений
Принцип сжимающих отображений применяется и к исследованию
сходимости итерационных методов для решения различных систем уравнений.
Пусть, например, имеется система линейных алгебраических уравнений специального вида:
x = Tx + s .
(32.1)
Здесь
 t11
t
T =  21
…

 tn1
t12 ... t1n 
 s1 
 x1 
s 
x 
t22 … t2 n 
2

, s=
, x =  2 .
… 
… 
… … …

 
 
tn 2 … tnn 
 sn 
 xn 
Правую часть равенства (32.1) можно рассматривать как задание
отображения Φ , переводящего элемент x = ( x1, x2 , ..., xn ) n − мерного векторного пространства в элемент y = ( y1, y2 , ..., yn ) того же пространства.
При этом
n
yi = ∑ tij x j + si , i = 1, 2, ..., n .
j =1
Вопрос о решении системы (32.1) сводится к отысканию неподвижной точки отображения Φ , определяемого формулой:
Φx = Tx + s .
Если отображение Φ является сжимающим в смысле какой-либо
метрики n-мерного векторного пространства, то решение уравнения
x = Tx + s может быть получено методом последовательных приближений.
При этом последовательные приближения вычисляются по формуле:
x
(k )
= Tx
( k −1)
+ s , k = 1, 2, ...,
начиная с произвольного вектора x
(32.2)
(0)
(
( )
( )
( )
)
= x1 0 , x20 , ..., xn0 .
При каких же условиях отображение Φ будет сжимающим?
86
Ответ на этот вопрос зависит не только от самого отображения Φ ,
но и от выбора метрики в n -мерном векторном пространстве. Рассмотрим
три варианта.
1°. Пусть метрика введена следующим образом:
ρ1 ( x, x′ ) = max xi − xi′ .
(32.3)
1≤i≤n
Как известно, n-мерное векторное пространство полно в смысле метрики (32.3).
Рассмотрим теперь ρ1 ( Φx, Φx′ ) :
n
n
n
j =1
j =1
(
)
ρ1 ( Φx, Φx′ ) = max ∑ tij x j − ∑ tij x′j = max ∑ tij x j − x′j ≤
1≤i ≤n
n
1≤i≤ n
j =1
n
≤ max ∑ tij x j − x′j ≤ max ∑ tij max x j − x′j = ρ1 ( x, x′ ) max
1≤i≤n
1≤i≤n
j =1
1≤ j ≤n
j =1
1≤i≤n
n
∑ tij .
j =1
Если элементы матрицы T удовлетворяют условию
n
∑
α1 = max
1≤i≤n
tij <1,
j =1
то
ρ1 ( Φx, Φx′ ) ≤ α1ρ ( x, x′ ) , ( 0 < α1 < 1) и оператор Φx = Tx + s
задает сжимающее отображение полного в смысле метрики (32.3) nмерного векторного пространства в себя. Тогда из принципа сжимающих
отображений сразу же следует существование и единственность решения
(
)
x∗ = x1* , x2* ,..., xn* системы (32.1), а также сходимость к x ∗ последовательности, построенной по формулам (32.2).
2°. Определим теперь расстояние между векторами
х = ( x1, x2 ,..., xn ) и x′ = ( x1′ , x2′ ,..., x′n ) формулой:
n
ρ 2 ( x, x′ ) = ∑ xi − xi′
(32.4)
i =1
и рассмотрим ρ 2 ( Φx, Φx′ ) :
n
ρ 2 ( Φx, Φx′ ) = ∑
i =1
n
n
n
j =1
j =1
i =1
∑ tij x j − ∑ tij x′j = ∑
n
∑ tij ( x j − x′j ) ≤
j =1
87
≤
n
n
i =1
j =1
∑ ∑ tij
x j − x′j =
n
∑
j =1
 n

 ∑ tij  x j − x′j ≤
 i =1 
 n

 n
 n
≤ max  ∑ tij  ∑ x j − x′j = ρ 2 ( x, x′ ) max  ∑ tij  .
1≤ j ≤n
1≤ j ≤n
 i =1

 i =1  j =1
Если элементы матрицы Т удовлетворяют условию
α 2 = max
1≤ j ≤n
n
∑
tij <1,
i =1
то отображение n-мерного векторного пространства в себя, определяемое
оператором Φx = Tx + s , является сжимающим в смысле метрики (32.4).
Так как n – мерное векторное пространство с метрикой (32.4) – полное
метрическое пространство, то в силу принципа сжимающих отображений
отображение Ф имеет единственную неподвижную точку.
Следовательно, система (32.1) имеет единственное решение, которое
может быть получено как предел последовательности, построенной по
формулам (32.2).
3°. Пусть теперь расстояние между векторами x = ( x1, x2 ,..., xn ) и
x′ = ( x1′ , x2′ ,..., x′n ) определяется формулой:
12
 n
2
ρ3 ( x, x′ ) =  ∑ ( xi − xi′ )  .
(32.5)
 i =1

Множество всех n- мерных векторов с метрикой (32.5) образует полное метрическое пространство E n . Рассмотрим ρ3 ( Φx, Φx′ )
12
2
 n  n
 n  n
n
 
ρ3 ( Φx, Φx′ ) =  ∑  ∑ tij x j + s j − ∑ tij x j − s j   =  ∑  ∑ tij x j − x′j
 
 i =1  j =1
 i =1  j =1
j =1
 
 
 
В силу неравенства Коши
(
 n  n
 ∑  ∑ tij x j − x′j
 i =1  j =1
 
(
12
)



2 1 2



 n n 2 n
≤  ∑∑ tij ⋅∑ x j − x′j
 i =1 j =1 j =1

(
12
)
12
2


=
12
2
 n n   n
 n n 
=  ∑∑ tij2   ∑ x j − x′j  = ρ3 ( x, x′ )  ∑∑ tij2  .
 i =1 j =1   j =1

 i =1 j =1 

 



Если элементы матрицы Т удовлетворяют условию
(
)

) 
2 1 2


 
.
88
α3 =
n
n
∑∑ tij2
< 1,
i =1 j =1
то ρ3 ( Φx, Φx′ ) ≤ α 3 ρ3 ( x,x′ ) ( 0 < α 3 < 1) и оператор Φx = Tx + s задает сжимающее отображение пространства E n в себя. Из принципа сжимающих
отображений вновь следует существование единственного решения системы (32.1) и сходимость к этому решению любой последовательности, построенной по формулам (32.2) (начиная с произвольного вектора x( ) ).
Таким образом, мы получили три легко проверяемых достаточных
признака сходимости метода последовательных приближений для решения
системы (32.1). По существу мы доказали следующую теорему.
Теорема 32.1. Если матрица Т удовлетворяет одному из условий:
0
n
α1 = max ∑ tij < 1,
1≤i≤ n
(32.6)
j =1
n
α 2 = max ∑ tij < 1,
1≤ j ≤n
α3 =
n
(32.7)
i =1
n
∑∑ tij2
< 1,
(32.8)
i =1 j =1
то
система
уравнений
x = Tx + s
имеет
единственное
решение
x∗ = ( x1* , x2* ,..., xn* ) , которое может быть получено как предел последовательности, построенной по формулам x
ная с произвольного x
(0)
(
( )
( )
(k )
( )
= Tx
( k −1)
+ s , k = 1, 2 …, начи-
)
= x1 0 , x20 , ..., xn0 .
Замечание. Из принципа сжимающих отображений получаются следующие оценки скорости сходимости метода последовательных приближений для решения системы x = Tx + s :
если элементы матрицы Т удовлетворяют условию (32.6), то имеет место
оценка
(
)
(
)
α1k
k)
(
≤
ρ1 x*, x
ρ1 x(1) , x( 0) ;
1 − α1
если выполняется условие (32.7), то
89
ρ2
(
)
α 2k
k)
(
x*, x
≤
1 − α2
(
)
(
)
ρ 2 x(1) , x( 0) ;
если имеет место неравенство (32.8), то
ρ3
(
)
α 3k
k)
(
ρ3 x(1) , x( 0) .
x*, x
≤
1 − α3
Для решения методом последовательных приближений системы линейных алгебраических уравнений общего вида:
A x = b,
(32.9)
где
 a11 a12 ⋯ a1n 


a21 a22 ⋯ a2 n 

A=
 ............................ 


⋯
a
a
a
n
1
n
2
nn


 x1 
 b1 
 
 
x2 
b

, x=
, b=  2  ,
⋮ 
⋮ 
 
 
 xn 
 bn 
систему (32.9) обычно тем или иным способом сводят к системе вида
x = Tx + s . В простейшем случае T = E − τ A , где Е – единичная матрица, а
τ – параметр, который выбирают так, чтобы матрица T = E − τ A удовлетворяла одному из условий (32.6)–(32.8). В этом случае последовательные
приближения строятся по формуле:
x k = x k −1 − τ ( Ax k −1 − b ) .
В прикладных задачах часто встречаются такие системы вида (32.9),
у которых диагональные элементы матрицы А значительно преобладают
над остальными элементами матрицы. В этом случае систему A x = b можно преобразовать к виду (32.1), например, следующим образом. Каждое из
уравнений системы ai1x1 + ai 2 x2 + ... + ain xn = bi ( i = 1, 2,..., n ) поделим на aii
( )
(
)
(
)
(предполагая, что все диагональные элементы матрицы А отличны от нуля)
и перенесем члены с x1, x2 ,..., xi −1, xi +1,..., xn в правую часть равенства. Тогда i-ое уравнение примет вид:
xi =
a
a
bi ai1
a
a
−
x1 − i 2 x2 − ... − i ,i −1 xi −1 − i ,i +1 xi +1 − ... − in xn ,
aii aii
aii
aii
aii
aii
( i = 1, 2,..., n ) ,
а система Ax = b преобразуется к виду x = Tx + s, где
90
a
a
a 

− 12
− 13
... − 1n 
 0
a11
a11
a11
 b1 


a 
a23
a2 n 
 a21
 11 
0
... −
−
− a

a22
a22
 b2 
 22

T =  a31
a32
a3n  , s =  a22  .
0
... −
−
−a
a
a33 
⋯
33
33



 ...

...
...
bn 



a 
...
0 
an3
 nn 
 − an1 − an 2
−
 a

ann
ann
 nn

На самом деле для применения метода последовательных приближений нет необходимости преобразовывать систему (32.9) в систему (32.1).
Так, в рассматриваемом случае последовательные приближения можно
вычислять по формулам:


n


1
k
k −1
xi( ) =  bi − ∑ aij x(j )  , i = 1,2,..., n, k = 1, 2,... .
(32.10)
aii 
j =1


j ≠i


Такой метод решения системы (32.10) обычно называют методом
простой итерации. Из теоремы 32.1 можно получить ряд достаточных
признаков сходимости метода простой итерации для решения системы
A x = b.
Теорема 32.2. Если элементы матрицы А удовлетворяют одному из
условий
n
aij
∑
j =1
< aii , i = 1,2,..., n,
(32.11)
j ≠i
n
max
aij
∑a
1≤ j ≤n i =1
i≠ j
n
∑
i =1
1
aii2
< 1,
(32.12)
ii
n
aij2 < 1,
∑
j =1
j ≠i
(32.13)
91
то
система
уравнений
(
Ax = b
имеет
единственное
решение
)
x∗ = x1* , x2* ,..., xn* , которое может быть найдено как предел последовательности, построенной по формулам (32.10), начиная с произвольного
)
(
0
0
0
0
x( ) = x1( ) , x2( ) , ..., xn( ) .
Теорема 32.2 непосредственно следует из теоремы 32.1. При этом
имеют место следующие оценки скорости сходимости:
если выполняется условие (32.11), то
(
)
(
)
λk
1
k)
(
≤
ρ1 x*, x
ρ1 x(1) , x( 0) , где λ = max
1− λ
1≤i≤ n
aii
n
∑ aij ;
j =1
j ≠i
если выполняется условие (32.12), то
(
)
ρ 2 x*, x( k ) ≤
(
)
n a
µk
ρ 2 x(1) , x( 0) , где µ = max ∑ ij ;
1≤i ≤n
1− µ
j =1 aii
i≠ j
если выполняется условие (32.13), то
ρ3
(

γk
k)
(
x*, x
≤
ρ3 x(1) , x( 0 ) , где γ = 
)
(
1− γ
)
n
∑
1
aii2
n
∑
12
2
aij  .
j =1
 i=1

j ≠i


В методе простых итераций до конца выполнения просчета ( n + 1)
шага должны сохраняться значения n -го шага итерации. Этого недостатка
лишен метод Зейделя, который представляет собой видоизменение метода
простой итерации.
Итерационный метод Зейделя записывается следующим образом:
( n+1)
x1
n
n
= ∑ b1 j x(j ) + b1 ,
j =1
( n+1)
xk
k −1
n
∑
n+1
bkj x(j ) +
n+1)
n
n+1
n
+…+ bk k −1xk( −1 ) + bkk xk( ) +... + bkn xn( ) + bk .
=
j =1
∑ bkj x(jn ) + bk .
j =k
Подробнее:
xk(
n+1)
=
bk1x1(
n+1)
+ bk 2 x2(
92
Условие сходимости для метода Зейделя формулируется аналогично
теореме 32.1 для метода простой итерации.
§33. Решение систем нелинейных уравнений
Систему нелинейных уравнений можно кратко записать в векторном
виде
f ( x) = 0
или более подробно в координатном виде
f k ( x1, x2 ,..., xm ) = 0, 1 ≤ k ≤ m . Такие системы решают практически только
итерационными методами. Для такой системы используют метод простой
итерации. Для этого систему приводят к виду (33.1), т.е. к канонической
для итерации форме:
x1 = φ1 ( x1, x2 ,...xm )
x2 = φ2 ( x1, x2 ,...xm )
...........................
.
(33.1)
xm = φm ( x1, x2 ,...xm )
Для ее записи в m-мерном числовом пространстве Rm введем два
вектора: один из них x для изображения совокупности неизвестных
( x1, x2 ,...xm ) , второй φ будет обозначать совокупность значений функций
(φ1,φ2 ,...φm ) . Система запишется в краткой векторной форме
Пусть
как-то
(
выбрано
начальное
приближение
x = φ ( x) .
к
решению
)
x = x1 , x2 ,...xm . Все следующие приближения будут находиться по пра-
( )
вилу итераций x n+1 = φ x n . Для выяснения условий, достаточных для сходимости последовательности приближений x n ( n = 0,1,..., ) применим теорему Банаха о сжимающих отображениях. Для этого нужно в Rm ввести
метрику.
Случай кубической метрики
ρ ( x, y ) = max xi − yi .
i
(
)
В шаре ρ x, x ≤ δ возьмем две произвольные точки x ( x1, x2 ,...xm ) и
y ( y1, y2 ,... ym ) , оценим изменение функции φi :
93
φi ( x ) − φi ( y ) = φi ( x1,..., xm ) − φi ( y1,..., ym ) =
 ∂φi
∑  ∂x
j
j =1 
m
∗
 m ∂φ

∑ i
x
−
y
≤
 ( i
i)
 j =1 ∂x j


∗

 m ∂φ
 max x j − y j =  ∑ i
 j
 j =1 ∂x j


∗

 ρ ( x, y ) .


Звездочкой у скобок отмечено то, что значение функции, стоящей в
скобках, должно быть взято в некоторой точке отрезка прямой, соединяющего x и y . Чтобы найти оценку изменения, не зависящую от i и положения точек x и y, заменим последнюю из скобок ее максимальным значением по x и i. Тогда получим
∂φ
φ ( x ) − φ ( y ) ≤ max φi ( x ) − φi ( y ) = ρ φ ( x ) , φ ( y )  ≤ max max ∑ i ρ ( x, y ) .
i
i
x
j =1 ∂x j
m
Отсюда видно, что в качестве числа q может быть взята величина
m
q = max max ∑
i
x
j =1
∂φi
.
∂x j
Все это позволяет сформировать теорему о сходимости итерационной последовательности в случае кубической метрики.
1)
Теорема 33.1. Пусть
функции φi ( x1,...xm ) определены и непрерывно дифференцируемы в
(
)
области xi − xi ≤ δ , i = 1, m ,
m
2)
в этой области max ∑
x
3)
j =1
∂φi
≤ q < 1 , i = 1, m ,
∂x j
(
начальные приближения неизвестных удовлетворяют неравенств
(
)
xi − φi x1 , x2 ,...xm ≤ M ,
4)
)
( i = 1, m ) ,
для чисел δ , q и M выполняется условие
M
≤δ .
1− q
Тогда:
94
1)
(
)
система (33.1) в области xi − xi ≤ δ имеет решение x1∗ , x2∗ ,...xm∗ и
к нему сходится итерационная последовательность приближений
(x
n
n
n
1 , x2 ,...xm
2)
);
скорость сходимости может быть охарактеризована неравенствами
M
xi n − xi∗ ≤
q n , i = 1, m .
1− q
(
)
Случай октаэдрической метрики
m
ρ ( x, y ) = ∑ xi − yi .
i =1
Аналогично теореме 33.1 в R
быть доказана следующая теорема.
Теорема 33.2. Пусть
m
для октаэдрической метрики может
1) функции φi ( xi ,..., xm ) , ( i = 1, m ) определены и непрерывны в области
m
∑ x j − x j ≤ δ ,
j =1
1) удовлетворяют в этой области условию
m
∑ max
j
max
i =1
x
∂φi
≤ q < 1,
∂x j
2) для начальных приближений неизвестных x1 ,..., xm выполняется нераm
венство
∑ xi − φi ( x1 ,..., xm ) ≤ M ,
i =1
3) для чисел δ , q, M соблюдается условие
M
≤δ .
1− q
Тогда:
m
1)
система
(33.1)
в
области
∑ xi − xi ≤ δ
имеет
решение
j =1
(x
∗
∗
∗
1 , x2 ,..., xm
),
и к нему сходится итерационная последовательность
приближений ( x1n , x2n ,..., xm n ) ,
95
2)
скорость сходимости характеризуется неравенством:
m
M
∑ xi∗ − xi n ≤ 1 − q q n .
i =1
Случай сферической метрики
1
2
 m
2
ρ ( x, y ) =  ∑ xi − xi  .
 i=1

Аналогично теоремам 33.1 и 33.2 может быть доказана следующая
теорема о сходимости итерационного прогресса.
Теорема 33.3. Пусть
1)
(
)
функции φi ( x1,..., xm ) , i = 1, m , определены и непрерывны в области
m
∑
2
xi − xi ≤ δ 2 ,
i =1
2)
удовлетворяют в этой области условию
m
m
i =1
j =1
∑ max
∑
x
3)
≤ q < 1,
(
)
для начальных приближений x1 ,..., xm верно неравенство
m
∑
(
xi − φi x1 ,..., xm
i =1
4)
∂φi
∂x j
2
)
2
≤ M 2,
x
для чисел δ , q и M соблюдается условие
M
≤δ .
1− q
Тогда:
m
1)
система
(33.1)
в
области
∑ x1 − xi ≤ δ 2
имеет
решение
i =1
(x
) , и к нему сходится итерационная последовательность
приближений ( x , x ,..., x ) ,
∗
∗
∗
1 , x2 ,..., xm
n
1
2)
n
2
n
m
cкорость сходимости можно характеризовать неравенством:
96
1
2
 m ∗
M n
n 2
−
x
x
q .
∑ i
 ≤
i
−
1
q
 i =1

Сходимость метода линейная. Сами вычисления в методе итерации
просты. Но зато сложно найти такую систему x = φ ( x ) , которая была бы
эквивалентна исходной системе f ( x ) = 0 и одновременно обеспечивала бы
сходимость.
§34. Метод Ньютона для нелинейных систем уравнений
Пусть требуется решить систему нелинейных уравнений
f1 ( x1, x2 ,..., xm ) = 0
............................
(34.1)
f m ( x1, x2 ,..., xm ) = 0.
Рассмотрим n-мерное векторное пространство Rm , x = ( x1, x2 ,..., xm ) .
(
)
Введем вектор – функцию f ( x ) = f1 ( x ) , f 2 ( x ) ,.., f m( x ) , тогда система (34.1) запишется в виде
f ( x) = 0 .
Пусть
(
(34.2)
известно
некоторое
)
исходное
(
приближение
)
x = x1 , x2 ,..., xm к решению системы x∗ = x1∗ , x2∗ ,..., xm∗ . Для выделения главной линейной части из системы (34.2) удобно рассмотреть не точ-
(
)
ное решение x∗ , а вектор погрешность x∗ − x = x1∗ − x1 ,..., xm∗ − xm =
( )
= ε = ( ε1,..., ε m ) . Уравнение для ε получится, если в равенстве f x∗ = 0
(
)
заменить x∗ на x + ε , т.е. f x + ε = 0. Предполагая все составляющие
вектора ε малыми величинами, выделим в системе (34.1) главную линей-
(
)
ную часть. Для этого рассмотрим уравнение любого номера fi x + ε = 0
и разложим fi в ряд Тейлора по степеням погрешности ε1, ε 2 ,..., ε m и сохраним в разложении линейную часть, отбросив все члены более высокого
порядка. После этого получится линейная система уравнений относительно погрешностей, приближенно заменяющая систему (34.1).
97
(
)
( )
m
∑ε j
j =1
( ) ≈−f
∂fi x
∂f i x
j =1
∂x j
∂x j
( x ),
i
( )ε j,
m
0 = fi x + ε ≈ fi x + ∑
i = 1, m .
Решая ее относительно ε i , например, методом Гаусса, мы получим
приближенные значения для ε i , например, ε i , i = 1, m. Мы улучшим исходные значения неизвестных xi , если к ним прибавим ε i , т.е.
x11 = x1 + ε1 ,
x21 = x2 + ε 2 ,..., xm1 = xm + ε m . Новые значения xi1 анало-
гичными вычислениями могут быть тоже улучшены и т.д. В результате для
каждого значения xi∗ получится последовательность приближений xi n такая, что каждое следующее приближение xi n+1 будет находиться из линейной системы по предыдущему приближению xi n :
∂
m
∑ ( x j n+1 − x j n ) ∂x
j =1
( )
( )
fi x n = − fi x n , i = 1, m , n = 0,1,.. .
j
(34.4)
Рассмотрим матрицу Якоби системы функций fi , i = 1, m
 ∂f1
 ∂x
 1
 ∂f 2
 ∂x
 1
 ...

 ∂f m
 ∂x1
∂f1
∂x2
∂f 2
∂x2
...
∂f m
∂x2
∂f1 
∂xm 

∂f 2 
...
∂xm  = f ′ ( x ) .

... ... 

∂f m 
...
∂xm 
...
Значение ее при x = x n есть матрица системы (34.4). Система будет
иметь единственное решение, если ее определитель отличен от нуля
( )
D  f ′ xn  ≠ 0 .


Итак, метод Ньютона сходится, если в достаточно малой окрестности
 ∂f 
корня D   ≠ 0, причем сходимость квадратичная. Вычисления по мето ∂x 
98
ду Ньютона несколько сложнее, чем при простых итерациях, ибо на каждом шаге надо находить матрицу производных и решать систему линейных
уравнений. Поэтому в некоторых учебниках рекомендуют вычислить матрицу производных только на начальной итерации и использовать ее во
всех остальных итерациях.
99
§35. Интерполирование функций
Пусть функция f ( x) задана таблицей значений для конечного множества x :
x
x0
x1
x2
f ( x)
f ( x0 )
f ( x1 )
f ( x2 )
Таблица 11
…
xn
…
f ( xn )
Такая таблица может быть получена в результате наблюдений за ходом некоторого процесса. Если необходимо найти значение f ( x) для промежуточного значения аргумента, то строят функцию φ ( x) , достаточно
простую для вычислений, которая в заданных точках x0 , x1,...xn принимает
значения f ( x0 ) , f ( x1 ) ,…, f ( xn ) , а в остальных точках отрезка [ a, b ] , принадлежащего области определения
f ( x) , приближенно представляет
функцию f ( x) с той или иной степенью точности и при решении задачи
вместо функции f ( x) используется φ ( x) . Задача построения функции φ ( x)
называется задачей интерполирования. Чаще всего интерполяционную
функцию представляют в виде алгебраического многочлена некоторой
степени.
К интерполированию прибегают и в том случае, когда для функции
f ( x) известна аналитическое выражение, с помощью которого можно вычислить ее значение для любого значения x из отрезка, в котором она определена, но вычисление каждого значения сопряжено с большим объемом
вычислений. Если надо найти значение функции для большого количества
значений аргумента, то прибегают к интерполированию, т.е. вычисляют
несколько значений f ( xi ) , i = 0, 1, 2, ..., n и по ним строят простую интерполирующую функцию φ ( x) , посредством которой и вычисляют приближенные значения f ( x) в других точках.
В качестве функции φ ( x) будем брать в дальнейшем алгебраический
многочлен степени n, интерполяция в этом случае называется алгебраической. Алгебраическая интерполяция функции y = f ( x) на отрезке [ a, b ] состоит в приближенной замене этой функции на данном отрезке многочле-
100
ном Pn ( x) степени n, т.е. f ( x) ≈ Pn ( x) , причем Pn ( x) принимает в точках
x0 , x1, ..., xn те же значения, что и f(x), т.е. f ( xi ) = Pn ( xi ) , i = 0, 1, 2, ..., n .
Отметим, что двух различных интерполяционных многочленов одной и той же степени n существовать не может для данной функции f ( x) .
§36. Интерполяционный многочлен Лагранжа
Поставим следующую задачу: построить многочлен Pn ( x) степени n,
который в n + 1 данных точках x0 , x1,..., xn (узлах интерполирования) принимает значения y0 , y1,..., yn .
Для решения задачи определим так называемые фундаментальные
многочлены Qnk ( x) , т.е. многочлены n-ой степени относительно x, удовлетворяющие следующим условиям:
0 при i ≠ k
Qnk ( x) = 
.
(36.1)
1 при i = k
Искомый многочлен запишется в виде суммы при помощи фундаментальных многочленов
Pn ( x) = y0Qn0 ( x) + y1Qn1 ( x) + ... + ynQnn ( x) .
(36.2)
Поскольку x0 , x1, ..., xk −1, xk +1, ..., xn – нули многочлена Qnk ( x) , то
Qnk ( x) = c( x − x0 )( x − x1 )...( x − xk −1 )( x − xk +1 )...( x − xn ) . Определим c из усло-
вия Qnk ( xk ) = 1 , получим:
Qnk ( x) =
( x − x0 )( x − x1 )...( x − xk −1 )( x − xk +1 )...( x − xn )
.
( xk − x0 )( xk − x1 )...( xk − xk −1 )( xk − xk +1 )...( xk − xn )
(36.3)
Формула (36.2) с учетом (36.3) запишется:
n
Pn ( x) = ∑ yk
k =0
( x − x0 )( x − x1 )...( x − xk −1 )( x − xk +1 )...( x − xn )
.
( xk − x0 )( xk − x1 )...( xk − xk −1 )( xk − xk +1 )...( xk − xn )
(36.4)
Многочлен, определенный формулой (36.4), называется интерполяционным многочленом Лагранжа, а фундаментальные многочлены (36.3)
коэффициентами Лагранжа. Формула
n
f ( x) ≈ Pn ( x) = ∑ yk
k =0
( x − x0 )...( x − xk −1 )( x − xk +1 )...( x − xn )
( xk − x0 )...( xk − xk −1 )( xk − xk +1 )...( xk − xn )
(36.5)
101
называется интерполяционной формулой Лагранжа. Формулы (36.3)–(36.5)
можно записать более компактно, если ввести следующее обозначение:
ω ( x) = ( x − x0 )( x − x1 )...( x − xn ) .
(36.6)
Поскольку
ω '( xk ) = ( xk − x0 )( xk − x1 )...( xk − xk −1 )( xk − xk +1 )...( xk − xn ) ,
то
Qnk ( x)
n
ω ( x)
yk
=
, Pn ( x) = ω ( x) ∑
,
−
ω
( x − xk )ω '( xk )
(
x
x
)
'(
x
)
k
k
k =0
n
yk
.
k =0 ( x − xk )ω '( xk )
f ( x) ≈ ω ( x) ∑
Полином Pn ( x) совпадает с f ( x) в n + 1 точке, а в остальных точках
отрезка [a, b] разность Rn ( x) = f ( x) − Pn ( x) называется остаточным членом
интерполяции. Она ≠ 0 и представляет собой погрешность метода. Справедлива теорема для оценки остаточного члена.
Теорема 36.1. Если функция f ( x) в промежутке [a, b] имеет непрерывные производные до n + 1 -го порядка, то остаточный член интерполяω ( x)
(
)
ции Rn ( x) определяется формулой Rn ( x) = f n + 1 (ξ )
, где ξ – точ( n + 1)!
ка промежутка [a, b] , зависящая от x.
§37. Конечные разности. Разделенные разности
yi = f ( xi ) – значения функции y = f ( x) в точках xi ,
i = 0,1,..., n , тогда разности y1 − y0 , y2 − y1, ..., yn − yn−1 называются конеч-
Пусть
ными разностями 1-го порядка. Обозначим ∆yi = yi +1 − yi . Разность второго
порядка получается по формулам ∆ 2 y0 = ∆y1 − ∆y0 ,
∆ 2 y1 = ∆y2 − ∆y1,... .
Аналогично определяются последующие разности
∆ n+1 y0 = ∆ n y1 − ∆ n y0 , ∆ n+1 y1 = ∆ n y2 − ∆ n y1,...
Для работы с конечными разностями удобно использовать таблицу
Таблица 12
y
∆y
x
∆2 y
∆3 y
∆4 y
102
x0
y0
∆y0
x1
∆ 2 y0
y1
∆y1
x2
∆ 3 y0
∆ 2 y1
y2
∆y2
x3
y3
∆ 4 y0
∆3 y1
∆ 2 y2
.
.
∆y3
x4
y4
.
.
.
.
…
…
…
…
…
…
Свойства конечных разностей
1.
Конечные разности суммы (разности) функций равны сумме (разности) конечных разностей этих функций.
При умножении функции на постоянный множитель конечные разности умножаются на этот множитель.
Конечные разности n -го порядка от многочленов степени n постоянны, а конечные разности n + 1 порядка равны нулю.
Разделенные разности первого порядка определяются формулами:
y −y
y −y
y − yn−1
f ( x1, x0 ) = 1 0 , f ( x2 , x1 ) = 2 1 , …, f ( xn , xn−1 ) = n
.
x1 − x0
x2 − x1
xn − xn−1
Разделенные разности второго порядка получаются из разделенных
разностей первого порядка по формулам:
f ( x2 , x1 ) − f ( x1, x0 )
f ( x3 , x2 ) − f ( x2 , x1 )
f ( x2 , x1, x0 ) =
, f ( x3 , x2 , x1 ) =
.
x2 − x0
x3 − x1
Разделенные разности n -го порядка получаются из разделенных разностей n − 1 -го порядка по формулам:
f ( xn , xn−1,..., x1 ) − f ( xn−1, xn−2 ,..., x0 )
f ( xn , xn−1,..., x0 ) =
.
xn − x0
Разделенные разности в случае равностоящих узлов с шагом h,
( xk = x0 + kh, k = 0, 1, ..., n ) выражаются следующим образом:
103
∆y0
∆y
∆y
, f ( x2 , x1 ) = 1 ,…, f ( xn , xn−1 ) = n−1 ,…
h
h
h
∆y1 ∆y0
−
f ( x2 , x1 ) − f ( x1, x0 )
∆y1 − ∆y0 ∆ 2 y0
h
h
,
f ( x2 , x1, x0 ) =
=
=
=
x2 − x0
2h
2h 2
2!h 2
f ( x1, x0 ) =
∆ 2 y1
∆ n y0
f ( x3 , x2 , x1 ) =
,..., f ( xn , xn−1,..., x0 ) =
.
2!h 2
n!h n
Тем самым установлена связь между конечными и разделенными
разностями.
104
§38. Интерполяционный многочлен Ньютона
Интерполяционный многочлен Лагранжа, который можно построить
при любом расположении узлов интерполяции, имеет один единственный
недостаток. Если понадобится увеличить число знаков (следовательно, и
степень многочлена) прибавлением нового узла, многочлен Лагранжа придется вычислять заново, т.к. каждый член зависит от узлов интерполирования. Указанным недостатком не обладает интерполяционный многочлен
Ньютона.
Пусть дана функция y = f ( x) , yk = f ( xk ) – значения ее в точках
xk , k = 0, 1, ..., n . Из первой разделенной разности f ( x, x0 ) =
f ( x ) − y0
x − x0
получим f ( x) = y0 + ( x − x0 ) f ( x, x0 ) .
Поскольку f ( x, x0 , x1 ) =
f ( x, x0 ) − f ( x0 , x1 )
,
x − x1
то
f ( x, x0 ) = f ( x0 , x1 ) + ( x − x1 ) f ( x, x0 , x1 ) ,
следовательно,
f ( x) = y0 + ( x − x0 ) f ( x, x0 ) = y0 + ( x − x0 ) f ( x0 , x1 ) + ( x − x0 )( x − x1 ) f ( x, x0 , x1 ).
Продолжая процесс, получим:
f ( x) = y0 + ( x − x0 ) f ( x0 , x1 ) + ( x − x0 )( x − x1 ) f ( x0 , x1, x2 ) + ... +
+( x − x0 )( x − x1 )...( x − xn−1 ) f ( x0 , x1,..., xn ) +
+( x − x0 )( x − x1 )...( x − xn ) f ( x, x0 , x1,..., xn )
(38.1)
или
f ( x) = Pn ( x) + ( x − x0 )( x − x1 )...( x − xn ) f ( x, x0 , x1,..., xn ) ,
где
Pn ( x) = y0 + ( x − x0 ) f ( x0 , x1 ) + ... +
+( x − x0 )( x − x1 )...( x − xn−1 ) f ( x0 , x1,..., xn ).
(38.2)
Полагая в (38.1) x = xk , получим yk = f ( xk ) = Pn ( xk ) , k = 0, 1, ..., n ,
следовательно, многочлен (38.2) – интерполяционный многочлен для
функции y = f ( x) , построенный по n + 1 узлам x0 , x1,..., xn .
Многочлен (38.2) называется интерполяционным многочленом Ньютона. Подставляя его в общую интерполяционную формулу, получим:
105
f ( x) ≈ y0 + ( x − x0 ) f ( x0 , x1 ) + ( x − x0 )( x − x1 ) f ( x0 , x1, x2 ) + ... +
+( x − x0 )( x − x1 )...( x − xn−1 ) f ( x0 , x1,..., xn ).
В
случае
равностоящих
узлов
(38.3)
интерполяции
x1 = x0 + h ,
x2 = x0 + 2h ,.., xn = x0 + nh из интерполяционной формулы Ньютона с уче∆ k y0
, k = 0, 1, ..., n , получается интерпотом равенств f ( xk , xk −1,..., x0 ) =
k!
ляционная формула Ньютона «интерполирование вперед»
∆y0
∆ 2 y0
( x − x0 ) +
( x − x0 )( x − x1 ) +
f ( x) ≈ y0 +
h
2!h 2
∆ 3 y0
∆ n y0
( x − x0 )( x − x1 )( x − x2 ) + ... +
( x − x0 )( x − x1 )...( x − xn−1 ).
(38.4)
+
3!h3
n !h n
«Интерполирование вперед» объясняется тем, что формула содержит
заданные значения функции, соответствующие узлам интерполяции, находящимся только вправо от x0 . Формула (38.4) удобна при интер-
полировании функций для значений x , близких к наименьшему узлу x0 .
Положим x = x0 + ht .
Тогда
x − x0
( x − x0 )( x − x1 )
=t,
= t (t − 1) ,
h
h2
( x − x0 )( x − x1 )...( x − xn−1 )
= t (t − 1)...(t − n + 1) ,
hn
и формула (38.4) примет вид:
t (t − 1) 2
∆ y0 +
f ( x) = f ( x0 + th) ≈ y0 + t ∆y0 +
2!
t (t − 1)(t − 2) 3
t (t − 1)...(t − n + 1) n
+
∆ y0 + ... +
∆ y0 .
3!
n!
Остаточный член для полинома (38.5) имеет вид:
(38.5)
h n+1 f ( n+1) (ξ )
Rn ( x) =
t (t − 1)...(t − n) , где ξ ∈ [a, b] .
(n + 1)!
Абсолютная погрешность метода по формуле Ньютона «интерполирование вперед» определяется неравенством:
106
M n+1h n+1 | t (t − 1)...(t − n) |
| Rn ( x) |≤
, где M n+1 = max | f ( n+1) ( x) | .
a ≤ x ≤b
(n + 1)!
Интерполяционную формулу Ньютона (38.3) можно записать так:
f ( x) ≈ yn + ( x − xn ) f ( xn , xn−1 ) + ( x − xn )( x − xn−1 ) f ( xn , xn−1, xn−2 ) + ...
+( x − xn )( x − xn−1 )...( x − x1 ) f ( xn , xn−1,..., x0 ) .
В случае равностоящих узлов из нее аналогично формуле Ньютона
«интерполирование вперед» можно получить формулу Ньютона «интерполирование назад»
t (t + 1) 2
t (t + 1)(t + 2) 3
f ( x) ≈ yn + t ∆yn−1 +
∆ yn − 2 +
∆ yn−2 + ... +
2!
3!
t (t + 1)...(t + n − 1) n
x − xn
+
∆ y0 , t =
.
n!
h
Формулу «интерполирование назад» используют при интерполировании функций в точках x, близких к наибольшему узлу xn.
Абсолютная погрешность метода «интерполирование назад» определяется формулой:
M n+1h n+1 | t (t + 1)...(t + n) |
| Rn ( x) |≤
, где M n+1 = max | f ( n+1) ( x) | .
a ≤ x ≤b
(n + 1)!
§39. Интерполирование внутри таблицы.
Интерполяционная формула Стирлинга
Предположим, что точка x лежит вблизи внутреннего узла xk таблицы с любой стороны от него. Тогда табличные узлы можно привлекать для
интерполирования в порядке удаленности от xk, т.е. взять сначала узлы xk и
присоединить к нему пары узлов ( xk + h, xk − h) , ( xk + 2h, xk − 2h) , …,
( xk + nh, xk − nh) . При таком порядке узлов интерполирования формула
Ньютона будет иметь вид:
f ( x ) = y ( x ) = f ( xk ) + ( x − xk ) f ( xk , xk + h ) +
+ ( x − xk )( x − xk − h ) f ( xk , xk + h, xk − h ) +
+ ( x − xk )( x − xk − h )( x − xk + h ) f ( xk , xk + h, xk − h, xk + 2h ) + ... +
+ ( x − xk )( x − xk − h ) ...( x − xk − nh ) f ( xk , xk + h, xk − h,..., xk − nh ) + R2 n ( x ) ,
где
107
R2 n ( x ) =
( x − xk )( x − xk − h )...( x − xk + nh ) f ( 2n+1) ξ ,
( )
( 2n + 1)!
где ξ есть точка отрезка содержащего xk + nh, xk − nh и x .
Заменим разностные отношения их выражениями через конечные
разности
∆y
f ( xk ) = yk , f ( xk , xk + h) = k ,
1!h
∆ 2 yk −1
,...
f ( xk , xk + h, xk − h) = f ( xk − h, xk , xk + h) =
2!h 2
x − xk
и введем переменную t =
, тогда получим:
h
t
t (t − 1) 2
t (t − 1)(t − 2) 3
y ( xk + th) = yk + ∆yk +
∆ yk −1 +
∆ yk −1 + ...
1!
2!
3!
1
1
+
×
(t − n + 1)...t (t + 1)...(t + n − 1)∆ 2 n−1 yk −n+1 +
(2n − 1)!
(2n)!
×(t + n − 1)...t...(t − n)∆ 2n yk −n+1 + R2 n ( x) .
Для придания правой части симметричного вида перепишем равенство в форме
2
1

 t
y ( xk + th) = yk + t  ∆yk − ∆ 2 yk −1  + ∆ 2 yk −1 +
2

 2!
t (t 2 − 12 )  3
1 4

+
∆
−
∆
y
y
1
2
k
−
k
−
 + ... +
3! 
2
t (t 2 − 12 )...(t 2 − (n − 1)2 )  2 n−1
1

yk −n+1 − ∆ 2 n yk −n  +
+
∆

(2n − 1)!
2


t 2 (t 2 − 1)...(t 2 − (n − 1) 2 ) 2n
+
∆ yn−k + R2 n ( x).
(2n)!
Если из квадратных скобок исключить конечные разности четного
порядка, пользуясь равенствами
∆ 2 yk −1 = ∆yk − ∆yk −1 , ∆ 4 yk −2 = ∆ 3 yk −1 − ∆3 yk −2 ,... ,
то получим интерполяционную формулу Ньютона-Стирлинга:
t ∆yk −1 + ∆yk t 2 2
t (t 2 − 12 ) ∆3 yk −2 + ∆3 yk −1
+ ∆ yk −1 +
+
y ( xk + th) = yk +
1!
2!
2!
3!
2
108
t 2 (t 2 − 12 ) 4
t (t 2 − 12 )...(t 2 − (n − 1)2 ) ∆ 2 n−1 yk −n + ∆ 2n−1 yk −n+1
+
∆ yk −2 + ... +
+
4!
(2n − 1)!
2
t 2 (t 2 − 12 )...(t 2 − (n − 1)2 ) 2 n
+
∆ yk −n + R2n ( x) ,
(2n)!
R2 n ( x) = h
2 n+1 t
2
(t 2 − 12 )...(t 2 − n 2 ) (2 n+1)
y
(ξ ) .
(2n + 1)!
Здесь ξ – есть точка отрезка, содержащего xn − kh + h , xn + kh, x .
109
§40. Численное дифференцирование
(применение интерполирования к вычислению производных)
Численное дифференцирование применяется, если:
1) функция задана таблично,
2) функция задана неудобным для дифференцирования аналитическим
выражением.
Задача численного дифференцирования некорректна, т.к. нарушается
условие 3 корректности (решение непрерывно зависит от входных данных). При численном дифференцировании функцию f ( x) заменяют интерполяционным
многочленом
Pn ( x)
и
приближенно
полагают
f '( x) = P 'n ( x) . Близость значений функции f ( x) и полинома Pn ( x) не гарантирует близости их угловых коэффициентов φ2 и φ1 (см. рисунок 7).
y
ƒ(x)
Pn(x)
φ1
φ2
0
x
Рисунок 7
Пусть на отрезке [a, b] рассматривается функция f ( x) , имеющая непрерывную производную порядка n + 1 . Возьмем на [a, b] n + 1 различных
узлов x0 , x1,..., xn . Для упрощения записи предположим, что они перенумерованы слева направо так, что x0 < x1 < ... < xn . Интерполируем f ( x) по ее
значениям f ( x0 ), f ( x1 ),..., f ( xn ) в узлах x0 , x1,..., xn посредством многочлена Pn ( x) степени n и обозначим Rn ( x) – погрешность интерполирования:
f ( x) = Pn ( x) + Rn ( x) , причем Pn ( xi ) = f ( xi ), i = 0, n .
Вычислим производную от f порядка m :
f m ( x) = Pnm ( x) + Rnm ( x) .
(40.1)
110
Пренебрегая величиной Rnm ( x) , получим формулу для приближенного вычисления производной:
f m ( x) ≈ Pn( m ) ( x) .
(40.2)
Ее погрешность равна Rnm ( x) . Пользоваться ею целесообразно при
небольших порядках m производной, во всяком случае, когда m ≤ n , так
как все производные от Pn ( x) выше n тождественно равны 0.
Будем считать, что в точке x ω ( m ) ( x) ≠ 0 и на отрезке [α , β ] производная φ ( m ) (t ) = Rn( m) (t ) −
K
ω ( m ) ( t ) имеет n + 2 − m нулей (отрезок [α , β ] –
(n + 1)!
наименьший отрезок, содержащий точки x0 , xn , x ). K выбирается из услоm
вия, чтобы точка x была нулем функции φ ( m ) (t ) т.е. φ ( ) ( x) = 0 . Тогда для
( )
погрешности Rnm ( x) вычислительной формулы (6.2) верно представление:
ω ( m) ( x) ( n+1)
m)
(
R
f
( x) =
(ξ ), ξ ∈ [α , β ] , где ω ( x) = ( x − x
n
(n + 1)!
0 )( x − x1 )...( x − xn ) .
§41. Некоторые частные формулы
вычисления производных
Каждая из формул интерполяционного многочлена (Лагранжа, Ньютона) может служить источником для получения формул вычисления производных. Таких формул можно получить большое число, но для выяснения идеи их построения достаточно ограничиться несколькими примерами.
Возьмем формулу Ньютона:
Pn ( x) = f ( x0 ) + ( x − x0 ) f ( x0 , x1 ) +
+( x − x0 )( x − x1 ) f ( x0 , x1, x2 ) + ... +
+( x − x0 )( x − x1 )...( x − xn−1 ) f ( x0 , x1,..., xn ).
(41.1)
Введем сокращенное обозначение x − xk = α k , тогда (41.1) запишется
в виде:
Pn ( x) = f ( x0 ) + α 0 f ( x0 , x1 ) + α 0α1 f ( x0 , x1, x2 ) + ... + α 0α1...α n−1 f ( x0 , x1,..., xn ).
Последовательное дифференцирование этого равенства дает следующие выражения производных от f :
111
f '( x) ≈ P 'n ( x) = f ( x0 , x1 ) + (α 0 + α1 ) f ( x0 , x1, x2 ) +
+(α 0α1 + α 0α 2 + α1α 2 ) f ( x0 , x1, x2 , x3 ) + ...
1
1
f ''( x) ≈ P ''n ( x) = f ( x0 , x1, x2 ) + (α 0 + α1 + α 2 ) f ( x0 , x1, x2 , x3 ) + ...
2!
2!
1
1
f '''( x) ≈ P '''n ( x) = f ( x0 , x1, x2 , x3 ) + (α 0 + α1 + α 2 + α 3 ) f ( x0 , x1, x2 , x3 , x4 ) + ...
3!
3!
1 IV
1
f ( x) ≈ P IV n ( x) = f ( x0 , x1, x2 , x3 , x4 ) + (α 0 + α1 + α 2 + α 3 + α 4 ) ×
4!
4!
× f ( x0 , x1, x2 , x3 , x4 , x5 ) + ...
Аналогично можно получить формулы для вычисления производных
в случае равностоящих узлов. Возьмем формулу Ньютона для интерполирования вперед (в начале таблицы)
t
t (t − 1) 2
∆ y0 + ... +
y ( x) = Pn ( x) = y ( x0 + th) = y0 + ∆y0 +
1!
2!
t (t − 1)...(t − n + 1) n
+
∆ y0 + Rn ( x)
n!
и вычислим производную по переменной t, то получим
Pn' (t )
′

t
t2 − t 2
t 3 − 3t 2 + 2t 3
t (t − 1)...(t − n + 1) n 
=  y0 + ∆y0 +
∆ y0 +
∆ y0 + ... +
∆ y0  ;
1!
2!
3!
n!


′
dP dP dt
1 '
 x − x0 
=
= P 't 
 = Pt =
dx dt dx
 h x h

1
2t − 1 2
3t 2 − 6t + 2 3
4t 3 − 18t 2 + 22t − 6 4
=  ∆y0 +
∆ y0 +
∆ y0 +
∆ y0 + ...  ,
h
2!
3!
4!

x − x0 dt 1
где t =
; = .
h
dx h
Найдем вторую и третью производные:
d 2P
d  dP  d  dP  dt
''
=
P
=
2

= 
 =
x
dx  dx  dt  dx  dx
dx 2

1 1 2
6t − 6 3
12t 2 − 36t + 22 4
=
∆ y0 +
∆ y0 + ...  =
 ∆ y0 +
h h
3!
4!


1 2
6t 2 − 18t + 11 4
3
= 2  ∆ y0 + (t − 1)∆ y0 +
∆ y0 + ...  ;
12

h 
112
P '''3 =
x
1 3
2t − 3 4

∆ y0 +
∆ y0 + ...  .
3
2

h 
§42. Эмпирические формулы.
Метод наименьших квадратов
Нередко при обработке результатов наблюдений встречаются со следующей задачей: в итоге опыта получен ряд значений x, y, однако характер
функциональной зависимости между ними остается неизвестным. Требуется по полученным данным найти аналитическое выражение зависимости
между x и y. Формулы, полученные в результате такого рода задач, называются эмпирическими.
Использование интерполяционных многочленов для этой цели не
всегда целесообразно, так как совпадение значений полученной функции с
табличными значениями в узлах интерполяции не гарантирует достаточно
малого различия указанных значений в других точках, отличных от узлов.
Задача о построении эмпирической формулы состоит в следующем.
Пусть результаты измерений представлены таблицей:
Таблица 13
…
…
x
x1
x2
xk
xk +1
xn
y
…
…
y1
y2
yk
yk +1
yn
Пусть y = φ ( x; a1, a2 ,..., am ) – искомая эмпирическая формула, где
функция y = φ ( x; a1, a2 ,..., am ) зависит от некоторых параметров. Разности
φ ( xk ; a1, a 2 ,..., am ) − yk = ε k , k = 1, 2, ..., n , где yk – числа из второй строки
таблицы, φ ( xk ; a1, a2 ,..., am ) – значения функции y = φ ( x; a1, a2 ,..., am ) при соответствующих значениях xk из верхней строки таблицы, называются уклонениями или погрешностями. Требуется так подобрать параметры
a1, a2 ,..., am функции y = φ ( x; a1, a2 ,..., am ) , чтобы уклонения ε k оказались
наименьшими (в каком-то смысле).
Для определения параметров эмпирической формулы
y = φ ( x; a1, a2 ,..., am )
используются методы:
113
1)
2)
3)
метод выбранных точек;
метод средних;
метод наименьших квадратов.
Метод наименьших квадратов
Пусть известен вид эмпирической формулы
y = φ ( x; a1, a2 ,..., am )
(42.1)
и
ε i = φ ( xk ; a1, a2 ,..., am ) − yi , i = 1, n ,
(42.2)
уклонения эмпирической формулы (42.1) от исходных данных ( xi , yi ) . По
методу наименьших квадратов наилучшими коэффициентами a1, a2 ,..., am
считаются те, для которых сумма квадратов уклонений ε12 + ε 22 + ... + ε n2
минимальна, т.е.
n
S (a1, a2 ,..., am ) = ∑ [φ ( xi ; a1, a2 ,..., am ) − yi ]
2
(42.3)
i =1
минимальна. Отсюда, используя необходимые условия экстремума функции нескольких переменных, получаем так называемую нормальную систему для определения коэффициентов ai , i = 1, m
∂S
∂S
∂S
= 0,
= 0,...,
= 0.
∂a1
∂a2
∂am
(42.4).
Если система имеет единственное решение, то оно будет искомым.
Метод наименьших квадратов обладает тем преимуществом, что если
сумма S квадратов уклонений мала, то сами эти уклонения также малы по абсолютной величине. Для метода средних такого вывода сделать нельзя. Недостатком метода наименьших квадратов является громоздкость вычислений.
Определение параметров эмпирических формул по методу
наименьших квадратов в случае квадратичной зависимости
Дана таблица:
x
x1
x2
…
Таблица 14
xn
114
y
y1
y2
…
yn
Рассматриваем пары ( xi , yi ) как прямоугольные координаты на плоскости. Предположим, что точки M i ( xi , yi ), i = 1, n почти лежат на параболе
(см. рисунок 8).
y
M1
M2
Mn
M3
x
Рисунок 8
В этом случае естественно предположить, что между x и y существует квадратичная зависимость zi = axi2 + bxi + c . Обозначим ε i = zi − yi ,
i = 1, n . Параметры a, b, c выберем так, чтобы сумма квадратов уклонений
S = ε12 + ε 22 + ... + ε n2 = ( z1 − y1 ) 2 + ( z2 − y2 )2 + ... + ( zn − yn ) 2 =
= (ax12 + bx1 + c − y1 ) 2 + ... + (axn2 + bxn + c − yn ) 2
была наименьшей.
∂S
∂S
∂S
= 0,
= 0,
= 0 . Находя выраже∂a
∂b
∂c
ния для частных производных функции S по переменным a, b, c, получим
так называемую нормальную систему уравнений:
Для этого необходимо, чтобы
n
n
n
 n 4
3
2
2
a ∑ xi + b∑ xi + c ∑ xi = ∑ yi xi
i =1
i =1
i =1
 i=1
n
n
n
 n
3
2
a ∑ xi + b∑ xi + c ∑ xi = ∑ yi xi
i =1
i =1
i =1
 i=1
 n
n
n
a ∑ xi2 + b∑ xi + nc = ∑ yi .
 i=1
i =1
i =1
(42.5)
115
Из этой системы определяются параметры a, b, c эмпирической формулы. Систему можно решить, например, методом Гаусса.
§43. Приближенное вычисление определенных интегралов.
Квадратурные формулы Ньютона-Котеса
Точное вычисление определенных интегралов по формуле Ньютонаb
Лейбница
∫ f ( x)dx = F ( x) |a = F (b) − F (a) , где
b
F ′( x) = f ( x) не всегда пред-
a
ставляется возможным (так как первообразная подынтегральной функции
иногда не выражается в элементарных функциях – неберущийся интеграл)
или целесообразным (поскольку нахождение первообразной часто связано
с громоздкими преобразованиями). В этих случаях, а также в случае, когда
подынтегральная функция задана табличным способом, целесообразно определенные интегралы вычислять приближенно. Существуют различные
методы численного интегрирования.
Формулы Ньютона-Котеса
b
Пусть требуется вычислить
∫ f ( x ) dx .
Заменим подынтегральную
a
функцию ее интерполяционным полиномом Pn ( x) , f ( x) = Pn ( x) + rn ( x) ,
тогда
b
b
b
b
b n
a
a
a
a
a
ω ( x) f ( x )
i
dx + Rn =
∫ f ( x)dx = ∫ Pn ( x)dx + ∫ rn ( x)dx = ∫ Pn ( x)dx + Rn = ∫ ∑
′
−
x
x
x
ω
(
)
(
)
i
i
i =0
b
n
ω ( x)
= ∑ f ( xi ) ∫
dx + Rn =∑ Ai f ( xi ) + Rn ,
′
ω
(
)
(
)
−
x
x
x
i
i
i =0
i =0
a
n
b
b
n
ω ( x)
dx , Rn = ∫ rn ( x ) dx и ω ( x) = Π ( x − xi ) .
где Ai = ∫
i =0
( x − xi )ω ′( xi )
a
a
Ai – коэффициенты, зависящие от узлов интерполяции xi . В формуле
b
n
Ai f ( xi )
∫ f ( x)dx ≈ ∑
i =0
a
(43.1)
116
правая часть называется квадратурной суммой, Ai – квадратурные коэффициенты, xi – квадратурные узлы.
b
n
Ai f ( xi ) + Rn
∫ f ( x)dx = ∑
i =0
(43.2)
a
формула механических квадратур. Введем новую переменную t =
x − x0
.
h
Тогда
dx = hdt , x − xi = x − ( x0 + ih) = ( x − x0 ) − ih = th − ih = (t − i ) h ,
ω ( x) = ( x − x0 )( x − x1 )...( x − xn ) = th(t − 1)h × ... ×
×(t − n)h = h n+1t (t − 1)(t − 2) × ... × (t − n) = h n+1Π (t ) ,
n
где Π (t ) = Π (t − i).
i =0
Следовательно,
ω ′( xi ) = ( xi − x0 )( xi − x1 )...( xi − xi −1 )( xi − xi +1 )...( xi − xn ) =
= (hii (i − 1)(i − 2)...1)(1 ⋅ 2 ⋅ ... ⋅ (n − i )h n−i (−1)n−i ) =
i
= h i !h
n−i
(n − i ) !(−1)
n −i
= (−1)
n−i n
h i !(n − i )!
.
Отсюда
ω ( x)
h n+1Π (t )
Ai = ∫
dx = ∫
hdt =
n −i n
′
−
x
x
x
ω
(
)
(
)
−
−
−
h
t
i
h
i
n
i
(
)(
1)
!(
)!
i
i
a
0
b
n
h(−1)n−i Π (t )
=
dt .
i !(n − i ) ! ∫0 t − i
n
(43.3)
Формула (43.3) показывает, что еще квадратурные коэффициенты Ai
зависят от отрезка интегрирования, так как в (9.3) присутствует h. Введем Bi:
(−1) n−i
Π (t )dt
Bi =
.
n i !(n − i ) ! ∫0 t − i
n
Используя h =
(43.4)
b−a
, установим связь между коэффициентами (43.3)
n
и (43.4), получим
Ai = (b − a ) Bi .
(43.5)
Коэффициенты Bi не зависят от отрезка интегрирования, а лишь от
числа точек разбиения n . Тогда
117
b
n
Bi f ( xi ) + Rn .
∫ f ( x)dx = (b − a)∑
i =0
(43.6)
a
Коэффициенты Bi носят название коэффициентов Ньютона-Котеса, а
квадратурная формула (43.6) называется квадратурной формулой Ньютона-Котеса.
§44. Формула трапеций
Найдем явный вид коэффициентов Bi . При n = 1 имеем 2 узла
.
Следовательно,
1
1
1
 t2

(−1)1 t (t − 1)
1  1
=
−
(
−
1)
=
−
−
B0 =
dt
t
dt
t

 = −  − 1 = ;
∫
∫
1 ⋅ 0 !⋅ 1! 0 t − 0
2  2
2
0
0
1
1
(−1)0
t (t − 1)
t2
B1 =
dt = ∫ tdt =
1 ⋅ 1!⋅ 0 ! ∫0 t − 1
2
0
1
=
0
1
.
2
Отсюда и из (43.6):
b
1
1
∫ f ( x)dx = (b − a)( 2 f ( x0 ) + 2 f ( x1 )) + Rn ( f ) =
(44.1)
a
(b − a )
=
[ f ( x0 ) + f ( x1)] + Rn ( f )
2
формула трапеций.
f(x1)
f(x0)
a
b
Рисунок 9
Выведем остаточный член для формулы трапеций. При выводе формулы трапеций мы пользовались двумя точками x0 = a и x1 = b , поэтому
118
n = 1 . Заменим подынтегральную функцию ее интерполяционным полиномом, остаток интерполирования в общем виде имеет вид:
rn ( x) =
В нашем случае rn ( x) =
Тогда
b
b
a
a
ω ( x) f ( n+1) (ξ )
(n + 1)!
.
( x − x0 )( x − x1 )
f ′′(ξ ) , ( n = 1) .
2!
b
b
a
a
∫ f ( x)dx = ∫ ( Pn ( x) + rn ( x))dx = ∫ Pn ( x)dx + ∫ rn ( x)dx .
b
b
( x − x0 )( x − x1 )
f
Следовательно, Rn( ) = ∫ rn ( x)dx = ∫
f ′′(ξ )dx .
2!
a
a
Если вторая производная f ′′ непрерывна на [ a, b ] , то, так как множитель ( x − a ) ( x − b) сохраняет знак на [ a, b ] , то существует на [ a, b ] такая
точка η , для которой
b
b
( x − x0 )( x − x1 )
( x − a )( x − b)
(b − a )3
Rn ( f ) = f ′′(η ) ∫
dx = f ′′(η ) ∫
dx = −
f ′′(η ) ,
2
2
12
a
a
где a ≤ η ≤ b .
Итак, остаточный член для формулы трапеций имеет вид:
(b − a )3
Rn ( f ) = −
f ′′(η ) .
12
(44.2)
Отсюда
(b − a )3
M2,
| Rn ( f ) |≤
(44.3)
12
где M 2 = max | f ′′( x) | Для увеличения точности формулы трапеций (44.1)
a≤ x≤b
b−a
и рассмотрим xk = a + kh,
n
(k = 0,1, 2...n) и yk = f ( xk ) – значения подынтегральной функции в этих
разделим [ a, b ] на n частей длины h =
точках. Тогда формула (44.1) запишется в виде:
b
y
∫ f ( x)dx ≈ h  20 + y1 + y2 + ... + yn−1 +
a
yn 
,
2 
(44.4)
119
b
h
∫ f ( x)dx ≈ 2 [ y0 + 2( y1 + y2 + ... + yn−1) + yn ]
(44.5)
a
общая квадратурная формула трапеций. Ее остаточный член имеет вид
(b − a )3
f ′′(ξ ) .
12n 2
Следовательно, справедлива оценка для остаточного члена
Rn ( f ) = −
(b − a )3
M2,
| Rn ( f ) |≤
12n 2
где M 2 = max | f ′′( x) | .
a≤ x≤b
Формула трапеций имеет второй порядок точности, т.е. O ( h 2 ) .
(44.6)
120
§45. Формула Симпсона (парабол)
Рассмотрим случай n = 2 . Тогда из (43.4) получим
(−1) 2−0 t (t − 1)(t − 2)
1
B0 =
dt =
∫
2 ⋅ 0 !⋅ 2 ! 0
4
t
2

1  t 3 3t 2
=  −
+ 2t 
4 3
2

(−1) 2−1
B1 =
2 ⋅ 1!⋅ 1!
2
∫
0
2
0
2
∫ (t
2
− 3t + 2) dt =
0
18
 1
=  − 6 + 4 = ;
43
 6
2
2
t (t − 1)(t − 2)
1
1
dt = − ∫ t (t − 2) dt = − ∫ (t 2 − 2t )dt =
t −1
20
20
1  t 3 2t 2 
=−  −

2 3
2 
2
0
18
 2
= −  − 4 = ;
23
 3
(−1) 2−2 t (t − 1)(t − 2)
1
B2 =
dt = ∫ t (t − 1) dt =
∫
t−2
2 ⋅ 2 !⋅ 0 ! 0
40
2
1  t3 t 2 
=  − 
4 3 2 
2
2
0
18
 1 2 1
=  − 2 = ⋅ = .
4 3
 4 3 6
Следовательно, из (43.6):
a
∫
b
f ( x)dx =
b⋅a
[ f ( x0 ) + 4 f ( x1 ) + f ( x2 )] + Rn ( f )
6
формула парабол или формула Симпсона.
P2(x)
f (x)
f (x0)
f (x2)
x0
x1
x2
Рисунок 10
(45.1)
121
Дуга графика функции f ( x) заменяется дугой параболы. Так как
Pn ( x) = P2 ( x) – многочлен второй степени, то график P2 ( x) – парабола.
Остаточный член формулы парабол (Симпсона) имеет вид:
5
1  b − a  (4)
Rn ( f ) = − 
 f (ξ ) .
90  2 
(45.2)
Получим теперь общую формулу Симпсона. Для этого отрезок [ a, b ]
b−a
. Полу2m
= b и пусть y0 , y1,... y2m –
разобъем на четное число n = 2m равных отрезков длины h =
чим точки x0 = a , x1 = x0 + h , x2 = x0 + 2h , … , x2 m
значения функции y = f (x) в этих точках. Тогда общая квадратурная формула Симпсона запишется в виде:
b
h
∫ f ( x)dx ≈ 3 [ y0 + 4( y1 + y3 + ... + y2m−1) + 2( y2 + y4 + ... + y2m−2 ) + y2m ] .
(45.3)
a
Остаточный
член
формулы
парабол
(45.3)
имеет
вид:
(b − a )5 (4)
Rn ( f ) = −
f (ξ ) ,
(45.4)
180n 4
где a ≤ ξ ≤ b . Справедлива следующая оценка для остаточного члена:
(b − a )5
Rn ( f ) ≤
M4 ,
180n 4
(45.5)
где M 4 = max f (4) ( x) . Сравнивая между собой формулы (44.6) и (45.5) для
[ a ,b]
остаточных членов метода трапеций и метода парабол заключаем, что с
увеличением n остаточный член формулы трапеций уменьшается пропор1
1
ционально величине 2 , а формулы парабол – 4 , т.е. заданная точность
n
n
для гладких функций достигается быстрее по методу парабол, хотя с точки
зрения вычислений оба метода одинаковы. Формула Симпсона существенно точнее, чем формулы трапеций и прямоугольников: на отрезке [ a, b ] она
имеет точность O ( h 4 ) .
122
§46. Формулы прямоугольников
Метод прямоугольников основан на определении определенного интеграла и его геометрическом значении. Формула прямоугольников имеют
вид:
n−1
b
∫ f ( x)dx ≈ hk∑=0 yk = h [ y0 + y1 + ... + yn−1 ] ,
(46.1)
a
b
n
yk = h [ y1 + y2 + ... + yn ] ,
∫ f ( x)dx = h∑
k =1
(46.2)
a
b−a
, yk = f ( xk ), xk = a + kh . Формула (46.1) называется формулой
n
левых прямоугольников, а формула (46.2) формулой правых прямоугольников.
где h =
у
у
x0=а x1 x2
х
… b=xn
x0=а x1 x2
х
… b=xn
Рисунок 11
Рисунок 12
Правая часть формулы (46.1) выражает площадь ступенчатой фигуры, состоящей из прямоугольников, основание каждого из которых равно
h, а высота равна левой ординате. Правая часть формулы (46.2) выражает
площадь ступенчатой фигуры также состоящей из прямоугольников, основание каждого из которых равно h, а высота равна правой ординате. Абсолютная погрешность метода прямоугольников определяется формулой
(b − a ) 2 M 1
Rn ( f ) ≤
, где M1 = max f ′( x) .
[ a ,b]
2n
Из-за нарушения симметрии погрешность этих формул является величиной O (h) .
Формула средних прямоугольников имеет вид:
123
b
∫
a
f ( x)dx =
b−a
f
n 
h

a + +
2

3h 

f  a +  + ... +
2 

1  


f  a +  n −  h   + Rn ( f ) ,
2  


где остаточный член
Rn ( f ) =
(b − a )3
f ′′(ξ ), a ≤ ξ ≤ b .
24n 2
(b − a ) 3
M 2 , где M 2 = max f ′′( x) , т.е.
Справедлива оценка Rn ( f ) ≤
[ a ,b]
24n 2
погрешность формулы средних прямоугольников на [ a, b ] есть величина
O (h 2 ) , как и у формулы трапеций.
§47. Формула «трех восьмых»
Формула «трех восьмых» получается из формул Ньютона-Котеса при
n = 3 , интерполирование выполняется для функции f ( x) в точках
h
2h
a, a + , a + , b , где h = b − a . Формула будет следующей:
3
3
b
1
3
h
3
∫ f ( x)dx ≈ h  8 f (a) + 8 f (a + 3 ) + 8 f (a +
a
2h 1

) + f (b)  .
3
8

(47.1)
Ее часто называют формулой трех восьмых. Можно показать, что погрешность формулы (47.1) может быть, если f (4) есть непрерывная и мало
меняющаяся на [ a, b ] функция, представлена в виде
(b − a )5 (4)
(47.2)
Rn ( f ) ≈ −
f (η ) , a ≤ η ≤ b .
6480
Применим формулу трех восьмых к построению формул приближенного интегрирования при большем числе равноотстоящих узлов.
Пусть n есть число, кратное трем. Разделим [ a, b ] на n равных часb−a
. Возьмем строенный отрезок [ a + kh, a + (k + 3)h ] и к
n
интегрированию по нему применим правило (47.1):
тей длины h =
124
a +( k +3) h
∫
f ( x)dx =
a + kh
3h
{ f (a + kh) + 3 f [ a + (k + 1)h] +
8
+3 f [ a + (k + 2)h ] + f [ a + (k + 3)h ]} + Rk +1 ( f ),
(3h)5 (IV)
(η k +1 ) .
Rk +1 ( f ) ≈ −
f
6480
Если такие равенства записать для всех строенных отрезков
[ a, a + 3h], [ a + 3h, a + 6h],... и сложить их почленно, построим общую
формулу трех восьмых:
b
3h
∫ f ( x)dx = 8 [( f0 + f n ) + 2( f3 + f6 + ... + f n−3 ) +
a
(47.3)
3( f1 + f 2 + f 4 + f 5 + ... + f n−2 + f n−1 )] + R( f ),
где f k = f (a + kh) . Погрешность R( f ) имеет следующее значение:
R( f ) = R1 ( f ) + R2 ( f ) + ... + Rn ( f ) ≈ −
3
(3h)5  (4)
f (η1 ) + ... + f (4) (η n )  =

6480 
3 
(b − a )5 3  (4)
f (η1 ) + ... + f (4) (η n )  .
=−
⋅
4
n 
3 

80n
3
Множитель  f (4) (η1 ) + ... + f (4) (η n )  есть среднее арифметическое,
n 
3 

составленное из n значений четвертой производной, и так как f (4) счи3
тается непрерывной функцией, то на [ a, b ] существует точка ξ такая, что
4
этот множитель равен f ( ) (ξ ) . Для погрешности R( f ) окончательно полу-
(b − a ) 5 ( 4 )
чается выражение R( f ) = −
f (ξ ), a ≤ ξ ≤ b .
80n 4
Погрешность формулы (47.3) имеет такой же порядок, как и для
формулы парабол, т.е. O (h 4 ) на [ a, b ] .
125
§48. Выбор шага интегрирования. Правило Рунге
Для выбора шага интегрирования можно воспользоваться выражением остаточного члена. Возьмем, например, остаточный член формулы
Симпсона:
(b − a )5 (4)
h 4 (b − a ) (4)
R2 (h) = −
f (ξ ) = −
f (ξ ) .
180
180n 4
h 4 (b − a ) M 4
Если max f (ξ ) = M 4 , то R2 (h) ≤
. По заданной точно[ a ,b]
180
сти ε метода интегрирования из последнего неравенства определим подходящий шаг,
(4)
180ε
h 4 (b − a ) M 4
≤ ε, h ≤ 4
.
180
(b − a ) M 4
Однако такой способ требует оценки max f (4) ( x) (что на практике
[ a ,b]
не всегда возможно). Поэтому пользуются другими приемами определения
оценки точности, которые по ходу вычислений позволяют выбрать нужный шаг.
Разберем один из таких приемов на примере метода Симпсона. Пусть
b
∫
a
h 4 (b − a ) (4)
f ( x)dx = I h −
f (η ) ,
180
где I h – приближенное значение нтеграла, вычисленное с шагом h .
Уменьшим шаг h в два раза, разбив отрезок [ a, b ] на две равные части [ a, c ] и [ c, b ] , c =
a+b
.
2
Тогда
b
∫ f ( x)dx = I h 2
a
4
4
 h  (c − a ) (4)
 h  (b − c) (4)
− 
f (η1 ) −  
f (η 2 ) ,
 2  180
 2  180
a ≤ η1 ≤ c , c ≤ η 2 ≤ b .
Предположим, теперь, что f (4) меняется не слишком быстро, так что
f (4) почти постоянна: f (4) (η1 ) = f (4) (η2 ) = f (4) (η ) = k .
126
b
Тогда
∫
a
h 4 (b − a )
f ( x)dx = I h −
k и
180
b
∫ f ( x) dx = I h 2
a
h 4 (b − a )
k,
− 4
2 ⋅ 180
I h − Ih
R2 (h)
.
откуда I h + R2 (h) = I h + 4 , т.е. R2 (h) = 2
1
2
2
1− 4
2
Отсюда можно сделать такой вывод: если R2 (h) =
24
I h − Ih ≤ ε ,
15 2
15ε
< ε , а ε – требуемая точность, то шаг h под2
24
ходит для вычисления интеграла с достаточной точностью. Если же
т.е. I h − I h ≤ ε1 , где ε1 =
I h − I h > ε , то расчет повторяют с шагом h
2
4
и затем сравнивают I h и
2
I h и т.д. Это правило называется правилом Рунге.
4
§49. Аналитические методы решения задачи Коши
для обыкновенных дифференциальных уравнений
Среди задач, с которыми приходится иметь дело в вычислительной
практике, значительную часть составляют различные задачи для обыкновенных дифференциальных уравнений. В курсе дифференциальных уравнений изучаются методы интегрирования простейших видов этих уравнений. К сожалению, дифференциальные уравнения, которые можно проинтегрировать известными методами, встречаются очень редко. В связи с
этим приобретают особое значение приближенные методы решения дифференциальных уравнений. Такие методы в зависимости от того, ищется
ли приближенное решение в аналитическом виде или в виде таблицы чисел, часто разделяют на аналитические и численные. Аналитические методы дают приближенное решение в виде аналитического выражения, численные методы в виде таблицы численных значений.
В случае обыкновенных дифференциальных уравнений в зависимости от того, ставятся ли дополнительные условия в одной или нескольких
точках отрезка изменения независимой переменной, задачи обычно подразделяют на одноточечные (задачи с начальными условиями, или задачи
127
Коши) и многоточечные. Среди многоточечных задач наиболее часто в
прикладных задачах встречаются так называемые граничные задачи, когда
дополнительные условия ставятся на концах рассматриваемого отрезка.
Наиболее простой из указанных выше задач является задача Коши.
Пусть на отрезке x0 ≤ x ≤ X требуется найти решение y ( x ) дифференциального уравнения
y′ = f ( x, y ) ,
(49.1)
удовлетворяющего начальному условию: при
x = x0 , y ( x0 ) = y0 .
(49.2)
Условия существования и единственности задачи Коши будем считать выполненными. Будем считать также, что функция f ( x, y ) в некоторой области изменения ее аргументов сколь угодно раз дифференцируема
по x и y (обладает нужной гладкостью).
Метод последовательных приближений (метод Пикара)
приближенного решения задачи Коши
Этот метод позволяет получить в аналитическом виде последовательность приближений ym ( x) , m = 1, 2, … к решению y ( x) рассматриваемой задачи Коши по следующему итерационному правилу
x
ym ( x) = y0 +
∫ f [t , ym−1(t )] dt , x0 ≤ x ≤ X ,
y0 (t ) = y0 , x0 ≤ t ≤ X , m = 1, 2, …
x0
Однако метод Пикара редко используется на практике. Одним из его
существенных недостатков, препятствующих широкому практическому
применению, является необходимость выполнения операции интегрирования при осуществлении каждой итерации.
Несколько более широкое распространение в вычислительной практике получил другой аналитический метод, основанный на идее разложения в ряд решения рассматриваемой задачи Коши. Особенно часто для
этих целей используют ряд Тейлора.
Метод степенных рядов
Приближенное решение ym ( x) исходной задачи (49.1), (49.2) ищут в
виде
128
( x − x0 )i (i )
ym ( x ) = ∑
y ( x0 ) =
i!
i =0
m
y′( x0 )
y′′( x0 ) 2
y ( m ) ( x0 ) m
= y ( x0 ) +
h+
h + ... +
h ,
1!
2!
m!
(49.3)
где h = x − x0 . Здесь y (0) ( x0 ) = y ( x0 ) = y0 , y (1) ( x0 ) = y′( x0 ) = f ( x0 , y0 ) ,
а значение y (i ) ( x0 ), i = 2,3, ..., m , находятся по формулам, полученным последовательным дифференцированием уравнения (49.1):
y (2) ( x0 ) = y′′( x0 ) = f x ( x0 , y0 ) + f ( x0 , y0 ) f y ( x0 , y0 ) ,
y (3) ( x0 ) = y′′′( x0 ) = f x2 ( x0 , y0 ) + 2 f ( x0 , y0 ) f xy ( x0 , y0 ) + f 2 ( x0 , y0 ) ×
× f y 2 ( x0 , y0 ) + f y ( x0 , y0 )  f x ( x0 , y0 ) + f ( x0 , y0 ) + f y ( x0 , y0 )  ,
(49.4)
Для значений x , близких к x0 , метод степенных рядов (49.3) при
достаточно большом m дает обычно хорошее приближение к точному решению y ( x) задачи (49.1), (49.2). Однако, с увеличением расстояния
x − x0 погрешность приближенного равенства y ( x) ≈ ym ( x) , вообще говоря, возрастает по абсолютной величине и правило (49.3) становится вовсе
неприемлемым, когда x выходит из области сходимости соответствующего (49.3) ряда Тейлора.
Предпочтительными в таких случаях будут, например, численные
методы решения задачи Коши, позволяющие в некоторых попарно близких
друг другу фиксированных точках (узлах)
x0 < x1 < x2 < ... < xN = X
(49.5)
последовательно находить значение yn ≈ y ( xn ) , n = 1, 2, …, N , приближенного решения. Сходимость методов подобного типа не так жестко связана с длиной отрезка [ x0 , X ] , и их чаще кладут в основу стандартных программ для ЭВМ.
129
§50. Метод Эйлера
Пусть требуется решить задачу Коши: найти решение дифференциального уравнения
y′ = f ( x, y ) ,
(50.1)
удовлетворяющего условию y = y0 , при x = x0 , т.е.
y ( x0 ) = y0 .
(50.2)
При численном решении уравнения (50.1) задача ставится так: в точках x0 , x1, x2 ,..., xn найти приближения yn для значений точного решения
y ( xn ) . Разность ∆xn = xn+1 − xn = h называется шагом сетки. Во многих
случаях принимают величину h постоянной, тогда
xn = x0 + nh, ( n = 0,1, 2,...) .
(50.3)
Приближенно можно считать, что правая часть уравнения (50.1) остается постоянной на каждом из отрезков между точками деления.
Метод Эйлера состоит в непосредственной замене производной раз∆y
ностным отношением по приближенной формуле
= f ( x, y ) . В силу сде∆x
ланных предположений на первом отрезке искомое решение приближенно
∆y0
представляется линейной функцией
= f ( x0 , y0 ) ,
∆x0
y − y0 = f ( x0 , y0 )( x − x0 ) , y = y0 + ( x − x0 ) f ( x0 , y0 ) ;
(50.4)
в частности, при x = x1 , получаем y1 = y0 + hf ( x0 , y0 ) .
Равенство (50.4) означает, что на отрезке [ x0 , x0 + h] искомую интегральную кривую y = y ( x) приближенно заменяют прямолинейным отрезком, выходящим из начальной точки M 0 ( x0 , y0 ) с угловым коэффициентом
f ( x0 , y0 ) . Аналогично находим приближенное значение y2 :
y2 = y1 + hf ( x1, y1 ) . Для точки xn = x0 + nh получаем
yn = yn−1 + hf ( xn−1, yn−1 )
(50.5)
Таким образом, в качестве приближения искомой интегральной кривой получаем ломаную линию с вершинами в точках M 0 ( x0 , y0 ) ,
M1 ( x1, y1 ) , …, M n ( xn , yn ) (см. рисунок 13).
130
y
Mn
M0
M1
x0
x1
M2
x
0
x2
xn
Рисунок 13
Вычисление приближений yn искомого решения y ( x) по формуле
(50.4) представляет собой обыкновенный метод Эйлера. Этот метод дает
весьма грубое приближение решения задачи Коши. Он обычно используется в случае, когда необходимо получить примерное представление о решении на небольшом промежутке.
Если функция f ( x, y ) в уравнении (50.1) на некотором отрезке в рассматриваемой области непрерывна по x и удовлетворяет условию Липшица по y f ( x, y2 ) − f ( x, y1 ) ≤ K y2 − y1 , K = const, и, кроме того,
df
≤ N , N = const;
dx
d2 f
≤ N1, N1 = const ,
dx 2
то погрешность обыкновенного метода Эйлера оценивается формулой
hN K ( xn − x0 )
ε n = yn − y ( xn ) ≤
[e
− 1] .
(50.6)
2K
Часто для решения дифференциальных уравнений используются
следующие модификации метода Эйлера:
1)
модифицированный метод Эйлера
131
h
f ( xn , yn ),
2
2
h
yn+1 = yn + hf ( xn + , yn+ 1 ) ;
2
2
метод Эйлера-Коши
yɶ n+1 = yn + hf ( xn , yn ),
yn + 1 = y n +
2)
1)
2)
3)
1)
2)
fɶn+1 = f ( xn+1, yɶ n+1 ) ,
f + fɶn+1
yn+1 = yn + h n
.
2
Достоинства метода Эйлера:
простота,
малый объем вычислений,
наглядность.
Недостатки:
малая точность,
работает на малых интервалах.
Он дает весьма грубое приближение решения задачи Коши.
§51. Метод Рунге-Кутта
Метод Рунге–Кутта – один из наиболее употребительных методов
повышенной точности.
Пусть требуется найти численное решение уравнения (50.1), удовлетворяющее условию (50.2). Предположим, что в точке x известно y ( x ) ;
пусть h > 0. Обозначим
∆y ( x) = y ( x + h) − y ( x) ,
(51.1)
где y ( x + h) надо вычислить. Представим разность ∆y ( x) в виде суммы
«поправок» k j с коэффициентами p j : ∆y ( x) = p1k1 + p2k2 + ... + pr kr , где
k1 = hf ( x, y ) ,
k2 = hf ( x + α 2h, y + β 21k1 ) ,
................................................
kr = hf ( x + α r h, y + β r1k1 + β r 2 k2 + ... + β rr −1kr −1 ) .
132
Коэффициенты p j , α j , β ji получаются при сравнении разложения
∆y и ki по степеням h . В случае r = 4
k1 = hf ( x, y ) ;


h
k1  

k2 = hf  x + , y +  ;

2
2 

h
k2  

k3 = hf  x + , y +  ;

2
2

k4 = hf ( x + h, y + k3 ) ; 
(51.2)
1
∆y = (k1 + 2k2 + 2k3 + k4 ) .
(51.3)
6
При x = x0 с помощью формул (51.1) – (51.3) находим y1 = y0 + ∆y0 .
Аналогично получаем последующие приближения:
yi +1 = yi + ∆yi (i = 1, 2, 3, ...) ,
(51.4)
где
1
∆yi = (k1(i ) + 2k2(i ) + 2k3(i ) + k4(i ) ) ,
6
(51.5)
k1(i ) = hf ( xi , yi ) ;
k (i )
h
k2(i ) = hf ( xi + , yi + 1 ) ;
2
2
k3(i )
k2(i )
h
= hf ( xi + , yi +
);
2
2
k4(i ) = hf ( xi + h, yi + k3(i ) ) .
(51.6)
Для уравнения y′ = f ( x, y ) верна следующая оценка погрешности
метода Рунге-Кутта:
5
y1 − y ( x1 ) <
6 MN x1 − x0 N 5 − 1
,
N −1
где M и N – постоянные, такие, что в области x1 − x0 < a,
(51.7)
y − y0 < b
выполняются неравенства
∂ i +k f
N
f ( x, y ) < M i k < k −1 , (i + k ≤ 3) , x − x0 N < 1, aM ≤ b, h ≤ a .
M
∂x ∂y
(51.8)
133
Метод Рунге–Кутта применим также к системам дифференциальных
уравнений первого порядка. Пусть дана система двух уравнений
y′ = f ( x, y, z );

z ′ = g ( x, y , z ) 
(51.9)
с начальными условиями:
y ( x0 ) = y0 , z ( x0 ) = z0 .
(51.10)
Определяя параллельно числа λn и µn по формулам
1
6
1
6
λn = (k1 + 2k2 + 2k3 + k4 ) , µn = (l1 + 2l2 + 2l3 + l4 ) ,
(51.11)
где
k1 = hf ( xn , yn , zn );

h
k1
l1 
k2 = hf ( xn + , yn + , zn + );
2
2
2 

h
k2
l2 
k3 = hf ( xn + , yn + , zn + );
2
2
2 
k4 = hf ( xn + h, yn + k3 , zn + l3 ); 
(51.12)
l1 = hg ( xn , yn , zn );

h
k1
l1 
l2 = hg ( xn + , yn + , zn + );
2
2
2 

h
k2
l2 
l3 = hg ( xn + , yn + , zn + );
2
2
2 
l4 = hg ( xn + h, yn + k3 , zn + l3 ), 
(51.13)
находят
yn+1 = yn + λn , zn+1 = zn + µ n .
(51.14)
Метод Рунге–Кутта применяется также при решении обыкновенных
дифференциальных уравнений высших порядков.
§52. Задача линейного программирования
Стандартная задача линейного программирования состоит в следующем: найти неотрицательное решение системы Ax ≤ b m линейных неравенств с n переменными, при котором линейная форма f = cx принимает
максимальное (минимальное) значение. Всякое неотрицательное решение
системы Ax ≤ b называется допустимым. Допустимое решение называется
134
оптимальным, если оно максимизирует (минимизирует) линейную форму
f = cx . Система Ax ≤ b называется системой ограничений для задачи линейного программирования. Если в качестве этой системы выступает система линейных уравнений, то задача называется канонической. Таким образом, канонической задачей линейного программирования называется
следующая задача: найти неотрицательное решение системы Ax = b m линейных уравнений с n неизвестными, которое максимизирует (минимизирует) линейную форму f = cx .
От стандартной задачи линейного программирования легко перейти
к канонической задаче. Для этого систему Ax ≤ b запишем так:
ai1x1 + ... + ain xn ≤ bi , i = 1, m .
Добавим zi так, чтобы ai1x1 + ... + ain xn + zi = bi , i = 1, m . Тогда систему
ограничений Ax ≤ b можно записать в виде: Ax + Ez = b , где
z = ( z1, z2 ,...zm ). А это уже система уравнений. Поэтому от стандартной задачи перешли к канонической.
Обратно. Пусть дана каноническая задача. Перейдем от нее к стандартной. Для этого систему Ax = b запишем в виде:
 Ax ≤ b
 Ax ≤ b
 A
b
⇔
⇔   x ≤  .

 Ax ≥ b
 − Ax ≤ −b
 − A
 −b 
А это уже система линейных неравенств, и задача стала стандартной.
Примеры задач линейного программирования
1. Транспортная задача
Пусть
m – число складов,
n – число магазинов,
ai – число единиц товара, выделяемых i-ым кладовщиком,
bj – число единиц товара, необходимое j-му магазину,
xij – число единиц товара, перевозимого с i-го склада в j-ый магазин,
cij – стоимость перевозки единицы товара с i-го склада в j-ый магазин.
135
m
n
Найти минимум линейной формы z = ∑∑ cij xij → min при следуюi =1 j =1
щих ограничениях:
xij ≥ 0, i = 1, m,
j = 1, n,
n
∑ xij ≤ ai , i = 1, m
j =1
(количество вывозимого товара не должно превышать запасов),
m
∑ xij ≥ b j ,
j = 1, n
i =1
(потребности магазина должны быть удовлетворены).
2. Задача планирования производства
Пусть
m – число ресурсов,
n – число товаров,
aij – число единиц i-го ресурса, необходимого для производства единицы jго товара,
bi – число единиц i-го ресурса,
cj– доходы от единицы j-го товара,
xj – запланированный уровень производства j-го товара.
n
Найти максимум прибыли
∑ c j x j → max
j =1
ниях:
n
∑ aij x j ≤ bi , i = 1, m,
 j =1

 x j ≥ 0, j = 1, n.
3. Задача о диете
Пусть
m – число питательных веществ,
n – число видов продукта,
при следующих ограниче-
136
aij – количество единиц i-го питательного вещества, содержащегося в единице j-го продукта,
bi – минимальная дневная потребность в i-ом питательном веществе,
cj – стоимость единицы j-го продукта,
xj – количество единиц j-го продукта, используемого в диете.
n
Найти минимум линейной формы
∑ c j x j → min
при следующих ог-
j =1
раничениях:
x j ≥ 0, j = 1, n ,
n
∑ aij x j ≥ bi ,
i = 1, m .
j =1
§53. Графический метод решения задач
линейного программирования
Для двух неизвестных x1 и x2 задача линейного программирования
решается довольно просто графическим методом.
Пусть имеется система m линейных неравенств с двумя неизвестными x1 и x2
a11x1 + a12 x2 + b1 ≥ 0
a x + a x + b ≥ 0
 21 1 22 2 2
(53.1)

...

am1x1 + am 2 x2 + bm ≥ 0
и линейная форма
z = c1x1 + c2 x2 .
(53.2)
Требуется среди всех неотрицательных решений системы (53.1)
x1 ≥ 0, x2 ≥ 0,
(53.3)
выбрать такое, которое обращает линейную формулу (53.2) в максимум.
Область решений систем (53.1), (53.3) есть некоторая выпуклая многоугольная область на плоскости (см. рисунок 8). Приравняем выражение для
z к какой-либо постоянной
c1x1 + c2 x2 = c .
(53.4)
Уравнение (53.4) на плоскости определяет прямую линию, в точках
которой функция принимает одно и то же фиксированное значение, а
137
именно: c . Такая прямая называется прямой уровня функции z, отвечающей значению c . Если для z принять другую постоянную, получим другую
линию уровня. Равенство (53.4) представляет собой семейство параллельных прямых. Будем перемещать прямую MN параллельно самой себе в
направлении увеличения z, если требуется вычислить максимум линейной
формы (или в направлении уменьшения z, если требуется вычислить минимум линейной формы). При этом возможны два случая.
Параллельное перемещение приводит прямую в такое положение,
когда у нее окажется одна общая точка с многоугольником – вершина B .
Координаты точки B дают максимум функции z = c1x1 + c2 x2 .
Может оказаться, что прямая будет параллельна одной из сторон
многоугольника. В таком случае экстремум достигается во всех точках соответствующей стороны BC многоугольника.
М’
B
M
C
N’
A
D
E
N
Рисунок 14
§54. Симплекс-метод решения задач
линейного программирования
Пусть имеем задачу линейного программирования: минимизировать
n
линейную форму z = ∑ c j x j при следующих ограничениях.
j =1
138
a x + a x + ... + a x = b
1n n
1
 11 1 12 2
a21x1 + a22 x2 + ... + a2 n xn = b2

...............................................
a x + a x + ... + a x = b
mn n
m
 m1 1 m 2 2
 x j ≥ 0, ( j = 1, n ) .

(54.1)
В более компактном виде систему (54.1) можно записать так
x1 P1 + x2 P2 + ... + xn Pn = P0 , где Pj – j-й столбец-вектор, координатами ко
торого являются коэффициенты при неизвестном x j ; P0 – вектор-столбец
свободных членов.
Будем называть решением (планом) задачи линейного программиро
вания вектор X = ( x1, x2 ,..., xn ) , удовлетворяющий системе (54.1) и условию
x j ≥ 0, j = 1, n .
План задачи, для которого линейная форма достигает минимума
(максимума), является оптимальным.
Предполагается, что рассматриваемая задача обладает планами и содержит m векторов (линейно независимых), из которых составляется единичная матрица порядка m . Исходным планом задачи в базисе системы
единичных векторов P1, P2 ,..., Pm будет план вида X 1 = ( x1, x2 ,..., xm ,0,...,0) .
Если для плана X все xi > 0, i = 1, m, то он называется невырожденным.
Если же один или несколько коэффициентов xi = 0 , план будет вырожденным.
Решение задачи начинаем с составления первой итерации симплексного процесса, предварительно обозначив bi = xi , aij = xij .
В (m + 1) – строке значения z0 и z j можно определить по формулам:
m
m
i =1
i =1
z0 = ∑ ci xi , z j = ∑ ci xij , j = 1, n .
Критерием оптимальности плана задачи на минимум является выполнение условия z j − c j ≤ 0 . Если же это условие не выполняется, т.е. для
некоторого номера j z j − c j > 0 , тогда следует отыскать новый план, который лучше (по крайней мере, не хуже) предшествующего.
139
Базис нового плана будет содержать (m − 1) векторов первоначального базиса и новый вектор, вводимый базис.
c1
c2
…
cm
cm+1
…
ck
…
cn
P1
P2
…
Pm
Pm+1
… Pk
…
Pn
x1
1
0
…
0
x1,m+1
… x1k … x1n
c2
x2
0
1
…
0
x2,m+1
… x2k … x2n
…
…
…
…
… …
0
…
l
Pl
cl
xl
0
0
…
0
xl,m+1
…
…
…
…
…
… …
…
…
m
Pm
cm
xm
0
0
…
1
xm,m+1
i
базис
ci
X1
1
P1
c1
2
P2
…
… … …
…
… xlk … xln
… … …
…
… xmk … xmn
m
m+1
zj-cj
z0 = ∑ ci xi
z1-c1 z2-c2 … zm-cm zm+1-cm+1 … zk-ck … xn-cn
i +0
Чтобы определить, какой вектор следует ввести в базис, просматриваем m + 1-ю строку. Вектор, соответствующий максимальному значению
разности max( z j − c j ) , вводится в базис, причем максимальное значение
разности берется по всем индексам j , j = 1, n.
Предположим, что max ( z j − c j ) = zk − ck > 0 . Вектор Pk следует ввеj
сти в новый базис. Столбец, соответствующий вектору Pk , называется разрешающим. Невырожденный план задачи должен содержать ровно m положительных компонент, поэтому необходимо определить, какой вектор
нужно вывести из базиса. Для этого вычисляют минимальное отношение
140
координат xi исходного плана соответственно к положительным элементам xik разрешающего столбца, т.е. Θ0 = min
i
ложительным числом является Θ0 = min
i
xi
, xik > 0. Пусть таким поxik
xi
x
= l .
xik xlk
Значит, вектор Pl следует исключить из базиса. Строка, соответствующая вектору Pl , является разрешающей. Элемент xlk , стоящий на пересечении разрешающей строки и разрешающего столбца, называется
ключевым или разрешающим. (В первой итерации разрешающий столбец и
строка взяты в рамку).
Таким образом, новый базис содержит (m − 1) векторов старого базиса и вектор Pk . В этом базисе вычисляют новый план
X 2 = ( x1, x2 ,..., x k ,..., xm ,0,...,0 )
и разлагают векторы, не входящие в базис, причем единственным образом,
по векторам базиса. Составляющие xi′ нового плана определяются из соотношений
xl
 ′
x
x
xik , i = 1, 2, ... l − 1, l + 1, ..., m
=
−
i
i

x

lk

 x′ = xl .
 k xlk
Элементы xij определяются из соотношений
(54.2)
xlj

′
x
x
=
−
⋅ xik , (i = 1, 2, ... l − 1, l + 1, ... m)
ij
 ij
xlk


 x′ = xlj .
(54.3)
 lj xlk
Формулы (54.2) и (54.3) можно проиллюстрировать схемой прямоугольника
xij
…
xik
xlj
…
xlk
141
Новые значения xij можно получить, если из первоначального значения xij вычесть произведение элементов, стоящих на противоположной
диагонали элементу xij , разделенное на элемент xlk , стоящий по той же
диагонали, что и элемент xij . Получают новый план
X 2 = ( x1, x2 ,..., x k ,..., xm ,0,...,0 )
и новое разложение векторов по базису (см. вторую итерацию):
Вторая итерация
c1
c2 … cm
cm+1
… ck …
X1
i базис ci
P1
P2 … Pm
Pm+1
… PK …
x1,′ m+1 … 0 …
x1′
P1
c1
1
0
1
0 …
′ m+1 … 0 …
x2,
x2′
P2
c2
2
0
0
1 …
…
l
…
m
…
Pk
…
Pm
…
…
x′k
ck
…
cm
…
xm′
…
…
…
…
0
…
0
0
…
0
…
…
…
0
…
1
…
xl′,m+1
…
xm′ ,m+1
… …
…
… 1
… …
… 0
…
…
…
cn
Pn
x1′n
x2′ n
…
′
xln
…
′
xmn
m
′ − cm zm′ +1 − cm+1 … z′k − ck … zn′ − cn
m+1 z′j − c j z0 = ∑ ci xi z1′ − c1 z2′ − c2 … zm
i =1
Если в (m + 1) -ой строке второй итерации все разности ( z′j − c j ) ≤ 0 ,
получен оптимальный план, если же хотя бы одна из разностей z′j − c j > 0 ,
вторую итерацию необходимо провести аналогично первой итерации.
Процесс продолжаем до тех пор, пока не будет получен оптимальный
план, т.е. все разности z j − c j ≤ 0 .
Может встретиться случай, что одна или несколько разностей
z′j − c j > 0 , а столбцы, соответствующие этим разностям, не содержат положительных элементов ( xik ≤ 0 для какого-то k и всех i ). Тогда линейная
форма задачи неограничена.
Если первоначальная задача связана с максимизацией, можно использовать следующий критерий оптимальности плана: подсчитываются
разности z j − c j и выбирается новый вектор, соответствующий
min ( z j − c j ) . Оптимальный план в этом случае будет достигнут, когда все
разности z j − c j ≥ 0 .
142
Решение нулевого варианта
для лабораторных работ №1 и №2
Пример 1. Результаты измерения толщины человеческого волоса и
расстояния от Земли до Солнца таковы:
d = 0,15 ± 0,005 мм; l = 149,598 ⋅ 106 ± 500 км.
Сравните качества этих измерений.
Решение.
Обозначим dɶ = 0,15 мм; hdɶ = 0,005 мм; lɶ = 149,598 ⋅ 106 км; hlɶ = 500 км.
Сравнивая hdɶ и hlɶ , видим, что
hdɶ
hlɶ
=
1
, то есть измерение толщи1011
ны волоса произведено с точностью до hdɶ , которое в 1011 раз меньше чем
hlɶ , с которым измерено расстояние до Солнца.
Однако качество измерения расстояния от Земли до Солнца много
выше, чем качество измерения толщины волоса, так как
ε dɶ
= 104 .
ε lɶ
Действительно,
ωdɶ =
ωlɶ =
∆ dɶ hdɶ 0,005 мм
≤ ɶ =
≤ 0,04 = 4%;
0,15 мм
d
dɶ
∆lɶ hlɶ
500км
≤ ɶ =
≤ 0,000004 = 0,0004%,
l 149,598 ⋅ 106 км
lɶ
и можно принять ε dɶ = 4% а ε lɶ = 0,0004%.
Пример 2. Записать следующие приближенные значения чисел, сохраняя в записи только верные цифры:
а) x = 2700 ± 50 ;
б) x = 0,007450 ± 0,000005;
в) x = 38700 ± 25.
Решение.
а) a =2700; ha = 50.
Последняя верная цифра – 7. Два последних значащих нуля сомнительные.
x =ɺ 2,7 ⋅ 103.
143
б) a = 0,007450; ha = 0,000005; x = 0,00745, или x =ɺ 7, 45 ⋅ 10−3.
в) a = 38700; ha = 25 ; x =ɺ 3,87 ⋅ 104.
Пример 3. Произвести округление приближенных значений чисел
так, чтобы округленные значения имели максимально возможное количество верных значащих цифр.
а) y = 27, 404 ± 0,03 ;
б) x = 3,874 ⋅ 10−2 ± 0,04 ⋅ 10−2 .
Решение.
а) a = 27,404; ha = 0,03.
Так как ha ≤ 0,05, но ha > 0,005, то последняя верная цифра находится в разряде десятых: a1 = 27, 4 .
∆ a1 ≤ ha + ∆ окр = 0,03 + 27,404 − 27, 4 = 0,034 < 0,05; y =ɺ 27,4 .
б) a = 3,874 ⋅ 10−2 ; ha = 0,04 ⋅ 10−2.
Последняя верная цифра в разряде десятых значащей части a, но округление до этого разряда приводит к получению значения a1, содержащего в этом разряде сомнительную цифру, так как ∆ a1 > 0,05 ⋅ 10−2 .
Произведем округление a до разряда предпоследней верной цифры
то есть до разряда единиц значащей части a: a2 = 4 ⋅ 10−2 .
Так как ∆ окр = a − a2 = 0,126 ⋅ 10−2 , то
∆ a2 ≤ 0,04 ⋅ 10−2 + 0,126 ⋅ 10−2 = 0,166 ⋅ 10−2 < 0,5 ⋅ 10−2 ; ha2 = 0,5 ⋅ 10−2.
Отсюда x =ɺ 4 ⋅ 10−2.
Пример 4. Вычислить X = x + y − z , если
x =ɺ 3,75; y =ɺ 0,874; z = 2,782 ± 0,001.
Решение.
a1 = 3,75;
ha = 0,005;
a2 = 0,874;
ha = 0,0005;
a3 = 2,782;
ha = 0,001.
1
2
3
144
3
Тогда A = a1 + a2 − a3 = 1,842 и ∆ A ≤ ∑ hai = 0,0065.
i =1
После округления до разряда последней верной цифры имеем:
A1 = 1,8 и ∆ A1 ≤ 0,0065 + 0,042 = 0,0485 ≤ 0,05; X =ɺ 1,8 .
Однако модуль погрешности округления намного больше границы
погрешности числа A. В данном примере имеет смысл записать ответ с одной сомнительной цифрой.
Ответ: 1,84 ± 0,01.
Пример 5. Найти произведение двух чисел x и y, приближенные
значения которых даны: x =ɺ −5,87; y =ɺ 2,33.
Решение.
Рассмотрим произведение
pɶ = a ⋅ b,
где
a = −5,87,
b = 2,33
и
ha = hb = 0,005. Границы относительных погрешностей сомножителей равны ε a = 0,0009 ; ε b = 0,0022.
Отсюда ε а + ε b = 0,0031 = ε рɶ ; pɶ = a ⋅ b = 13,6771.
Так как ε pɶ < 0,5 ⋅ ( 0,1) , то pɶ имеет не менее двух верных значащих
2
цифр. Более точно, три:
∆ pɶ ≤ ε pɶ pɶ ≤ 0,0031 ⋅ 14 = 0,0434 ≤ 0,05; h pɶ = 0,05.
Последняя верная цифра в разделе десятых, но округление до него
дает приближенное значение p1 = 13,7, имеющее сомнительную цифру 7,
так как ∆ p1 ≤ 0,05 + 0,02 = 0,07 ; p = 13,7 ± 0,1.
Округление до целых даст P =ɺ 14.
x
Пример 6. Вычислить D = , если x =ɺ 2,74; y =ɺ 1,97.
y
Решение.
a
Обозначим a = 2,74; b = 1,97; Dɶ = ;
b
0,005
0,005
ωa ≤
≤ 0,0018; ωb ≤
≤ 0,0027;
2,74
1,97
т.е. ε a = 0,0018 и ε b = 0,0027.
145
Отсюда ε a + ε b = 0,0045 и ε Dɶ = 0,0045;
Dɶ = 1,390....
∆ Dɶ ≤ ε Dɶ Dɶ ≤ 0,0045 ⋅ 1,4 ≤ 0,0063;
hDɶ = 0,0063.
Произведем округление до разряда последней верной цифры:
D1 = 1, 4; ∆ D1 ≤ hDɶ + ∆ окр ≤ 0,0063 + 0,01 = 0,0163 < 0,02; hD1 = 0,02.
Ответ: D = ⋅1,4.
Пример 7. Вычислить величину погрешности приближенного значения большего корня уравнения x 2 + px + q = 0
( p =ɺ 3,5
q =ɺ −7,8 ) , обу-
словленной погрешностями приближенных значений коэффициентов.
Решение. (См. раздел 5).
Пример 8. С каким количеством значащих цифр следует взять число
π и с какой точностью следует измерить диаметр D и высоту H цилиндра, чтобы его объем V можно было вычислить с точностью до 1 м3. Известно, что D ≈ 2,5 м и H ≈ 4,5 м.
Решение.
V=
π D2H
.
4
Обозначим Vɶ – приближенное значение объема; πɶ , Dɶ , Hɶ – приближенные значения π , D и H . hvɶ = 1 м3 по условию.
∂v D 2 H
∂v π DH
∂v π D 2
;
;
.
=
=
=
4
2
4
∂π
∂π
∂H
Тогда
4hvɶ
2hvɶ
4hvɶ
;
≤
;
h
≤
.
h
ɶ
ɶ
D
H
ɶ ɶ
3πɶ DH
3Dɶ 2 Hɶ
3πɶ Dɶ 2
Дроби вычисляем с недостатком.
4 ⋅1
4hvɶ
hπɶ ≤
≤
.
2
3⋅3 ⋅5
3Dɶ 2 Hɶ
Тогда: hπɶ ≤ 0,028; hDɶ ≤ 0,013 м; hHɶ ≤ 0,0046 м.
hπɶ ≤
146
Таким образом, для обеспечения требуемой точности результата достаточно πɶ взять не менее чем с тремя значащими цифрами, диаметр измерить с точностью до 1 см, а высоту с точностью до 0,5 см.
Пример 9. Вычислить значение A =
( x − y ) z , если известно:
x+ y
2,57 ≤ x ≤ 2,58 ; 1, 45 ≤ y ≤ 1, 46 ; 8,33 ≤ z ≤ 8,34.
Решение.
Вычисление границ будем вести с тремя значащими цифрами последовательно. Для удобства ведения вычислений составим расчетную схему:
№
1
1
2
3
4
5
6
7
Действие
2
(1) + (2)
(1) – (2)
(5) × (2)
(6) : (4)
Содержание
3
x
y
z
x+y
x–y
(x–y)z
A
HГ
4
2,57
1,45
8,33
4,02
1,11
9,24
2,28
BГ
5
2,58
1,46
8,34
4,04
1,13
9,43
2,35
Итак, 2,28 ≤ A ≤ 2,35.
Если за приближенное значение А1 числа А принять полусумму границ А1 = 2,315, то полуразность границ есть граница его погрешности
hA1 = 0,035.
Таким образом, A = 2,315 ± 0,035 или, округляя до разряда последней верной цифры, А = 2,3 ± 0,05, т.е. A =ɺ 2,3.
Пример 10. Вычислить
5,7007 ⋅ 10−1 ⋅ 2,9992 ⋅ 103
P=
.
2,0074 ⋅ 1,1 ⋅ 10−1 ⋅ 7,8 ⋅ 105
Решение.
147
Округляем сомножители в числителе и знаменателе до трех значащих цифр:
5,70 ⋅ 10−1 ⋅ 3,00 ⋅ 103
= 0,991...
2,01 ⋅ 1,1 ⋅ 10−1 ⋅ 7,8 ⋅ 105
Получаем результат с двумя значащими цифрами 0,99 .
Ответ: P ≈ 0,99 .
Пример 11. Вычислить
В = 8,7
3,7487 ⋅ 2,8 ⋅ 10−2
+
.
3,737487 ⋅ 0,007878977
Решение.
1) По правилам 3.3 и 3.4 имеем: 8,7 ≈ 2,05.
2) По правилам 3.2 и 3.4 получаем приближенное значение дроби 0,355.
3) 2,05 + 0,355. Второе слагаемое имеет на один десятичный знак больше,
чем первое, в котором один знак является запасным, поэтому округлим
сумму до десятых: В ≈ 2, 4.
Ответ: В ≈ 2, 4.
148
Лабораторная работа №1
Вариант 1
1. В качестве приближенного значения числа 4,748 взято число 4,72. Найдите погрешность этого приближенного значения.
Можно ли утверждать, что число 4,72 является приближенным значением числа 4,740 с точностью до 0,1; 0,01; 0,001?
2. Сравните качества трех измерений длины одного отрезка, если
l = 10 ± 1 м;
l = 10, 2 ± 0,1 м;
l = 10, 24 ± 0,01 м.
3. Укажите верные цифры в записи приближенного значения числа x :
a) x = 9,78 ±0,01 ;
б) x = 10,27 ± 0,03 .
4. Округлите приближенное значение числа x до первой справа верной
цифры. Укажите границy погрешности и верные цифры в записи нового
приближения числа x :
a) x = 3727 ± 10 ;
б) x = 454300 ± 750 .
5. Найдите периметр равнобедренного треугольника с основанием 3,1 см и
боковой стороной 4,2 см. Укажите точность полученного результата. (В
записи приближенных значений даны только верные цифры).
6. Расстояние между городами на карте равно 19,7 см. Масштаб карты
100 км в 1 см. Вычислите расстояние между городами, считая значения
масштаба точно известными. (В записи приближенных значений даны
только верные цифры).
7. Расстояние между двумя железнодорожными станциями 18,8 км. За какое время распространяется звук от одной станции до другой по воздуху и
по рельсам. Скорость звука в воздухе 331,63 м/сек, скорость звука в стали
5,50 ⋅103 м/сек. (В записи приближенных значений даны только верные
цифры).
149
8. Оцените абсолютную погрешность результатов вычислений значений
функции, обусловленной погрешностями исходных данных:
v ( x, y ) = lg x ⋅ ( x + y ) ; x =ɺ 25,3; y =ɺ 5, 48.
Вариант 2
1. Число 785 является приближенным значением числа x с точностью до
а) 0,1;
б) 1;
в) 10.
Укажите границы, в которых заключено число x.
2. Температуру раствора измерили тремя различными приборами и получили такие результаты:
t = 45 ± 1 C ;
t = 45,1 ± 0,1 C ;
t = 45,13 ± 0,01 C.
Сравните качества этих измерений.
3. Укажите верные цифры в записи приближенного значения числа x :
a) x = 3,454 ± 0,015;
б) x = 0,0748 ± 0,0028 .
4. Площадь Каспийского моря – 371 ⋅103 км2, площадь Аральского моря –
66,5 ⋅103 км2, площадь озера Байкал – 31,5 ⋅ 103 км2.
Найдите площадь общей водной поверхности. Укажите в ответе
только верные цифры приближения.
5. Вычислите объем куба, если ребро его равно а =ɺ 9, 2 мм. (В записи приближенных значений даны только верные цифры).
6. Вычислите: а) 18,6 : 0,83. (В записи приближенных значений даны только верные цифры).
150
7. Округлите приближенное значение числа x до первой справа верной
цифры. Укажите границy погрешности и верные цифры в записи нового
приближения числа x :
а) x = 0,3754 ± 0,0093;
б) x = 2,743 ± 0,006.
8. Оцените абсолютную погрешность результатов вычислений значений
функции, обусловленную погрешностями исходных данных.
y
; x =ɺ 0,275; y =ɺ 0,357.
v ( x, y ) = sin x +
x
Вариант 3
1. Комнатный термометр имеет шкалу с ценой деления в 1°. При измерении температуры воздуха получили 18°. Укажите границы, в которых заключено точное значение температуры.
2. Укажите точность следующих приближений, если известна относительная точность:
а) a = 106,3; ε a = 2%;
б) a = 0,274; ε a = 0,1% .
3. Укажите верные цифры в записи приближенного значения числа y :
а) y = 270 ± 1;
б) y = 374 ± 2.
4. Округлите приближенное значение числа x до первой справа верной
цифры. Укажите границу погрешности и верные цифры в записи нового
приближения числа x :
а) x = 3,07 ⋅ 102 ± 0,02 ⋅ 102 ;
б) x = 5,130 ⋅ 10−3 ± 0,024 ⋅ 10−3 .
5. Найдите разность следующих приближенных значений чисел:
151
a) 10,442 – 5,42;
б) 0,0268 – 0,008.
(В записи приближенных значений даны только верные цифры).
6. Прямоугольный брус высотой 15,5 см, шириной 2,3 дм и длиной 0,9 м
изготовлен из материала, плотность которого 3,45 г/см3. Вычислите массу
бруса. (В записи приближенных значений даны только верные цифры).
7. Вычислите: б) 0,128 : 0,75. (В записи приближенных значений даны
только верные цифры).
8. Оцените абсолютную погрешность результатов вычислений значений
функции, обусловленную погрешностями исходных данных:
f ( x, y ) = 3,8 x + x cos y;
а) x =ɺ 0,89;
y =ɺ 1,3;
б) x =ɺ −0,531;
y =ɺ 1,38.
Вариант 4
1. Пусть R = 18,5 ± 0,7. Может ли точное значение R оказаться равным
а) 18,2; б) 18,9;
в) 19,2; г) 17,9;
д) 17,8?
2. Указать точность следующих приближений, если известна относительная точность: а) a = 0, 287; ε a = 11%; б) a = 7, 24 ⋅ 105 ; ε a = 5%.
3. Укажите верные цифры в записи приближенного значения числа y:
a) y = 27454 ± 250;
б) y = 27 ± 0,5.
4. Укажите, какие из цифр в записи приближенных значений чисел верные
до и после округления до разряда единиц:
а) 2, 273 ± 0,02;
б) 12,523 ± 0,6.
152
5. Масса колбы 243 г, масса колбы с раствором 1,194 кг. Вычислить массу
раствора. Укажите границу погрешности полученного значения. (В записи
приближенных значений даны только верные цифры).
6. Даны приближенные значения чисел: а1 = 1, 45 ± 0,01; a2 = 2,280 ± 0,005;
a3 = 1,1261 ± 0,0002. Вычислите произведение этих чисел. Укажите точность полученного результата.
7. Вычислите: 3,6 ⋅ 102 : 2,7. (В записи приближенных значений даны только верные цифры).
8. Оцените абсолютную погрешность результатов вычислений значений
функции, обусловленную погрешностями исходных данных:
y (ω , u ) = ω 2 ⋅ u + 5,4cos u; u =ɺ 1,8; ω =ɺ 3,28.
Вариант 5
1. Пусть M = 2,85 ⋅ 104 ± 0,09 ⋅ 104. Может ли точное значение M оказаться
равным: а) 2,7 ⋅ 104 ; б) 3 ⋅ 104 ; в) 2,8 ⋅ 104 ; г) 2,79 ⋅ 104 ?
2. Укажите границy относительной погрешности приближения, если
а) x = 27 ± 0,1;
б) x = 0, 2787 ± 0,0024;
в) x = 1,02 ⋅ 103 ± 0,07 ⋅ 103.
3. Укажите верные цифры в записи приближенного значения числа z :
а) z = 1, 28 ⋅ 102 ± 0,01 ⋅ 102 ;
б) z = 2,3400 ⋅ 103 ± 0,0005 ⋅ 103 ;
в) z = 4, 24 ⋅ 10−3 ± 0,05 ⋅ 10−3.
153
4. Округлите приближенное значение числа x до первой справа верной
цифры. Укажите границу погрешности и верные цифры в записи нового
приближения числа x :
а) x = 0,0283 ± 0,0007;
б) x = 0, 2375 ± 0,0015.
5. Найдите сумму следующих приближенных значений и укажите ее точность: а) 0,52 + 0,038; б) 6,0 ⋅ 102 + 7,1 ⋅ 103 + 1,02 ⋅ 102. (В записи приближенных значений даны только верные цифры).
6. Вычислите произведение приближенных сомножителей:
а) 63 ⋅ 0,27; б) 7,5 ⋅ 420.
(В записи приближенных значений даны только верные цифры).
7. Вычислите: 3,6 ⋅ 10−2 : 2,7 . (В записи даны только верные цифры).
8. Оцените абсолютную погрешность результатов вычислений значений
функции, обусловленную погрешностями исходных данных:
cos x
ω ( x, y ) = −
+ x 2 y; x =ɺ 0,548; y =ɺ 1, 20.
y
Вариант 6
1. Вычислите погрешности округления следующих чисел до разряда десятков: а) 203; б) 204,79; в) 10,28; г) 14,5.
2. Вычислите относительные погрешности округления следующих чисел
до разряда единиц: а) 256,93; б) 0,78.
3. Укажите верные цифры в записи приближенного значения числа z:
a) z = 4, 275 ⋅ 106 ± 0,063 ⋅ 106 ;
б) z = 2,029 ⋅ 102 ± 0,015 ⋅ 102.
4. Укажите, какие из цифр в записи приближенных значений чисел верные
до и после округления до разряда единиц:
154
a) z = 19,8 ±0,1;
б) z = 13,75 ± 1.
5. Вычислите X = A − B + C и Y = A + B − C , если
A = 43,87 ± 0,01 ;
B = 28,10 ± 0,05;
C = 9, 450 ± 0,005.
Какова точность результата?
6. Вычислите произведение приближенных сомножителей:
a) 6,14 ⋅ 0, 405 ;
б) 103,5 ⋅ 0,204 ⋅ 0,9875.
(В записи приближенных значений даны только верные цифры).
(
)
7. Вычислите: 6,12 ⋅ 102 : 3,81 ⋅ 101 . (В записи приближенных значений даны только верные цифры).
8. Оцените абсолютную погрешность результатов вычислений значений
функции, обусловленную погрешностями исходных данных.
f ( x, y ) = 3 x + x sin y; x =ɺ 0, 253;
y =ɺ 63.
155
Лабораторная работа №2
Вариант 1
1. (Обратная задача теории погрешностей). С какой точностью следует
взять табличные значения слагаемых, чтобы вычислить сумму с точностью
до 0, 005: y = 2 + 8 + 18 + 32 ?
2. (Метод границ). Вычислить значение A =
( x − y ) z , если известно:
x+ y
2,57 ≤ x ≤ 2,58 ; 1, 45 ≤ y ≤ 1, 46; 8,33 ≤ z ≤ 8,34.
3. (Правила вычислений без учета погрешностей). Вычислить приближенные значения следующего выражения:
39, 482 ⋅ 0,0124
А= 3
.
84483 ⋅ 9,8
Вариант 2
1. (Обратная задача теории погрешностей). Приближенные значения оснований трапеции 6 м и 4 м, высоты трапеции 3 м. С какой точностью надо
измерить основания и высоту трапеции, чтобы относительная погрешность
при вычислении площади трапеции не превышала 3%?
2. (Метод границ). Вычислить значение A =
( x + y ) z , если известно:
x+z
2,57 ≤ x ≤ 2,58 ; 1, 45 ≤ y ≤ 1, 46; 8,33 ≤ z ≤ 8,34.
3. (Правила вычислений без учета погрешностей). Вычислить приближенные значения следующего выражения:
9, 443 ⋅ 55,82
А=
.
69,4 ⋅ 3 0,00035
156
Вариант 3
1. (Обратная задача теории погрешностей). С какой точностью должен
быть измерен диаметр окружности d ≈ 16 мм, чтобы можно было вычислить ее длину с точностью до 0,5% ?
2. (Метод границ). Вычислить значение A =
xy
, если известно:
( x + y) z
2,57 ≤ x ≤ 2,58 ; 1, 45 ≤ y ≤ 1, 46; 8,33 ≤ z ≤ 8,34.
3. (Правила вычислений без учета погрешностей). Вычислить приближенные значения следующего выражения:
cos π 6 + 0,75 ⋅ 0,274875
A=
.
3,7 4 ⋅ 3 0,753 − 67 ⋅ 2, 48
Вариант 4
1. (Обратная задача теории погрешностей). С какой точностью должен
быть измерен радиус круга A ≈ 7 см, чтобы можно было вычислить площадь круга с точностью до 0,5 см2?
2. (Метод границ). Вычислить значение A =
( z − x ) y , если известно:
xz
2,57 ≤ x ≤ 2,58 ; 1, 45 ≤ y ≤ 1, 46 ; 8,33 ≤ z ≤ 8,34.
3. (Правила вычислений без учета погрешностей). Вычислить значение
784181 ⋅ 0, 233
A=
.
1,64 ⋅ 3 0,67
157
Вариант 5
1. (Обратная задача теории погрешностей). Приближенные значения оснований трапеции 6 м и 4 м, высоты трапеции 3 м. С какой точностью надо
измерить основания и высоту, чтобы относительная погрешность при вычислении площади трапеции не превышала 3%?
2. (Метод границ). Вычислить значение A =
yz − x
, если известно:
y+z
2,57 ≤ x ≤ 2,58 ; 1, 45 ≤ y ≤ 1, 46; 8,33 ≤ z ≤ 8,34.
3. (Правила вычислений без учета погрешностей). Вычислить значение
A=
cos 0,25 + tg0,56
.
sin1, 25
Вариант 6
1. (Обратная задача теории погрешностей). Требуется вычислить плотность металлического тела цилиндрической формы. С какой точностью
следует измерить массу m, диаметр основания цилиндра d и высоту h, чтобы плотность вычислить с точностью до 0,1, если m ≈ 6,6 г, d ≈ 11 мм,
h ≈ 80 мм ? Плотность ρ определяется по формуле:
m
ρ = г/см3, где V – объем тела; m – масса тела.
V
2. (Метод границ). Вычислить значение A =
xz + y
, если известно:
x− y
2,57 ≤ x ≤ 2,58 ; 1, 45 ≤ y ≤ 1, 46; 8,33 ≤ z ≤ 8,34.
3. (Правила вычислений без учета погрешностей). Вычислить значение:
2,84 ⋅ 2,5
A = 5,6 +
.
3, 44 ⋅ 0,0028
158
Лабораторная работа №3
Порядок выполнения лабораторной работы №3
1. Графически отделить корень уравнения f ( x ) = 0.
2. Преобразовать уравнение f ( x ) = 0 к виду x = φ ( x ) так, чтобы в некоторой окрестности [ a, b ] корня x∗ производная φ ′ ( x ) удовлетворяла условию
φ ′ ( x ) ≤ q < 1.
3. Взяв в качестве x0 значение корня, найденное графически, уточнить его
по методу простой итерации с точностью до ε = 10−2.
4. Полученное в п. 3 значение xn+1 взять в качестве начального приближения x0 для метода Ньютона, предварительно убедившись, что x0 удовлетворяет условию f ( x0 ) f ′′ ( x0 ) > 0.
5. Продолжить уточнение корня по методу Ньютона xn+1 = xn −
f ( xn )
с
f ′ ( xn )
точностью ε = 10−5.
6. Составить программу решения уравнения методами простых итераций и
Ньютона на одном из АЯП и посчитать на ней.
Замечание. При решении задачи вместо метода простых итераций
могут быть использованы методы хорд и секущих.
159
Задания к лабораторной работе №3
Решить уравнения:
1. x3 + 3 x − 1 = 0.
16. x 4 − 2 x3 + x 2 − 2 x + 1 = 0.
2. x3 + 6 x − 5 = 0.
17. x5 + x − 3 = 0.
3. x 4 − 2 x − 1 = 0.
18. x5 − 5 x + 2 = 0.
4. x3 + 4 x + 3 = 0.
19. x 7 + x + 4 = 0.
5. x 4 + x − 3 = 0.
20. x 2 + 6 x − 5 = 0.
6. x3 − 12 x − 8 = 0.
21. 2 x + x 2 − 1,15 = 0.
7. x3 − 2 x 2 + x + 1 = 0.
22. 3− x − x 2 + 1 = 0.
8. x3 + 6 x 2 + 9 x + 2 = 0.
9. x3 − 6 x 2 + 9 x − 3 = 0.
23. 3x − x − 2 = 0.
24. ln x + x + 2 = 0
10. 2 x3 − 4 x 2 + 1 = 0.
25. 2 x 2 ln x − 1 = 0
11. x3 − 13 x 2 + 1 = 0.
26. x 2 lg x − 1 = 0 .
12. x3 − 1,96 x − 0,89 = 0.
27. shx − 12thx − 0,311 = 0.
13. x3 + 0,985 x + 0,991 = 0.
28. е − x + x 2 − 2 = 0.
14. x5 + 0,125 x − 3,116 = 0.
29. ( x − 1) − sin 2 x = 0.
15. x 4 − 2,6 x + 1,5 = 0.
30. 2lg x − ( x − 2)2 = 0.
31. е x − 2( x − 1) 2 = 0.
38. x + lg x − 0,5 = 0.
32. shx − 8 x + 1,294 = 0.
39. 4sin 3,81x − 3, 25 x = 0.
33. tgx + x − 7,277 = 0.
40. 0,7e −0,588 x − x = 0.
34. 1,8 x − sin10 x = 0.
41. e x − 10 x = 0.
42. ln ( 7,9 x ) − 8,9 x + 3 = 0.
35.
x − cos0,387 x = 0.
36. x 2 − cos π x = 0.
37. tg
π
4
x − x − 3 = 0.
2
43. tg (1,89 x ) − 2,76 x = 0.
44. x 2 − 5sin x = 0.
45. x − e −0,1x = 0.
160
Решение нулевого варианта
для лабораторных работ №4 и №5
Пример 1. Решить систему уравнений
0,6 x1 + 0,21 x2 + 1,28 x3 = 0; 

x1 + 0,6 x2 + 0,35 x3 = 1; 
0,52 x1 + 0,75 x2 + 0,6 x3 = 0.
Решение.
Применяем схему с выбором главного элемента (в данном случае
главным элементом является коэффициент 1,28). Составим таблицу, в которой i означает номер строки (в первом вертикальном столбце), k – номер
неизвестного (в последней строке), b – вектор, координаты которого составлены из свободных членов системы, σ – вектор, координаты которого
равны суммам всех коэффициентов и свободных членов соответствующих
уравнений (каждый элемент последнего столбца равен сумме чисел, стоящих в соответствующей строке: 1,28+0,21+0,6+0=2,09 и т.д. (таблица 1).
Таблица 1
i
1
2
3
k
1,28
0,35
0,6
3
0,21
0,6
0,75
2
σ
b
A
0,6
1
0,52
1
0
1
0
2,09
2,95
1,87
Первое уравнение делим на 1,28 (главный элемент) и исключаем x3
из двух остальных уравнений (таблица 2).
В таблице 2 последний столбец Σ служит для контроля вычислений
(его члены равны суммам элементов второго, третьего, четвертого и пятого
столбцов: 1+0,164+0,469+0=1,633 и т.д.).
Элементы предпоследнего столбца σ получены в результате преоб2,09
и т.д. Совразований над матрицей системы (20.1), например, 1,633 =
1,28
падение двух последних столбцов, элементы которых, как было указано,
получаются в результате различных действий, означает, что вычисления
произведены верно.
161
Рассматриваем оставшиеся два уравнения, не содержащие x3 ; в матрице, составленной из их коэффициентов, выбираем новый главный элемент (он равен 0,836), делим на него второе уравнение и исключаем x1 из
последнего уравнения (таблица 3).
Таблица 2
i
1
2
3
k
A
1
0
0
3
0
1
0
0,469
0,836
0,239
1
0,164
0,543
0,652
2
σ
b
1,633
2,379
0,890
Σ
1,633
2,379
0,891
Таблица 3
i
2
3
k
2
3
A
0,836
0,239
1
1
0
σ
b
0,543
0,652
2
0,650
0,497
1
0
2,379
0,891
1,196
–0,286
2,846
0,210
Σ
2,846
0,211
Следовательно, исходная система и соответствующая ей система
(21.7) приведены к диагональному виду, причем
x3 + 0,164 x2 + 0, 469 x1 = 0; 

0,650 x2 + x1 = 1,196; 

0, 497 x2 = −0,286;

y3 + 0,164 y2 + 0, 469 y1 = 1,633;

0,650 y2 + y1 = 2,846;


0, 497 y2 = 0,210.

Решая эти системы, находим: x 2 = −0,575, x1 = 1,570, x3 = −0,642;
y 2 = 0,423 , y1 = 2,571 , y 3 = 0,358 .
Следовательно, исходная система имеет решение:
x1 = 1,570, x 2 = −0,575, x3 = −0,642 .
Пример 2. Решить систему уравнений
162
0,80 x1 + 0, 21x2 + 1, 28 x3 + 2,00 x4 = 1;
x1 + 0,80 x2 + 0,35 x3 + 1, 20 x4 = 0;
0,52 x1 + 0,75 x2 + 0,80 x3 + 1,39 x4 = 1;
0,87 x1 + 0,92 x2 + 0,64 x3 + 0,80 x4 = 0.
Решение.
Применяем метод Гаусса с выбором главного элемента. Результаты
вычислений представим в таблице (таблица 4). Из таблицы следует, что
исходная система и система вида (21.7) приведены соответственно к системам:
x4 + 0,105 x2 + 0,640 x3 + 0, 400 x1 = 0,500; 

x2 + 0,153 x3 + 0,658 x1 = −0,478;


x3 − 0,148 x1 = 0,534;


−0, 460 x1 = 0,691;
y4 + 0,105 y2 + 0,640 y3 + 0,400 y1 = 2,645;

y2 + 0,153 y3 + 0,658 y1 = 1,333;


y3 − 0,148 y1 = 1,386;


−0,460 y1 = 0, 230.
Решая эти системы, находим
x1 = −1,502, x3 = 0,312 , x 2 = 0,462, x 4 = 0,851; y1 = −0,500 , y 3 = 1,312 ,
y 2 = 1,462 , y 4 = 1,851.
Итак, исходная система имеет решения: x1 = −1,502 , x 2 = 0,462,
x3 = 0,312 , x 4 = 0,851 .
Таблица 4
163
A
b
σ
Σ
k
4
i
I
1
2
3
4
II 1
4
3
2
III 4
3
2
1Y 2
3
2,00
1,20
1,39
0,80
1
0
0
0
0
0
0
0
0
2
0,21
0,80
0,75
0,92
0,105
0,836
0,604
0,674
1
0
0
0
0
3
1,28
0,35
0,80
0,64
0,640
0,128
–0,090
–0,418
0,153
–0,182
–0,521
1
0
1
0,80
1,00
0,52
0,87
0,400
0,550
–0,036
0,520
0,658
–0,433
0,077
–0,148
–0,460
1,00
0,00
1,00
0,00
0,500
–0,400
0,305
-0,600
–0,478
0,594
–0,278
0,534
0,691
5,29
3,35
4,46
3,23
2,645
1,114
0,783
0,176
1,333
–0,022
–0,722
1,386
0,230
2,645
1,114
0,783
0,176
1,333
–0,021
–0,722
1,386
0,231
164
Лабораторная работа №4
Методом Гаусса решить системы уравнений:
x1 + x2 + x3 = 6; 
x1 − x2 + x3 = 4; 


1.
x1 − x2 + x3 = 2; 
2. x1 + 2 x2 + 2 x3 = 2; 
3 x1 + 2 x2 + x3 = 10.
4 x1 + 3 x2 − 5 x3 = 0.
x1 + 2 x2 + 3 x3 = 5; 

2 x1 + x2 − x3 = 4; 
3.
4 x1 + 5 x2 + 5 x3 = 14.
3 x1 − 2 x2 − x3 = 7; 

4. x1 + 3 x2 + 4 x3 = 5; 
7 x1 − x2 + 2 x3 = 6.
x1 − 2 x2 + 4 x3 = 11; 

5. 2 x1 + x2 − 6 x3 = −2; 
3 x1 + 6 x2 + 2 x3 = −1.
2 x1 + 3 x2 + 4 x3 = 1; 

6. x1 − 6 x2 − 2 x3 = −1; 
4 x1 − 3 x2 + 8 x3 = −1.
3 x1 + 2 x2 + 2 x3 = 12;

7. 2 x1 − 3 x2 + 3 x3 = 14; 
4 x1 + x2 − 6 x3 = 9. 
x1 − 3 x2 + 2 x3 = 1; 

8. 2 x1 + x2 − 4 x3 = 5; 
5 x1 − 82 + 2 x3 = 8. 
x1 + 4 x2 − x3 = 2; 

9. 3 x1 − x2 + 2 x3 = 1; 
6 x1 + 11x2 − x3 = 7.
x1 + x2 = 0; 

10. 2 x1 − x2 − x3 = −1;
4 x1 + x3 = −8. 
x1 + x2 = 1; 

11. x1 − 2 x2 + x3 = 1;
x1 − 2 x3 = 2. 
x1 + x2 − x3 = 1; 

12. 3 x2 − x3 = 0; 
2 x1 − x2 − x3 = 2.
x1 + x2 + x3 + x4 = 10; 
2 x1 − x2 + 2 x3 − x4 = 2; 
13.

3 x1 + 2 x2 + x3 − 3 x4 = 2; 
4 x1 + 2 x2 − 5 x3 + 2 x4 = 1.
2 x1 − 4 x2 + x3 + x4 = 3; 
x1 + 2 x2 + 5 x3 + 2 x4 = 5;
14.

5 x1 + 3 x2 − x3 + 8 x4 = 2; 
6 x1 − x2 − 6 x3 + 9 x4 = 1. 
x1 + x2 + 3 x3 + 2 x4 = 1; 
x1 − 2 x2 − 3 x3 + 4 x4 = 2; 
15.

3 x1 + 4 x2 + 6 x3 + 8 x4 = 5; 
5 x1 − 8 x2 + 9 x3 + 4 x4 = −1.
x1 + x2 + x3 − 2 x4 = 3; 
2 x1 − x2 − 9 x3 + 4 x4 = 6; 
16.

3 x1 + 2 x2 − x3 + 5 x4 = 1; 
11x1 + x2 + 6 x3 + 15 x4 = −9.
165
x1 + x2 + x3 + x4 + x5 = 15;
2 x1 − x2 + x3 − x4 + x5 = 8;
17. 3 x1 + x2 − 2 x3 − 4 x4 − 5 x5 = 0;
4 x1 − 2 x2 − x3 + 3 x4 + 2 x5 = 17;






5 x1 + 3 x2 − 6 x3 − 2 x4 − 4 x5 = 11.
x1 + x2 + x3 = 0;
x1 − x2 + x4 = 0;
2 x1 + 2 x2 + x5 = 0;
19.
2 x1 − 2 x2 + x6 = 1;






x1 + x2 − x3 − x5 = 1; 

x1 − x2 − x4 − x6 = 1.
x1 + x2 = 1;


2 x2 − x3 = −1;

2
+
−
2
+
=
−
5;
x
x
x
x
18. 1 2

3
4
−2 x2 + x3 − 2 x4 + x5 = 6;

x1 − 2 x3 − 2 x5 = 7. 
x1 + x2 + x3 + x4 + x5 + x6 = 21;
x1 + x2 − x3 − x4 − x5 + x6 = 3;
x1 + 2 x2 + x3 − 3 x4 − 4 x5 + 5 x6 = 2;
20.
3 x1 − x2 − 2 x3 + 6 x4 + x5 − x6 = 24;






4 x1 + 3 x2 − 8 x3 + 5 x4 − 2 x5 + x6 = 19; 

2 x1 + x2 + x3 − x4 − 3 x5 − 7 x6 = 5. 
166
Лабораторная работа №5
Методом Гаусса, с помощью схемы выбора главного элемента, решить системы уравнений:
0, 40 x1 + 0, 21x2 + 1,28 x3 = 0; 

1. x1 + 0, 40 x2 + 0,35 x3 = 1; 
0,52 x1 + 0,75 x2 + 0,40 x3 = 0.
0,50 x1 + 0, 21x2 + 1,28 x3 = 0; 

2. x1 + 0,50 x2 + 0,35 x3 = 1; 
0,52 x1 + 0,75 x2 + 0,50 x3 = 0.
0,70 x1 + 0, 21x2 + 1, 28 x3 = 0; 

3. x1 + 0,70 x2 + 0,35 x3 = 1; 
0,52 x1 + 0,75 x2 + 0,70 x3 = 0.
0,7 x1 + 0,21x2 + 1, 28 x3 + 2 x4 = 1; 
x1 + 0,7 x2 + 0,35 x3 + 1, 2 x4 = 0; 
4.

0,52 x1 + 0,75 x2 + 0,7 x3 + 1,39 x4 = 1; 
0,87 x1 + 0,92 x2 + 0,64 x3 + 0,7 x4 = 0.
0,5 x1 + 0,21x2 + 1, 28 x3 + 2 x4 = 1; 
x1 + 0,5 x2 + 0,35 x3 + 1,2 x4 = 0; 
5.

0,52 x1 + 0,75 x2 + 0,5 x3 + 1,39 x4 = 1; 
0,87 x1 + 0,92 x2 + 0,64 x3 + 0,5 x4 = 0.
2 x1 + 0,3261x2 + 0,1931x3 − x4 = 1,3412;
x1 − 9 x2 + 0,3674 x3 + 3 x4 = 1,9367; 
7.

x1 + 0,6931x2 + 4,8652 x3 + x4 = 2,3654; 
x1 − x2 + 1,0392 x3 − 6,9347 x4 = 1,9362. 
99 x + 35 y + 15 z = 181,1;

9. 35 x + 15 y + 5 z = 64,7; 
15 x + 5 y + 5 z = 24,8. 
2 x1 + 3 x2 − 0,1x3 − x4 = 1,68; 
x1 − 10 x2 + 3 x3 − 0,621x4 = 0; 
6.

x1 − 0,826 x2 + 7 x3 − x4 = 1,328;
x1 − x2 + x3 − 6 x4 = 4,322. 
371x + 91y + 35 z = 391;

8. 91x + 35 y + 7 z = 43; 
35 x + 7 y + 7 z = 59. 
99 x − 35 y + 15 z = −66,9;

10. 35 x − 15 y + 5 z = −24,5; 
15 x − 5 y + 5 z = −4,5. 
115 x + 27 y + 19 z = 100;

11. 27 x + 19 y + 3 z = 6,2; 
19 x + 3 y + 6 z = 25,6. 
115 x − 27 y + 19 z = −19,3;

12. 27 x − 19 y + 3z = −25,3; 
19 x − 3 y + 6 z = −11,9. 
980 x + 224 y + 56 z = −1009,4;

13. 224 x + 56 y + 14 z = −210,4; 
56 x + 14 y + 7 z = −62,8. 
1650 x + 316 y + 66 z = 530,5;

14. 316 x + 66 y + 16 z = 110,5; 
66 x + 16 y + 5 z = 26,5. 
42,634 x + 0,398 y + 11,48 z = −50,512;

15. 0,398 x + 11,48 y + 0, 2 z = −0,154; 

11,48 x + 0,2 y + 5 z = −8,02.

167
41,8285 x + 0,001 y + 11, 25 z = 53,123;

16.
0,001x + 11, 25 y + 0,1z = 0,102; 

11,25 x + 0,1 y + 5 z = 16,3.

87,526 x − 17,576 y + 18 z = 20,148;

17. 17,576 x − 18 y + 2,6 z = 28,98; 

18 x − 2,6 y + 6 z = 11, 4.

173,343 x + 14,166 y + 27,1z = 564, 453;

18. 14,166 x + 27,1 y + 0,6 z = −105,893; 

27,1x + 0,6 y + 7 z = 111,89.

87,526 x + 17,576 y + 18 z = 37,023;

19. 17,576 x + 18 y + 2,6 z = −5,67; 

18 x + 2,6 y + 6 z = 3,2.

173,343 x − 14,166 y + 27,1z = 6,071;

20. −14,166 x + 27,1 y − 0,6 z = 125,682; 

27,1x − 0,6 y + 7 z = 48,81.

226,795 x + 0,125 y + 30,71z = 8,387;

21. 0,125 x + 30,71 y + 0,5 z = 127,108; 

30,71x + 0,5 y + 7 z = 45,04.

168
Лабораторная работа №6
Вычислить определители для следующих матриц:
4
1
A=
0

0
7 0 0
2 0 0 
,
0 7 −4 

0 −5 3 
1
0

A = 0

0
0

1
1
0
0
0
3
0
A=
5

2
3 −4 −3 
6 1 1 
,
4 2 1

3 3 2
1 3
1 −1
1 2
0 1
0 1
1
2 
1 ,

0 
1 
1
2
A=
0

0
2 −1
5 −3
0 5
0 6
1
2
A=
1

1
2 3 4
3 1
2 
,
1 1 −1 

0 −2 −6 
2
5 
,
4

5
0 1 1
 −1 0 1
A=
 −1 −1 0

 −1 −1 −1
1
1 
.
1

0
169
Лабораторная работа №7
Найти обратные матрицы для следующих матриц и уточнить их итерационным методом:
1
2
A=
1

1
1
2
2
1
1
2
A=
0

0
2 −1
5 −3
0 5
0 6
1
2
A=
1

1
2 3 4
3 1
2 
,
1 1 −1 

0 −2 −6 
3
1
3
2
2
2 
,
4

3
2
5 
,
4

5
1 1 1 1 
1 1 −1 −1
.
A=
1 −1 1 −1


1 −1 −1 1 
4
1
A=
0

0
7 0 0
2 0 0 
,
0 7 −4 

0 −5 3 
2 1
3 2
A=
1 1

 2 −1
3
0
A=
5

2
0
0
3
2
0
0 
,
4

3
3 −4 −3 
6 1 1 
,
4 2 1

3 3 2
1
0
A=
0

0
3 −5 7 
1 2 −3 
,
0 1 2

0 0 1
1
0

A = 0

0
0

1
1
0
0
0
1 3
1 −1
1 2
0 1
0 1
0 1 1
 −1 0 1
A=
 −1 −1 0

 −1 −1 −1
1
2 
1 ,

0 
1 
1
1 
,
1

0
170
Решение нулевого варианта
для лабораторной работы №8
Пример 1. Решить систему уравнений
x1 = 0,1x1 + 0,3 x 2 − 0,4 x3 − 0,7; 

x 2 = 0,2 x1 − 0,1x 2 + 0,6 x3 + 0,5; 
x3 = 0,4 x1 + 0,2 x 2 − 0,3 x3 − 0,6.
Решение.
Данная система имеет вид, удобный для применения метода итерации. Действительно, так как
3
∑ b1 j = 0,1 + 0,3 + 0,4 = 0,8;
j =1
3
∑ b2 j = 0,2 + 0,1 + 0,6 = 0,9;
j =1
3
∑ b3 j = 0,4 + 0,2 + 0,3 = 0,9;
j =1
3
max ∑ bij = 0,9 < 1,
i
j =1
условие (32.6) выполнено. Итерационный процесс сходится.
Пользуемся формулами (32.2). В качестве нулевого приближения
возьмем свободные члены: x10 = –0,7, x 20 = 0,5, x30 = −0 ,6 . Подставляя эти
значения в правые части данных уравнений, получаем первое приближение:
x11 = 0,1( −0,7 ) + 0,3 ⋅ 0,5 − 0, 4 ( −0,6 ) − 0,7 = −0,38, ( −0,6 ) − 0,7 = −0,38,
x12 = 0,2 ( −0,7 ) − 0,1 ⋅ 0,5 + 0,6 ( −0,6 ) + 0,5 = −0,05,
x13 = 0, 4 (− 0,7 ) +0, 2 ⋅ 0,5 − 0,3 ( −0,6 ) − 0,6 = −0,6.
Подставив полученные значения x11 , x12 , x13 в правые части исходных уравнений, найдем второе приближение x12 , x 22 , x32 :
x12 = 0,1 (− 0,38) +0,3 ( −0,05 ) –0, 4 ( −0,6 ) − 0,7 = –0,513,
x22 = 0, 2 (− 0,38) –0,1( −0,05 ) +0,6 ( −0,6 ) + 0,5 = 0,069,
171
x32 = 0, 4 (− 0,38) +0, 2 ( −0,05 ) –0,3 ( −0,6 ) – 0,6 = –0,582.
Аналогично находим третье, четвертое и другие приближения. Результаты вычислений сведены в таблицу (таблица 1).
Таблица 1
k
0
1
2
3
4
5
6
7
8
x1k
x2k
0,5
–0,7
–0,05
–0,38
0,069
–0,513
0,0413
–0,4978
0,02641
–0,49079
0,07585
–0,49879
0,03112
–0,49548
0,03203
–0,49637
0,03207
–0,49639
Ограничиваясь тремя десятичными знаками,
x3k
–0,6
–0,6
–0,582
–0,6165
–0,60591
–0,60926
–0,60961
–0,60909
–0,60942
получаем решение сис-
темы: x1∗ = −0,496, x 2∗ = 0,032, x3∗ = −0,609.
Пример 2. Решить систему уравнений
4 x1 − x2 + 2 x3 = 1,75; 

x1 − 5 x2 + 3 x3 = 2,5; 
2 x1 + x2 − 8 x3 = −0,25.
Решение.
В данном случае выполнено условие, что модуль каждого диагонального коэффициента каждого уравнения больше суммы модулей всех
остальных коэффициентов данного уравнения.
Данную систему приведем к виду (32.1), разрешив первое уравнение
относительно x1 , второе – относительно – x 2 , третье – относительно x 3 :
x1 = 0,25 x 2 − 0,5 x3 + 0,4375; 

x 2 = 0,2 x1 + 0,6 x3 − 0,5;
 (А)
x3 = 0,25 x1 + 0,125 x 2 + 0,03125.
Поскольку
3
3
∑ b1 j = 0 ,25 + 0 ,5 = 0 ,75; ∑ b2 j = 0 ,2 + 0 ,6 = 0 ,8;
j =1
j =1
172
3
3
∑ b3 j = 0 ,25 + 0 ,125 = 0 ,375 и max ∑ bij = 0 ,8 < 1,
i j =1
j =1
т.е. выполнено условие (32.6), то процесс итерации сходится.
В качестве нулевого приближения возьмем свободные члены системы: x10 = 0 ,4375, x 20 = −0 ,5, x30 = 0,03125.
Подставив эти значения в правые части уравнений системы (А), получим первое приближение:
x11 = 0, 25 ( −0,5 ) − 0,5 ⋅ 0,03125 + 0,4375 = 0, 296875,
x12 = 0, 2 ⋅ 0, 4375 + 0,6 ⋅ 0,03125 − 0,5 = −0,39375,
x13 = 0, 25 ⋅ 0, 4375 + 0,125 ( −0,5 ) + 0,03125 = 0,078125.
Подставив полученные значения x11 , x12 , x13 в правые части уравнений (А), получим второе приближение и т.д. Результаты вычислений представлены в таблице 2.
Седьмое и восьмое приближения имеют по три одинаковых десятичных знака. Округляя четвертый знак, получаем:
x1∗ = 0,3077, x2∗ = −0,4038, x3∗ = −0,0577.
Пример 3. Методом Зейделя решить систему уравнений примера 2.
Решение.
Таблица 2
k
x1k
x2k
x3k
0
1
2
3
4
5
6
7
8
0,4375
0,296875
0,3
0,310937
0,307402
0,3075
0,30777
0,30768
0,30769
–0,5
–0,39375
–0,39375
–0,40625
–0,40359
–0,4036
–0,4039
–0,40384
–0,40384
0,03125
0,078125
0,05625
0,057031
0,05820
0,05766
0,05768
0,05770
0,05769
173
Таблица 3
k
x1k
x2k
x3k
0
1
2
3
4
5
6
7
0
0,4225
0,29453
0,31216
0,30714
0,30787
0,30767
0,30770
0
–0,39750
–0,38878
–0,40380
–0,40329
–0,40385
–0,40382
–0,40384
0,03
0,08719
0,05628
0,05881
0,05762
0,05774
0,05769
0,05769
В качестве начального приближения возьмем x10 = 0 ,
x 20 = 0 ,
x30 = 0 ,03 . Подставляя эти значения в правую часть первого уравнения системы (А), получаем первое приближение для x11 : x11 = 0,4225. Это значение x11 используем для нахождения первого приближения x12 :
x12 = – 0,39750, которое применяется при вычислении x13 : x13 = 0,08719.
Аналогично находятся последующие приближения. Результаты приведены
в таблице (табл.3).
Следовательно, x1∗ = 0,3077, x2∗ = −0,4038, x3∗ = +0,0577.
174
Лабораторная работа №8
Методом простой итерации решить системы уравнений:
x1 = 0,3 x1 − 0,1x2 + 0,5 x3 + 1, 4; 
x1 + 2 x2 − 3 x3 = −1;


1. x2 = 0,6 x1 + 0,1 x2 + 0,1x3 − 2,3; 
2. 4 x1 − x2 + 6 x3 = 4; 
x3 = 0,5 x1 − 0,2 x2 + 0,2 x3 − 0,8.
3 x1 + 3 x2 + 5 x3 = 2.
x1 = 0,124 x1 − 0,376 x2 + 0,228 x3 + 0,875; 

3. x2 = 0,572 x1 + 0,116 x2 − 0,164 x3 − 0,235;
x3 = 0,384 x1 − 0,104 x2 + 0,126 x3 + 0,525. 
2 x1 − 3x 2 + 2 x3 = 1,75;

4. 6 x1 − 4 x2 − x3 = 1,65; 
7 x1 − 2 x2 + 4 x3 = 1,95.
x1 = 0,025 x1 + 0,074 x2 − 0,567 x3 + 0,124; 

5. x2 = 0,735 x1 − 0,015 x2 + 0,105 x3 − 0,842;
x3 = 0,328 x1 + 0,126 x2 − 0, 208 x3 + 0,056. 
x1 = 0,015 x1 − 0,128 x2 + 0,637 x3 − 0,026;

6. x2 = 0,514 x1 + 0,026 x2 − 0,321x3 + 0,125; 
x3 = 0, 425 x1 − 0, 208 x2 + 0,116 x3 − 0,048.
x1 = 0,1x1 + 0, 2 x2 − 0,3 x3 + 0,2 x4 − 0, 4; 
x2 = 0,2 x1 + 0,3 x2 − 0,1x3 − 0,1x4 + 0, 2; 
7.

x3 = 0,3 x1 − 0, 2 x2 + 0,1x3 + 0, 2 x4 − 0,1; 
x4 = 0,4 x1 + 0,1x2 + 0, 2 x3 − 0,2 x4 + 0,3.
x1 = 0,05 x1 − 0,15 x2 + 0, 25 x3 − 0,12 x4 + 0,15; 
x2 = 0,34 x1 + 0,06 x2 − 0,14 x3 − 0, 22 x4 − 0,08;
8.

x3 = 0,18 x1 − 0, 26 x2 − 0,04 x3 + 0,32 x4 + 0,12; 
x4 = 0,24 x1 + 0,16 x2 + 0,18 x3 − 0, 26 x4 + 0,36.
Методом Зейделя решить системы уравнений:
8 x1 + 2 x2 − x3 = 2,35; 
x1 + 2 x2 − 3 x3 = 1; 


9. x1 + 10 x 2 + 5 x3 = 1,40;
10. 4 x1 − x 2 + 6 x3 = 4; 
2 x1 − x2 − 4 x3 = 1,75. 
3 x1 + 3 x2 + 5 x3 = 2.
5 x1 + x2 − 2 x3 + x4 = 0, 25; 
2 x1 − 6 x2 + x3 − 2 x4 = −2,40; 
11.

3 x1 + 2 x2 − 8 x3 + 2 x4 = −1,85; 
2 x1 − 4 x2 + 3 x3 − 10 x4 = −6,90.
6 x1 + 2 x2 − x3 − 2 x4 = 0,3; 
2 x1 + 16 x2 + 3 x3 + 4 x4 = 6,4; 
12.

2 x1 − 2 x2 − 10 x3 + 4 x4 = −2,8;
x1 − 3 x2 + 2 x3 − 8 x4 = −3, 2. 
175
13.
15.
3 x + y = −0,9; 

99 x + 15 y = −66,9.
11,48 x + 5 y = −8,02;


42,634 x + 11,48 y = −50,512.
99 x − 35 y + 15 z = −66,9;

17.
7 x − 3 y + z = −4,9; 

3 x − y + z = 0,9.

14.
16.
15 x + 5 y = 24,8; 

99 x + 15 y = 181,1.
11,25 x + 5 y = 16,3;


41,8285 x + 11,25 y = 53,123.
99 x + 35 y + 15 z = 181,1;

18. 35 x + 15 y + 5 z = 64,7; 
15 x + 5 y + 5 z = 24,8. 
42,634 x + 0,398 y + 11,48 z = −50,512;

19. 0,398 x + 11, 48 y + 0,2 z = −0,154; 

11,48 x + 0,2 y + 5 z = −8,02.

41,8285 x + 0,001 y + 11, 25 z = 53,123;

20.
0,001x + 11, 25 y + 0,1z = 0,102; 

11,25 x + 0,1 y + 5 z = 16,3.

176
Решение нулевого варианта
для лабораторной работы №9
Пример 1. Найти интерполяционный многочлен Лагранжа для функции, заданной таблицей
–3
–1
1
2
x
y
8
6
4
18
Решение.
При n = 3 формула (36.4) принимает вид
( x − x1 )( x − x2 )( x − x3 )
( x − x0 )( x − x2 )( x − x3 )
+ y1
+
P3 ( x) = y0
( x0 − x1 )( x0 − x2 )( x0 − x3 )
( x1 − x0 )( x1 − x2 )( x1 − x3 )
+ y2
( x − x0 )( x − x1 )( x − x3 )
( x − x0 )( x − x1 )( x − x2 )
+ y3
.
( x2 − x0 )( x2 − x1 )( x2 − x3 )
( x3 − x0 )( x3 − x1 )( x3 − x2 )
Подставляя в эту формулу значения xk , yk , (k = 0,1, 2,3) , получаем
P3 ( x) = 8
+4
( x + 1)( x − 1)( x − 2)
( x + 3)( x − 1)( x − 2)
+6
+
(−3 + 1)(−3 − 1)(−3 − 2)
(−1 + 3)(−1 − 1)( −1 − 2)
( x + 3)( x + 1)( x − 2)
( x + 2)( x + 1)( x − 2)
+ 18
=
(1 + 3)(1 + 1)(1 − 2)
(2 + 3)(2 + 1)( x − 1)
1
1
1
= − ( x3 − 2 x 2 − x + 2) + ( x3 − 7 x + 6) − ( x3 + 2 x 2 − 5 x − 6) +
5
2
2
6
18 
 1 1 1 6
2
+ ( x3 + 3 x 2 − x − 3) =  − + − +  x3 +  − 1 +  x 2 +
5
5
 5 2 2 5
5
18 
1 7 5 6
 2
+  − + −  x +  − + 3 + 3 −  = x3 + 3 x 2 − 2 x + 2 .
5
5 2 2 5
 5
Итак, P3 ( x) = x3 + 3 x 2 − 2 x + 2 .
Пример 2. Найти интерполяционный многочлен Лагранжа для функции, заданной таблицей:
–2
–1
1
2
3
x
y
–7
–14
–2
10
28
Решение.
При n = 4 формула (36.4) примет вид
( x − x1 )( x − x2 )( x − x3 )( x − x4 )
P4 ( x) = y0
+
( x0 − x1 )( x0 − x2 )( x0 − x3 )( x0 − x4 )
177
+ y1
( x − x0 )( x − x2 )( x − x3 )( x − x4 )
+
( x1 − x0 )( x1 − x2 )( x1 − x3 )( x1 − x4 )
+ y2
( x − x0 )( x − x1 )( x − x3 )( x − x4 )
+
( x2 − x0 )( x2 − x1 )( x2 − x3 )( x2 − x4 )
+ y3
( x − x0 )( x − x1 )( x − x2 )( x − x4 )
+
( x3 − x0 )( x3 − x1 )( x3 − x2 )( x3 − x4 )
+ y4
( x − x0 )( x − x1 )( x − x2 )( x − x3 )
.
( x4 − x0 )( x4 − x1 )( x4 − x2 )( x4 − x3 )
Подставляя в эту формулу значения xk и yk , ( k = 0,1, 2, 3, 4 ), получаем искомый многочлен
P4 ( x) = (−7)
+(−14)
( x + 1)( x − 1)( x − 2)( x − 3)
+
(−2 + 1)(−2 − 1)(−2 − 2)(−2 − 3)
( x + 2)( x − 1)( x − 2)( x − 3)
( x + 2)( x + 1)( x − 2)( x − 3)
+ (−2)
+
(−1 + 2)(−1 − 1)(−1 − 2)(−1 − 3)
(1 + 2)(1 + 1)(1 − 2)(1 − 3)
+10
( x + 2)( x + 1)( x − 1)( x − 3)
( x + 2)( x + 1)( x − 1)( x − 2)
+ 28
=
(2 + 2)(2 + 1)(2 − 1)(2 − 3)
(3 + 2)(3 + 1)(3 − 1)(3 − 2)
7 4
7
( x + 5 x3 + 5 x 2 + 5 x − 6) + ( x 4 − 4 x3 − x 2 + 16 x − 12) −
60
12
2
10
− ( x 4 − 2 x3 − 7 x 2 + 8 x + 12) − ( x 4 − x3 − 7 x 2 + x + 6) +
12
12
7
7 1 5 7
 7
+ ( x 4 − 5 x 2 + 4) = x 4  − + − − +  +
10
 60 12 6 6 10 
=−
 7 7 1 5
 7 7 7 70 7 
+ x3  − + +  + x 2  − − + +
− +
 12 3 3 6 
 12 12 6 12 2 
14 
 7 28 4 5   7
+x − +
− − + −7−2−5+  =
5
 12 3 3 6   10
=
1 4 7 3 7 2 79
21
x − x + x + x− ;
6
12
3
12
2
Pn ( x) = 0,1667 x 4 − 0,5833 x3 + 2,3333 x 2 + 6,5833 x − 10,5000 .
178
Лабораторная работа №9
Найти интерполяционные многочлены Лагранжа для следующих
функций:
1.
2.
x
1
3
5
x
4
5
6
y
10
12
14
y
9
8
7
–1
1
2
3.
x
–2
–1
3
4.
x
y
12
6
2
y
10
6
13
0,3
1,2
2,1
6,1
–5,2
4,3
5.
x
–1,1
–0,2
1,3
6.
x
y
3,2
4,1
–2,2
y
7.
x
–2
–1
2
y
–12
-8
3
3
8.
x
1
2
3
4
5
y
–10
16
18
48
–1
1
2
3
20
14
9
–1
9.
x
–3
–2
–1
1
10.
x
y
6
4
2
14
y
11.
x
–3
–2
–1
1
y
7
2
–2
46
2
12.
x
–3
–2
–1
1
2
11
y
–9
–16
–3
11
36
–3
–2
–1
1
2
38
5
1
–4
9
1
2
3
–50 –24 –14 –6
10
18
13.
x
–2
–1
1
2
3
14.
x
y
5
3
–4
7
y
26
15.
x –3
–2
–1
1
2
3
y
10
16
20
8
–12
4
16.
x –3
y
–2
–1
Найти интерполяционные многочлены Лагранжа для данных функций с данными узлами:
179
17. f ( x) = e x , x1 = −3, x2 = −2, x3 = −1.
18. f ( x) = 3− x , x1 = 1, x2 = 2, x3 = 3.
19. f ( x) = chx, x1 = −1, x2 = 1, x3 = 2.
20. f ( x) = ln x, x1 = 3, x2 = 4, x3 = 5.
21. f ( x) = e− x , x1 = −1, x2 = 1, x3 = 2, x4 = 3.
22. f ( x) = ln(− x), x1 = −6, x2 = −5, x3 = −4, x4 = −3.
23. f ( x) = shx, x1 = −3, x2 = −1, x3 = 1, x4 = 3.
24. f ( x) = 2 x , x1 = 0, x2 = 1, x3 = 2, x4 = 3.
Найти интерполяционные многочлены Лагранжа для данных функций с данными узлами и оценить погрешность интерполяционных полиномов в указанных точках:
25. f ( x) = e− x , x1 = 1, x2 = 2, x3 = 3; при x = 1,5 .
26. f ( x) = chx, x1 = 1, x2 = 2, x3 = 3; при x = 1,5 .
27. f ( x) = cos
π
1
2
5
x, x1 = , x2 = , x3 = 1; при x = .
4
3
3
9
28. f ( x) = 3x , x1 = −4, x2 = −3, x3 = −2, x4 = −1; при x = 2,5 .
29. f ( x) = e x , x1 = 1, x2 = 2, x3 = 3, x4 = 4; при x = 2,5.
30. f ( x) = ln x, x1 = 4, x2 = 5, x3 = 6, x4 = 7; при x = 5,5.
Найти интерполяционные многочлены Лагранжа, дающие значения
следующих функций в указанных промежутках с тремя верными десятичными знаками:
31. f ( x) = lg x, в промежутке [14,15].
32. f ( x) = 2− x ,
в промежутке [4,5].
33. f ( x) = shx,
в промежутке [−2, −1].
34. f ( x) = chx,
в промежутке [−3, −2].
35. f ( x) = e x ,
в промежутке [−4, −3].
36. f ( x) = ln x,
в промежутке [8,9].
180
Решение нулевого варианта
для лабораторной работы №10
Пример 1. Найти интерполяционный многочлен Ньютона для функции
2
4
5
x
y
1
15
28
Решение.
В данном случае:
x0 = 2, x1 = 4, x2 = 5, y0 = 1, y1 = 15, y2 = 28,
f ( x1, x0 ) =
y1 − y0
y −y
= 7, f ( x2 , x1 ) = 2 1 = 13,
x1 − x0
x2 − x1
f ( x2 , x1, x0 ) =
f ( x2 , x1 ) − f ( x1, x0 )
= 2.
x2 − x0
Интерполяционный многочлен Ньютона
P2 ( x) = y0 + ( x − x0 ) f ( x1, x0 ) + ( x − x0 )( x − x1 ) f ( x2 , x1, x0 )
примет вид P2 ( x) = 1 + ( x − 2) ⋅ 7 + ( x − 2)( x − 4) ⋅ 2 , т.е. P2 ( x) = 2 x 2 − 5 x + 3 .
Пример 2. Найти многочлены Ньютона «интерполирование вперед»
и «интерполирование назад» для функции
x
y
0
5
1
1
2
7
3
29
и значение функции при x = 0,5 и x = 2,5 .
Решение.
В данном случае узлы интерполирования x0 = 0, x1 = 1 , x2 = 2, x3 = 3
являются равностоящими. Составим таблицу конечных разностей различных порядков.
y
∆y
x
∆ 2 y ∆3 y
0
1
2
3
5
1
7
29
−4
6
22
10
16
6
181
Числа верхней (нисходящей) строки этой таблицы (подчеркнуты одной чертой) входят множителями в коэффициенты многочлена Ньютона
«интерполирование вперед»; формула (38.4) примет вид
−4
10
6
PB ( x) = 5 + ( x − 0) +
(
x
−
0)
x
−
1
+
( x − 0)( x − 1)( x − 2) =
(
)
1
2!12
3!13
= 5 − 4 x + 5 x( x − 1) + x( x − 1)( x − 2).
Формула Ньютона «интерполирование назад» запишется
16
6
PH ( x) = 29 + 22( x − 3) + ( x − 3)( x − 2) + ( x − 3)( x − 2)( x − 1) =
2!
3!
= 29 + 22( x − 3) + 8( x − 3)( x − 2) + ( x − 3)( x − 2)( x − 1).
Значение функции при x = 0,5 найдем с помощью первого многочлена:
f (0,5) = PB (0,5) = 5 − 4 ⋅ 0,5 + 5 ⋅ 0,5(−0,5) + 0,5(−0,5)(−1,5) = 2,125 .
Значение функции при x = 2,5 – с помощью второго многочлена:
f (2,5) = PH (2,5) = 29 + 22(−0,5) + 8(−0,5)(0,5) + (−0,5) ⋅ 0,5 ⋅ (1,5) = 15,625.
Замечание. Построенные многочлены отличаются только формой.
Раскрывая скобки и приводя подобные члены, получаем один и тот же
многочлен в обычной форме: P3 ( x) = x3 + 2 x 2 − 7 x + 5 .
182
Лабораторная работа №10
Найти интерполяционные многочлены Ньютона для следующих
функций:
1.
2.
x
2
4
5
x
–3
–2
–1
y
1
15
28
y
8
14
23
3.
4.
x
1
3
5
x
–1
2
5
y
–4
–16
–47
y
16
7
–3
5.
6.
x
1
3
4
x
–2
1
3
y
–4
–12
5
y
6
10
13
7.
8.
x
–3
–1
1
2
x
–1
1
2
3
y
8
6
4
18
y
13
1
7
29
9.
10.
x
–2
–1
0
1
x
1
2
3
5
y
12
3
–1
5
y
–18
–11
–1
6
11.
12.
x
–4
–1
2
5
x
–2
–1
1
2
y
–26
–17
–3
14
y
21
17
5
3
13.
14.
x
–2
–1
0
1
2
x
–2
–1
1
2
3
y
12
3
–1
5
7
y
21
17
5
3
–4
15.
16.
x
–3
–2
–1
0
1
x
–4
–2
0
2
4
y
–34 –21 –10
3
11
y
43
37
25
–4
–13
17.
x
18.
–3
–2
–1
0
1
2
x
–3
–2
–1
1
2
3
183
y
–27
–16
–5
7
15
21
y
19
11
4
7
12
22
Найти интерполяционные многочлены Ньютона для данных функций с данными узлами:
19. f ( x) = e − x , x1 = 1, x2 = 2, x3 = 3.
20. f ( x) = e x , x1 = −2, x2 = −1, x3 = 0.
21. f ( x) = ln x, x1 = 5, x2 = 6, x3 = 7.
22. f ( x) = chx, x1 = −2, x2 = −1, x3 = 0.
23. f ( x) = 3x , x1 = 1, x2 = 2, x3 = 3, x4 = 4.
24. f ( x) = 3− x , x1 = 0, x2 = 1, x3 = 2, x4 = 3.
25. f ( x) = 2 x , x1 = −3, x2 = −2, x3 = −1, x4 = 0.
26. f ( x) = 2− x , x1 = −4, x2 = −3, x3 = −2, x4 = −1.
27. f ( x) = ln(− x), x1 = −7, x2 = −6, x3 = −5, x4 = −4.
28. f ( x) = shx, x1 = −2, x2 = −1, x3 = 0, x4 = 1.
Найти интерполяционные многочлены Ньютона для данных функций с данными узлами и оценить погрешность интерполяционных многочленов в указанных точках:
29. f ( x) = 2 x , x1 = 1, x2 = 2, x3 = 3, x4 = 4,
в точке x = 3,5 .
30. f ( x) = shx, x1 = −2, x2 = −1, x3 = 0, x4 = 1,
в точке x = 0,5 .
31. f ( x) = chx, x1 = −2, x2 = −1, x3 = 0,
в точке x = −1,5 .
π
1
2
x, x1 = , x2 = , x3 = 1,
4
3
3
33. f ( x) = ln x, x1 = 3, x2 = 4, x3 = 5,
32. f ( x) = sin
5
в точке x = .
9
в точке x = 4,5 .
π
1
2
1
x, x1 = 0, x2 = , x3 = , x4 = 1, в точке x = .
4
3
3
9
Найти интерполяционные многочлены Ньютона, дающие значения
следующих функций в указанных промежутках с четырьмя верными знаками:
35. f ( x) = lg x,
[15,16].
36. f ( x) = ln x, [6,7].
34. f ( x) = cos
37. f ( x) = e− x ,
[4,5] .
38. f ( x) = e x ,
[−3, −2] .
39. f ( x) = shx,
[1, 2] .
40. f ( x) = chx,
[2,3].
184
Найти многочлены Ньютона для «интерполирования назад»
41. f ( x) = e x , x1 = 1, x2 = 2, x3 = 3.
42. f ( x) = lg x, x1 = 15, x2 = 16, x3 = 17.
43. f ( x) = 2− x , x1 = 1, x2 = 2, x3 = 3, x4 = 4.
44. f ( x) = 3x , x1 = 0, x2 = 1, x3 = 2, x4 = 4.
185
Решение нулевого варианта
для лабораторной работы №11
Пример 1. В результате измерений зависимых величин x и y получены следующие данные:
1
2
3
4
5
6
7
x
y
0,5
0,5
1
2
3
5
8
Определить вид зависимости между величинами x , y и найти параметры эмпирической формулы.
Решение.
В прямоугольной декартовой системе координат построим точки
M1 (1;0,5) , M 2 (2;0,5) , M 3 (3;1) , M 4 (4;2) , M 5 (5;3) , M 6 (6;5) , M 7 (7;8) ; они
незначительно уклоняются от точек дуги некоторой параболы. Следовательно, мы можем предположить, что зависимость между x и y выражается формулой y = ax 2 + bx + c .
Результаты измерений и итоги их обработки занесем в таблицу.
Таблица 1
i
xi
xi2
xi3
xi4
yi
xi yi
xi2 yi
1
2
3
4
5
6
7
1
2
3
4
5
6
7
28
1
4
9
16
25
36
49
140
1
8
27
64
125
216
343
784
1
16
81
256
625
1296
2401
4676
0,5
0,5
1
2
3
5
8
20
0,5
1
3
8
15
30
56
113,5
0,5
2
9
32
75
180
392
690,5
Σ
Система уравнений (42.5) принимает вид
4676a + 784b + 140c = 690,5

784a + 140b + 28c = 113,5.
140a + 28b + 7c = 20 
Решая систему, находим: a = 0,046, b = 0,796, c = −1, 234, т.е.
y = 0,046x 2 + 0,796x − 1, 234.
186
Пример 1. Результаты измерений величин x и y заданы таблицей
x
y
–1
–9,8
0
–3,1
1
0,3
2
–1,2
3
–6,1
Таблица 2
4
5
–14,7
–28,2
Определить вид зависимости между величинами и найти параметры
эмпирической формулы.
Решение.
Находим разности первого порядка ∆yk = yk +1 − yk и разности второго порядка ∆ 2 yk = ∆yk +1 − ∆yk :
∆y1 = y2 − y1 = 6,7, ∆y2 = 3, 4, ∆y3 = −1,5; ∆y4 = −4,9, ∆y5 = −8,6, ∆y6 = −13,5;
∆ 2 y1 = ∆y2 − ∆y1 = −3,3, ∆ 2 y2 = −4,9, ∆ 2 y3 = −3, 4; ∆ 2 y4 = −3,7, ∆ 2 y5 = −4,2.
Здесь первые разности монотонно убывают, а вторые колеблются в
сравнительно небольшом промежутке. Отсюда следует, что данные величины связаны квадратичной зависимостью, т.е. y = ax 2 + bx + c.
Результаты измерений и итоги их обработки занесем в таблицу
Таблица 3
i
xi
xi2
xi3
xi4
yi
xi yi
xi2 yi
1
2
3
4
5
6
7
–1
0
1
2
3
4
5
14
1
0
1
4
9
16
25
56
–1
0
1
8
27
64
125
224
1
0
1
16
81
256
625
980
–9,8
–3,1
0,3
–1,2
–6,1
–14,7
–28,2
–62,8
9,8
0
0,3
–2,4
–18,3
–58,8
–141,0
–210,4
–9,8
0
0,3
–4,8
–54,9
–233,2
–705,0
–1007,4
Σ
Система (42.5) принимает вид
187
980a + 224b + 56c = −1007,4 

224a + 56b + 14c = −210,4  .
56a + 14b + 7c = −62,8
Эта система имеет решение: a = −1,974, b = 4,867, a = −2,914. Искомая зависимость между данными величинами приближённо выражается
формулой y = −1,974x 2 + 4,867x − 2,914.
188
Лабораторная работа №11
Найти параметры эмпирической формулы y = ax 2 + bx + c по результатам следующих измерений:
1.
x
y
–3
–6,7
–2
–2,2
–1
1,1
0
2,2
1
1,1
2.
x
y
–2,1
–5,83
–1,1
0,56
0,1
2,94
1,2
0,14
2,1
–5,83
3.
x
y
1
2,9
2
8,9
3
19,1
4
33,2
5
50,8
4.
x
y
1
1,5
2
3
3
5
4
7
6
10
5.
x
y
–2,1
4,4
–1,1
0,3
0
–2
1,1
–1,8
2,1
0,2
2,6
2,1
6.
x
y
–2
–4,3
–1
–5,2
0
–4
1
–1,1
2
4,2
–3
–1,4
7.
x
y
8.
x
y
–2
6,8
–2
6,8
–1
5,7
–1
0,9
0
2,5
0
–1,1
1
1,6
1
1,1
2
3,1
2
7,2
3
5,9
3
16,7
9.
x
y
–3,1
–16,35
–2,1
–2,04
–1,1
8,38
0
15,19
1,1
16,74
2,1
14,27
2,5
12,62
10.
x
y
–2,5
38,12
–2,1
30,76
–1,1
15,18
0
5,19
1,1
2,04
2,1
5,47
3,1
15,15
189
11.
x
y
–2
20
–1
10
0
3
1
2
2
3
3
7
4
14
12.
x
y
–1
–9,8
0
–3,1
1
0,3
2
–1,2
3
–6,1
4
–14,7
5
–28,2
13.
x
y
–3,1
–16,35
–2,1
–2,06
–1,1
8,38
0,5
16,02
1,1
16,74
2,1
14,27
3,1
8,04
14.
x
y
0,1
0,2
0,3
3,230 3,253 3,261
0,4
0,5
0,6
0,7
0,8
3,252 3,228 3,181 3,127 3,059
190
Решение нулевого варианта
для лабораторной работы №12
8
Пример 1. По формуле трапеций вычислить
dx
∫ x + 1 , приняв n = 8 .
0
Решение.
Находим h, xk , yk с помощью формул:
h=
b−a
, xk = a + kh, yk = f ( xk ), ( k = 0,1, 2..., n ) .
n
Отсюда
1
h = 1, xk = k , yk =
, (k = 0,1, 2,...,8),
xk + 1
(44.7)
x0 = 0, x1 = 1, x 2 = 2, x3 = 3, x4 = 4, x5 = 5, x6 = 6, x7 = 7, x8 = 8,
1
1
1
1
1
1
1
1
y0 = 0, y1 = , y2 = , y3 = , y4 = , y5 = , y6 = , y7 = , y8 = .
2
4
3
5
6
7
8
9
В соответствии с формулой (44.5) получаем:
8
dx
1
1
1
1
1
1
1
1
1
∫ x + 1 ≈ 1 ⋅  2 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 18  ≈ 2, 28 .
0
5
Пример 2. По формуле трапеций вычислить
∫
0
dx
при n = 5 .
x+4
Решение.
С помощью формулы (44.7) находим h, xk , yk (при вычислении yk
пользуемся таблицами квадратных корней и чисел):
1
h = 1, xk = k , yk = f ( xk ) =
, (k = 0, 1, 2, 3, 4, 5),
xk + 4
x0 = 0, x1 = 1, x2 = 2, x3 = 3, x4 = 4, x5 = 5;
y0 =
1
1
1
1
1
≈ 0,377,
= , y1 =
≈ 0,447, y2 =
≈ 0,409, y3 =
4 2
1+ 4
2+4
3+ 4
1
1
1
y4 =
≈ 0,353, y5 =
= .
4+4
5+4 3
По формуле (44.5) получаем:
191
5
∫
0
dx
≈ 1 ⋅ (0, 250 + 0,447 + 0, 409 + 0,377 + 0,353 + 0,166) = 2,002 .
x+4
3
Пример 3. С точностью до 0,01 вычислить
dx
∫ x − 1.
2
Решение.
Для определения числа n отрезков, на которые нужно разбить промежуток интегрирования, воспользуемся формулой Rn ≤
(b − a ) 3
M2 .
12n 2
(b − a )3
Неравенство Rn ≤ ε будет выполнено, если
M 2 ≤ ε , откуда
12n 2
(b − a )3 M 2
.
n≥
12ε
Так как
(44.8)
f ( x) =
1
1
2
, f ′( x) = −
, f ′′( x) =
,
2
x −1
( x − 1)
( x − 1)3
M 2 = max f ′′( x) = max
a≤ x≤b
2≤ x≤3
2
= 2,
( x − 1)3
то
n≥
(3 − 2)3 ⋅ 2
1 ⋅ 2 ⋅ 100
50
=
=
> 16 = 4 .
12 ⋅ 0,01
12
3
Поскольку n – число целое, то можно взять n = 5. Определив n, найдем: h = 0, 2, xk = 2 + 0, 2k , ( k = 0,1,...,5 ) , x0 = 2, x1 = 2, 2, x2 = 2, 4,
x3 = 2,6,
x4 = 2,8,
x5 = 3.
Находим
yk =
1
:
xk − 1
y0 = 1,
y1 = 0,833,
y2 = 0,714, y3 = 0,625, y4 = 0,556, y5 = 0,500. (Вычисления ведем с одним
запасным десятичным знаком).
По формуле (44.5) получаем:
3
dx
y
∫ x − 1 ≈ h  20 + y1 + y2 + y3 + y4 +
2
y5 
 = 0,2 ⋅ 3,478 = 0,6956 .
2 
192
Лабораторная работа №12
По формуле трапеций, приняв n = 10 , вычислить следующие интегралы при указанных значениях параметра p :
1
1.
dx
∫ x+ p;
1) p = 1; 2) p = 2; 3) p = 3; 4) p = 4; 5) p = 5; 6) p = 6;
0
7) p = 7; 8) p = 8; 9) p = 9; 10) p = 10.
1
2.
dx
∫ 1 + px ;
0
1) p = 1; 2) p = 2; 3) p = 3; 4) p = 4; 5) p = 5; 6) p = 6;
7) p = 7; 8) p = 8; 9) p = 9; 10) p = 10.
1
3.
dx
∫ x2 + p2 ;
0
1) p = 1; 2) p = 2; 3) p = 3; 4) p = 4; 5) p = 5; 6) p = 6;
7) p = 7; 8) p = 8; 9) p = 9; 10) p = 10.
1
4.
dx
∫ x3 + p ;
0
1) p = 1; 2) p = 2; 3) p = 3; 4) p = 4; 5) p = 5; 6) p = 6;
7) p = 7; 8) p = 8; 9) p = 9; 10) p = 10.
1
5.
dx
∫ 1 + px3 ;
1) p = 1; 2) p = 2; 3) p = 3; 4) p = 4; 5) p = 5; 6) p = 6;
0
7) p = 7; 8) p = 8; 9) p = 9; 10) p = 10.
На сколько частей нужно разбить промежуток интегрирования, чтобы
по формуле трапеций с точностью до 0,1 вычислить следующие интегралы?
3
6. ∫ ln 2xdx .
1
1,2
9.
∫ sin xdx .
0
1,2
7.
∫ e dx .
x
0
8.
dx
∫x+2.
0
1
10. ∫ e dx .
3x
0
3
4
11. ∫ x(ln x − 1)dx .
1
На сколько частей нужно разбить промежуток интегрирования, чтобы по формуле трапеций с точностью до 0,001 вычислить следующие интегралы:
193
π
3
dx
12. ∫ .
x
1
1,2
15. ∫ e dx .
x
1,2
13.
∫ sin xdx .
2
14.
0
0
3
16. ∫ ln 2xdx .
0
x
∫ cos 2 dx .
4
17. ∫ x(ln x − 1)dx .
1
1
По формуле трапеций с точностью до 0,01 вычислить интегралы:
5
dx
18. ∫
.
x
+
2
0
2
1.2
dx
19. ∫ .
x
1
20.
∫ e dx .
x
0
π
3
21. ∫ ln 2xdx .
1
4
24. ∫ x(ln x − 1)dx .
1,2
2
x
22. ∫ cos dx .
2
0
2
25. ∫ e
1
− x2
23.
∫ sin xdx .
0
1,2
dx .
26.
0
dx
∫ 1 + x2 .
0
По формуле трапеций вычислить интегралы при указанных значениях параметра p :
1
x 2 p dx
;
27. ∫
2 2
(1
−
x
−
x
)
0
1) p = 1; 2) p = 2; 3) p = 3; 4) p = 4; 5) p = 5.
0,4
p + x 2 sin x
28. ∫ 2
dx;
x
0,
2
x
0,51
−
+
−0,2
1) p = 0,05; 2) p = 0,1; 3) p = 0,15; 4) p = 0,2;
5) p = 0,25; 6) p = 0,3; 7) p = 0,35; 8) p = 0,4;
9) p = 0,45; 10) p = 0,5; 11) p = 0,55;
12) p = 0,6; 13) p = 0,65; 14) p = 0,7;
15) p = 0,75; 16) p = 0,8.
194
Решение нулевого варианта
для лабораторной работы №13
Пример 1. По формуле парабол вычислить интеграл
1
dx
∫ 1 + x3
при 2n = 10 .
0
Решение.
Составим таблицу значений подынтегральной функции, необходимых для вычисления данного интеграла.
Таблица 1
k
xk
xk3
yk ( k – нечетное)
1
2
3
4
5
6
7
8
9
10
0,1
0,2
0,3
0,4
0,5
0,6
0,7
0,8
0,9
1
0,001
0,008
0,027
0,064
0,125
0,216
0,343
0,512
0,729
1
0,99900
0,99206
0,97371
0,93985
0,88889
0,82237
0,74460
0,66138
0,57837
Σ
Так
4,18457
3,41566
4( y1 + y3 + y5 + y7 + y9 ) = 4 ⋅ 4,18457 = 16,73828,
h = 0,1,
как
yk ( k – четное)
y0 = 1, y10 = 0,5 по формуле (45.3) находим
1
dx
h
∫ 1 + x3 ≈ 3 [ y0 + 4( y1 + y3 + y5 + y7 + y9 ) + 2( y2 + y4 + y6 + y8 ) + y10 ] =
0
1
(1 + 16,73828 + 6,83132 + 0,5) = 0,83565 .
30
Пример 2. По формуле парабол вычислить интеграл
=
1
sin x
∫ x dx при 2n = 10 .
0
Решение.
Составим таблицу соответствующих значений функции.
195
Таблица 2
k
xk
sin xk
yk ( k – нечетное)
1
2
3
4
5
6
7
8
9
10
0,1
0,2
0,3
0,4
0,5
0,6
0,7
0,8
0,9
1
0,09985
0,19867
0,29552
0,38942
0,47943
0,56464
0,64422
0,71736
0,78333
0,84147
0,99850
yk ( k – четное)
0,99335
0,98507
0,97355
0,95886
0,94107
0,92031
0,89670
0,87037
Σ
Поскольку h = 0,1,
4,73311
3,80467
4( y1 + y3 + y5 + y7 + y9 ) = 4 ⋅ 4, 473311 = 18,93244,
2( y2 + y4 + y6 + y8 ) = 7,60934, y0 + y10 = 1 + 0,84147 = 1,84147, по формуле
(45.3) получаем
1
h
sin x
dx ≈  y0 + y10 + 4 ( y1 + y3 + y5 + y7 + y9 ) + 2 ( y2 + y4 + y6 + y8 )  =
x
3
0
∫
1
(1,84147 + 18,93244 + 7,60934 ) = 0,94611.
30
Пример 3. По формуле параболе с точностью до 0,0001 вычислить
=
1
dx
∫ 1 + x2 .
0
Решение.
Воспользуемся формулой
Rn ( f ) ≤
(b − a )5
180 ( 2n )
4
⋅ M 4 , где M 4 = max f IV ( x) .
a ≤ x ≤b
Неравенство Rn ( f ) ≤ ε будет выполнено, когда
2n ≥
(b − a )5 ⋅ M 4
.
180ε
(b − a )5 ⋅ M 4
≤ ε , т.е.
180 ⋅ (2n) 4
(45.6)
196
Найдем значение M 4 = max f IV ( x) .
a ≤ x ≤b
Так
как
1
f ( x) =
,
1 + x2
2x
,
f ′( x) = −
(1 + x 2 ) 2
1 − 3x 2
f ′′( x) = −2 ⋅
,
(1 + x 2 )3
24( x − x3 )
24(5 x 4 − 10 x 2 + 1)
IV
f ′′′( x) =
, f ( x) =
, то M 4 = max f IV ( x) = 24 .
2 4
2 5
0≤ x≤1
(1 + x )
(1 + x )
(Максимум модуля четвертой производной найден с помощью производной f V ( x) =
−240 x(3 x 4 − 10 x 2 + 3)
).
(1 + x 2 )6
Подставив в формулу (45.6) значения входящих в нее величин a = 0,
b = 1, M = 24, ε = 0,0001, получим
(1 − 0)5 ⋅ 24
2n ≥
≈ 6,07 .
180 ⋅ 0.0001
Поскольку 2n – число целое и четное, то можно взять 2n = 8 . Замеb − a 1− 0
=
= 0,125, y0 = 1, y8 = 0,5, составляем таблицу значая, что h =
2n
8
1
.
чений yk =
1 + xk2
4
Таблица 3
k
xk
xk
1
2
3
4
5
6
7
8
0,125
0,250
0,375
0,500
0,625
0,750
0,875
1,000
1,01563
1,06250
1,14063
1,25000
1,39063
1,56250
1,76563
2
yk ( k – нечетное)
Σ
0,98461
0,87670
0,71910
yk ( k – четное)
0,94118
0,80000
0,64000
0,56637
3,14678
2,38118
По формуле (45.3) получаем
1
dx
h
∫ 1 + x2 ≈ 3 [ y0 + 4( y1 + y3 + y5 + y7 ) + 2( y2 + y4 + y6 ) + y8 ] =
0
197
1
(1 + 12,58712 + 4,76236 + 0,5) = 0,785395.
24
198
Лабораторная работа №13
По формулам парабол, приняв 2n = 10 , вычислить интегралы при
указанных значениях параметра p :
1
1.
dx
∫ 1 + px ;
1) p = 1; 2) p = 2; 3) p = 3; 4) p = 4; 5) p = 5; 6) p = 6;
0
7) p = 7; 8) p = 8; 9) p = 9; 10) p = 10.
1
2.
dx
∫ x+ p;
1) p = 1; 2) p = 2; 3) p = 3; 4) p = 4; 5) p = 5; 6) p = 6;
0
7) p = 7; 8) p = 8; 9) p = 9; 10) p = 10.
1
3.
dx
∫ 1 + px 2 ;
0
1) p = 1; 2) p = 2; 3) p = 3; 4) p = 4; 5) p = 5; 6) p = 6;
7) p = 7; 8) p = 8; 9) p = 9; 10) p = 10.
1
4.
dx
∫ x2 + p2 ;
1) p = 1; 2) p = 2; 3) p = 3; 4) p = 4; 5) p = 5; 6) p = 6;
0
7) p = 7; 8) p = 8; 9) p = 9; 10) p = 10.
1
5.
dx
∫ x3 + p ;
1) p = 1; 2) p = 2; 3) p = 3; 4) p = 4; 5) p = 5; 6) p = 6;
0
7) p = 7; 8) p = 8; 9) p = 9; 10) p = 10.
1
6.
dx
∫ 1 + px3 ;
0
1) p = 1; 2) p = 2; 3) p = 3; 4) p = 4; 5) p = 5; 6) p = 6;
7) p = 7; 8) p = 8; 9) p = 9; 10) p = 10.
1
7.
cos x
∫ 1 + px dx;
1) p = 1; 2) p = 2; 3) p = 3; 4) p = 4; 5) p = 5; 6) p = 6;
0
7) p = 7; 8) p = 8; 9) p = 9; 10) p = 10.
По формуле парабол, приняв 2n = 10 , вычислить интегралы:
2
sin x
dx .
8. ∫
x
0
2
sin x
9. ∫
dx .
+
x
1
0
1
10.
dx
∫ x2 + 9 .
0
199
1
3
dx
11. ∫ 3
.
x
+
3
0
12.
∫
4
2
x + 1dx .
13.
∫
dx
.
2
x
+
1
0
0
На сколько частей нужно разбить промежуток интегрирования, чтобы вычислить данные интегралы с указанной точностью ε k ?
π
2
14.
∫ sin xdx,
ε1 = 0,001, ε 2 = 0,0001, ε 3 = 0,00001, ε 4 = 0,000001.
0
2
15. ∫ e x dx, ε1 = 0,001, ε 2 = 0,0001, ε 3 = 0,00001.
1
π
2
16.
x
cos
∫ 2 dx, ε1 = 0,0001, ε 2 = 0,00001, ε 3 = 0,000001.
0
3
17.
dx
∫ x + 2 , ε1 = 0,001, ε 2 = 0,0001, ε 3 = 0,00001.
0
3
18. ∫ ln 2 xdx, ε1 = 0,001, ε 2 = 0,0001, ε 3 = 0,00001.
1
4
19. ∫ x(ln x − 1)dx, ε1 = 0,0001, ε 2 = 0,00001, ε 3 = 0,000001.
3
С точностью до 0,001 вычислить интегралы:
π
π
2
2
20.
2
0
1
x
cos
∫ 2 dx .
0
3
3
4
∫ sin xdx .
21. ∫ e x dx .
dx
23. ∫
.
x
+
2
0
24. ∫ ln 2xdx .
1
22.
25. ∫ x(ln x − 1)dx .
3
По формуле парабол, приняв 2n = 10 , вычислить интегралы при указанных значениях параметра p :
1
2 3
(0,05e0,8 p x − p 4 x 6 )2
26. ∫
dx; 1) p = 0; 2) p = 0,05; 3) p = 0,1; 4) p = 0,15;
2
5
+
−
0,
4
0,03
p
0,05
x
−1
5) p = 0,2; 6) p = 0,25; 7) p = 0,3;
8) p = 0,35; 9) p = 0,4; 10) p = 0,45;
200
11) p = 0,5; 12) p = 0,55; 13) p = 0,6;
14) p = 0,65; 15) p = 0,7; 16) p = 0,75;
17) p = 0,8; 18) p = 0,85; 19) p = 0,9;
20) p = 0,95.
201
Решение нулевого варианта
для лабораторной работы №14
Пример 1. С помощью метода Эйлера найти значения решения
уравнения y′ = y + x 2 , удовлетворяющего условию y (0) = 1 в первых пяти
точках отрезка [0; 0,5] при h = 0,1.
Решение.
Поскольку xk = x0 + kh , где k = 0,1, 2,…, то x1 = 0,1 , x2 = 0,2 , x3 = 0,3 ,
x4 = 0,4 . Значения искомой функции y = y ( x) , удовлетворяющей условиям
данной задачи Коши, находим по формуле (50.5). Результаты вычислений
сведены в таблицу.
Таблица 1
hf ( xi , yi ) =
yi +1 = yi +
xi
yi
i
xi2
f ( xi , yi ) = yi + xi2
= 0,1( yi + xi2 ) + hf ( xi , yi )
0
1
2
3
4
0
0,1
0,2
0,3
0,4
0
0,01
0,04
0,09
0,16
1
1,1
1,211
1,3361
1,4787
1
1,11
1,251
1,4261
1,6387
0,1
0,111
0,1251
0,1426
0,1639
1,1
1,211
1,3361
1,4787
1,6426
Замечание. Точное решение уравнения y′ = y + x 2 , удовлетворяющее
условию y (0) = 1 , выражается формулой y = 3e x − x 2 − 2 x − 2 , следовательно,
y (0, 4) = 3e0,4 − (0, 4) 2 − 2(0,4) − 2 = 1,5154 .
Пример 2. Найти решение уравнения y′ = 2 x − y , для которого
y (1) = 1 , в пяти точках отрезка [1, 2], приняв h = 0,1. Полученные значения
уточнить с помощью итерационной обработки по формуле (т.е. по формуле метода Эйлера-Коши)
h
yi(+k1) = yi + [ f ( xi , yi ) + f ( xi+1, yi(+k1−1) )] .
(50.7)
2
Решение.
По формуле (50.5) находим искомые значения решения.
202
yi
i
0
1
2
3
4
xi
1
1,1
1,21
1,329
1,4561
Значения y1 ,
2 xi
2 xi − yi
Таблица 2
0,1(2 xi − yi )
yi + 1
1
2
1
0,1
1,1
1,1
2,2
1,1
0,11
1,21
1,2
2,4
1,19
0,119
1,329
1,3
2,6
1,271
0,1271
1,4561
1,4
2,8
1,3439
0,1344
1,5905
y2 , y3 , y4 , y5 , полученные методом Эйлера, уточняем
по методу Эйлера-Коши, результаты представлены в таблице.
Таблица 3
i
0
1
2
3
4
k
yi( k )
xi
1
2
1
2
1
2
1
2
1
2
1
1
1,1
1,1
1,21
1,21
1,329
1,329
1,456
1,456
1
1
1,1
1,1
1,2
1,2
1,3
1,3
1,4
1,4
2 xi −
− yi
1
1
1,1
1,1
1,19
1,19
1,271
1,271
1,344
1,344
xi +1
1,1
1,1
1,2
1,2
1,3
1,3
1,4
1,4
1,5
1,5
yi(+k1−1)
1,1
1,1
1,21
1,214
1,329
1,333
1,456
1,456
1,590
1,594
2 xi+1 −
− yi(+k1−1)
1,1
1,095
1,19
1,186
1,271
1,267
1,344
1,340
1,410
1,406
∑
h
∑
2
yi(+k1)
2,1
2,095
2,29
2,286
2,461
2,457
2,615
2,611
2,753
2,750
0,105
0,105
0,114
0,114
0,123
0,123
0,131
0,131
0,138
0,138
1,105
1,105
1,214
1,214
1,333
1,333
1,460
1,460
1,594
1,594
203
Лабораторная работа №14
Приняв h = 0,1, методом Эйлера решить указанную задачу Коши для
каждого из уравнений:
y ( 0 ) = −1,
x ∈ [ 0;0,5].
1. y′ = y + 3 x,
2. y′ = x − 2 y,
y ( 0 ) = 0,
x ∈ [ 0;1].
3. y′ = 2 x − y,
y ( 0 ) = 2,
x ∈ [ 0;1].
4. y′ = x + y 2 ,
y ( 0 ) = 1,
x ∈ [ 0;1].
5. y′ = x 2 + y 2 ,
y ( 0 ) = 1,
x ∈ [ 0;1].
6. y′ = x + 2 y 2 ,
y ( 0 ) = 0,
x ∈ [ 0;1].
7. y′x − x 2 − y = 0,
y (1) = 0,
x ∈ [1;2].
8. y′ = x 2 y + x3 ,
y ( 0 ) = 1,
x ∈ [ 0;1].
xy
= x,
1 + x2
2x
10. y′ −
y = 1 + x2 ,
2
1+ x
y ( 0 ) = 1,
x ∈ [ 0;1].
y ( 0 ) = 1,
x ∈ [ 0;1].
y
y2
=
,
11. y′ −
x −1 x −1
y ( 0 ) = 1,
x ∈ [ 0;1].
y (1) = 1,
x ∈ [1;2].
9. y′ −
(
)
12. y′ y 2 + x = y,
204
Решение нулевого варианта
для лабораторной работы №15
Пример 1. Методом Рунге–Кутта найти решение задачи Коши для
уравнения y′ = y − x 2 , y (1) = 0 , x ∈ [1,2] , в первых пяти точках, взяв h =
0,1.
Решение.
В
силу
условия
x0 = 1, y0 = 0, f ( x, y ) = y − x 2 ,
поэтому
f ( x0 , y0 ) = y0 − x02 = 0 − 1 = −1 . По формулам (17.6) находим:
k11 = hf ( x0 , y0 ) = 0,1 ⋅ (−1) = −0,1;
k21 = 0,1 ⋅ f (1,05; − 0,05) = 0,1 ⋅ [(−0,05) − (1,05) 2 ] = −0,1152;
k31 = 0,1 ⋅ f (1,05; − 0,0576) = 0,1 ⋅ [(−0,0576) − (1,05)2 ] = −0,1160;
k41 = 0,1 ⋅ f (1,1; − 0,1160) = 0,1 ⋅ [(−0,1160) − (1,1)2 ] = −0,1326.
По формуле (17.5) вычислим ∆y0 :
1
∆y0 = [(−0,1) + 2(−0,1152) + 2(−0,1160) + (−0,1326)] = −0,1158 и по форму6
ле y1 = y0 + ∆y0 – значение y1: y1 = 0 + (−0,1152) = −0,1158 .
Таким образом, получено приближенное значение решения при
x1 = x0 + h = 1,1, а именно y1 = −0,1158 при x1 = 1,1 .
С помощью формул (17.6) при i = 1 найдем приближенное значение
y2 при x1 = 1, 2 , решив новую задачу для того же уравнения y′ = y + x 2 ,
y (1,1) = −0,1158 .
Аналогично находим y3 , y4 и y5 . Итоги решения исходной задачи
представлены в табл. 10.
Таблица 10
i
0
xi
1
1,05
1,05
yi
0
–0,05
–0,0576
xi2
1
1,1025
1,1025
f ( xi , yi ) = k1 = h ×
= yi −
xi2
× f ( xi , yi )
–1
–0,1
–1,1525 –0,1152
–1,1601 –0,1160
S=
pi
4
= ∑ p jk j
j =1
1
2
2
1
∆yi = S
6
205
1,1
–0,1160
1,21
–1,3260 –0,1326
1
–0,6950
–0,1158
x1 = x0 + h = 1,1, y1 = y0 + ∆y0 = −0,1158 .
1
1,1 –0,1158
1,21
1,15 –0,1821 1,3225
1,15 –0,1910 1,3225
1,2 –0,2672
1,44
x1 = x0 + 2h = 1, 2 , y2 =
–1,3258 –0,1326
1
2
–1,5046 –0,1505
2
–1,5135 –0,1514
–0,9071 –0,1501
1
–1,7072 –0,1707
y1 + ∆y1 = −0,1158 + (−0,1501) = −0, 2659 .
2
1,2 –0,2659
1,44
1,25 –0,3512 1,5625
1,25 –0,3616 1,5625
1,3 –0,4583
1,69
x1 = x0 + 3h = 1,3 , y3 =
–1,7059 –0,1706
1
2
–1,9137 –0,1914
2
–1,9241 –0,1924
–1,1150 –0,1925
1
–2,1483 –0,2148
y2 + ∆y2 = −0, 2659 + (−0,1925) = −0, 4584 .
3
1,3 –0,4584
1,69
1,35 –0,5858 1,8225
1,35 –0,5778 1,8225
1,4 –0,6984
1,96
x1 = x0 + 4h = 1, 4 , y4 =
–2,1484 –0,2148
1
2
–2,3883 –0,2388
2
–2,4003 –0,2400
–1,4382 –0,2397
1
–2,6584 –0,2658
y3 + ∆y3 = −0, 4584 + (−0,2397) = −0,6981 .
4
1,4 –0,6981
1,96
1,45 –0,8310 2,1025
1,45 –0,8448 2,1025
1,5 –0,9928
2,25
x5 = x0 + 5h = 1,5 , y5 =
–2,6581 –0,2658
1
2
–2,9335 –0,2934
2
–2,9473 –0,2947
–1,7663 –0,2944
1
–3,2428 –0,3243
y4 + ∆y4 = −0,6981 + (−0, 2944) = −0,9925 .
Таблица 11
S=
i
xi
yi
3 xi
3 xi + yi
ki
pi
4
= ∑ pi ki
i =1
1
∆yi = S
6
206
–0,1
–1
0
1
–0,1
–0,09
–0,9
0,15
–0,18
2
–0,0895 2 –0,1790
–0,895
0,15
–0,7895 –0,07895 1 –0,07895
0,3
y1 = y0 + ∆y0 = −1 + (−0,08966) = −1,08966 .
0
0,05
0,05
0,1
–1
–1,05
–1,045
–1,0895
x1 = 0,1 ,
1
0,1
0,15
0,15
0,2
–1,08966
–1,12915
–1,12362
–1,15702
x1 = 0,2 , y2
2
0,2
0,25
0,25
0,3
–1,15720 0,6
–0,55720 –0,05572 1 –0,05572
–1,18506 0,75 –0,43506 –0,04351 2 –0,08702
–1,17896 0,75 –0,42896 –0,04290 2 –0,08580
–1,20010 0,9
–0,30010 –0,03001 1 –0,03001 –0,04309
x1 = 0,3 , y3 = y2 + ∆y2 = −1,15720 + (−0,04309) = −1, 20029 .
3
0,3
0,35
0,35
0,4
–1,20029
–1,21531
–1,20856
–1,21615
x1 = 0,4 , y4
4
0,4
0,45
0,45
0,5
0
–0,08966
–0,78966 –0,07897 1 –0,07897
0,3
0,45 –0,67915 –0,06792 2 –0,13584
0,45 –0,67362 –0,06736 2 –0,13472
–0,55702 –0,5570 1 –0,05570 –0,06754
0,6
= y1 + ∆y1 = −1,08966 + (−0,06754) = −1,15720 .
–0,30029 –0,03003 1 –0,03003
0,9
1,05 –0,16531 –0,01653 2 –0,03306
1,05 –0,15856 –0,01586 2 –0,03172
1,2
–0,01615 –0,00162 1 –0,00162 –0,01607
= y3 + ∆y3 = −1,20029 + (−0,01607) = −1,21636
–1,21636 1,2
–0,01636 –0,00164 1 –0,00164
0,13283
0,01328 2 0,02656
–1,21717 1,35
0,14029
0,01403 2 0,02806
–1,20971 1,35
0,29768
0,02977 1 0,02977
–1,20232 1,5
0,01379
x5 = 0,5 , y5 = y4 + ∆y4 = −1, 21636 + 0,01379 = −1, 20257 .
Пример 2. Методом Рунге-Кутта найти решение задачи Коши для
уравнения y′ = 3 x + y , y (0) = −1 , x ∈ [0,1] . Решение разыскивать с четырьмя верными знаками.
Решение.
Шаг h выбираем согласно оценке, определенной формулами (17.7). В
данном случае имеем:
a = 0,1; b = 0,2; M = 1,5,
∂f
∂f
= 3,
= 1,
∂x
∂y
207
∂2 f
∂2 f
=
∂x∂y
∂x 2
i = 1, k = 0, 3 <
∂2 f
∂ i+k f
N
=
= 0,
≤ k −1 ,
2
i k
∂y
∂x ∂y
M
N
, поэтому N > 2 . Пусть N = 2,1; шаг h находим из соM -1
отношения 0,5 ⋅ 10
−3
≤
5 ⋅ 37 ⋅ 1,5 ⋅ 2,1 ⋅ h5 (2,1)5 − 1
. Получаем h = 0,1.
2,1 − 1
Как и в предыдущем примере, с помощью формул (17.6) находим
значения y1 , y2 , y3 , y4 и y5 (табл. 11).
208
Лабораторная работа №15
Методом Рунге-Кутта, взяв h = 0,1, найти приближенные решения
дифференциальных уравнений, удовлетворяющие указанным условиям:
1.
y′ = x + y, y (0) = 1, x ∈ [0;1] .
2.
y′ = x − y, y (0) = −1, x ∈ [0;1] .
3.
y′ = 2 x − y, y (0) = 1, x ∈ [0;1] .
4.
y′ = x − y + 2,
y (1) = 0,
x ∈ [1;2] .
5.
y′ = x − y + 2,
y (0) = 2,
x ∈ [0; 1] .
6.
y′ = x 2 − y ,
y (0) = 2,
7.
y′ = x 2 + y ,
y (0) = −4,
x ∈ [0; 1] .
8.
y′ = x 3 + y ,
y (0) = −6,
x ∈ [0; 1] .
9.
y′ = x 3 − y ,
y (1) = 0,
x ∈ [1; 2] .
10.
y′ = x + y 2 ,
y (1) = 0,
x ∈ [1; 2] .
11.
y′ = x 2 − y 2 ,
y (0) = 1,
12.
y′ = x 2 + y 2 ,
y (0) = −1,
13.
y′ = x 3 + y 2 ,
y (0) = 1,
14.
y′ = x 3 − y 2 ,
y (0) = −1,
15.
y′ = x 2 + y 3 ,
y (0) = 0,
x ∈ [0; 1] .
16.
y′ = x 3 + y 3 ,
y (0) = 0,
x ∈ [0; 1] .
17.
y′ = x 3 − y 3 ,
y (0) = 1,
x ∈ [0; 1] .
18.
y′ = x +
y
,
x
y (1) = 0,
x ∈ [0; 1] .
x ∈ [0; 1] .
x ∈ [0; 1] .
x ∈ [0; 1] .
x ∈ [0; 1] .
x ∈ [1; 2] .
209
Решение нулевого варианта
для лабораторной работы №16
Задача. Предприятие располагает производственными мощностями
(в
часах)
четырех
видов
в
следующем
количестве:
M1 = 16, M 2 = 10, M 3 = 6, M 4 = 7 . Нормы затрат мощностей каждого вида
составляют на единицу продукции № 1 : 2, 1, 0, 1; на единицу продукции
№ 2 : 1, 1, 1, 0. Прибыль от одной единицы продукции № 1 равна 3 000 000
руб., а от одной единицы продукции № 2 – 4 000 000 руб. Составить план
производства продукции двух видов, при котором доход предприятия от
реализации всей продукции оказался бы максимальным.
Пусть x1 – количество продукции № 1 , x2 – количество продукции
№ 2 , производство этих видов продукции должно принести максимальную
прибыль предприятию. Тогда z = 3000000 x1 + 4000000 x2 
→ max , где
x1 ≥ 0, x2 ≥ 0 .
Время, необходимое для производства продукции № 1 и № 2 не
должно превышать имеющуюся мощность в часах, т.е.
2 x1 + x2 ≤ 16
 x + x ≤ 10
 1 2

x2 ≤ 6

 x1
≤ 7.
Таким образом, пришли к задаче: максимизировать линейную форму
z = 3000000 x1 + 4000000 x2 при следующих ограничениях
2 x1 + x2 ≤ 16
 x + x ≤ 10
 1 2

x2 ≤ 6

≤7
 x1
 x1
≥0

x2 ≥ 0.

210
Чтобы решить эту задачу, построим выпуклый многоугольник, соот x2 ≤ 16 − 2 x1
 x ≤ 10 − x

1
.
ветствующий системе неравенств  2
x
6
≤
2


x1 ≤ 7
С этой целью на плоскости x1Οx2 строим прямые линии:
2 x1 + x2 = 16
 x + x = 10
 1
2

x2 = 6

 x1
= 7.
x2
16
14
12
10
8
6
A B
C
4
2
0
D
2
4
6
E8
10 12 14 16
x1
3x1+4x2=0
Рисунок 9
Вместе с осями x1 = 0 и x2 = 0 они образуют выпуклый шестиугольник OABCDE , представляющий собой многоугольник решений данной
системы неравенств. Каждая точка ( x1, x2 ) многоугольника, лежащая внутри его или на его сторонах, является решением. Чтобы найти оптимальное
211
решение, нужно провести прямую 3000000 x1 + 4000000 x2 = 0 . Левая часть
этого
равенства
выражает
общую
прибыль.
Поскольку
z = 3000000 x1 + 4000000 x2 = 0 , то прямая линия (линия уровня) соответствует плану бездеятельности. Действительно, x1 = 0 и x2 = 0 удовлетворяет
этому уравнению. Но это означает, что продукция не производится и не
реализуется. Если передвигать прямую параллельно самой себе в направлении
максимального
возрастания
линейной
формы,
то
z = 3000000 x1 + 4000000 x2 достигнет максимума в вершине B выпуклого
шестиугольника OABCDE . Таким образом, точка B и есть та точка, где
линейная форма максимальна; чтобы найти ее координаты, надо решить
 x + x = 10
систему  1 2
. Решая её, получим x1 = 4 , x2 = 6 , следовательно,
x2 = 6

B(4;6) . Итак, максимальная прибыль будет получена при выпуске продукции
x1 = 4 и x2 = 6
единиц,
т.
е.
zmax = 3000000 ⋅ 4 + 4000000 ⋅ 6 = 36000000 руб.
Пример 1. Найти максимум линейной формы z = 4 x1 + 2 x2 при следующих ограничениях:
≤5
 x1
2 x + x ≤ 14
 1 2
 x1 + x2 ≤ 10 .

x2 ≤ 8

 x1 ≥ 0, x2 ≥ 0
Решение. Приведем задачу к каноническому виду:
+ x3
=5
 x1
2 x + x
+ x4
= 14
 1 2

+ x5 = 10
 x1 + x2

+ x6 = 8
x2
x j ≥ 0, ( j = 1, 2, 3, 4, 5, 6) ,
z = 4 x1 + 2 x2 + 0 x3 + 0 x4 + 0 x5 + 0 x6 .
Систему ограничений в векторной форме можно записать так:
P1x1 + P2 x2 + P3 x3 + P4 x4 + P5 x5 + P6 x6 = P0 ,
212
где
 x1 
1 
0
1 


x2   2  1   0 

X=
, P=
, P =
, P =
,
 ...  1 1  2 1  3  0 
 
 
 
 
0
1 
0
 x6 
 0
 0
0
5 






1
14 
0
0
P4 =   , P5 =   , P6 =   , P0 =   .
 0
1 
0
10 
 
 
 
 
 0
 0
1 
8 
Так как решается задача на максимум, то оптимальный план будет
достигнут, когда все разности z j − c j ≥ 0 .
i
базис
4
P3
P4
P5
P6
5
zj − cj
1
2
3
ет
ci
X1
4
P1
Исходный план
2
0
0
P2
P3
P4
0
5
1
0
1
0
0
0
0
14
2
1
0
1
0
0
0
10
1
1
0
0
1
0
0
8
0
1
0
0
0
1
–4
–2
z0 = 0
0
P5
0
P6
0
0
0
0
Исходный базис состоит из векторов P3 , P4 , P5 , P6 , ему соответству
план
X 1 = ( x1, x2 , x3 , x4 , x5 , x6 ) = (0, 0, 5, 14, 10, 8) .
Так
как
c3 = c4 = c5 = c6 = 0 , то z0 = 0 . В базис вводится вектор, который соответствует min( z j − c j ) . Такой разностью является z1 − c1 = −4 , ей соответствует
213
вектор P1 , следовательно, P1 нужно ввести в базис. Чтобы определить, какой вектор необходимо вывести из базиса, вычислим
x
 5 14 10 
.
Вектор
P3 нужно вывести из баΘ0 = min i = min  ,
,
=
5

i xi1
1 2 1 
зиса. Получаем разрешающий столбец и строку. Преобразовав план X 1 по
формулам (20.2) и (20.3), получим новый план:
X 2 = ( x1, x2 , x3 , x4 , x5 , x6 ) = (5, 0, 0, 4, 5, 8)
План X 2
i
базис
4
P1
P4
P5
P6
5
z′j − c j
1
2
3
ci
X2
4
P1
2
P2
0
P3
0
P4
0
P5
0
P6
4
5
1
0
1
0
0
0
0
4
0
1
–2
1
0
0
0
5
0
1
–1
0
1
0
0
8
0
1
0
0
0
1
z0′ = 20
0
–2
4
0
0
0
В этом случае значение линейной формы z0′ ( X 2 ) = 20 . Для плана X 2
критерий оптимальности не выполняется. Среди разностей z′j − c j имеются
разности, меньшие нуля. Это z2′ − c2 = −2 < 0 , следовательно, вектор P2
4 5 8
нужно ввести в базис. Θ0 = min  , ,  = 4 , значит, вектор P4 следует
i 1 1 1
исключить из базиса. Преобразовав X 2 , получим новый план
X 3 = ( x1, x2 , x3 , x4 , x5 , x6 ) = (5, 4, 0, 0, 1, 4) .
План X 3
i
1
2
базис
P1
P2
ci
X3
4
P1
2
P2
0
P3
0
P4
0
P5
0
P6
4
5
1
0
1
0
0
0
2
4
0
1
–2
1
0
0
214
4
P5
P6
5
z′′j − c j
3
0
1
0
0
1
–1
1
0
0
4
0
0
2
–1
0
1
z0′′ = 28
0
0
0
2
0
0
Так как z j − c j ≥ 0 для всех j , то это оптимальный план. Следовательно,
zmax = 28
достигается
X 3 = ( x1, x2 , x3 , x4 , x5 , x6 ) = (5, 4, 0, 0, 1, 4) .
при
плане
Пример 2. Найти минимум линейной формы Z = x2 − 3 x3 + 2 x5 при
условиях:
 x1 + 3 x2 − x3 + 2 x5 = 7,

−2 x2 + 4 x3 + x4 = 2,

−4 x + 3 x + 8 x + x = 10,
2
3
5
6

x j ≥ 0, ( j = 1, 2,3, 4,5,6).
Решение. Очевидно, единичными векторами, которые образуют единичную матрицу, являются P1 , P4 , P6 . Задача поставлена в каноническом
виде. В векторной форме систему ограничений запишем следующим образом: P1x1 + P2 x2 + P3 x3 + P4 x4 + P5 x5 + P6 x6 = P0 , где
1 
 3
 −1
 0
 2
0
 7












P1 =  0  P2 =  −2  P3 =  4  P4 = 1  P5 =  0  P6 =  0  P0 =  2  .
0
 −4 
 3
 0
8 
1 
10 
 
 
 
 
 
 
 
Поскольку отыскивается минимум задачи, оптимальный план будет
достигнут, когда Z j − c j ≤ 0 .
Исходному
базису
P1 ,
P4 ,
P1
соответствует
план
X 1 = ( x1, x2 , x3 , x4 , x5 , x6 ) = (7,0,0, 2,0,10).
Исходный план X 1
i
1
Базис
P1
ci
0
X1
7
0
1
−3
0
2
0
P1
P2
P3
P4
P5
P6
1
3
−1
0
2
0
215
2
P4
0
2
0
−2
4
1
0
0
3
P6
0
10
0
−4
3
0
8
1
4
Z j − cj
Z0 = 0
0
−1
3
0
−2
0
Поскольку c1 = c4 = c6 = 0 , значение линейной формы равно нулю. В
базис вводится вектор P3 , так как max( Z j − c j ) = Z3 − c3 = 3 > 0 . Определяj
ем вектор, который необходимо вывести из базиса. θ 0 равно минимальному
xi
 2 10  2 1
для xi 3 > 0 , т.е. θ 0 = min  ,  = = . Следовательно, вектор P4
i 4 3 
4 2
xi 3
подлежит исключению.
Преобразовав
план
X1 ,
получим
17 
 15 1
X 2 = ( x1, x2 , x3 , x4 , x5 , x6 ) =  ,0, ,0,0,  ,
2
2
2
3
линейной формы, равному − .
2
новый
соответствующий
план
значению
План X 2
i
Базис
ci
X2
0
1
−3
0
2
0
P1
P2
P3
P4
P5
P6
0
1
4
2
0
0
0
1
P1
0
15
2
1
5
2
2
P3
−3
1
2
0
−
1
2
1
1
4
3
P6
0
17
2
0
−
5
2
0
−
3
4
8
1
4
Z 'j − c j
Z 0' = −
3
2
0
1
4
0
−
3
4
−2
0
216
В базис вводится вектор P2 , так как max( Z 'j − c j ) = Z 2' − c2 =
j
θ0 =
1
> 0.
2
15 5
: = 3 . Следовательно, вектор P1 подлежит исключению из базиса.
2 2
Преобразовав
X2 ,
план
получим
новый
план
X 3 = ( x1, x2 , x3 , x4 , x5 , x6 ) = (0 ,3,2 ,0,0 ,16) , соответствующий значению линейной формы, равному −3 .
План X 3
i
Базис
ci
X3
1
P2
1
3
2
P3
−3
2
3
P6
0
16
4
Z ''j − c j
Z 0'' = −3
0
1
−3
0
2
0
P1
P2
P3
P4
P5
P6
2
5
1
0
1
10
4
5
0
0
1
3
10
2
5
0
0
0
−
1
2
10
1
0
0
−
4
5
−
1
−
1
5
13
5
0
Очевидно, для плана X 3 критерий оптимальности выполняется
Z ''j − c j ≤ 0 . Следовательно, не существует нового допустимого решения
системы линейных уравнений, при котором линейная форма задачи принимала бы меньшее значение, чем Z ( X 3 ) = −3 , т.е. минимум линейной
формы
Z min = −3
достигается
X 3 = ( x1, x2 , x3 , x4 , x5 , x6 ) = (0,3,2,0,0,16) .
при
плане
217
Лабораторная работа №16
Следующие задачи линейного программирования решить симплексметодом.
1. Найти максимум линейной формы Z = 2 x1 + 3 x2 при следующих
ограничениях:
≤ 2,
 x1 + x2

 x1 + x2 + x3 ≤ 4,
x j ≥ 0, ( j = 1, 2, 3).
2. Найти максимум линейной формы Z = 3 x1 − x3 при следующих ограничениях:
+ x4 = 5,
 x1 − x2

≤ 4,
 2 x2 + 3 x3

− 2 x3
≤ 8,

x j ≥ 0 ( j = 1, 2, 3, 4).
3. Найти минимум линейной формы Z = x2 − x1 при следующих ограничениях:
−2 x1 + x2 ≤ 2,

 x1 − 2 x2 ≤ 2,
 x + x ≤ 5,
 1 2
x1 ≥ 0, x2 ≥ 0.
4. Найти минимум линейной формы Z = x2 − x1 при следующих ограничениях:
= 2,
2 x1 + x2 + x3

+ x4
= 2,
 x1 − x2
x + x
+ x5 = 5,
 1 2
x j ≥ 0, (j = 1, 2, 3, 4).
218
5 . Найти максимум линейной формы Z = 2 x1 + 3 x2 + 2 x3 + x4 при
следующих ограничениях:
2 x1 + 2 x2 − 3 x3 + x4 ≤ 6,

x2 − x3 + x4 ≤ 2,

x − x + 2 x
≤ 5,
3
 1 2
x j ≥ 0, (j = 1, 2, 3, 4).
6. Найти максимум линейной формы Z = x1 + 2 x2 + x3 при следующих ограничениях:
= 2,
2 x1 + x2 − x3 + x4

+ x5
= 6,
2 x1 − x2 + 5 x3
8x + 2 x + 2 x
+ 2 x6 = 12,
2
3
 1
x j ≥ 0, ( j = 1, 2, 3, 4, 5, 6).
7.
Найти
минимум
линейной
Z = x1 − x2 + x3 + 3 x4 + x5 − x6 − 3 x7 при следующих ограничениях:
формы
3 x3
+ x5 + x6
= 6,

 x + 2x − x
= 10 ,

2
3
4

+ x6
= 0,
 x1

+ x6 + x7 = 6 ,
x3
x j ≥ 0, (j = 1, 2 , 3, 4 , 5, 6 , 7 ).
8. Найти минимум линейной формы Z = 2 x3 − x4 при следующих ограничениях:
x2
+ 3 x4
≤ 5,


≤ 8,
 x1 + 2 x2 + x3

2 x3
+ x5 ≤ 10 ,

x j ≥ 0, (j = 1, 2 , 3, 4, 5 ).
219
9. Найти максимум линейной формы Z = x1 + 2 x2 + x3 при следующих ограничениях:
≤ 4,
 x1

x2 ≤ 2,


 x1 − 2 x2 ≤ 6,
 x1 + 3 x2 ≤ 8,
x1 ≥ 0, x2 ≥ 0.
Результат проверить графическим способом.
10. Найти максимум линейной формы Z = x1 + 2 x2 + x3 при следующих ограничениях:
 x2 − x1 ≤ 4,

x1 ≤ 4,


≤ 5,
 x2
− x2 + x1 ≤ 0,
x1 ≥ 0, x2 ≥ 0.
Результат проверить графическим способом.
11. Найти максимум линейной формы Z = 3 x1 + x2 + 2 x3 + 2 x4 при
следующих ограничениях:
−2 x1 − x2 + 5 x3 + 3 x4 ≤ 6,

− 2 x3 − x4 ≤ 2,
 x1

2 x2 − x3
≤ 5,

x j ≥ 0, ( j = 1, 2, 3, 4).
12. Найти максимум линейной формы Z = 2 x1 + x2 + x3 + x4 + x5 при
следующих ограничениях:
+ x4
≤ 2,
 x1 − x2

 x1 + 3 x2 − x3 − x4 + x5 ≤ 2,
− x
+ 3 x3 − 2 x4
≤ 2,
 1
x j ≥ 0, ( j = 1, 2, 3, 4, 5).
220
ЛИТЕРАТУРА
1. Бахвалов, Н.С. Численные методы : учеб. пособие : в 2 ч. / Н.С. Бахвалов. – М. : Наука, 1975. – Ч. 1. – 632 с.
2. Березин Н.С., Жидков Н.П. Методы вычислений. – М: Наука, 1966.
3. Вычислительная математика и программирование : учеб. пособие : в 2
ч. / Л.И. Богута [и др.]. – Л.: Изд-во ЛГПИ им. Герцена, 1973. – Ч. 1. –
82 с.
4. Гусак А.А. Элементы методов вычислений. – Минск: Изд-во БГУ,
1982. – 166 с.
5. Гусак, А.А. Элементы методов вычислений : учеб. пособие / А.А. Гусак. – Минск : Изд-во БГУ, 1982. – 166 с.
6. Иванова, Т.П. Программирование и вычислительная математика : учеб.
пособие / Т.П. Иванова, Г.В. Пухова. – М. : Просвещение, 1978. – 320 с.
7. Калиткин, Н.Н. Численные методы : учеб. пособие / Н.Н. Калиткин. –
М. : Наука, 1978. – 512 с.
8. Крылов В.И., Бобков В.В., Монастырный П.И. Вычислительные методы высшей математики. – Минск: Вышэйш. шк., 1972. – Т. 1. – 584 с.
9. Крылов, В.И. Вычислительные методы : учеб. пособие : в 2 ч. / В.И.
Крылов, В.В. Бобков, П.И. Монастырный. – М. : Наука, 1976. – Ч. 1.–
304 с.
10. Крылов, В.И. Вычислительные методы : учеб. пособие : в 2 ч. / В.И.
Крылов, В.В. Бобков, П.И. Монастырный. – М. : Наука, 1977. – Ч. 2.–
400 с.
11. Марчук, Г.И. Методы вычислительной математики : учеб. пособие /
Г.И. Марчук. – М. : Наука, 1980. – 534 с.
12. Фадеев, Д.К. Вычислительные методы линейной алгебры : учеб. пособие / Д.К. Фадеев, В. Н. Фадеева. – М. : Физматгиз, 1963. – 734 с.
1. Холод, И.И. Пособие к решению задач по линейной алгебре и линейному программированию / И.И. Холод. – Минск : Изд-во БГУ им. В.И.
Ленина, 1971. – 176 с.
Download