Metody Numeryczne Wykład 4 Wykład 5. Interpolacja wielomianowa

Podobne dokumenty
Metody numeryczne. Sformułowanie zagadnienia interpolacji

Obliczenia naukowe Wykład nr 6

Analiza numeryczna Kurs INP002009W. Wykład 8 Interpolacja wielomianowa. Karol Tarnowski A-1 p.223

Matematyka stosowana i metody numeryczne

Liczby zespolone, liniowa zależność i bazy Javier de Lucas. a d b c. ad bc

Analiza numeryczna kolokwium2a-15grudnia2005

ELEMENTY ANALIZY NUMERYCZNEJ ELEMENTY ANALIZY NUMERYCZNEJ. Egzamin pisemny zestaw 1 26 czerwca 2017 roku

INTERPOLACJA I APROKSYMACJA FUNKCJI

Interpolacja. Marcin Orchel. Drugi przypadek szczególny to interpolacja trygonometryczna

Metody numeryczne. Ilorazy różnicowe. dr Artur Woike. Wzory interpolacyjne Newtona i metoda Aitkena.

Wyk lad 11 1 Wektory i wartości w lasne

Seria zadań z Algebry IIR nr kwietnia 2017 r. i V 2 = B 2, B 4 R, gdzie

Przestrzenie wektorowe

ELEMENTY ANALIZY NUMERYCZNEJ ELEMENTY ANALIZY NUMERYCZNEJ. Egzamin pisemny zestaw 1 24 czerwca 2019 roku

Układy równań i nierówności liniowych

Interpolacja funkcji

Treść wykładu. Pierścienie wielomianów. Dzielenie wielomianów i algorytm Euklidesa Pierścienie ilorazowe wielomianów

Suma i przeciȩcie podprzestrzeni, przestrzeń ilorazowa Javier de Lucas

Układy równań liniowych

Przestrzenie liniowe

Twierdzenie Stolza i metryki Javier de Lucas. a n = (2n + 1) 1 4 n 5 4

Zaawansowane metody numeryczne

SIMR 2016/2017, Analiza 2, wykład 1, Przestrzeń wektorowa

KOLOKWIUM Z ALGEBRY I R

Aproksymacja. funkcji: ,a 2. ,...,a m. - są funkcjami bazowymi m+1 wymiarowej podprzestrzeni liniowej X m+1

13 Układy równań liniowych

Wyk lad 9 Przekszta lcenia liniowe i ich zastosowania

Egzamin z Metod Numerycznych ZSI, Egzamin, Gr. A

Pierwsze kolokwium z Matematyki I 4. listopada 2013 r. J. de Lucas

Przestrzenie wektorowe, liniowa niezależność Javier de Lucas

Aproksymacja. j<k. L 2 p[a, b] l 2 p,n X = Lemat 1. Wielomiany ortogonalne P 0,P 1,...,P n tworza przestrzeni liniowej Π n. Dowód.

1 Macierz odwrotna metoda operacji elementarnych

Wyk lad 14 Formy kwadratowe I

Zagadnienie Dualne Zadania Programowania Liniowego. Seminarium Szkoleniowe Edyta Mrówka

Wykład 12 i 13 Macierz w postaci kanonicznej Jordana , 0 A 2

3. Macierze i Układy Równań Liniowych

na p laszczyźnie kartezjaṅskiej prowadzimy prost a o rȯwnaniu s 1. (1.1) s 0 + t 1 t 0

Programowanie liniowe

= Zapiszemy poniższy układ w postaci macierzy. 8+$+ 2&=4 " 5 3$ 7&=0 5$+7&=4

Ciała i wielomiany 1. przez 1, i nazywamy jedynką, zaś element odwrotny do a 0 względem działania oznaczamy przez a 1, i nazywamy odwrotnością a);

Elementy projektowania inzynierskiego Przypomnienie systemu Mathcad

Wielomiany. dr Tadeusz Werbiński. Teoria

2. Układy równań liniowych

Zadania z algebry liniowej - sem. I Przestrzenie liniowe, bazy, rząd macierzy

2. Kombinacja liniowa rozwiązań zeruje się w pewnym punkcie wtedy i tylko wtedy, gdy zeruje się w każdym punkcie.

Wykład 4 Udowodnimy teraz, że jeśli U, W są podprzetrzeniami skończenie wymiarowej przestrzeni V to zachodzi wzór: dim(u + W ) = dim U + dim W dim(u

Algebra liniowa II. Lista 1. 1 u w 0 1 v 0 0 1

Przestrzeń unitarna. Jacek Kłopotowski. 23 października Katedra Matematyki i Ekonomii Matematycznej SGH

Zaawansowane metody numeryczne

3 Przestrzenie liniowe

Wyk lad 8 macierzy i twierdzenie Kroneckera-Capellego

Wyk lad 7 Baza i wymiar przestrzeni liniowej

a 11 a a 1n a 21 a a 2n... a m1 a m2... a mn x 1 x 2... x m ...

9 Przekształcenia liniowe

Równania różnicowe. Dodatkowo umawiamy się, że powyższy iloczyn po pustym zbiorze indeksów, czyli na przykład 0

Wyk lad 9 Baza i wymiar przestrzeni liniowej

Wykład z równań różnicowych

Równania różniczkowe cz astkowe rzȩdu pierwszego

Zastosowania wyznaczników

Metody numeryczne. Sformułowanie zagadnienia interpolacji

Przekształcenia liniowe

Wektory i wartości własne

Funkcja kwadratowa. f(x) = ax 2 + bx + c,

DB Algebra liniowa semestr zimowy 2018

Wyk lad 12. (ii) najstarszy wspó lczynnik wielomianu f jest elementem odwracalnym w P. Dowód. Niech st(f) = n i niech a bedzie

Skończone rozszerzenia ciał

Egzamin z Metod Numerycznych ZSI, Grupa: A

. : a 1,..., a n F. . a n Wówczas (F n, F, +, ) jest przestrzenią liniową, gdzie + oraz są działaniami zdefiniowanymi wzorami:

cx cx 1,cx 2,cx 3,...,cx n. Przykład 4, 5

wszystkich kombinacji liniowych wektorów układu, nazywa się powłoką liniową uk ładu wektorów

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania. Technologie informatyczne

Wykład 5. Ker(f) = {v V ; f(v) = 0}

Baza w jądrze i baza obrazu ( )

Bardzo łatwa lista powtórkowa

Wielomiany podstawowe wiadomości

ANALIZA II 15 marca 2014 Semestr letni. Ćwiczenie 1. Czy dan a funkcjȩ da siȩ dookreślić w punkcie (0, 0) tak, żeby otrzymana funkcja by la ci ag la?

Liczby zespolone. x + 2 = 0.

Wyk lad 9 Baza i wymiar przestrzeni liniowej

macierze jednostkowe (identyczności) macierze diagonalne, które na przekątnej mają same

Sterowalność liniowych uk ladów sterowania

Wyk lad 4 Macierz odwrotna i twierdzenie Cramera

Algebra Liniowa 2 (INF, TIN), MAP1152 Lista zadań

CHEMIA KWANTOWA MONIKA MUSIA L. Ćwiczenia. mm

Diagonalizacja macierzy i jej zastosowania

Wprowadzenie Metoda bisekcji Metoda regula falsi Metoda siecznych Metoda stycznych RÓWNANIA NIELINIOWE

1 Zbiory i działania na zbiorach.

Lista. Algebra z Geometrią Analityczną. Zadanie 1 Przypomnij definicję grupy, które z podanych struktur są grupami:

3. Wykład Układy równań liniowych.

Wykład 9. Matematyka 3, semestr zimowy 2011/ listopada 2011

Matematyka dyskretna

Metoda Simplex bez użycia tabel simplex 29 kwietnia 2010

Metody numeryczne I Równania nieliniowe

Struktury danych i złożoność obliczeniowa Wykład 7. Prof. dr hab. inż. Jan Magott

Funkcje Andrzej Musielak 1. Funkcje

1. Liczby zespolone i

1. Wielomiany Podstawowe definicje i twierdzenia

Wyk lad 6 Podprzestrzenie przestrzeni liniowych

Wektory i wartości własne

R n = {(x 1, x 2,..., x n ): x i R, i {1,2,...,n} },

Równania liniowe. Rozdział Przekształcenia liniowe. Niech X oraz Y będą dwiema niepustymi przestrzeniami wektorowymi nad ciałem

Transkrypt:

Sformułowanie zadania interpolacji Metody Numeryczne Wykład 4 Wykład 5 Interpolacja wielomianowa Niech D R i niech F bȩdzie pewnym zbiorem funkcji f : D R. Niech x 0, x 1,..., x n bȩdzie ustalonym zbiorem parami różnych punktów z D, zwanych wȩzłami. Mówimy, że wielomian w interpoluje funkcjȩ f F w wȩzłach x j, gdy w(x j ) = f(x j ), 0 j n. Oznaczmy przez Π n przestrzeń liniow a wielomianów stopnia co najwyżej n o współczynnikach rzeczywistych, Π n = {w(x) = a n x n + a n 1 x n 1 +... + a 1 x + a 0 : a j R, 0 j n}. Twierdzenie Dla dowolnej funkcji f : D R, istnieje dokładnie jeden wielomian interpolacyjny w Π n interpoluj acy f w wȩzłach x j, 0 j n. Dowód Wybierzmy w Π n dowoln a bazȩ wielomianów φ j, 0 j n, Wtedy Π n = span{φ 0, φ 1,..., φ n }. gdzie span oznacza powłokȩ liniow a, czyli zbiór wszystkich kombinacji liniowych funkcji φ j, 0 j n. Każdy wielomian z Π n można wiȩc jednoznacznie przedstawić w postaci rozwiniȩcia wzglȩdem wybranej bazy. Warunkiem koniecznym i dostatecznym na to, aby wielomian w( ) = n j=0 c jφ j ( ) interpolował f, jest spełnienie układu (n + 1) równań liniowych n c j φ j (x i ) = f(x i ), 0 i n. j=0 z n + 1 niewiadomymi c j, który w postaci macierzowej ma postać 1

φ 0 (x 0 ) φ 1 (x 0 )... φ n (x 0 ) φ 0 (x 1 ) φ 1 (x 1 )... φ n (x 1 ). φ 0 (x n ) φ 1 (x n )... φ n (x n ) c 0 c 1. c n = f(x 0 ) f(x 1 ). f(x n ) Aby wykazać, że ten układ ma jednoznaczne rozwi azanie wystarczy, aby wektor zerowy był jedynym rozwi azniem układu jednorodnego. Zauważmy, że układ jednorodny odpowiada interpolacji danych zerowych i f(x i ) = 0. Istnienie niezerowego rozwi azania byłoby wiȩc równoważne istnieniu niezerowego wielomianu stopnia nie wiȩkszego od n, który miałby n + 1 różnych zer x i, co jest niemożliwe, a wiȩc wektor zerowy jest jedynym rozwi azaniem układu jednorodnego, co mieliśmy wykazać. W danym modelu obliczeniowym możemy wiȩc wyznaczać jednoznacznie współczynniki c j wielomianu w. Dokładniej Jeżeli (φ j ) n j=0 jest baz a przestrzeni Π n wielomianów stopnia co najwyżej n, to zadanie iterpolacji wielomianowej polega na obliczeniu dla danej funkcji f współczynników c j takich, że wielomian n w( ) = c j φ j ( ) interpoluje f w punktach x j, 0 j n. Wybór bazy wielomianowej j=0 Można powiedzieć, że trudność zadania interpolacji jest zdeterminowana przez rozwi azanie powyższego układu i zależy w istotny sposób od wybranej bazy (φ j ) n j=0. W naturalny wiȩc sposób powstaje problem wyboru wygodnej bazy w Π n. Rozpatrzymy trzy bazy: Lagrange, potȩgow a i Newtona. BAZA LAGRANGE (KANONICZNA) Zdefiniujemy dla 0 j n wielomiany. l j (x) = (x x 0)(x x 1 )... (x x j 1 )(x x j+1 )... (x x n ) (x j x 0 )(x j x 1 )... (x j x j 1 )(x j x j+1 )... (x j x n ). Zauważmy że każdy wielomian l j jest stopnia dokładnie n oraz { 0 i j, l j (x i ) = 1 i = j. St ad widać, że wielomiany te stanowi a bazȩ w Π n, któr a nazywamy baz a Lagrange. Wielomian interpolacyjny dla funkcji f zwany wielomianem interpolacyjnym Lagrange, 2

można w tym przypadku zapisać jako w( ) = n f(x j )l j ( ). j=0 Przykład Skonstruujemy wielomian interpolacyjny Lagrange dla danych (1, 1), (2, ), (4, ). l 0 (x) = a(x 2)(x 4), bo musi siȩ zerować w punktach x = 2, x = 4. Ż adaj ac l 0 (1) = 1 - otrzymujemy równanie na nieznany współczynnik a, a(1 2)(1 4) = 1, a = 1 i l 0(x) = 1 (x 2)(x 4). Podobnie określamy l 1 (x) = 1 (x 1)(x 4) 2, l 2 (x) = 1 (x 1)(x 2). 6 St ad otrzymujemy nastȩpuj ac a postać wielomianu Lagrange: w 2 (x) = f(x 0) (x 2)(x 4) f(x 1) 2 (x 1)(x 4) + f(x 2) (x 1)(x 2) 6 = 1 (x 2)(x 4) 2 (x 1)(x 4) + (x 1)(x 2) 6 Do obliczenia współczynników wielomianu Lagrange i jego wartości w zadanym punkcie p, możemy napisać skrypt funkcyjny w OCTAVE na przykład o nazwie lagrange.m f unction lagrange(x, y, p) n = length(x); w = 0; for k = 1 : n b(k) = 1; d(k) = 1; for j = 1 : n if j k b(k) = b(k) (x(k) x(j)); d(k) = d(k) (p x(j)); c(k) = y(k)/b(k); w = w + c(k) d(k); c;w

BAZA POTȨGOWA (NATURALNA) Znacznie prościej można obliczyć wartość wielomianu interpolacyjnego (a także jego pochodnych), gdy jest on dany w najczȩściej używanej bazie potȩgowej, φ j (x) = x j. Jeśli w(x) = a 0 + a 1 x +... + a n x n, to również w(x) = (... (a n x + a n 1 )x + a n 2 )x +... + a 1 )x + a 0, co sugeruje zastosowanie nastȩpuj acego schematu Hornera do obliczenia wartości wielomianu w(x).: v n = a n ; for j = (n 1) : 0 v j = v j+1 x + a j, Po wykonaniu tego algorytmu w(x) = v 0. Schemat Hornera wymaga wykonania tylko n mnożeń i n dodawań. Zauważmy jednak że w przypadku bazy potȩgowej macierz (x j i )n i,j=0 układu jest pełna. Jest to tzw. macierz Vandermonde. Obliczenie współczynników wielomianu interpolacyjnego w bazie potȩgowej bezpośrednio z tego układu jest kosztowne bo wymaga n operacji. Przykład Znajdziemy wielomian interpolacyjny w bazie potȩgowej w 2 (x) = c 0 + c 1 x + c 2 x 2 przechodz acy przez punkty (1, 1), (2, ) i (4, ). Warunki interpolacji w 2 (x 0 ) = c 0 + 1c 1 + 1c 2 = 1, w 2 (x 1 ) = c 0 + 2c 1 + 4c 2 =, w 2 (x 2 ) = c 0 + 4c 1 + 16c 2 =. Postać macierzowa tego układu równań liniowych 1 1 1 c 0 1 2 4 c 1 = 1 4 16 c 2 1 Rozwi azuj ac ten układ za pomoc a OCTAVE A = [1 1 1; 1 2 4; 1 4 16]; 4

b = [1; ; ]; c = A\b Uwzglȩdniaj ac błȩdy zaokr agleń otrzymujemy c 0 = 7, c 1 = 4, c 2 = 2. Wielomian interpolacyjny ma wiȩc postać w 2 (x) = ( 2x 2 + 12x 7)/ BAZA NEWTONA Rozwi azaniem pośrednim, które ł aczy prostotȩ obliczenia współczynników z prostot a obliczenia wielomianu w(x) jest wybór bazy Newtona. p 0 (x) = 1, p j (x) = (x x 0 )(x x 1 )... (x x j 1 ), 1 j n. W tym przypadku współczynniki rozwiniȩcia wielomianu interpolacyjnego bȩdziemy oznaczać przez b j, zaś wielomian Newtona ma postać w = n b j p j j=0 Zwróćmy uwagȩ na ważn a własność wielomianu Newtona, wynikaj a z konstrukcji jego bazy. Jeśli w j Π j jest wielomianem interpolacyjnym dla funkcji f opartym na wȩzłach x 0, x 1,..., x j, 0 j n,to w 0 = b 0 w j = w j 1 + b j p j, 1 j n Wartość w(x) można obliczać, stosuj ac prost a modyfikacjȩ algorytmu Hornera: v n = b n ; forj = n 1 : 0; v j = v j 1 (x x j ) + b j. Ponadto układ równań jest trójk atny dolny ( tzn.p j (x i ) = 0 dla i < j),co pozwala na obliczenie algorytmem, który Państwo poznaliście na wykładzie o koszcie n 2, b 0 = f(x 0 ); for j = 1 : n 5

( b j = f(x j ) ) j 1 s=0 b sp s (x j ) /p j (x j ). Zwykle jednak do obliczania współczynników b j stosuje inny algorytm, który teraz przedstawimy. Algorytm różnic dzielonych Różnicȩ dzielon a funkcji f opart a na różnych w azłach t 0, t 1,..., t s, gdzie s 1, definiuje siȩ indukcyjnie jako f[t 0, t 1,..., t s ] = f[t 1, t 2,..., t s ] f[t 0, t 1,..., t s 1 ] t s t 0 Zachodzi nastȩpuj ace ważne twierdzenie o współczynnikach wielomianu interpolacyjnego Newtona. Twierdzenie Współczynniki wielomianu interpolacyjnego Newtona dla danej funkcji f dane s a przez różnice dzielone f w wȩzłach x 0, x 1,..., x j, tzn. b j = f[x 0, x 1,..., x j ], 0 j n Dowód Dla 0 i j n, oznaczmy przez w i,j wielomian z Π j i interpoluj acy f w wȩzłach x i, x i+1,..., x j. Wtedy ma miejsce nastȩpuj aca równość dla i < j: x wi,j (x) = (x x i)w i+1,j (x x j )w i,j 1 (x), (x j x i ) Aby wykazać tȩ równość wystarczy pokazać, że prawa jej strona, któr a oznaczymy przez v(x), przyjmuje wartości f(x s ) dla x = x s, i s j. Jeśli i + 1 s j 1 to Ponadto oraz v(x s ) = (x s x i )f(x s ) (x s x j )f(x s ) x j x i = f(x s ). v(x i ) = (x i x j ) x j x i f(x i ) = f(x i ) v(x j ) = (x j x i ) x j x i f(x j ) = f(x j ) 6

Wykazaliśmy, że v jest wielomianem z Π j i interpoluj acym f w wȩzłach x s, i s j, czyli w i,j = v. Dalej postȩpujemy indukcyjnie ze wzglȩdu na stopień wielomianu interpolacyjnego. Dla n = 0 mamy b 0 = f(x 0. Niech n 1. Jak wiemy z konstrukcji wielomianu Newtona w 0,n = w 0,n 1 (x) + b n p n (x) i z założenia indukcyjnego b j = f[x 0, x 1,..., x j ], dla 0 j n 1 Aby pokazać podobn a równość dla b n wykorzysamy równość na w i,j z i = 0, j = n, która ma wtedy postać w 0,n (x) = (x x 0)w 1,n (x) (x x n )w 0,n 1 (x) x n x 0 Zauważmy, że b n jest współczynnikiem przy x n w wielomianie w 0,n. Z zal ożenia indukcyjnego wynika, że współczynniki przy x n 1 w wielomianach w 1,n, w 0,n 1 s a ilorazami różnicowymi opartymi odpowiednio na wȩzłach x 1, x 2,..., x n,i x 0, x 1,... x n 1. St ad b n = f[x 1, x 2,..., x n ] f[x 0, x 1,..., x n 1 ] x n x 0 = f[x 0, x 1,..., x n ] co mieliśmy udowodnić. Różnicȩ dzielon a można obliczć na podstawie wartości f(x j ), 0 j n, buduj ac tabelkȩ x 0 f[x 0 ] x 1 f[x 1 ] f[x 0, x 1 ] x 2 f[x 2 ] f[x 1, x 2 ]. x n f[x n ] f[x n 1, x n ]... f[x 0, x 1,..., x n ]. Zauważmy, że po drodze obliczamy f[x i, x i+1,..., x j ] dla wszystkich 0 i < j n, a wiȩc w szczególności interesuj ace nas różnice dzielone f[x 0, x 1,..., x n ]. Przykład Znajdziemy wielomian Newtona interpoluj acy dane: (1, 1), (2, ), (4, ). Obliczamy różnice dzielone f[x 0, x 1 ] = f[x 1] f[x 0 ] x 1 x 0 f[x 1, x 2 ] = f[x 2] f[x 1 ] x 2 x 1 = 1 2 1 = 2 = 4 2 = 0 7

f[x 0, x 1, x 2 ] = f[x 1,x 2 ] f[x 1,x 0 ] x 2 x 0 = 0 2 4 1 = 2 Wielomian interpolacyjny Lagrange w(x) = f[x 0 ]+f[x 0, x 1 ](x x 0 )+f[x 0, x 1, x 2 ](x x 0 )(x x 1 ) = 1+2(x 1) 2 (x 1)(x 2) W postaci zagnieżdżonej w(x) = 1 + (x 1) (2 2 ) (x 2). Przykładowe programy w OCTAVE, pierwszy generuj acy różnice dzielone o nazwie divdif.m, drugi obliczaj acy wartość wielomianu Newtona w dowolnym punkcie x o nazwie newt.m i korzystaj acy z programu pierwszego, zamieszczono w oddzielnych m.files. 8