Projekt 1 -Interpolacja-Aproksymacja

Transkrypt

Projekt 1 -Interpolacja-Aproksymacja
Informatyka Podstawy Programowania
2016/2017
Projekt 1
1. Aproksymacja - Interpolacja.
1.1 Podstawowe definicje.
Niech x = {xi : i = 1,..., n} gdzie n – liczba punktów znajdujących się w przedziale [ a, b] .
Załóżmy, że dla każdego xi należącego do zbioru X znamy odpowiadające mu yi ∈ R oraz,
że rezultat eksperymentu lub wartość numeryczna dana jest w postaci macierzy.
Oznaczmy D = {( xi , yi ) / xi ∈ X , yi ∈ Y } . Chcielibyśmy określić funkcję, która można wyrazić
w postaci y = f ( x ) . Niech g będzie tą funkcją i G = {( xi , g ( xi ) / xi ∈ X } .
Zachodzą dwie możliwości :
1) Szukamy takiej funkcji g w sposób wstępnie wybrany, że dystans pomiędzy D i G jest
minimalny. Taki proces nazywamy aproksymacją.
2) Szukamy g w taki sposób, że D=G. Taki proces nazywamy interpolacją.
Funkcja g jest najczęściej poszukiwana w formie :
g ( x ) = a1 g1 ( x ) + a2 g 2 ( x ) + a3 g3 ( x ) + + an g n ( x )
(1.1)
Gdzie: g k ( x ) są funkcjami wybieranymi najczęściej z klasy :
1. klasy jednomianów x k ,
2. klasy funkcji trygonometrycznych: cos(kx), sin(kx),
3. klasy funkcji ekspotencjalnych np. e kx , e − kx
ad.1
W przypadku sumy jednomianów funkcja g ma postać:
g ( x ) = an x n + an−1 x n−1 + L + a1 x + a0
(1.2)
ad.2
W przypadku funkcji trygonometrycznych funkcja g wyraża się sumą szeregu tych funkcji w
postaci:
g ( x ) = c + a1 cos ( x ) + a2 cos ( 2 x ) + L + an cos ( nx ) + b1 sin ( x ) + L + bn sin ( nx )
(1.3)
ad.3
W przypadku funkcji ekspotencjalnych funkcja g ma odpowiednio postać:
1
Informatyka Podstawy Programowania
g ( x ) = a0 + a1ek1x + b1e− k1x + a2ek2 x + b2 e− k2 x + L + an ekn x + bn e− kn x
2016/2017
(1.4)
Możemy poszukiwać również g w postaci ułamków wymiernych:
g ( x) =
an x n + an −1 x n −1 + L + a1 x + a0
bm x m + bm −1 x m −1 + L + b1 x + b0
(1.5)
Aproksymacja lub interpolacja funkcji przy pomocy wielomianów jest najczęściej spotykaną
gdyż wielomiany są łatwo różniczkowalne i łatwo określić przy ich pomocy przestrzeń
wektorową.
W przypadku funkcji periodycznych korzystamy z wielomianów trygonometrycznych.
1.2 Wielomiany interpolacyjne
Interpolacja wielomianowa przy zastosowaniu wielomianów ortogonalnych.
Rozważmy kilka typów wielomianów ortogonalnych ze współczynnikami rzeczywistymi.
Niech P będzie rodziną wielomianów Pn .. Ta rodzina będzie ortogonalna względem funkcjiwagi w danej na przedziale [ a, b] , jeżeli
b
∫ w ( x )P ( x ) P ( x ) dx = 0 dla wszystkich n, m; n ≠ m
m
n
(1.6)
dx = c ( n ) gdzie c jest stalą i zależy od n
(1.7)
a
b
∫ w ( x ) ( P ( x ))
m
2
a
1.3 Przykłady wielomianów interpolacyjnych
1.3.1 Wielomian Legendre’a rzędu n jest definiowany przez:
n
1 dn 2
x − 1) , x ∈ [ −1,1] , P0 ( x ) = 1
n
n (
2 n ! dx
Pierwsze człony wielomianu są następujące:
Pn ( x ) =
P0 ( x ) = 1
P1 ( x ) = x
P2 ( x ) = ( x 2 − 1)
P3 ( x ) = ( 5 x 3 − 3 x )
P4 ( x ) = ( 35 x 4 − 30 x + 3)
P5 ( x ) = ( 63 x 5 − 70 x3 + 15 x )
Można określić poszczególne człony wielomianu formułą rekurencyjną:
2
(1.8)
Informatyka Podstawy Programowania
2016/2017
P0 ( x ) = 1; P1 ( x ) = x;
Pn ( x ) =
2n − 1
n −1
xPn −1 ( x ) −
Pn − 2 ( x )
n
n
(1.9)
Rodzina wielomianów Legendre’a jest ortogonalna względem funkcji wagi w ( x ) = 1 w
przedziale [ −1,1] więc:
b
∫
Pm ( x ) Pn ( x ) dx = 0 ; n ≠ m
a
b
∫ ( P ( x ))
n
(1.10)
2
dx = 0 dla n ≠ 0
a
Wielomian Legendre’a Pn(x) posiada oczywiście n pierwiastków w przedziale [ −1,1] .
1.3.2 Wielomian Laguerre’a rzędu n jest zdefiniowany przez:
Ln ( x ) = e x
d n −x n
( e x ) , x ∈ [0, ∞[
dx n
(1.11)
Pierwsze wyrazy wielomianu Laguerre’a są następujące :
L0 ( x ) = 1
L1 ( x ) = x + 1
L2 ( x ) = x 2 − 4 x + 2
L3 ( x ) = − x3 + 9 x 2 − 18 x + 6
L4 ( x ) = x 4 − 16 x3 + 72 x 2 − 96 x + 24
Podobnie jak w przypadku wielomianu Legendre’a można określić poszczególne człony
wielomianu Laguerre’a formułą rekurencyjną w postaci:
L0 ( x ) = 1; L1 ( x ) = − x + 1;
Ln ( x ) = ( 2n − x − 1) Ln −1 − ( n − 1) Ln − 2 ( x )
2
(1.12)
Rodzina wielomianów Leguerre’a jest ortogonalna do funkcji wagi w ( x ) = e − x w przedziale
[0, x[
3
więc:
Informatyka Podstawy Programowania
∞
∫e
−x
2016/2017
Ln ( x ) Lm ( x ) dx = 0 dla n ≠ m
0
(1.13)
2
∞
∫ ( L ( x ) ) dx = ( n !)
dla n ≠ 0
2
n
0
1.3.2 Wielomian Hermite’a definiuje się następująco:
H n ( x ) = ( −1) e x
n
2
( )
d n − x2
e
; x ∈ ]−∞, ∞[
dx n
z funkcją wagi w ( x ) = e
(1.14)
− x2
1.3.4 Wielomian Tchebycheva
Tn ( x ) = cos ( n arccos ( x ) ) ; x ∈ [ −1,1]
z funkcją wagi w ( x ) =
1
1 − x2
Tn ( x) = cos( n arccos( x)) x∈[-1,1]
Z funkcją wagi :
w( x) =
4
1
1− x2
(1.15)

Podobne dokumenty