Інтерполяцій́ний многочле́н Лагра́нжа — многочлен мінімального степеня, що приймає дані значення у даному наборі точок. Для пар чисел , де всі різні, існує єдиний многочлен степеня не більшого від , для якого .
У найпростішому випадку - це лінійний многочлен, графік якого — пряма, що проходить через дві задані точки.
Визначення
Лагранж запропонував спосіб обчислення таких многочленів:
де базисні поліноми визначаються за формулою:
Очевидно, що мають такі властивості:
- Це поліноми степеня
- при
Звідси випливає, що , як лінійна комбінація , може мати степінь не більший від , та .
Застосування
Поліноми Лагранжа використовуються для інтерполяції, а також для чисельного інтегрування.
Нехай для функції відомі значення у деяких точках. Тоді ця функція може інтерполюватися як
Зокрема,
Значення інтегралів від не залежать від , тож їх можна обчислювати заздалегідь, знаючи послідовність .
Для випадку рівномірного розподілу на відрізку вузлів інтерполяції
У вказаному випадку можна виразити через відстань між вузлами інтерполяції h та початкову точку :
- ,
і, як наслідок,
- .
Якщо підставити ці вирази у формулу базисного полінома та винести h за знаки множення у чисельнику та знаменнику, отримаємо
- .
Після цього можна ввести заміну змінної
і отримати поліном від у, який будується з використанням лише цілочисленної арифметики. Недоліком цього підходу є факторіальна складність чисельника та знаменника, що вимагає використання алгоритмів з багатобайтним представленням чисел.
Приклади
Приклад 1
Ми бажаємо інтерполювати ƒ(x) = x2 на діапазоні 1 ≤ x ≤ 3, із відомими трьома точками:
Інтерполяційний многочлен такий:
Приклад 2
Ми бажаємо інтерполювати ƒ(x) = x3 на діапазоні 1 ≤ x ≤ 3, із відомими трьома точками:
Інтерполяційний многочлен такий:
Зауваження
Як видно з побудови, кожен раз коли вузол змінюється, всі базові многочлени Лагранжа необхідно перерахувати. Найкращим варіантом інтерполяційного многочлена для практичних (або обчислювальних) цілей є барицентрична форма інтерполяції Лагранжа або поліном Ньютона.
Лагранжева та інші інтерполяції із рівновіддаленими точками, як у прикладах згори, породжують многочлен, що коливається навколо справжньої функції. Ця поведінка сильніше себе виявляє у випадку більшої кількості заданих точок, призводячи до розбіжності відомої як феномен Рунге; проблему можна усунути обравши для інтерполяції .
Базові многочлени Лагранжа можна використати у чисельному інтегруванні для виведення .
Приклад реалізації
Код в Oberon
TYPE Point=RECORD x,y:REAL END; PROCEDURE PolynomLagrange(p:ARRAY OF Point;x:REAL):REAL; VAR c,s:REAL; i,j:INTEGER; BEGIN s:=0; FOR i:=0 TO LEN(p)-1 DO c := 1; FOR j:=0 TO LEN(p)-1 DO IF i#j THEN c:=c*(x-p[j].x)/(p[i].x-p[j].x)END END; s:=s+c*y[i] END; RETURN s END PolynomLagrange;
Код в C#
double L_BI_MI(double x) { double r = 0, ra, rb; for (int i = 0; i < n; i++) { ra = rb = 1; for (int j = 0; j < n; j++) if (i != j) { ra *= x - x_[j]; //(x_[i],y_[i]) - інтерполяційні вузли rb *= x_[i] - x_[j]; } r += ra * y_[i] / rb; } return r; }
Див. також
Література
- Григорій Михайлович Фіхтенгольц. Курс диференціального та інтегрального числення. — 2024. — 2200+ с.(укр.)
- ALGLIB [ 10 січня 2016 у Wayback Machine.] has an implementations in C++ / C# / VBA / Pascal.
- GSL [ 9 червня 2005 у Wayback Machine.] has a polynomial interpolation code in C
- SO [ 4 березня 2016 у Wayback Machine.] has a MATLAB example that demonstrates the algorithm and recreates the first image in this article
- Lagrange Method of Interpolation — Notes, PPT, Mathcad, Mathematica, MATLAB, Maple [ 1 вересня 2006 у Wayback Machine.] at Holistic Numerical Methods Institute [ 6 вересня 2006 у Wayback Machine.]
- Lagrange interpolation polynomial [ 5 березня 2013 у Wayback Machine.] on www.math-linux.com
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Interpolyacij nij mnogochle n Lagra nzha mnogochlen minimalnogo stepenya sho prijmaye dani znachennya u danomu nabori tochok Dlya n 1 displaystyle n 1 par chisel x0 y0 x1 y1 xn yn displaystyle x 0 y 0 x 1 y 1 dots x n y n de vsi xi displaystyle x i rizni isnuye yedinij mnogochlen L x displaystyle L x stepenya ne bilshogo vid n displaystyle n dlya yakogo L xi yi displaystyle L x i y i U najprostishomu vipadku n 1 displaystyle n 1 ce linijnij mnogochlen grafik yakogo pryama sho prohodit cherez dvi zadani tochki ViznachennyaCej priklad predstavlyaye interpolyacijnij mnogochlen Lagranzha dlya chotiroh tochok 9 5 4 2 1 2 i 7 9 a takozh polinomi yj lj x kozhnij z yakih prohodit cherez odnu z vidilenih tochok ta prijmaye nulove znachennya v inshih xi Lagranzh zaproponuvav sposib obchislennya takih mnogochleniv L x j 0nyjlj x displaystyle L x sum j 0 n y j l j x de bazisni polinomi viznachayutsya za formuloyu lj x i 0 j inx xixj xi x x0xj x0 x xj 1xj xj 1x xj 1xj xj 1 x xnxj xn displaystyle l j x prod i 0 j neq i n frac x x i x j x i frac x x 0 x j x 0 cdots frac x x j 1 x j x j 1 frac x x j 1 x j x j 1 cdots frac x x n x j x n Ochevidno sho lj x displaystyle l j x mayut taki vlastivosti Ce polinomi stepenya n displaystyle n lj xj 1 displaystyle l j x j 1 lj xi 0 displaystyle l j x i 0 pri i j displaystyle i neq j Zvidsi viplivaye sho L x displaystyle L x yak linijna kombinaciya lj x displaystyle l j x mozhe mati stepin ne bilshij vid n displaystyle n ta L xj yj displaystyle L x j y j ZastosuvannyaPolinomi Lagranzha vikoristovuyutsya dlya interpolyaciyi a takozh dlya chiselnogo integruvannya Nehaj dlya funkciyi f x displaystyle f x vidomi znachennya yj f xj displaystyle y j f x j u deyakih tochkah Todi cya funkciya mozhe interpolyuvatisya yak f x j 0nf xj lj x displaystyle f x approx sum j 0 n f x j l j x Zokrema abf x dx j 0nf xj ablj x dx displaystyle int a b f x dx approx sum j 0 n f x j int a b l j x dx Znachennya integraliv vid lj displaystyle l j ne zalezhat vid f x displaystyle f x tozh yih mozhna obchislyuvati zazdalegid znayuchi poslidovnist xi displaystyle x i Dlya vipadku rivnomirnogo rozpodilu na vidrizku vuzliv interpolyaciyi U vkazanomu vipadku mozhna viraziti xi displaystyle x i cherez vidstan mizh vuzlami interpolyaciyi h ta pochatkovu tochku x0 displaystyle x 0 xj x0 jh displaystyle x j equiv x 0 jh i yak naslidok xi xj i j h displaystyle x i x j equiv i j h Yaksho pidstaviti ci virazi u formulu bazisnogo polinoma ta vinesti h za znaki mnozhennya u chiselniku ta znamenniku otrimayemo li x j 0 i jn x xj xi xj j 0 i jn x x0 jh hn 1 j 0 i jn i j hn 1 j 0 i jn x x0h j hn 1 j 0 i jn i j displaystyle l i x prod limits j 0 i neq j n x x j over x i x j prod limits j 0 i neq j n x x 0 jh over h n 1 prod limits j 0 i neq j n i j h n 1 prod limits j 0 i neq j n x x 0 over h j over h n 1 prod limits j 0 i neq j n i j Pislya cogo mozhna vvesti zaminu zminnoyi y x x0h displaystyle y frac x x 0 h i otrimati polinom vid u yakij buduyetsya z vikoristannyam lishe cilochislennoyi arifmetiki Nedolikom cogo pidhodu ye faktorialna skladnist chiselnika ta znamennika sho vimagaye vikoristannya algoritmiv z bagatobajtnim predstavlennyam chisel PrikladiPriklad 1 Mi bazhayemo interpolyuvati ƒ x x2 na diapazoni 1 x 3 iz vidomimi troma tochkami x0 1f x0 1x1 2f x1 4x2 3f x2 9 displaystyle begin aligned x 0 amp 1 amp amp amp f x 0 amp 1 x 1 amp 2 amp amp amp f x 1 amp 4 x 2 amp 3 amp amp amp f x 2 amp 9 end aligned Interpolyacijnij mnogochlen takij L x 1 x 21 2 x 31 3 4 x 12 1 x 32 3 9 x 13 1 x 23 2 x2 displaystyle begin aligned L x amp 1 cdot x 2 over 1 2 cdot x 3 over 1 3 4 cdot x 1 over 2 1 cdot x 3 over 2 3 9 cdot x 1 over 3 1 cdot x 2 over 3 2 10pt amp x 2 end aligned Priklad 2 Mi bazhayemo interpolyuvati ƒ x x3 na diapazoni 1 x 3 iz vidomimi troma tochkami x0 1 displaystyle x 0 1 f x0 1 displaystyle f x 0 1 x1 2 displaystyle x 1 2 f x1 8 displaystyle f x 1 8 x2 3 displaystyle x 2 3 f x2 27 displaystyle f x 2 27 Interpolyacijnij mnogochlen takij L x 1 x 21 2 x 31 3 8 x 12 1 x 32 3 27 x 13 1 x 23 2 6x2 11x 6 displaystyle begin aligned L x amp 1 cdot x 2 over 1 2 cdot x 3 over 1 3 8 cdot x 1 over 2 1 cdot x 3 over 2 3 27 cdot x 1 over 3 1 cdot x 2 over 3 2 8pt amp 6x 2 11x 6 end aligned Zauvazhennya Priklad rozbizhnosti interpolyacijnogo mnogochlena Lagranzha Yak vidno z pobudovi kozhen raz koli vuzol xk displaystyle x k zminyuyetsya vsi bazovi mnogochleni Lagranzha neobhidno pererahuvati Najkrashim variantom interpolyacijnogo mnogochlena dlya praktichnih abo obchislyuvalnih cilej ye baricentrichna forma interpolyaciyi Lagranzha abo polinom Nyutona Lagranzheva ta inshi interpolyaciyi iz rivnoviddalenimi tochkami yak u prikladah zgori porodzhuyut mnogochlen sho kolivayetsya navkolo spravzhnoyi funkciyi Cya povedinka silnishe sebe viyavlyaye u vipadku bilshoyi kilkosti zadanih tochok prizvodyachi do rozbizhnosti vidomoyi yak fenomen Runge problemu mozhna usunuti obravshi dlya interpolyaciyi Bazovi mnogochleni Lagranzha mozhna vikoristati u chiselnomu integruvanni dlya vivedennya Priklad realizaciyiKod v Oberon TYPE Point RECORD x y REAL END PROCEDURE PolynomLagrange p ARRAY OF Point x REAL REAL VAR c s REAL i j INTEGER BEGIN s 0 FOR i 0 TO LEN p 1 DO c 1 FOR j 0 TO LEN p 1 DO IF i j THEN c c x p j x p i x p j x END END s s c y i END RETURN s END PolynomLagrange Kod v C double L BI MI double x double r 0 ra rb for int i 0 i lt n i ra rb 1 for int j 0 j lt n j if i j ra x x j x i y i interpolyacijni vuzli rb x i x j r ra y i rb return r Div takozhKombinatorna teorema pro nuli SplajnLiteraturaGrigorij Mihajlovich Fihtengolc Kurs diferencialnogo ta integralnogo chislennya 2024 2200 s ukr ALGLIB 10 sichnya 2016 u Wayback Machine has an implementations in C C VBA Pascal GSL 9 chervnya 2005 u Wayback Machine has a polynomial interpolation code in C SO 4 bereznya 2016 u Wayback Machine has a MATLAB example that demonstrates the algorithm and recreates the first image in this article Lagrange Method of Interpolation Notes PPT Mathcad Mathematica MATLAB Maple 1 veresnya 2006 u Wayback Machine at Holistic Numerical Methods Institute 6 veresnya 2006 u Wayback Machine Lagrange interpolation polynomial 5 bereznya 2013 u Wayback Machine on www math linux com