
Интерполирование функции Конечные разности и их свойства.
х х1 х2…хn
y y1 y2…yn (4.1)
Пусть
Подробнее:
Определение. Выражение называют первой конечной разностью.
Если y=f(x):
(4.2)
Свойства конечных разностей
1. Разностный оператор линеен:
(4.3)
Пример.
2.
Таблица конечных разностей
х |
у |
Dу |
D2у |
D3у |
х0 х1 х2 х3 |
у0 у1 у2 у3 |
Dу0 Dу1 Dу2 |
D2у0 D2у1 |
D3у0 |
Связь конечных разностей и производных
Пусть y=f(x) непрерывна и имеет непрерывные производные до n-го порядка включительно f(n)(x) на отрезке [x, x+n∆x], тогда справедлива формула:
Постановка задачи интерполирования функции
Пусть на отрезке [a, b] заданы точки х0, х1,…,хn и известны значения функции f(x) в этих точках:
f(x0)=y0, f(x1)=y1,…, f(xn)=yn.
Требуется построить функцию F(x), принадлежащую известному классу R и принимающую в узлах интерполяции значения yi:
F(xi)=yi, i=0, 1,…,n. (4.1)
Функция f(x) называется интерполируемой, а F(x) – интерполирующей. Точки х0, х1,…,хn будем называть узлами интерполяции. Другими словами, задача интерполяции заключается в подборе графической или аналитической функции F(x) для таблично заданной f(x). Причем требуется, чтобы интерполируемая f(x) и интерполирующая функция F(x) совпадали в узлах интерполяции.
В приведенной постановке задача не корректна, а именно, имеет бесчисленное множество решений. Этот факт наглядно продемонстрирован на рис.(см.лекции)
На рис. приведены две различные кривые F1(x) и F2(x), удовлетворяющие условиям (4.1), т.е. являющиеся решением задачи интерполяции. Очевидно, что таких кривых можно начертить бесчисленное множество.Для некоторых классов функций R, например, классов алгебраических полиномов степени n - Pn(x), как будет показано ниже, задача интерполяции имеет единственное решение.
Далее будем различать два аспекта задачи интерполяции функций.
1. Пусть хp – точка, в которой вычисляется интерполирующее значение. Если точка хр принадлежит отрезку [x0, xn]: хpÎ[x0, xn], то задачу интерполяции называют интерполяцией в узком смысле.
2. Если точка хp не принадлежит отрезку [x0, xn], т.е. хpÏ[x0, xn], то задача называется экстраполяцией.
Эти аспекты в задаче интерполяции функций различаются в связи с тем, что экстраполяция всегда существенно менее точна, чем интерполяция в узком смысле. Этот важный момент более подробно будет рассмотрен ниже.
Первая интерполяционная формула Ньютона
Пусть для функции y=f(x) заданы значения yi=f(xi) для равноотстоящихзначений независимой переменной: хi=хо+ih (i= 0,1,2,...,п), где h - шаг интерполяции. Требуется подобрать полином Рп (х) степени не выше п, принимающий в точках xi значения yi:
Pn(xi)=yi, (i = 0, 1,...,n). (4.2)
Следуя Ньютону, будем искать полином Рп(х) в виде:
Рп(х) = ао+а1(х - х0) + а2 (х-х0)(х-х1) +а3(х - х0)(х – х1)(х - х2) +...+ап(х - хо)(х – х1)...(х - хп-1). (4.3)
Наша задача состоит в определении коэффициентов аi (i = 0, 1, 2, ...,n) полинома Рп(х). Полагая х=х0 в выражениях (4.2) и (4.3), получим:
Рп (х)=у0=а0.
Чтобы найти коэффициент a1, положим в выражениях (4.2) и (4.3) х=х1, получим: Рп (х1)=Dу0=а1h
Откуда (4.4)
Для определения коэффициента а2 аналогично подставляем х=х2 в (4.2) и (4.3), тогда
Последовательно продолжая этот процесс, обнаружим что (i=0, 1, 2,…,n), где
положено 0!=1.
Подставляя найденные значения коэффициентов аi (4.4) в выражение (4.3), получим интерполяционный полином Ньютона (ИПН):
(4.5)
Формула (4.5) потенциально содержит большие погрешности, т.к. все члены правой части кроме первого содержат в знаменателе выражение hk. При малом значении h это приводит к делению на очень маленькие числа. А такие операции приводят к большой потере точности.
Уменьшить вычислительную погрешность формулы (4.5) позволяет линейное преобразование t= , тогда
и т.д.
С учетом рассмотренного преобразования формула (4.5) принимает вид:
(4.6)
Это и есть окончательный вид первой интерполяционной формулы Ньютона.
Пример. Конечные разности для таблично заданной функции приведены в таблице
Таблица 3
х |
у |
Dу |
D2у |
D3у |
D4у |
|||
1 |
2 |
3 |
4 |
5 |
6 |
|||
1,2 |
0,0792 |
0,0347 |
-0,0025 |
-0,0003 |
-0,0001 |
|||
1,3 |
0,1139 |
0,0322 |
-0,0022 |
-0,0002 |
0,0001 |
|||
1,4 |
0,1461 |
0,0300 |
-0,0020 |
-0,0003 |
|
|||
1,5 |
0,1761 |
0,0280 |
-0,0017 |
|
|
|||
1,6 |
0,2041 |
0,0263 |
|
|
|
|||
1,7 |
0,2304 |
|
|
|
|
Для функции заданной таблично в столбцах (1) и (2) табл. 3 требуетсявычислить значение при х=1,25. Так как конечные разности D4уi практическиравны нулю, их незначительные по абсолютной величине значения обусловлены ошибками округления, поэтому имеет смысл строить интерполирующий многочлен третьего порядка.
Вначале вычислим
Тогда
f(1,25)=0,0792+0,5×0,0347+(-0,0025)×0,5×(-0,5)/2+(-0,0003)×(-0,25)×(-1,5)/6=
=0,09686.
Приведенные в таблице 3 значения (хi, уi), i=1, 2,… есть значения функции lg(х), даны они с четырьмя верными знаками после запятой. Ее значение по таблице lg(1,25)=0,0969, причем все значащие цифры верны. Отсюда следует, что интерполирующее значение вычислено тоже с четырьмя верными знаками после запятой.
Замечание 1. Заметим, что при h→ 0 формула (4.5) превращается в ряд Тейлора для функции у.
В самом деле,
Кроме того, очевидно,
Отсюда при h® 0 формула (4.5) принимает вид полинома Тейлора:
Замечание 2. Рассмотрим частные случаи формулы (4.6). При n=1 (4.6) принимает вид: Р1(х)=у0+у0t, т. е. линейной интерполяционной формулы, а при n=2 P2(x)=y0+у0 t+2у0 - квадратичной или параболической формулы интерполяции.