В данном случае в качестве интерполяционного многочлена используется квадратный трехчлен на отрезке [xi–1, xi+1] Î [а, b] в виде
(5.6)
.
Для определения коэффициентов ai, bi, ci составляется система из трех уравнений согласно условиям (5.3), а именно:
(5.7)
Алгоритм вычисления аналогичен предыдущему, только вместо соотношений (5.5) используется соотношение (5.6) с учетом решения (5.7). Очевидно, что для xT Î [x0, xn] используются три ближайшие точки.
Графическая иллюстрация метода представлена на рис. 5.3.
Рис. 5.3
Теоретическая погрешность вне узлов интерполяции:
R(x) = (x – x0) (x – x1) (x – x2)
В данном случае интерполяционный многочлен ищется в виде (5.2) для всего интервала области определения xT, т. е. для [x0, xn], в виде
. (5.8)
Для получения коэффициентов ai используется система уравнений (5.3)
(5.9)
Известно, что если xi ¹ xj при i ¹ j система имеет единственное решение. Для решения (5.9) можно использовать методы, рассмотренные ранее для СЛАУ. Прямое решение системы (5.9) и получение F(х) в виде (5.8) выгодно, когда производится много вычислений по одной и той же таблице. Для разового вычисления y = f(xT) предложены другие алгоритмы, при которых не нужно находить параметры вектора , а интерполяционные многочлены записываются через значения таблиц {xi, yi}, . Это интерполяционные многочлены Лагранжа и Ньютона.
Формула Лагранжа для произвольной системы интерполяционных узлов. Многочлен Лагранжа ищется в виде линейной комбинации из значений f(х) в узлах интерполяции и каких-то специально построенных из системы узлов интерполяции многочленов n-й степени в виде
. (5.10)
Итак, сначала строится вспомогательный многочлен (n + 1)-й степени:
(5.11)
и многочлен n-й степени
. (5.12)
Очевидно, что многочлен (5.11) обращается в ноль в узлах интерполяции xi, т. е. w(xi) = 0, i = , а многочлен (5.12) ji(x) обращается в ноль во всех узлах, кроме узла xi, т. е.
(5.13)
Из равенств (5.12) и (5.13) следует, что построенный новый многочлен
принимает нулевое значение во всех узлах, кроме j-го, а в узле xj его значение будет равно единице, т. е.
.
Тогда j-й многочлен из (5.10) lj(xi)×yj будет принимать нулевые значения во всех узлах, кроме xj, и значение yj в узле xj, т. е.
.
Согласно (5.10) составим многочлен
,
где .
В более свернутой форме
. (5.14)
Погрешность (5.14)
, где x Î [a, b].
В отличие от полинома (5.8) здесь не требуется предварительного определения всех коэффициентов. Однако для каждого xТ нужно рассчитывать полином Лагранжа по формулам (5.14). Поэтому объем вычислений фактически не меньше, чем при выполнении расчета (5.9).
На практике, если необходим повторный расчет при различных xТ в большем количестве, то схема (5.8) будет предпочтительнее.
Полином Лагранжа широко используется при реализации других численных методов. Следует подчеркнуть, что при n = 1 – это линейная, а при n = 2 – квадратичная интерполяция.
Полином Лагранжа на системе равноотстоящих интерполяционных узлов. Величина h = xi+1 – xi = const. Тогда произвольный узел xi = x0 + i×h, . Введем переменную t = (x – x0) / h. Тогда
x – xi= x0 + th – x0 – ih = (t – i)h. (5.15)
Подставив разности (5.15) в равенство (5.11), получим