• Nie Znaleziono Wyników

Metody numeryczne – Wykład 7 – Interpolacja wielomianowa

N/A
N/A
Protected

Academic year: 2021

Share "Metody numeryczne – Wykład 7 – Interpolacja wielomianowa"

Copied!
18
0
0

Pełen tekst

(1)

Metody numeryczne – Wykład 7 – Interpolacja wielomianowa

Marek Bazan

III rok - Elektronika

Semestr zimowy 2020/2021

(2)

Plan zajęć

1. Sformułowanie problemu 2. Wzór Lagrang´e’a

3. Błąd interpolacji 4. Wzór Newtona

5. Optymalny dobór węzłów interpolacji

(3)

Sformułowanie problemu

Na przedziale < a, b > danych jest n + 1 punktów x0, x1, . . . , xn – węzłów interpolacji – oraz wartości pewnej funkcji y = f (x ) w tych punktach tzn.

f (x0) = y0, f (x1) = y1, . . . , f (xn) = yn. Zadanie polega na wyznaczeniu wielomianu

wn(x ) = a0xn+ a1xn−1+ · · · + an−1x + an, a0 6= 0. (1) który spełnia

f (x0) = y0= wn(x0), f (x1) = y1 = wn(x1), . . . , f (xn) = yn= wn(xn).

(4)

Sformułowanie problemu

Rysunek:Przykład interpolacji funkcji sin(x ) w 4 punktach wielomianem w3(x ).

(5)

Dowód istnienia wielomianu interpolacyjnego

Twierdzenie 1 Istnieje dokładnie jeden wielomian interpolacyjny stopnia conajwyżej n (n ­ 0), który w punktach x0, x1, . . . , xm przyjmuje warości y0, y1, . . . , yn.

Dowód Mamy wielomian

wn(x ) = a0xn+ a1xn−1+ · · · + an−1x + an, a0 6= 0.

z nieznanymi współczynnikami a0, a1, . . . , an. Mamy również n + 1 warunków

y0 = wn(x0) y1 = wn(x1)

. . . (2)

yn = wn(xn)

(6)

Dowód istnienia wielomianu interpolacyjnego (2)

a0x0n+ a1x0n−1+ · · · + an−1x0+ an = y0

a0x1n+ a1x1n−1+ · · · + an−1x1+ an = y1 . . .

a0xnn+ anx1n−1+ · · · + an−1xn+ an = yn Mamy więc układ Ax = b

A =

x0n x0n−1 x0n−2 . . . x02 x0 1 x1n x1n−1 x1n−2 . . . x12 x1 1 . . .

xnn xnn−1 xnn−2 . . . xn2 xn 1

(3)

b = [y0, y1, . . . , yn]T (4) x = [a0, a1, . . . , an]T (5)

(7)

Dowód istnienia wielomianu interpolacyjnego (3) - Wyznacznik Vandermonde’a

Przy założeniu xi 6= xj dla i 6= j wyznacznik macierzy A

D =

x0n x0n−1 x0n−2 . . . x0 1 x1n x1n−1 x1n−2 . . . x1 1 . . .

xnn xnn−1 xnn−2 . . . xn 1

, (6)

który ma postać

D = Y

0¬j <i ¬n

(xi − xj) (7)

spełnia warunek D 6= 0.

(8)

Interpolacja Lagrang´ e’a

Wielomian interpolacyjny jest postaci

Wn(x ) = y0Φ0(x ) + y1Φ1(x ) + · · · + ynΦn(x ) gdzie

Φj(xi) =

( 0, gdy j 6= i , 1, gdy j = i . Funkcja Φj(x ) jest postaci

Φj(x ) = λ(x − x0)(x − x1) . . . (x − xj −1)(x − xj +1) . . . (x − xn) a ponieważ

Φj(xj) = 1 = λ(xj−x0)(xj−x1) . . . (xj−xj −1)(xj−xj +1) . . . (xj−xn) to otrzymujemy

λ = 1

(xj − x0)(xj − x1) . . . (xj − xj −1)(xj− xj +1) . . . (xj − xn)

(9)

Interpolacja Lagrang´ e’a (2)

Wzór na wielomian interpolacyjny postaci Wn(x ) = y0(x − x1)(x − x2) . . . (x − xn)

(x0− x1) . . . (x0− xn) + + y1

(x − x0)(x − x2) . . . (x − xn) (x1− x0) . . . (x1− xn) + + y2(x − x0)(x − x1) . . . (x − xn)

(x2− x0) . . . (x1− xn) + . . .

+ yn

(x − x0)(x − x1) . . . (x − xn−1) (xn− x0) . . . (xn− xn−1) =

=

n

X

j =0

yj

(x − x0)(x − x1) . . . (x − xj −1)(x − xj +1) . . . (x − xn) (xj − x0)(xj − x1) . . . (xj− xj −1)(xj − xj +1) . . . (xj − xn)

(10)

Interpolacja Lagrang´ e’a - oszacowanie błędu

Dla funkcji f (x ) określonej w przedziale < a, b > i danych węzłów X = {(xi, f (xi))}ni =0 błędem interpolacji określamy następujące wyrażenie

ε(x ) = f (x ) − Wn(x )

gdzie Wn(x ) jest wielomianem interpolacyjnym dla węzłów X.

Określmy funkcję pomocniczą

ϕ(u) = f (u) − Wn(u) + K (u − x0)(u − x1) . . . (u − xn) gdzie K jest pewną stałą.

Zauważmy, że

ϕ(x0) = ϕ(x1) = · · · = ϕ(x0) = 0

(11)

Interpolacja Lagrang´ e’a - oszacowanie błędu (2)

Współczynnik K dobieramy tak, aby pierwiastkiem funkcji ϕ(x ) był rownież punkt ˜x różny od węzłów interpolacji. Stąd

K = f (˜x ) − Wn(˜x ) (˜x − x0)(˜x − x1) . . . (˜x − xn) przy czym K jest określone tylko i wyłącznie dla

˜

x 6= xi i = 0, . . . , n, ale tak właśnie zakładamy o ˜x . Funkcja ϕ(u) ma więc n + 2 miejsc zerowych w przedziale

< a; b >, w punktach x0, x1, . . . , xn, ˜x . Na podstawie twierdzenia Rolle’a możemy stwierdzić, że pochodna ϕ0(u) funkcji ϕ(u) ma conajmniej jedno miejsce zerowe w każdym z podprzedziałów, których końcami są miejsca zerowe funkcji ϕ,

(12)

Interpolacja Lagrang´ e’a - oszacowanie błędu (3)

Zatem wewnątrz przedziału (min(˜x , x0), max(˜x , xn) ma conajmniej n + 1 miejsc zerowych ξ0(1), ξ1(1), . . . , ξ(1)n .

Stosując ponownie twierdzenie Rolle’a do pochodnej ϕ0(u) stwierdzamy, że istnieje conajmniej n punktów ξ0(2), ξ1(2), . . . , ξn−1(2) takich, że

ϕ000(1)) = ϕ00(2)1 ) = · · · = ϕ00n−1(2) ) = 0

Kontunuując to rozumowanie indukcyjnie dochodzimy do wniosku, że istnieje co najmniej jeden punktów przedziale

(min(˜x , x0), max(˜x , xn)), że

ϕ(n+1)(ξ) = 0. (8)

(13)

Interpolacja Lagrang´ e’a - oszacowanie błędu (4)

A ponieważ

Wn(n+1)(x ) = 0

ω(n+1)n (x ) = [(x − x0)(x − x1) . . . (x − xn)](n+1)= (n + 1)!

więc

ϕ(n+1)(u) = f(n+1)− K (n + 1)!

Korzystając z (8) dla u = ξ mamy

K = f(n+1)(ξ) (n + 1)!

oraz główny wynik

f (x ) − Wn(x ) = f(n+1)(ξ)

(n + 1)!(x − x0)(x − x1) . . . (x − xn) (9)

(14)

Interpolacja Newtona

Zdefiniujmy ilorazy różnicowe oparte o dwa węzły f [x0; x1] = f (x1) − f (x0)

x1− x0 f [x1; x2] = f (x2) − f (x1)

x2− x1 . . .

f [xn−1; xn] = f (xn) − f (xn−1) xn− xn−1 i rekurencyjnie o trzy węzły

f [x0; x1; x2] = f [x1; x2] − f [x0; x1] x2− x0 . . .

f [xn−2; xn−1; xn] = f [xn−1; xn] − f [xn−2; xn−1] xn− xn−2

i dla n węzłów rekurencyjnie (rzędu n)

f [xi; xi +1; . . . ; xi +n] = f [xi +1; . . . ; xi +n] − f [xi; . . . ; xi +n−1] xi +n− xi

(15)

Interpolacja Newtona (2) - tablica ilorazów różnicowych

x0 f (x0)

x1 f (x1) f [x0; x1]

x2 f (x2) f [x1; x2] f [x0; x1; x2]

x3 f (x3) f [x2; x3] f [x1; x3; x3] f [x0; . . . ; x3]

x4 f (x4) f [x3; x4] f [x2; x3; x4] f [x1; . . . ; x4] f [x0; . . . ; x4]

. . .

xn f (xn) f [xn−1; xn] f [xn−2; xn−1; xn] f [xn−4; . . . ; xn] f [xn−5; . . . ; xn] . . . f [x0; . . . ; xn]

ωi ≡ 1 i = 0,

ωi(x ) = (x − x0)(x − x1) . . . (x − xi) i = 1, . . . , n

Wn(x ) = f (x0)+f [x0; x11(x )+f [x0; x1; x22(x )+· · ·+f [x0, . . . , xnn(x )

(16)

Optymalne układy węzłów

Rysunek:Przykład interpolacji funkcji 1/(1 + (10x )2) w 11 węzłach równoodległych wielomianem w10(x ) na przedziale [−1, 1].

(17)

Optymalne układy węzłów (2)

Rysunek:Przykład interpolacji funkcji 1/(1 + (10x )2) w 21 węzłach będących zerami wielomianu Czebyszewa T20(0) wielomianem w20(x ) na przedziale [−1, 1].

xm = cos

2m + 1 2n π



m = 0, 1, . . . , n − 1 (10)

(18)

Dziekuję za uwagę ...

Cytaty

Powiązane dokumenty

Zadanie źle uwarunkowane to takie, dla którego mała zmiana danych wejściowych powoduje dużą zmianę

Definicja: Mówimy, że zadanie z jest dobrze postawione, jeśli wektor w jest jednoznacznie określony dla przyjętego wektora danych x.. Przykład: Przykładem zadania, które nie

Definicja: Macierz diagonalnie dominująca to taka, dla której moduły elementów na diagonali są niemniejssze od sumy modułów pozostałych elementów w tym samym wierszu, tzn. |a ii |

Jeśli wszystkie współczynniki wielomianu są nieujemne, to nie ma on zer dodatnich.m.. Dziekuję za

Przejdź do kroku 2 jeśli nie jest spełniony warunek STOPu... Dziekuję za

2) Interpolacja funkcji, której przebieg znacznie różni się od przebiegu wielomianu interpolacyjnego, może nie dawać dobrych wyników przy dużej liczbie węzłów..

Tabela współczynników dla wzorów pozwalających obliczać pochodne różnych rzędów z określeniem rzędu

Prosz¸e porównać otrzymane wyniki z wynikami uzyskanymi programami lagrange.m i newton.m, wyci¸ agn¸ ać odpowiednie