Інтерполяція Ерміта

Матеріал з testwiki
Перейти до навігації Перейти до пошуку

Інтерполяція Ермітаполіноміальна інтерполяція запропонована Шарлем Ермітом, узагальнює інтерполяцію Лагранжа.

Інтерполяція Ерміта, як і інтерполяція Ньютона використовує розділені різниці.

Інтерполяція Ерміта будує многочлен мінімально-можливого степеня, що співпадає із заданою функцією в Шаблон:Math точках, а також співпадіння Шаблон:Math перших похідних в цих точках[1]. Тобто, вхідними даними є Шаблон:Math значень:

(x0,y0),(x1,y1),,(xn,yn),(x0,y0),(x1,y1),,(xn,yn),(x0,y0(m)),(x1,y1(m)),,(xn,yn(m)).

Отриманий многочлен буде мати степінь не більше Шаблон:Math. Також можна задавати меншу (різну) кількість відомих похідних в кожній точці.

Метод

В послідовності x0,x1,x2,,xn, продублюємо кожне значення Шаблон:Math разів і назвемо її

z0,z1,,z(n+1)(m+1)1

і будемо рахувати розділені різниці для них. Хоча деякі з них будуть невизначенностями

zi=zi+1f[zi,zi+1]=f(zi+1)f(zi)zi+1zi=00.

Ці невизначеності замінимо на f(zi).

Різниці вищих порядків (j > 2) зі співпадаючими точками замінимо на похідні вищих порядків за правилом:

f(j)(xi)j!.

Приклад

Наблизимо функцію f(x)=x8+1. Обчислимо значення та 2 перші похідні для x{1,0,1}, отримаємо:

Шаблон:Math Шаблон:Math Шаблон:Math Шаблон:Math
−1 2 −8 56
0 1 0 0
1 2 8 56

Потроїмо точки {zi}={1,1,1,0,0,0,1,1,1}. Обчислимо таблицю розділених різниць: z0=1f[z0]=2f(z0)1=8z1=1f[z1]=2f(z1)2=28f(z1)1=8f[z3,z2,z1,z0]=21z2=1f[z2]=2f[z3,z2,z1]=715f[z3,z2]=1f[z4,z3,z2,z1]=610z3=0f[z3]=1f[z4,z3,z2]=154f(z3)1=0f[z5,z4,z3,z2]=121z4=0f[z4]=1f(z4)2=0121f(z4)1=0f[z6,z5,z4,z3]=121z5=0f[z5]=1f[z6,z5,z4]=154f[z6,z5]=1f[z7,z6,z5,z4]=610z6=1f[z6]=2f[z7,z6,z5]=715f(z6)1=8f[z8,z7,z6,z5]=21z7=1f[z7]=2f(z7)2=28f(z7)1=8z8=1f[z8]=2

і побудуємо многочлен

P(x)=28(x+1)+28(x+1)221(x+1)3+15x(x+1)310x2(x+1)3+4x3(x+1)31x3(x+1)3(x1)+x3(x+1)3(x1)2=x8+1.

взявши коефіцієнти з діагоналі (зверху), домноживши їх на i=0k1(xzi), як і в многочленах Ньютона.

Див. також

Примітки

Шаблон:Reflist