Котюргина

advertisement
Министерство образования и науки Российской Федерации
Государственное образовательное учреждение
высшего профессионального образования
«Омский государственный технический университет»
А. С. Котюргина
ЧИСЛЕННЫЕ МЕТОДЫ
Учебное пособие
Омск
Издательство ОмГТУ
2010
УДК 519.61(075)
ББК 22.193я73
К 73
Рецензенты:
Е. Е. Макаров, к. ф.-м. н. доц., зав. каф «Математическое моделирование»
ОмГУ им. Ф.М. Достоевского;
Ю. Б. Никитин, к. ф.-м. н., зав. каф. медицинской биологической физики
ОмГМА
Котюргина, А.С.
К 73 Численные методы: учеб. пособие / А. С. Котюргина. – Омск: Изд-во
ОмГТУ, 2010. – 84 с.
ISBN 978-5-8149-0898-8
Данное пособие рассматривает основные разделы курса лекций по вычислительной математике, читаемых на потоках ИВТ-2 и Риб-3.
В каждой главе содержатся основные теоретические положения, справочный материал, большое количество решенных примеров, иллюстрирующих
каждый из рассматриваемых методов, а также наборы задач для индивидуальных заданий.
Основными целями издания являются оказание студентам практической
помощи в изучении численных методов решения задач алгебры и математического анализа и развитие навыков самостоятельной работы студентов.
Печатается по решению редакционно-издательского совета
Омского государственного технического университета
УДК 519.61(075)
ББК 22.193я73
ISBN 978-5-8149-0898-8
© ГОУ ВПО «Омский государственный
технический университет», 2010
2
ВВЕДЕНИЕ
Исследование различных явлений или процессов математическими методами осуществляется с помощью математической модели. Математическая
модель представляет собой формализованное описание исследуемого объекта
посредством систем линейных, нелинейных или дифференциальных уравнений, систем неравенств, определенного интеграла, многочлена с неизвестными
коэффициентами и т. д. Математическая модель должна охватывать важнейшие
характеристики исследуемого объекта и отражать связи между ними.
После того, как математическая модель составлена, переходят к постановке вычислительной задачи. При этом устанавливают, какие характеристики математической модели являются исходными (входными) данными, какие – параметрами модели, а какие – выходными данными. Проводится анализ полученной задачи с точки зрения существования и единственности решения.
На следующем этапе выбирается метод решения задачи. Во многих конкретных случаях найти решение задачи в явном виде не представляется возможным, так как оно не выражается через элементарные функции. Такие задачи
можно решить лишь приближенно. Под вычислительными (численными) методами подразумеваются приближенные процедуры, позволяющие получать решение в виде конкретных числовых значений. Вычислительные методы, как
правило, реализуются на ЭВМ. Для решения одной и той же задачи могут быть
использованы различные вычислительные методы, поэтому нужно уметь оценивать качество различных методов и эффективность их применения для данной задачи.
Затем для реализации выбранного вычислительного метода составляется
алгоритм и программа для ЭВМ. Современному инженеру важно уметь преобразовать задачу к виду, удобному для реализации на ЭВМ и построить алгоритм решения такой задачи.
В настоящее время широко используются как пакеты, реализующие
наиболее общие методы решения широкого круга задач (например, Mathcad,
MatLAB), так и пакеты, реализующие методы решения специальных задач.
Результаты расчета анализируются и интерпретируются. При необходимости корректируются параметры метода, а иногда математическая модель, и
начинается новый цикл решения задачи.
3
1. РЕШЕНИЕ НЕЛИНЕЙНЫХ УРАВНЕНИЙ
1.1. ПОСТАНОВКА ЗАДАЧИ
Пусть дана некоторая функция f (x) и требуется найти все или некоторые
значения x , для которых f (x)=0 .
*
*
Значение x , при котором f (x )= 0 , называется корнем (или решением)
уравнения. Относительно функции f (x) часто предполагается, что f (x) дважды непрерывно дифференцируема в окрестности корня.
*
Корень x уравнения называется простым, если первая производная
*
*
функции f (x) в точке x не равна нулю, т. е. f (x )  0 . Если же f (x ) = 0 , то
*
*
корень x называется кратным корнем.
Геометрически корень уравнения есть точка пересечения графика функции
y=f (x) с осью абсцисс. На рис. 1 изображен график функции y = f (x) , име-




ющей четыре корня: два простых x1 и x 3 и два кратных x 2 и x 4 .
*
*
*
*
Рис. 1
Большинство методов решения уравнения ориентировано на отыскание
простых корней.
1.2. ОСНОВНЫЕ ЭТАПЫ ОТЫСКАНИЯ РЕШЕНИЯ
В процессе приближенного отыскания корней уравнения обычно выделяют
два этапа: локализация (или отделение) корня и уточнение корня.
Локализация корня заключается в определении отрезка  a, b , содержащего один и только один корень. Не существует универсального алгоритма локализации корня. Иногда удобно бывает локализовать корень с помощью построения графика или таблицы значений функции y=f (x) . На наличие корня на
отрезке  a, b указывает различие знаков функции на концах отрезка. Основанием для этого служит следующая теорема.
4
Теорема. Если функция f непрерывна на отрезке  a, b и принимает на
его концах значения разных знаков так что f  a   f  b   0 , то отрезок  a, b
содержит по крайней мере один корень уравнения.
Однако корень четной кратности таким образом локализовать нельзя, так
как в окрестности такого корня функция f (x) имеет постоянный знак. На этапе
уточнения корня вычисляют приближенное значение корня с заданной точностью  > 0 . Приближенное значение корня уточняют с помощью различных итерационных методов. Суть этих методов состоит в последовательном вычислении
*
значений x 0 , x1 , ..., x n ,... , которые являются приближениями к корню x .
1.3. МЕТОД ПОЛОВИННОГО ДЕЛЕНИЯ
Метод половинного является самым простым и надежным способом решения нелинейного уравнения. Пусть из предварительного анализа известно, что
*
корень уравнения находится на отрезке  a 0 , b0  , т. е. x   a 0 , b 0  , так, что
f (x* )=0 . Пусть функция f (x) непрерывна на отрезке  a 0 , b0  и принимает
на концах отрезка значения разных знаков, т.е. f  a 0   f  b0   0 .
a  b0
Разделим отрезок  a 0 , b0  пополам. Получим точку x 0  0
. Вычис2
лим значение функции в этой точке: f (x 0 ) . Если f (x 0 ) = 0 , то x 0 – искомый
корень, и задача решена. Если f (x 0 )  0 , то f (x 0 ) – число определённого знака: f (x 0 )  0 либо f (x 0 )  0 . Тогда либо на концах отрезка  a 0 , x 0  , либо на
концах отрезка  х 0 , b0  значения функции f (x) имеют разные знаки. Обозначим такой отрезок
a1 , b1  .
Очевидно, что x   a1 , b1  и длина отрезка
*
a1 , b1  в два раза меньше, чем длина отрезка a 0 , b0  . Поступим аналогично с
*
отрезком  a1 , b1  . В результате получим либо корень x , либо новый отрезок
a 2 , b2  и т. д. (рис. 2).
Рис. 2
5
Середина n -го отрезка x n 
a n , bn  будет равна
a n + bn
. Очевидно, что длина отрезка
2
b0  a 0
*
, а так как x   a n , b n  , то
n
2
b  a n b0  a 0
x n  x*  n
 n+1 .
2
2
(1)
Критерий окончания. Из соотношения (1) следует, что при заданной точности приближения  вычисления заканчиваются, когда будет выполнено не-
 b0  a 0 
 1 . Таким образом,



равенство b n  a n  2 или неравенство n >log 2 
количество итераций можно определить заранее. За приближенное значение
корня берется величина x n .
2 с точностью  = 0,01 . Эта зада5
ча эквивалентна решению уравнения x  2  0 , или нахождению нуля функ5
ции f  x   x  2 . В качестве начального отрезка  a 0 , b0  возьмем отрезок
Пример. Найдем приближенно x =
5
1, 2 . На концах этого отрезка функция принимает значения с разными знаками: f 1  0, f  2   0 . Найдем число n делений отрезка 1, 2 , необходимых
для достижения требуемой точности. Имеем:
x n  x* 
2 1
1

 102 , n  6 .
n+1
n+1
2
2
Следовательно, не позднее 6-го деления найдем x = 5 2 с требуемой точностью, x =
5
2 1,1484 . Результаты вычислений представлены в таблице 1.
Таблица 1
n
an
bn
xn
0
1,0000
1
1,0000
2
1,0000
3
1,1250
4
1,1250
5
1,1406
6
1,1406
2,0000
1,5000
1,2500
1,2500
1,1875
1,1875
1,1562
1,5000
1,2500
1,1250
1,1875
1,1406
1,1562
1,1484
-
-
-
-
-
-
-
Зн f  b n 
+
+
+
+
+
+
+
f  xn 
5,5938
0,7585
-0,2959
0,1812
-0,0691
0,0532
-0,0078
bn – a n
1,0000
0,5000
0,2500
0,1250
0,0625
0,0312
0,0156
Зн f  a n 
6
1.4. МЕТОД ПРОСТОЙ ИТЕРАЦИИ
Пусть уравнение f (x)  0 можно заменить эквивалентным ему уравнением
x =  (x) .
(2)
Выберем каким-либо образом начальное приближение x 0 . Вычислим зна-
 (x) при x = x 0 и найдем уточненное значение x1 =  (x 0 ) .
чение функции
Подставим теперь x1 в уравнение (1) и получим новое приближение
x 2 =  (x1 ) и т. д. Продолжая этот процесс неограниченно, получим последова-
тельность приближений к корню:
x n+1 =  (x n ) .
(3)
Формула (3) является расчетной формулой метода простой итерации.
Если последовательность x n  сходится при n   , т. е. существует
x* = lim x n
(4)
n
и функция
 (x) непрерывна, то, переходя к пределу в (3) и учитывая (4), по-

лучим: x = lim x n  lim  (x n-1 )   lim x n-1
*
n 
n 
 
n 

   x*  .
Таким образом, x =  x , следовательно, x – корень уравнения (2).
*
*
*
Сходимость метода. Сходимость метода простой итерации устанавливает
следующая теорема.
Теорема. Пусть функция  (x) определена и дифференцируема на отрезке
a, b , причем все ее значения  (x) a, b . Тогда, если выполняется условие
   x   1 при a < x < b :
1) процесс итерации x n   (x n-1 )  n =1, 2, ... сходится независимо от
начального значения x 0  a, b  ;
2) предельное значение
x* = lim x n является единственным корнем
n 
уравнения x =   x  на отрезке  a, b .
 иx
Доказательство. Так как x   x
*
*
n
   xn1  , то можно записать
 xn1  x* 
x n  x =  x n-1    x     xn1     x    

* 
x

x
 n1

  x n-1     x* 

  x n-1  x*  .
*
x n-1 - x
*
*
*
7
По теореме о среднем (она утверждает, что если производная функции
f  x  непрерывна на некотором интервале  a, b , то тангенс угла наклона хор-
 f  b   f  a  
 равен производb

a




ной функции в некоторой промежуточной точке, лежащей между a и b ) частное в последнем выражении будет равно    C  , где C – некоторая промежуды, проведенной между точками a и b , (т.е. 
точная
точка
в
интервале
поиска
x n  x* =    C    x n-1 - x *  .
корня.
Следовательно,
Если ввести обозначение M= max    x  для всего интервала поиска, то
предыдущее равенство может быть переписано в виде: x n  x  M  x n-1  x
*
Аналогично x n-1  x  M  x n-2  x . Тогда для x n  x
*
*
ливо неравенство: x n-1  x  M  x n-2  x
*
2
*
*
*
будет справед-
и т. д. Продолжая эти выкладки
дальше, в результате получаем x n  x  M  x 0  x , где n – натуральное
*
n
*
число. Таким образом, чтобы метод сходился, необходимо выполнение неравенства: x n  x  M  x 0  x .
*
n
*
Отсюда следует, что M= max    x  должно быть меньше единицы. В
   x  меньших M , можно записать:   x   1 . Число q определим из соотношения   x   q  1. Тогда
q
*
справедливо неравенство (вывод см. ниже): x  x n 
x n  x n 1 . Если
1 q
свою очередь, для всех остальных значений
*
поставить условие, что истинное значение корня x должно отличаться от приближенного значения на величину  , т.е.
x*  x n   , то приближения
x 0 , x1 ,..., x n надо вычислять до тех пор, пока не будет выполнено неравенство
 1  q 
q
*
и тогда x  x n   .
x n  x n 1   или x n  x n 1 
q
1 q
Вывод неравенства. Рассмотрим два последовательных приближения:
x n   x n 1  и x n1   x n  . Отсюда x n1  x n    x n    x n 1  .
Используя теорему о среднем, получим:
x n 1  x n 
f  x   f  x    x
n
n 1
x n  x n 1
8
n
 x n 1 
 f   x n    x n  x n 1  ,
тогда на основании условия   x   q 1 можно записать:
x n 1  x n  q x n  x n 1 .
С
другой
стороны,
f  x   x   x  .
пусть
Очевидно,
f   x  1    x   1 q . Отсюда, учитывая, что f  x *   0 , получим
что
x n    x n   f  x n   f  x*   x n  x *  f   x n   1  q  x n  x * ,

где x n  x n , x
*
.
Тогда x n  x 
*
xn   xn 
1 q
или x n  x 
*
x n 1  x n
.
1 q
Используя предыдущую формулу, можно получить:
x n  x* 
q
x n  x n 1 .
1 q
(5)
Перейдём к пределу в равенстве (3), в силу непрерывности функции (x)
*
*
получим x   (x ) , то есть x – корень уравнения (2). Других корней на
*
a, b 
нет, так как если x   (x ) , то x  x   (x )   (x ) , тогда
*
*
*
*
*
*
(x *  x * ) 1  (c)   0 , где c   x * , x *  . Равенство нулю будет достигнуто,
если x  x . То есть x – корень единственный.
Теорема доказана.
*
*
*
Приведение уравнения f  x   0 к виду x (x)
для обеспечения выполнения неравенства   x  1
В общем случае получить подходящую итерационную форму возможно,
проведя равносильное преобразование исходного уравнения, например, умножив его на коэффициент  :  f  x   0 . Прибавив затем к обеим частям уравнения x и обозначив   x   x  f  x  можно потребовать выполнения достаточного условия 1 f   x  1 . Отсюда определяется необходимое значение 
2  f   x   0, sign     sign  f   x   . Так как условие   x  1 должно
выполняться на всем отрезке  a, b  , то для выбора  следует использовать
наибольшее значение f   x  на этом отрезке, т.е.
9
 
2
, sign      sign f   x  . Это соотношение определяет
max f   x 
диапазон значений коэффициента  , изменяющий величину   x  1  f   x 
в пределах  1;  1  .
Обычно принимают  
1
, sign      sign f   x .

max f  x 
На рис. 3–6 показаны четыре случая взаимного расположения линий y  x
и y   x  и соответствующие итерационные процессы. Рис. 3 и 4 соответствуют случаю   x   1, и итерационный процесс сходится. При этом, если
  x   0 (рис. 3), сходимость носит односторонний характер, а если
  x   0 (рис. 4), сходимость носит двусторонний, колебательный характер.
Рис. 5 и 6 соответствуют случаю   x   1 – итерационный процесс расходится. При этом может быть односторонняя (рис. 5) и двусторонняя (рис. 6)
расходимость.
Рис. 3
Рис. 4
10
Рис. 5
Рис. 6
Погрешность метода. Оценка погрешности была доказана (5).
Критерий окончания. Из оценки (5) следует, что вычисления надо продолжать до выполнения неравенство x n  x n 1 
1 q
 . Если же q  0,5 , то
q
оценка упрощается: x n  x n 1   .
Пример 1. Используем метод простой итерации для решения уравнения
f  x   sin x  x 2  0 с точностью   0,001. Преобразуем уравнение к виду:
x
sin x
sin x
, т. е.   x  
.
x
x
Нетрудно убедиться, что корень уравнения находится на отрезке
  / 6,  / 3. Вычислив значения f  x  на концах отрезка, получим:
f   / 6   0 , а f   / 3  0 , т. е. функция на концах отрезка имеет разные знаки,
поэтому внутри отрезка есть корень. Расположение корня наглядно иллюстрирует рис. 7.
11
Рис. 7
Подсчитаем первую и вторую производные функции f  x  :
sin x  2  x 2 
x cos x  sin x
.
  x  
,   x  
x2
x3
Так как   x   0 на отрезке   / 6,  / 3, то производная   x   0 монотонно возрастает на этом отрезке и принимает максимальное значение на правом конце отрезка, т. е. в точке  /3 . Поэтому справедлива оценка:
  x      / 3  0,312 .
Таким образом, условие выполнено, q  0,5 и можно воспользоваться критерием окончания вычислений. В табл. 2 приведены приближения, полученные
по расчетной формуле. В качестве начального приближения выбрано значение
x 0  1.
Таблица 2
N
xn
0
1
1
2
3
4
5
0,8415 0,8861 0,8712 0,8774 0,8765
Критерий окончания выполняется при n  5 , x 5  x 4  0,001. Сходимость двусторонняя, качественный характер такой сходимости представлен на
*
рис. 4. Приближенное значение корня с требуемой точностью x  0,8765 .
Пример 2. Решить методом простой итерации уравнение f  x   x  0,6
2
на отрезке  0,1 с точностью 0,025. Для решения исходное уравнение приводит-


ся к виду x  x   x  0,6 . Для выбора величины  используем приведен2

ную выше формулу λ=  1/max f   x  =  1/  2x  =  1/2 . Тогда расчетная
12
формула имеет вид x i1  0,5x1  x i  0,3 . В качестве начального приближе2
ния можно выбрать верхнюю границу заданного отрезка x 0 1.
0
1
n
xn
1
0,8
2
0,78
Так как 0,8  0,78  0,02   , то x  0,78 .
*
1.5. МЕТОД НЬЮТОНА (МЕТОД КАСАТЕЛЬНЫХ)
Метод Ньютона является наиболее эффективным методом решения нели*
нейных уравнений. Пусть корень x   a, b  , т. е. f  a  f  b   0 . Предполагаем,
что функция f  x  непрерывна на отрезке  a, b  и дважды непрерывно дифференцируема на интервале
 a,b  .
Положим x 0  b . Проведем касательную к


графику функции y  f (x) в точке B0 x 0 ,f  x 0  (рис. 8).
Рис. 8
Уравнение касательной будет иметь вид: y  f (x 0 )  f   x 0  x  x 0  .
Первое пересечение получим, взяв абсциссу точки пересечения этой касательной с осью OX , т. е. положив y  0, x  x1 : x1  x 0 
Аналогично
поступим
с
точкой
f(x 0 )
.
f'(x 0 )
B1  x1 ,f  x1   , затем с точкой
B2  x 2 ,f  x 2   и т. д., в результате получим последовательность приближений
x1 , x 2 ,..., x n , причем
x n 1  x n 
f(x 0 )
.
f'(x n )
Формула (6) является расчетной формулой метода Ньютона.
13
(6)
Метод Ньютона можно рассматривать как частный случай метода простых
итераций, для которого (x)  x 
f(x)
.
f'(x)
Сходимость метода. Сходимость метода Ньютона устанавливает следующая теорема.
*
Теорема. Пусть x – простой корень уравнения f (x)  0 и в некоторой
окрестности этого корня функция f дважды непрерывно дифференцируема.
*
Тогда найдется такая малая  – окрестность корня x , что при произвольном
выборе начального приближения x 0 из этой окрестности итерационная последовательность, определенная по формуле (6) не выходит за пределы этой
окрестности и справедлива оценка:
2
x n 1  x *  C x n  x * , n  0 ,
(7)
1
где C  .
Сходимость метода Ньютона зависит от того, насколько близко к корню
выбрано начальное приближение.
Выбор начального приближения. Пусть  a, b  – отрезок, содержащий
корень. Если в качестве начального приближения x 0 выбрать тот из концов от-
резка, для которого f (x 0 )f (x)  0 , то итерации (6) сходятся, причем монотонно. Рис. 8 соответствует случаю, когда в качестве начального приближения был
выбран правый конец отрезка: x 0  b (Здесь f (x)  0 ).
Погрешность метода. Оценка (7) неудобна для практического использования. На практике пользуются следующие оценки погрешности:
x n  x*  x n  x n 1
.
(8)
Критерий окончания. Оценка (8) позволяет сформулировать следующий
критерий окончания итераций метода Ньютона. При заданной точности   0
вычисления нужно вести до тех пор, пока не будет выполнено неравенство
x n  x n 1  .
Пример. Вычислить методом Ньютона отрицательный корень уравнения
f (x)  x 4  3x 2  75x 10000  0 с точностью до 0,0001. Проведя отделение
корня, можно убедиться, что корень локализован на интервале  11,  10:
f (11)  3435, f  10   1050 . В этом интервале f (x)  0 и f (x)  0 . Так
как f (11)  0 и f (11)  0 , то за начальное приближение можно принять
x 0   11.
14
xn
f (x n )
f (x n )
h n   f (x n ) / f (x n )
-11
-10,3336
-10,2618
-10,261
3453
307,3
3,496
0,1477
-5183
4276,8
4185,9
-
0,6662
0,0718
0,0008
-
x3  x 2  10,261  10,2618  0,0008  0,001 . Поэтому x* 10,261 .
1.6. ВИДОИЗМЕНЁННЫЙ МЕТОД НЬЮТОНА
Если производная f (x) мало изменяется на отрезке  a, b  , то в расчетной
*
формуле метода можно положить: f   x n   f   x 0  . Отсюда для корня x урав-
нения f (x)  0 получаем последовательные приближения
x n 1  x n 
f  xn 
,  n  0,1,2,... .

f  x0 
Геометрически этот способ означает, что касательные заменяются прямыми, параллельными касательной к кривой y  f (x) , в ее фиксированной точке
x 0 . Этот способ избавляет от необходимости вычислять каждый раз значения
производной, поэтому эта формула полезна, если y  f (x) сложна.
1.7. МЕТОД ХОРД
Рассмотрим еще одну модификацию метода Ньютона. Пусть известно, что
*
простой корень x уравнения f  x  = 0 находится на отрезке  a, b  , то есть
f  a   f  b  <0 . И предположим, что f   x  >0 при x   a,b (если это не так,
то будем рассматривать уравнение  f  x  = 0 ). Заменим кривую y =f  x 
хордой AB:
y  f a 
x a
.
=
b  a f  b  f a 
у
А
х2
а
х
х1
*
b = x0
x
Рис. 9
15
В
y
B
а = х0
х1
х2
b
х*
x
А
Рис. 10
Возможны два случая: 1) f  a  >0 (рис. 9); 2) f  a  <0 (рис. 10). В первом
случае конец a неподвижен и последовательные приближения: x 0 = b
x n+1 = x n 
f  xn 
f  xn   f a 
 xn  a ,
 n = 0,1,2....
(9)
образуют ограниченную монотонно убывающую последовательность, причем
a < x* <...< x n+1 < x n <...< x1 < x 0 .
Во втором случае неподвижен конец b , а последовательные приближения:
x0 = a
x n+1 = x n 
f  xn 
f  b  f  xn 
 b  x n   n = 0,1,2....
(10)
образуют ограниченную монотонно убывающую последовательность, причем
x 0 < x1 < x 2 <...< x n+1 <...x * < b. Итак, в результате получаем следующее
Выбор начального условия:
1. Рассматриваем только случай f   x  >0 (иначе f  x  =0 ).


2. Начальное приближение x0 выбираем из условия f  x 0  f (x) <0 f  x 0  <0 .
Неподвижен тот конец, для которого знак функции совпадает со знаком ее
второй производной.
Критерий окончания. Критерий окончания итераций метода хорд такой
же, как и для метода Ньютона. При заданной точности   0 вычисления нужно
вести до тех пор, пока не будет выполнено неравенство x n  x n 1  .
16
Пример. Найти положительный корень уравнения с точностью   0,001
f (x)  x3  0,2x 2  0,2x  1,2  0 . Отделим корень. Так как f (1)  0,6  0 ,
f (2)  5,6  0 , то x * 1, 2 . Разделим интервал пополам: f (1,5) 1,425 , тогда
x* 1; 1,5 .
Найдём производные: f (x)  3x  0,4x  0,2 , f (x)  6x  0,4  0 . Ис2
ходя из того, что
f (1)  0 , то x 0 1 и пользуемся формулой (10):
0,6
1,5 1  1,15 , f (x1 )   0,173 .
1,425  0,6
0,173
x 2 1,15 
1,5 1,5  1,190 , x 3 1,198 , x 4 1,199 .
1,425  0,073
*
Так как 1,199  1,198  0,001 , то x 1,199 .
x1 1
1.8. КОМБИНИРОВАННЫЙ МЕТОД
Пусть f (a)  f (b)  0 , а f (x) и f (x) сохраняют постоянные знаки на от-
резке  a, b  . Соединяя методы хорд и касательных, получаем метод на каждом
этапе, которого находим значения по недостатку и значения по избытку точно*
го корня x уравнения f (x)  0 . Пусть x n – последовательные приближения
метода хорд, x n – последовательные приближения метода касательных. Пошаговая иллюстрация представлена на рис. 11.
Возможны 4 случая:
1) f (x)  0; f (x)  0 , 2) f (x)  0; f (x)  0 ,
3) f (x)  0; f (x)  0 , 4) f (x)  0; f (x)  0 ,
которые можно свести к первому случаю.
y
x0=а
х1
х2
x2
x * x1
Рис. 11
17
x0  b
х
x 0  a; x 0  b .
x n 1  x n 
f  xn 
f (x n )   x n 


x n  x n . x n 1  x n 
 .
f  x 
f xn
n
*
Очевидно, что x n  x  x n и 0  x  x n  x n  x n .
*
*
По окончании процесса за значение корня x лучше всего взять среднее
арифметическое полученных значений: x 
*


1
xn  xn .
2
Пример. Вычислить положительный корень уравнения
f (x)  x5  x  0,2  0 . Так как f (1)  0; f (1,1)  0 , то x* 1; 1,1 .
f (x)  5x 4  1, f (x)  20x 3  0 на 1; 1,1 , поэтому x 0 1; x 0 1,1 .
f (x 0 )  f (1)  0,2; f (x 0 )  f (1,1)  0,3105 .
f (x 0 )  f (1,1)  6,3205 .
0,1  0, 2
x 1 1 
1,039 ;
0,51051
x1 1,1 
0,31051
 1,051.
6,3205
Так как x1  x1  0,012  0 , то
x 2 1,089 
0,012  0,0282
1,04469 ;
0,0595
x 2 1,051 
Так как x 2  x 2  0,00018  , то x 
*
0,0313
 1,04487 .
5,1005
1
1,04469 1,04487  1,04478 .
2
2. РЕШЕНИЕ СИСТЕМ ЛИНЕЙНЫХ
АЛГЕБРАИЧЕСКИХ УРАВНЕНИЙ
2.1. ПОСТАНОВКА ЗАДАЧИ
Требуется найти решение системы линейных уравнений:
 a11x1  a12 x 2  a13 x 3  ...
a x  a x  a x  ...
22 2
23 3
 21 1
a 31x1  a 32 x 2  a 33 x 3  ...
 ... ...
...
...
...
... ...

a n1x1  a n2 x 2  a n3 x 3  ...
18

a1n x n

b1
 a 2n x n
 b2
 a 3n x n

...
... ...
...
 a nn x n
b3
 bn
или в матричной форме: Ax = b , где
 a11 a12
a
 21 a 22
A=  a 31 a 32

 ... ...
a
 n1 a n2
a13 ... a1n 
 x1 
 b1 
x 
b 
a 23 ... a 2n 
2
 
 2
a 33 ... a 3n  , x =  x 3  , b   b3 

 
 
... ... ... 
...
 
 ... 
x 
b 
a n3 ... a nn 
 n
 n
По правилу Крамера система n линейных уравнений имеет единственное
решение, если определитель системы отличен от нуля  det A  0  и значение
каждого
xj 
из
неизвестных
определяется
следующим
образом:
det A j
, j=1,...,n , где det A j – определитель матрицы, получаемой замеdet A
ной j -го столбца матрицы A столбцом правых частей b .
Непосредственный расчет определителей для больших n является очень
трудоемким.
Известные в настоящее время многочисленные приближенные методы решения систем линейных алгебраических уравнений распадаются на две большие группы: прямые методы и методы итераций.
Прямые методы всегда гарантируют получение решения, если оно существуют, однако, для больших n требуется большое количество операций, и
возникает опасность накопления погрешностей.
Этого недостатка лишены итерационные методы, но зато они не всегда
сходятся и могут применяться лишь для систем определенных классов.
Норма матрицы является некоторой обобщенной оценкой значений элементов матрицы. Для её вычисления можно использовать следующие выражения:
n
n
A    a ij2 ,
i=1 j=1
n
n
A  max  a ij , i=1,2...,n ,
i
A  max  a ij , j =1,2...,n .
j
j=1
i=1
2.2. МЕТОД ПРОСТОЙ ИТЕРАЦИИ
Для того чтобы применить метод простой итерации, необходимо систему
уравнений
Ax = b
19
(1)
с квадратной невырожденной матрицей A привести к виду
x = Bx +c ,
(2)
где B – квадратная невырожденная матрица с элементами bij , i, j=1,2,...,n ,
x – вектор-столбец неизвестных x i , c – вектор-столбец с элементами c i ,
i  1,2,...,n . Существуют различные способы приведения системы (1) к виду
(2). Рассмотрим самый простой.
Представим систему в развернутом виде:
 a11x1  a12 x 2  a13 x 3  ...
a x  a x  a x  ...
22 2
23 3
 21 1
a 31x1  a 32 x 2  a 33 x 3  ...
 ... ...
...
...
...
... ...

a n1x1  a n2 x 2  a n3 x 3  ...

a1n x n

b1
 a 2n x n
 b2
 a 3n x n

...
... ...
...
 a nn x n
b3
(3)
 bn
Из первого уравнения системы (3) выразим неизвестную x1 :
-1
x1  a11
 b1  a12 x 2  a13 x 3  ...  a1n x n  , из второго уравнения – неизвестную x 2 :
x 2  a -122  b 2  a 21x1  a 23 x 3  ...  a 2n x n  , и т. д. В результате получим систему:
 x1 = b12 x 2
x = b x
21 1
 2
 x 3 = b31x1
 ... ... ...

 x n = b n1x1
+ b13 x 3

...
 b1,n-1x n-1 +
b1n x n
+ c1
+ b 23 x 3
+
...
+ b 2,n-1x n-1 
b 2n x n
+ c2
+ b32 x 2
+
...
+ b3,n-1x n-1 +
b3n x n
+ c3
...
...
...
...
...
...
...
... ...
 b n3 x 3 +
...
+ b n,b-1x n-1 + c n
...
+ b n2 x 2
(4)
Матричная запись системы (4) имеет вид (2). На главной диагонали матрицы B находятся нулевые элементы, а остальные элементы вычисляются по
формулам:
bij = 
a ij
a ii
, ci =
bi
, i, j=1,2,...,n, i  j.
a ii
(5)
Очевидно, что диагональные элементы матрицы A должны быть отличны
от нуля. Выберем произвольно начальное приближение. Обычно в качестве
0
0
первого приближения берут x i = ci или x i = 0 . Подставим начальное прибли20
жение в правую часть (4). Вычисляя левые части, получим значения
x11 , x12 , ..., x 1n . Продолжая этот процесс дальше, получим последовательность
приближений, причем  k+1 приближение строится следующим образом:
 x1k+1
 k+1
x 2
 k+1
x3
 ...
 k+1
 x n
= b12 x 2k
+ b13 x 3k

...
k
 b1,n-1x n-1
+
b1n x nk
+ c1
= b 21x1k
+ b 23 x 3k
+
...
k
+ b 2,n-1x n-1

b 2n x kn
+ c2
= b31x1k
+ b32 x 2k
+
...
+ b3,n-1x kn-1 +
b3n x kn
+ c3
...
...
...
...
...
...
...
...
... ...
+
...
+ b n,b-1x kn-1 + c n
...
= b n1x1k
...
 b n3 x 3k
+ b n2 x 2k
Последняя система представляет собой расчетные формулы метода простой итерации.
Сходимость метода простой итерации. Известно следующее достаточное условие сходимости метода простой итерации.
Если элементы матрицы A удовлетворяют условию:
n
a ii   a ij , i =1,2,...,n ,
(6)
j=1, ji
k
*
то итерационная последовательность x сходится к точному решению x .
Условие (7) называют условием преобладания диагональных элементов
матрицы A , так как оно означает, что модуль диагонального элемента i -ой
строки больше суммы модулей остальных элементов этой строки, i = 1,2,...,n .
Необходимо помнить, что условие сходимости (6) является лишь достаточным. Его выполнение гарантирует сходимость метода простых итераций, но
его невыполнение, вообще говоря, не означает, что метод расходится.
Справедлива следующая оценка погрешности:
max x*i  x ik 
β
max x ik+1  x ik , i=1,2,...,n ,
1-β
(7)
где β  max bij i, j = 1,2,...,n .
Правую часть оценки (7) легко вычислить после нахождения очередного
приближения.
Иначе достаточное условие (6) для матрицы B может быть переформулирована так: если B  1, то итерационный процесс (6) сходится к точному решению системы.
Критерий окончания. Если требуется найти решение с точностью  , то в
силу (7) итерационный процесс следует закончить, как только на  k+1 -ом шаге выполнится неравенство:
β
max x ik+1  x ik < ε, i = 1, 2,...,n .
1 β
21
Поэтому в качестве критерия окончания итерационного процесса можно
k+1
использовать неравенство max x i
 x ik < ε1, i = 1, 2,..., n , где ε1 =
1 β
ε.
β
Если выполняется условие β  1/ 2 , то можно пользоваться более простым
критерием окончания:
max x ik+1  x ik < ε, i = 1, 2,..., n .
(8)
В других случаях использование последнего критерия (8) неправомерно и
может привести к преждевременному окончанию итерационного процесса.
Пример 3.
Применим метод простой итерации для решения системы уравнений
20,9x1
 1,2x

1

 2,1x1
 0,9x1
+
1,2x 2
+
2,1x 3
+
0,9x 4
= 21,70
+ 21,2x 2
+
1,5x 3
+
2,5x 4
= 27,46
+
1,5x 2
+ 19,8x 3
+
1,3x 4
= 28,76
+
2,5x 2

+ 32,1x 4
= 49,72
1,3x 3
.
Заметим, что метод простой итерации сходится, так как выполняется условие преобладания диагональных элементов:
20,9  1,2  2,1  0,9 , 21,2  1,2  1,5  2,5 ,
19,8  2,1  1,5  1,3 , 32,1  0,9  2,5  1,3 .
Пусть требуемая точность ε = 10 . Вычисления будем проводить с четырьмя знаками после десятичной точки.
Приведем систему к виду:
3
 x1
x
 2

x3
 x 4
=
 0,0574x 2  0,1005x 3  0,0431x 4 + 1,0383
= 0,0566x1
 0,0708x 3  0,1179x 4 + 1,2953
= 0,1061x1  0,0758x 2
 0,0657x 4 + 1,4525
= 0,0280x1  0,0709x 2  0,0405x 3
Величина β = max bij ,
+ 1,5489
j = 1, 2, 3, 4 равна 0,1179, т. е. выполняется
условие β  1/ 2 и можно пользоваться критерием окончания итерационного
процесса (8). В качестве начального приближения возьмем элементы столбца
0
0
0
0
свободных членов: x1 =1,0383, x 2 =1,2953, x 3 =1,4525, x 4 =1,5489 . Выk+1
k
числения будем вести до тех пор, пока все величины x i -x i , i = 1, 2, 3, 4 , а
k+1
следовательно, и max x i
 x ik не станут меньше ε = 10-3 .
22
Последовательно вычисляем:
при k = 1

 0,0574x 02  0,1005x 30  0,0431x 04 + 1,0383
= 0,0566x10
 0,0708x 30  0,1179x 04 + 1,2953
= 0,1061x10  0,0758x 02
 0,0657x 04 + 1,4225
= 0,0280x10  0,0779x 02  0,0405x 30
+ 1,5489
при k = 2
x12 = 0,8106, x 22 = 1,0118, x 32 = 1,2117, x 42 = 1,4077 .
при k = 3
x13 = 0,7978, x 32 = 0,9977, x 33 = 1,1975, x 34 = 1,3983 .
при k = 4
x14 = 0,8004, x 42 = 1,0005, x 34 = 1,2005, x 44 = 1,4003 .
x11
x12
x13
x14
=
=
=
=
0,7512
0,9511
1,1423
1,3601
Вычисляем модули разностей значений x i при k  3 и k  4 :
k
x14  x14  0,026, x 24  x 32  0,028, x 34  x 33  0,0030, x 44  x 34  0,0020 .
Так как все они больше заданной точности   10 , продолжаем итерации.
При k  5
5
x1 =0,7999, x 52 =0,9999, x 53 =1,1999, x 54 =1,3999 .
3
Вычисляем модули разностей значений x i при k  4 и k  5 :
k
x15  x14  0,0005, x 52  x 42  0,0006, x 53  x 34  0,0006, x 54  x 44  0,0004 .
3
Все они меньше заданной точности   10 , поэтому итерации заканчиваем.
Приближенным решением системы являются следующие значения:
x1  0,7999, x 2  0,9999, x 3  1,1999, x 4  1,3999 .
Для сравнения приведем точные значения переменных:
x1  0,8, x 2  1,0, x 3  1,2, x 4  1,4 .
2.3. МЕТОД ЗЕЙДЕЛЯ
Модификацией метода простой итерации можно считать метод Зейделя.
k 1
В методе простой итерации на  k  1 -ой итерации значения x i ,
i  1, 2,..., n вычисляются подстановкой в правую часть (6) вычисленных на
k 1
предыдущей итерации значений. В методе Зейделя при вычислении x i используются значения x i , x 2 , x i1 , уже найденные на  k  1 -ой итерации, а
k 1
k 1
k 1
не x i , x 2 , …, x i1 , как в методе простой итерации, т.е.  k  1 -е приближение
строится следующим образом:
k
k
k
23
 x1k 1  b12 x 2k  b13 x 3k  ...  b1n x nk 1  b1n x nk  c1
 k 1
k 1
k
k
k
 x 2  b 21x1  b 23 x 3  ...  b 2n 1x n 1  b 2n x n  c 2
 k 1
k 1
k 1
k 1
k 1
 x 3  b31x 2  b12 x 2  ...  b3n x n 1  b3n x n  c3
...................................................................

 x kn 1  b n1x1k 1  b n 2 x 2k 1  b n3 x 3k 1  ...  b nn 1x nk 11  c n

(9)
Эти формулы являются расчетными формулами метода Зейделя.
Введем нижнюю и верхнюю треугольные матрицы:
 0
b
 21
B1   b31

 ...
b
 n1
0
0
0
0
b32
0
...
...
bn 2
b n3
... 0 
 0 b12
0 0
... 0 

... 0  и B2   0 0


... ... 
 ... ...
0 0
... 0 

b13 ... b1n 
b 23 ... b 2n 
0 ... b3n  .

... ... ... 
0 ... 0 
Матричная
x
k 1
 B1x
k 1
запись
расчетных
формул
(9)
имеет
вид:
*
 B2 x  c . Так как B  B1  B2 , точное решение x исходной
k
системы удовлетворяет равенству: x  B1x  B2 x  c .
Сходимость метода Зейделя. Достаточным условием сходимости метода
Зейделя является выполнение неравенства:
*
*
*
  B  1.
(10)
Неравенство (10) означает, что для сходимости метода Зейделя достаточно,
чтобы любая норма матрицы B был меньше единицы.
Если выполнено условие (10), то справедлива следующая оценка погрешности:
max x *i  x ik 

max x ik 1  x ik i  1,2,...,n ,
1 
(11)
где  – норма матрицы B .
Критерий окончания. Если требуется найти решение с точностью  , итерационный процесс следует закончить, как только на  k  1 -ом шаге выполнится неравенство:

max x ik 1  x ik  , i  1,2,...,n . Поэтому в качестве
1 
24
критерия окончания итерационного процесса можно использовать неравенство
max x ik 1  x ik  1 , i  1,2,...,n , где 1 
1 
 . Если выполняется условие

  1/ 2 , то можно пользоваться более простым критерием окончания:
max x ik 1  x ik  , i  1,2,...,n .
Метод Зейделя, как правило, сходится быстрее, чем метод простой итерации. Однако возможны ситуации, когда метод простой итерации сходится, а
метод Зейделя сходится медленнее или вообще расходится.
Пример. Применим метод Зейделя для решения системы уравнений из
предыдущего примера. Первые шаги полностью совпадают с процедурой решения по методу простых итераций. Проведем теперь итерации методом Зейделя.
При k  1
x11  0,0574x 02  0,1005x 30  0,0431x 04  1,0383  0,7512 .
1
1
При вычислении x 2 используем уже полученное значение x1 :
x12  0,0566x11  0,0708x 30  0,1179x 04  1,2953  0,9674 .
1
1
При вычислении x 3 используем уже полученные значения и x 2 :
x13  0,1061x11  0,0758x12  0,0657x 04  1,4525  1,1977 .
1
1
1
1
При вычислении x 4 используем уже полученные значения x1 , x 2 , x 3 :
x14  0,0280x11  0,0779x12  0,045x  x13  1,5489  1,4037 .
Аналогичным образом проведем вычисления при k  2 и k  3.
Получим:
при k  2
x12  0,8019, x 22  0,9996, x 32  1,9996, x 42  1,4000 .
при k  3
x13  0,80006, x 32  1,00002, x 33  1,19999, x 34  1,40000 .
Известны точные значения переменных:
x1  0,8, x 2  1,0, x 3  1,2, x 4  1,4 .
Сравнение с предыдущим примером показывает, что метод Зейделя сходится быстрее и дает более точный результат.
25
3. РЕШЕНИЕ СИСТЕМ НЕЛИНЕЙНЫХ УРАВНЕНИЙ
3.1. ПОСТАНОВКА ЗАДАЧИ
Многие практические задачи сводятся к решению системы нелинейных
уравнений. Пусть для вычисления неизвестных x1 , x 2 , ..., x n требуется решить
систему n нелинейных уравнений:
 F1  x1 , x 2 ,..., x n   0

 F2  x1 , x 2 ,..., x n   0
, иначе F  x   0 .

..........................
 F  x , x ,..., x   0
n
 n 1 2
В отличие от решения систем линейных алгебраических уравнений
(СЛАУ) не существует прямых методов решения систем нелинейных уравнений. Лишь в отдельных случаях эту систему можно решить непосредственно.
Например, для случая двух неизвестных иногда удается выразить одно неизвестное через другое и таким образом свести задачу к решению одного нелинейного уравнения относительно другого.
В общем случае для решения систем нелинейных уравнений обычно используются итерационные методы.
3.2. МЕТОД НЬЮТОНА ДЛЯ СИСТЕМЫ НЕЛИНЕЙНЫХ УРАВНЕНИЙ
В основе метода Ньютона для системы уравнений лежит использование
разложения функций Fi  x1 , x 2 ,..., x n  в ряд Тейлора, причем члены, содержащие вторые производные (и производные более высоких порядков), отбрасываются. Пусть приближенные значения неизвестных системы (например, полученные на предыдущей итерации) равны соответственно a1 , a 2 , ..., a n . Задача
состоит в нахождении приращений (поправок) к этим значениям
x1 , x 2 , ..., x n , благодаря которым решение исходной системы запишется
в виде: x1  a1  x1 , x 2  a 2  x 2 , ......., x n  a n  x n . Проведем разложение левых частей уравнений исходной системы в ряд Тэйлора, ограничиваясь
лишь линейными членами относительно приращений:
F1
F1

F
x
,
x
,...,
x

F
a
,a
,...,a


x

...

x n




1
1
2
n
1
1
2
n
1

x1
x n

F2
F

x1  ...  2 x n
F2  x1 , x 2 ,..., x n   F2  a1 ,a 2 ,...,a n  
x1
x n

.........................................................................................

Fn
Fn

F
x
,
x
,...,
x

F
a
,a
,...,a


x

...

x n




n
n
1
2
n
1
 n 1 2

x

x

1
n
26
Поскольку левые части этих выражений должны обращаться в нуль, то
можно приравнять к нулю и правые части:











F1
x1
x1

F1
x 2
x 2
 ... 
F1
x n
x n
  F  a1 ,a 2 ,...,a n 
F2
x1
x1

F2
x 2
x 2
 ... 
F2
x n
x n
  F  a1 ,a 2 ,...,a n 
...
...
...
... ... ...
...
Fn
x1
x1

Fn
x 2
x 2
 ... 
Fn
x n
x n
...
...
  F  a1 ,a 2 ,...,a n 
1
F
 F 
в матричном виде:
 Δx=  F; x=  
 F
X
 X 
Значения F1 ,F2 ,....,Fn и их производные вычисляются при x1  a1 ,
x 2  a 2 , ..., x n  a n .
Определителем последней системы является якобиан:
F1
x1
F1
x 2
F2
J  x1
...
F2
x 2
Fn
x1
Fn
x 2
...
...
F1
x n
F2
x n .
... ...
...
...
Fn
x n
Для существования единственного решения системы якобиан должен быть
отличным от нуля на каждой итерации.
Таким образом, итерационный процесс решения системы нелинейных
уравнений методом Ньютона состоит в определении приращений
x1 , x 2 , ..., x n к значениям неизвестных на каждой итерации. Счет прекращается, если все приращения становятся малыми по абсолютной величине:
max x i   .
i
В методе Ньютона также важен удачный выбор начального приближения
для обеспечения хорошей сходимости. Сходимость ухудшается с увеличением
числа уравнений системы. Итак, за расчетную формулу примем
F  x
 F 
k 1
k
или
x  a  x  a  
F
x

x


x
 X 
1
27
k
F x .
 
k
Сходимость метода. Теорема. Пусть в некоторой окрестности решения x
системы нелинейных уравнений функции Fi  i  1,n  дважды непрерывно
дифференцируемы и определитель матрицы Якоби f не равен нулю. Тогда
найдется такая малая  – окрестность решения x , что при произвольном выбо0
ре начального приближения x из этой окрестности, итерационная последовательность метода Ньютона не выходит за пределы окрестности и справедлива
оценка: x
 n 1
n
 x  1 x    x , n  0 – метод сходится с квадратичной
2
скоростью.
В качестве примера можно рассмотреть использование метода Ньютона
F1  x, y   0
, где F1 и F2 – непрерывно
F
x,
y

0

 2 
для решения системы двух уравнений: 
дифференцируемые функции. Пусть начальные значения неизвестных равны
a, b . После разложения исходной системы в ряд Тэйлора можно получить:
F1
 F1

x

y   F1 ,
 x

y


 F2 x  F2 y   F .
2
 x
y
Предположим, что якобиан системы при x  a и y  b отличен от нуля:
F1
x
J
F2
x
F1
y
0.
F2
y
Тогда значения x и y можно найти, используя матричный способ следующим образом:
 x 
 
  
 
 
 y 
 F1
 x

 F2
 x

 F1 F1   x   F1 
 x y     

    ,
 F2 F2     
 x y   y   F 

   2
1
F1   F1 
F1
 F2



y    1  x
y

 
F2   
J  F2 F2
 
  x y
y   F2 

28
  F1 
 
  .
 
 F 
 2 
Вычислив значения x и y можно найти x и y следующим образом:
F 
1  F
x  a    F1  2  F2  1  ;
J 
y
y 
F 
1  F
y  b    F1  2  F2  1  .
J 
x
x 
Величины, стоящие в правой части, вычисляются при x  a и y  b .
Критерий окончания. Будем считать, что заданная точность достигнута,

если max x  x
k
k 1

, y k  y k 1   или F  x k   0 .
Пример. Методом Ньютона решить систему двух уравнений:
2x 2  3y 2  6y  4  0,
с точностью до 0,001.
 2
2
 x  3y  4x  2  0
Решение.
1) Начальные приближения можно определить графическим способом. Для
2x 2  3  y  12  7,
этого перепишем систему в виде: 
2
2
 x  2   3y  6.
Первое из преобразованных уравнений определяет эллипс, а второе – гиперболу. Данная система имеет два решения. Для уточнения выбирают одно из
них, принадлежащее области 0,5  x  0,6 и 0, 48  y  0, 44 .
За начальное приближение принимают x 0  0,5 и y0  0, 46 .
F1  x, y   2x 2  3y 2  6y  4; F2  x, y   x 2  4x  3y 2  2;
2) Находим
 F1 x  4 :  F1 y  6y  6;
xn
F1  x n , yn 
yn
F2  x n , y n 
0,5
-0,46
0,5742
-0,4551
0,5727
-0,4542
0,5727
-0,4542
 F1 x  x n , yn   F1 y  x n , y n 
2
5
2,2968
5,1484
2,2908
5,1454
Поскольку max x  x , y  y
3
J
 F2 x  x n , yn   F2 y  x n , yn 
-0,1052
-0,3848
0,0114
0,0052
0,00006
-0,00011

 F2 x  2x  4;  F2 x  6y.
2
3
-8,76
2,76
-8,7306
2,7306
-8,7252
2,7252
2
   , то x
*
51,2203
51,1375
 0,5727, y*  0,4542 .
Окончательный ответ: x  0,573 и y  0, 454 .
29
49,32
3.3. МЕТОД ИТЕРАЦИИ ДЛЯ НЕЛИНЕЙНОЙ СИСТЕМЫ УРАВНЕНИЙ
Пусть требуется найти действительные решения системы двух уравнений с
заданной точностью
F1  x, y   0,
.

F
x,
y

0


 2
Для этого перепишем исходную систему в приведенном (итерационном)
 x  1  x, y  ,
. Пусть x 0 и y 0 – начальные приближения корней, полу y  2  x, y 
виде: 
ченные графическим или каким-либо другим способом. Подставив эти значения в правые части приведенной системы уравнений, можно получить
 x1  1  x 0 , y0  ,

 y1  2  x 0 , y0  .
 x 2  1  x1 , y1  ,
 y 2  2  x1 , y1  .
Аналогично можно получить второе приближение 
 x n  1  x n 1 , y n 1  ,
Если функции 1  x, y  и 2  x, y 
 y n  2  x n 1 , y n 1  .
В общем случае 
непрерывны и последовательности x1 , x 2 ,..., x n ,... и y1 , y 2 ,..., yn ,... сходятся, то пределы их дают решение приведенной, следовательно, и исходной
системы.
Сходимость метода
Теорема.
Пусть
в
некоторой
замкнутой
окрестности
R  a  x  A, b  y  B имеется одно и только одно решение x  x * и
y  y* приведенной системы.
Тогда если:
1) функции 1  x, y  и 2  x, y  определены и непрерывно дифференцируемы в R ;
2) начальные приближения x 0 , y 0 и все последующие приближения x n ,
yn  n  1,2,...  принадлежат R ;
3) в R выполнены неравенства
1 2

 q1  1,
x
x
1 2

 q 2  1.
y
y
30
или
неравенства
1 2
2
2

 q1  1,

 q 2  1, то процесс последоx
y
x
y
вательных приближений сходится к решению x  x , y  y .
Оценка погрешности n -го приближения определяется неравенством:
*
x *  x n  y*  y n 
*
M
 x n  x n1  yn  yn1  ,
1 M
где M – наибольшее из чисел q1 и q 2 , входящих в эти неравенства.
Сходимость метода считается хорошей, если M  0,5 ; при этом
M / 1  M   1. Поэтому если в двух последовательных приближениях совпа-
дают, например, три десятичных знака после запятой, то ошибка последнего
приближения не превосходит 0,001.
Пример. Методом итерации решить систему с точностью до   0,001.
sin  x  0,6   y  1,6,

3x  cos  y   0,9.
Решение.
 x  cos  y  / 3  0,3  1  x, y  ,
 y  sin  x  0,6   1,6  2  x, y .
1) Приведем систему к форме: 
2) Для нахождения начального приближения отделим корни. Построив два
графика x  cos  y  / 3  0,3 и y  sin  x  0,6  1,6 и найдя их точку пересечения, можно увидеть, что система имеет единственное решение, заключенное в области 0  x  0,3 и 2, 2  y  1,8 .
3) Проверим приведенную систему на сходимость итерационного процесса:
1
2
0;
 cos  x  0,6   1,
x
x
1
2
1
  sin  y   1 ;
 0.
y
3
y
Следовательно,
1 2
1 2

 1 т.е. условия сходимости выполняются.

1 и
y
y
x
x
31
4) Для поиска последовательных приближений используют формулы:
 x k 1  cos  y k  / 3  0,3,

 k 1
k
 y  sin  x  0,6   1,6.
Выберем следующие начальные значения: x 0  0,15,
xn
yn
y0  2 .
0,15
0,1616
0,1508
0,1539
0,1510
0,1519
0,1510
-2
-2,035
-2,0245
-0,0342
-2,0313
-2,0341
-2,0333

Поскольку max x  x , y  y
5
6
5
6
   , то x  0,151 и y  2,033 .
3.4. МЕТОД СКОРЕЙШЕГО СПУСКА РЕШЕНИЯ НЕЛИНЕЙНЫХ СИСТЕМ
Сущность метода скорейшего спуска заключается в том, что искомое решение системы fi x1, x 2 ,.... x n   0, i  1, 2, ..., n  рассматривается как минимум некоторой функции U в n -мерном пространстве x1,..., x n , и этот
минимум ищется в направлении, противоположном направлению градиента
функции U , то есть в направлении скорейшего убывания этой функции. Фунция U связана с функциями f i исходной системы соотношениями:
U

 x1,...,
2
n
xn     fi  x1, ..., xn   .
i 1

( 0) ( 0)
( 0)
Пусть точка x1 , x 2 , ...., x n
является начальным приближением к
искомому решению. Через эту точку проводится поверхность уровня
U  U x1(0) , x (20) , ...., x (n0) , а также нормаль к данной поверхности, которая
указывает направление скорейшего убывания функции U . Точка, в которой
(1) (0)
(1)
нормаль касается новой поверхности уровня U  U x1 , x 2 , ...., x n , будет
следующим приближением к исходному решению. Нормаль, проведенная к
(1) (1)
(1)
этой поверхности через точку x1 , x 2 , ...., x n , даёт возможность дойти до
( 2) ( 2 )
( 2)
точки x1 , x 2 , ...., x n , в которой нормаль касается какой-то другой по(2) (2)
( 2)
верхности U  U x1 , x 2 , ...., x n , и т. д.
(k ) (k )
(k )
(k 1) ( k 1)
, x2
, ...., x (nk 1)  U x1 , x 2 , ...., x n , где
Так как U x1
( 0) ( 0)
( 0)
x1 , x 2 , ...., x n ,
то
последовательность
точек
k  0,1, 2,...,











32





x1(1) , x (21) ,...., x (n1) , x1(2) , x (22) ,...., x (n2) … приведет к минимальному значе-
нию функции U , т. е. к искомому решению исходной системы.
Последовательные приближения определяются из матричного равенства
x (k 1)  x (k )  kU(x (k) ) , где через x (k ) обозначен вектор в n -мерном
(k ) (k )
(k )
пространстве, указывающий координаты точки x1 , x 2 , ...., x n , т. е. значение k -го приближения;  – параметр, характеризующий изменение функции
U вдоль соответствующей нормали, U – градиент функции U в точке x (k ) .
В общем случае параметр  может быть найден из уравнения:


 
d
U x ( k )   U x ( k )  0 ,
d



(1)
(k )
где U()  U x
 U(x (k) )  0 – скалярная функция, определяющая
изменение функции U . При этом берется наименьший положительный корень
уравнения (1).
Если считают  малой величиной и не учитывают членов, содержащих 
во второй и высших степенях, то приближенно искомое решение можно найти
из
матричных
равенств
x (k 1)  x (k )   k Wkт f (k ) (k  0,1, ...) ,
f (k ) , Wk Wkт f (k )
, k  0,1, ..., где
 k  2 k 
т (k )
т (k )
Wk Wk f , Wk Wk f
 f ( x ( k ) , ..., x ( k ) ) 
n
 1 1






(k )
(k ) 
f
(
x
,
...,
x
n ),
f (k )  f ( x (k ) )   2 1


...


 f ( x ( k ) , ..., x ( k ) ) 
n 
 n 1
 f ( x ( k ) ) f ( x ( k ) ) 
 1

... 1
 x1

x n


Wk  W x ( k )   .......... .......... .......... ...  ,

(k )
(k ) 

f
(
x
)

f
(
x
)
n
n

...
 x
x n 
1

 
33
 n f ( x ( k ) )

 1
fi( x ( k ) ) 
 i 1 x1

т (k )
т (k )
(k )
Wk f
W x
f x

.
(
k
)
n
 f n ( x )
(k ) 
fi
(
x
)



x
n
 i 1

   
Важным достоинством метода скорейшего спуска является его неизбежная
сходимость. Поэтому его рекомендуется применять для уточнения решения в
тех случаях, когда другие итерационные методы расходятся.
Пример. Методом скорейшего спуска приближенно вычислить корни си x 2  5xy  6
стемы: 
2
2

 2x  y  9.
0,5
  .
  3
 x 2  5xy  6 
 и
Здесь f  
2
2
 2 x  y  9
Решение. Пусть x
( 0)
  2 x  5 y  5x 
W
.

4
x

2
y


Подставляя нулевое приближение, будем иметь
1,25 
 14 15
т 14  2
f ( 0)  
W

W
,
,
0 


0  15 6  ,

0
,
5

2
6






14  2 1,25  18,5 
W0т  f (0)  
  0,5  15,75 ,
15
6


 

 14 15 18,5  495,25
W0 W0т  f (0)  


,
 2 6  15,75 57,5 
0 


f (0) , W0Woтf (0) 
т
W0 W0 f (0) , W0 W0т f (0)


1,25  495,25  (0,5)  57,5
2
495,25  57,5
590,312 5
 0,002 374 75,
248 578,812 5
0,5 
18,5  0,4560 
x (1)     0,002 374 75 
   3,0374 .

3
15
,
75
 

 


(1) 0,8

Вычислим f
.

0
,
6187


34
2

Аналогично найдем второе приближение
14,2315  2,315
т 14,2315  1,852
W1  
,
W

1    2,315 6,063 ,

1
,
852
6
,
063




12,531 
т (1) 191,3 
W1т f (1)  
,
W
W

1 1f

,

5
,
603

57
,
178




1 
0,8  191,3  0,6187  57,178 188,416

 0,004 .
2
2
39
865
191,3  57,178
0,456 
12,531  0,412 876 


0
,
004

 5,603   3,009 08 .

3
,
0374



 

( 2)  0,04 

Для контроля вычислим невязку: f
 и так далее.

0
,
3954


Тогда x
( 2)
Получаем решение системы:
x (5)  0,4201
y(5)  2,9406.
3.5. МЕТОД СКОРЕЙШЕГО СПУСКА ДЛЯ СЛУЧАЯ ЛИНЕЙНОЙ СИСТЕМЫ
Рассмотрим систему линейных уравнений:
n

f1   a1j x j  b1  0
j1

n

f 2   a 2 j x j  b 2  0
j1

.................................

n

f n   a nj x j  b n  0
j1

с действительной матрицей A   a ij  и столбцом свободных членов
f
 A . И исходная система имеет вид:
x
k
rk  Ax    b – невязка вектора x p и
b   bi  . Тогда f  Ax  b и W 
x
k 1
 x     k A T rk , где
k
 r , AA r 
T
k 
k
k
 AA r , AA r 
T
T
k
.
k
35
Соответственно, окончательно имеем:
x
 k 1
x
k
 r , AA r 
T

k
k
 AA r , AA r 
T
T
k
AT rk .
k
Пример. Методом скорейшего случая решить систему уравнений:
8x1  x 2  2x 3  2,3
10x  x  2x  0,5

2
3
4

 x1  6x 3  2x 4  11, 2
3x1  x 2  2x 3  12x 4  3,7
Решение. В качестве начального приближения выберем
x  0,3;  0,05;  0,2; 0,3 .

T
8
0

Тогда r0  Ax  b  
 1

3
8 0
 1 10
T
A r0  
 2 1

0 2
1 2
0  0,3   2,3   0,55 
  0,5   0,4 
10 1 2 

0,05



,
0 6 2  0,2   1,2   0,3 

 
 

1 2 12  0,3   3,7   0,45 
1 3  0,55   5,45 
 

0 1
 0,4    3,0  ,
6 2  0,3   2,0 

 

2 12  0,345   6,8 
 8 1 2 0  5,45   36,6 
 0 10 1 2  3,0   45,6 
T


.
AA r0  
 1 0 6 2  2,0   20,15 


 

3

1
2
12
6,8
98,95


 

T
r0 , AA r0 

Вычисляя коэффициент  0 , получим: 0 
 0,006532 .
T
T
AA
r
,
AA
r
 0
0
Отсюда
1

x    x    0 AT r0   0,264;  0,0696;  0,2131; 0,2556  ,
причем невязка r
T
1
числяя, получим: x
  0,3109; 0,1020; 0,1684;  0,1966  . Аналогично вы-
 4
T
  0,2266;  0,0792;  0,2379; 0,2875  ;
T
36
4
r     0,0680; 0,0354; 0,1211; 0,0334  ;
T
5
x     0,2228;  0,0810;  0,2430; 0,2823 ;
T
5
r     0,0493; 0,0013; 0,0839;  0,0493 .
T
Процесс скорейшего случая для линейных систем сходится медленно. Так,
здесь точное решение: x1  0,2 ; x 2  0,1; x 3  0,3 ; x 4  0,3 .
4. ПРИБЛИЖЕНИЕ ФУНКЦИЙ
4. 1. МЕТОД НАИМЕНЬШИХ КВАДРАТОВ
В инженерной деятельности часто возникает необходимость описать в виде функциональной зависимости связь между величинами, заданными таблично
или в виде набора точек с координатами  x i , yi  , i  0,1,2,..., n , где n – общее количество точек. Как правило, эти табличные данные получены экспериментально и имеют погрешности.
Рис. 12
При аппроксимации желательно получить относительно простую функциональную зависимость (например, многочлен), которая позволила бы «сгладить» экспериментальные погрешности, вычислить значения функции в точках,
не содержащихся в исходной таблице.
Эта функциональная зависимость должна с достаточной точностью соответствовать исходной табличной зависимости. В качестве критерия точности
чаще всего используют критерий наименьших квадратов, т.е. определяют та-
37
кую функциональную зависимость f  x  , при которой S 
n
  yi  f i 
2
обра-
i1
щается в минимум. Погрешность приближения оценивается величиной
  (1/ n)S . В качестве функциональной зависимости рассмотрим многочлен
Pm  x   a 0  a1x  a 2 x 2  ...  a m x m . Формула минимизируемой функции
примет вид S 
2
n
 y
i 1
i
 Pm  x i   . Условия минимума S можно записать, при-
равнивая нулю частные производные S по всем переменным, a 0 ,a1 ,a 2 ,..., a m .
Получим систему уравнений
n
S
  2  yi  a 0  a1x1  ...  a m x im x ik  0 или
a k
i 1
 y
n
i 1
i
 a 0  a1x1  ...  a m x im x ik  0 , k  0,1,...,m .
Эту систему уравнений перепишем в следующем виде:
n
n
a 0  x  a1  x
i 1
k
i
i 1
k 1
i
Введем обозначения: ck 
n
...  a m  x
i 1
n
x
i1
k m
i
n
  yi x ik , k  0,1,...,m .
i 1
n
k
i
, bk  yi x ik . Последняя система может
i 1
быть записана так: a 0 c k  a1c k 1  ...  c k m a m  b k , k  0,1,...,m .
Её можно переписать в развернутом виде:
c0 a 0  c1a1  c 2 a 2  ...  c m a m  b 0
c a  c a  c a  ...  c a  b
 1 0 2 1 3 2
m 1 m
1
.

...................................................

c m a 0  c m1a1  c m2 a 2  ...  c 2m a m  b m
Матричная запись системы имеет следующий вид: Ca  b . Для определения коэффициентов a k , k  0,1,...,m , и, следовательно, искомого многочлена,
необходимо вычислить суммы c k , b k и решить последнюю систему уравнений.
Матрица c этой системы является симметричной и положительно определенной.
Погрешность приближения в соответствии с исходной формулой составит

n
1/ n    yi  Pm  x i  
2
. Рассмотрим частные случаи m  1 и m  2 .
i 1
38
Линейная аппроксимация  m  1 .
P1  x   a 0  a1x .
n
n
n
n
n
i 1
i 1
c0   x  n; c1  x i ; c2   x ; ; b0   yi ; b1  yi x i .
i 1
0
i
i 1

n
c1  
 n

c2  
  xi
 i1
i 1
2
i

T

n
n
 c0


T
i 1
 , b   b0 ,b1     yi ,  yi x i  .
c
n
i 1
 i1

2
 c1
x

i 
i 1

Отсюда система для нахождения коэффициентов a 0 и a1 имеет вид:
n
x
i
n

 n 
 n a 0    x i  a1   y i
i 1

 i1 
.
 n
n
n
 a a  x a  x y
i 0
 i  1  i i

i 1
i 1
 i1 
Её можно решить методом Крамера.
Квадратичная аппроксимация  m  2  .
P2  x   a 0  a1x  a 2 x 2 .
n
n
n
n
n
c0   x  n; c1  x i ; c2   x ; c3   x ; c4   x i4 .
i 1
n
0
i
i 1
i 1
n
n
i 1
i 1
2
i
i 1
3
i
i 1
b0   yi ; b1  yi x i ; b 2   yi x i2 .
i 1
 c0
c   c1
c
 2
c1
c2
c3
c2 
T
c3  , b   b0 , b1 , b2  .
c 4 
Или в развёрнутом виде
n

 n 
 n 2
 n a 0    x i  a1    x i  a 2   y i ,
i 1
 i1 
 i1 

n
 n 
 n 2
 n 3
  x i  a 0    x i  a1    x i  a 2   x i yi ,
i 1
 i1 
 i1 
 i1 
n
 n
 n 3
 n 4
2
  x i  a 0    x i  a1    x i  a 2   x i y 2 .
i 1
 i1 
 i1 
 i1 
1
Решение системы уравнений Ca  b находится по правилу Крамера.
39
Пример. Построим по методу наименьших квадратов многочлены первой
и второй степени и оценим степень приближения. Значения y i в точках x i ,
i  0,1,2,3,4 приведены в следующей таблице.
i 1 2 3 4 5
xi 1 2 3 4 5
y i -1
1
2
4
6
Вычислим коэффициенты c0 , c1 , c 2 , c3 , c 4 , b 0 , b1 , b 2 по формулам для
линейной и квадратичной аппроксимация c0  5; c1  15; c 2  55; c3  225;
c 4  979 ; b0  12; b1  53; b2  235 .
Для линейной аппроксимации система уравнений определения коэффициентов a 0 и a 1 многочлена первой степени P2  x   a 0  a1x имеет вид:
5a 0  15a1  12
.

15a

55a

53
1
 0
Решая эту систему, получим:
a0 
b0c2  b1c1
b1c0  b0c1


2,7,
a

 1,7 .
1
c0c2  c12
c0c2  c12
P1  x   a 0  a1x  2,7  1,7x .
Для квадратичной аппроксимации система уравнений определения коэф2
фициентов a 0 , a1 и a 2 многочлена второй степени P2  x   a 0  a1x  a 2 x
имеет вид:
5a 0  15a1  55a 2  12

15a 0  55a1  225a 2  53 .
55a  225a  979a  235
1
2
 0
И коэффициенты равны:
a 0  2,20; a1  1,27; a 2  0,07 . Тогда
P2  x   a 0  a1x  a 2 x 2  2,20  1,27x  0,07x 2 .
Сравним значения, рассчитанные для функциональной зависимости, с исходными данными. Результаты приведены в табл. 3.
Таблица 3
i
xi
yi
P1  x i 
P2  x i 
0
1
1
2
2
3
3
4
4
5
-1
1
2
4
6
-1
0,7
2,4
4,1
5,8
-1
0,62
2,24
4
6,9
40
Погрешность приближения в соответствии с исходными формулами составит:
1 
2 
4
5y
1
i 0
4
5y
i 0
 P1  x i    0,245 .
2
i
1
 P2  x i    0,084 .
2
i
4.2. ПОСТРОЕНИЕ ИНТЕРПОЛЯЦИОННЫХ МНОГОЧЛЕНОВ
Пусть на отрезке a , в в некоторой последовательности (n  1) узлов
x 0 , x1 ,..., x n задана функция y  f (x) своими значениями y 0 , y1 ,..., y n , где
yi  f ( x i ) . Задача алгебраического интерполирования состоит в построении
4
n 1
многочлена Pn ( x )  a 0 x  a1x
 ...  a n степени n , удовлетворяющего
условию интерполирования: Pn (x i )  f (x i ), i  0, n .
Известно, что существует единственный полином степени не выше n ,
принимающий в исходных точках заданные значения. Коэффициенты a i поли-
нома Pn ( x i ) можно определить из системы уравнений:
a  a x  a x 2  ...  a x n  y
2 0
n 0
0
 0 1 0
a 0  a1x1  a 2 x12  ...  a n x1n  y1

...

2
n
a 0  a1x n  a 2 x n  ...  a n x n  y n .
Определитель этой системы есть определитель Вандермонда, и, следовательно, система имеет единственное решение.
Пример. Построить интерполяционный многочлен P( x ) , совпадающий с
x
функцией f ( x)  3 (1  x  1) в точках x 0  1; x1  0; x 2  1 .
2
Решение. Пусть P( x )  a 0  ax  a 2 x , поэтому имеем
a 0  a1  a 2  1 / 3

.
a 0  1
a  a  a  3.
 0 1 2
Отсюда a 0  1; a1  4 / 3; a 2  2 / 3 .
4
2 2
x
Поэтому 3  1  x  x при  1  x  1.
3
3
41
Многочлен Лагранжа
Будем искать многочлен в виде линейной комбинации множеств степени
n : L( x )  y 0 l 0 ( x )  y1l1 ( x )  ...  y n l n ( x ) .
При этом потребуем, чтобы каждый многочлен l j (x)  0 во всех узлах
интерполяции, за исключением одного ( j  го) , где он равен 1. Легко проверить, что этим условиям отвечает многочлен вида
l0 (x) 
( x  x1 ) ( x  x 2 ) ... ( x  x n )
.
( x 0  x1 ) ( x 0  x 2 ) ... ( x 0  x n )
Действительно, l 0 ( x )  1 при x  x 0 . При x  x1, ..., x n числитель выражения равен 0. По аналогии получим:
l1 ( x ) 
li (x) 
( x  x 0 ) ( x  x 2 ) ... ( x  x n )
,
( x1  x 0 ) ( x1  x 2 ) ... ( x1  x n )
( x  x 0 )... ( x  x i  l ) ( x  x i  l )...( x  x n )
.
( x i  x 0 )... ( x i  x j1 ) ( x i  x i 1 )...( x i  x n )
Подставив эти формулы в исходный многочлен, получим:
L( x ) 
n
 yi
i 0
( x  x 0 )... ( x  x i  l ) ( x  x i  l )...( x  x n )
.
( x i  x 0 )... ( x i  x i 1 ) ( x i  x i 1 )...( x i  x n )
Эта формула называется интерполяционным многочленом Лагранжа.
Пример. Построить интерполяционный многочлен Лагранжа  4 ( x ) , совпадающий с функцией y  2 cos
x
4
в точках x 0  2; x1   ;
3
4
4
x 2  0; x 3  ; x 4  2 .
3
Решение. Составим таблицу
х
у
-2
0
-4/3
1
42
0
2
4/3
1
2
0
Подставляя эти значения в формулу Лагранжа, получим:
4

( x  2) ( x  0)  x   ( x  2)
3

L 4 (x)  1 

4
4
4
4
4





   2   0      2
 3
 3
 3 3  3

4 
4

( x  2)  x    х   ( x  2)
3 
3

2

4 
4

(0  2)  0    0   (0  2)
3 
3

4

( x  2)  x   ( x  0) ( x  2)
5

 1

 4 4 4
 4

4
  2      0   2
3
 3 3 3
 3

9 x 4  196 x 2  640
 0,0281x 4  0,6125 x 2  2.
320
Если функция y  f (x) непрерывно дифференцируема до (n  1) -го порядка включительно, то остаточный член интерполяционного многочлена в
форме Лагранжа имеет вид
f (n 1) ()
R n (x)  f (x)  L n (x) 
( x  x 0 ) ( x  x1 ) ... ( x  x n ) ,

(n  1)!
где  – внутренняя точка минимального отрезка, содержащего узлы интерполирования x 0 , x1 ,..., x n и точку x .
Многочлен Ньютона с конечными разностями
Рассмотрим случай равноотстоящих узлов интерполяции, т. е.
x j  x j1  const  h, i  2n, h – называется шагом.
Введем понятие конечных разностей. Пусть известны значения функции в
узлах x i : yi  f ( x i ) . Составим разности значений функции:
y 0  y1  y 0  f ( x 0  h )  f ( x 0 ),
y1  y 2  y1  f ( x 0  2h )  f ( x 0  h ),
y 2  y3  y 2  f ( x 0  3h )  f ( x 0  2h ),
...
y n 1  y n  y n 1  f ( x 0  nh )  f ( x 0  (n  1) h ).
43
Эти разности называются разностями первого порядка.
Можно составить разности второго порядка:
2 y 0  y1  y 0 , 2 y1  y 2  y1 ,..., 2 y n  2  y n 1  y n  2 .
Аналогично составляются разности k-го порядка:
k yi  k 1yi 1  k 1yi .
Выразим конечные разности непосредственно через значение функции:
y 0  y1  y 0 ,
2 y 0  y1  y 0  ( y 2  y1 )  ( y1  y 0 )  y 2  2 y1  y 0 ,
3 y 0  2 y1  2 y 0  y 3  2 y 2  y1  y 2  2 y1  y 0  y 3  3y 2  3y1  y 0 ,
4 y 0  y 4  4 y 3  6 y 2  4 y1  y 0 .
Таким образом, для любого k можно записать:
k (k  1)
k (k  1) (k  2)
yk 2 
y k 3 
2!
3!
k (k  1) (k  2) (k  3)

y k  4  ...  (1) k y 0 .
4!
Запишем эту формулу для значений разности в узле x i :
k y 0  y k  k y k 1 
k y i  y k  i  k  y k  i 1 
k (k  1)
y k  i  2  ...  (1) k y i .
2!
Используя конечные разности, можно определить
y k  y 0  k y 0 
k (k  1) 2
 y 0  ...  k y 0 .
2!
Перейдем к построению интерполяционного многочлена Ньютона. Этот
многочлен будем искать в виде
N ( x)  a0  a1 ( x  x0 )  a2 ( x  x0 ) ( x  x1 ) ...
 an ( x  x0 ) ( x  x1 ) ... ( x  xn 1 ) .
График многочлена должен проходить через заданные узлы, то есть
N(x i )  yi (i  0, n) . Используем эти условия для нахождения коэффициентов
многочлена:
44
N( x 0 )  a 0  y0 ,
N( x1 )  a 0  a1 ( x1  x 0 )  a 0  a1 h  y1,
N( x 2 )  a 0  a1( x 2  x 0 )  a 2 ( x 2  x 0 ) ( x 2  x1 ) 
 a 0  2a1h  2a 2 h 2  y 2 .
Найдем отсюда коэффициенты a j :
a 0  y0 ,
y a
y  y 0 y 0
a1  1 0  1

,
h
h
h
a2 
y 2  a 0  2a1h
2h
2

y 2  y 0  2y 0
2h 2
2 y 0

.
2h 2
Таким образом, для любого k -го коэффициента формула примет вид
k y 0
ak 
, k  0, n .
k
k!h
Подставляя эти формулы в выражение многочлена Ньютона, получим его
следующий вид:
y 0
2 y 0
N( x )  y 0 
(x  x 0 ) 
( x  x 0 ) ( x  x1)  ... 
2
h
2! h

n y 0
n! h
n
( x  x 0 ) ( x  x1)...( x  x n 1 ).
Полученную формулу можно записать в другом виде. Для этого введем
переменную q 
x  x0
.
h
x  x 0  q h,
x  x1 x  x 0  h

 q  1,
h
h
x  x 2 x  x1  h x  x 0  h  h


 q  2,
В этом случае
h
h
h
.......... .......... .......... .......... .......... .......... .......... ..
x  x n 1
 q  n  1.
h
45
С учетом этих соотношений формулу многочлена Ньютона можно записать в виде
N( x 0  qh )  y 0  qy 0 
q(q  1) 2
q(q  1)...( q  n  1) n
 y 0  ... 
 y0 .
2!
n!
Полученное выражение может аппроксимировать данную функцию
y  f (x) на всем отрезке изменения аргумента x 0 , x n  . Однако более целесообразно (с точки зрения повышения точности расчетов и уменьшения числа
слагаемых в полученой формуле) ограничиться случаем q  1, то есть использовать эту формулу для всех x  x 0 , x1  . Для других случаев вместо x 0 принять x j , если x  x i , x i 1  при i  0, n  1 . В этом случае интерполяционный
многочлен можно записать в виде
N( x i  qh )  yi  qyi 
q(q  1) 2
q(q  1)...( q  n  1) n
 yi  ... 
 yi ,
2!
n!
i  0,1, ..., n  1.
Полученная формула называется первым интерполяционным многочленом
Ньютона для интерполяции вперед. Эту интерполяционную формулу обычно
используют для вычисления значений функции в точках левой половины расk
сматриваемого отрезка. Это объясняется следующим: разности  y i вычисляются через значения функции y i , y i 1 ,..., y i  k , причем i  k  n . Из-за этого
при больших значениях i мы не можем вычислить высших порядков
( k  n  i) .
Для правой половины рассматриваемого отрезка разности лучше вычислять справа налево. В этом случае q  ( x  x n ) / h , то есть q  0 , и интерполяционный многочлен Ньютона можно получить в виде:
N( x n  qh )  y n  qy n 1 
q(q  1) 2
q(q  1) q  n  1 n
 y n  2  ... 
 y0 .
2!
n!
Полученная формула называется вторым интерполяционным многочленом
назад.
Пример. Используя интерполяционный полином Ньютона, вычислить
f (0,14) , где функция y  f (x) задана таблицей
х
у
0
0
0,1
0,1002
0,2
0,2013
46
0,3
0,8045
0,4
0,4108
0,5
0,5211
Решение. Составляем таблицу конечных разностей.
х
у
0
0
у
2 y
4 y
3 y
5 y
0,1002
0,1
0,1002
0,0009
0,1011
0,2
0,2013
0,0012
0,0021
0,1032
0,3
0,3045
0,0010
0,0001
0,0031
0,1063
0,4
-0,0002
0,4108
-0,0001
0,0009
0,0040
0,1103
0,5
0,5211
Для вычисления f (0,14) положим в интерполяционном многочлене Нью-
0,14  0,1
 0,4 и
0,1
0,0021
f (0,14)  0,1002  0,1011 0,4 
 0,4  (0,6) 
2
0,1010
0,0001

0,4  (0,6) (1,6) 
0,4 (0,6)  (1,6) (2,6)  0,1405.
3!
4!
тона вперед x i  0,1; h  0,1, тогда q 
0
0
Пример. Задана таблица. Найти sin14 и sin 36 .
х
sin x
150
0,2588
y
2 y
3 y
0,0832
200
0,3420
-0,026
0,0806
250
0,4226
0,0006
-0,032
0,0774
300
0,5
0,038
0,0736
350
0,0006
0,5736
47
При вычислении sin140 положим
0
0
x 0  15 , x  14 ; q 
140  150
5
sin 140  0,2588  (0,2) 0,0832 
0
 0,2 .
(0,2) (0,0026)

2!
(0,2) (1,2) (2,2)
 (0,0006)  0,241 900 8.
3!
При вычислении sin 360 положим
360  350
0
0
x n  35 ; x  36 , q 
 0,2 .
0
5
0,2 1,2
sin 360  0,5736  0,2  0,0736 
 (0,0038) 
2!
0,2 1,2  2,2

 (0,0006)  0,587 811 2.
3!

Оценим погрешности формул Ньютона вперед и назад:
x  x0
q(q  1) (q  2) ...  (q  n ) ( n 1)
f
() , где q 
и
h
(n  1)!
x  xn
q(q  1) (q  2) ...  (q  n ) ( n 1)
R n ( x )  h h 1 
f
() , где q 
.
h
(n  1)!
R n ( x )  h h 1
Формулы приближенного дифференцирования основаны на первой интерполяционной формуле Ньютона. Интерполяционный многочлен Ньютона имеет
вид
N( x )  y 0  qy 0 
где q 
q(q  1) 2
q(q  1) (q  2) 3
 y0 
 y 0  ...  ,
2!
3!
x  x0
и h  x i 1  x i , i  0,1...
h
Производя перемножение биномов, получим
q2  q 2
q 3  3q 2  2q 3
N( x )  y 0  qy 0 
 y0 
 y0 
2!
6
q 4  6q 3  11q 2  6q 4

 y 0  ...
24
dy dy dq 1 dy


  , то
так как
dx dq dx h dq
48
1
2q  1 2
3q 2  6q  2 3
N( x )  y 0 
 y0 
 y0 
h 
2
6

2q 3  9q 2  11q  3 4

 y 0  ...  .
12

Аналогично можно вычислять производные функции любого порядка.
В некоторых случаях требуется находить производные функций y в основных табличных точках x i . Так как табличное значение можно считать за
начальное, то положив x  x 0 , q  0 , имеем

2 y 0 3 y 0 4 y 0 5 y 0
1 
N( x 0 )  y 0 



 ...  ,

h 
2
3
4
5

Для производной многочлена Ньютона первого порядка погрешность мо(1) k k 1y 0
жет быть вычислена по формуле R k ( x 0 ) 
,
h k 1
где k – число конечных разностей в многочлене Ньютона.
Пример. Найти y(50) функции y  lg x , заданной таблично.
Решение.
y
х
у
2 y
3 y
50
1,6990
0,0414
55
1,7404
-0,0036
0,0378
0,0005
60
1,7782
-0,0031
0,0347
65
1,8129
Здесь h  5 ; y(50) 
1
 0,0414  0,0018  0,0002   0,0087 .
5
Вычисляя погрешность, получим:
(1)3 0,0005
R 3 (50) 

 0,000025 .
5
4
Действительно, yx =
M 0,43429
=
;
x
x
y(50)=
0,43429
=0,0087 .
5
Таким образом, результаты совпадают до четвертого знака.
49
5. ВЫЧИСЛЕНИЕ СОБСТВЕННЫХ ЗНАЧЕНИЙ МАТРИЦЫ
МЕТОДОМ ДАНИЛЕВСКОГО
Сущность метода Данилевского заключается в том, что исходная матрица А:
 a11 a12

a 22
a
A   21
...
...

 a n1 a n 2
... a1n 

... a 2n 
... ... 

... a nn 
после n  1 преобразования подобия приводится к матрице Фробениуса Р:
 P1 P2 ... Pn 1 Pn 


1
0
...
0
0


P 
,
... ... ...
...
... 


1
0
 0 0 ...
1
то есть P  S AS , где S – неособенная матрица. Так как подобные матрицы
обладают одинаковыми характеристическими полиномами, то имеем:
0


det A  E  det P  E   1n n  P1n 1  P2n  2  ... Pn .
Вначале нужно строку a n1 a n 2 ... a n n 1 a n n привести в строку


0 ... 1 0 . Предполагая, что a n n 1  0 , разделим все элементы n  1 –
го столбца матрицы А на a n n 1 . Тогда её n -ая строка примет вид
a n1 a n 2 ...1 a n n .
Затем вычтем n  1- й столбец преобразованной матрицы, умноженный
соответственно на числа a n1 , a n 2,..., a nn , из всех остальных ее столбцов.
В результате получим матрицу, последняя строка которой имеет желаемый
вид 0 0 … 1 0.
Произведя те же операции над единичной матрицей, получим матрицу
 1

 0
M n 1  
m
 n 1,1
 0
где m n 1 1  
a ni
a n n 1
0
...
0
1
...
0
m n 1, 2
... m n 1 , n 1
...
0
0
при i  n  1.


0 
,
m n 1 , n 

1 
0
(1)
50
m n 1 n 1 
1
a n n 1
.
(1')
Эти операции равносильны умножению справа матрицы M n 1 на матрицу А.
 b11

 b 21
A M n 1  B   ...

 b n 1, 1
 0

b12
b 22
...
...
...
...
...
... b n 1, n 1
...
1
b n 1 2,
0
b1 n 1
b 2 n 1
b1 n 

b2 n 
,
...

b n 1, n 
0 
(2)
где b ij  a ij  a i n 1  m n 1 j при 1  i  n, j  n  1 ,
b i n 1  a i n 1 m n 1 n 1 при 1  i  n .
(2')
1
Для подобия матриц нужно умножить полученную матрицу на M n 1 сле1
1
ва: M n 1A M n 1  M n 1B .
Очевидно, обратная матрица имеет вид
0
 1

1
 0
M n11  
a
a n2
 n1
0
 0
0 

...
0
0 
.
... a n n 1 a n n 

...
0
1 
...
0
1
Обозначим M n 1A M n 1  С , то есть
C12
 C11

C 22
 C 21
C  M n11 B   ...
...

 C n 1 1 C n  2 2
 0
0

...
...
...
...
...
C1 n 

C 2 n 1
C2 n 
...
...  ,

C n 1 n 1 C n 1 n 
1
0 
где Cij  b ij при 1  i  n  2
C n 1 j 
n
 a nk b kj
C1 n 1
(3)
при 1  j  n ,
k 1
то есть полученная матрица С подобна матрице А.
51
(3')
Продолжая этот процесс, получим матрицу Фробениуса.
P  M11M 21...M n11 A M n 1 ...M 2 M1,
если все n  1 промежуточных преобразований возможны.
Пример. Привести к виду Фробениуса матрицу:
1

5
A 
7

8
3 2 4

9 4 1
.
3 2 6

7 8 4 
Решение. Вычисления будем располагать в таблице 4. В строках 1–4 помещаем элементы a ij (i, j 1, 2, 3, 4) данной матрицы и контрольные суммы
a i5 
4
 a ij
(i  1, 2, 3, 4) в
  . Элемент
a 43  8 . В строке I записываем
j1
элементы третьей строки матрицы M n 1  M 3 , вычисляемые по формулам (1), (1'):
a
8
m31   41    1,
a 43
8
a
7
m32   42    0,875,
a 43
8
1
  0,125 ,
a 43 8
a
4
m34   44    0,5 .
a 43
8
m33 
1
a
Сюда же помещаем элемент m35   45  3,375 . Число -3,375 должно
a 43
совпасть с элементами строки I , не входящими в контрольный столбец (после
замены элемента m 33 на -1).
1
1
В строках 5–8 в графе M
выписываем третью строку матрицы M ,
которая совпадает с четвертой строкой исходной матрицы А. В строках 5–8 в
соответствующих столбцах выписываем элементы матрицы B  AM 3 , вычисляемые по формулам (2), (2'):
b11  1  2(1)  1,
b 21  5  4(1)  1,
b 31  7  2(1)  5,
b 41  8  8(1)  0.
52
Преобразованные элементы третьего столбца получаются с помощью
умножения исходных элементов на m 33  0,125 . Например,
b13  0,25,
b 23  0,5,
b 33  0,25, b 43  1.
Таблица 4
Номер
строки
1
2
3
4
8
Столбцы матрицы
2
3
3
2
9
4
3
2
8
7
-1
-0,875
8
7
-1
1
1,25
5,5
0,125
-1
0,25
0,5
8
5
1,25
4
0
39
0
M1
1
1
5
7
Σ
4
4
1
6
10
19
18
4
27
Σ/
I
M 31 M 3
5
6
-0,5
-3,375
3
-1
3,5
6,0
3,25
5,5
0,25
5
11,5
11,25
1
11,5
0
57
1
166
0
7
8
7/
58,5
II
-0,67
0,017
-1
-0,127
-0,97
-2,83
-1,8333
-2,666
0,021
0,094
0,004
-0,5811
1,782
-6,3589
-0,026
-9,512
-0,047
-9,606
0
0
-227,4597
1
0
17,818
0
1
23,16165
0
0
-302,4
1
1
-488,966
0
1
0,0783
0,1
-1,3298
-2,14
-227,45
0,0044
1
0,008
-0,1226
-0,1827
4,22
3,9228
17,818
1
0
0
0
1
3,911
48
0
23,16165
-302,497
0
0
16
1
0
51
0
1
-261
0
0
-960
1
1
1
1
M2
39
58,5
M
9
10
11
12
10/
1
2
11,5
57
III
M11 M 1
13
13
53
Соответственно, последняя строка матрицы В имеет вид (0 0 1 0). Для контроля пополним матрицу В преобразованными по аналогии элементами:
b16  10  2(3,375)  3, 25;
b36  18  2(3,375)  11, 25;
b 26  19  4(3,375)  5,5;
b 46  27  8(3,375)  0.
Полученные результаты записываем в столбце Σ/ . Прибавив к ним элементы третьего столбца, будем иметь контрольные суммы:
4
bi5   bij
(i  1, 2, 3, 4) для строк 5–8 (столбец Σ) .
j1
1
Преобразование M
, произведенное над матрицей В и дающее матрицу
3
C  M31B , изменяет лишь третью строку матрицы В, то есть седьмую строку
таблицы. Элементы строки 7 получаются по формулам (3), ( 3 ) . Например:
C31  8 (1)  7 1 8  5  39 .
Те же преобразования проводим над столбцом Σ:
C35  8  3,5  7  6  8 11,5  4 1166 .
В результате получаем матрицу С, состоящую из строк 5, 6, 7 , 8 с контрольными суммами Σ. Далее, приняв матрицу С за исходную и выделив элемент C32  58,5 , продолжим процесс аналогичным образом.
Таким образом, матрица Фробениуса имеет вид
16 51  261  960 


1
0
0
0


P
0 1
0
0 


0
0
1
0


4
3
2
Отсюда, решая уравнение   16  51  261  960  0 , найдем
собственные значения исходной матрицы.
6. ВЫЧИСЛЕНИЕ ОПРЕДЕЛЁННЫХ ИНТЕГРАЛОВ.
МЕТОД СИМПСОНА (МЕТОД ПАРАБОЛ)
 x i , x i1  , i  0,2,... ,
 xi , f  xi  ,  xi , f  xi  ,
Заменим график функции y  f  x  на отрезке
n  1, параболой, проведенной
x
i1
через
точки
, f  x i1   , где x i – середина отрезка  x i , x i1  . Эта парабола есть интер54
поляционный многочлен второй степени L2  x  с узлами x i , x i , x i1 . Нетрудно убедиться, что уравнение этой параболы имеет вид:
y  L2  x   f  xi  
где h 
f  x i1   f  x i 
h
 x  xi  
f  x i1   2f  xi   f  x i 
2
h /2
 x  xi 
2
,
ba
.
n
Проинтегрировав эту функцию на отрезке  x i , x i1  , получим
Ii 
x i 1

xi
f  x  dx 
x i 1

L 2  x  dx 
xi
h
f  x i   4f  x i   f  x i1   .

6
Суммируя полученные выражение по i  0,1,2,..., n  1, получим квадратурную формулу Симпсона (или формулу парабол):
n 1
n 1
h

I   f  x  dx  IC   f  x 0   f  x n   4 f  x i   2 f  x i   .
6
i 0
i 1

a
b
Оценка погрешности. Для оценки погрешности формулы Симпсона воспользуемся следующей теоремой.
Теорема. Пусть функция f имеет на отрезке  a, b  непрерывную произ-
 x  . Тогда для формулы Симпсона справедлиM4  b  a  4
ва следующая оценка погрешности: I  I 
h , где
водную четвертого порядка f
 4
C
M4  max f 
2880
4
a,b
x .
Замечание. Если число элементарных отрезков, на которые делится отрезок  a, b  , четно, т.е. n  2m , то параболы можно проводить через узлы с целыми индексами, и вместо элементарного отрезка  x i , x i1  длины h рассматривать отрезок  x 2i , x 2i2  длины 2h . Тогда формула Симпсона примет вид:
m
m 1
h

I   f  x 0   f  x 2m   4 f  x 2i1   2 f  x 2i   , а вместо последней
3
i 1
i 1

оценки будет справедлива следующая оценка погрешности:
I  IC 
M4  b  a 
180
55
h4 .
Правило Рунге практической оценки погрешности.
Оценка погрешности зависит от длины элементарного отрезка h , и при
h
k
достаточно малом h справедливо приближенное равенство: I  I  Ch , где
I h приближенное значение интеграла. Если уменьшить шаг h в два раза, то получим: I  I
h/2

1
1
Ch k  k  I  I h  .
k
2
2
Вычитая одно из другого, получим: I
II
h/2
h/2
 Ih 
1
k
k
Ch
2
 1 , или

2k
Ih / 2  Ih
.
 k
2 1
Это приближенное равенство дает оценку погрешности. Вычисление этой
оценки называется правилом Рунге. Правило Рунге – это эмпирический способ
оценки погрешности, основанный на сравнении результатов вычислений, проводимых с разными шагами h . Для формулы Симпсона k  4 , и оценка при-
1 h/2 h
 IC  IC  . Используя правило Рунге, можно построить
15
процедуру приближенного вычисления интеграла с заданной точностью  .
Нужно, начав вычисления с некоторого значения шага h , последовательно
нимает вид: I  I C 
уменьшать это значения в два раза, каждый раз вычисляя приближенное значеh
ние I i . Вычисления прекращаются тогда, когда результаты двух последующих
вычислений будут различаться меньше, чем на  .
1
Пример. Вычислить
dx
0 1  x 2 .
Решение. Возьмём n  8 , тогда h 
i
xi
0
1
2
3
4
5
6
7
8
0
0,125
0,250
0,375
0,5
0,625
0,750
0,875
1
y неч
y0 , y n
10)0,54)
0,984625
0,9411761)
0,876712
0,82)
0,7191
0,643)
0,566389
3,45955
Ih 
1 0
 0,125 .
8
y чёт
1,62818
0,125
1,5  4  3,45655  2 1,62818  0,785398 .
3
56
1,5
0,25
1,5  4  0,941176  0,64   2  0,8   0,785392 .

3
1
I  Ic   0,785398  0,785392   0,0000006 .
15
Следовательно, значение интеграла можно счесть I h  0,785398 .
I 2h 
7. ЧИСЛЕННОЕ РЕШЕНИЕ
ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ
7.1. ПОСТАНОВКА ЗАДАЧИ КОШИ
Известно, что обыкновенное дифференциальное уравнение первого порядка имеет вид: y  t   f t, y  t  .


Решением этого уравнения является дифференцируемая функция y  t  ,
которая при подстановке в уравнение обращает его в тождество. На рис. 13
приведен график решения исходного дифференциального уравнения. График
решения дифференциального уравнения называется интегральной кривой.
Рис. 13
Производную y  t  в каждой точке  t, y  можно геометрически интер-
претировать как тангенс угла  наклона касательной к графику решения, проходящего через эту точку, т е.: k  tg  f  t, y  .
Исходное уравнение определяет целое семейство решений. Чтобы выделить одно решение, задают начальное условие: y  t 0   y0 , где t 0 – некоторое
заданное значение аргумента t , а y 0 – начальное значение функции.
57
Задача Коши заключается в отыскании функции y  y  t  , удовлетворяющей исходному уравнению и начальному условию. Обычно определяют решение задачи Коши на отрезке, расположенном справа от начального значения
t 0 , т. е. для t  t 0 , T  . Разрешимость задачи Коши определяет следующая теорема.
Теорема. Пусть функция
t0  t  T ,
  y  
и
f  t, y  определена и непрерывна при
удовлетворяет
условию
Липшица:
f  t, y1   f  t, y2   L y1  y2 , где L некоторая постоянная, а y1 , y 2 – про-
извольные значения. Тогда для каждого начального значения y 0 существует
единственное решение y  t  задачи Коши для t  t 0 , T  .
Даже для простых дифференциальных уравнений первого порядка не всегда удается получить аналитическое решение. Поэтому большое значение имеют численные методы решения. Численные методы позволяют определить приближенные значения искомого решения y  t  на некоторой выбранной сетке
значений аргумента t i ,  i  0,1,... . Точки t i называются узлами сетки, а ве-
личина h i  t i1  t i – шагом сетки. Часто рассматривают равномерные сетки,
T  t0
. При этом решение получается
n
в виде таблицы, в которой каждому узлу сетки t i соответствуют приближенные
для которых шаг h i постоянен, h i  h 
значения функции y  t  в узлах сетки yi  y  t i  .
Численные методы не позволяют найти решение в общем виде, зато они
применимы к широкому классу дифференциальных уравнений.
Сходимость численных методов решения задачи Коши. Пусть y  t  –
решение задачи Коши. Назовем погрешностью численного метода функцию
i  y  t i   yi , заданную в узлах сетки t i . В качестве абсолютной погрешности
примем величину R  max y  t i   yi .
0i  n
Численный метод решения задачи Коши называется сходящимся, если для
него R  0 при h  0 . Говорят, что метод имеет p -ый порядок точности, есp
ли для погрешности справедлива оценка R  Ch , p  0 , C – константа,
C  0.
58
7.2. МЕТОД ЭЙЛЕРА
Простейшим методом решения задачи Коши является метод Эйлера. Будем
решать задачу Коши
 y  t   f  t, y  t  

 y  t 0   y 0
T  t0
на отрезке  t 0 , T  . Выберем шаг h 
и построим сетку с системой узn
лов t i  t 0  ih, i  0, 1,..., n . В методе Эйлера вычисляются приближенные
значения функции y  t  в узлах сетки: yi  y  t i  . Заменив производную y  t 
конечными разностями на отрезках  t i , t i1  , i  0,1,..., n  1, получим при-
yi1  yi
 f  t i , yi  , i  0,1,..., n 1, которое можно
h
переписать так: yi1  yi  hf  t i , yi  , i  0,1,..., n 1 .
ближенное равенство:
Эти формулы и начальное условие являются расчетными формулами метода Эйлера.
Геометрическая интерпретация одного шага метода Эйлера заключается в
том, что решение на отрезке  t i , t i1  заменяется касательной
y  y  t i  t  t i  , проведенной в точке  t i , y  t i   к интегральной кривой,
проходящей через эту точку. После выполнения n шагов неизвестная интегральная кривая заменяется ломаной линией (ломаной Эйлера).
Оценка погрешности. Для оценки погрешности метода Эйлера воспользуемся следующей теоремой.
Теорема. Пусть функция f удовлетворяет условиям:
f
 K,
y
df
f f

 f  L.
df
f y
Тогда для метода Эйлера справедлива следующая оценка погрешности:
l2 L KL l2 h KL
R  max y  t i   yi 
e 
e , где l – длина отрезка  t 0 , T  . Мы
0in
2n
2
видим, что метод Эйлера имеет первый порядок точности.
Оценка погрешности метода Эйлера часто бывает затруднительна, так как
требует вычисления производных функции f t, y  t  . Грубую оценку по-


грешности дает правило Рунге (правило двойного пересчета), которое используется для различных одношаговых методов, имеющих p -ый порядок точh/2
ности. Правило Рунге заключается в следующем. Пусть yi
59
– приближения,
полученные с шагом
h
h
, а yi – приближения, полученные с шагом h . Тогда
2
справедливо приближенное равенство:
1
yih / 2  yih .
2 1
yih / 2  y  t i  
p
Таким образом, чтобы оценить погрешность одношагового метода с шагом
h / 2 , нужно найти то же решение с шагом h и вычислить величину, стоящую
1
h/2
h
y

y
. Так как метод Эйлера
i
i
2p  1
имеет первый порядок точности, т. е. p  1 , то приближенное равенство имеет
справа в последней формуле, т .е. R 
вид: R  yi
h/2
 yih .
Используя правило Рунге, можно построить процедуру приближенного
вычисления решения задачи Коши с заданной точностью  . Для этого нужно,
начав вычисления с некоторого значения шага h , последовательно уменьшать
h/2
это значение в два раза, каждый раз вычисляя приближенное значение yi ,
i = 0, 1,..., n . Вычисления прекращаются тогда, когда будет выполнено усло1
yih / 2  yih   . Для метода Эйлера это условие примет вид:
вие: R  p
2 1
R  yih / 2  yih   . Приближенным решением будут значения yih / 2 ,
i = 0, 1,..., n .
Пример 1. Найдем решение на отрезке  0, 1 следующей задачи Коши:
y  t   y 
1 0
2t
 5.
, y  0   1 . Возьмем шаг h  0,2 . Тогда n 
0,
2
y
Расчетная формула метода Эйлера имеет вид:

2t 
yi1  yi  0,2  yi  i  , y0  1, i  0,1,2,3,4,5 .
yi 

Решение представим в виде таблицы 5:
Таблица 5
i
ti
yi
0
0
1
0,2
2
0,4
3
0,6
4
0,8
5
1,0
1,0000
1,2000
1,3733
1,5294
1,6786
1,8237
60
Исходное уравнение есть уравнение Бернулли. Его решение можно найти в
явном виде: y 
2t  1 .
Для сравнения точного и приближенного решений представим точное решение в виде таблицы 6:
Таблица 6
i
ti
y  ti 
0
0
1
0,2
2
0,4
3
0,6
4
0,8
5
1,0
1,0000
1,1832
1,3416
1,4832
1,6124
1,7320
Из таблицы видно, что погрешность составляет
R  max y  t i   yi  0,0917 .
0k 5
7.3. МОДИФИЦИРОВАННЫЕ МЕТОДЫ ЭЙЛЕРА
Первый модифицированный метод Эйлера. Суть этого метода состоит в
следующем. Сначала вычисляются вспомогательные значения искомой функции yi1/ 2 в точках t 1  t i  h / 2 с помощью формулы:
i
2
y
i
1
2
h
h
 yi  f i  yi  f  t i , y i  .
2
2
Затем находится значение правой части исходного уравнения в средней
точке f
1
i
2


 f  t 1 , y 1  и затем полагается yi1  yi  hf 1 , i  0,1,...,n 1.
i
2
 i 2 i 2 
Эти формулы являются расчетными формулами первого модифицированного метода Эйлера.
Первый модифицированный метод Эйлера является одношаговым методом
со вторым порядком точности.
Второй модифицированный метод Эйлера – Коши. Суть этого метода
состоит в следующем. Сначала вычисляются вспомогательные значения
yi1  yi  hf  t i , yi  .
Затем приближения искомого решения находятся по формуле:
yi1  yi 
h
f  t i , yi   f  t i1 , yi1   , i  0,1,...,n  1.
2
Эти формулы являются расчетными формулами второго модифицированного метода Эйлера – Коши.
61
Второй модифицированный метод Эйлера – Коши так же, как и первый,
является одношаговым методом со вторым порядком точности.
Оценка погрешности. Приближенная оценка погрешности модифицированных методов Эйлера осуществляется как и для простого метода Эйлера с
использованием правила Рунге. Так как оба модифицированных метода Эйлера
имеют второй порядок точности, т. е. p  2 , то оценка погрешности примет
вид: R 
1 h/2
yi  yih .
3
Используя правило Рунге, можно построить процедуру приближенного
вычисления решения задачи Коши модифицированными методами Эйлера с заданной точностью  . Нужно, начав вычисления с некоторого значения шага h ,
последовательно уменьшать это значение в два раза, каждый раз вычисляя приh/2
ближенное значение yi , i  0,1,...,n . Вычисления прекращаются тогда, ко-
1 h/2
yi  yih   .
3
h/2
Приближенным решением будут значения yi , i  0,1,...,n .
гда будет выполнено условие: R 
Пример 2. Применим первый модифицированный метод Эйлера для решения задачи Коши y  t   y  (2t / y), y  0   1 , рассмотренной ранее в
предыдущем примере. Возьмем шаг h  0,2 . Тогда n 
формула
первого
yi1  yi  hfi1/ 2
f
1
i
2
модифицированного
 yi  0,2fi1/ 2 , где
 f  t i1/ 2 , yi1/ 2   yi1/ 2 
метода
1 0
 5 , и расчетная
0, 2
Эйлера
имеет
вид:
2t i1/ 2
, t i1/ 2  t i  h / 2  t i  0,1 ,
yi1/ 2

2t 
h
yi1/ 2  yi  f  t i , yi   yi  0,1 yi  i  , t 0  0, y0  1, i  0,1,...,4 .
2
yi 

Решение представим в виде таблицы 7.
Таблица 7
i
ti
yi
0
1
2
3
4
5
0
0,2
0,4
0,6
0,8
1
1
1,1836
1,3426
1,4850
1,6152
1,7362
(h / 2)f  t i , yi 
t i1/ 2
yi1/ 2
h f i1/ 2
0,1
0,0850
0,0747
0,0677
0,0625
0,1
0,3
0,5
0,7
0,9
1,1
1,2682
1,4173
1,5527
1,6777
0,1836
0,1590
1,1424
0,1302
0,121
62
Третий
столбец таблицы 3 содержит приближенное решение
yi , i = 0, 1,..., 5 . Сравнивая полученное приближенное решение с точным
решением, представленном в таблице 2, видим, что погрешность составляет
R  max y  t i   yi  0,0042 .
0 k 5
Пример 3. Применим второй модифицированный метод Эйлера – Коши
для решения задачи Коши y  t   y  2t / y, y  0   1 , рассмотренной ранее в
примерах 1 и 2. Так же, как и ранее, зададим шаг h  0,2 . Тогда
n
1 0
 5.
0, 2
В соответствии с данными формулами получим расчетную формулу метода Эйлера – Коши:
h
f  t i , yi   f  t i1 , yi1    yi  0,1 f  t i , yi   f  t i 1 , yi 1   ,
2

2t
2t 
где f  t i , yi   yi  i , yi1  yi  hf  t i , yi   yi  0,1 yi  i  , t 0  0 ,
yi 
yi

y0  1 , i  0,1,...,4 .
yi1  yi 
Решение представим в виде таблицы 8.
Таблица 8
i
ti
yi
0
1
2
3
4
5
0
0,2
0,4
0,6
0,8
1
1
1,1867
1,3484
1,4938
1,6272
1,7542
(h / 2)f  t i , yi 
ti  1
yi  1
f  t i1 , yi1 
0,1
0,0850
0,0755
0,0690
0,0645
0,2
0,4
0,6
0,8
1
1,2
1,3566
1,4993
1,6180
1,7569
0,867
0,767
0,699
0,651
0,618
Таблица 8 заполняется последовательно по строкам, сначала первая строка, затем вторая и т. д. Третий столбец таблицы 8 содержит приближенное решение yi , i  0,1,...,5 .
Сравним полученное приближенное решение с точным решением, представленном в таблице 7. Видим, что погрешность составляет
R  max y  t i   yi  0,0222 .
0 k 5
63
7.4. МЕТОД РУНГЕ – КУТТА
Метод Рунге – Кутта является одним из наиболее употребительных методов высокой точности. Метод Эйлера можно рассматривать как простейший
вариант метода Рунге – Кутта.
Рассмотрим задачу Коши для дифференциального уравнения
y  t   f t, y  t  с начальным условием y  t 0   y0 .


Как и в методе Эйлера, выберем шаг h 
мой узлов t i  t 0  ih, i  0,1,...,n .
T  t0
и построим сетку с систеn
Обозначим через y i приближенное значение искомого решения в точке t i .
Приведем расчетные формулы метода Рунге – Кутта четвертого порядка точности:
yi1  yi  (1/ 6)h  k1i  2k i2  2k i3  k i4  , k1i  f  t i , y i  ,
k i2  f  t i  h / 2, yi  (h / 2)k1i  , k 3i  f  t i  h / 2, yi  (h / 2)k i2  ,
k i4  f  t i  h, yi  hk i3  , i = 0, 1,..., n .
Оценка погрешности. Оценка погрешности метода Рунге – Кутта затруднительна. Грубую оценку погрешности дает правило Рунге. Так как метод Рунге – Кутта имеет четвертый порядок точности, т. е. p  4 , то оценка погрешности примет вид: R  (1/15) yi
h/2
 yih .
Используя правило Рунге, можно построить процедуру приближенного
вычисления решения задачи Коши методом Рунге – Кутта четвертого порядка
точности с заданной точностью  . Нужно, начав вычисления с некоторого значения шага h , последовательно уменьшать это значение в два раза, каждый раз
h/2
вычисляя приближенное значение yi , i  0,1,...,n . Вычисления прекращаются тогда, когда будет выполнено условие: R  (1/15) yi
h/2
 yih   .
Приближенным решением будут значения yi , i  0,1,...,n .
Пример 4. Методом Рунге-Кутта четвертого порядка точности найдем решение на отрезке  0,1 следующей задачи Коши y(t)  2ty, y(0)  1.
h/2
Возьмем шаг h  0,1. Тогда n 
1 0
 10 .
0,1
Расчетные формулы имеют вид:
yi1  yi  (1/ 6)h  k1i  2k i2  2k i3  k i4  , k1i  2t i yi ,
k i2  2  t i  h / 2   yi  (h / 2)k1i  ,
k 3i  2  t i  h / 2   yi  (h / 2) k i2  , k i4  2  t i  h   yi  hk i3  , i  0,1,...,10 .
64
Задача имеет точное решение: y  t   e , поэтому погрешность определяется как абсолютная величина разности между точными и приближенными значениями i  y  t i   yi .
t2
Найденные приближенные значения решения y i и их погрешности  i
представлены в таблице 9.
Таблица 9
ti
yi
0
1
0,1
1,01005
0,2
1,04081
0,3
1,09417
0,4
1,17351
0,5
1,28403
i
ti
yi
i
0,6
1,43333
10-9
0,7
1,63232
4 109
2 109
6 108
2 107
0,8
1,89648
0,9
2,2479
1
2,71827
5 107
2 106
3 106
6 106
2 105
7.5. РЕШЕНИЕ КРАЕВОЙ ЗАДАЧИ ДЛЯ ЛИНЕЙНОГО
ДИФФЕРЕНЦИАЛЬНОГО УРАВНЕНИЯ ВТОРОГО ПОРЯДКА
МЕТОДОМ ПРОГОНКИ
Пусть на отрезке a , b требуется найти решение дифференциального
уравнения:
y  p(x) y  q(x) y  f (x) ,
(1)
удовлетворяющее следующим краевым условиям:
 0 y(a )  1y(a )  A ;
0  1  0 ;
0 y(b)  1y(b)  B ;
0  1  0
(2)
Численное решение задачи состоит в нахождении приближенных значений
y 0 , y1 , ..., y n искомого решения y( x ) в точках x 0 , x1 , ..., x n . Для этого разобьем отрезок
a, b
на n равных частей с шагом h 
ba
. Полагая
n
x i  x 0  ih,
x 0  a; x n  b i  0,1, ...., n 
и
вводя
обозначения
p( x i )  pi , q( x i )  q i , f ( x i )  f i , y( x i )  yi для внутренних точек
x  x i (i  1, 2,..., n  1) отрезка a , b, вместо дифференциального уравнения
(1)–(2) получаем систему конечноразностных уравнений:
65
yi 1  yi 1
 yi 1  2 yi  yi 1

p
 q i yi  f i , i  1, 2, .... n  1
i

2
2
h
h

 y   y1  y 0  A,  y   y n 1  y n  B .
1
0 n
1
 0 0
h
h
После соответствующих преобразований будем иметь
yi 1  mi yi  n i yi 1  f̂ i h 2 , i  1, 2, ..., n  1 ,
(3)
где
p
1 i h
2  qi h
2 , f̂  f i .
mi  
, ni 
i
pi
pi
p
1 h
1 h
1 i h
2
2
2
Полученная система имеет (n  1) линейных уравнений с (n  1) неиз2
вестными. Решим эту систему методом прогонки.
Решая уравнение (3) относительно yi , будем иметь
f̂
1
n
yi  i h 2 
yi1  i yi1.
mi
mi
mi
Предположим, что из этого уравнения исключена неизвестная y i 1 . Тогда
это уравнение примет вид
yi  ci d i  yi 1  ,
(4)
где ci , d i i  1, 2,..., n  1 – некоторые коэффициенты.
Отсюда y i 1  c i 1 d i 1  y i . Подставляя это выражение в (3), полу2
чим yi 1  mi yi  n i ci 1 d i 1  yi   f̂ i h и, следовательно,

f̂ i h 2  n i c i 1d i 1  y i 1
.
yi 
m i  n i c i 1
(5)
Сравнивая формулы (4) и (5), получим для определения ci и d i рекуррентные формулы:
1
, d i  f̂ i h 2  n i ci 1d i 1 ,
mi  n i ci 1
Определим с 0 и d 0 :
Ah  1y1
.
y0 
 0 h  1
ci 
66
i  1, 2,...., n  1 .
Из формулы (4) при i  0 имеем
y 0  c 0 (d 0  y1 ) .
(6)
Поэтому
c0 
1
Ah
, d0 
.
1
 0 h  1
(7)
На основании формул (6) и (7) последовательно определяются коэффициенты сi , d i i  1, 2, ..., n  1 до c n 1 и d n 1 включительно (прямой ход).
Обратный ход начинается с определения y n . Решая систему
y
 yn
 0 y n  1 n 1
 B , y n 1  c n 1 d n 1  y n  ,
h
получим
yn 
Bh  1c n 1d n 1
0 h  1 c n 1  1
и по формуле (4) последовательно находим y n 1 , y n  2 , ..., y 0 .
Для простейших краевых условий y(a )  A, y(b)  B формулы для
c 0 , d 0 , y 0 и y n упрощаются. Полагая  0  1, 1  0, 0  1, 1  0, получим c 0  0; d 0  , c 0 d 0  A .
1
Отсюда c1 
, d1  f̂1h 2  n1A, y n  B, y 0  A .
m1
Пример. Методом прогонки решить краевую задачу:
y  x  y, y(0)  0, y(1)  0 .
Решение. Пусть h  0,1 .
yi 1  mi yi  n i yi 1  f̂ i h 2 i  1, 2, ...,n  1 ;
y 0  0; y10  0;
mi  2  h 2 , n i  1; f̂ i  x i  ih ;
1
c1 
 0,498 ; d1  f̂1h 2  n1A  0,001;
m1
1
сi 
; d i  ih 3  ci 1d i 1 i  1, 2, ..., n  1 .
 2  h 2  ci 1
Найденные значения ci и d i i  1, 2,..., 9 записываем в первых двух
строках таблицы. Используя известное значение y10  0 , вычислим
67
y 9 , y8 , ...y1 и запишем в таблицу. Для значения в последней строке даны зна2e
чения точного решения ~
y
shx  x .
2
e 1
Таблица 10
0
0
i
сi
di
xi
yi
~y
i
0
0
0
1
-0,498
0,001
0,1
-0,025
-0,015
2
-0,662
0,002
0,2
-0,049
-0,029
3
-0,878
0,004
0,3
-0,072
-0,041
4
-0,890
0,008
0,4
-0,078
-0,050
5
-0,900
0,012
0,5
-0,081
-0,057
i
сi
di
6
-0,908
0,16
7
-0,915
0,022
8
-0,921
0,028
9
-0,926
0,035
10
xi
0,6
-0,078
-0,058
0,7
-0,070
-0,054
0,8
-0,055
-0,044
0,9
-0,032
-0,026
1
0
0
yi
~y
i
68
ПРИЛОЖЕНИЕ
1. Решить уравнение методом половинного деления, хорд с точностью
  0,00001.
1
2x  5x  3  0
8
sin  x   / 3  0,5x  0
2
3
3x  4x3  12x 2  5  0
2
0,5x  1   x  2 
9
10
5x  3x  0
x4  x 1  0
4
 x  3  cos x  1, 2  x  2
11
x 2  2  0,5x  0
5
arctg x  1/ 3x 3  0
12
 x  1
6
7
2x3  9x 2  60x  1  0
log 2   x    x  2   1
13
14
lg  x  11  1
2x  sin x  0, 25
2
x3  3x 2  10  0
2. Решить уравнение методом Ньютона и итерации с точностью
  0,00001.
1
ln x   x  1  0
8
2
3
4
5
x3  3x 2  9x  15  0
x3  2x 2  2  0
x  2x  1
x  1 1/ x
x3  2x  2  0
x  cos x  0
9
10
11
12
6
7
3
13
14
x3  3x  1  0
3x  cos x  1  0
x3  x  3  0
x  lg x  0,5
x 3  0,4x 2  0,6x  1,6  0
2x20
x 3  0,2x 2  0,4x  1,4  0
3. Решить уравнение методом хорд и касательных и видоизменённым
Ньютона с точностью   0,00001.
1
2
3
4
5
6
7
2  0,1x  ln x
x 3  0,1x 2  0,4x  2  0
 2  x  ex  0
x3  3x 2  12x  3  0
2,2x  2 x  0
x 3  0,2x 2  0,5x  1  0
x 2  4sin x  0
8
9
10
11
12
13
14
69
2x  lg x  7
x3  3x 2  6x  5  0
5x  8ln x  8
x 3  0,2x 2  0,5x  1,7  0
x  lg x  1,2  0
1,8x 2  sin x  0
3x  cos x  1  0
4. Решить систему x  Cx  d методом простой итерации с точностью
  0,00001.
С
d
С
d
1
0,3 0,1 0,2 
 0
 0,2

0

0,21
0,2


 0,3 0,1
0
0,3 


0,3

0,1

0,2
0


 1 
 4 
 
 2 
 
 0,1
2
0,13 0,4 0,2 
 0
 0,25

0

0,14
0,2


 0,3 0,1
0
0,3 


0,3

0,4

0,2
0


 1 
 4 
 
 2 
 
 0,1
3
 0 0,27 0,1 0,2   1 
 0,2
  4 
0

0,26
0,2

  
 0,3 0,1
0
0,5   2 

  
0   0,1
 0,2 0,1 0,2
4
0,23 0,2 0,2 
 0
 0,1

0

0,24

0,1


 0,2 0,1
0
0,2 


0 
 0,23 0,4 0,2
 1 
 2 
 
 2 
 
 0,1
5
0,3 0,1 0,2 
 0
 0,2

0
0,1

0,2


 0,3 0,1
0
0,3 


0 
 0,3 0,1 0,2
 1 
 4 
 
 2 
 
 0,1
6
0,3
0,4
0,2 
 0
 0,1

0

0,14
0,14


 0,1 0,1
0
0,3 


0 
 0,3 0,4 0,2
 1 
 1 
 
 2 
 
 0,1
7
0,3 0,4 0,2 
 0
 0,1

0

0,14

0,1


 0,1 0,1
0
0,3 


0 
 0,3 0,4 0,2
 1 
 1 
 
 2 
 
 0,1
8
0,1 0,1 0,2 
 0
 0,2

0

0,2
0,1


 0,13 0,2
0
0,3 


 0,1 0,1 0,2 0 
 1 
 1 
 
 2 
 
 0,1
9
0,1 0,4 0,2   1  10
 0
 0,15
  2 
0
0,1
0,2

  
 0,3 0,1
0
0,3   2 

  
0,1

0,14

0,2
0

  0,1
0,3 0,1 0,2 
 0
 0,2
0
0,1 0,2 

 0,1 0,2
0
0,1 


0,1
0,2

0,2
0


 1 
 0,5 


 2 


0,1


11
0,3 0,1 0,2   1  12
 0
 0,2
  0,5 
0

0,1

0,2

  
 0,1 0,2
0
0,1   2 

  
0,1
0,2

0,2
0

  0,1 
0,3 0,14 0,2 
 0
 0,11

0

0,41

0,1


 0,1 0,1
0
0,13 


0,13

0,4

0,2
0


 1 
 1 
 
 2 
 
 0,1
70
13
0,3 0,1 0,2 
 0
 0,2

0
0,1
0,2


 0,1 0,2 0 0,1


0,1

0,2
0,2
0


 1  14
 0,5 
 
 2 
 
 0,1 
0,3 0,14 0,2 
 0
 0,11

0
0,41
0,1


 0,1 0,1
0
0,13 


0,13
0,4

0,2
0


 1 
 0,5 
 
 2 
 
 0,1 
5. Решить систему Ax  b методом Зейделя с точностью   0,00001.
А
1  0,9
0,3
5  1
0,23
0,1
 0,2 2
0

 0,1 0,2
1

 0,1 0,2 0,2
3  1
0,1
0
 0,2 1
0

 0,1 0,2
1

 0,1 0,2 0,2
0,1
 0,2
1
0

 0,1 0,2
1

 0,14 0,2 0,2
7  2
 0,2

 0,1

 0,1
9  4
 0,1

 0,1

 0,3
0,1
b
0,2 
0,2 
0,1 

1 
0,2 
0,2 
0,1 

1 
0,2 
0,2 
0 

1 
0,2 
3
0,1 0,2 
0,52
2
0,1 

0,2 0,2 2 
0,2 0,1 0,3 
3
0,2 0,3 
0,5
2
0,1 

0,2 0,2 2 
0,3
A
 1 
 5 
 
 2 
 
 0,1
 1 
 5 
 
 2 
 
 0,1
1
 2
 
 2
 
1
2 9
 1 
 5 
 
 2 
 
 0,1
 1 
 2 
 
 5 
 
 0,1
8 7
71
2

1

1
4 7
1

1

1
6  12
1

1

 11
1

1

1
10  6
3

2

1
3
1
3
1
7
1
0
6
2
2
b
2  1
7 1 1   5 
2 6 2   2 
  
1 2 9   1 
3 0 2  1
4 0 1   6 
1 6 2   2 
  
2 2 9   11 
3 2 2   1 
7 1
1   6 
2 11 2   2 
 
2 2 19   11 
1 1
5
1
1 6
4
3
2
0 
2 

9 
2
0 
1

8 
1
6
 
2
 
 11 
1
 3
 
 2
 
5
11  1
0,13 0,15 0,24 
 0,2


1
0,11

0,42


 0,11 0,2
1
0,11 


1 
 0,1 0,12 0,42
13  1
 0,2

 0,11

 0,1
0,13 0,15
1
0,2
0,12
0,2 
0,15 0,4 
1
0,1 

0,5
1 
 1 
 5 
 
 2 
 
 0,1
 1 
 5 
 
 2 
 
 0,1
12  7
1

1

1
14  8
2

1

1
3
7
1
2
2
7
1
2
1
0
0 1 
6 2 

0 9 
1 1 
1 1 
8 3

0 9
1
 6
 
 2 
 
 11 
 2
6
 
 3 
 
5
6. Решить систему методом простой итерации с точностью   0,00001.
1
3
5
7
9
11
13
sin( y  1)  x  1,2

2 y  cos( x )  2
sin( y)  2 x  2

cos( x  1)  y  0,7
sin( y  0,5)  x  1

cos( x  2)  y  0
sin( y  1)  x  1,3

 y  sin( x  1)  0,8
cos( y  0,5)  x  2

sin( x )  2 y  1
sin( x  1)  y  1

2 x  cos( y)  2
sin( x )  2 y  1,6

cos( y  1)  x  1
2
4
6
8
10
12
14
72
cos( y  1)  x  0,5

 y  cos( x )  3
cos( y)  x  1,5

2 y  sin( x  0,5)  1
cos( y  0,5)  x  0,8

sin( x )  2 y  1,6
2 x  cos( y  1)  0

 y  sin( x )  0,4
sin( y  2)  x  1,5

 y  cos( x  2)  0,5
cos( x  1)  y  0,8

x  cos( y)  2
cos( x )  y  1,2

2 x  sin( y  0,5)  2
7. Решить систему методом Ньютона с точностью   0,00001.
1

sin( x  y)  1,2 x  0,2
 2
2

x  y  1
2
3

sin( x  y)  1,5x  0
 2
2

x  y  1
4
5

sin( x  y)  xy  1
 2
2

x  y  0,75

sin( x  y)  1,1x  0,1
 2
2

х  y  1
6
9

sin( x  y)  1,4 x  0
 2
2

x  y  1
10
11

sin( x  y)  1,2 x  0,1
 2
2

х

y
1

12
13

sin( x  y)  1,5x  0.1
 2
2

x  y  1
14
7
8
2

tg ( xy )  x

2
2

0,5x  2 y  1
2

tg ( xy  0,2)  x
 2
2

x  2 y  1

tg ( x  y)  xy  0
 2
2

x  2 y  1
2

tg ( xy  0,1)  х

2
2

0,5х  2 y  1
2

tg ( xy  0,1)  x

2
2

0,9 х  2 y  1
2

tg ( xy  0,4)  x

2
2

0,8х  2 y  1
2

tg ( xy  0,2)  x

2
2

0,6 x  2 y  1
8. По заданным значениям x и y найти прямую y  a 0  a1x и параболу
y  a 0  a1x  ax 2 методом наименьших квадратов. Найти погрешность. Построить прямую и кривую в той же системе координат, где нанесены данные
точки.
73
74
2
2
0,86
2,24
3
3
0,90
2,10
4
4
1,64
3,81
5
5
1,66
4,48
6
6
1,80
5,00
7
№2
8
7
4,03
11,48
9
8
4,76
13,55
10
9
5,11
13,79
11
12
10
5.,73
16,43
13
11
6,70
18,29
14
12
8,03
22,58
№3
0,85 1,60 1,72 1,93 2,61 3,57 4,41 4,79 5,18 5,67 5,84 6,40 7,35 7,42
1,78 1,41 1,44 1,52 1,99 2,77 2,40 2,80 2,83 3,11 3,58 3,75 4,13 3,87
1
1
0,32
0,40
6
6,43
5,39
8
6,72
9
6,93
7
6,92
№5
8
7,65
9
7,85
12,47 13,03 13,69
7
6,60
11
9,41
12
9,79
10
7,97
11
8,18
12
8,60
13
9,82
16,59 18,22 18,33
10
8,57
7,50 10,56 14,35 15,48 15,96 17,50 18,78 19,14 19,23 19,45 20,74 22,91
5
6,04
5,04
6
2,42
6,76
4
5,66
3,30
5
2,35
Y
3
3,67
2,11
4
1,40
2
2,10
1,97
3
0,84
1
2,09
0,96
Y
2
0,67
N
X
1
0,18
N
X
№4
2
3
4
5
6
7
8
9
10
11
12
13
14
15
N 1
4,22
4,43
5,11
6,07
6,91
7,29
7,68
8,17
8,34
8,90
9,25
9,85
9,92
X 3,35 4,10
Y -9,47 -11,89 -12,46 -13,01 -15,30 -18,34 -21,71 -22,65 -23,71 -25,47 -25,93 -28,43 -29,61 -31,60 -31,11
X
Y
N
N
X
Y
№1
75
N
X
Y
1
0,90
-3,40
N
X
Y
3
2,29
-4,34
4
2,68
-4,44
5
3,17
-4,86
6
3,34
-4,79
7
3,90
-5,08
8
4,85
-6,35
9
4,92
-5,93
10
8,35
-7,38
11
9,10
-8,51
12
9,22
-8,67
13
9,43
-8,67
8
6,03
-8,84
9
6,57
-8,90
10
11
12
13
6,82
7,84
7,91
8,50
-9,81 -10,59 -10,36 -11,88
8
9
10
11
12
13
14
5,08 5,45 6,91 7,21 7,88 8,85 9,78
10,32 11,68 14,17 14,34 16,05 17,72 20,10
7
5,70
-8,10
№9
6
5,47
-8,02
6
2,78
6,07
5
5,03
-7,86
5
2,34
4,77
№8
7
3,70
7,77
№ 10
5
6
7
8
9
10
11
12
13
14
15
3,16 5,10 6,03 6,33 6,70 7,49 8,46 8,59 9,03 9,13 9,95
-7,04 -13,99 -16,77 -17,62 -18,76 -21,28 -24,60 -24,78 -26,21 -27,15 -29,39
4
4,36
-7,27
4
1,24
2,98
4
2,37
-4,41
3
1,97
-4,24
3
1,12
2,38
3
2,20
-3,88
2
1,07
-3,20
2
0.,95
2,23
2
1,65
-1,99
1
0,40
0,96
1
1,59
-2,09
2
1,91
-4,41
№7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
0,15 0,35 0,47 0,68 1,10 1,36 2,32 4,59 4,60 6,17 8,16 8,54 8,93 9,42
-3,59 -2,93 -3,38 -3,16 -3,73 -4,36 -4,14 -5,41 -5,56 -6,64 -7,30 -7,90 -8,19 -7,97
1
1,07
-4,19
N
X
Y
N
X
Y
N
X
Y
№6
76
2
1,28
2,68
3
1,72
4,54
4
2,32
6,58
11
9,41
-8,92
12
9,71
-9,84
1
0,96
-2,91
2
1,53
-3,21
3
1,63
-3,09
4
2,45
-2,49
5
4,15
-3,35
8
7,60
-3,79
9
8,53
-3,52
10
8,83
-3,28
11
9.,20
-3,19
12
9,99
-3,21
N
X
Y
10
7,95
-7,44
№ 14
6
7
4,70 5,66
-3,52 -3,54
9
7,58
-6,98
N
X
Y
8
6,20
-6,14
5
6
7
8
9
10
11
12
13
3,07 4,16 6,95 7,15 7,28 7,82 8,22 9,09 9,75
8,69 12,08 21,98 21,75 22,18 24,84 25,96 28,64 30,45
№ 12
1
2
3
4
5
6
7
0,38 1,35 2,28 2,90 3,45 3,74 5,28
-0,41 -1,07 -2,20 -3,18 -3,15 -3,87 -4,99
1
0,61
0,59
№ 13
1
2
3
4
5
6
7
8
9
10
11
12
13
14
0,34 0,41 1,00 3,40 3,57 4,25 4,47 6,86 7,53 7,97 8,20 8,53 9,07 9,32
0,85 1,03 1,53 2,73 3,22 3,99 3,45 5,24 6,20 6,74 6,55 6,45 6,96 7,46
N
X
Y
N
X
Y
№ 11
9. 1) Заданы значения функции f (x) в узлах x i , получающиеся делением от-
резка 1, 2 на 5 частей. Найти значения функции f (x) при x1  1,1 и x 2  2,1
с помощью интерполяционных формул Ньютона.
xi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
0,1
1,2
1,4
1,6
1,8
2,0
1,0
2,1
2,9
3,8
5,2
5,9
1,1
2,2
3,2
4,2
5,2
6,0
0,9
2,0
3,0
3,8
5,1
5,8
0,9
1,9
3,2
3,8
5,1
6,1
0,8
2,0
2,9
4,2
5,2
5,8
1,1
2,2
3,2
4,2
5,1
5,9
1,0
2,1
3,1
3,8
5,2
6,2
1,2
1,8
3,2
4,1
5,2
6,1
1,2
2,0
3,0
3,8
5,0
6,1
1,1
1,9
3,2
3,8
4,9
5,8
0,8
2,0
2,8
4,0
5,2
6,0
0,8
2,2
2,9
4,0
5,2
5,8
0,8
1,8
2,9
4,0
4,9
6,1
1,1
2,2
3,0
4,1
4,9
5,9
2) Заданы значения y i функции f (x) в точках x i . Найти значение функции f (x) при x  x . Задачу решить с помощью интерполяционного многочлена Лагранжа.
*
1
2
x y
0
2
3
5
11
13
13
14
3
x
y
0
1
3
5
11
12
13
14
4
x
y
0
2
4
5
11
12
12
13
5
x
y
0
2
3
5
11
12
14
15
x *  1 x *  2 x*  3 x *  1
8
9
10
6
x
y
0
1
3
5
11
12
13
14
7
x
y
x
y
0
2
4
5
11
12
11
10
0
2
3
5
11
10
10
12
x *  2 x*  3 x *  1
11
12
13
14
x y
x
y
x
y
x
y
x
y
x
y
x
y
0
1
3
5
0
2
4
5
11
12
13
14
0
2
3
5
11
13
14
12
0
2
3
5
11
13
13
14
0
1
3
6
11
12
13
14
0
2
5
7
11
12
12
13
0
2
3
5
11
12
14
15
11
12
13
11
x*  1 x*  1
x*  1
x*  1
x*  1
x*  1
x*  1
10. Решить краевую задачу методом прогонки.
№
Дифференциальное уравнение
Краевые условия
1
y  x   x  y  x   sin x
y  0   1, y  2   0
2
y  x   2x 2  y  x   x
y  0   2, y  2   1
3
y  x    3cos x   y  x   tgx
y  0   3, y 1  2
4
y  x   x  y  x   sin 2 x
y  0   1, y  2   3
77
a, b
0, 2
0, 2
0, 1
0, 2
N
10
20
30
40
5
y  x   sin x  y  x   sin x
y  0   2, y  2   4
6
y  x   cos x  y  x   sin x
y 1  3, y  2   1
7
y  x   2x 2  y  x   cos x
8
y  x   tg  x  1  y  x   x
9
y  x   sin x  y  x   sin 3 x
11
y  x   ln x  y  x   sin x
y  x   cos x  y  x   x
12
y  x   2x 2  y  x   x 2
13
y  x   lg x  y  x   2 x
14
y  x   2 sin x  y  x   3x 3
10
y 1  1, y  2   2
y 1  2, y  2   3
y 1  3, y  2   2
y 1  1, y  2   0
y 1  2, y  3  1
y 1  3, y  3  2
y 1  1, y  3  3
y 1  2, y  3  2
0, 2
1, 2
1, 2
1, 2
1, 2
1, 2
1, 3
1, 3
1, 3
1, 3
50
10
20
30
40
50
10
20
30
40
11. Решить задачу Коши методом Эйлера и Рунге – Кутта.
№
Дифференциальное уравнение
Начальное условие
1
y  t   sin ty 2
y(0)  1
2
y  t   cos t  y 2
y(0)  2
3
y  t   cos ty 2
y(0)  3
4
5
6

y  t   sin t / 1  y 2 
y  t  
8
y  t   cos ty 2
9
y  t   sin t 1  y 2
11
y(0)  1
y(0)  2
t 2  y2
y  t   tg
1  t 2  y2
y  t   t  y 2
7
10

y(0)  1
ty
1  t 2  y2

y  t  
y(0)  3
t 2  y2
3
78
10
20
30
40
50
10
20
y(0)  3
y(0)  1
1, 2
50
y(0)  2
0,3
10
1  t 2  y2
y  t   t  ln 1  y 2 
1, 2
1, 2
N
1, 2
1, 2
y(0)  2

 t 0 ,T 
0, 2
0, 2
0, 2
0, 2
0, 2
30
40
12
y  t   y  cos  t  y 2 
y(0)  3
13
y  t   e t  t  y 2
y(0)  1

y  t   sin t 1  y 2 
14

y(0)  2
0,3
0,3
0,3
20
30
40
12. Решить системы нелинейных уравнений методом скорейшего спуска.
№
1
5x 2  4xy  32

2
2
3x  3y  75
xy  yz  4

 yz  xz  9
xy  xz  1

2
2 x 2  2 xy  4

 3x 2  y 2  3
3
4 x 2  5xy  21

 x 2  2 y 2  7
4
 3x 2  3xy  30

2x 2  5 y 2  53
5
 2x 2  4xy  54

3x 2  y 2  36
6
 5x 2  xy  64

 2x 2  3y 2  16
x  y  1

хy  yz  xz  10
 2
2
2
x  y  z  29
x  y  z  1
 2
2
2
х  y  z  1
 3
3
3
x  y  z  1
x  y  z  9

1 1 1
   1
x y z
xy  xz  yz  27
x 3  xyz  3

 3
 y  xyz  3
 3
z  xyz  3
 x y z 4

x  y  z  6
 2
2
2
x  y  z  18
79
7
 5x 2  3xy  20

 3x 2  4 y 2  97
8
3x 2  4 xy  0

2 x 2  2 y 2  14
9
 x 2  3xy  28

3x 2  4 y 2  52
10
 5x 2  2xy  104

5x 2  4 y 2  116
11
3x 2  4 xy  33

2 x 2  3y 2  93
12
x 2  xy  32

 5x 2  2 y 2  112
13
 3x 2  3xy  15

 4x 2  3y 2  148
14
 2x 2  xy  18

 3x 2  3y 2  63
x 2  yz  3

 2
 y  zx  5
 2
z  xy  1
x 2  хy  у 2  7

 2
2
 y  уz  z  3
 2
2
z  zx  x  1
x  y  z  6

xy  xz  5
xy  yz  8

x  y  z  6
 2
2
2
x  y  z  14
 3
3
3
x  y  z  36
 y  z  xyz

z  x  xyz
x  y  xyz

x  y  z  13
 2
2
2
x  y  z  91
 2
 y  xz
2 x  y  z  6

3x  2 y  z  7

2
3
3
( x  1)  ( y  2)  (z  3)  7
x  y  3z
 2
2
x  y  5z
 3
3
 x  y  9z
80
13. Решить задачу Коши модифицированными методами Эйлера.
№
Дифференциальное уравнение
1
y  t   t  y 2  3t
2
y  t   t 2 y 2
3
y  t   t  1  y 2
4
y  t   4 1  t 2  y 2
y  1  1
y  1  3
y  1  1
y  1  2
y  t   sin t  ln 1  y 2 
5
Начальное
условие
y  0  1
6
y  t   sin y  cos  t  y 2 
7
y  t   e t  sin y   t  1 e
8
y  t   e t  sin y  t 2e y
2
9
y  t   cos t   t  y 2 
10
y  t   t  2 y  y  2 t
y  0  2
y  0  3
y  0  2
y  0  1
y   / 2  3
y  1  2
 1, 1
2
y  t    t  y   cos  t 2  y2  y   / 2   3
12
y  t   t 2  y 2
13
y  t   y  t 1  y 2
14
y  t    y  t   1  t 2  y2 
2

 1, 1
 1, 1
 1, 1
 1, 1
0, 
0, 
0, 
0, 
0, 
  / 2, 
  / 2, 
  / 2, 
  / 2, 
y   / 2  1
11

 t 0 ,T 
y   / 2  2
1
2
14. Найти собственные значения матрицы: A  
3


 = 3;
 = 6;
 = 7;
1
8
 = 5;
 = 6;
 = 3;
2
9
 = 3;
 = 7;
 = 8;
3
10
 = -3;
 = 5;
 = 5;
4
11
 = 7;
 = 9;
 = 6;
5
12
 = -3;
 = 8;
 = -5;
6
13
 = 5;
 = -6;
 = -8;
7
14
81
2 3 
1 2 3 
.
2 1 2

3 2 1
 = 7;
 = -7;
 = -5;
 = 9;
 = 3;
 = 5;
 = -8.
№
10
30
40
50
20
30
40
40
50
20
30
40
50
20
15. Вычислить определённый интеграл с точностью  методом Симпсона.
№
1
sin x
1 x dx
0,001
№
8
sin 2x  e x
dx
1
x
0,0001
9
1
1 x 2  ln 1  x 2  dx
0,01
2
3
4

интеграл
2
3
2

sin x  x dx
4

x 1
1 2  ln 1  x 2  dx
0,0001
2
 x  sin
10
3,4
6
1,4

1
2

1
7
3

1
sin x  x
tg x
x 4 x
x 1
sin  2 x 
x2  2
sin 2 x
 lg
x
1,1
0,001
11
0,01
0,0001
12
dx
0,001
dx
2
sin1,4 x
1 x 3 dx
1
5
x  1 dx
3
1
2
2
интеграл
2
2
 x
x  x dx
2
4
0,01
0,0001
1
0,01
13
dx
1,4
 lg
1
0,001
14
dx
3

1
sin x
x2
sin  3 x 
x 1
0,01
dx
0,0001
dx
Библиографический список
1. Демидович Б.П. Основы вычислительной математики / Б.П. Демидович,
И.А. Марон. – М.: Наука, 1966. – 664 с.
2. Демидович Б.П. Численные методы анализа / Б.П. Демидович, И.А. Марон, Э.З. Шувалова. – М.: Наука, 1976. – 368с.
3. Соболь Б.В. Практикум по вычислительной математике / Б.В. Соболь,
Б.Ч. Месхи, И.М. Пешхоев. – Ростов-на-Дону: Феникс, 2008. – 344 с.
4. Сборник задач по математике для втузов. Специальные курсы / под ред.
А.В. Ефимова. – М.: Наука, 1984. – 370 с.
82
ОГЛАВЛЕНИЕ
ВВЕДЕНИЕ................................................................................................................... 3
1. РЕШЕНИЕ НЕЛИНЕЙНЫХ УРАВНЕНИЙ ......................................................... 4
1.1. ПОСТАНОВКА ЗАДАЧИ ..................................................................................... 4
1.2. ОСНОВНЫЕ ЭТАПЫ ОТЫСКАНИЯ РЕШЕНИЯ ..................................................... 4
1.3. МЕТОД ПОЛОВИННОГО ДЕЛЕНИЯ .................................................................... 5
1.4. МЕТОД ПРОСТОЙ ИТЕРАЦИИ ........................................................................... 7
1.5. МЕТОД НЬЮТОНА (МЕТОД КАСАТЕЛЬНЫХ) .................................................13
1.6. ВИДОИЗМЕНЁННЫЙ МЕТОД НЬЮТОНА..........................................................15
1.7. МЕТОД ХОРД ..................................................................................................15
1.8. КОМБИНИРОВАННЫЙ МЕТОД.........................................................................17
2. РЕШЕНИЕ СИСТЕМ ЛИНЕЙНЫХ АЛГЕБРАИЧЕСКИХ УРАВНЕНИЙ....... 8
2.1. ПОСТАНОВКА ЗАДАЧИ ...................................................................................18
2.2. МЕТОД ПРОСТОЙ ИТЕРАЦИИ .........................................................................19
2.3. МЕТОД ЗЕЙДЕЛЯ............................................................................................23
3. РЕШЕНИЕ СИСТЕМ НЕЛИНЕЙНЫХ УРАВНЕНИЙ .....................................26
3.1. ПОСТАНОВКА ЗАДАЧИ ...................................................................................26
3.2. МЕТОД НЬЮТОНА ДЛЯ СИСТЕМЫ НЕЛИНЕЙНЫХ УРАВНЕНИЙ ......................26
3.3. МЕТОД ИТЕРАЦИИ ДЛЯ НЕЛИНЕЙНОЙ СИСТЕМЫ УРАВНЕНИЙ ......................30
3.4. МЕТОД СКОРЕЙШЕГО СПУСКА РЕШЕНИЯ НЕЛИНЕЙНЫХ СИСТЕМ .................32
3.5. МЕТОД СКОРЕЙШЕГО СПУСКА ДЛЯ СЛУЧАЯ ЛИНЕЙНОЙ СИСТЕМЫ ..............35
4. ПРИБЛИЖЕНИЕ ФУНКЦИЙ ..............................................................................37
4. 1. МЕТОД НАИМЕНЬШИХ КВАДРАТОВ ..............................................................37
4.2. ПОСТРОЕНИЕ ИНТЕРПОЛЯЦИОННЫХ МНОГОЧЛЕНОВ ....................................41
83
5. ВЫЧИСЛЕНИЕ СОБСТВЕННЫХ ЗНАЧЕНИЙ МАТРИЦЫ МЕТОДОМ
ДАНИЛЕВСКОГО ................................................................................................. 50
6. ВЫЧИСЛЕНИЕ ОПРЕДЕЛЁННЫХ ИНТЕГРАЛОВ.
МЕТОД СИМПСОНА (МЕТОД ПАРАБОЛ) ...................................................... 54
7. ЧИСЛЕННОЕ РЕШЕНИЕ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ ............. 57
7.1. ПОСТАНОВКА ЗАДАЧИ КОШИ ....................................................................... 57
7.2. МЕТОД ЭЙЛЕРА ............................................................................................. 59
7.3. МОДИФИЦИРОВАННЫЕ МЕТОДЫ ЭЙЛЕРА ..................................................... 61
7.4. МЕТОД РУНГЕ – КУТТА ................................................................................. 64
7.5. РЕШЕНИЕ КРАЕВОЙ ЗАДАЧИ ДЛЯ ЛИНЕЙНОГО ДИФФЕРЕНЦИАЛЬНОГО
УРАВНЕНИЯ ВТОРОГО ПОРЯДКА МЕТОДОМ ПРОГОНКИ .................................... 65
ПРИЛОЖЕНИЕ.......................................................................................................... 69
Редактор Л.И. Чигвинцева
Компьютерная верстка О.Г. Белименко
ИД № 06039 от 12.10.2001
Свод. темплан 2010 г.
Подписано в печать 31.05.10. Формат 60х84 1/16. Отпечатано на дупликаторе.
Бумага офсетная. Усл. печ. л. 5,25. Уч.-изд. л. 5,25. Тираж 150 экз. Заказ 389.
Издательство ОмГТУ. Омск, пр. Мира, 11. Т. 23-02-12
Типография ОмГТУ
84
Download