Интерполяция многочленами
В общем виде задача интерполяции многочленами формулируется следующим образом: пусть на отрезке [a, b] таблично задана функция y = f(x) в n точках, то есть заданы значения аргумента x1, x2, ..., xn и известны соответствующие им значения функции y1, y2, ..., yn . Требуется построить степенной полином вида
Pn(x)= a1+ a2x + a3x2+ ... + anxn ,
значения которого в точках x1, x2, ..., xn совпадает со значениями табличной функции
Pn(xi)= yi = f(xi).
Такой полином всегда существует и оказывается единственным. Для вычисления значений его коэффициентов можно использовать условие равенства значений полинома и таблично заданной функции в узлах интерполяции. Это позволяет записать систему из n линейного алгебраического уравнения относительно переменных a1, a2, a3, ... anвида:
которая может быть разрешена любым из известных методов решения систем линейных алгебраических уравнений.
Использование такого подхода имеет и ряд недостатков. Во-первых, с увеличением количества узлов интерполяции n пропорционально возрастает и степень системы линейных алгебраических уравнений, а следовательно, к пропорциональному усложнению ее решения. Во-вторых с ростом n возрастает вероятность «биения» функции между узлами интерполяции за счет членов полинома с высшими степенями.
Ниже на рис.2 представлен фрагмент рабочей книги Excel с реализацией интерполяции многочленом
.
Многочлен Лагранжа (J.L.Lagrange, 1795)
Представляет собой случай полиномиального представления приближающей функции, когда она ищется в виде линейной комбинации базисных функций jk(x), которые должны быть определены для всего отрезка интерполяции [x1, xn], линейно независимы, и их количество должно быть равно числу узлов таблично заданной функции
.
Коэффициенты a1, a2, ..., an определяются исходя из условий равенства значений приближающей и исходной функций при табличных значениях аргумента, что сводит задачу к системе n линейных алгебраических уравнений относительно них, а в качестве функций jk(x) используются полиномы (n–1) степени
,
которые для пяти узловых точек записываются в виде
,
,
,
,
.
Для каждого полинома характерно то, что для всех значений xi в узловых точках он принимает нулевые значения, кроме k-ой, где его значение равно единице.
Графики этих полиномов представлены на рис.3. При таком выборе базисных функций коэффициенты приближающей функции оказываются ординатами таблично заданной функции, а сама она приобретает харак- |
терный для многочлена Лагранжа вид:
.
Процесс построения интерполирующего многочлена Лагранжа для пяти узловых точек показан на рис.5.
Рассмотрим работу метода на приведенном выше примере. Сначала строятся четыре базовых полинома:
,
,
,
.
Они позволяют записать интерполирующий многочлен Лагранжа в виде
Для аргумента x = 1.6 многочлен Лагранжа даёт
Ниже на рис.5 представлен фрагмент рабочей книги Excel с реализацией интерполяции с помощью многочлена Лагранжа.
Рис.5.
Как видно из рисунка для аргумента x = 1.6 многочлен Лагранжа дал значение 0.528.
Для контроля правильности вычислений многочлена Лагранжа полезно строить графики базовых полиномов. Для рассматриваемого примера они приведены на рис.6.
Рис.6.
Дата добавления: 2022-02-05; просмотров: 276;