[ Pobierz całość w formacie PDF ]
Interpolacja Lagrange a
Wyznaczyć wielomian interpolacyjny mając dane węzły
(-2, -3), (-1, 3), (1, 3), (2, 3)
W przypadku ogólnym mając dane n + 1 punktów węzłowych (xi, fi) i = 0, . . . , n
szukany wielomian interpolacyjny jest postaci
n n
x - xj
w(x) = fiLi(x) gdzie Li(x) =
xi - xj
i=0 j=0, j=i
W naszym przypadku mamy
x0 = -2, x1 = -1, x2 = 1, x3 = 2
f0 = -3, f1 = 3, f2 = 3, f3 = 3
Obliczymy najpierw wielomiany Li, i = 0, 1, 2, 3
(x - x1)(x - x2)(x - x3) (x + 1)(x - 1)(x - 2) 1
L0(x) = = = - (x3-2x2-x+1)
(x0 - x1)(x0 - x2)(x0 - x3) -12 12
(x - x0)(x - x2)(x - x3) (x + 2)(x - 1)(x - 2) 1
L1(x) = = = (x3 - x2 - 4x + 4)
(x1 - x0)(x1 - x2)(x1 - x3) 6 6
(x - x0)(x - x1)(x - x3) (x + 2)(x + 1)(x - 2) 1
L2(x) = = = - (x3-x2-4x-4)
(x2 - x0)(x2 - x1)(x2 - x3) -6 6
(x - x0)(x - x1)(x - x2) (x + 2)(x + 1)(x - 1) 1
L3(x) = = = (x3 +2x2 -x-2)
(x3 - x0)(x3 - x1)(x3 - x2) 12 12
Zatem szukany wielomian ma postać
1 1
w(x) = x3 - x2 - x + 4
2 2
Znalezć wielomian interpolacyjny mając dane węzły
(-1, -4), (0, -1), (1, 0), (2, 5)
Skorzystamy z metody wykorzystującej tzw. ilorazy różnicowe.
Ilorazem różnicowym rzędu zerowego opartym na węzle (xi, fi) nazywamy liczbę fi
Ilorazem różnicowym rzędu k opartym na węzłach (xi , fi ), . . . , (xi , fi ) nazywamy
0 0 k k
liczbę
fi i2...ik - fi i1...ik-1
1 0
fi i1...ik =
xi - xi
k 0
Wówczas w ogólnym przypadku mając zadane węzły (xi, fi), i = 0, . . . , n wielomian
interpolacyjny w(x) ma postać Newtona
w(x) = f0 + f01(x - x0) + f012(x - x0)(x - x1) + . . . + f01...n(x - x0) . . . (x - xn-1)
W naszym przypadku mamy n = 3 oraz
x0 = -1, x1 = 0, x2 = 1, x3 = 2
f0 = -4, f1 = -1, f2 = 0, f3 = 5
Obliczmy najpierw współczynniki f01, f12, f23, f012, f123, f0123
f1 - f0 f2 - f1 f3 - f2
f01 = = 3 f12 = = 1 f23 = = 5
x1 - x0 x2 - x1 x3 - x2
f12 - f01 f23 - f12
f012 = = -1 f123 = = 2
x2 - x0 x3 - x1
f123 - f012
f0123 = = 1
x3 - x0
Wobec tego szukany wielomian interpolacyjny w(x) ma postać
w(x) = -4 + 3(x + 1) - x(x + 1) + x(x + 1)(x - 1) = x3 - x2 + x - 1
Znalezć wielomian interpolacyjny mając dane węzły:
(0, 1), (1, 2), (2, 4)
Ponieważ punkty x0, x1, x2 są równoodległe użyjemy metody wykorzystującej ten
fakt.
Mając dane węzły (xi, fi), i = 0, . . . , n istnieje takie h " R, że xi = x0 + ih dla
i = 1, . . . , n. Przedstawiając x = x0 + th dla pewnego t " R otrzymujemy wielomian
interpolacyjny w postaci Newtona
n
"kf(x0)
w(x) = w(x0 + th) = pk(t)
k!
k=0
gdzie "kf(x0) jest funkcją (zwaną różnicą progresywną) określoną wzorami
"0f(x0) = f(x0) "k+1 = "kf(x0 + h) - "kf(x0)
natomiast pk(t), są wielomianami zdefiniowanymi w następujący sposób
k-1
p0(t) = 1 pk(t) = t(t - 1) . . . (t - (k - 1)) = (t - j)
j=0
W naszym zadaniu mamy x0 = 0, h = 1, n + 2. Obliczymy najpierw kolejne różnice
progresywne
"0f(x0) = f(x0) = 1 "1f(x0) = "0f(x0 + h) - "0f(x0) = f(x1) - f(x0) = 1
"2f(x0) = "1f(x0 + h) - "1f(x0) = "0f(x0 + 2h) - "0f(x0 + h) - 1 = 1
Zatem szukany wielomian ma postać
1 1 1
w(x0 + th) = 1 + t + t(t - 1) = t2 + t + 1
2 2 2
x - x0
x = x0 + th ! t = = x
h
Ostatecznie zatem
1 1
w(x) = x2 + x + 1
2 2
Znalezć wielomian interpolacyjny mając dane punkty węzłowe
(0, 1), (1, 1), (2, 5), (3, 21)
Mamy x0 = 0, h = 1, n = 3 oraz
"0f(x0) = f(x0) = 1 "1f(x0) = "0f(x0 + h) - "0f(x0) = f(x1) - f(x0) = 0
"2f(x0) = "1f(x0 + h) - "1f(x0) = "0f(x0 + 2h) - "0f(x0 + h) = 4
"3f(x0) = "2f(x0 + h) - "2f(x0) = "1f(x0 + 2h) - "1f(x0 + h) - 4 =
= "0f(x0 + 3h) - 2"0f(x0 + 2h) + "0f(x0 + h) - 4 = 8
Zatem wilomian interpolacyjny ma postać
4 2 4 2
w(x0 + th) = t3 - 2t2 + t + 1 ! w(x) = x3 - 2x2 + x + 1
3 3 3 3
GRZEGORZ GIERLASICSKI
[ Pobierz całość w formacie PDF ]