ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 17.04.2024
Просмотров: 144
Скачиваний: 0
a3 = +3 y30 ;
3!h
В общем случае выражение для аk будет иметь вид:
a |
= |
+k y0 |
; |
(4.14) |
k |
|
k!hk |
|
|
Подставим теперь (4.14) в выражение для много-
члена (4.13):
P (x) = y |
+ |
+y0 |
(x − x ) + |
+2 y0 |
(x − x |
)(x − x ) +... |
|||
n |
0 |
|
h |
0 |
|
|
2!h2 |
0 |
1 |
++n y0 |
(x |
− x ) ... (x − x |
n−1 |
). |
|
|
|||
n!hn |
|
|
0 |
|
|
|
|
|
Практически эта формула применяется в несколь-
ко ином виде. |
|
Положим |
|
x − x0 |
=t , то есть |
||||
|
|
h |
|||||||
x = x0 + ht . Тогда: |
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
||
|
x − x1 |
= |
x − x0 −h |
=t −1, |
|
||||
|
h |
|
h |
|
|||||
|
|
|
|
|
|
|
|
||
|
x − x2 |
|
= |
x − x0 −2h |
=t −2 |
||||
|
h |
|
|
||||||
|
|
|
|
h |
|
|
|
|
и так далее. Окончательно имеем:
Имеются различные формы записи интерполяционного многочлена. Широко распространенной формой записи является многочлен Лагранжа
Ln(x) = ∑yi ∏ x − x j = |
|
|||||
|
n |
|
|
|
|
|
|
i=1 |
j≠i xi − x j |
|
|||
n |
(x |
− x0 )...(x − xi−1 )(x − xi+1 )...(x − xn ) |
|
|||
= ∑yi |
. (4.9) |
|||||
(xi − x0 )...(xi − xi−1 )(xi − xi+1 )...(xi − xn ) |
||||||
i=1 |
|
В частности, для линейной и квадратичной интерполяции по Лагранжу получим следующие интерполяционные многочлены:
L1(x) = y0 |
|
(x − x1 ) |
|
|
|
|
|
||||||||
(x |
0 |
− x ) |
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
L2(x) = y0 |
|
(x − x1 )(x − x2 ) |
|
||||||||||||
(x |
0 |
− x )(x |
0 |
− x |
2 |
) |
|||||||||
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|||
+y2 |
(x − x0 )(x − x1 ) |
. |
|
|
|
||||||||||
|
|
|
|
||||||||||||
|
(x |
2 |
− x |
0 |
)(x |
2 |
− x ) |
|
|
|
|
||||
|
|
|
|
|
|
1 |
|
|
|
|
|
+ y1 |
(x − x0 )(x − x2 ) |
+ |
||||||
|
||||||||
|
(x |
− x |
0 |
)(x |
− x |
2 |
) |
|
|
1 |
|
1 |
|
|
|
Пример 4.3.
Построим интерполяционный многочлен Лагранжа по следующим данным:
x |
0 |
2 |
3 |
5 |
y |
1 |
3 |
2 |
5 |
Степень многочлена Лагранжа для n +1 узла равна n. Для нашего примера многочлен Лагранжа имеет третью степень. В соответствии с (4.9)
76 |
69 |
L3(x) = 1 |
(x −2)(x −3)(x −5) |
+3 |
x(x −3)(x −5) |
+ |
|||||||||
(0 −2)(0 −3)(0 −5) |
2(2 −3)(2 −5) |
||||||||||||
|
|
|
|
||||||||||
+ 2 |
x(x −2)(x −5) |
|
+ 5 |
x(x −2)(x −3) |
= |
|
|||||||
3(3 −2)(3 −5) |
|
|
|
||||||||||
|
|
|
5(5 −2)(5 −3) |
|
|||||||||
62 |
13 |
2 |
3 |
3 |
|
|
|
|
|||||
= 1 + 15 x – 6 |
x |
+ |
|
x . |
|
|
|
|
|||||
10 |
|
|
|
|
Пример 4.4.
Рассмотрим пример использования интерполяционного многочлена Лагранжа для вычисления значения заданной функции в промежуточной точке. Эта задача возникает, например, когда заданы табличные значения функции с крупным шагом, а требуется составить таблицу значений с маленьким шагом.
Для функции y = sinx известны следующие данные.
x |
0 |
π/6 |
π/3 |
π/2 |
y |
0 |
½ |
3 2 |
1 |
Вычислим y (0.25).
Найдем многочлен Лагранжа третьей степе-
ни:
L3(x) = 0 (x −π 6)(x −π 3)(x −π 2) + (0 −π 6)(0 −π 3)(0 −π 6)
70
Пусть для функции, заданной таблицей с постоянным шагом, составлена таблица конечных разностей 4.2. Будем искать интерполяционный многочлен в виде:
Pn (x) = a0 + a1(x − x0 ) + a2 (x − x0 )(x − x1) +...(4.13)
Это многочлен n – й степени. Значения коэффициентов a0, a1, ... an найдем из условия совпадения значений исходной функции и многочлена в узлах. Полагая х = х0, из (4.13) находим y0 = Pn (x0) = а0, откуда а0 = y0. Далее, придавая х значения x1 и x2, последовательно получаем:
y1 = Pn (x1) = a0 + a1(x1 − x0 )
откуда
a1 = +hy0 ;
y2 = Pn (x2 ) = a0 + a1(x2 − x0 ) + a2 (x2 − x0 )(x2 − x1),
то есть
y2 −+2y0 − y0 = 2h2a2 , или y2 −2y1 + y0 = 2h2a2 ,
откуда
a2 = +2 y0 ; 2h2
Далее, проведя аналогичные выкладки, можно получить
75
+2 yi =+yi+1 −+yi (i = 0, 1, 2, ...)
Продолжая этот процесс, можно по заданной таблице функции составить таблицу конечных разностей (см. таблицу 4.2). Конечные разности любого порядка могут быть представлены через значения функции. Действительно, для разностей первого порядка это следует из определения. Для разностей второго порядка имеем:
+2 yi =+yi+1 −+yi =(yi+2 −yi+1) −(yi+1 −yi ) =yi+2 −2yi+1 +yi.
Аналогично для разностей третьего порядка:
+3 yi =+2 yi+1 −+2 yi =(yi+3 −2yi+2 + yi+1) −(yi+2 −2yi+1 + yi ) =
=yi+3 −3yi+2 +3yi+1 − yi
итак далее.
Методом математической индукции можно доказать, что
+k yi = yi+k |
−k yi+k−1 |
+ |
k(k −1) |
yi+k−2 −...+(−1)k yi.(4.12) |
||||||||
|
|
|||||||||||
|
|
|
|
|
|
|
2! |
|
|
Таблица 4.2. |
||
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
||
|
x |
|
y |
|
+yi |
|
+2yi |
+3yi |
… |
|||
|
x0 |
|
y0 |
|
+y0 |
|
+2y0 |
+3y0 |
|
|
||
|
x1 |
|
y1 |
|
+y1 |
|
+2y1 |
+3y1 |
|
|
||
|
x2 |
|
y2 |
|
+y2 |
|
+2y2 |
… |
|
|
||
|
x3 |
|
y3 |
|
+y3 |
|
… |
|
|
|
||
|
x4 |
|
y4 |
|
… |
|
|
|
|
|
|
|
|
… |
|
… |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
74 |
|
|
|
|
|
1 |
|
|
|
|
|
(x −0)(x −π |
|
)(x −π |
|
) |
|
|
|
|
|
|
||||||||||||||
+ |
|
|
|
|
|
|
|
|
|
3 |
|
|
|
|
2 |
|
|
|
+ |
|
||||||||||||
(π |
|
|
−0)(π |
|
|
−π |
|
)(π |
|
|
−π |
|
|
|
|
|||||||||||||||||
2 |
|
6 |
6 |
|
6 |
2 |
) |
|
||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
3 |
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
3 |
|
|
|
|
|
(x −0)(x −π |
|
|
)(x −π |
|
) |
|
|
|
|
|
|||||||||||||||
+ |
|
|
|
|
|
|
|
6 |
|
|
|
|
2 |
|
|
|
|
+ |
||||||||||||||
2 |
(π |
3 |
−0)(π |
3 |
−π |
|
)(π |
3 |
−π |
2 |
) |
|
||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
6 |
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
(x −0)(x −π |
|
)(x −π |
|
|
) |
|
|
|
|
|
|
|
|||||||||||||
+1 |
|
|
|
|
|
|
|
|
|
6 |
|
|
|
|
|
3 |
|
|
. |
|
|
|
||||||||||
|
π |
2 |
|
|
|
π |
− |
π |
|
|
π |
2 |
|
π |
3) |
|
|
|
||||||||||||||
|
|
|
|
( |
|
|
−0)( 2 |
|
6)( |
|
|
− |
|
|
|
|
|
|
|
При x = 0.25 получим y(0.25) = sin 0.25 ≈ 0.249.
Погрешность интерполяции. Пусть интерполяци-
онный многочлен Лагранжа построен для известной функции f (x). Необходимо выяснить, насколько этот многочлен близок к функции в точках отрезка [a, b], отличных от узлов. Погрешность интерполяции равна | f(x) – Pn(x)|. Оценку погрешности можно получить на основании следующей теоремы.
Теорема 4.2. Пусть функция f(x) дифференцируема n +1 раз на отрезке [a, b], содержащем узлы интерполяции xi [a, b], i = 0, 1, … , n. Тогда для погрешности интерполяции в точке x [a, b] справедлива оценка:
|
|
| f(x) – Ln(x)|≤ |
M n+1 |
|
|ωn+1(x)|, (4.10) |
|
|
(n +1)! |
|||
|
Mn+1 |
= max | f(n+1)(x)|, |
|
||
где |
|
|
|
||
|
|
[a,b] |
|
|
|
|
|
71 |
|
|
|
ωn+1(x) = (x – x0)(x – x1)…. (x – xn).
Для максимальной погрешности интерполяции на всем отрезке [a, b] справедлива оценка:
max | f(x) – Ln(x)| ≤ |
M n+1 |
|
max |ωn(x)| (4.11) |
|
(n +1)! |
||||
[a,b] |
[a,b] |
Пример 4.5.
Оценим погрешность приближения функции f(x) = x в точке x = 116 и на всем отрезке [a, b], где a = 100, b = 144, с помощью интерполяционного много члена Лагранжа L2(x) второй степени, построенного с узлами x0 = 100, x2 = 144.
Найдем первую, вторую и третью производные функции f(x):
f '(x)= 12 x – 1/2, |
|
|
|
|
|
f "(x)= – 14 x –3/2, |
|
|
|
|
|
f '''(x)= 83 x –5/2. |
3 |
|
|
3 |
|
M3 = max | f '''(x)| = |
100 –5/2 |
= |
10 –5. |
||
[a,b] |
8 |
|
|
8 |
|
В соответствии с (4.9) получим оценку погрешности в точке x = 116:
| 116 – L2(116)| ≤ |
1 |
|
|(116 – 100)(116 – 121)× |
|
3! |
||||
|
|
× (116 – 144)| = 161 10 –5 16 5 28 = 1.4 10 – 3. 72
Оценим погрешность приближения функции f(x) = x на всем отрезке в соответствии с (4.11):
max[ ] | x – L2(x)| ≤
a,b
≤ 10−5 max |(x – 100)(x – 121)(x –144)| ≈ 2.5 10–3.
16 [a,b]
4.4. Интерполяционные многочлены Ньютона для равноотстоящих узлов
Часто интерполирование ведется для функций, заданных таблицами с равноотстоящими значениями аргумента. В этом случае шаг таблицы h = xi+1 − xi (i = 0, 1, 2, ...) является величиной по-
стоянной. Для таких таблиц построение интерполяционных формул (как, впрочем, и вычисление по этим формулам) заметно упрощается.
Таблица 4.1.
x |
x0 |
x1 |
... |
xn |
f(x) |
y0 |
y1 |
... |
yn |
Пусть функция задана таблицей вида (4.1) с постоянным шагом. Разности между значениями функции в соседних узлах интерполяции называ-
ются конечными разностями первого порядка:
+yi = yi+1 − yi (i = 0, 1, 2, ...)
Из конечных разностей первого порядка образу-
ются конечные разности второго порядка:
73