Багаточлен Лагранжа

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

Загалом - задано таблицю даних виду

Потрібно побудувати поліном, який у вузлах Х[i] приймав значення Y[i] .

Цю проблему вирішив Лагранж, а шуканий поліном має вигляд

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

Функції називають лагранжевими коефіцієнтами, вони мають властивість Многочлен виду

називають інтерполяційним багаточленом Лагранжа.

Завдання 1. Для функції у = cos (Pi * x) побудувати інтерполяційний поліном Лагранжа. За вузли інтерполяції взяти крапки x[0]=0; x[1]=1/4; x[2]=1/3; x [3] = 1/2. Зобразити функцію та вузли на графіку, а також побудувати оригінал.

Обчислюємо значення функції у вузлах

і наводимо у вигляді таблиці

За наведеною вище формулою будуємо інтерполяційний багаточлен Лагранжа

Спрощення вручну ми не робитимемо.

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

Задаємо значення функції > restart; > with(plots): >x[0]:=0; x[1]:=1/4;x[2]:=1/3;x[3]:=1/2; У циклі знаходимо значення функції у точках інтерполяції > for i from 0 to 3 do y[i]:=cos(Pi*x[i]) end do;

Тут використана змінна t, оскільки змінна x має тип масиву і не може бути використана. Для зручності розкладаємо (series) поліномЛагранжа за ступенями зміною > G:=series(F,t,4);

Оскільки при змінних коефіцієнтах містяться коріння , то округляємо (evalf) їх до цілих значень . В результаті отримуємо функцію третього ступеня. > G1:=evalf(G);

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

Записуємо функцію відображення суперпозиції графіків

Лагранжа

З графіка переконуємось, що різниці між функцією та оригіналом практично немає.

Розглянемо інше завдання.

Ця таблиця експериментальних даних.

Побудувати інтерполяційний поліном Лагранжа, а також графіки полінома та таблично заданої функції

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

Далі подібні викладки виконаємо в Maple. Задаємо вузли та значення функції у вузлах > restart; with(plots): > x[0]:=-1; x[1]:=2;x[2]:=5;x[3]:=6;x[4]:=8;x[5]:=10; > y[0]:=1;y[1]:=-2;y[2]:=3;y[3]:=7;y[4]:=2;y[5]:=-2;

Далі будуємо інтерполяційний поліном Лагранжа. Якщо правою кнопкою миші вибрати опцію Standard Math то побачимо наступний запис полінома

Після підсумовування доданків та розкладання до ряду отримаємо поліном з дробовими коефіцієнтами > G:=series(F0+F1+F2+F3+F4+F5,t,6);

які після округлення спрощуємо до вигляду > G1:=evalf(G);

Виконуємо побудову багаточлена Лагранжа > Q1:=plot(G1,t=-1.5..10.5,color=blue, thickness=2): > Q2:=plot([[x[0],y[0]],[x[1],y[1]],[x[2],y[2]],[x[3],y[ 3]],[x[4],y[4]],[x[5],y[5]]],style=point): > display(Q1, Q2);

Лагранжа

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