Перша Інтерполяційна Формула Ньютона: Побудова Полінома та Приклади

Перша інтерполяційна формула Ньютона дає змогу наближено обчислювати значення функції за табличними даними, заданими в рівновіддалених вузлах. У статті з’ясуємо, як сформувати таблицю прямих скінченних різниць, побудувати інтерполяційний поліном і перейти до зручного для обчислень запису. Покрокові приклади допоможуть зрозуміти застосування формули на практиці.

Перша Інтерполяційна Формула Ньютона: Постановка Інтерполяційної Задачі

Нехай для функції \( y=f(x) \) відомі значення

\[
y_i=f(x_i), \qquad i=0,1,2,\dots,n,
\]

задані в рівновіддалених вузлах інтерполяції

\[
x_i=x_0+i\cdot h,
\]

де \( h\neq 0 \) — сталий крок між сусідніми вузлами.

Для \( n+1 \) різних вузлів існує єдиний поліном \( P_n(x) \), степінь якого не перевищує \( n \) і який задовольняє умови інтерполяції

\[
P_n(x_i)=y_i, \qquad i=0,1,2,\dots,n.
\]

У вузлах інтерполяції значення полінома точно збігаються із заданими значеннями функції. В інших точках поліном використовують для наближеного обчислення її значень.

Інтерполяційний поліном Ньютона будемо шукати у вигляді

\[
P_n(x)=a_0+a_1\cdot(x-x_0)+a_2\cdot(x-x_0)\cdot(x-x_1)+\dots+a_n\cdot(x-x_0)\cdot(x-x_1)\cdot\dots\cdot(x-x_{n-1}),
\]

де \( a_0,a_1,\dots,a_n \) — невідомі коефіцієнти.

Кожний наступний доданок містить ще один множник. Така структура дає змогу визначати коефіцієнти послідовно, починаючи з \( a_0 \).

Для скорочення запису введемо позначення

\[
\begin{gathered}
(x-x_0)^{[0]}=1,\\[4pt]
\qquad
(x-x_0)^{[k]}=(x-x_0)\cdot(x-x_1)\cdot\dots\cdot(x-x_{k-1}), \qquad k\geq 1.
\end{gathered}
\]

Такий послідовний добуток називають узагальненим степенем. Використовуючи це позначення, поліном можна записати компактніше:

\[
P_n(x)=a_0+a_1\cdot(x-x_0)^{[1]}+a_2\cdot(x-x_0)^{[2]}+\dots+a_n\cdot(x-x_0)^{[n]}.
\]

Узагальнений степінь не слід плутати зі звичайним. Наприклад,

\[
(x-x_0)^{[2]}=(x-x_0)\cdot(x-x_1),
\]

тоді як

\[
(x-x_0)^2=(x-x_0)\cdot(x-x_0).
\]

Отже, ці вирази мають різну структуру і, як правило, різні значення.

Прямі Скінченні Різниці: Формування Різницевої Таблиці

Оскільки вузли інтерполяції розташовані з однаковим кроком, коефіцієнти полінома зручно виражати через прямі скінченні різниці.

Пряма скінченна різниця показує зміну значення функції під час переходу від точки \( x \) до наступної точки \( x+h \). Для довільної функції \( g(x) \) її визначають так:

\[
\Delta g(x)=g(x+h)-g(x).
\]

Якщо \( x=x_i \), то

\[
x_i+h=x_{i+1}.
\]

Отже, пряма скінченна різниця порівнює значення функції у двох сусідніх вузлах.

Для табличних значень функції різниця першого порядку має вигляд

\[
\Delta y_i=y_{i+1}-y_i.
\]

Зокрема,

\[
\Delta y_0=y_1-y_0,
\qquad
\Delta y_1=y_2-y_1,
\qquad
\Delta y_2=y_3-y_2.
\]

Різниці другого порядку обчислюють за різницями першого порядку:

\[
\Delta^2y_i=\Delta y_{i+1}-\Delta y_i.
\]

Наприклад,

\[
\Delta^2y_0=\Delta y_1-\Delta y_0,
\qquad
\Delta^2y_1=\Delta y_2-\Delta y_1.
\]

У загальному випадку скінченну різницю \( k \)-го порядку визначають рекурентно:

\[
\Delta^ky_i=\Delta^{k-1}y_{i+1}-\Delta^{k-1}y_i.
\]

Кожний новий порядок різниць утворюється з попереднього. Для \( n+1 \) заданих значень функції можна обчислити скінченні різниці до \( n \)-го порядку включно.

У першій формулі Ньютона використовують початкове значення функції та різниці кожного порядку, обчислені від початку таблиці:

\[
y_0,\qquad \Delta y_0,\qquad \Delta^2y_0,\qquad \dots,\qquad \Delta^ny_0.
\]

Обчислення починають від вузла \( x_0 \), а різниці утворюють у напрямку збільшення індексів. Тому першу інтерполяційну формулу Ньютона також називають прямою формулою Ньютона, або формулою Ньютона вперед.

Коефіцієнти Полінома: Послідовне Виведення

Спочатку знайдемо коефіцієнт \( a_0 \). Для цього підставимо \( x=x_0 \) у поліном. Усі доданки, крім першого, містять множник \( x-x_0 \), тому дорівнюють нулю:

\[
P_n(x_0)=a_0.
\]

За умовою інтерполяції

\[
P_n(x_0)=y_0.
\]

Отже,

\[
a_0=y_0.
\]

Тепер застосуємо визначення прямої скінченної різниці до полінома \( P_n(x) \):

\[
\Delta P_n(x)=P_n(x+h)-P_n(x).
\]

Для узагальненого степеня виконується співвідношення

\[
\Delta(x-x_0)^{[k]}=k\cdot h\cdot(x-x_0)^{[k-1]}.
\]

Після обчислення першої скінченної різниці та підстановки \( x=x_0 \) перший доданок дорівнює \( a_1\cdot h \). Усі наступні доданки містять узагальнені степені додатного порядку, які в точці \( x_0 \) дорівнюють нулю. Тому

\[
\Delta P_n(x_0)=a_1\cdot h.
\]

З іншого боку,

\[
\Delta P_n(x_0)=P_n(x_0+h)-P_n(x_0).
\]

Оскільки

\[
x_1=x_0+h,
\]

то

\[
\Delta P_n(x_0)=P_n(x_1)-P_n(x_0).
\]

У вузлах інтерполяції значення полінома збігаються зі значеннями функції, тому

\[
\Delta P_n(x_0)=y_1-y_0=\Delta y_0.
\]

Звідси

\[
a_1=\frac{\Delta y_0}{h}.
\]

Для визначення коефіцієнта \( a_2 \) обчислимо скінченну різницю другого порядку. Після підстановки \( x=x_0 \) отримаємо

\[
\Delta^2P_n(x_0)=2!\cdot a_2\cdot h^2.
\]

Оскільки

\[
\Delta^2P_n(x_0)=\Delta^2y_0,
\]

то

\[
a_2=\frac{\Delta^2y_0}{2!\cdot h^2}.
\]

Кожне наступне обчислення скінченної різниці зменшує порядок узагальненого степеня на одиницю та додає відповідний числовий множник і множник \( h \). Тому після обчислення різниці \( k \)-го порядку маємо

\[
\Delta^kP_n(x_0)=k!\cdot a_k\cdot h^k.
\]

Звідси

\[
a_k=\frac{\Delta^ky_0}{k!\cdot h^k}, \qquad k=1,2,\dots,n.
\]

Підставивши знайдені коефіцієнти в поліном, дістанемо

\[
P_n(x)=y_0+\frac{\Delta y_0}{1!\cdot h}\cdot(x-x_0)^{[1]}+\frac{\Delta^2y_0}{2!\cdot h^2}\cdot(x-x_0)^{[2]}+\dots+\frac{\Delta^ny_0}{n!\cdot h^n}\cdot(x-x_0)^{[n]}.
\]

Нормована Змінна: Спрощення Формули Ньютона

Для спрощення обчислень введемо змінну

\[
q=\frac{x-x_0}{h}.
\]

Звідси

\[
x-x_0=q\cdot h.
\]

Оскільки

\[
x_j=x_0+j\cdot h,
\]

то

\[
x-x_j=x-x_0-j\cdot h=q\cdot h-j\cdot h=(q-j)\cdot h.
\]

Тому узагальнений степінь можна подати у вигляді

\[
(x-x_0)^{[k]}=h^k\cdot q\cdot(q-1)\cdot(q-2)\cdot\dots\cdot(q-k+1).
\]

Розглянемо це перетворення для доданка другого порядку:

\[
\frac{\Delta^2y_0}{2!\cdot h^2}\cdot h^2\cdot q\cdot(q-1)=\frac{q\cdot(q-1)}{2!}\cdot\Delta^2y_0.
\]

Множник \( h^2 \), який виникає в послідовному добутку, скорочується з таким самим множником у знаменнику коефіцієнта. Аналогічне скорочення відбувається в усіх наступних доданках.

У результаті отримуємо першу інтерполяційну формулу Ньютона:

\[
P_n(x)=y_0+q\cdot\Delta y_0+\frac{q\cdot(q-1)}{2!}\cdot\Delta^2y_0+\frac{q\cdot(q-1)\cdot(q-2)}{3!}\cdot\Delta^3y_0+\dots+\frac{q\cdot(q-1)\cdot(q-2)\cdot\dots\cdot(q-n+1)}{n!}\cdot\Delta^ny_0.
\]

Змінна \( q \) показує зміщення точки \( x \) від початкового вузла \( x_0 \), виражене в одиницях кроку \( h \). Її значення не обов’язково є цілим. Наприклад, \( q=1.5 \) означає, що точка \( x \) розташована на відстані півтора кроку від \( x_0 \).

Першу інтерполяційну формулу Ньютона найзручніше застосовувати, коли точка \( x \) розташована поблизу початкового вузла \( x_0 \).

Перша Інтерполяційна Формула Ньютона: Покрокові Приклади

Перейдемо до застосування отриманої формули для табличних даних із рівновіддаленими вузлами. У першому прикладі детально розглянемо всі етапи обчислення, а далі простежимо, як змінюється розв’язання зі збільшенням кількості вузлів і порядку скінченних різниць.

Приклад 1. За наведеними табличними значеннями функції знайти наближене значення \( f(1.5) \)

\( i \) \( x_i \) \( y_i \)
\( 0 \) \( 1 \) \( 1 \)
\( 1 \) \( 2 \) \( 4 \)
\( 2 \) \( 3 \) \( 9 \)

Вузли розташовані рівновіддалено. Крок інтерполяції дорівнює

\[
h=x_1-x_0=2-1=1.
\]

Обчислимо скінченні різниці першого порядку:

\[
\Delta y_0=y_1-y_0=4-1=3,
\qquad
\Delta y_1=y_2-y_1=9-4=5.
\]

Знайдемо скінченну різницю другого порядку:

\[
\Delta^2y_0=\Delta y_1-\Delta y_0=5-3=2.
\]

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

\( i \) \( x_i \) \( y_i \) \( \Delta y_i \) \( \Delta^2y_i \)
\( 0 \) \( 1 \) \( 1 \) \( 3 \) \( 2 \)
\( 1 \) \( 2 \) \( 4 \) \( 5 \)
\( 2 \) \( 3 \) \( 9 \)

Обчислимо значення \( q \):

\[
q=\frac{x-x_0}{h}=\frac{1.5-1}{1}=0.5.
\]

Для трьох вузлів використовуємо формулу

\[
P_2(x)=y_0+q\cdot\Delta y_0+\frac{q\cdot(q-1)}{2!}\cdot\Delta^2y_0.
\]

Підставимо знайдені значення:

\[
P_2(1.5)=1+0.5\cdot3+\frac{0.5\cdot(0.5-1)}{2!}\cdot2.
\]

Виконаємо обчислення:

\[
P_2(1.5)=1+1.5-0.25=2.25.
\]

Отже,

\[
f(1.5)\approx2.25.
\]

Приклад 2. За наведеними табличними значеннями функції знайти наближене значення \( f(1.2) \)

\( i \) \( x_i \) \( y_i \)
\( 0 \) \( 1 \) \( 5 \)
\( 1 \) \( 1.5 \) \( 8.375 \)
\( 2 \) \( 2 \) \( 4 \)
\( 3 \) \( 2.5 \) \( 22.625 \)

Крок між сусідніми вузлами дорівнює

\[
h=x_1-x_0=1.5-1=0.5.
\]

Послідовно обчислимо скінченні різниці до третього порядку:

\[
\begin{gathered}
\Delta y_0=8.375-5=3.375,
\qquad
\Delta y_1=14-8.375=5.625,
\qquad
\Delta y_2=22.625-14=8.625,\\[4pt]
\Delta^2y_0=5.625-3.375=2.25,
\qquad
\Delta^2y_1=8.625-5.625=3,\\[4pt]
\Delta^3y_0=3-2.25=0.75.
\end{gathered}
\]

Запишемо результати в таблиці.

\( i \) \( x_i \) \( y_i \) \( \Delta y_i \) \( \Delta^2y_i \) \( \Delta^3y_i \)
\( 0 \) \( 1 \) \( 5 \) \( 3.375 \) \( 2.25 \) \( 0.75 \)
\( 1 \) \( 1.5 \) \( 8.375 \) \( 5.625 \) \( 3 \)
\( 2 \) \( 2 \) \( 14 \) \( 8.625 \)
\( 3 \) \( 2.5 \) \( 22.625 \)

Обчислимо значення \( q \):

\[
q=\frac{x-x_0}{h}=\frac{1.2-1}{0.5}=0.4.
\]

Для чотирьох вузлів маємо

\[
P_3(x)=y_0+q\cdot\Delta y_0+\frac{q\cdot(q-1)}{2!}\cdot\Delta^2y_0+\frac{q\cdot(q-1)\cdot(q-2)}{3!}\cdot\Delta^3y_0.
\]

Підставимо відомі значення:

\[
P_3(1.2)=5+0.4\cdot3.375+\frac{0.4\cdot(0.4-1)}{2!}\cdot2.25+\frac{0.4\cdot(0.4-1)\cdot(0.4-2)}{3!}\cdot0.75.
\]

Обчислимо доданки:

\[
\begin{gathered}
0.4\cdot3.375=1.35,\\[4pt]
\frac{0.4\cdot(0.4-1)}{2!}\cdot2.25=-0.27,\\[4pt]
\frac{0.4\cdot(0.4-1)\cdot(0.4-2)}{3!}\cdot0.75=0.048.
\end{gathered}
\]

Тоді

\[
P_3(1.2)=5+1.35-0.27+0.048=6.128.
\]

Отже,

\[
f(1.2)\approx6.128.
\]

Приклад 3. За наведеними табличними значеннями функції знайти наближене значення \( f(1.6) \)

\( i \) \( x_i \) \( y_i \)
\( 0 \) \( 0 \) \( 2 \)
\( 1 \) \( 2 \) \( 2 \)
\( 2 \) \( 4 \) \( 12 \)
\( 3 \) \( 6 \) \( 68 \)
\( 4 \) \( 8 \) \( 230 \)

Крок інтерполяції дорівнює

\[
h=x_1-x_0=2-0=2.
\]

За табличними значеннями послідовно обчислимо скінченні різниці до четвертого порядку:

\[
\begin{gathered}
\Delta y_0=2-2=0,
\qquad
\Delta y_1=12-2=10,
\qquad
\Delta y_2=68-12=56,
\qquad
\Delta y_3=230-68=162,\\[4pt]
\Delta^2y_0=10-0=10,
\qquad
\Delta^2y_1=56-10=46,
\qquad
\Delta^2y_2=162-56=106,\\[4pt]
\Delta^3y_0=46-10=36,
\qquad
\Delta^3y_1=106-46=60,\\[4pt]
\Delta^4y_0=60-36=24.
\end{gathered}
\]

Отримані результати подамо в таблиці.

\( i \) \( x_i \) \( y_i \) \( \Delta y_i \) \( \Delta^2y_i \) \( \Delta^3y_i \) \( \Delta^4y_i \)
\( 0 \) \( 0 \) \( 2 \) \( 0 \) \( 10 \) \( 36 \) \( 24 \)
\( 1 \) \( 2 \) \( 2 \) \( 10 \) \( 46 \) \( 60 \)
\( 2 \) \( 4 \) \( 12 \) \( 56 \) \( 106 \)
\( 3 \) \( 6 \) \( 68 \) \( 162 \)
\( 4 \) \( 8 \) \( 230 \)

Знайдемо значення \( q \):

\[
q=\frac{x-x_0}{h}=\frac{1.6-0}{2}=0.8.
\]

Для п’яти вузлів використовуємо формулу

\[
P_4(x)=y_0+q\cdot\Delta y_0+\frac{q\cdot(q-1)}{2!}\cdot\Delta^2y_0+\frac{q\cdot(q-1)\cdot(q-2)}{3!}\cdot\Delta^3y_0+\frac{q\cdot(q-1)\cdot(q-2)\cdot(q-3)}{4!}\cdot\Delta^4y_0.
\]

Підставимо знайдені значення:

\[
P_4(1.6)=2+0.8\cdot0+\frac{0.8\cdot(0.8-1)}{2!}\cdot10+\frac{0.8\cdot(0.8-1)\cdot(0.8-2)}{3!}\cdot36+\frac{0.8\cdot(0.8-1)\cdot(0.8-2)\cdot(0.8-3)}{4!}\cdot24.
\]

Обчислимо окремі доданки:

\[
\begin{gathered}
0.8\cdot0=0,\\[4pt]
\frac{0.8\cdot(0.8-1)}{2!}\cdot10=-0.8,\\[4pt]
\frac{0.8\cdot(0.8-1)\cdot(0.8-2)}{3!}\cdot36=1.152,\\[4pt]
\frac{0.8\cdot(0.8-1)\cdot(0.8-2)\cdot(0.8-3)}{4!}\cdot24\approx-0.422.
\end{gathered}
\]

Тоді

\[
P_4(1.6)\approx2+0-0.8+1.152-0.422=1.93.
\]

Отже,

\[
f(1.6)\approx1.93.
\]

Що Вивчати Далі: Інші Методи Наближення Функцій

Після формули Ньютона вперед варто познайомитися з іншими способами роботи з табличними даними. Кожен із них розв’язує окремий тип задач і доповнює вже вивчений матеріал.

  1. Друга інтерполяційна формула Ньютона: Обчислення біля кінця таблиці — У статті розглянемо обернені скінченні різниці та обчислення значень функції поблизу останнього вузла таблиці.
  2. Інтерполяційна формула Лагранжа: Робота з нерівновіддаленими вузлами — Матеріал пояснить, як побудувати інтерполяційний поліном, коли відстані між сусідніми вузлами мають різні значення.
  3. Метод найменших квадратів: Рівномірне наближення табличних даних — Дізнаєтеся, як знайти функцію, що наближено описує набір даних і зменшує загальну величину відхилень у заданих точках.

Перша Інтерполяційна Формула Ньютона: Від Блок-Схеми до Програмного Коду

Захоплюєтеся програмуванням? Тоді спробуйте реалізувати поданий на блок-схемі алгоритм своєю улюбленою мовою. Програма має сформувати таблицю прямих скінченних різниць, обчислити значення нормованої змінної та знайти наближене значення функції за першою інтерполяційною формулою Ньютона. Pascal, Python, JavaScript чи C++ — вибір за вами. Так ви закріпите отримані знання й побачите, як математичні обчислення перетворюються на програмний код.

Блок-схема алгоритму обчислення значення функції, у якому використовується перша інтерполяційна формула Ньютона

4 коментаря

  1. Це що за пастка в циклах? В перших двох умовах “<n-1” а потім бац і “<n” що призводить до помилки виходу за межі масиву наскільки я розумію.

  2. Доброго вечора Василь. Не зовсім зрозумілим являється Ваш коментар. Якщо мова йде про перших два цикла в блок-схемі, то хочу Вас запевнити, що ніяких «пасток» там не має. По даній блок-схемі було реалізовано delphi-проект Перша інтерполяційна формула Ньютона, який працює безпомилково.

  3. Так, все вірно. Я писав код під C# і трішки заплутався. Дякую за блок-схему і приклад.

  4. Зрозуміло Василь. Раді, що матеріал був корисним.

Коментарі закриті.