Выч. метода численного анализа (2009)

реклама
Мацокин А.М. “Численный анализ”. Конспект лекций.
III семестр. ММФ НГУ
Численный анализ
КОНСПЕКТ ЛЕКЦИЙ
Мацокин А.М. – проф. кафедры вычислительной математики
2009 – 2010 учебный год
Предлагаем Вашему вниманию конспект лекций полусеместрового курса
«Численный анализ», подготовленный профессором кафедры А.М. Мацокиным
для студентов второго курса механико–математического факультета
Новосибирского государственного университета и практически являющийся
половиной семестрового курса лекций
по численному анализу,
подготовленному автором более 10 лет назад для студентов ВКИ НГУ, тексты
которого NumAn.dvi и NumAn.pdf можно найти на сервере ММФ НГУ.
Мы надеемся, что этот конспект будет полезен студентам ММФ НГУ для более
полного усвоения курса и применения методов вычислительной математики в
их дальнейшей учебной, научно–преподавательской и практической
деятельности.
Ограничений на использование и распространение конспекта – нет.
Любым замечаниям автор конспекта будет только рад и принимает их по
адресу
E-mail: [email protected]
или
E-mail: [email protected]
Содержание
Лекция 1. ...................................................................................................................... 3
Алгебраические методы интерполирования ......................................................... 3
Интерполяционный полином в форме Лагранжа ............................................. 4
Интерполяционный полином в форме Ньютона ............................................... 4
Расчетные формулы интерполяционного полинома в форме Ньютона ......... 8
Оценка погрешности интерполирования ........................................................... 9
Лекция 2. .................................................................................................................... 11
Интерполирование с кратными узлами ............................................................... 11
Представление интерполяционного полинома Эрмита в форме Лагранжа . 12
Представление интерполяционного полинома Эрмита в форме Ньютона .. 13
Оценка погрешности интерполирования ......................................................... 17
Лекция 3. .................................................................................................................... 18
Интерполирование кубическим сплайном .......................................................... 18
Определение и построение кубического сплайна ........................................... 18
Оценка погрешности .......................................................................................... 20
Численное дифференцирование ........................................................................... 22
Оценка погрешности численного дифференцирования ................................. 22
Аппроксимация значения функции в центре интервала полусуммой ее
значений на краях интервала............................................................................. 24
Аппроксимация производной разностью вперед ........................................... 24
1
Мацокин А.М. “Численный анализ”. Конспект лекций.
Аппроксимация производной разностью назад ............................................. 25
Аппроксимация производной центральной разностью ................................. 25
Некорректность численного дифференцирования ......................................... 25
Лекция 4. .................................................................................................................... 27
Численное интегрирование ................................................................................... 27
Квадратуры Гаусса наивысшей алгебраической степени точности ............. 28
Сходимость квадратур Гаусса ........................................................................... 31
Устойчивость квадратурных формул ............................................................... 31
Примеры квадратурных формул .......................................................................... 32
Формулы прямоугольников (на одном узле) ................................................... 33
Формула трапеций (на двух узлах) ................................................................... 34
Формула Симпсона (на трех узлах) .................................................................. 34
Квадратура Гаусса на двух узлах ...................................................................... 35
Составные квадратурные формулы ..................................................................... 35
Составные формулы прямоугольников на равномерной сетке ..................... 36
Составная формула трапеций на равномерной сетке ..................................... 37
Составная формула Симпсона на равномерной сетке .................................... 38
Лекция 5. .................................................................................................................... 39
Итерационные методы решения нелинейных уравнений ................................. 39
Принцип сжимающих отображений................................................................. 40
Метод простой итерации ................................................................................... 42
Метод Эйткена ускорения сходимости метода простой итерации ............... 45
Лекция 6. .................................................................................................................... 49
Метод Ньютона ...................................................................................................... 49
Случай простого корня: p  1 ........................................................................... 51
Метод Ньютона с параметром .......................................................................... 56
Литература ................................................................................................................. 57
2
Мацокин А.М. “Численный анализ”. Конспект лекций.
Лекция 1.
Алгебраические методы интерполирования
Задача интерполирования функции f (x) на интервале [a, b] состоит в том,
чтобы по известным ее значениям в некоторых точках xi [a, b], i  0, ..., n ,
определить ее значения в остальных точках области задания функции.
Такая задача возникает, например, когда по результатам измерения некоторой
физической величины в одних точках требуется определить ее значения в
других точках или когда в целях ускорения вычислений желательно приблизить
заданную функцию другой, но ''легко'' вычислимой.
Поскольку наиболее простыми с вычислительной точки зрения являются
алгебраические многочлены (полиномы), то вполне естественно их
использование при решении интерполяционных задач.
Определение 1.
Алгебраический полином
Pm (x)  a 0  a1  x  ...  a m  x m
(1)
называется интерполяционным полиномом для функции f (x) , заданной
на отрезке [a, b] , по ее значениям f (x i ) в n  1 попарно различных точках
(узлах) xi [a, b], i  0, ..., n , если
(2)
Pm (xi )  f (xi )  i  0, ..., n .
Для определения коэффициентов a 0 , a1, ..., a m полинома Pm (x) мы имеем
n  1 условие (2). Единственность решения математических конечномерных
задач обычно обеспечивается равенством числа неизвестных количеству
накладываемых на них условий. Если условий меньше, чем неизвестных, то
решение обычно не единственно; если условий больше, то решения вообще
может не существовать.
Теорема 1. Задача алгебраической интерполяции (2) при m  n имеет
единственное решение.
Доказательство.
Перепишем систему (2) относительно неизвестных коэффициентов
a 0 , a1, ..., a n полинома Pn (x) в векторно-матричной форме:
 x 00

 x10


x0
 n
x10
x11
x1n
... x 0n   a 0   f (x 0 ) 

n  a   f (x ) 
... x1   1  
1 
   

  

n   a n   f (x n ) 
... x n 
(3)
Определитель матрицы этой системы линейных алгебраических уравнений
является известным определителем Вандермонда и отличен от нуля при
xi  x j , i  j, что является необходимым и достаточным условием
существования и единственности решения системы (3).
3
Мацокин А.М. “Численный анализ”. Конспект лекций.
Интерполяционный полином в форме Лагранжа
Теорема 2. Решение задачи алгебраической интерполяции (2) при m  n
представимо в форме Лагранжа
Pn (x) 
где
(x)
f (x k ) ,

)


(x
)
k
k
n
 (x  x
k 0
(4)
(x)  (x  x 0 )  (x  x1 )  ...  (x  x n ) .
Доказательство.
Для каждого k  0, ..., n
рассмотрим
алгебраического интерполирования:
(5)
частный
случай
задачи
1, i  k,
Pn,k (x i )  
i  0, 1, ..., n.
0,
i

k,

Так как полином Pn,k (x) степени n по условию имеет n корней:
x 0 , ..., x k 1, x k 1, ..., x n ,
то он может быть представлен в виде произведения мономов:
Pn,k (x)  q k  (x  x 0 )  ...  (x  x k 1 )  (x  x k 1 )  ...  (x  x n ) ,
где постоянная q k определяется из условия Pn,k (x k )  1 :
1
.
qk 
(x k  x 0 )  ...  (x k  x k 1 )  (x k  x k 1 )  ...  (x k  x n )
(6)
Легко проверить, что этот полином можно переписать в следующем виде:
(x  x 0 )...(x  x k 1 )(x  x k 1 )...(x  x n )
(x)
(7)

(x k  x 0 )...(x k  x k 1 )(x k  x k 1 )...(x k  x n ) (x  x k )  (x k )
Очевидно, что линейная комбинация полиномов Pn,k(x) с весами f (x k )
является полиномом степени n и, так как
Pn,k (x) 
n
n
k 0
k 0
 Pn,k (xi )  f (x k )   i,k  f (x k )  f (x i ),
i  0, ..., n,
то она является интерполянтом функции f (x) .
Интерполяционный полином в форме Ньютона
Рассмотрим следующую ситуацию. Предположим, что мы построили
интерполяционный полином Pn (x) и вычислили его значения Pn ( j ) для
некоторого набора точек отрезка  j  [a, b], j  1, ..., N , но появились новые
значения интерполируемой функции f (x) , скажем одно в новой точке x n 1 .
Можно ли подправить уже вычисленную таблицу значений {Pn ( j )}N
j1 , т.е.
добавить к ней поправку Pn 1 (x)  Pn (x) ?
4
Мацокин А.М. “Численный анализ”. Конспект лекций.
Так как разность Pn 1 (x)  Pn (x) является полиномом степени n  1 и имеет
столько же корней: x 0 , ..., x n , то она представима в виде
(8)
Pn 1 (x)  Pn (x)  A n 1  (x  x 0 )  ...  (x  x n )
где постоянная An 1 определяется по формуле
Pn 1 (x n 1 )  Pn (x n 1 )
(x n 1  x 0 )  ...  (x n 1  x n )
или, с учетом интерполяционного условия Pn 1 (x n 1 )  f (x n 1 ) :
f (x n 1 )  Pn (x n 1 )
.
(9)
An 1 
(x n 1  x 0 )  ...  (x n 1  x n )
Итак, мы можем подправить таблицу значений Pn ( j ) , добавив к ней поправку
An 1 
(8) при x   j (предварительно вычислив An 1 по формуле (9)):
Pn 1 ( j )  Pn ( j )  An 1  ( j  x 0 )  ...  ( j  x n ), j  1, ..., N ,
что значительно быстрее (оцените), чем вычисление по формуле
Pn 1 ( j ) 
n 1
 (
k 0
( j )
j  x k )  (x k )
f (x k ),
j  1, ..., N .
Из формулы (8) следует, что интерполяционный полином на n  2 узлах
x 0 , ..., x n 1 может быть представлен в виде
Pn 1 (x)  Pn (x)  [Pn 1 (x)  Pn (x)] 
 Pn (x)  A n 1  (x  x 0 )  ...  (x  x n )  ... 
(10)
 P0 (x)  A1  (x  x 0 )  ...  A n 1  (x  x 0 )  ...  (x  x n ).
Определим через значения интерполируемой функции f (x i ) в узлах
x 0 , ..., x n 1 коэффициенты формулы (10).
Так как P0 (x)  f (x 0 ) , то из формулы (9) при n  0 получаем явную формулу
для A1 :
f (x1 )  f (x 0 )
.
A1 
x1  x 0
Определение 2.
Разделенной разностью первого порядка функции f (x) на узлах x 0  x1
называется число
f (x 0 , x1 ) 
f (x1 )  f (x 0 )
f (x 0 )
f (x1 )


.
x1  x 0
x 0  x1 x1  x 0
Очевидно, что разделенная разность является симметрической функцией:
f (x 0 , x1 )  f (x1, x 0 ) ,
а интерполяционный полином P1 (x) можно представить в форме (Ньютона):
P1 (x)  f (x 0 )  f (x 0 , x1)  (x  x 0 ) .
(11)
5
Мацокин А.М. “Численный анализ”. Конспект лекций.
Добавим новый узел x 2 и найдем постоянную A 2 в представлении (форма
Ньютона) интерполяционного полинома P2 (x) :
P2 (x)  P1 (x)  [P2 (x)  P1 (x)] 
 f (x 0 )  f (x 0 , x1 )  (x  x 0 )  A 2  (x  x 0 )  (x  x1 ).
Из условия P2 (x 2 )  f (x 2 ) :
P1 (x)
f (x 2 )  f (x 0 )  f (x 0 , x1 )  (x 2  x 0 )  A 2  (x 2  x 0 )  (x 2  x1) ,
имеем
A2 

f (x 2 )  f (x 0 )
f (x 0 , x1 )(x 2  x 0 )


(x 2  x 0 )  (x 2  x1 ) (x 2  x 0 )  (x 2  x1 )
[f (x 2 )  f (x1 )]  [f (x1 )  f (x 0 )] f (x 0 , x1 )


(x 2  x 0 )  (x 2  x1 )
(x 2  x1 )
[
f (x 0 , x1 )
f (x1 , x 2 ) f (x 0 , x1 )  (x1  x 0 )

]

(x 2  x 0 ) (x 2  x 0 )  (x 2  x1 ) (x 2  x1 )

f (x1 , x 2 ) f (x 0 , x1 )  [(x1  x 0 )  (x 2  x 0 )]


(x 2  x 0 )
(x 2  x 0 )  (x 2  x1 )

f (x1 , x 2 )  f (x 0 , x1 )
(x 2  x 0 )
Определение 3.
Разделенной разностью второго порядка функции f (x) на попарно
различных узлах x 0 , x1 , x 2 называется число
f (x 0 , x1, x 2 ) 

f (x1 , x 2 )  f (x 0 , x1 )

(x 2  x 0 )
f (x 0 )
f (x1 )
f (x 2 )


.
(x 0  x1 )(x 0  x 2 ) (x1  x 0 )(x1  x 2 ) (x 2  x 0 )(x 2  x1 )
Очевидно, что эта разделенная разность является симметрической функцией:
f (x 0 , x1, x 2 )  f (xi , x j , x k )  (i, j, k)  перестановке (0, 1, 2) .
Итак, интерполяционный полином P2 (x) функции f (x) на попарно различных
узлах x 0 , x1 , x 2 можно представляется в виде
P2 (x)  f (x 0 )  f (x 0 , x1 )  (x  x 0 )  f (x 0 , x1, x 2 )  (x  x 0 )  (x  x1) . (12)
6
Мацокин А.М. “Численный анализ”. Конспект лекций.
Полученные формулы (11) и (12) позволяют предположить, что
интерполяционный полином Pn (x) функции f (x) на попарно различных узлах
x 0 , x1, ..., x n можно представить в форме Ньютона:
Pn (x)  f (x 0 )  f (x 0 , x1)  (x  x 0 )  ...  f (x 0 , x1,..., x n )  (x  x 0 )  ...  (x  x n 1 )
где Ak  f (x 0 , x1,..., x k ) − разделенные разности k -го порядка функции f (x)
на попарно различных узлах x 0 , x1, ..., x k .
Определение 4.
Разделенной разностью
k -го порядка функции f (x)
различных узлах x 0 , x1, ..., x k называется число
на попарно
f (x1 ,..., x k 1, x k )  f (x 0 , x1,..., x k 1 )
.
(x k  x 0 )
Лемма 1. Для разделенной разности k -го порядка функции f (x) на попарно
различных узлах x 0 , x1, ..., x k справедлива следующая формула:
f (x 0 , x1,..., x k 1, x k ) 
k
f (x i )
.
(x

x
)...(x

x
)(x

x
)...(x

x
)
i
0
i
i 1
i
i 1
i
k
i 0
f (x 0 , x1 ,..., x k 1 , x k )  
Доказательство.
Справедливость леммы для k  1 следует очевидным образом из
определения разделенной разности первого порядка.
Предлоложим, что лемма справедлива при k  m и докажем ее для
k  m  1.
Из определения разделенной разности (m  1) -го порядка и сделанного
предположения математической индукции следует, что
f (x 0 , x1 ,..., x m , x m 1 ) 
f (x1 ,..., x m , x m 1 )  f (x 0 , x1 ,..., x m )

(x m 1  x 0 )
m
f (x i )
1

{

x m 1  x 0 i 1 (x i  x1 )...(x i  x i 1 )(x i  x i 1 )...(x i  x m 1 )
m
f (x i )
}
(x

x
)...(x

x
)(x

x
)...(x

x
)
0
i
i 1
i
i 1
i
m
i 0 i


m 1
 (x
i 0
i
f (x i )
,
 x1 )...(x i  x i 1 )(x i  x i 1 )...(x i  x m 1 )
что и требовалось доказать.
Лемма 2. Коэффициент A k из (9) (при n  1  k ) равен разделенной разности
k -го порядка функции f (x) на попарно различных узлах
x 0 , x1, ..., x k , т.е.:
Ak 
f (x k )  Pk 1 (x k )
 f (x 0 , x1,..., x k 1, x k ) .
(x k  x 0 )  ...  (x k  x k 1 )
7
Мацокин А.М. “Численный анализ”. Конспект лекций.
Доказательство.
Так как
f (x k )  Pk 1 (x k )
1

{f (x k ) 
(x k  x 0 )  ...  (x k  x k 1 ) (x k  x 0 )  ...  (x k  x k 1 )
k 1
(x k  x 0 )...(x k  x i 1 )(x k  x i 1 )...(x k  x k 1 )
f (x i )} 
(x

x
)...(x

x
)(x

x
)...(x

x
)
i
0
i
i 1
i
i 1
i
k 1
i 0

k
f (x i )
,
(x

x
)...(x

x
)(x

x
)...(x

x
)
0
i
i 1
i
i 1
i
k
i 0 i

то утверждение леммы является следствием леммы 1.
Теорема 3. Решение задачи алгебраической интерполяции (2) при m  n
функции f (x) на попарно различных узлах x 0 , x1, ..., x n
представимо в форме Ньютона:
Pn (x) 
n
 f (x 0 , x1,..., x k )  (x  x 0 )  ...  (x  x k 1) ,
k 0
где f (x 0 , x1,..., x k ) − разделенные разности k -го порядка функции
f (x) на попарно различных узлах x 0 , x1, ..., x k .
Утверждение теоремы является следствием формулы (10) и леммы 2.
Расчетные формулы интерполяционного полинома в форме Ньютона
Расчетные формулы интерполяционного полинома в форме Ньютона:
1. Сначала заполняем таблицу значений разделенных разностей:
f (x 0 )
f (x ) f (x , x )
0 1
 1
f (x 2 ) f (x1 , x 2 )
f (x 0 , x1, x 2 )


f (x n ) f (x n 1 , x n ) f (x n  2 , x n 1, x n )






f (x 0 , x1,..., x n ) 
для этого понадобится затратить 3 операции (два вычитания + одно
деление) на последовательное вычисление каждой из (n 2  n) / 2
разделенных разностей таблицы, т.е. 3.5  n(n  1) арифметических
действий.
2. Затем для любого значения x  [a, b] вычисляем значение f (x)  Pn (x)
по схеме Горнера:
8
Мацокин А.М. “Численный анализ”. Конспект лекций.
f (x) : f (x 0 , x1 ,..., x n )
f (x) : f (x 0 , x1 ,..., x n 1 )  (x  x n 1 )  f (x)
...
f (x) : f (x 0 )  (x  x 0 )  f (x)
за 3  n арифметических действий.
Оценка погрешности интерполирования
Определение 5.
Погрешностью (ошибкой) R n (x) интерполирования функции f (x) по ее
значениям в попарно различных узлах x 0 , x1, ..., x n из интервала [a, b]
интерполяционным полиномом Pn (x) называется разность
R n (x)  f (x)  Pn (x), x [a, b] .
Очевидно, что R n (xi )  0, i  0, ..., n .
Лемма 3. Если y  [a, b] и не совпадает ни с одним интерполяционным узлом
x 0 , x1, ..., x n , то
R n (y)  f (x 0 ,..., x n , y)  (y) ,
где (y)  (y  x 0 )  ...  (y  x n ) .
Доказательство.
Интерполяционный полином Pn 1 (x) функции f (x) по ее значениям в
попарно различных узлах x 0 , x1, ..., x n , y представим в форме Ньютона:
Pn 1 (x)  Pn (x)  f (x 0 ,..., x n , y)  (x  x 0 )...(x  x n ) .
Тогда, так как f (y)  Pn 1 (y)  Pn (y)  f (x 0 ,..., x n , y)  (y  x 0 )...(y  x n ) ,
получим R n (y)  f (x 0 ,..., x n , y)  (y) , что и требовалось доказать.
Лемма 4. Если функция f (x)  Cn [a, b] ( n раз непрерывно дифференцируема
на отрезке [a, b] ), то
f (n) ()
f (x 0 ,..., x n ) 
n!
для некоторой точки   [x 0 , x n ] .
Доказательство.
Прежде всего продифференцируем n раз ошибку интерполяции:
(n)
R (n)
(x)  n!  f (x 0 ,..., x n ) .
n (x)  f
Очевидно, что для доказательства леммы достаточно установить
существование хотя бы одного корня  у этой производной на [a, b] .
Не уменьшая общности, будем считать, что узлы интерполяции
упорядочены по возрастанию: x 0  x1  ...  x n .
Погрешность R n (x) имеет n  1 различный корень, так как R n (xi )  0 .
9
Мацокин А.М. “Численный анализ”. Конспект лекций.
Тогда по теореме о среднем значении ее первая производная будет иметь
хотя бы один корень
i(1)
внутри каждого интервала
(xi , xi 1 ) :
(1)
(1)
(1)
0  1  ...  n 1 .
(1)
Следовательно, R n (x) имеет n различных корней, так как R n (i )  0 .
Аналогично получим, что
(2)
(2)
(2)
R (2)
n (x) имеет не менее n  1 различных корней 0  1  ...   n  2 ,
…
(k)
(k)
R (k)
n (x) имеет не менее n  k  1 различных корней 0  ...   n  k ,
…
(n)
R (n)
n (x) имеет не менее одного корня  0 , что и требовалось доказать.
Теорема 4. Если функция f (x)  Cn 1[a, b] ( n  1 раз непрерывно
дифференцируема на отрезке [a, b] ), то погрешность R n (x)
интерполирования функции f (x) по ее значениям в попарно
[a, b]
x 0 , x1, ..., x n
различных
узлах
из
интервала
интерполяционным полиномом Pn (x) может быть представлена в
следующем виде:
f (n 1) ((y))
R n (y)  f (y)  Pn (y) 
(y)  y  [a, b] ,
(n  1)!
где (y)  (y  x 0 )  ...  (y  x n ) .
Доказательство.
Если y совпадает с одним из узлов интерполирования, то, утверждение
леммы очевидным образом верно для любого   [a, b] .
Если y не совпадает ни с одним из узлов интерполирования, то
утверждение леммы является следствием леммы 3 и леммы 4.
Задача. Оценить max | (y) |  max | (y  x 0 )  ...  (y  x n ) | , если
a  yb
a  yb
xi  a  i  h , h  (b  a) / n .
Элементарное решение: Если max | (y) |  | (y  x 0 )  ...  (y  x n ) | ,
a  yb
y  [x k , x k 1] , то
10
Мацокин А.М. “Численный анализ”. Конспект лекций.
Лекция 2.
Интерполирование с кратными узлами
Иногда требуется построить полиномиальное приближение функции f (x) при
условии, что известны не только ее значения в некоторых точках области
задания, но и значения ее производных.
Определение 1.
Алгебраический полином
PN (x)  a 0  a1  x  ...  a N  x N
(1)
называется интерполяционным полиномом Эрмита для функции f (x) ,
заданной на отрезке [a, b] по ее значениям f (x i ) , по значениям первых
Ni  1 производных f (x i ) , …, f (Ni 1) (x i ) в n  1 попарно различных
точках (узлах) xi [a, b], i  0, ..., n , если
PN (x i )  f (x i ),
PN (x i )  f (x i ),
(2)
...
PN(Ni 1) (x i )  f (Ni 1) (x i )  i  0, ..., n.
Точки x i называются узлами интерполяции кратности Ni .
Теорема 1. Задача алгебраической интерполяции (2) при N  1  N0  ...  N n
имеет единственное решение.
Доказательство.
Очевидно, что система уравнений (2) относительно неизвестных a 0 , ..., a N
является линейной алгебраической системой порядка N  1 .
Следовательно, она имеет единственное решение в том и только том
случае, когда однородная система имеет только нулевое решение
(определитель матрицы этой системы отличен от нуля).
Предположим, что теорема неверна: система уравнений (2) либо не имеет
решения, либо имеет несколько решений. Значит однородная система (2)
имеет ненулевое решение a 0 , ..., a N , определяющее ненулевой полином
PN (x) степени N и удовлетворяющий условиям
PN (xi )  0, PN (xi )  0, ..., PN(Ni 1) (xi )  0 .
Отсюда следует, что узел x i является его корнем кратности Ni , а, так как
интерполяционные узлы попарно различны, то
PN (x)  c  (x  x 0 ) N0 (x  x1 ) N1 ...(x  x n ) N n ,
т.е. является полиномом степени N0  ...  N n  N , что противоречит
условию теоремы N  1  N0  ...  N n .
Следовательно, наше предположение ложно и теорема верна.
11
Мацокин А.М. “Численный анализ”. Конспект лекций.
Представление интерполяционного полинома Эрмита в форме Лагранжа
Форму Лагранжа представления интерполяционного полинома для случая
простых интерполяционных узлов можно обобщить и на случай кратных узлов
в следующем виде
n
N 1
PN (x)    ji0 PN, j,x i (x)  f i( j) ,
i 0
f i( j)  f ( j) (x i ) ,
(3)
где полином PN, j,x (x) степени N определяется условиями
i
(k)
PN,
j,x (x i )   j,k , k  0, ..., Ni  1,
(4')
(k)
PN,
j,x (x m )  0, k  0, ..., N m  1, m  0, ..., i  1, i  1, ..., n,
(4")
i
i
где i, j − символ Кронекера.
Из условий (4") следует, что полином PN, j,x (x) имеет
i
корень x 0 кратности N 0 ,
…
корень x i 1 кратности Ni 1 ,
корень x i 1 кратности Ni 1 ,
…
корень x n кратности Nn
т.е. его можно представить в виде
PN, j,x i (x) 
 (x  x 0 ) N0 ...(x  x i 1 ) Ni1 (x  x i 1 ) Ni1 ...(x  x n ) N n Q Ni 1,
 TN  Ni 1,
j,x i
(x)  Q Ni 1,
j,x i
j,x i (x)

(x),
где
TN  Ni 1,
j,x i (x)
 (x  x 0 ) N0 ...(x  x i 1 ) Ni1 (x  x i 1 ) Ni1 ...(x  x n ) Nn ,
а полином QN 1, j,x (x) степени Ni  1 нужно определить из условий (4'):
i
i
j,x i
(x)  Q Ni 1,
j,x i
(x)](0) |x  x i
[TN  Ni 1,
j,x i
(x)  Q Ni 1,
j,x i
(x)]( j1) |x  x i  0,
[TN  Ni 1,
j,x i
(x)  Q Ni 1,
j,x i
(x)]( j) |x  x i
[TN  Ni 1,
j,x i
(x)  Q Ni 1,
j,x i
(x)]( j1) |x  x i  0,
j,x i
(x)  Q Ni 1,
j,x i
(x)](Ni 1) |x  x i  0.
[TN  Ni 1,
 0,
...
 1,
...
[TN  Ni 1,
12
(5)
Мацокин А.М. “Численный анализ”. Конспект лекций.
Матрица
Q(0)
N 1,
i
этой
j,x i
системы
относительно
неизвестных
i 1)
− нижняя треугольная (докажите!).
(x i ), ..., Q(N
N 1, j,x (x i )
i
i
Напомним формулу Лейбница для производных от произведения функций:
[TN  Ni 1,
j,x i (x)  Q Ni 1, j,x i (x)]
(k)
k
|x  x i   Clk  TN(kNl) 1,
i
l0
l
j,x i (x i )  Q N i 1, j,x i (x i ).
С помощью этой формулы легко получить решение системы (5) относительно
(N 1)
i
неизвестных Q(0)
:
Ni 1, j,x i (x i ), ..., Q Ni 1, j,x i (x i )
Q Ni 1,
j,x i
(x i )  0,
j,x i
(x i )  0,
j,x i
(x i ) 
...
Q(Nj1)1,
i
Q(Nj) 1,
i
Q(Nj1)1, j,x
i
i
(x i ) 
1
TN  Ni 1,
j,x i (x i )
C jj1  TN(1) N
i 1,
,
j,x i
(x i )  Q(Nj) 1,
TN  Ni 1,
i
j,x i (x i )
j,x i (x i )
,
…
(5')

Q(Njt)1,
i
j,x i
j t 1

p j
(x i ) 
i
j,x i
TN  Ni 1,
…

Ni  2
i 1)
Q(N
N 1, j,x (x i ) 
i
Cpj t  TN( jNt  p)
1,

p j
CpN
(x i )  Q(p)
N 1,
TN  Ni 1,
j,x i (x i )
,
j,x i (x i )
 TN(NiN11,p) j,x

1
i
i
i
i
i
(x i )  Q(p)
N 1,
i
j,x i
(x i )
.
j,x i (x i )
Тогда полином QN 1, j,x (x) может быть представлен в виде
i
i
Q Ni 1,
j,x i
(x) 
Ni 1

t 0
(x
Q(t)
Ni 1, j,x i (x i ) 
 xi )t
t!
и представление (3) интерполяционного полинома Эрмита в форме Лагранжа
получено.
Представление интерполяционного полинома Эрмита в форме Ньютона
Напомним, что в случае простых попарно различных узлов x 0 , x1, ..., x n
алгебраической интерполяции функции f (x) интерполяционный полином в
форме Ньютона:
13
Мацокин А.М. “Численный анализ”. Конспект лекций.
Pn (x) 
n
 f (x 0 , x1,..., x k )  (x  x 0 )  ...  (x  x k 1) ,
(6)
k 0
где f (x 0 , x1,..., x k ) − разделенные разности k -го порядка функции f (x) на
попарно различных узлах x 0 , x1, ..., x k , был построен прежде всего для того,
чтобы, при добавлении нового простого интерполяционного узла x n 1 было
легко (за малое число арифметических действий) пересчитать ранее
вычисленные значения Pn ( j ), j  1, ..., K, на новые, более точные, значения
Pn 1 ( j )  Pn ( j )  f (x 0 , x1,..., x n 1)  (x  x 0 )  ...  (x  x n ), j  1, ..., K .
Здесь мы имеем естественный порядок вычисления разделенных разностей
f (x 0 ), ..., f (x 0 , x1,..., x k ), ..., f (x 0 , x1,..., x n 1 )
по мере добавления новых интерполяционных узлов.
В случае интерполяции Эрмита (кратные интерполяционные узлы) ситуация
меняется:
 добавляется либо новый интерполяционный узел x n 1 кратности 1,
 либо кратность Nk некоторого интерполяционного узла x k
увеличивается на 1.
В этой ситуации естественной нумерацией интерполяционных узлов x i с
учетом их кратности Ni для интерполяционного полинома PN (x) будет
порядок их появления при расчетах:
(7)
x (0) , x (1) , ..., x (N) , x (k) {x 0 , ..., x n } ,
и кратность Nk интерполяционного узла x k равна количеству элементов
последовательности (7) равных этому узлу.
Формально перепишем формулу (6) для узлов (7):
PN (x) 
N
 f (x (0) , x (1) ,..., x (k) )  (x  x (0) )  ...  (x  x (k 1) ) ,
(8)
k 0
разделенные
разности
f (x (0) , x (1) ,..., x (k) )
в
этой
формуле
пока
неопределенны, так как некоторые из узлов x (0) , x (1) ,..., x (k) могут
совпадать.
Последовательность (7) приблизим последовательностью попарно различных
узлов
x , (0) , x , (1) , ..., x , (N) , x , (k)  [a, b], x , (k)  x , (l) ,
lim x , (k)  x (k) ,
(9)
 0
и рассмотрим интерполяционный полином
P,N (x) 
N
 f (x ,(0) , x ,(1) ,..., x ,(k) )  (x  x ,(0) )  ...  (x  x , (k 1) ) ,
k 0
14
(10)
Мацокин А.М. “Численный анализ”. Конспект лекций.
где разделенные разности f (x , (0) , x , (1) ,..., x , (k) ) уже определенны на
системе попарно различных узлов x , (0) , x , (1) ,..., x , (k) по значениям
функции в них: f (x , (0) ), f (x , (1) ), ..., f (x , (k) ) .
Лемма 1. На системе узлов (9) существуют и конечны пределы разделенных
разностей:
df
lim f (x , (l) , x , (l 1) ,..., x , (l  k) )  f (x (l) , x (l 1) ,..., x (l  k) ),
 0
0  l  l  k  N.
Доказательство.
Очевидно, что пределы разделенных разностей нулевого порядка
существуют и конечны: lim f (x , (l) )  f (x (l) ) .
 0
Предположим, что существуют и конечны пределы всех разделенных
разностей до порядка k включительно и рассмотрим разделенную
разность порядка k  1 : f (x , (l) , x , (l 1) ,..., x , (l  k) , x , (l  k 1) ) .
Напомним, что по лемме 1.1 значение разделенной разности k  1 -го
порядка f (x , (l) , x , (l 1) ,..., x , (l  k 1) ) не зависит от порядка следования
ее аргументов. Следовательно, не уменьшая общности, мы можем считать,
что узлы упорядочены по возрастанию (если это не так, то мы их
переставим): x , (l)  x , (l 1)  ...  x , (l  k 1) .
Тогда
f (x , (l) , x , (l 1) ,..., x , (l  k) , x , (l  k 1) ) 

f (x , (l 1) ,..., x , (l  k) , x , (l  k 1) )  f (x , (l) , x , (l 1) ,..., x , (l  k) )

x , (l  k 1)  x , (l)
f (x (l 1) ,..., x (l  k) , x (l  k 1) )  f (x (l) , x (l 1) ,..., x (l  k ) )
x (l  k 1)  x (l)
,
если x (l  k 1)  x(l) .
Но, если x (l  k 1)  x (l) , т.е. x , (l  i)  x(l) , i  0, ..., k  1, то этой
формулой пользоваться трудно (деление на нуль), но можно
воспользоваться леммой 1.4:
f (k 1) (x (l) )
f (k 1) ( )
f (x , (l) , x , (l 1) ,..., x , (l  k) , x , (l  k 1) ) 

,
(k  1)!
(k  1)!
так как   [x , (l) , x , (l  k 1) ],   x (l) .
Что и требовалось доказать.
15
Мацокин А.М. “Численный анализ”. Конспект лекций.
Теорема 2. Интерполяционный полином
P,N (x) 
N
 f (x ,(0) , x ,(1) ,..., x ,(k) )  (x  x ,(0) )  ...  (x  x , (k 1) ) ,
(10)
k 0
на системе узлов
x , (0) , x , (1) , ..., x , (N) , x , (k)  [a, b], x , (k)  x , (l) ,
(9)
lim x , (k)  x (k) ,
 0
сходится к полиному
PN (x) 
N
 f (x (0) , x (1) ,..., x (k) )  (x  x (0) )  ...  (x  x (k 1) ) ,
(8)
k 0
который является интерполяционным полиномом Эрмита (в форме
Ньютона) для функции f (x) , заданной на отрезке [a, b] , по ее
значениям f (x i ) , по значениям первых Ni  1 производных f (x i ) ,
…, f (Ni 1) (x i )
в n  1 попарно различных точках (узлах)
xi [a, b], i  0, ..., n , при условии N  1  N0  ...  Nn .
Доказательство.
Существование полинома PN (x) и сходимость к нему последовательности
полиномов P,N (x) следует леммы 1, причем, как это отмечалось при
доказательстве леммы, полиномы
P,N (x) не зависят от способа
нумерации узлов (9), и, стало быть, полином PN (x) не зависит от способа
нумерации кратных интерполяционных узлов:
x (0) , x (1) , ..., x (N) , x (k) {x 0 , ..., x n } .
(7)
Последним фактом мы воспользуемся для проверки интерполяционных
условий (2), например, в узле x 0 кратности N 0 :
(N 1)
PN (x 0 )  f (x 0 ), PN (x 0 )  f (x 0 ), ..., PN 0 (x 0 )  f (N0 1) (x 0 ) .
Для этого интерполяционные узлы (учитывая их кратность) упорядочим
следующим образом: сначала перечислим кратный узел x 0 :
x(0)  x0 , x(1)  x0 , ..., x (N 1)  x 0 ,
0
затем все остальные в некотором порядке.
Тогда формула (8) для полинома PN (x) может быть переписана в виде
PN (x)  f (x 0 )  f (x 0 , x 0 )  (x  x 0 )  f (x 0 ,..., x 0 )  (x  x 0 ) N0 1 
N0
 (x  x 0 )
N0
N

k  N0
f (x  (0) , x (1) ,..., x (k) )  [(x  x (N 0 ) )  ...  (x  x (k 1) )] 
16
Мацокин А.М. “Численный анализ”. Конспект лекций.
f (N0 1) (x 0 )
 f (x 0 )  f (x 0 )  (x  x 0 ) 
 (x  x 0 ) N0 1  (x  x 0 ) N0 Q(x) ,
(N 0  1)!
по которому легко проверить (проверьте!) выполнение условий
интерполяции в кратном узле x 0 .
В силу произвольности выбора интерполяционного узла (мы выбрали x 0 ,
но могли выбрать и любой другой) полином PN (x) удовлетворяет всем
условиям интерполяции с кратными узлами.
Теорема доказана.
Оценка погрешности интерполирования
Теорема 3. Для погрешности
R N (x)  f (x)  PN (x) интерполирования
функции f (x) по ее значениям f (x i ) , по
значениям первых
Ni  1 производных: f (x i ) , …, f (Ni 1) (x i ) в n  1
различных точках (узлах) xi [a, b], i  0, ..., n , при
N  1  N0  ...  Nn , интерполяционным полиномом
PN (x) (который мы построили либо в форме Лагранжа (3)
попарно
условии
Эрмита
либо в
форме Ньютона (8)), справедлива оценка
|| R N (x) || C[a, b] 
|| f (N 1) () || C[a, b]
(N  1)!
 || (x) || C[a, b] ,
где (x)  (x  x 0 ) 0  ...  (x  x n ) N n .
Доказательство оставляется читателю в качестве упражнения.
Замечание. Пусть N0  ...  N n  1 и если в качестве узлов интерполирования
N
выбрать
корни
полинома (x) 
xk 
a b ba
(2k  1)  

cos
, k  0, ..., n,
2
2
2(n  1)
(b  a) n 1
22n 1
cos((n  1)  arc cos
2x  (b  a)
) , то
ba
|| f (n 1) () || C[a, b] (b  a)n 1 || f (n 1) () || C[a, b]  b  a n 1
|| R n (x) || C[a, b] 


 n  .
(n  1)!
(n  1)!
 2 
22n 1
Докажите, что коэффициент при старшей степени полинома (x)
равен единице, а сам полином является полиномом, наименее
уклоняющимся от нуля на отрезке [a, b] (см. лекцию 9 ВМЛА).
17
Мацокин А.М. “Численный анализ”. Конспект лекций.
Лекция 3.
Интерполирование кубическим сплайном
Попытка повышения точности приближения функции f (x) за счет увеличения
степени интерполяционного полинома Pn (x) чаще всего неудачна, так как
разность Pn (x)  f (x) может не стремиться к нулю при n   . Вместо этого
для повышения точности приближения можно применять кусочнополиномиальную алгебраическую интерполяцию:
 либо интервал [a, b] задания функции f (x) разбить на подъинтервалы:
[a, b] 
n
i 0
[x i , x i 1 ] , сеткой узлов h  {a  x 0  x1  ...  x n  b} , на
каждом из которых функция приближается алгебраическим
интерполяционным полиномом небольшой степени, но при таком
подходе результирующий интерполянт будет иметь разрывы
производных на стыках подъинтервалов;
 либо для вышеуказанного разбиения строится кусочно-полиномиальная
функция (сплайн), непрерывная вместе с несколькими своими первыми
производными на интервале [a, b] .
Определение и построение кубического сплайна
Определение.
Кубическим сплайном, аппроксимирующим функцию f (x) на сетке
h  {a  x 0  x1  ...  x n  b} по ее значениям fi  f (xi ), i  0, ..., n ,
называется функция s(x) , удовлетворяющая следующим условиям:
a) s(x) − полином третьей степени на каждом подъинтервале [xi 1, xi ] ;
b) s(x)  C2 [a, b] ;
c) s(xi )  fi , i  0, 1, ..., n , − условие интерполирования.
Для определения сплайна s(x) :
4n неизвестных: по четыре коэффициента полинома третьей степени
(условие а)) на каждом подъинтервале [xi 1, xi ] ,
мы имеем:
3(n  1) условий непрерывности s(x) , первой и второй производных от
s(x) в точках x1, ..., x n 1 (условие b)),
n  1 условие интерполяции (условие c)).
Таким образом, для определения 4n неизвестных мы имеем 4n  2 условий,
т.е., если условия независимы, то для единственности задачи построения
сплайна нам не хватает двух условий. Обычно эти условия ставят на концах
интервала [a, b] (граничные условия). Мы ограничимся случаем
d) s(x 0 )  f 0  f (x 0 ), s(x n )  f n  f (x n ) .
18
Мацокин А.М. “Численный анализ”. Конспект лекций.
Итак, мы должны определить кусочно-кубическую функцию s(x)  C2 [a, b] :
(x  x i )2
(x  x i )3
, x  [x i , x i 1 ] ,
s(x)  a i  bi  (x  x i )  ci 
 di 
2
6
по заданным значениям:
s(xi )  fi , i  0, 1, ..., n , c0  s(x 0 )  f 0 , cn  s(x n )  f n .
Учитывая, что на интервале [xi , x i 1 ]
s(x i )  fi ,
s(x i )  ci ,
s(x i 1 )  f i 1 , s(x i 1 )  ci 1,
(1)
сплайн можно представить в виде
s(x)  fi
x i 1  x
x  xi
 fi 1

hi
hi
(x i 1  x)3  h i2 (x i 1  x)
(x  x i )3  h i2 (x  x i )
 ci 
 ci 1 
,
6h i
6h i
(2)
где h i  x i 1  x i .
(докажите эту формулу и равенства s(x 0 )  f 0 , s(x1  0)  s(x1  0)  f1 , …,
s(x n 1  0)  s(x n 1  0)  fn 1, s(x n )  f n , s(x 0 )  f 0, s(x1  0)  s(x1  0) ,
…, s(x n 1  0)  s(x n 1  0), s(x n )  f n ).
Для определения неизвестных c1, ..., cn 1 воспользуемся условиями
непрерывности первой производной от сплайна:
s(xi  0)  s(xi  0), i  1, ..., n  1.
Вычислив эти производные, получим систему уравнений
h i 1  h i
hi
fi 1  fi fi  fi 1
 h i 1
c

c

c



i 1
i
i 1
3
6
hi
h i 1
 6

i  1, ..., n  1,
c0  f 0,
c n  f n.

(3)
Симметричная трехдиагональная матрица этой системы
h1
 2(h 0  h1 )
  c1   b1 

 c   b 
h1
2(h1  h 2 ) h 2
 2   2 
1




6

 

h n  3 2(h n  3  h n  2 )
hn 2

 c n  2   b n  2 

hn 2
2(h n  2  h n 1 )   cn 1   b n 1 
имеет строгое диагональное преобладание в каждой строке и поэтому
положительно определена и систему легко решить, например, методом
прогонки.
19
Мацокин А.М. “Численный анализ”. Конспект лекций.
Оценка погрешности
Погрешность интерполирования r(x)  f (x)  s(x) мы оценим, предполагая,
что функция f (x) достаточно гладка: f (x)  C4 [a, b] , а сетка h равномерна,
ba
.
n
Так как r(xi )  r(xi 1 )  0 ,
то    (a, b) : r ()  0 .
т.е. все ее шаги равны: h i  x i 1  x i  h 
r ()  0
Тогда
x
r(x)
r(x) 
 r(y) dy  || r ||C  h || r  ||C ,
xi
xi
x

(4)
y
xi 1
r (y)   r (y) dy  || r  ||C  h || r  ||C .

Таким образом, нам осталось оценить
r(x)  f (x)  s(x)  f (x)  [ci
Перепишем систему (3) в виде
x i 1  x
x  xi
 ci 1
], x  [x i , x i 1 ] .
h
h
(5)
ci 1  4  ci  ci 1  12  f (x i 1 , x i , x i 1 )  6  f (x i )

i  1, ..., n  1,
c0  f 0,
c n  f n,

и оценим разности ri  fi ci , для которых легко получить соотношения
ri1  4  ri ri1  fi1  4  fi fi1  12  f (x i 1 , x i , x i 1 )  i

i  1, ..., n  1,
r0  0,
rn  0.

Практически очевидна справедливость следующих неравенств:
4 | ri|  | ri1 |  | ri1 |  | i |  2  max | rj |  max |  j |
1 j n 1
1 j n 1
1
 | ri|  max | rj |   max |  j | .
1 j n 1
2 1 j n 1
(6)
Используя следующие разложения в ряд Тейлора:
fi1 
fi  fi(3) h
f
(4)
h2
(  i ) ,
2
3
h2
h4
(3) h
(4)
fi 1  fi  fi h  fi
 fi
 f (  i ) ,
2
6
24
оценим i  fi1  4  fi fi1  12  f (xi 1, xi , xi 1) :
| i |  1.5  h 2  M 4 , M 4  || f (4) || C[a,b] .
Получите неравенство (7) в качестве упражнения.
Неравенства (6) и (7) обеспечивают справедливость следующей леммы.
20
(7)
Мацокин А.М. “Численный анализ”. Конспект лекций.
Лемма 1. Вторые производные ci  s(xi ) от сплайна s(x) во внутренних
узлах сетки h аппроксимируют вторые производные fi  f (xi )
от функции f (x)  C4 [a, b] со вторым порядком точности по h :
ci  fi ri , | ri|  0.75  h 2  M 4 , i  0, ..., n, M 4  || f (4) || C[a,b] .
Теперь мы можем оценить r(x)  f (x)  s(x), x [x i , x i 1] .
Лемма 2. Вторая производная сплайна s(x) аппроксимирует вторую
производную f (x) от функции f (x)  C4 [a, b] в равномерной
норме со вторым порядком точности по h :
| f (x)  s(x) |  0.875  h 2  M 4 .
(8)
Доказательство.
Неравенство (8) достаточно установить для любой точки x  [xi , xi 1 ] .
Перепишем (5) в виде
f (x)
fi
r (x)  f (x)  s(x) 
x i 1  x
x  xi
 f i1
]
h
h
x x
x  xi
[ri i 1
 ri1
].
h
h
fi1
ci
s(x)
xi
x
 f (x)  [f i
ci 1
xi 1
x i 1  x
x  xi
 ri1
|  0.75  h 2  M 4 .
h
h
Используя явный вид ошибки линейной интерполяции функции f (x)
Из леммы 1 следует, что | ri
| f (x)  [fi
x i 1  x
x  xi
f (4) ((x))

 fi 1
]|  |
(x  x i )(x  x i 1 ) | 
h
h
2
 0.125  M 4  h 2
получим для любой точки x  [xi , xi 1 ]
| f (x)  s(x) |  0.875  h 2  M 4 ,
что и требовалось доказать.
Из неравенств (4) и (8) получаем оценку погрешности.
Теорема 1. Для погрешности аппроксимации f (x)  C4 [a, b] сплайном s(x)
справедливы следующие оценки:
|| f (k) (x)  s(k) (x) || C[a,b]  0.875  h 4  k  M 4 , k  0,1, 2 .
21
Мацокин А.М. “Численный анализ”. Конспект лекций.
Численное дифференцирование
Для приближения значения производной f ( j) (x ) функции f (x) обычно
используется значение производной Pn( j) (x ) интерполяционного полинома
Pn (x) (построенного по заданным значениям fk  f (x k ) в узлах x 0 , ..., x n ):
f
( j)
Pn( j) (x ) 
(x ) 
n

k 0
(kj) (x )  f k

n
 k (x )  fk ,
(9)
k 0
где коэффициенты
(x  x 0 )...(x  x k 1 )(x  x k 1 )...(x  x n )
)
d x j (x k  x 0 )...(x k  x k 1 )(x k  x k 1 )...(x k  x n )
не зависят от функции f (x) .
 k (x ) 
(kj) (x )
(
dj
|xx

Оценить точность приближения производной, т.е. разность
f (n 1) ((x))
f
 [f (x)  Pn (x)] |x  x  [
(x)]( j) |x  x ,
(n  1)!
довольно сложно: во-первых, мы не характеризовали функцию (x) ; вовторых, потребуется существование производных функции f (x) до порядка
n 1 j.
( j)
(x )  Pn( j) (x )
( j)
Оценка погрешности численного дифференцирования
Поэтому для оценки разности f ( j) (x ) 
 k0 k (x )  fk
n
мы заменим f k
разложением в ряд Тейлора в точке x :
fk  f
(0)
(x )  f
(1)
 k,n (x ) 
(x )  (x k  x )  ...  f
1
n! 
x k (n 1)
f
(t)  (x k
x
(n)
(x k  x )n
(x )
  k,n (x ),
n!
 t) n dt  f (n 1) ( k )
n 1
(x k  x )
(n  1)!
Тогда для любой функции f (x)  Cn 1[a, b] имеем тождество
f
( j)
n
(x )    k (x )  f k 
k 0
f
f
(0)
(x ) 
( j1)
(x k  x )0
[    k (x ) 
]
0!
k 0
n
... 
(x k  x ) j1
(x )  [    k (x ) 
] 
(
j

1)!
k 0
n
22
.
(10)
Мацокин А.М. “Численный анализ”. Конспект лекций.
f
f
f
( j)
( j1)
(n)
(x k  x ) j
(x )  [1    k (x ) 
] 
j!
k 0
n
(11)
(x k  x ) j1
] ... 
(x )  [    k (x ) 
1)!

j
(
k 0
n
(x k  x ) n
]
[   k (x ) 
n!
k 0
n
(x ) 

n
   k (x )   k,n (x )
k 0
Если в это тождество подставить функцию f (x) равную полиному Fn,m (x)
степени n , m -ая производная которого в точке x  x равна 1, а значения
остальных производных равны 0, т.е. функцию f (x)  Fn,m (x)  Pn (x) такую,
что  k,n (x)  0 , f (x)  Pn (x)  0 и, следовательно, [f (x)  Pn (x)]( j) |x  x  0 , то
 n
(x k  x )m
,
m  j,
   k (x ) 
n
m!
 k 0
( j)
0  Fn,m
(x )    k (x )  Fn,m (x k )  
n
(x k  x ) m
k 0
1 
, m  j.
   k (x ) 
m!
 k 0
Из этого тождества сразу получаем следующую лемму.
Лемма 3.
k (x )  (
Коэффициенты
(x)
)( j) |xx
(x  x k )(x k )
из
(9)
удовлетворяют соотношениям
 n
(x k  x )m 0, если m  j,

   k (x ) 
m!
 k 0
1, если m  j,

m  0, ..., n.

Из (11) и леммы
дифференцирования.
3
получаем
оценку
погрешности
(12)
численного
Теорема 2. Для погрешности приближения f ( j) (x ) линейной комбинацией
n
 k (x )  fk
из (9) имеет место представление
k 0
f
( j)
n
n
(x )    k (x )  f k    [ k (x )   k,n (x )] ,
k 0
k 0
(13)
где  k,n (x) − остаточные члены разложений в ряды Тейлора (10).
23
Мацокин А.М. “Численный анализ”. Конспект лекций.
Аппроксимация значения функции в центре интервала полусуммой ее
значений на краях интервала
f (x)
f(x1/2 )
P1(x)
x1/2
x0
x
x1  x0  h
Аппроксимация значения функции в центре интервала x1/2  (x0  x1 ) / 2
полусуммой ее значений на краях интервала [x0 , x1 ] малой длины h  x1  x0 :
f (x1/2 )  0 (x1/2 )  f (x0 )  1(x1/2 )  f (x1) .
Так как интерполяционный полином по значениям f (x0 ) и f (x1 ) имеет вид
P1 (x)  0 (x)f (x 0 )  1 (x)f (x1 ) 
то
x  x0
x  x1
f (x 0 ) 
f (x1 ) ,
x0  x1
x1  x0
0 (x1/2 )  1(x1/2 )  1/ 2 ,
а из теоремы 2 имеем оценку
f (x 0 )  f (x1 )
(x 0  x1/2 )2
(x1  x1/2 ) 2
(2)
(2)
| f (x1/2 ) 
|  | f (0 )
 f (1 )
|
2
2!
2!
 M 2  (x1  x 0 )2 , M 2  || f ||C2 [x
0 ,x1 ]
.
Итак, если f (x)  C2 [x 0 , x1 ] , то
f (x1/2 ) 
f (x 0 )  f (x1 )
 1/2 ,
2
| 1/2 |  M 2  (x1  x 0 ) 2  M 2  h 2 , M 2  || f ||C2 [x
0 ,x1 ]
.
Аппроксимация производной разностью вперед
f (x0 ) 
так как
f (x) f (x )
0
f (x1 )  f (x 0 )
− разность вперед;
h
x1
f (x1 )  f (x 0 )   f (y) dy 
x0
P1(x)
x1
  [f (x 0 )  f ((y))  (y  x 0 )] dy 
x0
x0
x
x1  x0  h
f ( ) 2
h ,
2
f (x1 )  f (x0 ) || f  || C[x0 ,x1 ]
то | f (x0 ) 
|
 h.
h
2
 f (x 0 )  h 
24
Мацокин А.М. “Численный анализ”. Конспект лекций.
Аппроксимация производной разностью назад
f (x1 ) 
f (x1 )
f (x)
так как
f (x1 )  f (x0 )
− разность назад;
h
x1
f (x1 )  f (x 0 )   f (y) dy 
x0
P1(x)
x1
  [f (x1 )  f ((y))  (y  x1 )] dy 
x0
x
x1  x0  h
x0
f () 2
h ,
2
f (x1 )  f (x0 ) || f  || C[x0 ,x1 ]
то | f (x0 ) 
|
 h.
h
2
 f (x1 )  h 
Аппроксимация производной центральной разностью
f (x1/2 ) 
так как
f (x)
f (x1 )  f (x0 )
− центральная разность;
h
x1
f (x1 )  f (x 0 )   f (y) dy 
f (x1/2 )
x0
x1
  [f (x1/2 )  f (x1/2 )  (y  x1/2 ) 
P1(x)
x0
x1/2
x0
x
x1  x0  h
(y  x1/2 )2
 f ((y)) 
] dy 
2
f () 3
 f (x1/2 )  h 
h ,
24
f (x1 )  f (x0 ) || f  || C[x0 ,x1 ] 2
то | f (x0 ) 
|
h .
h
24
Некорректность численного дифференцирования
Выпишем аппроксимацию второй производной f (c) по трем значениям
функции f (x) в узлах x 0  c  h, x1  c, x 2  c  h :
Pn (c) 
1
f 
2 0
2
f 
2 1
1
f2 .
h2
h 2 (4)
 [f (0 )  f (4) (2 )]  O(h 2 ) .
Докажите, что (c) 
2
24
h
Предположим, что вместо точных значений f0 , f1 , f 2 заданы их приближения
h
h
0,1 (c)  21,1 (c)   2,1 (c)
f0  f0  0 , f1  f1  1, f 2  f 2  2 , где i − ошибки округления. Тогда
25
Мацокин А.М. “Численный анализ”. Конспект лекций.
Pn (c)  Pn (c) 
0  21  2
h2
,
f (c)  Pn (c)  f (c)  Pn (c)  [Pn (c)  Pn (c)]  (c) 
Для большей наглядности будем предполагать, что f
0  21  2
(4)
2
.
h
()  M 4  12  
( f (x)
− полином четвертой степени), 0  2  , 1    1012
(вычисления с 12-ю десятичными знаками), тогда
(c)  f (c)  Pn (c)  (c) 
Из последней формулы следует, что
0  21  2
h
2
 h2 
4
h
2
.
1. (c)   при h  0 (если h  106 , то (c)  4 вместо (c)  1012 );
2. для получения
(c)  O(h 2 ) нет смысла брать h  1/ 4
и при
h  1/ 4  103 мы получим наилучшую точность (c)  O(h 2 )  5  106 .
26
Мацокин А.М. “Численный анализ”. Конспект лекций.
Лекция 4.
Численное интегрирование
Интегрирование функций является одной из основных математических
операций. В этом разделе мы рассмотрим классический подход к построению
интерполяционных квадратурных формул для приближенного вычисления
определенного интеграла
b
I   f (x)  p(x) dx, f (x)  C[a, b] ,
(1)
a
где p(x) − положительная функция такая, что
Определение 1. Формула
b k
x
a

 p(x) dx    k  0 .
In   k  0 Ak  f (x k )
n
(2)
называется квадратурной формулой для приближенного вычисления
интеграла (1) от функции f (x) на (n  1) -ом узле a  x 0  x1  ...  x n  b
с весами A0 , A1, ..., A n .
Так как по значениям функции f (x) в узлах квадратурной формулы мы можем
построить интерполирующий ее полином в форме Лагранжа
(x)
 f (x k ) ,
(x  x k )  (x k )
(x)  (x  x 0 )  (x  x1 )  ...  (x  x n ) , то естественным
Pn (x)   k  0
n
где
определить веса квадратурной формулы (2) в виде
Ak  
b
a
(x)
 p(x) dx, k  0,1,..., n ,
(x  x k )  (x k )
(3)
было
бы
(4)
а саму формулу назвать интерполяционной квадратурной формулой.
Определение 2.
Квадратурная формула (2) называется интерполяционной квадратурной
формулой, если ее веса вычисляются по формуле (4).
Практически очевидно, что интерполяционная квадратурная формула (2) будет
точна (т.е. I  In ), если функция f (x) является полиномом степени не более,
чем n . И обратно, если квадратурная формула (2) точна на любом полиноме
степени n , то она должна быть интерполяционной, т.е. для ее весов должна
быть
справедлива
формула
(4),
что
легко
проверить,
взяв
f (x) 
(x)
при любом k  0, 1, ..., n .
(x  x k )  (x k )
Определение 3.
Алгебраической степенью точности квадратурной формулы (2) называется
целое число m такое, что квадратурная формула точна на всех полиномах
степени m и меньше.
27
Мацокин А.М. “Численный анализ”. Конспект лекций.
Теорема 1. Квадратурная формула (2) на (n  1) узле будет интерполяционной
квадратурной формулой тогда и только тогда, если она имеет
алгебраическую степень точности n .
Теорема 2. Если функция f (x)  Cn 1[a, b] , то для разности интеграла (1) и
его приближения интерполяционной квадратурной формуле (2)
справедлива оценка
| I  In | 
|| f (n 1) (x) || C[a,b]
(n  1)!
b
a | (x) | p(x) dx .
(5)
Докажите эту теорему, используя оценку для погрешности интерполирования
функции и теорему 1.
Квадратуры Гаусса наивысшей алгебраической степени точности
Итак, на любой системе узлов a  x 0  x1  ...  x n  b интерполяционная
квадратурная формула (2) точна на линейном пространстве размерности n  1
всех полиномов степени не более, чем n .
Естественным образом возникает вопрос: а нельзя ли за счет выбора этих узлов
( n  1 параметр) увеличить алгебраическую точность квадратурной формулы?
Квадратурная формула (2) определяется 2(n  1) параметрами и можно
надеяться, что их можно выбрать так, формула будет точна для полиномов
степени 2n  1 , но не более.
Теорема 3. Квадратурная формула (2) на n  1 узле не может иметь
алгебраическую степень точности m  2n  1.
Доказательство (от противного).
Предположим, что квадратурная формула алгебраической степени
точности m  2n  1 существует.
Тогда по теореме 1 она является интерполяционной и точна на
f (x)  2 (x) − полиноме степени 2n  2  m , т.е. I  In . Но
In  0 , так как 2 (x k )  0 (узлы квадратуры − корни полинома (x) ),
I  0 , так как функция f (x)  2 (x)  0 почти всюду на [a, b] .
Следовательно, полученное противоречие I  In предположению I  In
доказывает теорему.
Теорема 4. Если квадратурная формула (2) на n  1 узле имеет
алгебраическую
степень
точности
m  2n  1, то она
(x)  (x  x 0 )...(x  x n )
интерполяционная,
а
полином
ортогонален с весом p(x) всем полиномам меньшей степени, т.е.
определяется условиями:
b
a (x)x
i
 p(x) dx  0, i  0, 1, ..., n .
Доказательство.
Пусть квадратурная формула алгебраической степени точности m  2n  1
существует. Тогда по теореме 1 она является интерполяционной.
28
Мацокин А.М. “Численный анализ”. Конспект лекций.
Так как степень полинома f (x)  (x)  x i , 0  i  n , не превышает
m  2n  1, то квадратурная формула (2) точна на нем и
b
a
(x)x i  p(x) dx   k  0 A k  (x k )x ik  0 ,
n
что и требовалось доказать.
Теорема 5. Если полином (x)  (x  x 0 )...(x  x n ) ортогонален с весом p(x)
всем полиномам меньшей степени, то интерполяционная
квадратурная формула (2) имеет алгебраическую степень точности
m  2n  1.
Доказательство.
Так как квадратурная формула (2) интерполяционная, то по теореме 1 она
точна на полиномах до степени n .
Произвольный полином L t (x) степени t  m  2n  1 мы можем
представить в виде Lt (x)  (x)  Qn (x)  R r  n (x) , разделив L t (x) на (x) .
Тогда
b
b
b
a
a
a
I   L t (x)  p(x) dx   (x)  Q n (x)  p(x) dx   R r  n (x)  p(x) dx 
 0   k  0 A k  R r  n (x k ),
n
так как по условию теоремы полином (x) ортогонален полиномам
меньшей степени, а интерполяционная квадратурная формула (2) точна на
полиномах степени r  n .
С другой стороны,
In   k  0 Ak  [(x k )  Qn (x k )  R r  n (x k )]   k 0 Ak  [0  R r  n (x k )]  I ,
n
n
что и требовалось доказать.
Таким образом, интерполяционная квадратурная формула (2) существует тогда
и только тогда, когда (теоремы 4 и 5) существует полином (x) ,
ортогональный с весом p(x) полиномам меньшей степени, с попарно
различными корнями из интервала [a, b] .
Теорема 6. Полином (x)  x n 1  a n x n  ...  a 0 , ортогональный с весом
p(x) всем полиномам меньшей степени:
b
a
(x)x i  p(x) dx  0, i  0, 1, ..., n ,
существует, единственен и имеет n  1 простых корней на [a, b] ,
т.е. (x)  (x  x 0 )...(x  x n ) ,  x k  [a, b], x i  x j − узлы
квадратуры (Гаусса) наивысшей алгебраической степени точности.
Доказательство.
Очевидно, что для определения коэффициентов a 0 , ..., a n полинома (x)
мы имеем систему линейных алгебраических уравнений
29
Мацокин А.М. “Численный анализ”. Конспект лекций.
b
a
b
(a n x n  ...  a 0 )  x i  p(x) dx   x n 1  x i  p(x) dx, i  0, 1, ..., n . (6)
a
Для существования и единственности ее решения необходимо и
достаточно, чтобы однородная система
b
a (a n x
n
 ...  a 0 )  x i  p(x) dx  0, i  0, 1, ..., n ,
имела только нулевое решение. Предположим, что однородная система (6)
имеет решение a 0 , ..., a n . Тогда, умножив i -е уравнение на a i и сложив
результаты, получим
b
a (a n x
n
 ...  a 0 )2  p(x) dx  0,
откуда следует, что все a 0 , ..., a n должны быть равны нулю.
Осталось исследовать корни полинома (x) .
Предположим, что все вещественные корни {x i  [a, b]}im 0 полинома
(x) , имеют четную кратность 2k i ,
т.е. (x)  [(x  x 0 )k 0 ...(x  x m ) k m ]2 n 1 2(k 0 ... k m ) (x) , где полином
n 1 2(k0 ... k m ) (x) знакоопределен на [a, b] .
Но, так как
b
a (x)  p(x) dx  0 , то полином n 12(k0 ... km ) (x) должен
менять знак на [a, b] , что противоречит выводу из предположения о
четности всех корней из [a, b] .
Следовательно, полином (x) имеет на [a, b] корни нечетной кратности.
Пусть {x i  [a, b]}im 0 − корни нечетной кратности 2k i  1 полинома (x) .
Если m  n  1 ( ki  1), то все корни попарно различны и теорема
доказана.
Если m  n  1 , то
(x)  [(x  x 0 )k0 ...(x  x m ) k m ]2[(x  x 0 )...(x  x m )]n 1 2(k 0 ... k m )  m (x) ,
где полином n 1 2(k ... k )  m (x) знакоопределен на [a, b] .
0
m
Но, так как степень полинома (x  x 0 )...(x  x m ) меньше n  1 , то (x)
ему ортогонален, т.е.
b
a [(x  x 0 )
k 0 1
...(x  x m ) k m 1 ]2 n 1 2(k 0 ... k m )  m (x)  p(x) dx  0 ,
откуда следует, что n 1 2(k0 ... k m )  m (x) должен менять знак на [a, b] ,
что противоречит выводу из предположения о знакоопределенности  .
Следовательно, m  n и теорема доказана.
Теорема 7. Если функция f (x)  C2n  2 [a, b] , то точность вычисления
интеграла (1) по квадратурной формуле Гаусса (2) на n  1 узле
оценивается следующим неравенством:
30
Мацокин А.М. “Численный анализ”. Конспект лекций.
| I  In | 
|| f 2(n 1) (x) || C[a,b]
(2n  2)!
b
a
| (x) | 2 p(x) dx .
(7)
Доказательство оставляется в качестве упражнения.
Сходимость квадратур Гаусса
Замечательным свойством квадратур Гаусса является их сходимость для любой
функции f (x)  C[a, b] (заметим, что интерполяционный полином к
произвольной непрерывной функции не сходится).
Теорема 8. Если функция f (x)  C[a, b] , то интерполяционная квадратурная
формула (2) на n  1 узле x 0 , ..., x n с положительными весами
A0 , ..., A n сходится к интегралу (1) при n   .
Доказательство.
Поскольку f (x)  C[a, b] , то по теореме Вейерштрасса    0
существует полином QN() (x) такой, что
| f (x)  QN() (x) |  0.5    x [a, b] .
Тогда для  n  N() интерполяционная квадратурная формула (2) на
попарно различных узлах x 0 , ..., x n точна на полиноме QN() (x) и
|  f (x)  p(x) dx   k  0 A k  f k | 
b
n
a
 |  [f (x)  Q N() (x)]  p(x) dx   Q N() (x)  p(x) dx   k  0 A k  Q N() (x k ) 
b
b
a
a
n
0
  k  0 A k  (Q N() (x k )  f k ) | 
n
 0.5    [  p(x) dx   k  0 A k ]     p(x) dx  0, при   0,
b
b
n
a
a
что и требовалось доказать.
Лемма. Веса квадратур Гаусса положительны.
Квадратура Гаусса (2) точна на полиномах до степени 2n  1 и значит она
точна на полиноме f (x)  g 2 (x)  [(x  x 0 )...(x  x i 1 )(x  x i 1 )...(x  x n )]2
степени 2n :
0   f (x)  p(x) dx   k  0 A k  f (x k )  Ai  g 2 (x i )  0   Ai  0 .
b
n
a
Устойчивость квадратурных формул
Зачастую, по тем или иным причинам, значения интегрируемой функции в
узлах заданы с погрешностью: f (x k )  f (x k )   k , |  k |   .
Тогда
| I  In |  | I  I n |  | I n  I n |  | I  I n | 
31
 k 0 | A k |    | I  In |    a p(x) dx
n
b
Мацокин А.М. “Численный анализ”. Конспект лекций.
если квадратура точна на константе и ее веса положительны.
Отсюда следует, что малые изменения интегрируемой функции мало изменяют
приближенное значение интеграла независимо от числа квадратурных узлов.
Примеры квадратурных формул
В этом разделе для приближенного вычисления определенного интеграла
b
I   f (x)dx, f (x)  C[a, b]
a
(1)
1. мы построим примеры интерполяционных квадратурных формул
In   k  0 Ak  f (x k )
n
(2)
на (n  1) -ом узле a  x 0  x1  ...  x n  b с весами
(x)
(3)
dx, k  0,1,...,n ,
a (x  x )  (x )
k
k
2. найдем их алгебраическую степень точности m : для этого необходимо и
достаточно найти максимальное целое m такое, что
 I  b x i dx  I  n A  (x )i , i  0, 1, ..., m;
 k 0 k k
n
 a
(4)

b m 1
n
m

1
I   x
dx  I n   k 0 A k  (x k ) ;

a
Ak  
b
3. конкретизируем оценку погрешности интерполяционной квадратуры на
(n  1) -ом узле алгебраической степени точности m  n :
| I  In | 
где
|| f (m1) (x) || C[a,b]
(m  1)!
b
a | (x)  d n,m (x) |dx ,
m  n;
1,
d n,m (x)  
(x  y1 )  ...  (x  y t ), t  m  n, y j  [a,b].
32
(5)
Мацокин А.М. “Численный анализ”. Конспект лекций.
Формулы прямоугольников (на одном узле)
(x)
dx  b  a ,
a (x  x )(x )
0
0
I0  (b  a)  f (a) ,
P0 (x) 2. m  0 ,
|| f (1) (x) || C[a,b] b
3. | I  I0 | 
a | x  a |dx 
1!
x
b
|| f (1) (x) || C[a,b]

(b  a)2 .
2
1.
f (x)
a
P0 (x)
a
b
b
(x)
dx  b  a ,
a (x  x )(x )
0
0
I0  (b  a)  f (b) ,
2. m  0 ,
|| f (1) (x) || C[a,b] b
3. | I  I0 | 
a | x  b |dx 
1!
x
|| f (1) (x) || C[a,b]

(b  a)2 .
2
1.
f (x)
x0  a , A0  
x0  b , A 0  
b
ab
,
2
b
(x)
A0  
dx  b  a ,
a (x  x )(x )
0
0
I0  (b  a)  f (c) ,
2. m  1, так как
1. x 0  c 
f (x)
P0 (x)
b
I   x dx  (b  a)2 / 2 
a
a
c
b
x
 I0  A0  x0  (b  a)  (b  a) / 2 ,
3. | I  I0 | 
|| f (2) (x) || C[a,b]
2!
b
a | (x  c)  (x  c) |dx 
|| f (2) (x) || C[a,b] (b  a)3 || f (2) (x) || C[a,b]



(b  a)3 .
2!
12
24
33
Мацокин А.М. “Численный анализ”. Конспект лекций.
Формула трапеций (на двух узлах)
1. x0  a, x1  b ,
x  x1
dx  (b  a) / 2 ,
a x x
0
1
b x  x0
A1  
dx  (b  a) / 2 ,
P1(x)
a x x
1
0
I1  (b  a)  [f (a)  f (b)] / 2 ,
2. m  1,
x
|| f (2) (x) || C[a,b] b
b
3. | I  I1 | 
a | (x  a)  (x  b) |dx 
2!
|| f (2) (x) || C[a,b] (b  a)3 || f (2) (x) || C[a,b]



(b  a)3 .
2!
6
12
A0  
f (x)
a
b
Формула Симпсона (на трех узлах)
ab
, x2  b ,
2
b (x  x1 )(x  x 2 )
A0  
dx  (b  a) / 6 ,
a (x  x )(x  x )
0
1
0
1
b (x  x 0 )(x  x 2 )
A1  
dx  4(b  a) / 6 ,
a (x  x )(x  x )
1
0
1
2
b (x  x 0 )(x  x1 )
A2  
dx  (b  a) / 6 ,
a (x  x )(x  x )
2
0
2
1
I2  (b  a)  [f (a)  4  f (c)  f (b)] / 6 ,
1. x 0  a, x1  c 
f (x)
P2 (x)
c
a
x
b
2. m  3 , так как на полиномах (x  c)0 , (x  c)1, (x  c)2 формула точна в силу
ее интерполяционности и, кроме того, она точна на полиноме (x  c)3 :
I
b
a
(b  c)4  (a  c)4
(x  c) dx 
0
4
3
(a  c)3  4(c  c)3  (b  c)3
 I2 
 0,
6
3. | I  I 2 | 
|| f (4) (x) || C[a,b]

4!
|| f (4) || C[a,b]
4! 120
b
a | (x  a)  (x  c)
2
 (x  b) |dx 
(x)(x  c)
(b  a)5 .
34
Мацокин А.М. “Численный анализ”. Конспект лекций.
Квадратура Гаусса на двух узлах
1. Узлы x0 , x1 – корни полинома
(x)  (x  c)2  a1(x  c)  a 0 такого, что
f (x)
P1(x)
a x0
c
A0  
b
a
x1 b
x
 b [(x  c)2  a (x  c)  a ]  (x  c)0 dx  0,
1
0
 a
 b
 [(x  c)2  a1 (x  c)  a 0 ]  (x  c)1 dx  0;
 a
после вычисления интегралов эта система имеет
вид:

(b  a)3

 a 0  (b  a)  0, 
(b  a)2
a 
,

12
  0

12
(b  a)3
 a  0;

a1 
 0;
 1

12
2
2
т.е. (x)  (x  c)  (b  a) / 12 и его корни

ab
3

(b  a),
 x 0  c  (b  a) / (2 3) 

2
6

 x  c  (b  a) / (2 3)  a  b  3 (b  a);
 1
2
6
x  x1
dx  (b  a) / 2 ,
x0  x1
A1  
b
a
x  x0
dx  (b  a) / 2 ,
x1  x 0
I1  [f (c  (b  a) / (2 3))  f (c  (b  a) / (2 3))]  (b  a) / 2 ,
2. m  2n  1  3 ,
|| f (4) || C[a,b] b
3. | I  I1 | 
  [(x  x 0 )(x  x1 )](x  x 0 )(x  x1 )dx 
a
4!
(x)

|| f (4) || C[a,b]
4!  180
 (b  a)5 .
Составные квадратурные формулы
Использование простейших квадратурных формул для интегрирования
функции на интервале, длина которого не является малой величиной, редко
приводит к хорошим результатам. Поэтому отрезок интегрирования [a, b]
обычно разбивают на непересекающиеся подъинтервалы малой длины:
[a, b]  [x0 ,x1] ... [x N1,x N ] , исходный интеграл представляют в виде
суммы интегралов по отрезкам разбиения и каждый интеграл этой суммы
заменяют по той или иной простейшей квадратурной формуле:
35
Мацокин А.М. “Численный анализ”. Конспект лекций.
b
a
f (x)dx   k 1 
N
xk
f (x)dx   k 1 I n,[x k 1 ,x k ]   k 1  n,[x k 1,x k ] .
N
x k 1
N

Составные формулы прямоугольников на равномерной сетке
x i  a  i  h, h 
ba
, i  0,..., N .
N
f (x)
a  x0
x k 1
b
N
a
k 1
xN  b
xk
x
N
 f (x)dx   xk 1 f (x)dx   [f (x k 1)  h  n,[xk 1,xk ] ],
xk
k 1
|  n,[x k 1,x k ] | 
|| f (1) (x) || C[x k 1,x k ]
2
h2 ,
N
|| f (1) (x) || C[a,b] (b  a)
k 1
2
|  |   |  n,[x k 1,x k ] | 
h.
f (x)
a  x0
x k 1
b
N
a
k 1
xN  b
xk
x
N
 f (x)dx   xk 1 f (x)dx   [f (x k )  h  n,[xk 1,xk ] ],
xk
k 1
|  n,[x k 1,x k ] | 
|| f (1) (x) || C[x k 1,x k ]
2
h2 ,
N
|| f (1) (x) || C[a,b] (b  a)
k 1
2
|  |   |  n,[x k 1,x k ] | 
36
h.
Мацокин А.М. “Численный анализ”. Конспект лекций.
f (x)
a  x0
x k 1
b
N
xk
a
k 1
x k 1
 f (x)dx   
xN  b
xk
N
f (x)dx   [f (
k 1
x
x k 1  x k
)  h   n,[x k 1,x k ] ],
2
|  n,[x k 1,x k ] | 
|| f (2) (x) || C[x k 1,x k ]
h3 ,
24
N
|| f (2) (x) || C[a,b] (b  a)
k 1
24
|  |   |  n,[x k 1,x k ] | 
h2.
Составная формула трапеций на равномерной сетке
ba
, i  0,..., m .
m
f (x)
x i  a  i  h, h 
a  x0
x k 1
b
N
a
k 1
xN  b
xk
N
 f (x)dx   xk 1 f (x)dx   [
xk
k 1
x
f (x k 1 )  f (x k )
)  h   n,[x k 1,x k ] ],
2
|  n,[x k 1,x k ] | 
|| f (2) (x) || C[x k 1,x k ]
12
N
|| f (2) (x) || C[a,b] (b  a)
k 1
12
|  |   |  n,[x k 1,x k ] | 
37
h3 ,
h2 .
Мацокин А.М. “Численный анализ”. Конспект лекций.
Составная формула Симпсона на равномерной сетке
ba
, i  0,..., m .
m
f (x)
x i  a  i  h, h 
a  x0
x k 1
b
N
xk
a
k 1
x k 1
 f (x)dx   
N
f (x)dx   [
k 1
xN  b
xk
x
f (x k 1 )  4f (x k 1/2 )  f (x k )
)  h   n,[x k 1,x k ] ],
6
|  n,[x k 1,x k ] | 
N
|  |   |  n,[x k 1,x k ] | 
k 1
38
|| f (4) (x) || C[x k 1,x k ]
(4!)  120
|| f (4) (x) || C[a,b] (b  a)
(4!)  120
h5 ,
h4.
Мацокин А.М. “Численный анализ”. Конспект лекций.
Лекция 5.
Итерационные методы решения нелинейных уравнений
При построении квадратур Гаусса необходимо находить корни полинома (x)
степени n  1 (ортогонального полиномам меньшей степени), т.е. решить
нелинейное уравнение (x)  0 .
Решать нелинейные уравнения необходимо, например, и при реализации
простейшей неявной разностной схемы, аппроксимирующей задачу Коши для
дифференциального уравнения первого порядка:
 du(t)
 f (t, u(t)), t  (0, T],

 dt
 u(0)  u 0 ,

на сетке {a  t 0  t1  ...  t M  b} с “малыми” шагами k  t k  t k 1 .
y(t)
u(t)
a  t0
t k 1
tM  b
tk
t
Схема строится очень просто:
1) интегрируем уравнение по интервалу [t k 1 , t k ] :
tk

f (t k 1 , u(t k 1 ))  f (t k , u(t k ))
 u(t k )  u(t k 1 )   f (t, u(t)) dt 
 k   k ,
2

t k 1

k  1, ..., M,

u(0)  u 0 ,
2) удаляем в этой системе ошибки аппроксимации k  O(3k ) и получаем
для y k  u(t k ) уравнения:
f (t k 1 , y k 1 )  f (t k , y k )

 k ,
 y k  y k 1 
0
y0  u , 
2

k  1, ..., M.

Очевидно, что для вычисления y k при известном y k 1 нужно решить
уравнение
f (t , y)
f (t , y )
y k
 k  [y k 1  k 1 k 1  k ]  0 ,
2
2
f (t , y)
f (t , y )
т.е. найти корень уравнения F(y)  y  k
 k  [y k 1  k 1 k 1  k ]  0 .
2
2


0
Сходимость y(t) к u(t) при k
мы оставим на 3-й курс.
39
Мацокин А.М. “Численный анализ”. Конспект лекций.
Итак, пусть функция f (x)  C[a, b] и требуется решить уравнение
f (x)  0 ,
(1)
решение x  [a, b] которого будем называть корнем (нулем) функции f (x) .
Отметим, что каких-либо общих правил анализа расположение корней
произвольной непрерывной функции f (x) на отрезке [a, b] не существует.
Определение 1.
Корень x  [a, b] функции f (x) будем называть изолированным корнем
кратности p  0 , если
(2)
f (x)  (x  x )p  g(x) ,
где функция g(x) непрерывна на отрезке [a, b] и знакоопределена в
некоторой окрестности I (x  )  [x   , x   ] [a, b],   0 .
Очевидно, что, найдя один изолированный корень функции f (x) и определив
его кратность, следующий корень мы можем искать как корень функции g(x) .
Постройте метод деления пополам для приближения корня в случае
f (a)  f (b)  0 .
Построить явные формулы, определяющие корни непрерывной функции,
удается крайне редко, поэтому основными методами решения задачи (1)
являются итерационные процессы, позволяющие получить ее решение с любой
точностью.
Мы
ограничимся
изучением
двух
методов:
метода
последовательных приближений и метода Ньютона, основой которых является
принцип сжимающих отображений.
Принцип сжимающих отображений
Пусть M − метрическое пространство с расстоянием (x, y)  x, y  M :
(x, x)  0,
(x, y)  (y, x)  0  x  y  M,
(x, y)  (x, z)  (z, y)  x, y, z  M.
Определение 2. Отображение
: M  M,
называется сжимающим, если  0  q  1 такое, что
( (x), (y) )  q  (x, y)  x, y  M .
Определение 3.
Элемент x  M
 : M  M , если
называется
неподвижной
x  (x ) .
40
точкой
(3)
(4)
отображения
(5)
Мацокин А.М. “Численный анализ”. Конспект лекций.
Теорема 1 (принцип сжимающих отображений).
 из полного метрического
Сжимающее отображение
пространства M в M имеет одну и только одну неподвижную
точку x  M .
Более того, последовательность метода простой итерации (метода
последовательных приближений)
(6)
x n 1  (x n ), x 0  M, n  0, 1, ... ,
сходится к неподвижной точке и имеет место оценка
(x , x n ) 
(x1, x 0 ) n
 q ,  n  0.
1 q
(7)
Доказательство.
Очевидно, что предел x  (если он существует) последовательности (6)
является неподвижной точкой отображения  . Для существования предела
достаточно показать, что последовательность фундаментальна по Коши,
так как пространство M полно.
Из определений последовательности и сжимающего отображения следует:
(x n  m , x n )  ( (x n  m 1 ), (x n 1 ) )  q  ( x n  m 1, x n 1 )  ... 
 q n  ( x m , x 0 ).
Из этого неравенства (и неравенства треугольника) следует, что
( x m , x 0 )  ( x m , x m 1 )  ( x m 1, x 0 ) 
 q m 1  ( x1 , x 0 )  ( x m 1, x 0 )  ... 
 q m 1  ( x1 , x 0 )  q m  2  ( x1, x 0 )  ...  q 0  ( x1, x 0 ) 
( x1 , x 0 )
1  qm

 ( x1 , x 0 ) 
1 q
1 q
и, значит,
(x n  m , x n )  q n  ( x m , x 0 ) 
 qn 
( x1 , x 0 )
   n  n  m ,
1 q
(8)
т.е. последовательность фундаментальна по Коши и x n  x  (x ) .
Более того, переходя в неравенстве (8) к пределу при m   , получим
оценку сходимости (7).
Единственность неподвижной точки устанавливается элементарно:
пусть x , x – два решения уравнения (5). Тогда
(x , x )  ( (x ), (x ) )  q  (x , x )
и, так как q  1 , то x  x .
41
Мацокин А.М. “Численный анализ”. Конспект лекций.
Метод простой итерации
Вернемся к уравнению (1) на отрезке [a, b] и преобразуем его к виду
x  (x) ,
(9)
задав, например, (x)  x  (x)  f (x) , где (x)
− непрерывная,
знакоопределенная на отрезке функция.
Рассмотрим для решения уравнения (9) метод простой итерации (6):
(10)
x n 1  (x n ), x 0  [a, b], n  0, 1, ... ,
Теорема 2. Если функция (x)  C[a, b] непрерывна по Липшицу:
| (x)  (y) |  q | x  y |  x, y  [a, b], q  1 ,
(11)
и преобразует интервал [a, b] в [a, b] , т.е.
a  (x)  b  x  [a, b] ,
(12)
то уравнение (9) имеет единственное на [a, b] решение x  , к
которому сходится последовательность {x n } метода простой
итерации (10) при любом начальном приближении x 0  [a, b] и
имеет место оценка
| x  x n | 
| x1  x 0 | n
q .
1 q
(13)
Доказательство.
Определим метрическое пространство M  [a, b] с расстоянием
(x, y) | x  y | . Очевидно, что оно полно, а из условий (11) и (12) следует,
что (x) − сжимающее отображение из M в M и, значит, утверждения
этой теоремы являются прямым следствием теоремы 1.
Проверка условий теоремы 2 для конкретных функций (x) может вызвать
определенные затруднения. Действительно, условие (11) для непрерывно
дифференцируемой функции означает ограниченность на интервале [a, b]
модуля ее первой производной постоянной Липшица q  1 , а проверка условия
(12) заключается в поиске (или оценке) экстремальных значений самой
функции, что может оказаться более сложной задачей по сравнению с
решением уравнения (9).
Если константа Липшица q  1 известна, то при достаточно удачном выборе
начального приближения x 0 метода простой итерации удается избавиться от
проверки условия (12).
Теорема 3. Если функция (x)  C[a, b] непрерывна по Липшицу с
постоянной q  1 и известно (хорошее) x 0  [a, b] такое, что
[x 0  , x 0  ]  [a, b],  
| (x 0 )  x 0 |
1 q
(14)
(это условие можно проверить, если известна константа Липшица),
то уравнение (9) имеет в [x 0  , x 0  ] единственное решение x  ,
42
Мацокин А.М. “Численный анализ”. Конспект лекций.
к которому сходится последовательность метода простой итерации
и имеет место оценка
| x  x n |    q n .
Доказательство.
Функция (x) отображает отрезок [x 0  , x 0  ] в себя. Действительно,
| (x)  x 0 |  | (x)  (x 0 ) |  | (x 0 )  x 0 | 
 q | x  x 0 | (1  q)    .
Следовательно, выполняются все условия теоремы 2 на интервале
[x 0  , x 0  ] , откуда следует сходимость и оценка сходимости метода
простой итерации.
Следующая теорема характеризует кратность корня функции f (x)  x  (x) .
Теорема 4. Если функция (x)  C[a, b] непрерывна по Липшицу:
| (x)  (y) |  q | x  y |  x, y  [a, b], q  1 ,
и преобразует интервал [a, b] в [a, b] , т.е.
a  (x)  b  x  [a, b] ,
то функция f (x)  x  (x) имеет единственный на [a, b] корень
x  кратности единица.
Доказательство.
Существование и единственность корня x  функции f (x) на отрезке
[a, b] следует из теоремы 2.
Используя непрерывность по Липшицу функции (x) , получим
 x  [a, b] неравенство
| (x  x )  f (x) |  | (x)  (x  ) |  q | x  x  | .
Но, т.к. | (x  x ) |  | f (x) |  | (x  x  )  f (x) |  q | x  x  | , то
(1  q)  | (x  x ) |  | f (x) | , и
т.к. | f (x) |  | (x  x ) |  | (x  x  )  f (x) |  q | x  x  | , то
| f (x) |  (1  q) | (x  x ) | , следовательно,
| f (x) |
0 1 q 
1 q

|xx |
и, значит в представлении f (x)  (x  x  )  g(x) непрерывная функция
g(x) знакоопределена, т.е. кратность корня x  равна 1.
43
Мацокин А.М. “Численный анализ”. Конспект лекций.
Постройте и исследуйте сходимость метода простой итерации для решения
уравнения f (x)  x 2  a  0 на интервале [1, a] .
Решение. Преобразуем уравнение f (x)  x 2  a  0 к виду
x  x    (x 2  a)  (x) ,
где постоянную  надлежит выбрать из условий:
a) 1  (x)  x    (x 2  a)  a  x  [1, a],
b) | (x) |  |1  2  x |  q  1  x  [1, a].
Начнем с условия b). Так как минимальное и максимальное значения
линейной функции достигаются на концах интервала [1, a] :
max | (x) |  max {|1  2 |, |1  2  a |}  q( ) .
x[1, a]
То для того, чтобы q( )  1 , необходимо и достаточно выбрать  из
условий:
1  1  2
 1, 
 1    0, 



    (0, 1 / a).
1  1  2  a  1, 

1
/
a



0,


Замечание. Минимум коэффициента q( ) на интервале (0, a 1 )
достигается при   opt  1/ (1  a) и q(opt )  (a  1) / (a  1) .
Докажите эти формулы (вспомните курс вычислительных методов
линейной алгебры: оптимизация метода простой итерации
x k 1  x k    (Ax k  b) для решения системы Ax  b ).
Теперь проверим условие a) при   opt  1/ (1  a) . Минимальное и
максимальное значения функции (x) достигаются либо при x  1,
либо в корне x  1/ (2opt )  (a  1) / 2  (1, a) её производной, либо
при x  a :
 2a / (a  1); 


2
 (a  1)  4a 
2
min [x  opt  (x  a)]  min 
;   1,
x[1, a]
4(a

1)


 2a / (a  1) 


так как неравенства
2a  a  1,
(a  1)2  4a
 1  (a  1)2  4a  4(a  1)  a 2  2a  3;
4(a  1)
справедливы при a  1 ;
44
Мацокин А.М. “Численный анализ”. Конспект лекций.
далее,
 2a / (a  1); 


2
(a

1)

4a


max [x  opt  (x 2  a)]  max 
;  a
x[1, a]
 4(a  1) 
 2a / (a  1) 


так как неравенства
2a  a(a  1)  a 2  a  2a,
(a  1)2  4a
 a  (a  1)2  4a  4a(a  1)   3a 2  2a  1  0;
4(a  1)
справедливы при a  1 .
Итак, при   1 / (a  1) отображение (x) : [1, a]  [1, a] является
сжимающим с q  (a  1) / (a  1) , к его неподвижной точке x  a
сходится последовательность приближений метода простой
итерации:
x n 1  x n  (x 2n  a) / (a  1), n  0, 1, ...,
при любом начальном приближении x0  [1, a] ,
а для погрешности x  x n справедлива оценка
| x  x n | 
| x1  x 0 | n | x1  x 0 |  (a  1)
2 n
q 
 (1 
) .
1 q
2
a 1
Метод Эйткена ускорения сходимости метода простой итерации
Пусть для функции (x)  C2 [a, b] выполняются условия теоремы 2, т.е.
уравнение
x  (x)
(15)
имеет единственное решение x  [a, b] , к которому сходятся приближения
x n 1  (x n ), x 0  [a, b], n  0, 1, ... .
(16)
Тогда, так как
x n 1  (x n )  (x  )  (x  )  (x n  x  ) 
 x   (x  )  (x n  x  )   n ,
(n )
 (x n  x  ) 2 
2
 n  O(| x n  x  | 2 ),
то для погрешности метода простой итерации


(17)
имеем соотношение

| x n 1  x |  | (x ) |  | (x n  x ) | , т.е. за одну итерацию она уменьшается в
| (x ) | 1 раз, если (x )  0 . Говорят, что метод простой итерации имеет
линейную скорость сходимости (при (x )  0 она была бы квадратичной).
45
Мацокин А.М. “Численный анализ”. Конспект лекций.
Предположим, что (x )  0 , и рассмотрим три последовательных
приближения x n , x n 1 и x n  2 . Согласно (17), они связаны следующими
соотношениями:
x n 1  x  (x )  (x n  x )   n ,


(18)

x n  2  x  (x )  (x n 1  x )   n 1.
Вычитая из второго равенства первое, получим
x n  2  x n 1  (x )  (x n 1  x n )  [ n 1   n ]
 (x ) 
x n  2  x n 1
 
  n ,  n  n 1 n .
x n 1  x n
x n 1  x n
(19)
Заменяя производную (x ) в первом равенстве по формуле (19), получим
x n 1  x  (
 (1 
x n  2  x n 1
  n )  (x n  x )   n 
x n 1  x n
x n  2  x n 1
x
 x n 1
)  x  n  2
 x n  [ n   n  (x n  x )],
x n 1  x n
x n 1  x n
n
x n  x
 n  n 
 ( n 1   n ) ,
x n 1  x n
x n 1  x n
x n  2  x n 1
x 
 x n 1 
 x n  n ,
 x n  2x n 1  x n  2
 x n  2x n 1  x n  2
xn2
n 
x n 1  x n
 n 
 x n  2x n 1  x n  2
(20)
x n 1  x n
x n  x

 [ n 
 ( n 1   n )].
 x n  2x n 1  x n  2
x n 1  x n
Проанализируем коэффициенты при x n 1 и x n в (20):
x n 1  x n
x
 x n 1 1
(x n 1 )  (x n ) 1
 (1  n  2
)  (1 
) 
 x n  2x n 1  x n  2
x n 1  x n
x n 1  x n
( n )  (x n 1  x n ) 1 n
1
 (1 
)

,
x n 1  x n
1  (x )
x n  2  x n 1
(x n  2  x n 1 ) / (x n 1  x n )



 x n  2x n 1  x n  2
1  (x n  2  x n 1 ) / (x n 1  x n )
( n ) n
(x )

 
.
1  ( n )
1  (x )
46
(21)
(22)
Мацокин А.М. “Численный анализ”. Конспект лекций.
Так как константа (x )  0 и | (x ) |  q  1, то эти коэффициенты являются
величинами порядка O(1) в некоторой (малой) окрестности неподвижной точки
x и “линейная” комбинация x n  2 приближений x n 1 и x n метода простой
итерации имеет своим пределом x :
x n2 
n
x n 1  x n
x n  2  x n 1
 x n 1 
 xn 
 x n  2x n 1  x n  2
 x n  2x n 1  x n 2
1
(x )





x


x

x
,
1  (x )
1  (x )
n 
(23)
а также оценку ошибки приближения
x n 1  x n
x n  x
n  x n 2  x 
 [ n 
 ( n 1   n )] 
 x n  2x n 1  x n  2
x n 1  x n

(24)
 O((x n  x )2 ),
так как
1) первый множитель в правой части  [1  (x )]1  O(1) ,
2) n  O((x n  x )2 ) ,
3) n 1  n  O((x n  x )2  (x n 1  x )2 )  O((x n  x ) 2 ) ,
4) множитель перед разностью n 1  n также  O(1) :
x n  x
x n  x


x n 1  x n [x  (x )  (x n  x )   n ]  x n


x n  x
[(x )  1]  (x n  x )  O((x n  x ) 2 )
1
[(x )  1]  O(x n  x )

1
(x )  1

 O(1).
Обычно x n  2 записывают в виде
x n2
(x n  2  x n 1 )2
 x n 2 
x n  2x n 1  x n  2
(25)
и называют методом Эйткена ускорения простой итерации по её трем
последовательным приближениям:
x n , x n1  (x n ), x n2  (x n1 )  [(x n )] ,
Замечание. Метод Эйткена ускорения простой итерации x n1  (x n )
решения уравнения x  (x) можно переписать в виде
x n2
([(x n )]  (x n ))2
 [(x n )] 
 (x n ) .
x n  2(x n )  [(x n )]
47
Мацокин А.М. “Численный анализ”. Конспект лекций.
Проверьте, что (x )  x и (x )  0 .
Докажем, что точка (x n  2 , x n  2 ) является точкой пересечения прямой y  x
и прямой, проходящей через точки (x n , (x n )) и (x n 1, (x n 1 )) .
Y
yx
y  (x)
(x n )
(x n 1 )
x n  2 x n  2 x n 1
xn
X
Геометрическая интерпретация метода простой итерации и его ускорения
методом Эйткена.
Действительно, x n  2 мы находили, решая уравнение
x n 1  (1 
x n  2  x n 1
x
 x n 1
)  x  n 2
 xn ,
x n 1  x n
x n 1  x n
которое преобразуется к виду
y(x)  x  x n 1 
 xn2 
x  xn
x  x n
 x n 1  (1 
)
x n 1  x n
x n 1  x n
 xn2 
(x n 1 )
x n  2  x n 1
x
 x n 1
 x  n2
 xn 
x n 1  x n
x n 1  x n
x  xn
x  xn
 x n 1 
 L(x)
x n 1  x n
x n 1  x n
(x n )
и, следовательно, его решение x n  2 является точкой пересечения прямой
y  x и прямой L(x) , проходящей через точки (x n , (x n )) и (x n 1, (x n 1 )) .
48
Мацокин А.М. “Численный анализ”. Конспект лекций.
Лекция 6.
Метод Ньютона
Пусть функция f (x)  C1[a, b] и требуется решить уравнение
f (x)  0 ,
(1)
Идея метода Ньютона чрезвычайно проста: если x n − приближение к корню
x  , то функция f (x) заменяется интерполяционным полиномом первой
степени по ее значению f (x n ) и значению ее первой производной f (x n ) :
f (x)  f (x n )  f (x n )  (x  x n ) ,
а корень этого полинома объявляется следующим приближением:
x n 1  x n 
f (x n )
,
f (x n )
x 0  [a, b], n  0, 1, ... .
(2)
Докажите, что x n 1 является точкой пересечения прямой, проходящей через
точку (x n , f (x n )) и тангенсом угла  n между прямой и осью
абсцисс равным f (x n ) .
y
f (x n )
y(x)  f (x n )  tg(n )  (x  x n )
f (x n 1)
n
f (x)
x

xn 2
x n 1
xn
x
Геометрическая интерпретация метода Ньютона.
Очевидно, что метод Ньютона (2) решения уравнения (1) совпадает с методом
простой итерации решения эквивалентного уравнения
x  (x)  x 
f (x)
f (x)
(3)
и все результаты предыдущей лекции можно применить для исследования
сходимости метода, в основном теорему 5.2, где требуется, чтобы
| (x) |  q  1 и a  (x)  b для всех x  [a, b] .
49
Мацокин А.М. “Численный анализ”. Конспект лекций.
Пусть x  [a, b] − изолированный корень кратности p  0 функции f (x) :
f (x)  (x  x ) p g(x) ,
(4)
где функция g(x)  C2 [a,b] знакоопределена в некоторой окрестности корня.
Тогда, так как
(x)  x 
(x  x  ) p g(x)
 p 1
p(x  x )
 p
g(x)  (x  x ) g (x)

(x  x  )g(x)
x  x
x
 ( x 
)
p
pg(x)  (x  x  )g(x)
x  x
g(x)
 2
x

(x

x
) ,
p
p[pg(x)  (x  x  )g(x)]
то
(x) 
p 1
 O(| x  x  |)
p
и приближения x n метода Ньютона (2) к корню x  функции f (x)
удовлетворяют соотношениям
x n 1  x   (x n )  (x  )  (n )(x n  x  ) 

p 1
(x n  x  )  O(| x n  x  | 2 ).
p
Из этого соотношения можно сделать следующие предположения:
p 1
|  1;
p
p 1
|  1;
 метод Ньютона сходится, если p  0.5 , так как |
p
 метод Ньютона сходится с линейной скоростью, если p  1 и, так как
p 1
x n 1  x  
(x n  x  )  O(| x n  x  | 2 ),
p
p 1
x n  2  x 
(x n 1  x  )  O(| x n 1  x  | 2 ),
p
 метод Ньютона не сходится, если p  0.5 , так как |
то
x n 1  x n
 O(| x n 1  x | 2  | x n  x | 2 ) ;
x n  2  2x n 1  x n
 метод Ньютона сходится с квадратичной скоростью, если p  1 .
p
50
(5)
Мацокин А.М. “Численный анализ”. Конспект лекций.
Случай простого корня: p  1
Здесь мы докажем две теоремы, содержащие условия существования простого
корня x  функции f (x) и сходимости к нему приближений метода Ньютона.
Теорема 1. Если f (x)  C1[a, b] выпукла вниз на отрезке [a, b] и
f (a)  0 , f (b)  0 , то
уравнение f (x)  0 имеет единственное решение x  [a, b] ;
f (x )
n
приближения x n 1  x n 
метода Ньютона при x 0  x  ,
f (x n )
например, x 0  a , строго возрастают и сходятся к этому корню.
Доказательство.
Существование решения x  уравнения f (x)  0
следует из того, что f (x)  C[a, b] принимает
все значения между f (a)  0 и f (b)  0 .
На картинке единственность корня очевидна,
но картинка не доказательство!
f (x)
f (x 0 )
f (x1 )
f (x 2 )
x1
x2
Метод Ньютона для
выпуклой вниз функции
x
Пусть x  x − корни функции f (x) . Из
определения выпуклости вниз и условия
f (b)  0 следует, что

0  f (x ) 

x  x

x  b
x  b

f (x ) 
f (b)  0 
bx
и, значит, x  x .
Теперь покажем, что последовательность
определена и строго возрастает.
{x n }
x  x
b  x
x  x
bx

метода
f (b) 
0
Ньютона
Прежде всего, заметим, что на интервале [a, x  ) функция f (x)  0 и
строго убывает, т.е. f (x)  0 (докажите этот факт).
f (x n )
Тогда для x n  [a, x ) мы можем вычислить x n 1  x n 
 xn и
f (x n )
x n 1  f (x n 1 ) (докажите этот факт: график выпуклой вниз функции
выше касательной в любой ее точке), т.е. x n 1  x .
Ограниченная строго возрастающая последовательность {x n } имеет
x   x и, переходя к пределу в равенстве f (x n )(x n 1  x n )  f (x n ) ,
убеждаемся, что он является корнем функции f (x) , а в силу
единственности корня x   x .
51
Мацокин А.М. “Численный анализ”. Конспект лекций.
Замечание. Аналогичные теоремы можно сформулировать и доказать для
случая вогнутых (выпуклых вверх) функций и изменения функции от
отрицательных значений к положительным:
сформулируйте и докажите эти теоремы для нахождения корня функций
методом Ньютона в соответствии с нижеприведенными картинками:
f (x)
f (x)
f (x)
f (x 0 )
x2
x1
x1
x
x2
x
f (x1 )
f (x1 )
x2
f (x1 )
x
x1
f (x 0 )
Метод Ньютона для
выпуклой вниз функции
Метод Ньютона для
выпуклой вверх функции
f (x 0 )
Метод Ньютона для
выпуклой вверх функции
Прежде чем сформулировать и доказать вторую теорему мы рассмотрим
пример применения теоремы 1 для приближения меньшего корня t  полинома
второй степени
P(t)  a 2 t 2  a1t  a 0 , a 2  0, a 0  0 ,
(6)
с положительными корнями t   t  .
P(t)
P(0)  a0
t
0  t0
t1
tn
t
t n 1
t
Из теоремы 1 следует, что последовательность {t n } метода Ньютона
t 0  0, t n 1  t n 
P(t n )
, n  0, 1, ... ,
P(t n )
(7)
a1  a12  4a 0 a 2
 0 , если (условие
строго возрастает и сходится к t 
2a 2

положительности корней полинома) D  a12  4a 0 a 2  0 .
52
Мацокин А.М. “Численный анализ”. Конспект лекций.
Если (7) переписать в виде
P(t n )
a 2  (t n  t  )(t n  t  )
t 0  0, t n 1  t n 
 tn 

P(t n )
[a 2  (t n  t  )(t n  t  )]
 (t n )  t n 

(8)

(t n  t )(t n  t )
, n  0, 1, ...,
2t n  (t   t  )
то погрешность метода удовлетворяет неравенствам
так как
0  t  t n 1  (t  )  (t n )  (n )(t   t n )  0.5  (t   t n ) ,
0  (t)  [t 
(t  t  )(t  t  )


2t  (t  t )
] 
2(t  t  )(t  t  )

 2
[2t  (t  t )]

1
2
(9)
 t  [0, t  ] ,
т.е. скорость сходимости не хуже линейной (линейна при t   t  , почему?).
Если t   t  , то
0  (t) 
2(t   t)
(t   t) 

 2
[2t  (t  t )]
t   t
2

2 
(t

t)

(t   t)  t  [0, t  ]

2

[(t  t)  (t  t)]
t t
и
t   n 
t  t n 1  (n )(t  t n )  2 
(t  t n ), n  (t n , t  ) .
t  n


Но
d t   n
 t   n  t    n
(
)
0
dn t   n
(t   n ) 2
t  n
t  t n
t  t n
 
 
   ,
t  n t  t n t  t
и
t   t n 1 
2

2

(t

t
)
n
t   t 
(10)
т.е. скорость сходимости метода Ньютона квадратичная.
Заметим, что в этом примере выполняются условия:
1
 max P(t)  0,
2
a1   P(0)  a 2  (t   t  )  0,
a2 
a 0  P(0)  a 2  (t   t  )  0.
53
(11)
Мацокин А.М. “Численный анализ”. Конспект лекций.
Теорема 2. Пусть f (x)  C2 [x 0  , x 0  ],   0 , и
1
 max | f (x) |,
2 |x  x 0 | 
a1  | f (x 0 ) |, a1  0,
a2 
a 0  | f (x 0 ) |, a 0  0,
а полином P(t)  a 2 t 2  a1t  a 0 имеет положительные корни
t   t  и t   .
Тогда f (x) имеет корень x   [x 0  , x 0  ] , к которому сходится
последовательность {x n } метода Ньютона:
f (x n )
x n 1  x n 
, n  0, 1, ... ,
f (x n )
и имеет место оценка
| x n  x |  t   t n  n  0 ,
где {t n } − приближения по методу Ньютона (7) для корня t 
полинома P(t) .
Доказательство.
Прежде всего, напомним, что последовательность
t 0  0, t n 1  t n 
P(t n )
, n  0, 1, ... ,
P(t n )
(7)
строго возрастает и сходиться к t  .
При n  0 по условию теоремы | f (x 0 ) |  a 0 и | f (x 0 ) |  a1  0 , значит
x1 определен и
f (x 0 )
a
P(0)
| 0 
 t1  t 0  t    .
f (x 0 )
a1 P(0)
Предположим, что для некоторого n  1 доказано, что
| x k  x 0 |  ,
| x1  x 0 |  |
| x k  x k 1 |  t k  t k 1 , k  1, ..., n.
(12)
Покажем, что эти неравенства будут выполняться при k  n  1 .
Для вычисления x n 1 необходимо и достаточно показать, что f (x n )  0 :
| f (x n ) |  | f (x 0 )  
xn
x0
f (x)dx |  | f (x 0 ) |  | 
xn
x0
f (x)dx | 
 a1  2a 2  | x n  x 0 |  a1  2a 2  ( | x n  x n 1 | ... | x1  x 0 | ) 
 a1  2a 2  ( t n  t n 1  ...  t1  t 0 )  a1  2a 2  t n 
 P(t n )  0.
Значит x n 1 существует.
54
Мацокин А.М. “Численный анализ”. Конспект лекций.
Теперь нужно показать, что x n 1  [x 0  , x 0  ] .
f (x )
n .
Сначала оценим | x n 1  x n |  |
|
f (x n )
Так как | f (x n ) |  P(t n ) и
| f (x n ) |  | f (x n 1 )  f (x n 1 )  (x n  x n 1 ) 
0
f (n 1 )
(x n  x n 1 ) 2 | 
2
f (n 1 )
(x n  x n 1 ) 2 |  a 2  (t n  t n 1 ) 2 , n 1  [x n 1 , x n ],
2
P(t n 1 )
P(t n )  P(t n 1 )  P(t n 1 )  (t n  t n 1 ) 
(t n  t n 1 ) 2 
2
|
0

то
P(t n 1 )
(t n  t n 1 ) 2  a 2  (t n  t n 1 ) 2 ,  | f (x n ) |  P(t n )
2
| x n 1  x n |  |
f (x n )
P(t n )
|
 t n 1  t n ,
f (x n )
P(t n )
т.е. выполняется второе из предположений (12).
Теперь оценим x n 1  x 0 :
| x n 1  x 0 |  | x n 1  x n | ... | x1  x 0 | 
 (t n 1  t n )  ...  (t1  t 0 )  t n 1  t   ,
т.е. выполняется и первое из предположений (12).
И, наконец, из неравенств | x k 1  x k |  t k 1  t k , справедливых для
любого
целого
следует
фундаментальность
по
Коши
k,
последовательности {x n } , так как
| x n  m  x n |  | x n  m  x n  m 1 | ... | x n 1  x n | 
 (t n  m  t n  m 1 )  ...  (t n 1  t n )  t n  m  t n ,
а сходящаяся последовательность {t n } фундаментальна по Коши.
Следовательно,
x n  x   [x 0  , x 0  ] ,
и
f (x n )  f (x n )(x n 1  x n )  f (x  )  0 ,
f (x )
0
а переходя к пределу при m   в (13), получим оценку сходимости:
| x  x n |  t   t n  n  0 , что и требовалось доказать.
55
(13)
Мацокин А.М. “Численный анализ”. Конспект лекций.
Метод Ньютона с параметром
Рассмотрим частный случай уравнения (1) на интервале [0, 1]
f (x)  x p  0, p  0,
т.е. x  0 – корень кратности p . Метод Ньютона в этом случае
p 1
xn
p
p  x pn 1
при p  0.5 не сходится, а при остальных p  1 скорость его сходимости
x n 1  x n 
x pn

линейна.
Определим метод Ньютона с параметром:
x n 1  x n  p
f (x n )
, n  0, 1, ... .
f (x n )
(14)
Очевидно, что для нашего примера этот метод дает решение за одну итерацию
при любом p  0 .
Метод Ньютона с параметром можно трактовать как метод простой итерации
(последовательных приближений) решения уравнения
f (x)
 (1  p)  x  p  (x)
(15)
f (x)
вместо уравнения x  (x)  x  f (x) / f (x) .
p 1
 O(| x  x  |) , то (x)  (1  p)  p(x)  O(| x  x  |) и
Так как (x) 
p
x   (x)  x  p 
x n 1  x  (x n )  (x  )  (n )(x n  x  ) 
 O(| n  x  |)(x n  x  )  O(| x n  x  | 2 ),
т.е. метод Ньютона с параметром сходится при любой положительной
кратности p корня x  функции f (x) и скорость его сходимости квадратичная
(естественно при некоторых условиях на функцию f (x) ).
Если кратность p
(x) 
корня x  функции f (x)
неизвестна, то, разрешая
p 1
1
 O(| x  x  |) относительно p , получим p 
 O(| x  x  |) .
p
1  (x)
Тогда итерационный процесс
x n 1  x n 
f (x n )
1
, n  0, 1, ... ,
1  (x n ) f (x n )
(16)
будет сходиться при достаточно близком к корню x  приближении x 0 , так как
он является методом простой итерации для уравнения
x  (x)  (1  p)  x  p  (x) 
и (x )  0 .
56
(x)  x  (x)
1  (x)
(17)
Мацокин А.М. “Численный анализ”. Конспект лекций.
Литература
Бахвалов Н.С. Численные методы. - М.: Наука, 1975.
Березин И.С., Жидков Н.П. Методы вычислений. Ч.1. - М.: Наука, 1966.
Волков Е.А. Численные методы. - М.: Наука, 1987.
Крылов В.И., Бобков В.В., Монастырный П.И. Вычислительные методы.
Т.1. - М.: Наука, 1976.
5. Самарский А.А., Гулин А.В. Численные методы. - М.: Наука, 1989.
1.
2.
3.
4.
57
Скачать