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 − x
w
j
( x) = X f
Y
iLi( x)
gdzie Li( x) =
x
i=0
j=0 , j6= i
i − xj
W naszym przypadku mamy
x 0 = − 2 , x 1 = − 1 , x 2 = 1 , x 3 = 2
f 0 = − 3 , f 1 = 3 , f 2 = 3 , f 3 = 3
Obliczymy najpierw wielomiany Li, i = 0 , 1 , 2 , 3
( x − x
( x + 1)( x − 1)( x − 2) 1
L
1)( x − x 2)( x − x 3)
0( x) =
=
= −
( x 3 − 2 x 2 −x+1) ( x 0 − x 1)( x 0 − x 2)( x 0 − x 3)
− 12
12
( x − x
( x + 2)( x − 1)( x − 2) 1
L
0)( x − x 2)( x − x 3)
1( x) =
=
=
( x 3 − x 2 − 4 x + 4) ( x 1 − x 0)( x 1 − x 2)( x 1 − x 3) 6
6
( x − x
( x + 2)( x + 1)( x − 2) 1
L
0)( x − x 1)( x − x 3)
2( x) =
=
= − ( x 3 −x 2 − 4 x− 4) ( x 2 − x 0)( x 2 − x 1)( x 2 − x 3)
− 6
6
( x − x
( x + 2)( x + 1)( x − 1) 1
L
0)( x − x 1)( x − x 2)
3( x) =
=
=
( x 3 + 2 x 2 − x − 2)
( x 3 − x 0)( x 3 − x 1)( x 3 − x 2) 12
12
Zatem szukany wielomian ma postać
1
1
w( x) =
x 3 − x 2 −
x + 4
2
2
Znaleźć 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ęźle ( xi, fi) nazywamy liczbę fi Ilorazem różnicowym rzędu k opartym na węzłach ( xi , f ) , . . . , ( x , f ) nazywamy 0
i 0
ik
ik
liczbę
fi
− fi
f
1 i 2 ...ik
0 i 1 ...ik− 1
i
=
0 i 1 ...ik
xi − x
k
i 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) = f 0 + f 01( x − x 0) + f 012( x − x 0)( x − x 1) + . . . + f 01 ...n( x − x 0) . . . ( x − xn− 1) W naszym przypadku mamy n = 3 oraz
x 0 = − 1 , x 1 = 0 , x 2 = 1 , x 3 = 2
f 0 = − 4 , f 1 = − 1 , f 2 = 0 , f 3 = 5
Obliczmy najpierw współczynniki f 01 , f 12 , f 23 , f 012 , f 123 , f 0123
f
f
f
f
1 − f 0
2 − f 1
3 − f 2
01 =
= 3
f 12 =
= 1
f 23 =
= 5
x 1 − x 0
x 2 − x 1
x 3 − x 2
f
f
f
12 − f 01
23 − f 12
012 =
= − 1
f 123 =
= 2
x 2 − x 0
x 3 − x 1
f
f
123 − f 012
0123 =
= 1
x 3 − x 0
Wobec tego szukany wielomian interpolacyjny w( x) ma postać w( x) = − 4 + 3( x + 1) − x( x + 1) + x( x + 1)( x − 1) = x 3 − x 2 + x − 1
Znaleźć wielomian interpolacyjny mając dane węzły: (0 , 1) , (1 , 2) , (2 , 4) Ponieważ punkty x 0 , x 1 , x 2 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 = x 0 + ih dla i = 1 , . . . , n. Przedstawiając x = x 0 + th dla pewnego t ∈ R otrzymujemy wielomian interpolacyjny w postaci Newtona
n
∆ kf ( x
w
0)
( x) = w( x
X
0 + th) =
· pk( t)
k!
k=0
gdzie ∆ kf ( x 0) jest funkcją (zwaną różnicą progresywną) określoną wzorami
∆0 f ( x 0) = f ( x 0)
∆ k+1 = ∆ kf ( x 0 + h) − ∆ kf ( x 0) natomiast pk( t), są wielomianami zdefiniowanymi w następujący sposób k− 1
p
Y
0( t) = 1
pk( t) = t( t − 1) . . . ( t − ( k − 1)) =
( t − j)
j=0
W naszym zadaniu mamy x 0 = 0 , h = 1 , n + 2. Obliczymy najpierw kolejne różnice progresywne
∆0 f ( x 0) = f ( x 0) = 1
∆1 f ( x 0) = ∆0 f ( x 0 + h) − ∆0 f ( x 0) = f ( x 1) − f ( x 0) = 1
∆2 f ( x 0) = ∆1 f ( x 0 + h) − ∆1 f ( x 0) = ∆0 f ( x 0 + 2 h) − ∆0 f ( x 0 + h) − 1 = 1
Zatem szukany wielomian ma postać
1
1
1
w( x 0 + th) = 1 + t + t( t − 1) = t 2 + t + 1
2
2
2
x − x
x
0
= x 0 + th
⇒
t =
= x
h
Ostatecznie zatem
1
1
w( x) =
x 2 +
x + 1
2
2
Znaleźć wielomian interpolacyjny mając dane punkty węzłowe (0 , 1) , (1 , 1) , (2 , 5) , (3 , 21) Mamy x 0 = 0 , h = 1 , n = 3 oraz
∆0 f ( x 0) = f ( x 0) = 1
∆1 f ( x 0) = ∆0 f ( x 0 + h) − ∆0 f ( x 0) = f ( x 1) − f ( x 0) = 0
∆2 f ( x 0) = ∆1 f ( x 0 + h) − ∆1 f ( x 0) = ∆0 f ( x 0 + 2 h) − ∆0 f ( x 0 + h) = 4
∆3 f ( x 0) = ∆2 f ( x 0 + h) − ∆2 f ( x 0) = ∆1 f ( x 0 + 2 h) − ∆1 f ( x 0 + h) − 4 =
= ∆0 f ( x 0 + 3 h) − 2∆0 f ( x 0 + 2 h) + ∆0 f ( x 0 + h) − 4 = 8
Zatem wilomian interpolacyjny ma postać
4
2
4
2
w( x 0 + th) = t 3 − 2 t 2 + t + 1
⇒
w( x) =
x 3 − 2 x 2 +
x + 1
3
3
3
3
GRZEGORZ GIERLASIŃ SKI