f ( x ) - H n (x)
А = ----------------- .
“ 00
Узлы
хк
являются корнями кратности
Nh
функции
g(s), k =
= 1, 2, . . . ,
т.
Кроме того, точка
i g
[
a
,
b]
является корнем o(s).
Таким образом, функция
g(s)
имеет с учетом кратности Л
/ 0
+ ЛС +
. ..
.. , + Nm+
1 = л +
2
корня на отрезке
[а, Ь].
По теореме Ролля про
изводная
g' (s)
имеет по крайней мере один нуль между двумя со
седними корнями функции g (s). Следовательно,
g'(s)
имеет не ме
нее
т
+ 1
корня на [а,
b
] в точках, не совпадающих ни с одной из
точек
х0, х и
. . . ,
хт, х.
Кроме того,
g'(s)
имеет в точке
хк
корень
кратности
Nk
—1,
k = 0,
1, . . . ,
т.
Таким образом,
g'(s)
имеет с уче
том кратности не менее
(Уо— 1) +... + (Л/т— 1) -г (щ + 1)
= N a + N ,
+... + Л/т=/г+ 1
корней на
[а, Ъ).
Аналогично
g "
(s) имеет не менее
п
корней и т. д.
Производная g (n+
1
, (s) по крайней мере один раз обращается в нуль
на
[а, Ь],
т. е. существует точка £ е [ а ,
Ь],
в которой g (n+1) (|) =
0
.
Из (3) имеем
g<" +
0
(S) =/(«+!) (5)
(s) .
Так как сo ( s ) — многочлен степени
п+
1 со старшим коэффициен
том
1
, имеем (о(л+1) (s) = ( n + 1)! Поэтому из условия g-("+1,( | ) = 0
получаем, учитывая выражение для
К,
следующее представление
для погрешности интерполирования:
f ( x ) - H n (x) = J ^ ^ ( x - x f ° ( x - x , ) v ' . . . ( х - х т) \
(5)
137
2. Пример. Пусть Хо<Х]<х
2
— точки, в которых заданы значения
f(x0) = f 0, f(xt) = f u f'{xt) = f ‘u f(x2) = f 2.
Требуется построить мно
гочлен третьей степени
Н3(х)
такой, что
Я 3(*0) = Л>.
Hs(Xi) = fu Н ‘3(х1
) = /I,
Ha{xt) = f a.
(
6
)
Будем искать его в виде
На
(х)
=
Со
(*)
/о
+
С1
(х )
/х +
с
2
(
х
) / ,
-f
bL
(х)
f[,
где с
0
(х), сДх), с
2
(х),
bt (x
) — многочлены третьей степени. Ясно,
что
Н3(х)
будет искомым интерполяционным многочленом, если,
потребовать
с
0
(х0)
=
1
,
Ci
(х0)
=
0
, с
2
(х0) = О,
с
0
(*х) =
0
,
сг
(*j) =
1
, с
2
(Xj) = О,
с
0
(**) =
0
,
Cj (х2) =
0
, с
2
(х2)
=
1
,
Со (Xi) =
0
, сх (Хх) =
0
, с
2
(xj) = О,
(Д-о) — О»
bi
(Xj) = О,
Ьх (*а) = О,
ftl(Xx) =
1
.
Найдем многочлены третьей степени, удовлетворяющие пере
численным требованиям. Поскольку многочлен с
0
(х) имеет кратный
корень в точке х, и простой корень в точке х2, его можно искать в
виде
с
0
(х) =
К
(х—х
,) 2
(х—х2) .
Из условия с
0
(х0) = 1 находим
К —
*
(*а —
xt)2 (х0 —
х2)
Таким образом,
„ /.Л
(х—х,)3(х —х2)
0
(х0 — х2)2
(х
0
— х2)
(7)
Аналогично получаем
„
(X — Х0) (X — X,)2
с 2 \ х )
- ,
w
ч2 *
(х
2
— х0) (х2 — Ху)2
(8)
b
(*
— х0)
(х —
хх) (х — х2)
1
(Хх —
Х2) (хх —
х0)
(9)
Далее, многочлен сДх) будем искать в виде
Сх (х) = (х—х0) (х—х2) (ах + р),
где а и р — постоянные, подлежащие определению. Из условия
Ci (х,) =
1
находим
axj + Р =
(*1 —
Хо)
(*1
— х2)
(
10
)
Условие с' ( x j = 0 приводит к уравнению
(П)
138
(х,—
х 0)
( х —
x 2) a + ( a X i
+ p)
(2х1—х0—х2) = 0 .
Из уравнений (10) и (11) находим
2 * х — * о —
Ч
а
■
(*1 —
Ч ?
(*1 —
Х 2 ) 2
(*1 — -«о) (*1 — *2)
1
+
(
2
* Х — х
0
— х2) хх
( * 1
— *о)
( * 1
— *
2
)
(* — Х0) (л- — Х2)
{X
— Хх) ( 2 * ! —
*0
— х 2)
( * 1
— * о )
( * 1
— *
2
)
Таким образом,
C l ( х ) =
-
(X,
— Х0) (*1—
х2)
Искомый интерполяционный многочлен
Н3(х)
имеет вид
(Л'о
* l
) 3
(лг
0
—
х2)
(х — X,) (
2
хх —
* 0
— *г) \
(* — *о)
(х — х2)
+ И
,
/ (-^
i
) н-
(*1 — *о) (*! —
х2)
j
(Хх — Х„) (*] — Х2)
(* — *о)
—
( х — Х 2 )
,
( х — Хр) (х — Х
х) 2
f
,
‘
,
. .
,„
/
(*2 — *о) (*2 — * l )
!
( * 1
— * 2 )
( * 1
— А о )
7 'Ю -
(1 2 )
(13)
Согласно (5) погрешность интерполирования в случае много
члена (13) можно записать в виде
/ М —
н з (*) =
~
х<
>
) (х
х
(х ~
74)
24
где
(х0,
х2) .
Интерполяционный многочлен Эрмита можно построить путем предельного
перехода в многочленах Лагранжа и Ньютона. Поясним это на том ж е при
мере. Наряду с узлами х 0,
xi,
х
2
введем узел
х3
(отличный от х 0, х х, х 2) и по
строим по узлам *о,
* i ,
*
2
,
х3
интерполяционный многочлен Лагранжа
L
3
(х) =
( х
— *о)
( х
— *,)
( х
—
х 2)
^ +
L
(*3 — Х0) (Х3 — X,) (
х 3 — х 2 )
'
_ (* — Хр) (X —
х 2 )
( X
—
Х 3 )
+
( X
—
Хд)
(х — ха)
(х
— х3)
^ ^
(*1 — *о) (*1 —
х 2 )
(Хх —*з) ' ' 1
(*0 — *
1
) (*о — х2) (*0—*з) '
0
,
( X
— *о)
(X
— Хх) (* — *з)
-+-----------------------------/ (*
2
> •
( х 2
—
Х 0 )
(х2 —
Хх)
(х2—
*з)
(15)
Получим многочлен (13) путем предельного перехода в (15). Зафиксируем
точки х, х0,
х,, х
2
и устремим
х
3
к
х\. Тогда последние два слагаемые перейдут
в
пределе в выражение
( х — х
х) 2
(х — х2)
(*о — * i)a (*о —
х2)
/ (*о) -+
(х — х0) (х — хх)а
(х
2
— х0) (х
2
— хх)а
f ( x
2
).
(16)
Первые два слагаемые в (15) объединим следующим образом:
(х — х0) ( х — х2) /
(х — х х)
f (х3)
_
(х — х3) f (хх)
\
*з — * i
(*з — *о) (*з —
х2)
(хх — х0) (хх — х2) /
Поскольку при указанном предельном переходе величины х
3
—х х и
(х — хх) / (х3)
_
(х — х3) / (хх)
^
(*з — *о) (*з — *
2
)
(*i —
*
0
)
(*i — х2)
стремятся к нулю, можно раскрыть неопределенность вида
0
/
0
, воспользовав-
139
шись правилом Лоииталя. Дифференцируя выражение
(17) по х 3, получим
функцию
а ( х 3) ■-= ■
/(*.)
(*1 — *о)
( Х у
—
х 2)
(х — Ху) (2х
3
— х
0
— х2)
^2
/у
__„
\2
'
(Хз>
(X
3
— X
0
V (х
3
— х
2 ) 2
, г (х — *l) (*3 — Хр) (Х3 — Х2)
(Х
3
- Х
0
)
2
(Х
3
- Х
2)2
! [ХЗ>'
lim
а (х3) ■
Хг->х
1
1
(Ху — Х<у) (Ху
= 5 - [ ‘ -
(х
—
Х у )
(2Ху
—
х 0
—
х2)
(Ху
— Х
0 )
( Х у
—
х2)
+ ■
/ (*l) +
(х — Xj)
f (.Ху)
(х г
— Х0)
(X!
—
Х2)
Итак, первые два слагаемые в (15) переходят в пределе в выражение
(х
Ху\
(2ху
—
х„ — х2)
(Ху — Х0) (Ху —
Х2)
J
(Xi
—
х0) (хх — х2)
(* — *о)
( Х — Х
2 )
[ (Ху)
+
(х — х0) (х — X,) (х — X»)
+ --------- — -------- — -------- — /'
(Ху).
(Ху —
х„)
(х. — х2)
Отсюда и из (16) получаем многочлен (10).
§ 4. Интерполирование сплайнами
Интерполирование многочленом Лагранжа или Ньютона на
всем отрезке
[а, Ь]
с использованием большого числа узлов интер
поляции часто приводит к плохому приближению, что объясняется
сильным накоплением погрешностей в процессе вычислений. Кро
ме того, из-за расходимости процесса интерполяции увеличение
числа узлов не обязано приводить к повышению точности. Для того
чтобы избежать больших погрешностей, весь отрезок
[а, Ь]
разби
вают на частичные отрезки и на каждом из частичных отрезков
приближенно заменяют функцию /
(х)
многочленом невысокой сте
пени (так называемая
кусочно-полиномиальная интерполяция).
Одним из способов интерполирования на всем отрезке является
интерполирование с помощью сплайн-функций. Сплайн-функцией
или сплайном называют кусочно-полиномиальную функцию, опре
деленную на отрезке
[а, Ь]
и имеющую на этом отрезке некоторое
число непрерывных производных.
Слово «сплайн» (английское spline) означает гибкую линейку,
используемую для проведения гладких кривых через заданные точ
ки плоскости. Мы не будем придавать слову «сплайн» какого-либо
определенного технического смысла.
Преимуществом сплайнов перед обычной интерполяцией явля
ется, во-первых, их сходимость и, во-вторых, устойчивость процесса
вычислений.
В этом параграфе будет рассмотрен частный, но распространен
ный в вычислительной практике случай, когда сплайн определяется
с помощью многочленов третьей степени (кубический сплайн).
Do'stlaringiz bilan baham: |