Kierunek: Automatyka i Robotyka, II rok Interpolacja PWSZ Gªogów, 2009
Interpolacja Okre±lenie zale»no±ci pomi dzy interesuj cymi nas wielko±ciami, Umo»liwia uproszczenie skomplikowanych funkcji (np. wykorzystywana w procedurach caªkowania numerycznego), Wykorzystywana w naukach do±wiadczalnych, gdy dysponujemy niewielk liczb danych, Deterministyczna metoda opisu zjawisk (w opozycji do podej±cia statystycznego). Graka komputerowa (szczególnie 3D)
Interpolacja - idea Mniej formalna denicja Rozwi» zadanie interpolacji tzn. odkryj zale»no± która pozwala wytªumaczy warto±ci obserwowane w danych.
Interpolacja - idea Mniej formalna denicja Rozwi» zadanie interpolacji tzn. odkryj zale»no± która pozwala wytªumaczy warto±ci obserwowane w danych.
Interpolacja - denicja Denicja matematyczna Maj c zbiór danych w postaci n + 1 tzw. w zªów {x i, y i } n i=0, nale»y wyznaczy przybli»one warto±ci w punktach nieb d cych w zªami interpolacji oraz oszacowa bª dy takiego przybli»enia. x i - w zªy interpolacji, punkty y i - warto±ci dla w zªów (punktów) Maj c dan klas funkcji G szukamy takiego g(x, a 0, a 1,..., a n ) G aby g(x i, a 0,..., a n ) = y i,, i = 0, 1,..., n
Interpolacja - idea y n g y 2 y 1 y 0 x 0 x 1 x 2 x n
Interpolacja - przykªad Dane: Gªówny Urz d Statystyczny Lata Liczba rozwodów 2000 1537 2001 1546 2002 1479 2003 1552 2004 1968 2005 2567
Interpolacja - przykªad Jak powinna wygl da krzywa opisuj ce dane? 2600 2400 2200 2000 1800 1600 1400 1200 2000 2001 2002 2003 2004 2005
Interpolacja - przykªad... tak 2600 2400 2200 2000 1800 1600 1400 1200 2000 2001 2002 2003 2004 2005
Interpolacja - przykªad a mo»e tak? 2600 2400 2200 2000 1800 1600 1400 1200 2000 2001 2002 2003 2004 2005
Interpolacja - przykªad a mo»e jednak tak? 2600 2400 2200 2000 1800 1600 1400 1200 2000 2001 2002 2003 2004 2005
Rodzaje interpolacji Nieparmetryczne(bazuj ce na danych): algorytm najbli»szego s siada Parametryczne(niezb dna identykacja parametryczna) liniowa (g(x i, a 0,..., a n ) = a 0 + a 1 g 1 (x) + a 2 g 2 (x) +... + a n g n (x)) wielomianowa (w tym w. liniowa, w. kwadratowa,...): g i (x) = x i trygonometryczna: g i (x) = e jix, nieliniowa np. wymierna: j = 1 g(x, a 0,..., a n, b 0,..., b m) = a0 + a1x + a2x 2 +... + a nx n b 0 + b 1x + b 2x 2 +... + b mx m funkcjami sklejanymi (ang. spline): w zªy interpolacji dziel przedziaª interpolacji na podprzedziaªy; w ka»dym podprzedziale przybli»amy funkcje interpolowan wielomianem niskiego stopnia, np. n=3 (najpro±ciej - interpolacja liniowa - dla n=1)
Rodzaje interpolacji Nieparmetryczne(bazuj ce na danych): algorytm najbli»szego s siada Parametryczne(niezb dna identykacja parametryczna) liniowa (g(x i, a 0,..., a n ) = a 0 + a 1 g 1 (x) + a 2 g 2 (x) +... + a n g n (x)) wielomianowa (w tym w. liniowa, w. kwadratowa,...): g i (x) = x i trygonometryczna: g i (x) = e jix, nieliniowa np. wymierna: j = 1 g(x, a 0,..., a n, b 0,..., b m) = a0 + a1x + a2x 2 +... + a nx n b 0 + b 1x + b 2x 2 +... + b mx m funkcjami sklejanymi (ang. spline): w zªy interpolacji dziel przedziaª interpolacji na podprzedziaªy; w ka»dym podprzedziale przybli»amy funkcje interpolowan wielomianem niskiego stopnia, np. n=3 (najpro±ciej - interpolacja liniowa - dla n=1)
Interpolacja - Matlab Polecenie x - w zªy interpolacji, y - warto±ci w w zªach, yi = interp1(x,y,xi,metoda); xi - punkty, w których chcemy wyznaczy warto±ci po wykonaniu interpolacji, yi - warto±ci w punktach xi, Metoda - dost pne: nearest, linear,spline,pchip,cubic,v5cubic
Algorytm najbli»szego s siada Zasada post powania Je±li chcemy wyznaczy warto± y w nowym (nieb d cym w zªem interpolacji) punkcie x, to znajd¹ najbli»szy mu punkt w danych i przyjmij jego warto±. Wady i zalety nie trzeba budowa modelu - maªy nakªad obliczeniowy wykorzystywana w przypadku interpolacji wielowymiarowej maªo realistyczne zaªo»enie o lokalnej niezmienno±ci zjawisk
Algorytm najbli»szego s siada Zasada post powania Je±li chcemy wyznaczy warto± y w nowym (nieb d cym w zªem interpolacji) punkcie x, to znajd¹ najbli»szy mu punkt w danych i przyjmij jego warto±. Wady i zalety nie trzeba budowa modelu - maªy nakªad obliczeniowy wykorzystywana w przypadku interpolacji wielowymiarowej maªo realistyczne zaªo»enie o lokalnej niezmienno±ci zjawisk
Interpolacja metod najbli»szego s siada 2600 2400 2200 2000 1800 1600 1400 1200 2000 2001 2002 2003 2004 2005
Interpolacja liniowa Zasada post powania Warto± y punkcie x le»y na prostej ª cz cej warto±ci w w zªach, pomi dzy którymi le»y x. Denicja matematyczna dla x a x x b y = y a + (x x a )(y b y a ) x b x a
Interpolacja liniowa Zasada post powania Warto± y punkcie x le»y na prostej ª cz cej warto±ci w w zªach, pomi dzy którymi le»y x. Denicja matematyczna dla x a x x b y = y a + (x x a )(y b y a ) x b x a
Interpolacja liniowa 2600 2400 2200 2000 1800 1600 1400 1200 2000 2001 2002 2003 2004 2005
Interpolacja liniowa Wady i zalety najprostszy z grupy modeli wielomianowych nie trzeba estymowa parametrów - bardzo szybkie obliczenia nieró»niczkowalno± funkcji interpoluj cej w w zªach interpolacji zwykle powoduje du»e bª dy
Bª dy interpolacji - interpolacja liniowa Zaªó»my,»e istnieje zale»no± pomi dzy zmiennymi {x i, y i }, któr mo»na opisa za pomoc funkcji g : R R, tzn. y i = g(x i ), a która to funkcja posiada ci gª drug pochodn. Je±li mamy dane dwa s siednie w zªy interpolacji y a = g(x a ) oraz y b = g(x b ), bª d jaki mo»emy popeªni, chc c oszacowa warto± funkcji g( ) w punkcie x (x a, x b ) wynosi: gdzie C = 1/8 max g (x) x (x a,x b ) Wnioski y g(x ) C(x b x a ) 2, czym wi ksza odlegªo± mi dzy w zªami, tym wi kszy bª d (zale»no± kwadratowa)!!!
Bª dy interpolacji - interpolacja liniowa Zaªó»my,»e istnieje zale»no± pomi dzy zmiennymi {x i, y i }, któr mo»na opisa za pomoc funkcji g : R R, tzn. y i = g(x i ), a która to funkcja posiada ci gª drug pochodn. Je±li mamy dane dwa s siednie w zªy interpolacji y a = g(x a ) oraz y b = g(x b ), bª d jaki mo»emy popeªni, chc c oszacowa warto± funkcji g( ) w punkcie x (x a, x b ) wynosi: gdzie C = 1/8 max g (x) x (x a,x b ) Wnioski y g(x ) C(x b x a ) 2, czym wi ksza odlegªo± mi dzy w zªami, tym wi kszy bª d (zale»no± kwadratowa)!!!
Szacowanie bª du interpolacji liniowej Przykªad funkcja g(x) = x 2, g (x) = 2 w zªy interpolacji x a = 0, x b = 2, (y a = 0,y b = 4) Maksymalny bª d interpolacji liniowej wynosi zatem: C = 1 8 max x (x a,x b ) g (x) = 1 4 a wi c maksymalny bª d wynosi: y g(x) C(x b x a ) 2 = 1
Szacowanie bª du interpolacji liniowej 4.5 4 3.5 3 2.5 2 1.5 1 0.5 0 wezly interpolacji Funkcja interpolowana Interpolacja liniowa Blad interpolacji 0.5 0.5 0 0.5 1 1.5 2 2.5
Interpolacja wielomianowa Sformuªowanie problemu Maj c dane w zªy x 0, x 1,..., x n oraz odpowiadaj ce im warto±ci y 0, y 1,..., y n, znale¹ wielomian W m (x) = a 0 + a 1 x + a 2 x 2 +... + a m x m, taki»e W m (x i ) = y i, dla i = 0, 1,..., n. Twierdzenie (o jednoznaczno±ci interpolacji wielomianowej) Istnieje dokªadnie jeden wielomian interpolacyjny stopnia co najwy»ej n, który w punktach x 0, x 1,..., x n przyjmuje warto±ci y 0, y 1,..., y n.
Interpolacja wielomianowa Sformuªowanie problemu Maj c dane w zªy x 0, x 1,..., x n oraz odpowiadaj ce im warto±ci y 0, y 1,..., y n, znale¹ wielomian W m (x) = a 0 + a 1 x + a 2 x 2 +... + a m x m, taki»e W m (x i ) = y i, dla i = 0, 1,..., n. Twierdzenie (o jednoznaczno±ci interpolacji wielomianowej) Istnieje dokªadnie jeden wielomian interpolacyjny stopnia co najwy»ej n, który w punktach x 0, x 1,..., x n przyjmuje warto±ci y 0, y 1,..., y n.
Interpolacja wielomianowa - przykªad Przykªad Spróbujmy dopasowa wielomian stopnia pi tego, tj. do danych: W 5 (x) = a 0 + a 1 x + a 2 x 2 + a 3 x 3 + a 4 x 4 + a 5 x 5, i x i y i 0 2000 1537 1 2001 1546 2 2002 1479 3 2003 1552 4 2004 1968 5 2005 2567
Interpolacja wielomianowa - przykªad c.d. Przykªad c.d. Jak wyznaczy wspóªczynniki wielomianu {a i } 5 i=0? - wielomian musi przechodzi, przez dane punkty, czyli: a 0 + a 1 2000 + a 2 2000 2 + a 3 2000 3 + a 4 2000 4 + a 5 2000 5 = 1537 a 0 + a 1 2001 + a 2 2001 2 + a 3 2001 3 + a 4 2001 4 + a 5 2001 5 = 1546 a 0 + a 1 2002 + a 2 2002 2 + a 3 2002 3 + a 4 2002 4 + a 5 2002 5 = 1479 a 0 + a 1 2003 + a 2 2003 2 + a 3 2003 3 + a 4 2003 4 + a 5 2003 5 = 1552 a 0 + a 1 2004 + a 2 2004 2 + a 3 2004 3 + a 4 2004 4 + a 5 2004 5 = 1968 a 0 + a 1 2005 + a 2 2005 2 + a 3 2005 3 + a 4 2005 4 + a 5 2005 5 = 2567, tzw. macierz Vandermonde'a.
Interpolacja wielomianowa - przykªad c.d. Przykªad c.d. Problem sprowadza si do rozwi zania ukªadu równa«liniowych, t.j. Xa = y, gdzie: X = 1 x 0 x 2 0 x 3 0 x 4 0 x 5 0 1 x 1 x 2 1 x 3 1 x 4 1 x 5 1 1 x 2 x 2 2 x 3 2 x 4 2 x 5 2 1 x 3 x 2 3 x 3 3 x 4 3 x 5 3 1 x 4 x 2 4 x 3 4 x 4 4 x 5 4 1 x 5 x 2 5 x 3 5 x 4 5 x 5 5 a = a 0 a 1 a 2 a 3 a 4 a 5 y = y 0 y 1 y 2 y 3 y 4 y 5
Interpolacja wielomianowa - przykªad c.d. - rozwi zanie Przykªad c.d. Ogólny sposób rozwi zywania ukªadów równa«liniowych: a = X 1 y, Matlab: X = vander(x); a = inv(x) * y; Rozwi zanie: 1537 52.25 a = 6.125 62.8333 28.6250 2.9167
Interpolacja wielomianowa - przykªad c.d. - wyniki 2600 2400 2200 2000 1800 1600 1400 1200 2000 2001 2002 2003 2004 2005
Interpolacja Lagrange'a Wprowadzenie Wielomian W n (x) mo»na przedstawi w alternatywnej postaci: W n (x) = y 0 Φ 0 (x) + y 1 Φ 1 (x) +... + y n Φ n (x), gdzie Φ j (x) s wielomianami stopnia co najwy»ej n. Rozwi zanie Φ j (x i ) = { 0, gdy j i 1, gdy j = i Inaczej: Φ j (x) = (x x 0)(x x 1 )... (x x j 1 )(x x j+1 )... (x x n ) (x j x 0 )(x j x 1 )... (x j x j 1 )(x j x j+1 )... (x j x n ), L n (x) = n y j Φ j (x) = j=0 n j=0 y j n i = 0 i j x x i x j x i
Interpolacja Lagrange'a Wprowadzenie Wielomian W n (x) mo»na przedstawi w alternatywnej postaci: W n (x) = y 0 Φ 0 (x) + y 1 Φ 1 (x) +... + y n Φ n (x), gdzie Φ j (x) s wielomianami stopnia co najwy»ej n. Rozwi zanie Φ j (x i ) = { 0, gdy j i 1, gdy j = i Inaczej: Φ j (x) = (x x 0)(x x 1 )... (x x j 1 )(x x j+1 )... (x x n ) (x j x 0 )(x j x 1 )... (x j x j 1 )(x j x j+1 )... (x j x n ), L n (x) = n y j Φ j (x) = j=0 n j=0 y j n i = 0 i j x x i x j x i
Interpolacja Lagrange'a Wprowadzenie Wielomian W n (x) mo»na przedstawi w alternatywnej postaci: W n (x) = y 0 Φ 0 (x) + y 1 Φ 1 (x) +... + y n Φ n (x), gdzie Φ j (x) s wielomianami stopnia co najwy»ej n. Rozwi zanie Φ j (x i ) = { 0, gdy j i 1, gdy j = i Inaczej: Φ j (x) = (x x 0)(x x 1 )... (x x j 1 )(x x j+1 )... (x x n ) (x j x 0 )(x j x 1 )... (x j x j 1 )(x j x j+1 )... (x j x n ), L n (x) = n y j Φ j (x) = j=0 n j=0 y j n i = 0 i j x x i x j x i
Interpolacja Lagrange'a - przykªad Znale¹ wielomian interpolacyjny Lagrange'a dla danych: Zgodnie ze wzorem mamy: L 2 (x) = 2 y j Φ j (x) = j=0 2 j=0 i x i y i 0-1 2 1 1 0 2 3 2 y j 2 i = 0 i j 2 x 1 2 x 3 + 0 x + 1 4 2 } {{ } (j=0) 1 2 x2 x + 1 2 x x i x j x i = x 3 2 } {{ } (j=1) + 2 x + 1 4 x 1 2 } {{ } (j=2) =
Wzór interpolacyjny Newtona Iloraz ró»nicowy 1-go rz du: Iloraz ró»nicowy k-go rz du: f [x i, x i+1 ] = f (x i+1) f (x i ) x i+1 x i f [x i, x i+1,..., x i+k ] = f [x i+1, x i+2,..., x i+k ] f [x i, x i+1,..., x i+k 1 ] x i+k x i Ci g ilorazów ró»nicowych: x 0 f (x 0 ) f [x 0, x 1 ] x 1 f (x 1 ) f [x 0, x 1, x 2 ] f [x 1, x 2 ] x 2 f (x 2 )
Wzór interpolacyjny Newtona Wielomian interpolacyjny Newtona Q n (x) =f (x 0 ) + n j=1 j 1 f [x 0,..., x j ] (x x k ) = k=0 n 1 Q n 1 (x) + f [x 0,..., x n ] (x x k ) k=0 Przykªad - znale¹ wielomian interpolacyjny Newtona dla danych: i x i y i 0-1 2 1 1 0 2 3 2
Wzór interpolacyjny Newtona Wielomian interpolacyjny Newtona Q n (x) =f (x 0 ) + n j=1 j 1 f [x 0,..., x j ] (x x k ) = k=0 n 1 Q n 1 (x) + f [x 0,..., x n ] (x x k ) k=0 Przykªad - znale¹ wielomian interpolacyjny Newtona dla danych: i x i y i 0-1 2 1 1 0 2 3 2
Wielomian interpolacyjny Newtona - przykªad Zgodnie ze wzorem mamy: Q 2 (x) =f (x 0 ) + Ilorazy ró»nicowe: 2 j=1 j 1 f [x 0,..., x j ] (x x k ) = k=0 f (x 0 ) + f [x 0, x 1 ](x x 0 ) + f [x 0, x 1, x 2 ](x x 0 )(x x 1 ) Zatem: f [x 0, x 1 ] = f (x 1) f (x 0 ) x 1 x 0 = 0 2 1 + 1 = 1 f [x 1, x 2 ] = f (x 2) f (x 1 ) x 2 x 1 = 2 0 2 0 = 1 f [x 0, x 1, x 2 ] = f [x 1, x 2 ] f [x 0, x 1 ] x 2 x 0 = 1 + 1 3 + 1 = 1 2 Q 2 (x) = 2 1(x + 1) 1 2 (x + 1)(x 1) = 1 2 x2 x + 1 2
Wielomian interpolacyjny Newtona - przykªad Wersja iteracyjna: 1 Q 2 (x) = Q 1 (x) + f [x 0, x 1, x 2 ] (x x k ) = k=0 Q 1 (x) + f [x 0, x 1, x 2 ](x x 0 )(x x 1 ) 0 Q 1 (x) = Q 0 (x) + f [x 0, x 1 ] (x x k ) = k=0 Q 0 (x) + f [x 0, x 1 ](x x 0 ) Q 0 (x) = f (x 0 ) = 2 Zatem po podstawieniu: Q 1 (x) = 2 1(x + 1) = 1 x Q 2 (x) = (1 x) + 1 2 (x 1)(x + 1) = 1 2 x2 x + 1 2 Zaleta: po dodaniu nowego w zªa (x 3, f (x 3 )) mo»na wykorzysta Q 2 (x) 2 wystarczy doliczy f [x 0, x 1, x 2, x 3 ] (x x k ) k=0
Wielomian interpolacyjny Newtona - przykªad Wersja iteracyjna: 1 Q 2 (x) = Q 1 (x) + f [x 0, x 1, x 2 ] (x x k ) = k=0 Q 1 (x) + f [x 0, x 1, x 2 ](x x 0 )(x x 1 ) 0 Q 1 (x) = Q 0 (x) + f [x 0, x 1 ] (x x k ) = k=0 Q 0 (x) + f [x 0, x 1 ](x x 0 ) Q 0 (x) = f (x 0 ) = 2 Zatem po podstawieniu: Q 1 (x) = 2 1(x + 1) = 1 x Q 2 (x) = (1 x) + 1 2 (x 1)(x + 1) = 1 2 x2 x + 1 2 Zaleta: po dodaniu nowego w zªa (x 3, f (x 3 )) mo»na wykorzysta Q 2 (x) 2 wystarczy doliczy f [x 0, x 1, x 2, x 3 ] (x x k ) k=0
Bª dy interpolacji - interpolacja wielomianowa Zaªó»my,»e warto±ci y 0, y 1,..., y n dla w zªów interpolacji x 0, x 1,..., x n (z przedziaªu < a, b >) bior si z pewnej funkcji g : R R, t.j. g(x i ) = y i. Pytanie: jak dobrze wielomian interpolacyjny W n (x) przybli»a funkcj g(x) w przedziale < a, b >? Odpowied¹: g(x) W n (x) M n+1 ω n (x), gdzie M n+1 = sup g (n+1) (x), oraz ω n (x) = n (x x i ) x (x a,x b ) Bª d interpolacji - komentarz i=0 zale»y od postaci pochodnej interpolowanej funkcji, zale»y od funkcji ω n (x), czyli od rozmieszczenia w zªów interpolacji
Bª dy interpolacji - interpolacja wielomianowa Zaªó»my,»e warto±ci y 0, y 1,..., y n dla w zªów interpolacji x 0, x 1,..., x n (z przedziaªu < a, b >) bior si z pewnej funkcji g : R R, t.j. g(x i ) = y i. Pytanie: jak dobrze wielomian interpolacyjny W n (x) przybli»a funkcj g(x) w przedziale < a, b >? Odpowied¹: g(x) W n (x) M n+1 ω n (x), gdzie M n+1 = sup g (n+1) (x), oraz ω n (x) = n (x x i ) x (x a,x b ) Bª d interpolacji - komentarz i=0 zale»y od postaci pochodnej interpolowanej funkcji, zale»y od funkcji ω n (x), czyli od rozmieszczenia w zªów interpolacji
Bª dy interpolacji - interpolacja wielomianowa Zaªó»my,»e warto±ci y 0, y 1,..., y n dla w zªów interpolacji x 0, x 1,..., x n (z przedziaªu < a, b >) bior si z pewnej funkcji g : R R, t.j. g(x i ) = y i. Pytanie: jak dobrze wielomian interpolacyjny W n (x) przybli»a funkcj g(x) w przedziale < a, b >? Odpowied¹: g(x) W n (x) M n+1 ω n (x), gdzie M n+1 = sup g (n+1) (x), oraz ω n (x) = n (x x i ) x (x a,x b ) Bª d interpolacji - komentarz i=0 zale»y od postaci pochodnej interpolowanej funkcji, zale»y od funkcji ω n (x), czyli od rozmieszczenia w zªów interpolacji
Bª dy interpolacji wielomianowej Przykªad Z jak dokªadno±ci mo»na oszacowa warto± sin(1.885) maj c dane sin(0) = 0, sin(0.6283) = 0.5878, sin(2.3562) = 0.7071). Mamy dane: czyli: n = 2, < a, b >=< 0, 2.3562 > funkcja interpolowana g(x) = sin(x), g (3) (x) = cos(x), zatem M n+1 = 1 ω n (x) = (x 0)(x 0.6283)(x 2.3563) ω n (1.885) = 1.1165 W 2 (1.885) sin(1.885) 1.1165 6 = 0.1860
Bª dy interpolacji wielomianowej Przykªad Z jak dokªadno±ci mo»na oszacowa warto± sin(1.885) maj c dane sin(0) = 0, sin(0.6283) = 0.5878, sin(2.3562) = 0.7071). Mamy dane: czyli: n = 2, < a, b >=< 0, 2.3562 > funkcja interpolowana g(x) = sin(x), g (3) (x) = cos(x), zatem M n+1 = 1 ω n (x) = (x 0)(x 0.6283)(x 2.3563) ω n (1.885) = 1.1165 W 2 (1.885) sin(1.885) 1.1165 6 = 0.1860
Bª dy interpolacji wielomianowej - przykªad Bª d w rzeczywisto±ci W 2 (1.885) sin(1.885) = 0.0587 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 wezly interpolacji szukana wartosc wielomian interpolacyjny blad interpolacji 0 0 0.5 1 1.5 2 2.5 3
Interpolacja za pomoc funkcji sklejanych Interpolacja za pomoc wielomianów: rz d wielomianu interpolacyjnego zazwyczaj musi by równy liczbie w zªów...... co dla du»ej ilo±ci w zªów (wysokich stopni wielomianu interpolacyjnego) prowadzi mo»e do du»ych bªedów macierz Vandermonada zwykle ¹le uwarunkowana wielomiany nie nadaj si do szacowania warto±ci poza granicami przedziaªu z którego pochodz w zªy interpolacyjne. Pytanie: czy nie mo»na inaczej? Funkcje sklejane - idea Zamiast stosowa wielomian wysokiego rz du do interpolacji punktów, mo»na zastosowa kilka wielomianów stopnia ni»szego.
Interpolacja za pomoc funkcji sklejanych Interpolacja za pomoc wielomianów: rz d wielomianu interpolacyjnego zazwyczaj musi by równy liczbie w zªów...... co dla du»ej ilo±ci w zªów (wysokich stopni wielomianu interpolacyjnego) prowadzi mo»e do du»ych bªedów macierz Vandermonada zwykle ¹le uwarunkowana wielomiany nie nadaj si do szacowania warto±ci poza granicami przedziaªu z którego pochodz w zªy interpolacyjne. Pytanie: czy nie mo»na inaczej? Funkcje sklejane - idea Zamiast stosowa wielomian wysokiego rz du do interpolacji punktów, mo»na zastosowa kilka wielomianów stopnia ni»szego.
Interpolacja za pomoc funkcji sklejanych Interpolacja za pomoc wielomianów: rz d wielomianu interpolacyjnego zazwyczaj musi by równy liczbie w zªów...... co dla du»ej ilo±ci w zªów (wysokich stopni wielomianu interpolacyjnego) prowadzi mo»e do du»ych bªedów macierz Vandermonada zwykle ¹le uwarunkowana wielomiany nie nadaj si do szacowania warto±ci poza granicami przedziaªu z którego pochodz w zªy interpolacyjne. Pytanie: czy nie mo»na inaczej? Funkcje sklejane - idea Zamiast stosowa wielomian wysokiego rz du do interpolacji punktów, mo»na zastosowa kilka wielomianów stopnia ni»szego.
Interpolacja za pomoc funkcji sklejanych Denicja funkcji sklejanej Nie b dzie dany przedziaª < a, b > oraz zestaw punktów x 0, x 1,..., x n, takich»e: a = x 0 < x 1 <... < x n 1 < x n = b. Oznaczmy przez n podziaª ustanowiony przez punkty {x i } n i=0. Funkcj s(x) = s(x, n ) nazywamy funkcj sklejan stopnia m 1, je±li: 1) s(x) jest wielomianem stopnia co najwy»ej m w ka»dym podprzedziale (x i, x i+1 ), i = 0, 1,..., n 1, 2) s(x) C m 1 dla x < a, b >.
Interpolacja za pomoc funkcji sklejanych Denicja funkcji sklejanej Nie b dzie dany przedziaª < a, b > oraz zestaw punktów x 0, x 1,..., x n, takich»e: a = x 0 < x 1 <... < x n 1 < x n = b. Oznaczmy przez n podziaª ustanowiony przez punkty {x i } n i=0. Funkcj s(x) = s(x, n ) nazywamy funkcj sklejan stopnia m 1, je±li: 1) s(x) jest wielomianem stopnia co najwy»ej m w ka»dym podprzedziale (x i, x i+1 ), i = 0, 1,..., n 1, 2) s(x) C m 1 dla x < a, b >.
Interpolacja za pomoc funkcji sklejanych Denicja funkcji sklejanej Nie b dzie dany przedziaª < a, b > oraz zestaw punktów x 0, x 1,..., x n, takich»e: a = x 0 < x 1 <... < x n 1 < x n = b. Oznaczmy przez n podziaª ustanowiony przez punkty {x i } n i=0. Funkcj s(x) = s(x, n ) nazywamy funkcj sklejan stopnia m 1, je±li: 1) s(x) jest wielomianem stopnia co najwy»ej m w ka»dym podprzedziale (x i, x i+1 ), i = 0, 1,..., n 1, 2) s(x) C m 1 dla x < a, b >.
Funkcje sklejane stopnia trzeciego (m = 3) s 0 (x) = c 0,3 x 3 + c 0,2 x 2 + c 0,1 x + c 0,0 s 1 (x) = c 1,3 x 3 + c 1,2 x 2 + c 1,1 x + c 1,0 s 2 (x) = c 2,3 x 3 + c 2,2 x 2 + c 2,1 x + c 2,0 s 3 (x) = c 3,3 x 3 + c 3,2 x 2 + c 3,1 x + c 3,0
Funkcje sklejane stopnia trzeciego (m = 3) Komentarz 1 Mamy dokªadnie n(m + 1) = 4n parametrów opisuj cych krzyw. Komentarz 2 Warunek w denicji funkcji sklejanej: s(x) C 2 dla x < a, b >, Oznacza to,»e druga pochodna funkcji s(x) musi by funkcj liniow w ka»dym podprzedziale < x i, x i+1 >, i = 0, 1,..., n 1.
Funkcje sklejane stopnia trzeciego (m = 3) Wyznaczanie parametrów warto±ci w w zªach zewn trznych speªniaj warunek interpolacji: s 0 (x 0 ) = f (x 0 ), s n 1 (x n ) = f (x n ) warto±ci 2-gich pochodnych w w zªach zewn trznych speªniaj warunek naturalno±ci: s 0 (x 0 ) = s n 1(x n ) = 0 w w zªach wewn trznych warto±ci funkcji s równe: s i 1 (x i ) = s i (x i ) = f (x i ), i = 1, 2,..., n 1 w w zªach wewn trznych warto±ci pierwszych pochodnych s równe: s i 1(x i ) = s i (x i ), i = 1, 2,..., n 1 w w zªach wewn trznych warto±ci drugich pochodnych s równe: Š cznie mamy 4n równa«s i 1(x i ) = s i (x i ), i = 1, 2,..., n 1
Funkcje sklejane - przykªad Dokona interpolacji funkcjami sklejanymi stopnia 3 dla danych: i x i y i 0 1-1 1 3 0 2 4 4 3 6 2 4 7 5
Funkcje sklejane - przykªad - wyniki 20 15 10 y 5 0 5 0 1 2 3 4 5 6 7 8 x