Пусть заданы некоторые попарно различные точки
x
0
,
x
1
,
…
,
x
n
{\displaystyle x_{0},\,x_{1},\,\ldots ,\,x_{n}}
, называемые также узлами интерполяции, и известны значения
f
(
x
0
)
,
f
(
x
1
)
,
…
,
f
(
x
n
)
{\displaystyle f(x_{0}),\,f(x_{1}),\,\ldots ,\,f(x_{n})}
некоторой функции
f
{\displaystyle f}
в этих точках.
Случай неравноотстоящих узлов
править
Если все расстояния между соседними узлами различны, то многочлен Ньютона строится по формуле[ 1]
P
n
(
x
)
=
f
(
x
0
)
+
(
x
−
x
0
)
f
(
x
0
;
x
1
)
+
(
x
−
x
0
)
(
x
−
x
1
)
f
(
x
0
;
x
1
;
x
2
)
+
…
+
(
x
−
x
0
)
…
(
x
−
x
n
−
1
)
f
(
x
0
;
…
;
x
n
)
,
{\displaystyle P_{n}(x)=f(x_{0})+(x-x_{0})f(x_{0};x_{1})+(x-x_{0})(x-x_{1})f(x_{0};x_{1};x_{2})+\ldots +(x-x_{0})\ldots (x-x_{n-1})f(x_{0};\ldots ;x_{n}),}
где
f
(
x
0
;
…
;
x
n
)
{\displaystyle f(x_{0};\ldots ;x_{n})}
— разделённая разность порядка
n
{\displaystyle n}
.
Случай равноотстоящих узлов
править
Если соседние узлы находятся друг от друга на некотором фиксированном расстоянии
h
{\displaystyle h}
, то есть
x
i
=
x
0
+
i
h
{\displaystyle x_{i}=x_{0}+ih}
,
i
=
0
,
…
,
n
{\displaystyle i=0,\ldots ,n}
, то многочлен Ньютона можно строить либо начиная с
x
0
{\displaystyle x_{0}}
(в таком случае говорят об «интерполировании вперёд»), либо с
x
n
{\displaystyle x_{n}}
(«интерполирование назад»).
В первом случае формула для многочлена Ньютона принимает вид[ 2]
P
n
(
x
)
=
y
0
+
q
Δ
y
0
+
q
(
q
−
1
)
2
!
Δ
2
y
0
+
…
+
q
(
q
−
1
)
…
(
q
−
n
+
1
)
n
!
Δ
n
y
0
,
{\displaystyle P_{n}(x)=y_{0}+q\Delta y_{0}+{\frac {q(q-1)}{2!}}\Delta ^{2}y_{0}+\ldots +{\frac {q(q-1)\ldots (q-n+1)}{n!}}\Delta ^{n}y_{0},}
где
q
=
(
x
−
x
0
)
/
h
,
y
i
=
f
(
x
i
)
{\displaystyle q=(x-x_{0})/h,\;y_{i}=f(x_{i})}
, а выражения вида
Δ
k
y
0
{\displaystyle \Delta ^{k}y_{0}}
— конечные разности .
Во втором случае формула принимает вид[ 3]
P
n
(
x
)
=
y
n
+
q
Δ
y
n
−
1
+
q
(
q
+
1
)
2
!
Δ
2
y
n
−
2
+
…
+
q
(
q
+
1
)
…
(
q
+
n
−
1
)
n
!
Δ
n
y
0
,
{\displaystyle P_{n}(x)=y_{n}+q\Delta y_{n-1}+{\frac {q(q+1)}{2!}}\Delta ^{2}y_{n-2}+\ldots +{\frac {q(q+1)\ldots (q+n-1)}{n!}}\Delta ^{n}y_{0},}
где
q
=
(
x
−
x
n
)
/
h
{\displaystyle q=(x-x_{n})/h}
.
При
h
=
1
{\displaystyle h=1}
справедлива формула
P
n
(
x
)
=
∑
m
=
0
n
C
x
−
x
0
m
∑
k
=
0
m
(
−
1
)
m
−
k
C
m
k
f
(
k
)
{\displaystyle P_{n}(x)=\sum _{m=0}^{n}C_{x-x_{0}}^{m}\sum _{k=0}^{m}(-1)^{m-k}\,C_{m}^{k}\,f(k)}
где
C
x
m
{\displaystyle C_{x}^{m}}
— обобщённые на область действительных чисел биномиальные коэффициенты .
Многочлен Ньютона представляет собой одну из форм записи многочлена Лагранжа , поэтому остаточные члены этих формул совпадают[ 4] . Однако остаточный член
R
n
(
x
)
=
f
(
x
)
−
P
n
(
x
)
{\displaystyle R_{n}(x)=f(x)-P_{n}(x)}
формулы Ньютона можно записать в другой форме:
для случая неравноотстоящих узлов[ 4] :
R
n
(
x
)
=
(
x
−
x
0
)
(
x
−
x
1
)
…
(
x
−
x
n
)
f
(
x
0
;
…
;
x
n
)
.
{\displaystyle R_{n}(x)=(x-x_{0})(x-x_{1})\ldots (x-x_{n})f(x_{0};\ldots ;x_{n}).}
Если функция
f
{\displaystyle f}
имеет производную порядка
n
+
1
{\displaystyle n+1}
, то
f
(
x
0
;
…
;
x
n
)
=
f
(
n
+
1
)
(
ξ
)
(
n
+
1
)
!
,
{\displaystyle f(x_{0};\ldots ;x_{n})={\frac {f^{(n+1)}(\xi )}{(n+1)!}},}
где
ξ
{\displaystyle \xi }
— некоторая точка, принадлежащая наименьшему промежутку, содержащему все узлы интерполяции.
для случая равноотстоящих узлов:
для интерполирования вперёд[ 5] :
R
n
=
h
n
+
1
f
(
n
+
1
)
(
ξ
)
(
n
+
1
)
!
q
(
q
−
1
)
(
q
−
2
)
…
(
q
−
n
)
.
{\displaystyle R_{n}={\frac {h^{n+1}f^{(n+1)}(\xi )}{(n+1)!}}q(q-1)(q-2)\ldots (q-n).}
для интерполирования назад[ 6] :
R
n
=
h
n
+
1
f
(
n
+
1
)
(
ξ
)
(
n
+
1
)
!
q
(
q
+
1
)
(
q
+
2
)
…
(
q
+
n
)
.
{\displaystyle R_{n}={\frac {h^{n+1}f^{(n+1)}(\xi )}{(n+1)!}}q(q+1)(q+2)\ldots (q+n).}