Вычисление производной на основе интерполяционного многочлена Лагранжа

 

Вычисление производной на основе интерполяционного многочлена Лагранжа применяется, когда аналитическое выражение функции y=f(x) не известно, а функция y=f(x) задана таблично.

Пусть функция y=f(x) определена на отрезке и в точках {xi} (i=0,1,2,…,n) этого отрезка принимает значения yi=f(xi).

Разность между соседними значениями аргумента xi постоянна и является шагом h=xixi-1 (i=1, …,n) разбиения отрезка на n частей, прием a=x0 и b=xn.

Найдем аппроксимации производной первого порядка с помощью значений функций yi в узловых точках xi.

Для того чтобы выразить значения производной через значения функции yi в узлах интерполяции xi, построим интерполяционный многочлен Лагранжа Lm(x) степени m, удовлетворяющий условиям

Lm(x)= f(xk)= yk (k=i, i+1, …, i+m), i+m£n

Многочлен Лагранжа Lm(x) интерполирует функцию f(x) на отрезке [xi, xi+m]. Дифференцируя многочлен Lm(x), получаем значения производной в точках {xi} (k=i, i+1, …, i+m).

Если m=2, то график интерполяционного многочлена Лагранжа L2(x) – парабола, проходящая через три точки (xi, yi), (xi+1, yi+1) и (xi+2, yi+2).

Вычислим первую производную многочлена L2(x) на отрезке [xi, xi+2]:

Производная многочлена L2(x) в точках xi, xi+1, xi+2 является приближением производной функции f(x) в этих точках:

(1)

Погрешности при вычислении производных в точках xi, xi+1, xi+2 определяются следующим образом:

(2)

Формулы (2) показывают, что погрешности аппроксимации первой производной с помощью формул (1) имеют один и тот же порядок O(h2), таким образом, можно вычислять производную на отрезке [a,b] в точках {xi} (i=0,1,2,…,n) при n³2 по формулам:

(3)

Полагаем, что значения производных и в точках х, близких к точкам xi, равны соответствующим значениям и .

Будем считать точку близкой к xi, если она принадлежит промежутку . Точки х, близкие к точкам xi, имеют одно и то же значение параметра

В зависимости от i при n³3 используем одну из формул (5).

 

Программа вычисления производной первого порядка на основе интерполяционного многочлена Лагранжа: