Interpolacja funkcji Interpolacja funkcji
Interpolacja funkcji Wielomianowa Splajny Lagrange a Trygonometryczna Interpolacja Newtona (wzór I ) Czebyszewa Newtona (wzór II )
( Wielomiany Czebyszewa ) Załóżmy, że wartości argumentów funkcji interpolowanej mieszczą się w przedziale [-, ]. Postulat ten nie ogranicza możliwości wykorzystania wzoru interpolacyjnego Czebyszewa, ponieważ dowolny przedział argumentów [a, b] poprzez podstawienie a+ b b a x = + normalizuje się do przedziału [-, ]. x 3
Przykład: Zbiór węzłów: po podstawieniu: x = 4, x = 6, x = 7, x = 0 0 3 a+ b b a x = + x= 7+ 3x sprowadza się do zbioru: x0 =, x =, x = 0, x3 = 3 4
Funkcje bazowe (tzw. bazę Czebyszewa) stanowi zbiór wielomianów określonych wzorem rekurencyjnym: T ( x) =, 0 T( x) = x, T ( x) = x T ( x) T ( x) k+ k k 5
Kilka pierwszych funkcji bazowych określonych wzorem rekurencyjnym wygląda następująco: T ( x) = 0 T( x) x ( ) x T x = = T x = x x 3 3( ) 4 3 T x = x x + 4 4( ) 8 8 6
Współczynniki wzoru interpolacyjnego Czebyszewa wynikają z układu równań: T0( x0) T( x0) Tn ( x0) a0 y0 T0( x) T( x) Tn ( x) a y = T ( x ) T( x ) T ( x ) a y 0 n n n n n n 7
Przykład: Dla zbioru punktów (węzłów) : (-0.5, 0.5), (0, 0), (, ) wyznaczyć wielomian interpolacyjny Czebyszewa. Jest to wielomian stopnia drugiego w postaci: W( x) = a T ( x) + at( x) + a T ( x) 0 0 czyli: W x a a x a x ( ) = 0 + + ( ) 8
Przykład c.d. : Układ równań sprowadza się do następującego: 0.5 0.5 a0 0.5 0 a = 0 a skąd otrzymujemy: a = 0.5, a = 0, a = 0.5 0 W( x) = 0.5+ 0.5 (x ) = x 9
UWAGA! Przy dowolnym doborze węzłów x, i= 0,,..., n, x [,] i błąd zaokrągleń związanych z procedurą odwracania macierzy X jest istotnie mniejszy niż w przypadku interpolacji wielomianami w postaci naturalnej. i 0
Przyjęcie siatki węzłów wynikającej z zależności (i + ) π xi = cos, i= 0,,..., n n + oraz nieco zmodyfikowanej bazy,,, 4 3 x x x 3 x,... Φ= prowadzi do macierzy X, dla której macierz odwrotną można obliczyć w bardzo prosty sposób X = X n + T
Interpolacja trygonometryczna Wielomianem interpolacyjnym w tym przypadku będzie więc suma w postaci: W( x) = a T ( x) + a T( x) + a T ( x) + a T ( x) +... czyli: 0 0 3 3 a W x a x a x a x x ( ) ( 3 ) 0 ( ) = + + + 3 4 3 +... zawierająca n+ nieznanych parametrów.
Przykład: W przedziale [-, ] wybieramy cztery węzły interpolacji: x 0, x, x, x 3 ( n = 3 ) w ten sposób, że x Otrzymujemy: i (i + ) π (i + ) π = cos = cos n + 8 x = 0.94, x = 0.383, x = 0.383, x = 0.94 0 3 3
Przykład c.d. : Załóżmy, że wartości funkcji f(x) w tych węzłach wynoszą: y =.4, y =.70, y = 3.885, y = 6.9 0 3 Bazę interpolacji stanowi zbiór wielomianów: T0 ( x) =, T( x) = x, ( ) x, T x = T x = x x 3 3( ) 4 3 4
Przykład c.d. : Macierz X: X 0.707 0.94 0.707 0.383 0.707 0.383 0.707 0.94 = 0.707 0.383 0.707 0.94 0.707 0.94 0.707 0.383 5
Przykład c.d. : Macierz odwrotna: X 0.345 0.354 0.354 0.354 0.46 0.9 0.9 0.46 = X = 0.354 0.354 0.354 0.354 0.9 0.46 0.46 0.9 T 6
Przykład c.d. : skąd po obliczeniu otrzymujemy wartości współczynników: a = 4.95, a =.5, a =, a = 0.5 0 3 Postać wielomianu jest następująca: W x x x x x 3 ( ) = 4.95.5 + ( ) + 0.5(4 3 ) Po uproszczeniu otrzymujemy: W x x x x 3 ( ) = + 3 +.5 7
Interpolacja trygonometryczna Interpolacja trygonometryczna Rozważać będziemy ciągłą i okresową funkcję f(x) o okresie π, dla której znamy zbiór jej wartości w n+ węzłach. Jako bazę interpolacji przyjmujemy zbiór funkcji trygonometrycznych: Φ=, sin( x ), cos( x ), sin( x ), cos( x ),, sin(n x ), cos(n x ) 8
Interpolacja trygonometryczna Wielomianem interpolacyjnym w tym przypadku będzie więc suma w postaci: a0 W( x) = + bsin( x) + acos( x) + + b sin( x) + a cos( x) + + + b sin(n x) + a cos(n x) n zawierająca n+ nieznanych parametrów. n 9
Interpolacja trygonometryczna Najbardziej istotny dla praktyki jest przypadek interpolacji funkcji określonej na zbiorze równoodległych węzłów x [0, π ] dobranych w następujący sposób: iπ xi =, i= 0,,..., n n + i czyli: π 4nπ x0 = 0, x =,..., xn = n + n + 0
Interpolacja trygonometryczna Warunek interpolacji prowadzi do układu równań 0... 0 a0 y0 sin( x) cos( x)... sin( nx) cos( nx) b y =.................. an yn sin( xn) cos( xn)... sin( nxn) cos( nxn) Współczynniki pierwszego wiersza macierzy X wynikają z wartości funkcji sin(kx) i cos(kx) dla x 0 =0.
Interpolacja trygonometryczna Przedstawiony układ równań dla odpowiednio dobranych węzłów interpolacji rozwiązuje się natychmiastowo, ponieważ macierz odwrotną można obliczyć w bardzo prosty sposób: X X n + T =
Interpolacja trygonometryczna Przykład: Zbiór następujących węzłów przybliżyć wielomianem trygonometrycznym (n=3): 3 4 5 6 7 x 0 0,898,795,693 3,590 4,488 5,386 y 0 5,478 9,344,598,4,74 8,695 Współrzędne x dla węzłów obliczono ze wzoru: x i = iπ n + 3
Interpolacja trygonometryczna Przykład c.d. : Bazę interpolacji stanowi zbiór funkcji: Φ=, sin( x ), cos( x ), sin( x ), cos( x ), sin(3 x ), cos(3 x ) 4
Interpolacja trygonometryczna Przykład c.d. : Tworzymy macierz X, której postać wynikowa jest następująca : X 0.707 0 0 0 0.707 0.78 0.63 0.975 0.3 0.434 0.90 0.707 0.975 0.3 0.434 0.90 0.78 0.63 = 0.707 0.434 0.90 0.78 0.63 0.975 0.3 0.707 0.434 0.90 0.78 0.63 0.975 0.3 0.707 0.975 0.3 0.434 0.90 0.78 0.63 0.707 0.78 0.63 0.975 0.3 0.434 0.90 5
Interpolacja trygonometryczna Przykład c.d. : Elementy macierzy X mnożymy przez / 7, otrzymaną macierz transponujemy i obliczamy współczynniki wzoru interpolacyjnego: a b b b 0 =.845, =.336, a = 4.93, = 0.53, a =.96, = 0.47, a =.49 3 3 6