Analiza numeryczna Kurs INP002009W Wykład 8 Interpolacja wielomianowa Karol Tarnowski karol.tarnowski@pwr.wroc.pl A-1 p.223
Plan wykładu Wielomian interpolujący Wzór interpolacyjny Newtona Wzór interpolacyjny Lagrange a Ilorazy różnicowe Interpolacja Hermite a 2/33
Wielomian interpolujący Zadanie. Znaleźć wielomian p możliwie najniższego stopnia taki, że dla danych n + 1 punktów (x i,y i ) jest p(x i ) = y i (0 i n). Twierdzenie. Jeśli liczby x 0, x 1,, x n są parami różne to istnieje dokładnie jeden wielomian taki, że p(x i ) = y i (0 i n). p n 3/33
Wielomian interpolujący Dowód Dowód. Jednoznaczność załóżmy, że istnieją dwa wielomiany klasy n interpolujące wartości y i w węzłach x i : p n (x) oraz q n (x). Rozważmy wielomian p n (x) q n (x), który także należy do klasy n. Wielomiany należące do n mogą znikać w co najwyżej n punktach, o ile nie znikają tożsamościowo. Wielomian p n (x) q n (x) znika w n+1 punktach x i dla (0 i n), zatem p x q x. n n 4/33
Wielomian interpolujący Dowód Dowód. Istnienie dla n = 0 wielomian stały p 0 (x) = y 0 spełnia jedyny warunek interpolacyjny p 0 (x 0 ) = y 0. Załóżmy, że dla pewnego k istnieje wielomian p k 1 klasy k 1 taki, że p k 1 (x i ) = y i dla (0 i k 1). Wielomian p k (x) możemy zapisać jako p x p x c x x x x x x. k k1 k 0 1 k1 Stopień tego wielomianu nie przewyższa k. Wielomian ten spełnia warunki interpolacyjne (0 i k 1). Pozostaje wyznaczyć c k tak, żeby p k (x k ) = y k. p x p x c x x x x x x y k k k1 k k k 0 k 1 k k1 k. 5/33
Wzór interpolacyjny Newtona c k y k pk 1 xk x x x x x x k 0 k 1 k k1 p x c c x x c x x x x x x k 0 1 1 k 0 1 k1 p x c x x k i 1 k i j i0 j0 6/33
Wzór interpolacyjny Newtona Przykład x 1 5 3 9 y 1 0 2-7 7/33
Wzór interpolacyjny Newtona Przykład p x 1 5 3 9 y 1 0 2-7 x 0 1 8/33
Wzór interpolacyjny Newtona Przykład p x 1 5 3 9 y 1 0 2-7 x 0 1 p x p x c x 1 0 1 1 c 1 p1 x x 4 1 1 1 0 1 5 1 9/33
Wzór interpolacyjny Newtona Przykład x 1 5 3 9 y 1 0 2-7 1 p1 x x 4 1 1 p x p x 2 1 c2 x 1 x 5 p x p x 2 1 3 8 x 1 x 5 10/33
Wzór interpolacyjny Newtona Przykład x 1 5 3 9 y 1 0 2-7 p x p x 3 2 1 32 x 1 x 5x 3 11/33
Wzór interpolacyjny Lagrange a l x c x x x x x x x x i 0 i1 i1 n l l i i x 1 i x x x 0 x xi1 x xi1 x xn x x x x x x x x i 0 i i1 i i1 i n n x x j l i x 0 i n x x j0, ji i j k0 p x ykk l x n 12/33
Wzór interpolacyjny Lagrange a Przykład x 1 3 5 9 y 1 2 0-7 l 0 x x 3x 5 x 9 1 31 5 1 9 x 3 x 5 x 9 64 13/33
Wzór interpolacyjny Lagrange a Przykład x 1 3 5 9 y 1 2 0-7 l 1 x x 1 x 5 x 9 3 1 3 5 3 9 x 1 x 5x 9 24 14/33
Wzór interpolacyjny Lagrange a Przykład x 1 3 5 9 y 1 2 0-7 l 2 x x 1 x 3 x 9 5 15 3 5 9 x 1 x 5 x 9 32 15/33
Wzór interpolacyjny Lagrange a Przykład x 1 3 5 9 y 1 2 0-7 l 3 x x 1 x 3 x 5 9 1 9 39 5 x 1 x 3 x 5 192 16/33
Wzór interpolacyjny Lagrange a Przykład x 1 3 5 9 y 1 2 0-7 n kk 0 1 2 3 k0 1 2 0 7 p x y l x l x l x l x l x 17/33
Iloraz różnicowy Wielomian p(x) klasy n spełniający dla danej funkcji f warunki interpolacyjne f x p x można wyrazić za pomocą wzoru Newtona: n k 1 k k0 j0 p x c x x Współczynniki c k zależą tylko od węzłów x 0, x 1,, x k i wartości funkcji w tych węzłach. i ck f x 0, x1,, xk i j. Jest to iloraz różnicowy rzędu k. 18/33
Iloraz różnicowy iloraz różnicowy rzędu zerowego f x f x 0 0 iloraz różnicowy rzędu pierwszego f x, x 0 1 f x f x 1 0 x x 1 0 19/33
Iloraz różnicowy Ilorazy różnicowe wyższych rzędów ilorazy różnicowe spełniają zależność f x 0, x1,, x k f x, x,, x f x, x,, x 1 2 k 0 1 k1 x k x 0 x 0 f[x 0 ] f[x 0,x 1 ] f[x 0,x 1,x 2 ] f[x 0,x 1,x 2,x 3 ] x 1 f[x 1 ] f[x 1,x 1 ] f[x 1,x 2,x 3 ] x 2 f[x 2 ] f[x 2,x 3 ] x 3 f[x 3 ] 20/33
Wzór interpolacyjny Newtona Ilorazy różnicowe 1 1-1/4-3/8 1/32 5 0-1 -1/8 3 2-3/2 9-7 1 3 1 p3 x x x x 4 8 32 x x x 1 3 21 2 87 35 p3 x x x x 32 32 32 32 1 1 1 5 1 5 3 21/33
Wzór interpolacyjny Newtona Ilorazy różnicowe c f x x x ij i, i1,, ij x 0 c 00 c 01 c 02 c 0n x 1 c 10 c 11 c 12 x n-1 c n-1,0 c n-1,1 x n c n,0 c ij c i1, j1 i, j1 x c x i j i 22/33
Wzór interpolacyjny Newtona Ilorazy różnicowe input n, (x i ), f(x i ) for i = 0 to n do d i f(x i ) enddo for j = 1 to n do enddo for i = n to j step -1 d i (d i d i-1 )/(x i x i-j ) enddo 23/33
Interpolacja wielomianowa Dokładność Twierdzenie. Jeśli f jest klasy C n+1 [a,b], a wielomian p(x) klasy n interpoluje wartości funkcji f w n + 1 różnych punktach x 0, x 1,, x n przedziału [a,b], to dla każdego x należącego do [a,b] istnieje takie x w przedziale (a,b), że n 1 f x p x f x x n 1! n1 x i0 i. 24/33
Interpolacja wielomianowa Przykład Jaki jest błąd przybliżenia funkcji f(x) = sin x wielomianem interpolacyjnym stopnia 9 w przedziale [0,1], do którego należą węzły? n 1 f x p x f x x n 1! n1 x i0 10 x 9 i0 f 1 x x 1 i i. 1 sin 2,8 10 10! x p x 7 25/33
Interpolacja wielomianowa Ważne zagadnienia Wybór węzłów interpolacji Wielomiany Czebyszewa Zbieżność wielomianów interpolacyjnych Zjawisko Rungego f x x 2 1 1 26/33
Interpolacja Hermite a Wstęp Szukamy wielomianu p(x) możliwie niskiego stopnia w dwóch różnych x 0 i x 1 interpoluje funkcję f i jej pochodną f. p x f x, p ' x f ' x, 0 0 0 0, ' ' p x f x p x f x 1 1 1 1 2 2 p x a b x x c x x d x x x x 0 0 0 1 p ' x b 2c x x 2d x x x x d x x 0 0 1 0 2 27/33
Interpolacja Hermite a Wstęp p x f x, p ' x f ' x, 0 0 0 0, ' ' p x f x p x f x 1 1 1 1 2 2 p x a b x x c x x d x x x x 0 0 0 1 p ' x b 2c x x 2d x x x x d x x 0 0 f x a, f ' x b, 0 0 1 0 2 2 f x a bh ch, f ' x b 2ch 2 dh, h x x 1 1 1 0 2 28/33
Interpolacja Hermite a Wstęp interpolacja Birkhoffa - przykład Szukamy wielomianu p(x) takiego, że: p(0) = 0, p(1) = 1, p ( 1 / 2 )=2. p x a bx cx Z pierwszego warunku dostajemy a = 0, z dwóch pozostałych: 1 = p(1) = b + c, 2 = p ( 1 / 2 ) = b + c. 2 29/33
Interpolacja Hermite a Wstęp interpolacja Birkhoffa - przykład Szukamy wielomianu p(x) takiego, że: p(0) = 0, p(1) = 1, p ( 1 / 2 )=2. 2 3 p x a bx cx dx Z pierwszego warunku dostajemy a = 0, z dwóch pozostałych: 1 = p(1) = b + c + d, 2 = p ( 1 / 2 ) = b + c + 3 / 4 d. d = -4, b + c = 5. 30/33
Interpolacja Hermite a Definicja zadania Dla danych węzłów x i (0 i m) parami różnych, danych liczb naturalnych k i i danych wartości c ij szukamy takiego wielomianu p(x), że j p x c 0 j k 1, 0 i m. i ij i Łączną liczbę warunków oznaczamy jako n m 1 k. i0 i Twierdzenie. W klasie n istnieje dokładnie jeden wielomian p(x) spełniający podane warunki. 31/33
Interpolacja Hermite a Uogólnienie interpolacji Newtona Szukamy wielomianu p klasy 2 takiego, że p(x 0 ) = c 00, p (x 0 ) = c 01, p(x 1 ) = c 10. Tablica ilorazów różnicowych ma wtedy postać: x 0 c 00 c 01 c 02 x 0 c 00 c 11 f x f x x 1 c 10 lim f x, x lim f ' x 0 0 0 x x0 xx0 x x0,,, p x f x f x x x x f x x x x x 0 0 0 0 0 0 1 0 32/33 2
Interpolacja Hermite a Uogólnienie interpolacji Newtona 1 k f x, x,, x f x k! 0 0 0 0 1 2 3 1 2-1 1 2 4 3 1 2 6 7 4 2 6 7 2 6 2 3 1 1 2 1 2 1 1 2 2 2 2 2 p x x x x x x x 33/33