Elementy Analizy Numerycznej - opracowanie pytań egzaminacyjnych
Transkrypt
Elementy Analizy Numerycznej - opracowanie pytań egzaminacyjnych
Elementy Analizy Numerycznej - opracowanie pytań egzaminacyjnych baszmen, entereczek, JG, kubked, MK, PajdziuPaj Vertyk WI-INFA 22 września 2012 Spis treści 1 Teoria 1 1.1 Co to znaczy, że algorytm obliczeniowy jest numerycznie stabilny? . . . . . . 1 1.2 Sformułować zadanie interpolacyjne Lagrange’a i udowodnić jednoznaczność jego rozwiązania. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2.1 Sformułowanie zadania . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2.2 Twierdzenie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2.3 Dowód - zbędne na egzaminie . . . . . . . . . . . . . . . . . . . . . . . 2 1.2.4 Wykazanie jednoznaczności rozwiązania . . . . . . . . . . . . . . . . . 2 1.3 Sformułować zadanie interpolacyjne Hermite’a. Co można o nim powiedzieć? 2 1.4 Sformułować zadanie interpolacji wymiernej. Co można o nim powiedzieć? . . 3 1.4.1 Sformułowanie zadania. . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.4.2 Co można o nim powiedzieć? . . . . . . . . . . . . . . . . . . . . . . . 3 1.5 Sformułować zadanie interpolacji trygonometrycznej. Co można o nim powiedzieć? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.5.1 Sformułowanie zadania. . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.5.2 Co można o nim powiedzieć? . . . . . . . . . . . . . . . . . . . . . . . 3 1.6 Opisać algorytm wyznaczania naturalnej funkcji sklejanej stopnia trzeciego. Jaka jest postać układu równań liniowych, który trzeba rozwiązać i jaką metodę można zastosować do jego rozwiązania? . . . . . . . . . . . . . . . . . . . . . 4 1.6.1 Definicja . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.6.2 Algorytm - część ogólna . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.6.3 Algorytm - funkcja naturalna . . . . . . . . . . . . . . . . . . . . . . . 4 1.7 Opisać algorytm wyznaczania okresowej funkcji sklejanej stopnia trzeciego. Jaka jest postać układu równań liniowych, który trzeba rozwiązać i jaką metodę można zastosować do jego rozwiązania? . . . . . . . . . . . . . . . . . . . . . 5 1.7.1 Definicja . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.7.2 Algorytm - część ogólna . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.7.3 Algorytm - okresowa funkcja sklejana . . . . . . . . . . . . . . . . . . 5 1.8 Opisać algorytm eliminacji Gaussa z pełnym wyborem elementu podstawowego. 6 1.9 Co to znaczy, że rzeczywista macierz kwadratowa A jest dodatnio określona? Jak można zastosować jej rozkład A = LLT do rozwiązania układu równań liniowych Ax = b? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.9.1 Definicja macierzy dodatnio określonej: . . . . . . . . . . . . . . . . . 7 1.9.2 Jak można zastosować rozkład Choleskiego takiej macierzy do rozwiązania układu równań liniowych? . . . . . . . . . . . . . . . . . . . . . 7 1 1.10 W jaki sposób otrzymuje się metody iteracyjne rozwiązywania układów równań liniowych? Jakie znasz metody i co możesz o nich powiedzieć? . . . . . . . . . 1.11 Opisać metodę połowienia służącą do określenia znajdowania pierwiastka równania nieliniowego . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.12 Opisać metodę regula-falsi służącą do wyznaczania pierwiastka równania nieliniowego f(x) = 0. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.13 Opisać metodę Newtona służącą do rozwiązywania układu równań nieliniowch f (x) = 0. W jakim przypadku i jak można ją uprościć? . . . . . . . . . . . . . 1.14 Opisać metodę Bairstowa wyznaczania pierwiastków wielomianu. . . . . . . . 1.15 Podać definicję ciągu Sturma. . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.16 Opisać metodę numerycznego wyznaczania macierzy A−1 . . . . . . . . . . . 1.17 Opisać zagadnienie aproksymacji średniokwadratowej wielomianami. W jaki sposób można rozwiązać powstały układ Haara? W jakim przypadku zagadnienie to jest interpolacją wielomianową? . . . . . . . . . . . . . . . . . . . . 8 9 9 10 11 11 12 12 2 Dowody 13 2.1 Wykazać, że jeśli x oznacza liczbę maszynową, to dla dowolnego naturalnego k jest f l(xk ) = xk (1 + ε)k−1 , gdzie |ε| < eps. . . . . . . . . . . . . . . . . . . 13 2.2 Udowodnić, że jeżeli f (x) = (x−x0 )(x−x1 ) . . . (x−xp ), to [x0 , x1 , . . . , xn ; f ] = 0 dla n ¬ p. Jaka jest wartość tego ilorazu, gdy n = p + 1? . . . . . . . . . . . . 14 2.3 Udowodnić, że jeśli funkcja g interpoluje funkcję f w węzłach x0 , x1 , . . . , xn−1 , a funkcja h interpoluje funkcję f w węzłach x1 , x2 , . . . , xn , to funkcja g(x) + 2.4 x0 − x [g(x) − h(x)] xn − x0 interpoluje funkcję f we wszystkich węzłach x0 , x1 , . . . , xn (funkcje g i h nie muszą być wielomianami). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Udowodnić, że jeśli funkcja g (wielomian lub nie) interpoluje funkcję f w węzłach x0 , x1 , . . . , xn−1 , a funkcja h jest funkcją taką, że h(xi ) = δin (0 ¬ i ¬ n), to istnieje stała c, dla której funkcja g + ch interpoluje funkcję f w punktach x0 , x1 , . . . , xn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 15 3 Zadania 15 3.1 Na przykładzie trzech, matematycznie równoważnych zapisów funkcji f zmiennej rzeczywistej x oraz przedziału [x] = [− 21 , 32 ] pokazać, że rozszerzenia przedziałowe tej funkcji mogą być różne. Jaka jest wartość funkcji przedziałowej na tym przedziale? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 3.2 W arytmetyce przedziałowej dla dowolnych przedziałów [x], [y] i [z] prawdziwe jest zawieranie [x] · ([y] + [z]) ⊆ [x] · [y] + [x] · [z] 3.3 3.4 3.5 3.6 Podaj przykład takich przedziałów [x], [y] i [z], aby w powyższej zależności przedział lewostronny był całkowicie zawarty w przedziale prawostronnym. . 16 Dane są dwa różne algorytmy obliczania różnicy kwadratów dwóch liczb: A1(a, b) = a2 − b2 oraz A2(a, b) = (a − b) · (a + b). Realizacja, którego z tych algorytmów na komputerze jest lepsza i dlaczego? . . . . . . . . . . . . . . . . . . . . . . . 17 Za pomocą algorytmu Hornera znaleźć iloraz z dzielenia wielomianu w(x) przez dwumian x + 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 Za pomocą algorytmu Hornera znaleźć iloraz dzielenia wielomianu w(x) przez dwumian x − 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Za pomocą algorytmu Hornera znaleźć wartości wszystkich znormalizowanych pochodnych wielomianu w(x) w punkcie x = 2. . . . . . . . . . . . . . . . . . 18 2 3.7 3.8 3.9 3.10 3.11 3.12 3.13 3.14 3.15 3.16 3.17 3.18 3.19 3.20 3.21 3.22 3.23 3.24 3.25 3.26 Za pomocą algorytmu Hornera znaleźć wartości wszystkich znormalizowanych pochodnych wielomianu w(x) w punkcie x = 1. . . . . . . . . . . . . . . . . . Za pomocą algorytmu Shaw-Trauba znaleźć wartości wszystkich znormalizowanych pochodnych wielomianu w(x) w punkcie x = 1 . . . . . . . . . . . . . Za pomocą algorytmu Shaw-Trauba znaleźć wartości wszystkich znormalizowanych pochodnych wielomianu w(x) w punkcie x = 2 . . . . . . . . . . . . . Za pomocą algorytmu Neville’a znaleźć wartość wielomianu interpolacyjnego w punkcie x = 12 , który w punktach 0,1,2 przyjmuje wartości odpowiednio 1,1,3. Dane są wartości f (0) = −1, f 0 (0) = −2, f (1) = 0, f 0 (1) = 10, f ”(1) = 40. Znaleźć wielomian interpolacyjny Hermite’a. . . . . . . . . . . . . . . . . . . . Wielomian p(x) interpoluje cztery początkowe punkty z poniższej tablicy. Dodając do wielomianu p jeden składnik, wyznaczyć wielomian interpolujący wszystkie dane. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Dla jakich wartości a, b, c funkcja S(x) może być w przedziale [0, 3) naturalną funkcją sklejaną stopnia trzeciego? . . . . . . . . . . . . . . . . . . . . . . . . Dla jakich wartości a, b, c i d funkcja S(x) jest funkcją sklejaną stopnia trzeciego? Dla jakich wartości a, b funkcja S(x) jest funkcją sklejaną stopnia trzeciego . Dla jakich wartości a, b, c i d funkcja S(x) może być w przedziale [−1, 1) naturalną funkcją sklejaną stopnia trzeciego? . . . . . . . . . . . . . . . . . . Znaleźć rozkład A = LLT , jeśli macierz A ma postać: . . . . . . . . . . . . . 3.17.1 Rozwiązanie 1: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.17.2 Rozwiązanie 2: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.17.3 Wynik: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Dla jakich wartości parametru α macierz A jest dodatnio określona? . . . . . Zbadać wpływ zaburzenia wektora b na dokładność rozwiązania x układu równań liniowych Ax = b . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Zbadać zbieżność metody Jacobiego dla układu równań liniowych. . . . . . . Zbadać zbieżność metody Gaussa-Siedla dla układu równań liniowych. . . . . Zbadać zbieżność metod Jacobiego i Gaussa-Siedla dla układu równań liniowych z macierzą . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.22.1 Metoda Jacobiego . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.22.2 Metoda Gausa–Seidla . . . . . . . . . . . . . . . . . . . . . . . . . . . Wykazać, że dla poniższej macierzy metoda Gaussa–Seidla nie gwarantuje zbieżności przy dowolnym wyborze początkowego przybliżenia rozwiązania układu równań liniowych Ax = b. . . . . . . . . . . . . . . . . . . . . . . . . . . . Zastosować twierdzenie Sturma do określenia liczby dodatnich pierwiastków rzeczywistych wielomianu: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.24.1 Wstęp: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.24.2 Rozwiązanie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.24.3 Zmiany znaków . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.24.4 Liczba pierwiastków w x = 0 . . . . . . . . . . . . . . . . . . . . . . . 3.24.5 Liczba dodatnich pierwiastków rzeczywistych . . . . . . . . . . . . . . Zastosować twierdzenie Sturma do określenia liczby pierwiastków rzeczywistych wielomianu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.25.1 Rozwiązanie: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.25.2 Zmiany znaków: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.25.3 Liczba pierwiastków rzeczywistych: . . . . . . . . . . . . . . . . . . . . Zastosować twierdzenie Sturma do określenia liczby ujemnych pierwiastków rzeczywistych wielomianu: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.26.1 Rozwiązanie: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.26.2 Zmiany znaków: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.26.3 Liczba ujemnych pierwiastków rzeczywistych: . . . . . . . . . . . . . . 3 19 20 21 22 22 25 25 26 28 28 29 29 29 30 30 31 32 32 33 33 34 34 35 35 36 36 36 36 36 37 38 38 38 38 39 39 3.27 Wykonać pierwszą iterację w metodzie Newtona zastosowanej do rozwiązywania układu równań nieliniowych przyjmując punkt początkowy (0,0,1) . . . . 3.28 Wykonać pierwsze dwie iteracje w metodzie Newtona zastosowanej do rozwiązywania układu równań nieliniowych przyjmując punkt początkowy (0,1) . . 3.29 Stosując metodę Gaussa z częściowym wyborem elementu podstawowego, wyznaczyć macierz A−1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.30 Znaleźć przybliżenie funkcji F (x) = sin(x) na przedziale [0, π2 ] wielomianem stopnia drugiego (wskazówka: przyjąć x0 = π2 ). Jaki jest błąd aproksymacji? 4 Zadania z wykładów 4.1 Znaleźć wielomian interpolacyjny Lagrange’a, który w punktach -2,1,2,4 przyjmuje wartości odpowiednio 3,1,-3,8. Jaka jest wartość tego wielomianu w punkcie x = 0? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Stosując metodę Newtona, znaleźć wielomian interpolacyjny, który w punktach 0, 1, 2 przyjmuje wartości odpowiednio 1, 1, 3. . . . . . . . . . . . . . . . . . 4.3 Utworzyć wielomian interpolacyjny Newtona dla funkcji f (x) opisanej poniższą tabelą. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4 Różnice progresywne i wsteczne wielomianu . . . . . . . . . . . . . . . . . . . 4.5 Z jaką dokładnością można obliczyć ln 100, 5 za pomocą wzoru interpolacyjnego Lagrange’a mając wartości ln 100, ln 101, ln 102, ln 103,? . . . . . . . . . . . . 1 39 40 41 42 43 43 44 45 45 45 Teoria 1.1 Co to znaczy, że algorytm obliczeniowy jest numerycznie stabilny? 2006 Algorytm ϕ jest numerycznie stabilny, jeśli dla dowolnie wybranych danych x0 ∈ D istnieje taka dokładność obliczeń δ0 , że dla dokładności δ < δ0 mamy x0 ∈ D(δ) oraz lim ϕ(x0 , δ) = ϕ(x0 ), δ→0 gdzie ϕ oznacza algorytm ϕ zależy od rodzaju arytmetyki komputera. Innymi słowy powyższa definicja mówi, że algorytm jest numerycznie stabilny wtedy, gdy zwiększając dokładność obliczeń można wyznaczyć (z dowolną dokładnością) dowolne istniejące rozwiązania zadania. 1.2 2006, 2007, 2008, 2009, 2011, 2011zp, 2012zp, 2012 1.2.1 Sformułować zadanie interpolacyjne Lagrange’a i udowodnić jednoznaczność jego rozwiązania. Sformułowanie zadania Zadanie interpolacyjne Lagrange’a polega na znalezieniu dla danej funkcji wielomianu stopnia nie wyższego niż n, którego wartość w n + 1 punktach xi są takie same jak wartości interpolowanej funkcji Ln (xi ) = f (xi ), 1.2.2 i = 0, 1, . . . , n oraz xi 6= xj dla i 6= j Twierdzenie Zadanie interpolacyjne Lagrange’a ma dokładnie jedno rozwiązanie 4 1.2.3 Dowód - zbędne na egzaminie Niech x0 , x1 , . . . , xn będą węzłami interpolacji funkcji f takie, że znane są wartości f (x0 ) = y0 , f (x1 ) = y1 , . . . , f (xn ) = yn Można zdefiniować funkcję li : def li (x) = n Y x − xj j=0 xi − xj , i = 0, 1, . . . , n j6=i są to wielomiany stopnia n, takie że δij - symbol Kronecker’a ( 1 dla i = j 0 dla i 6= j li (xj ) = δij = Stąd wynika, że Ln (x) = n X f (xi )li (xi ) = i=0 n X f (xi ) i=0 n Y x − xj j=0 xi − xj (1) j6=i jest wielomianem stopnia co najwyżej n przyjmującym w węzłach interpolacyjnych xi wartości f (xi ), co dowodzi istnienia rozwiązania. Wzór (1) nazywamy wzorem interpolacyjnym Lagrange’a. 1.2.4 Wykazanie jednoznaczności rozwiązania Załóżmy, że istnieją dwa tożsamościowo różne wielomiany L1n (x) i L2n (x) stopnia n, przyjmujące w węzłach x0 , x1 , . . . , xn takie same wartości. Niech L3n (x) = L1n (x) − L2n (x) będzie wielomianem. Jest on stopnia co najwyżej n (co wynika z własności odejmowania wielomianów). (*) Ponieważ L1n (x) i L2n (x) w węzłach xi : i ∈ 0, 1, . . . , n interpolują tę samą funkcję, to L1n (xi ) = L2n (xi ), a więc L3n (xi ) = 0 (węzły interpolacji są pierwiastkami L4n (x)). Ale każdy niezerowy wielomian stopnia n ma co najwyżej n pierwiastków rzeczywistych, a ponieważ z (*) wiadomo, że L3n (x) ma n+1 pierwiastków, to L3n (x) musi być wielomianem tożsamościowo równym zeru. A ponieważ L3n (x) = L1n (x) − L2n (x) ≡ 0 to L1n (x) ≡ L2n (x) co jest sprzeczne z założeniem, że L1n (x) i L2n (x) są różne. 1.3 Sformułować zadanie interpolacyjne Hermite’a. Co można o nim powiedzieć? Zadanie interpolacyjne Hermite’a polega na znalezieniu dla danej funkcji f oraz k + 1 węzłów x0 , x1 , . . . , xk wielomianu Hn stopnia nie większego niż n, takiego że Hn(j) (xi ) = f (j) (xi ), i = 0, 1, . . . , k; j = 0, 1, . . . , mi − 1 (2) czyli że w węzłach interpolacji pochodne rzędu j tego wielomianu są równe pochodnym funkcji intepolowanej, przy czym k X mi = n + 1, i=0 Liczbę mi nazywamy krotnością węzła xi . Właściwości: 5 mi ∈ N 2006, 2007, 2007p, 2008, 2008z, 2009, 2011, 2011z, 2012z, 2012 • Jeżeli ∀0¬i¬k mi = 1, to interpolacja Hermite’a sprowadza się do interpolacji Lagrange’a. • Zadanie interpolacyjne Hermite’a (2) ma jednoznaczne rozwiązanie. 1.4 2005 1.4.1 Sformułować zadanie interpolacji wymiernej. Co można o nim powiedzieć? Sformułowanie zadania. Zadanie interpolacji wymiernej polega na znalezieniu dla danej funkcji f funkcji wymiernej Wmn postaci Pm ak xk Wmn (x) = Pk=0 , n k k=0 bk x w której stopień licznika jest równy co najwyżej m, a stopień mianownika - co najwyżej n, spełniającej dla danych węzłów xi i wartości funkcji w tych węzłach f (xi )(i = 0, 1, . . . , m + n) warunki Wmn (xi ) = f (xi ). 1.4.2 Co można o nim powiedzieć? Zadanie interpolacji wymiernej nie zawsze jest rozwiązalne. Prawie każde rozwiązanie powyższego układu jest rozwiązaniem układu m X ak xki − f (xi ) bk xki = 0, i = 0, 1, . . . , m + n k=0 k=0 1.5 n X Sformułować zadanie interpolacji trygonometrycznej. Co można o nim powiedzieć? 2006 1.5.1 Sformułowanie zadania. Zadanie interpolacji trygonometrycznej polega na znalezieniu dla danej funkcji okresowej f o okresie 2π wielomianu trygonometrycznego: Tn (x) = β0 + β1 exi + β2 e2xi ... + βn−1 e(n−1)xi , (3) eαi = cos α + i sin α (wzór Eulera; i oznacza jednostkę urojoną), takiego że: Tn (xk ) = f (xk ), k = 0, 1, ..., n − 1. (4) Funkcja f jest funkcją zmiennej rzeczywistej o wartościach zespolonych. Współczynniki βk w ogólności mogą być liczbami zespolonymi. 1.5.2 Co można o nim powiedzieć? Jeżeli dana jest funkcja g o okresie T , tj. g(y + T ) = g(y), to dokonując zmiany zmiennej yT według zależności x = 2π T y otrzymamy f (x) = g( 2π ), a więc funkcję okresową o okresie 2π. Bez zmniejszania ogólności możemy zatem rozważać tylko funkcje o okresie 2π. Istnieje dokładnie jeden wielomian (3) spełniający warunki (4) 6 1.6 1.6.1 Opisać algorytm wyznaczania naturalnej funkcji sklejanej stopnia trzeciego. Jaka jest postać układu równań liniowych, który trzeba rozwiązać i jaką metodę można zastosować do jego rozwiązania? 2005, 2006, 2008p, 2009, 2010p, 2011 Definicja Funkcję sklejaną S stopnia 2m − 1 z węzłami (∆) nazywamy naturalną funkcją sklejaną, jeśli w przedziałach (−∞, x0 ) i (xn , +∞) dana jest wielomianami stopnia m − 1. Sm (∆) - klasa funkcji sklejanych stopnia m z węzłami (∆), N2m−1 (∆) - klasa naturalnych funkcji sklejanych stopnia 2m − 1 z węzłami (∆) 1.6.2 Algorytm - część ogólna Szukaną funkcję sklejaną można przedstawić w każdym z podprzedziałów w postaci S(x) = ai + bi t + ci t2 + di t3 , (5) gdzie t = x − xi dla x ∈ [xi , xi+1 ], i = 0, 1, . . . , n − 1. Ponadto S ∈ N3 (∆) lub S ∈ P3 (∆) oraz S(xi ) = f (xi ) w węzłach (∆). Ze wzoru (5) wynika, że należy wyznaczyć 4n współczynników (jeśli przedział [a, b] podzielony jest na n podprzedziałów). Z definicji (5) oraz jej warunków wynika, że ai = f (xi ), i = 1, 2, . . . , n (6) gdyż dla x = xi mamy t = 0. Do wyznaczenia pozostaje zatem 3n współczynników. Ponieważ S, S 0 i S 00 mają być ciągłe w węzłach xi (i = 1, 2, . . . , n−1) otrzymujemy 3n−3 równania. Pozostałe równania uzyskujemy z faktu, że S jest naturalną lub okresową funkcją sklejaną. Wprowadźmy pomocnicze zmienne hi : hi = xi+1 − xi , i = 0, 1, . . . , n − 1 (7) Współczynniki bi i di określone są następująco: bi = f (xi+1 ) − f (xi ) hi − (ci+1 + 2ci ), hi 3 di = 1.6.3 ci+1 − ci , 3hi i = 0, 1, . . . , n − 1 i = 0, 1, . . . , n − 1 (8) (9) Algorytm - funkcja naturalna Jeśli funkcja S jest naturalną funkcją sklejaną, to poza przedziałem [a, b] jest ona wielomianem stopnia m − 1, a w przedziale [a, b] - stopnia 2m − 1. W naszym przypadku 2m − 1 = 3, a zatem m = 2. Oznacza to, że w przedziałach (−∞, a) i (b, +∞) funkcja S jest wielomianem stopnia pierwszego, a stąd S 00 (x) = 0 dla x ∈ / [a, b]. Z drugiej strony funkcja S 00 musi być 00 ciągła w punktach x0 = a i xn = b, czyli S (x0 ) = S 00 (xn ) = 0. Zatem c0 = 0, bo S 00 (x) = 7 2c0 + 6d0 (x − x0 ) dla x ∈ [x0 , x1 ) oraz cn = 0 z warunku 2cn = S 00 (xn − 0). Znalezienie współczynników c sprowadza się zatem do rozwiązania układu równań liniowych: 2 w1 0 · · · u 2 2 w2 0 2 w3 0 u3 . . .. .. . .. . . . 0 ··· ··· ··· 0 ··· ··· ··· ··· ··· ··· .. . ··· ··· ··· .. . ··· ··· ··· .. . · · · un−2 2 ··· 0 un−1 0 0 0 .. . c1 c2 c3 .. . v1 v2 v3 .. . = vn−2 wn−2 cn−2 2 cn−1 vn−1 gdzie 3 vi = hi−1 + hi ui = hi−1 , hi−1 + hi i = 2, 3, . . . , n − 1 (10) wi = hi , hi−1 + hi i = 1, 2, . . . , n − 2 (11) f (xi+1 ) − f (xi ) f (xi ) − f (xi−1 ) − , hi hi−1 i = 1, 2, . . . , n − 1 (12) a następnie wyznaczenie pozostałych współczynników szukanej funkcji sklejanej ze wzorów (8) i (9). Układ równań ma postać macierzy trójdiagonalnej. Istnieje kilka metod rozwiązywania układów tego typu, m.in metoda Crouta. 1.7 2005, 2008p, 2010p 2006, 2009, 1.7.1 Opisać algorytm wyznaczania okresowej funkcji sklejanej stopnia trzeciego. Jaka jest postać układu równań liniowych, który trzeba rozwiązać i jaką metodę można zastosować do jego rozwiązania? Definicja Funkcję sklejaną S stopnia m z węzłami (∆) nazywamy okresową o okresie b − a, jeśli S (i) (a + 0) = S (i) (b − 0) dla i = 0, 1, . . . , m − 1. Sm (∆) - klasa funkcji sklejanych stopnia m z węzłami (∆), Pm (∆) - klasa okresowych funkcji sklejanych stopnia m z węzłami (∆) 1.7.2 Algorytm - część ogólna Patrz punkt 1.6.2. 1.7.3 Algorytm - okresowa funkcja sklejana Jeśli funkcja S jest okresową funkcją sklejaną stopnia trzeciego, to muszą być spełnione warunki S (i) (x0 + 0) = S (i) (xn − 0), i = 0, 1, 2 a stąd dla i = 0 otrzymujemy f (x0 ) = f (xn ), dla i = 1: b0 = bn−1 + 2cn−1 hn−1 + 3dn−1 h2n−1 , oraz dla i = 2: c0 = cn 8 Znalezienie współczynników sprowadza się zatem do rozwiązania układu równań liniowych: 2 u 2 0 . . . 0 wn w1 0 2 w2 u3 2 .. .. . . ··· ··· 0 ··· ··· 0 w3 .. . ··· ··· ··· .. . ··· ··· ··· .. . 0 ··· ··· .. . · · · · · · un−1 2 ··· ··· 0 un u1 0 0 .. . c1 c2 c3 .. . v1 v2 v3 .. . = wn−1 cn−1 vn−1 cn 2 vn gdzie 3 vn = hn−1 + h0 un = hn−1 hn−1 + h0 wn = h0 hn−1 + h0 f (x1 ) − f (xn ) f (xn ) − f (xn−1 ) − h0 hn−1 a pozostałe wielkości ui , wi i vi (i = 1, 2, . . . , n − 1) są określone jak w (10), (11) i (12) Macierz ta jest macierzą zbliżoną do trójdiagonalnej, różni się od niej jedynie o niezerowe elementy u1 i wn . W celu rozwiązania takiego układu równań, macierz można rozłożyć na iloczyn LU np. metodą eliminacji Gaussa. Chcąc rozwiązać układ równań Ax = d, wystarczy rozwiązać kolejno dwa układy równań Ly = d i U x = y. 1.8 Opisać algorytm eliminacji Gaussa z pełnym wyborem elementu podstawowego. Algorytm eliminacji Gaussa jest algorytmem rozwiązywania układu n równań z n niewiadomymi. Układ równań a1,1 x1 + a1,2 x2 + · · · + a1,n xn = b1 a2,1 x1 + a2,2 x2 + · · · + a2,n xn = b2 ... an,1 x1 + am,2 x2 + · · · + an,n xn = bn przekształcany jest do postaci A(1) x = b(1) a1,1 .. . an,1 . . . a1,n x1 b1 .. .. .. = .. . . . . . . . an,n xn bn Przed wykonaniem algorytmu dla wygody warto kolumny podpisać kolejnymi zmiennymi, a wiersze wyrazami wolnymi. Ułatwia to orientację w zmianach w układzie równań podczas zamiany kolumn (zmiana kolejności zmiennych) oraz wierszy (zmiana kolejności wyrazów wolnych). Wyrazy wolne podlegają tym samym operacjom co reszta macierzy. Algorytm zaczynamy od macierzy W = A; 1. W macierzy W znajdź element s o maksymalnej wartości bezwzględnej. 2. Zamień wiersze macierzy W tak aby s znajdowała się w pierwszym wierszu. 9 2005, 2006, 2007, 2007p, 2008, 2008z, 2011, 2011z, 2012z, 2012 3. Zamień kolumny macierzy W tak aby s znajdowała się na pozycji (1, 1). 4. Odejmij od każdego z pozostałych wierszy wiersz pierwszy pomnożony przez i to numer wiersza. wi,1 w1,1 , gdzie 5. Nową macierzą W jest macierz W bez pierwszego wiersza i pierwszej kolumny. 6. Jeżeli otrzymałeś macierz zerową → STOP - brak jednoznacznego rozwiązania. 7. Jeżeli wykonałeś n iteracji utwórz z odrzuconych wierszy, kolumn i etykiet macierz kwadratową o rozmiarze n i przejdź do odczytywanie kolejnych zmiennych. 8. Wróć do punktu 1. Otrzymujemy macierz górnotrójkątną postaci: i1 i2 q 1,1 q1,2 q2,2 0 .. .. . . 0 0 . . . in . . . q1,n c1 . . . q2,n = c2 .. . .. . . .. cn . . . qn,n gdzie i1 , i2 , . . . , in to zapamiętane przez nas indeksy zmiennych w oryginalnej macierzy, a c1 , c2 , . . . , cn to przekształcone wyrazy wolne. Wartości zmiennych odczytujemy w następujący sposób: 1. Z ostatniego wiersza wyznaczamy x in = cn qn,n 2. W analogiczny sposób, znając już wartości xi+1 , xi+2 , . . . , xn obliczamy kolejne wartości xi P ca − nk=a+1 (xik · qa,k ) x ia = qa,a 1.9 2006, 2007p, 2008p, 2010p, 2012 2007, 2008, 2009, 2011, 1.9.1 Co to znaczy, że rzeczywista macierz kwadratowa A jest dodatnio określona? Jak można zastosować jej rozkład A = LLT do rozwiązania układu równań liniowych Ax = b? Definicja macierzy dodatnio określonej: Zespoloną macierz A stopnia n nazywamy dodatnio określoną, gdy: 1. jest macierzą hermitowską, tj. A = AH (ĀT ) 2. xH Ax > 0 dla wszystkich wektorów x ∈ C n , x 6= 0. Dla rzeczywistej macierzy A stopnia n mamy uproszczone warunki: A ≡ AT 1.9.2 ∧ ∀x ∈ Rn : (x 6≡ 0 ⇒ xT Ax > 0) Jak można zastosować rozkład Choleskiego takiej macierzy do rozwiązania układu równań liniowych? W metodzie Choleskiego rozwiązujemy dwa układy równań liniowych z macierzami trójkątnym. Rozkład rzeczywistej macierzy A na iloczyn LLT wykonujemy na podstawie następujących wzorów: 10 v u k−1 u X u lk,k = tak,k − |lk,j |2 , k = 1, 2, . . . , n, j=1 ai,k − li,k = Pk−1 ¯ j=1 li,j lk,j ¯ lk,k , i = k + 1, k + 2, . . . , n. Dla macierzy rzeczywistej wzory upraszczają się: v u k−1 u X u 2 , lk,k = tak,k − lk,j k = 1, 2, . . . , n j=1 li,k = ai,k − Pk−1 j=1 li,j lk,j lk,k i = k + 1, k + 2, . . . , n Powyższe wzory wynikają bezpośrednio z przedstawienia macierzy A jako iloczyn LLT , a następnie iterowania wierszami po kolejnych elementach macierzy L. Żeby rozwiązać układ równań Ax = LLT x = b z taką macierzą wystarczy rozwiązać najpierw układ równań z macierzą dolnotrójkątną Ly = b, a następnie układ równań z macierzą górnotrójkątną LT x = y (liczby sprzężone zastępujemy odpowiednimi liczbami rzeczywistymi). 1.10 W jaki sposób otrzymuje się metody iteracyjne rozwiązywania układów równań liniowych? Jakie znasz metody i co możesz o nich powiedzieć? Aby skonstruować metodę iteracyjną do rozwiązywania układów równań liniowych Ax = b wystarczy tak dobrać macierz M , by był spełniony warunek zbieżności %(M ) < 1 i warunek zgodności x̄ = M x̄ + w, gdzie x̄ jest rozwiązaniem układu równań Ax = b. Teoretycznie wystarczy zatem wziąć dowolną macierz M taką, by ρ(M ) < 1, a następnie obliczyć wektor w = (I − M )A−1 b wynikający z warunku zgodności. Ponieważ wymagałoby to obliczenia wyrażenia A−1 b, więc w praktyce postępujemy odwrotnie: przyjmujemy, że wektor w jest równy N b, gdzie N jest pewną macierzą kwadratową. Z warunku zgodności mamy wówczas M = I − N A i w ten sposób otrzymujemy rodzinę metod iteracyjnych postaci: x(i+1) = (I − N A)x(i) + N b Znane metody opierają się na równości A = L + D + U , gdzie L jest macierzą dolnotrójkątną, D diagonalną, a U górnotrójkątną. metoda Jacobiego N = D−1 MJ = −D−1 (L + U ) Dx(i+1) = −(L + U )x(i) + b, i = 0, 1, 2, . . . metoda Gaussa–Seidla N = (D + L)−1 MGS = −(D + L)−1 U Dx(i+1) = −Lx(i+1) − U x(i) + b, 11 i = 0, 1, 2, . . . 2006, 2007, 2007p, 2008, 2008p, 2008zp, 2009, 2010p, 2011, 2011zp, 2012zp, 2012 1.11 Opisać metodę połowienia służącą do określenia znajdowania pierwiastka równania nieliniowego 2006 Załóżmy, że w przedziale [a, b] równanie f (x) = 0 ma dokładnie jeden pierwiastek i na którego końcach funkcja ma przeciwna znaki tj. f (a)f (b) < 0. W celu znalezienia przybliżonej wartości pierwiastka, dzielimy przedział [a, b] na połowy punktem x(1) = a+b . 2 Jeżeli f (x(1) ) = 0, to punkt x(1) jest szukanym pierwiastkiem. Jeśli natomiast tak nie jest, to z dwóch przedziałów [a, x(1) ] i [x(1) , b] wybieramy ten, na którego końcach funkcja ma przeciwne znaki. Przedział ten dzielimy na połowy punktem x(2) , badamy wartość funkcji w punkcie x(2) i znaki funkcji na końcach przedziału itd. Po pewnej liczbie kroków otrzymamy albo pierwiastek dokładny, albo ciąg przedziałów, takich, że: f (x(i) )f (x(i+1) ) < 0, gdzie [x(i) , x(i+1) ] oznacza tu i-ty przedział, którego długość wynosi: |x(i+1) − x(i) | = 1 (b − a) 2i Można zauważyć, że lewe końce ciągu przedziałów tworzą ciąg niemalejący i ograniczony z góry, a prawe końce - ciąg nierosnący i ograniczony z dołu, więc wynika z tego, że istnieje ich wspólna granica, która jest szukanym pierwiastkiem 1.12 Opisać metodę regula-falsi służącą do wyznaczania pierwiastka równania nieliniowego f(x) = 0. 2006, 2007, 2007p, 2008, 2009, 2011, 2012 Załóżmy, że w przedziale [a, b] równanie f (x) = 0 ma dokładnie jeden pierwiastek, a funkcja f ma na końcach tego przedziału przeciwne znaki. Załóżmy ponadto, że f ∈ C 2 [a, b] (przestrzeń funkcji ciągłych wraz z pochodnymi do rzędu drugiego) oraz że pochodne pierwszego i drugiego rzędu funkcji f mają stąły znak w tym przedziale. Przy takich założeniach funkcja Pierwsza pochod- może mieć jedną z czterech postaci: na mówi nam o tym, czy funkcja jest rosnąca czy malejąca, druga czy wklęsła czy tez wypukła 1. rosnąca + wklęsła 2. rosnąca + wypukła 3. malejąca + wklęsła 4. malejąca + wypukła Pokażemy przykład f 0 (x), f 00 (x) > 0 (w pozostałych przypadkach jest analogicznie). Przez punkty A(a, f (a)) oraz B(b, f (b)) poprowadzimy cięciwę o równaniu : y − f (a) = f (b) − f (a) (x − a). b−a x(1) = a − f (a) (b − a). f (b) − f (a) Stąd rzędna - y Teraz musimy przeanalizować wyniki. Jeśli f (x(1) ) = 0, to liczba x(1) jest szukanym pierwiastkiem. Jeśli natomiast f (x(1) ) 6= 0 to przez punkt C(x(1) , f (x(1) )) oraz ten z punktów A i B, którego rzędna ma przeciwny znak niż f (x(1) ) prowadzimy następną cięciwę itd. 12 1.13 Opisać metodę Newtona służącą do rozwiązywania układu równań nieliniowch f (x) = 0. W jakim przypadku i jak można ją uprościć? 2006, 2008p, 2009, 2011zp, 2012 Rozwiązanie f1 (x1 , x2 , · · · , xn ) f (x , x , · · · , x ) 2 1 2 n f (x) = =0 ··· fn (x1 , x2 , · · · , xn ) 2007, 2008zp, 2011, 2012zp, Zakładając, że: 1. punkt ξ jest pierwiastkiem powyższego równania 2. wektor x(0) jest przybliżoną wartością ξ Przy powyższych założeniach można zapisać wzory, będące uogólnieniem klasycznej metody Newtona: 0 = f (ξ) ≈ f (x(0) ) + Df (x(0) )(ξ − x(0) ) ∂f 1 ∂x1 ∂f2 ∂x1 Df (x(0) ) = .. . ∂fn ∂xn ∂f1 ∂x2 ∂f2 ∂x2 ··· .. . .. ∂fn ∂x2 ··· ∂f1 ∂xn ∂f2 ∂xn ··· ξ − x(0) , ∂fn .. . . (0) ξ1 − x 1 .. = . (0) ξn − x n ∂xn O ile macierz Df (x(0) ) jest nieosobliwa to: x(i+1) = x(i) − [Df (x(i) )]−1 f (x(i) ) Ze względu na niewygodne obliczenia wynikające z powyższego wzoru w praktyce wzór przekształca się do postaci: Df (x(i) ) x(i+1) = Df (x(i) )x(i) − f (x(i) ) | {z } A | {z } b Do rozwiązania powyższego układu równań liniowych można zastosować dowolną metodę. Metodę tę można uprościć. Zakładając, że 0 < ω < 2, otrzymujemy następujące wzory TO-CHECK Czy ω na pewno iteracyjne na kolejne elementy rozwiązania x: < 2? (i) (i+1) x1 (i) = x2 − ω (i) (i) (i) (i) ∂f1 ∂x1 (x1 , x2 , . . . , xn ) (i+1) (i+1) x2 (i) f1 (x1 , x2 , . . . , xn ) (i) = x1 − ω f2 (x1 (i) (i) , x2 , . . . , xn ) (i+1) (i) (i) ∂f2 , x2 , . . . , xn ) ∂x2 (x1 ... (i+1) x(i+1) n = x(i) n −ω fn (x1 (i+1) , x2 (i+1) (i) , . . . , xn−1 , xn ) (i+1) (i+1) (i+1) (i) ∂fn , x2 , . . . , xn−1 , xn ) ∂xn (x1 13 1.14 Opisać metodę Bairstowa wyznaczania pierwiastków wielomianu. Metoda Bairstowa wyznaczania pierwiastków wielomianu (również zespolonych), polega na tym, że pierwiastki wielomianu x2 − rx − q, gdzie r i q oznaczają liczby rzeczywiste, są także wtedy i tylko wtedy pierwiastkami danego wielomianu rzeczywistego p(x) = a0 xn + a1 xn−1 + · · · + an , a0 6= 0, gdy wielomian p(x) jest podzielny bez reszty przez trójmian kwadratowy x2 − rx − q. W takim przypadku p(x) = p1 (x)(x2 − rx − q) + Ax + B, gdzie stopień wielomianu p1 (x) jest nie większy niż n − 2, przy czym wyrażenie Ax + B jest resztą powstałą przy dzieleniu przez trójmian x2 − rx − q. Współczynniki A i B są zależne od r i q, tzn. A = A(r, q) i B = B(r, q). Ponieważ reszta ma być zerem, należy zatem rozwiązać równania: ( A(r, q) = 0 B(r, q) = 0 Stosujemy w tym celu metodę Newtona: " r(i+1) q (i+1) 1.15 2006, 2007, 2008, 2012 # " = r(i) q (i) # − ∂A ∂r ∂B ∂r ∂A −1 ∂q ∂B ∂q r=r(i) q=q (i) " # A(r(i) , q (i) ) · B(r(i) , q (i) ) Podać definicję ciągu Sturma. Ciąg p(x) = p0 (x), p1 (x), . . . , pn (x) wielomianów rzeczywistych nazywamy ciągiem Sturma gdy: 1. wielomian p0 (x) stopnia n ma tylko pojedyncze pierwiastki 0 2. signp1 (ξ) = −signp0 (ξ) dla wszystkich rzeczywistych pierwiastków ξ wielomianu p0 (x) TO-CHECK Czy te wielomiany to na pewno pi−1 i pi+1 ? 3. dla i = 1, 2, . . . , n − 1 mamy pi+1 (ξ)pi−1 (ξ) < 0 gdzie ξ oznacza pierwiastek rzeczywisty wielomianu pi (x) 4. ostatni wielomian pn (x) nie zmienia swojego znaku Ciąg tworzymy w następujący sposób: Pierwszy wielomian (po (x)) to dana funkcja, drugi (p1 (x)) to pochodna pierwszego wielomianu z przeciwnym znakiem (p1 (x) = −p00 (x)). Kolejne wielomiany pi (x) (i = 2, 3, . . . , n) są resztą z dzielenia wielomianu pi−2 (x) przez wielomian pi−1 (x), wziętą ze znakiem przeciwnym, ewentualnie przemnożoną przez dowolną stałą dodatnią. 14 2005, 2007, 2009, 2011, Opisać metodę numerycznego wyznaczania macierzy A−1 1.16 2008, 2009, 2012 Do wyznaczania macierzy A−1 stosuje się metodę eliminacji Gaussa z częściowym wyborem elementu podstawowego. Algorytm składa się z dwóch etapów: 1. wyznaczamy rozkład LU macierzy A (uwzględniając ewentualne przestawienia wierszy macierzy A) 2. rozwiązujemy n razy układ równań LU x(i) = e(i) , i = 1, 2, . . . , n gdzie e(i) oznacza i-ty wersor w przestrzeni Rn , tj. e(i) = [0, . . . , 1 |{z} , . . . , 0]T i-ta pozycja Rozwiązania x(i) są kolumnami macierzy A−1 , przy czym należy ustawić je w kolejności wynikającej z przestawień wierszy macierzy. Można też równocześnie rozwiązywać n układów równań z prawymi stronami równymi e(i) (i = 1, 2, . . . , n). 1.17 Opisać zagadnienie aproksymacji średniokwadratowej wielomianami. W jaki sposób można rozwiązać powstały układ Haara? W jakim przypadku zagadnienie to jest interpolacją wielomianową? Rozwiązanie: W aproksymacji średniokwadratowej dla funkcji F (x) określonej na przedziale 2007p, 2009, 2011, 2012 [a,b] minimalizujemy ||F (x) − f (x)||, czyli szukamy minimum całki: ||F (x) − f (x)|| = Zb w(x)[F (x) − f (x)]2 dx a gdzie: w(x) jest funkcją wagową F (x) jest funkcją aproksymowaną f (x) jest funkcją aproksymującą natomiast dla funkcji F (x) danej na dyskretnym zbiorze argumentów będziemy poszukiwać minimum sumy: ||F (x) − f (x)|| = m X w(xi )[F (xi ) − f (xi )]2 i=0 przy czym w(xi ) 0 dla i = 0, 1, ..., m Niech: 1. funkcja y = F (x) przyjmuje na pewnym zbiorze X=x0 , x1 , ..., xm wartości y0 , y1 , ..., ym 2. ϕi (x), i = 0, 1, ..., n oznacza układ funkcji bazowych podprzestrzeni Xn+1 Poszukujemy takiej funkcji f (x), która będzie najlepszym przybliżeniem średniokwadrotowym funkcji F (x) na zbiorze X tj. funkcji: f (x) = m X ai ϕi (x) i=0 ai są tak określone, by minimalizować 15 Przyjmijmy: H(a0 , a1 , ..., an ) = m X w(xj )[F (xj ) − j=0 n X ai ϕi (xj )]2 = i=0 m X w(xj )Rj2 j=0 Obliczamy współczynniki ai : m n X X ∂H = −2 w(xj )[F (xj ) − ai ϕi (xj )]ϕk (xj ) = 0 ∂ak j=0 i=0 Otrzymaliśmy w ten sposób układ n+1 równań liniowych z n+1 niewiadomymi ai zwany układem normalnym. Jeżeli jako funkcje bazowe przyjmiemy ciąg jednomianów xi (i = 0, 1, ..., n) to po przekształceniach otrzymamy wówczas układ normalny w postaci: n X αik ai = βk i=0 Objaśnienie do powyższych wzorów: w(x) jest ustalona z góry i taka, że w(xj ) > 0 dla j = 0, 1, ..., m Rj - odchylenie w punkcie xj k = 0, 1, ..., n P Pm i+k k αi k = m j=0 xj , βk = j=0 F (xj )xj Jeżeli: 1. n ¬ m i punkty x0 , x1 , ..., xn są różne, to wyznacznik układu jest różny od zera, a więc układ ten ma dokładnie jedno rozwiązanie 2. n = m, to wielomian aproksymacyjny f (x) pokrywa się z wielomianem interpolacyjnym dla punktów x0 , x1 , ..., xn i wówczas H = 0 2 Dowody 2.1 Wykazać, że jeśli x oznacza liczbę maszynową, to dla dowolnego naturalnego k jest f l(xk ) = xk (1 + ε)k−1 , gdzie |ε| < eps. 2009, 2011 Wstęp: • f l(α) oznacza wartość wyrażenia α w arytmetyce zmiennopozycyjnej, • eps oznacza dokładność maszynową. Dowód indukcyjny. wartość wyr. w ar. zm. dla l. maszynowej to ta liczba 1. Dla k = 1: f l(x) = x Dla k = 2 z definicji wynika, że: f l(x2 ) = f l(x · x) = (x · x)(1 + ε) = x2 (1 + ε) 2. Jeżeli przyjmiemy, że f l(xk−1 ) = xk−1 (1 + ε)k−2 to: f l(xk ) = f l(xk−1 · x) = (f l(xk−1 ) · x)(1 + ε) = xk−1 (1 + ε)k−2 x(1 + ε) = xk (1 + ε)k−1 Wniosek: na mocy zasady indukcji matematycznej można stwierdzić, że podane twierdzenie jest prawdziwe. 16 2.2 Udowodnić, że jeżeli f (x) = (x−x0 )(x−x1 ) . . . (x−xp ), to [x0 , x1 , . . . , xn ; f ] = 0 dla n ¬ p. Jaka jest wartość tego ilorazu, gdy n = p + 1? 2007, 2008, 2009, 2011, 2012 Definicja ilorazu różnicowego: [xl , xl+1 , . . . , xl+k ; f ] = l+k X i=l f (xi ) j=l (xi − xj ) Ql+k j6=i Dowód. Z definicji wynika zatem, że przy założeniu n ¬ p, każdy składnik sumy będzie równy 0, gdyż ponieważ wartość f (x) w punktach x0 , x1 , . . . , xn wynosi 0. Zatem wartość całej sumy, a tym samym ilorazu różnicowego wyniesie 0. Trochę inaczej niż w rozwiazanie.pdf, ale o wiele prościej Dla n = p + 1, n − 1 pierwszych składników powyższej sumy będzie równych 0, natomiast składnik n-ty będzie wyglądał następująco (przyjmując p = n − 1): f (xn ) (xn − x0 )(xn − x1 ) . . . (xn − xp ) = 1 = (xn − x0 )(xn − x1 ) . . . (xn − xp ) j=0 (xn − xj ) Qp Ostatecznie wartość ilorazu różnicowego [x0 , x1 , . . . , xn ; f ] = 0 dla n = p + 1 to 1. 2.3 Udowodnić, że jeśli funkcja g interpoluje funkcję f w węzłach x0 , x1 , . . . , xn−1 , a funkcja h interpoluje funkcję f w węzłach x1 , x2 , . . . , xn , to funkcja g(x) + x0 − x [g(x) − h(x)] xn − x0 interpoluje funkcję f we wszystkich węzłach x0 , x1 , . . . , xn (funkcje g i h nie muszą być wielomianami). 2007, 2008, 2008z, 2011z, 2012z, 2012 Dowód. Oznaczmy przez k(x) funkcję: k(x) = g(x) + x0 − x [g(x) − h(x)] xn − x0 1. Dla x = x0 : x0 − x0 [g(x0 ) − h(x0 )] xn − x0 = g(x0 ) + 0 · [g(x0 ) − h(x0 )] k(x0 ) = g(x0 ) + (13) = g(x0 ) 2. Dla x = xn : x0 − xn [g(xn ) − h(xn )] xn − x0 = g(xn ) − 1 · [g(xn ) − h(xn )] k(xn ) = g(xn ) + = g(xn ) − g(xn ) + h(xn ) = h(xn ) 17 (14) 3. Dla x = xi (i = 1, 2, . . . , n − 1): g(xi ) = h(xi ), zatem x0 − xi [g(xi ) − h(xi )] xn − x0 x0 − xi = g(xi ) − ·0 xn − x0 = g(xi ) k(xi ) = g(xi ) + (15) Ponieważ funkcja g(x) interpoluje funkcję f w węzłach x0 , x1 , . . . , xn−1 , a funkcja h interpoluje funkcję f w węźle xn , zatem na podstawie równań (13), (14) i (15) funkcja k(x) interpoluje funkcję f w węzłach x0 , x1 , . . . , xn . 2.4 2007, 2008, 2012 Udowodnić, że jeśli funkcja g (wielomian lub nie) interpoluje funkcję f w węzłach x0 , x1 , . . . , xn−1 , a funkcja h jest funkcją taką, że h(xi ) = δin (0 ¬ i ¬ n), to istnieje stała c, dla której funkcja g + ch interpoluje funkcję f w punktach x0 , x1 , . . . , xn Wstęp: • Symbol Kronecker’a: ( δij = 1, 0, i=j i 6= j Dowód. Oznaczmy przez k(x) następującą funkcję: k(xi ) = g(xi ) + c · h(xi ) = g(xi ) + c · δin Dla i = 0, 1, . . . , n − 1, wartość symbolu Kronecker’a δin wynosi 0, gdyż i 6= n, zatem k(xi ) = g(xi ), z czego wynika, że dla i = 0, 1, . . . , n − 1 funkcja k(x) interpoluje funkcję f w punktach Być może to po- x0 , x1 , . . . , xn−1 . winno być przez negację, że taka stała nie istnieje i dojść do sprzeczności.. Dla i = n, wartość symbolu Kronecker’a δin wynosi 1, a więc k(xn ) = g(xn ) + c. Ponieważ funkcja k(x) ma interpolować funkcję f (x) w węźle xn , zatem k(xn ) = f (xn ). Znając wartość funkcji interpolowanej f (x) i funkcji g(x) w węźle xn , można wyliczyć c na podstawie wzoru: c = f (xn ) − g(xn ) Istnieje zatem taka stała c, dla której funkcja k(x) = g(x) + c · h(x) interpoluje funkcję f w węzłach x0 , x1 , . . . , xn . 3 3.1 Zadania Na przykładzie trzech, matematycznie równoważnych zapisów funkcji f zmiennej rzeczywistej x oraz przedziału [x] = [− 12 , 32 ] pokazać, że rozszerzenia przedziałowe tej funkcji mogą być różne. Jaka jest wartość funkcji przedziałowej na tym przedziale? 2007p f (x) = 1 1 4 4 + = = , 2−x 2+x 4−x·x 4 − x2 Wstęp: 18 |x| < 2 • f[] - oznaczenia rozszerzenia przedziałowego funkcji • Jeżeli mamy kilka równoważnych zapisów matematycznych, to funkcję przedziałową należy wyznaczyć z wyrażenia, w którym x występuję namniejszą liczbę razy • h[x]i = min {|x| : x ∈ [x]} • |[x]| = max {|x| : x ∈ [x]} h • [x]2 = h[x]i2 , |[x]|2 i Rozwiązanie: 1 (1) f[] ([x]) = 2− h − 21 , 32 1 i+ 2+ h − 12 , 23 2 24 8 2 2 = ,2 + , = , 5 7 3 30 3 4− h 4 (2) f[] ([x]) = =h − 12 , 32 4 · 7 19 4, 4 4 4− h − 21 , 32 i2 = 4 1 1 5 2, 2 i+h 1 3 7 2, 2 i (16) i = 4 4 − − 43 , 94 i 4 4 16 16 = , , 19 7 19 7 − 12 , 23 i = [4, 4] · (3) f[] ([x]) = i h i = h h (17) 4 h 4 − 0, 94 i 16 1 4 i = [4, 4] · =h , = 1, 7 4 7 7 4, 4 (18) Wartość funkcji przedziałowej odpowiada wartości jej rozszerzenia przedziałowego danego równaniem (18). 3.2 W arytmetyce przedziałowej dla dowolnych przedziałów [x], [y] i [z] prawdziwe jest zawieranie [x] · ([y] + [z]) ⊆ [x] · [y] + [x] · [z] Podaj przykład takich przedziałów [x], [y] i [z], aby w powyższej zależności przedział lewostronny był całkowicie zawarty w przedziale prawostronnym. Wstęp: [a] = [a, a] [a] + [b] = [a + b, a + b] h n o n oi [a] · [b] = min a · b, a · b, a · b, a · b , max a · b, a · b, a · b, a · b 1 1 [a]/[b] = [a] · , ,0 ∈ / [b] b b Rozwiązanie: Przyjmując: 1 [x] = −1, − 2 [y] = [1, 2] 19 2007p, 2008, 2009, 2011 Ważne! Końce przedziałów nie mogą być sobie równe (ani jeden)! [z] = −1, − 1 2 Otrzymujemy: 1 1 L = −1, − · [1, 2] + −1, − 2 2 1 3 3 = −1, − · 0, = − ,0 2 2 2 1 1 1 1 7 1 1 P = −1, − · [1, 2] + −1, − · −1, − = −2, − + , 1 = − , 2 2 2 2 4 4 2 Zatem: L⊆P 3.3 Dane są dwa różne algorytmy obliczania różnicy kwadratów dwóch liczb: A1(a, b) = a2 − b2 oraz A2(a, b) = (a − b) · (a + b). Realizacja, którego z tych algorytmów na komputerze jest lepsza i dlaczego? 2005, 2009, 2011 Przy realizacji pierwszego z nich w arytmetyce zmiennoprzecinkowej otrzymujemy f l(a2 − b2 ) = [(a · a)(1 + ε1 ) − (b · b)(1 + ε2 )] (1 + ε3 ) = ! (a2 ε1 − b2 ε2 ) = (a2 − b2 ) 1 + (1 + ε3 ) = (a2 − b2 ) = (a2 − b2 )(1 + δ1 ) gdzie a2 ε1 − b2 ε2 (1 + ε3 ) + ε3 , a2 − b2 a ε1 , ε2 , ε3 są błędami wytworzonymi w poszczególnych działaniach arytmetycznych i zgodnie z zależnością |εi | 6 2−t (i = 1, 2, 3). Jeśli a2 jest odpowiednio bliskie b2 , a ε1 i ε2 mają przeciwne znaki, to błąd względny δ1 wyniku otrzymanego algorytmem A1 może być dowolnie duży. Nie jest tak w przypadku drugiego algorytmu, gdyż δ1 = f l((a − b)(a + b)) = ((a − b)(1 + ε1 )(a + b)(1 + ε2 ))(1 + ε3 ) = = (a2 − b2 )(1 + δ2 ) gdzie |δ2 | 6 |ε1 | + |ε2 | + |ε3 | i błąd względny δ2 jest zawsze nie większy od 3·2−t . (Oszacowanie δ2 jest podane w pierwszym przybliżeniu tj. traktuje iloczyny kilku ε jako 0). Jak widzimy z porównania wartości δ1 i δ2 algorytm drugi jest znacznie lepszy. 3.4 Za pomocą algorytmu Hornera znaleźć iloraz z dzielenia wielomianu w(x) przez dwumian x + 1 2006 w(x) = x3 − 2x2 − 5x + 5 Wstęp: wn = a n wk = wk+1 · x + an , k = n − 1, n − 2, . . . , 0 w0 = w(k) 20 Iloraz z dzielenia uzyskujemy, wyznaczając kolejne współczynniki wk . Ostatni współczynnik (w0 ) jest resztą z dzielenia. v(x) = n X wi xi−1 i=1 Rozwiązanie: v(x) = w(x) x+1 w3 = 1 w2 = 1 · (−1) − 2 = −3 w1 = −3 · (−1) − 5 = −2 w0 = −2 · (−1) + 5 = 7 v(x) = x2 − 3x − 2, 3.5 r=7 Za pomocą algorytmu Hornera znaleźć iloraz dzielenia wielomianu w(x) przez dwumian x − 1 4 3 2 w(x) = x + x − 4x − 3x + 3 2006, 2008zp, 2011zp, 2012zp w4 = 1 w3 = 1 · 1 + 1 = 2 w2 = 2 · 1 − 4 = −2 w1 = (−2) · 1 − 3 = −5 w0 = (−5) · 1 + 3 = −2 v(x) = x3 + 2x2 − 2x − 5, 3.6 r = −2 Za pomocą algorytmu Hornera znaleźć wartości wszystkich znormalizowanych pochodnych wielomianu w(x) w punkcie x = 2. w(x) = x3 − 2x2 − 5x + 5 Wstęp: Wyznaczamy kolejne ilorazy z dzielenia wielomianu w(x) przez dwumian x − C, gdzie C w przypadku tego zadania wynosi 2. Wyznaczanie przerywamy, gdy wielomian będzie stały. Kolejne reszty z dzielenia, począwszy od drugiej, wyznaczają znormalizowane pochodne w punkcie x = C. Rozwiązanie: • w1 (x) = x3 − 2x2 − 5x + 5 w3 = 1 w2 = 1 · 2 − 2 = 0 w1 = 0 · 2 − 5 = −5 w0 = (−5) · 2 + 5 = −5 21 2006, 2007, 2008, 2012 • w2 (x) = x2 − 5 w2 = 1 w1 = 1 · 2 + 0 = 2 w0 = 2 · 2 − 5 = −1 = w0 (2) 1! • w3 (x) = x + 2 w1 = 1 w0 = 1 · 2 + 2 = 4 = • w4 (x) = 1 w0 = 1 = w00 (2) 2! w000 (2) 3! Ostatecznie znormalizowane pochodne wielomianu w(x) w punkcie x = 2 to -1, 4 i 1. 3.7 Za pomocą algorytmu Hornera znaleźć wartości wszystkich znormalizowanych pochodnych wielomianu w(x) w punkcie x = 1. 2007, 2008, 2012 w(x) = x4 + x3 − 4x2 − 3x + 3 • w1 (x) = x4 + x3 − 4x2 − 3x + 3 w4 = 1 w3 = 1 · 1 + 1 = 2 w2 = 2 · 1 − 4 = −2 w1 = (−2) · 1 − 3 = −5 w0 = (−5) · 1 + 3 = −2 • w2 (x) = x3 + 2x2 − 2x − 5 w2 = 1 w1 = 1 · 1 + 2 = 3 w1 = 3 · 1 − 2 = 1 w0 = 1 · 1 + −5 = −4 • w3 (x) = x2 + 3x + 1 w2 = 1 w1 = 1 · 1 + 3 = 4 w0 = 4 · 1 + 1 = 5 • w4 (x) = x + 4 w1 = 1 w0 = 1 · 1 + 4 = 5 22 • w5 (x) = 1 w0 = 1 Ostatecznie znormalizowane pochodne wielomianu w(x) w punkcie x = 1 to -4, 5, 5 i 1. 3.8 Za pomocą algorytmu Shaw-Trauba znaleźć wartości wszystkich znormalizowanych pochodnych wielomianu w(x) w punkcie x = 1 2007p 4 3 2 w(x) = x + x − 4x − 3x + 3 Wstęp: • wyznaczamy m pierwszych znormalizowanych pochodnych wielomianu • pq = n + 1, gdzie p, q - liczby naturalne • s(j) = (n − j) mod q, ( • r(j) = 0 q j = 0, 1, . . . , n dla j mod q 6= 0 , dla j mod q = 0 • Ti−1 = an−i−1 xs(i+1) , • Tjj = an xs(0) , j = 0, 1, . . . , m • Okazuje się, że Tnj = wzorem j = 0, 1, . . . , n i = 0, 1, . . . , n − 1 j j−1 xr(i−j) , + Ti−1 • Tij = Ti−1 Tnj xj mod q dla p = 1 minimalna liczba mnożeń , j = 0, 1, . . . , m; w(j) (x) j mod q , j! x i = j + 1, j + 2, . . . , n zatem j-ta znormalizowana pochodna wyraża się j = 1, 2, . . . , m Rozwiązanie: • n=4 • pq = 5 ⇒ p = 1, q = 5 • s(j): j 0 1 2 3 4 s(j) 4 3 2 1 0 j 0 1 2 3 4 r(j) 5 0 0 0 0 • r(j): • Tij : 23 Ponieważ x = 1 można pominąć liczenie wszystkich potęg aa i aaj -1 a 0 1 2 3 4 1 -4 -3 3 0 1 2 3 4 1 2 -2 -5 -2 1 3 1 -4 1 4 5 1 5 1 Przykłady: T0−1 = 1 · 13 = 1 T22 = 1 · 14 = 1 T20 = T1−1 + T10 = −4 + 2 = −2 T43 = T32 + T33 = 4 + 1 = 5 • Znormalizowane pochodne: rząd 1 2 3 4 3.9 wartość -4 5 5 1 Za pomocą algorytmu Shaw-Trauba znaleźć wartości wszystkich znormalizowanych pochodnych wielomianu w(x) w punkcie x = 2 2006 w(x) = x3 − 2x2 − 5x + 5 • n=3 • pq = 4 ⇒ p = 1, q = 4 • s(j): j 0 1 2 3 s(j) 3 2 1 0 j 0 1 2 3 r(j) 4 0 0 0 • r(j): elementy na przekątnej Tjj są zawsze takie same • Tij : aa i a j a a 0 1 2 3 -1 0 22 23 −2 · = −8 −5 · 21 = −10 5 · 20 = 5 1· =8 −8 + 8 · 20 = 0 −10 + 0 · 20 = −10 5 − 10 · 20 = −5 24 1 2 3 8 0 + 8 · 20 = 8 −10 + 8 · 20 = −2 8 8 + 8 · 20 = 16 8 • Znormalizowane pochodne: rząd wartość −2 21 1 3.10 = −1 2 16 22 =4 3 8 23 =1 Za pomocą algorytmu Neville’a znaleźć wartość wielomianu interpolacyjnego w punkcie x = 21 , który w punktach 0,1,2 przyjmuje wartości odpowiednio 1,1,3. 2006, 2007p Wstęp: • Pi0 = f (xi ) W mianowniku różnica między skrajnymi węzłami • (x − xi−k )Pi,k−1 − (x − xi )Pi−1,k−1 xi − xi−k Pi,k−1 − Pi−1,k−1 = Pi,k−1 + , 1 ¬ k ¬ i, x−xi−k x−xi − 1 Pik = i = 0, 1, . . . Rozwiązanie: k=0 Pi0 = f (xi ) P00 = 1 xi 0 i 0 k=1 Pi1 > =1 > > 2 1 1−0 P10 = 1 1 1 P11 = k=2 Pi2 P21 = 0 2−1 P22 = 3 2 2−0 = 3 4 =0 P20 = 3 2 Przykład: P11 = Ostatecznie L2 3.11 1 2 = 1 2 − x0 · P10 − 1 2 − x1 · P00 x1 − x0 = 1 2 · 1 − − 12 · 1 1 =1 3 4 Dane są wartości f (0) = −1, f 0 (0) = −2, f (1) = 0, f 0 (1) = 10, f ”(1) = 40. Znaleźć wielomian interpolacyjny Hermite’a. 2005 Wstęp: • Oznaczenia – n - stopień wielomianu Hermite’a – mi - krotność i-tego węzła (i = 0, 1, . . . , n) (czyli ile ma zdefiniowanych pochodnych) – k + 1 - ilość węzłów – zobacz również 1.3 25 • Funkcja pomocniczna s(i) (suma krotności i początkowych węzłów interpolacji): ( s(i) = 0 m0 + m1 + · · · + mi−1 dla i = 0, dla i > 0 • Każdą liczbę l = 0, 1, . . . , n można jednoznacznie przestawić w postaci l = s(i) + j, gdzie 0 ¬ i ¬ k oraz 0 ¬ j ¬ mi − 1. • Wielomian ps(i)+j : ps(0) (x) = 1 ps(i)+j (x) = (x − x0 )m0 (x − x1 )m1 . . . (x − xi )j , j = 1, 2, . . . , mi − 1 i = 0, 1, . . . , k; • Szukany wielomian Hn : Hn (x) = n X bl pl (x) = k mX i −1 X bs(i)+j ps(i)+j (x) i=0 j=0 l=0 • Uogólnionym ilorazem różnicowym funkcji f nazywamy: 1. dla i-krotnego węzła xl : [xl , i; f ] = f (i−1) (xl ) (i − 1)! (19) 2. dla różnych węzłów xl , xl+1 , . . . , xl+k o krotnościach odpowiednio il , il+1 , . . . , il+k [xl , il ; xl+1 , il+1 ; . . . ; xl+k , il+k ; f ] = (20) [xl , il − 1; xl+1 , il+1 ; . . . ; xl+k , il+k ; f ] − [xl , il ; xl+1 , il+1 ; . . . ; xl+k , il+k − 1; f ] xl+k − xl • Współczynniki bl wielomianu interpolacyjnego Hermite’a są równe ilorazom różnicowym interpolowanej funkcji opartym na początkowych węzłach z uwzględnieniem ich krotności, tzn. bl = [x0 , m0 ; x1 , m1 ; . . . ; xi−1 , mi−1 ; xi , j + 1; f ] Rozwiązanie: • Dane: k=1 i xi mi f (xi ) f 0 (xi ) f 00 (xi ) 0 0 2 -1 -2 - 1 1 3 0 10 40 • Suma krotności węzłów wynosi 5, zatem szukany wielomian będzie stopnia co najwyżej czwartego. H4 (x) = 4 X bl pl (x) = 2 mX i −1 X i=0 j=0 l=0 • Funkcja s(i): 26 bs(i)+j ps(i)+j (x) i 0 1 s(i) 0 m0 = 2 • Wartość l: l 0 1 2 3 4 i 0 0 1 1 1 j 0 1 0 1 2 • Wielomian ps(i)+j : p0 (x) = (x − 0)0 = 1 p1 (x) = (x − 0)1 = x p2 (x) = (x − 0)2 (x − 1)0 = x2 p3 (x) = (x − 0)2 (x − 1)1 = x2 (x − 1) p4 (x) = (x − 0)2 (x − 1)2 = x2 (x − 1)2 • Współczynniki b: i=0 x0 = 0 [x0 , 1; f ] = −1 x0 = 0 [x0 , 1; f ] = −1 x1 = 1 [x1 , 1; f ] = 0 x1 = 1 [x1 , 1; f ] = 0 i=1 i=2 i=3 i=4 [x0 , 2; f ] = −2 [x0 , 2; x1 , 1; f ] = 3 [x0 , 1; x1 , 1; f ] = 1 [x0 , 2; x1 , 2; f ] = 6 [x0 , 1; x1 , 2; f ] = 9 [x1 , 2; f ] = 10 [x0 , 2; x1 , 3; f ] = 5 [x0 , 1; x1 , 3; f ] = 11 [x2 , 3; f ] = 20 [x1 , 2; f ] = 10 x1 = 1 [x1 , 1; f ] = 0 Wyjaśnienie: Komórki powyższej wypełniamy tak, aby utworzony iloraz różnicowy był zgodny ze wzorem (19), w przypadku gdy ”lewy górny” i ”lewy dolny” iloraz składa się z jednego węzła, lub wzorem (20). Przykłady: [x2 , 3; f ] = 40 = 20 2! [x0 , 1; x1 , 1; f ] = 0+1 =1 1−0 [x0 , 2; x1 , 2; f ] = 9−3 =6 1−0 • Ostateczny wielomian Hermite’a: Współczynniki bl wielomianu znajdują się na górnej przekątnej tabeli: H4 (x) = b0 p0 + b1 p1 + · · · + bn pn = −1 − 2x + 3x2 + 6x2 (x − 1) + 5x2 (x − 1)2 27 3.12 Wielomian p(x) interpoluje cztery początkowe punkty z poniższej tablicy. Dodając do wielomianu p jeden składnik, wyznaczyć wielomian interpolujący wszystkie dane. p(x) = 2 − (x + 1) + x(x + 1) − 2x(x + 1)(x − 1) x y -1 2 0 1 1 2 2 -7 3 10 Aby wielomian interpolował wszystkie dane zawarte w tabeli, musi być w postaci (wielomianu interpolacyjnego) Newtona. Postać dotychczasowego wielomianu p(x) wynika z podstawienia wyliczonych ilorazów różnicowych do wzoru interpolacyjnego Newtona dla wielomianu stopnia trzeciego: p(x) = f (x0 ) + [x0 , x1 ; f ](x − x0 ) + [x0 , x1 , x2 ; f ](x − x0 )(x − x1 )+ +[x0 , x1 , x2 , x3 ; f ](x − x0 )(x − x1 )(x − x2 ) Składnik, który musi zostać dodany do wielomianu p(x) ma postać: q(x) = [x0 , x1 , x2 , x3 , x4 ; f ](x − x0 )(x − x1 )(x − x2 )(x − x3 ) = a(x + 1)(x − 0)(x − 1)(x − 2) Wielomian interpolujący wszystkie dane zawarte w tabeli oznaczymy jako r(x) i będzie wyrażał się wzorem: r(x) = p(x) + q(x) Na podstawie tabeli wiemy, że p(3) + q(3) = 10, stąd też możemy wyznaczyć współczynnik a: 10 = 2 − (3 + 1) + 3(3 + 1) − 2 ∗ 3(3 + 1)(3 − 1) + 3a(3 + 1)(3 − 1)(3 − 2) = = 2 − 4 + 12 − 48 + 24a 24a = 48 a=2 Szukany wielomian jest więc następujący: r(x) = 2 − (x + 1) + x(x + 1) − 2x(x + 1)(x − 1) + 2x(x + 1)(x − 1)(x − 2) Alternatywnym sposobem rozwiązania zadania jest konstrukcja tablicy ilorazów różnicowych dla wszystkich danych zawartych w tabeli. 3.13 Dla jakich wartości a, b, c funkcja S(x) może być w przedziale [0, 3) naturalną funkcją sklejaną stopnia trzeciego? 2007, 2008, 2009, 2011, 2012 ( S(x) = x3 1 3 2 2 (x − 1) + a(x − 1) + b(x − 1) + c x ∈ [0, 1) x ∈ [1, 3) • Funkcja ma być naturalną funkcją stopnia trzeciego, zatem 2m − 1 = 3 ⇒ m = 2 (por. definicja naturalnej funkcji sklejanej 1.6.1). W przedziałach (−∞, 0) i [3, +∞) funkcja ta będzie stopnia m − 1, czyli funkcją liniową. • Pełny zapis funkcji: S(x) = ex + f x3 1 (x − 1)3 + a(x − 1)2 + b(x − 1) + c 2 gx + h 28 x ∈ (−∞, 0) x ∈ [0, 1) x ∈ [1, 3) x ∈ [3, +∞) 2007, 2008, 2012 • Pierwsza pochodna: S 0 (x) = e 3x2 3 2 2 (x − 1) + 2a(x − 1) + b g x ∈ (−∞, 0) x ∈ [0, 1) x ∈ [1, 3) x ∈ [3, +∞) • Druga pochodna: S 00 (x) = 0 6x x ∈ (−∞, 0) x ∈ [0, 1) x ∈ [1, 3) x ∈ [3, +∞) 3(x − 1) + 2a 0 • Warunki: – S 00 (0+ ) = S 00 (0− ) ⇒ 0 = 6 · 0 – S 00 (1− ) = S 00 (1+ ) ⇒ 2a = 6 ⇒ a = 3 – S 00 (3− ) = S 00 (3+ ) ⇒ 6 + 2a = 0 ⇒ a = −3 sprzeczne z powyższym Ostatecznie nie istnieją takie parametry, dla których funkcja S(x) może być w przedziale [0, 3) naturalną funkcją sklejaną. 3.14 Dla jakich wartości a, b, c i d funkcja S(x) jest funkcją sklejaną stopnia trzeciego? S(x) = 1 − 2x a + bx + cx2 + dx3 157 − 32x 2007, 2008, 2008z, 2011z, 2012z, 2012 x ∈ (−∞, −3) x ∈ [−3, 4) x ∈ [4, ∞) • Z definicji funkcja sklejana stopnia trzeciego musi być ciągła i posiadać ciągłe pochodne rzędu 1, 2 • Dla podanej funkcji S(x) = 1 − 2x a + bx + cx2 + dx3 157 − 32x x ∈ (−∞, −3) x ∈ [−3, 4) x ∈ [4, ∞) należy sprawdzić jej ciągłość w węzłach: S(−3− ) = S(−3+ ) S(−3− ) = 1 − 2 · (−3) = 7 S(−3+ ) = a + (−3) · b + 9 · c + (−27) · d a − 3b + 9c − 27d = 7 (21) S(4− ) = S(4+ ) S(4− ) = a + 4 · b + 16 · c + 64 · d S(4+ ) = 157 − 32 · (4) = 29 a + 4b + 16c + 64d = 29 29 (22) • Pierwsza pochodna: 0 S (x) = −2 b + 2cx + x ∈ (−∞, −3) x ∈ [−3, 4) x ∈ [4, ∞) 3dx2 32 Co daje nam następujące zależności: S 0 (−3− ) = S 0 (−3+ ) S 0 (−3− ) = −2 S 0 (−3+ ) = b + 2 · (−3) · c + 3 · 9 · d b − 6c + 27d = −2 (23) S 0 (4− ) = S 0 (4+ ) S 0 (4− ) = b + 2 · 4 · c + 3 · 16 · d S 0 (4+ ) = 32 b + 8c + 48d = 32 (24) • Druga pochodna: S 0 (x) = 0 2c + 6dx 0 x ∈ (−∞, −3) x ∈ [−3, 4) x ∈ [4, ∞) I wynikające z niej zależności: S 00 (−3− ) = S 00 (−3+ ) S 00 (−3− ) = 0 S 00 (−3+ ) = 2c − 18d 2c − 18d = 0 (25) S 00 (4− ) = S 00 (4+ ) S 00 (4− ) = 2c + 24d S 00 (4+ ) = 0 2c + 24d = 0 (26) Rozwiązując układ równań (25) i (26) otrzymamy c = 0 i d = 0. Podstawiając te wyniki do równania (24) otrzymujemy b = 32, a z równania (23) b = −2. Otrzymujemy tym samym sprzeczność, a więc nie istnieją takie wartości parametrów a, b, c i d, dla których funkcja S(x) byłaby funkcją sklejaną stopnia trzeciego. 30 3.15 Dla jakich wartości a, b funkcja S(x) jest funkcją sklejaną stopnia trzeciego 2008, 2012 S(x) = 3 2 (x − 2) + a(x − 1) (x − 2)3 − (x − 3)2 (x − 3)3 + b(x − 2)2 x ∈ (−∞, 2) x ∈ [2, 3) x ∈ [3, ∞) Z definicji wynika, że funkcja sklejana stopnia trzeciego musi być ciągła i posiadać ciągłe pochodne rzędu 1, 2. Sprawdzenie ciągłości funkcji S(x) i jej pochodnych: S(2)− = (2 − 2)3 + a(2 − 1)2 = a S(2)+ = (2 − 2)3 − (2 − 3)2 = −1 a = −1 (27) S(3)− = (3 − 2)3 + (3 − 3)2 = 1 S(3)+ = (3 − 3)3 + b(3 − 2)2 = b b=1 (28) Pierwsza pochodna: S 0 (x) = 2 3(x − 2) + 2a(x − 1) 3(x − 2)2 − 2(x − 3) 3(x − 3)2 + 2b(x − 2) x ∈ (−∞, 2) x ∈ [2, 3) x ∈ [3, +∞) S(2)− = 3(2 − 2)2 + 2a(2 − 1) = 2a S(2)+ = 3(2 − 2)2 − 2(2 − 3) = −2 a=1 (29) Jak widzimy zachodzi sprzeczność, ponieważ z równań 1 i 3 wynika, że −1=a=1 (30) co jest oczywistą nieprawdą. Na tej podstawie możemy stwierdzić, że nie istnieją takie parametry a i b, dla których funkcja S(x) byłaby funkcją sklejaną trzeciego stopnia. 3.16 Dla jakich wartości a, b, c i d funkcja S(x) może być w przedziale [−1, 1) naturalną funkcją sklejaną stopnia trzeciego? 2007, 2008, 2012 ( S(x) = x3 a + bx + cx2 + dx3 x ∈ [−1, 0) x ∈ [0, 1) • Funkcja ma być naturalną funkcją stopnia trzeciego, zatem 2m − 1 = 3 ⇒ m = 2 (por. definicja naturalnej funkcji sklejanej 1.6.1). W przedziałach (−∞, −1) i [1, +∞) funkcja ta będzie stopnia m − 1, czyli funkcją liniową. • Pełny zapis funkcji: S(x) = ex + f x3 a + bx + cx2 + dx3 gx + h 31 x ∈ (−∞, −1) x ∈ [−1, 0) x ∈ [0, 1) x ∈ [1, +∞) • Pierwsza pochodna: S 0 (x) = e 3x2 x ∈ (−∞, −1) x ∈ [−1, 0) x ∈ [0, 1) x ∈ [1, +∞) b + 2cx + 3dx2 g • Druga pochodna: S 00 (x) = 0 6x 2c + 6dx 0 x ∈ (−∞, −1) x ∈ [−1, 0) x ∈ [0, 1) x ∈ [1, +∞) • Warunki: – S 00 (−1− ) = S 00 (−1+ ) ⇒ 0 = 6 · (−1) ⇒ sprzeczność Ostatecznie nie istnieją takie parametry, dla których funkcja S(x) może być w przedziale [−1, 1) naturalną funkcją sklejaną. 3.17 2008zp, 2012zp Znaleźć rozkład A = LLT , jeśli macierz A ma postać: 2011zp, 4 2 2 A = 2 5 3 2 3 6 3.17.1 Rozwiązanie 1: Korzystamy ze wzorów: v u k−1 u X u |lkj |2 lkk = takk − k = 1, 2, . . . , n j=1 lik = aik − Pk−1 j=1 lij lkj i = k + 1, k + 2, . . . , n lkk Najpierw liczymy wartości z przekątnej macierzy, a następnie korzystając z nich pozostałe wartości z danej kolumny. l11 = l22 = l33 = 3.17.2 √ 2−0 2−0 = 1 l31 = =1 2 2 3−1·1 = =1 2 4 − 0 = 2 l21 = p 5 − 12 = 2 l32 q 6 − (12 + 12 ) = 2 Rozwiązanie 2: A = LLT 32 L11 L21 L31 L11 0 0 4 2 2 0 · 0 L22 L32 2 5 3 = L21 L22 0 0 L33 L31 L32 L33 2 3 6 L211 L11 L21 L11 L31 2 2 L21 + L22 L21 L31 + L22 L32 = L11 L12 L11 L31 L21 L31 + L22 L32 L231 + L232 + L233 Z czego wynika, że (pamiętając, że elementy macierzy L na głównej przekątnej są dodatnie): L211 = 4 ⇒ L11 = 2 L11 L21 = 2 ⇒ L21 = 1 L11 L31 = 2 ⇒ L31 = 1 L221 + L222 = 5 ⇒ L22 = 2 L21 L31 + L22 L32 = 3 ⇒ 1 + 2L32 = 3 ⇒ L32 = 1 L231 + L232 + L233 = 6 ⇒ 1 + 1 + L233 = 6 ⇒ L33 = 2 3.17.3 Wynik: Otrzymane macierze: 2 0 0 L = 1 2 0 1 1 2 3.18 2 1 1 T L = 0 2 1 0 0 2 Dla jakich wartości parametru α macierz A jest dodatnio określona? 2009, 2011 1 α α 1 α α α 1 A = α Sprawdźmy, czy badana macierz jest macierzą hermitowską, czyli czy jest równa swojej macierzy hermitowskiej, tj. macierzy transponowanej, której wszystkie elementy są sprzężone. Liczba sprzężona oznaczana jako a, jak Czytelnik może pamiętać z Algebry Liniowej to liczba której część urojona ma przeciwny znak (w przypadku liczb rzeczywistych to ta sama liczba). Mamy zatem: A = AH 1 α α 1 α α α 1 α = α 1 α α α 1 α α 1 Z powyższego wynika, że α = α, czyli α ∈ R. Uważny czytelnik może zauważyć, że macierz A jest w takim razie rzeczywista oraz elementy na głównej przekątnej są dodatnie. Pozostaje zatem sprawdzić, czy wiodące minory główne (tj. wyznaczniki podmacierzy powstałych przez wykreślenie ostatnich wiersz i kolumn) są dodatnie: Kryterium Sylvestra 1>0 1 − α2 > 0 ⇒ −1 < α < 1 2α3 − 3α2 + 1 > 0 33 Ostatnia nierówność nie jest trywialna, ale możemy ją tymczasowo sprowadzić do równania: 2α3 − 3α2 + 1 = 0 Łatwo zauważyć, że pierwiastkiem tego równania jest 1, więc możemy schematem Hornera podzielić powyższy wielomian przez α − 1. Oczywiście otrzymamy wówczas: (α − 1)(2α2 − α − 1) = 0 Uważny czytelnik zauważy, że wielomian 2α2 − α − 1 również dzieli się bez reszty przez α − 1. Ostatecznie: (α − 1)(2α + 1)(α − 1) = 0 Tak więc rozwiązaniem nierówności: 1 (α − 1) > 0 2 (α − 1) α + jest α ∈ − 12 , 1 ∪ (1, ∞). Oczywiście składając wszystkie warunki otrzymujemy: 1 α ∈ − ,1 2 3.19 2006, 2008p, 2010p, 2012 2007, 2009, 2011, Zbadać wpływ zaburzenia wektora b na dokładność rozwiązania x układu równań liniowych Ax = b Dokładne rozwiązanie x układu równań jest postaci: Ax = b Jeśli wektor b będzie zaburzony o wielkość ∆b, otrzymamy: A(x + ∆x) = b + ∆b Ax + A∆x = b + ∆b Ponieważ Ax = b, więc: A∆x = ∆b ∆x = A−1 ∆b ||∆x|| ¬ ||A−1 || · ||∆b|| ||b|| = ||Ax|| ¬ ||A|| · ||x|| ||A−1 || · ||∆b|| ||∆b|| ||∆b|| ||∆x|| ¬ = ||A|| · ||A−1 || · = cond(A) · ||b|| ||x|| ||b|| ||b|| ||A|| Wielkość cond(A) = ||A|| · ||A−1 || jest to wskaźnik uwarunkowania macierzy A - miara wrażliwości względnego błędu rozwiązania x na zaburzenie b. 1 = ||I|| = ||A · A−1 || ¬ ||A|| · ||A−1 || = cond(A) cond(A) 1 gdzie I jest macierzą jednostkową 34 3.20 Zbadać zbieżność metody Jacobiego dla układu równań liniowych. √1 3 1 A = √13 √1 3 √1 3 1 √1 3 √1 3 1 Metoda Jacobiego: MJ = −D−1 (L + U) 1 0 0 √1 3 0 D = 0 1 0 , L + U = √13 0 0 1 −1 0 −1 −1 MJ = 0 0 0 0 0 0 · √13 −1 (MJ − λ · √1 3 0 −D−1 = 0 0 √1 3 0 0 −1 √1 3 √1 3 0 −1 0 0 √1 3 √1 3 √1 3 √ 0 √ 3 3 √ √1 √1 0 − 33 3 3 √ √ −λ − 33 − 33 √ √ 3 3 I) = − 3 −λ − 3 √ √ 3 3 − 3 − 3 −λ 0 = − − 3 3 0 √ − 3 3 √ 3 3 √ − 33 − 0 2 det(MJ − λ · I) = −λ3 + λ − √ 3 3 2 −λ3 + λ − √ = 0 3 3 1 1 2 λ1 = √ , −λ2 − √ λ + = 0 3 3 3 2 9 1 1 λ1 = √ , ∆ = − 4 ∗ (−1) ∗ = = 3 3 3 3 3 1 1 2 λ1 = √ , λ2 = √ , λ3 = − √ 3 3 3 Otrzymujemy ρ(MJ ) = |λ3 | > 1, tak więc metoda Jacobiego nie jest zbieżna. 3.21 Zbadać zbieżność metody Gaussa-Siedla dla układu równań liniowych. 2005 √1 3 1 A = √13 1 √1 3 √1 3 √1 3 √1 3 1 Metoda Gaussa-Siedla: MGS = −(D + L)−1 U 35 −1 0 √ 3 √ 3 −(D + L)−1 = −1 0 √ MGS = 33 √ −1 √ 3−1 3 3 3 0 √1 3 0 0 · 0 0 −1 √1 3 √1 3 0 −λ (MGS − λ · I) = 0 0 0 − 1 3 −1 √ 0 0 √ 3 3 −1 3−1 3 0 − 0 = 0 √ 3 3 − √ −λ √ 3− 3 9 − − 3−1 3 √ 6− 3 9 −λ 3 3 √ − 3−1 3 √ 6− 3 9 1 3 √ 3− 3 9 0 √ 3 3 √ 3 3 √ √ 1 det(MJ − λ · I) = − λ(9λ2 + ( 3 − 9)λ + 3) 9 Teraz trzeba rozwiązać równanie √ √ 1 − λ(9λ2 + ( 3 − 9)λ + 3) = 0 9 λ1 = 0, λ2 = 0.403775 − 0.171511i, |λ1 | = 0, λ3 = 0.403775 + 0.171511i |λ2 | = |λ3 | = 0.438692.. Otrzymujemy ρ(MJ ) = |λ2 | = 0.438692 < 1, tak więc metoda Gaussa-Siedla jest zbieżna przy dowolnym wyborze wektora początkowego. 3.22 Zbadać zbieżność metod Jacobiego i Gaussa-Siedla dla układu równań liniowych z macierzą 2006 1 2 −2 A = 1 1 1 2 2 1 3.22.1 Metoda Jacobiego Dla metody Jacobiego macierz M zdefiniowana jest w następujący sposób MJ = −D−1 (L + U ) gdzie D jest macierzą diagonalną, L dolnotrójkątną, a U macierzą górnotrójkątną. W tym przypadku: 0 0 0 0 2 −2 1 0 0 D = 0 1 0 , L = 1 0 0 , U = 0 0 1 0 0 1 2 2 0 0 0 0 Następnie należy znaleźć macierz odwrotną do macierzy D i pomnożyć ją przez −1. Ponieważ jest to macierz jednostkowa, macierz odwrotna do niej jest taka sama. D−1 1 0 0 = 0 1 0 , 0 0 1 −D−1 36 −1 0 0 = 0 −1 0 0 0 −1 Podstawienie do wzoru: 0 2 −2 0 0 0 −1 0 0 MJ = 0 −1 0 · 1 0 0 + 0 0 1 = 0 0 0 2 2 0 0 0 −1 0 −2 2 0 2 −2 −1 0 0 = 0 −1 0 · 1 0 1 = −1 0 −1 −2 −2 0 2 2 0 0 0 −1 Tworzymy macierz −λ −2 2 λ 0 0 0 −2 2 (MJ − λ · I) = −1 0 −1 − 0 λ 0 = −1 −λ −1 −2 −2 −λ 0 0 λ −2 −2 0 Rozwiązując równanie det(MJ − λ · I) = 0 ⇒ (−λ)3 = 0 otrzymamy ρ(MJ ) = λ1,2,3 = 0 < 1. Zatem metoda Jacobiego jest zbieżna przy dowolnym wyborze wektora początkowego. 3.22.2 Metoda Gausa–Seidla Dla metody Gausa–Seidla macierz M zdefiniowana jest w następujący sposób: MGS = −(D + L)−1 U Macierze D, L oraz U pozostają bez zmian. 1 0 0 (D + L) = 1 1 0 , 2 2 1 (D + L)−1 −(D + L)−1 MGS 1 0 0 = −1 1 0 , 0 −2 1 −1 0 0 = 1 −1 0 0 2 −1 −1 0 0 0 2 −2 0 −2 2 = 1 −1 0 · 0 0 1 = 0 2 −3 0 2 −1 0 0 0 0 0 2 Rozwiązując równanie det(MGS − λ · I) = 0 otrzymujemy ρ(MGS ) = λ2,3 = 2 > 1 zatem metoda Gaussa–Seidla nie gwarantuje zbieżności przy dowolnie wybranym wektorze początkowym. 3.23 Wykazać, że dla poniższej macierzy metoda Gaussa–Seidla nie gwarantuje zbieżności przy dowolnym wyborze początkowego przybliżenia rozwiązania układu równań liniowych Ax = b. 2008p, 2010p 1 2 −2 1 2 2 1 A = 1 1 Konstruujemy macierz dolnotrójkątną L, diagonalną D i górnotrójkątną U : 0 0 0 L = 1 0 0 , 2 2 0 1 0 0 D = 0 1 0 , 0 0 1 37 0 2 −2 U = 0 0 1 0 0 0 Następnie korzystamy ze wzoru ma macierz Gausa–Seidla: MGS = −(D + L)−1 U. 1 0 0 D + L = 1 1 0 2 2 1 (D + L)−1 1 0 0 = −1 1 0 0 −2 1 −(D + L)−1 −1 0 0 = 1 −1 0 0 2 −1 0 −2 2 −(D + L)−1 U = 0 2 −3 0 0 2 Odejmujemy od wynikowej macierz macierz λ ∗ I MGS −λ −2 2 − λI = 0 2 − λ −3 0 0 2−λ Wyznaczamy wielomian i jego pierwiastki −λ MGS − λI = 0 0 −2 2 2 − λ −3 = −λ ∗ (2 − λ)2 0 2 − λ λ=0 ∨ λ=2 Stąd widzimy, że ρ(MGS ) = 2 > 0, a więc metoda nie gwarantuje zbieżności. 3.24 Zastosować twierdzenie Sturma do określenia liczby dodatnich pierwiastków rzeczywistych wielomianu: 2007, 2008, 2008p, 2008z, 2010p, 2011z, 2012z, 2012 w (x) = x3 − 2x2 − 5x + 5 3.24.1 UWAGA: zwrócić uwagę na nawiasy! Wstęp: Aby obliczyć liczbę pierwiastków rzeczywistych metodą Sturma w przedziale [a, b) należy postępować wg następujących kroków: 1. p0 (x) = p(x) 2. p1 (x) = −(p(x))0 [pochodna pierwszego stopnia z p(x) pomnożona przez -1] 3. pi (x) = c · pi−2 modpi−1 [reszta z dzielenia dwóch poprzedzających wielomianów przez siebie, ewentualnie pomnożona przez jakąś dodatnią stałą c] 4. jeśli pi jest równe 0, postępujemy zgodnie z algorytmem pokazanym w zadaniu nr 24. 38 3.24.2 Rozwiązanie p0 (x) = x3 − 2x2 − 5x + 5 p1 (x) = −3x2 + 4x + 5 − 31 x + − 3x2 + 4x + 5 2 9 x3 − 2x2 − 5x + 5 − x3 + 43 x2 + 35 x − 23 x2 − 10 3 x +5 2 2 8 10 x − 3 9x − 9 − 38 9 x + 35 9 p2 (x) = 38x − 35 − 3 38 x + 38x − 35 − 3x2 + 4x 3x2 − 105 38 x − 47 38 x 47 38 x 47 1444 +5 +5 + 1645 1444 8865 1444 p3 (x) = −1 3.24.3 Zmiany znaków x p0 (x) p1 (x) p2 (x) p3 (x) 3.24.4 0 + + - inf + + - Liczba pierwiastków w x = 0 Z uwagi na fakt, że musimy znaleźć liczbę pierwiastków dodatnich, bierzemy pod uwagę przedział (0, inf). Nie jest to jednak zgodne z treścią zadania, gdyż 0 nie jest dodatnie. Zatem musimy sprawdzić, czy w 0 jest jakiś pierwiastek i ewentualnie odjąć go od końcowego wyniku. w(0) = 0 5 6= 0 Brak pierwiastków w punkcie 0. 3.24.5 Liczba dodatnich pierwiastków rzeczywistych |3 − 1| − 0 = 2 3.25 Zastosować twierdzenie Sturma do określenia liczby pierwiastków rzeczywistych wielomianu. p(x) = x3 + x2 − x − 1 39 2007, 2008p, 2012 2008, 2010p, 3.25.1 Rozwiązanie: p0 (x) = x3 + x2 − x − 1 p1 (x) = −p00 (x) = −3x2 − 2x + 1 − 31 x − − 3x2 − 2x + 1 1 9 x3 + x2 − x − 1 − x3 − 23 x2 + 31 x − 1 2 3x 1 2 3x − 32 x − 1 − 92 x + 19 − 98 x − 8 9 p2 (x) = x + 1 3x − 1 x+1 3x2 − 3x2 + 2x − 1 − 3x −x−1 x+1 0 Resztą z dzielenia wielomianów jest 0 - uważny czytelnik może zatem zaobserwować, iż wielomian początkowy ma co najmniej jeden pierwiastek podwójny. Jest to problem, który musimy rozwiązać, aby otrzymać wynik metodą Sturma. Będziemy postępować następująco: • Podzielimy wielomian wejściowy przez ostatnią niezerową resztę z dzielenia wielomianów • Rozpoczniemy liczenie metodą Sturma dla wielomianu będącego wynikiem dzielenia powyższych wielomianów • W przypadku, kiedy napotkamy resztę z dzielenia równą 0, wykonujemy dzielenia ponownie. • UWAGA: To, iż reszta z dzielenia jest równa 0 nie oznacza jednego pierwiastka podwójnego. Może być ich więcej, tego nie wiemy. x2 x+1 −1 x3 + x2 − x − 1 − x3 − x2 −x−1 x+1 0 p0 (x) = x2 − 1 p1 (x) = −2x − 21 x − 2x 40 x2 − 1 − x2 Latex tutaj nie ogarnął, dlatego musimy uwierzyć Wolframowi na słowo, że resztą z tego dzielenia jest: −1 p2 (x) = 1 3.25.2 Zmiany znaków: x p0 (x) p1 (x) p2 (x) 3.25.3 − inf + + + inf + + Liczba pierwiastków rzeczywistych: |2 − 0| = 2 w tym co najmniej jeden podwójny 3.26 Zastosować twierdzenie Sturma do określenia liczby ujemnych pierwiastków rzeczywistych wielomianu: 2009,2011 p(x) = 12x3 − 16x2 + 7x − 1 3.26.1 Rozwiązanie: p0 (x) = 12x3 − 16x2 + 7x − 1 p1 (x) = −36x2 + 32x − 7 − 31 x + − 36x2 + 32x − 7 4 27 12x3 − 16x2 2 − 12x3 + 32 3 x + 7x − 1 − 37 x 16 2 3 x 16 2 3 x + 14 3 x −1 28 − 128 27 x + 27 − − 2 27 x + 1 27 p2 (x) = 2x − 1 − 18x + 7 2x − 1 − 36x2 + 32x − 7 36x2 − 18x 14x − 7 − 14x + 7 0 Otrzymaliśmy resztę z dzielenia równą 0, co oznacza że istnieje przynajmniej jeden pierwiastek podwójny. 41 6x2 − 5x + 1 2x − 1 12x3 − 16x2 + 7x − 1 − 12x3 + 6x2 − 10x2 + 7x 10x2 − 5x 2x − 1 − 2x + 1 0 Zatem jako nowy wielomian przyjmiemy p0 (x) = 6x2 − 5x + 1. p0 (x) = 6x2 − 5x + 1 p1 (x) = −12x + 5 − 76 x + − 7x 5 7 6x2 − 5x + 1 − 6x2 − 5x 5x p2 (x) = −1 3.26.2 Zmiany znaków: x p0 (x) p1 (x) p2 (x) 3.26.3 − inf + + - 0 + + - Liczba ujemnych pierwiastków rzeczywistych: |1 − 1| = 0 3.27 Wykonać pierwszą iterację w metodzie Newtona zastosowanej do rozwiązywania układu równań nieliniowych przyjmując punkt początkowy (0,0,1) 2009, 2011 xy − z 2 = 1 xyz − x2 + y 2 = 2 ex − ey + z = 3 Rozwiązanie: f1 (x, y, z) = xy − z 2 − 1 f (x) = f2 (x, y, z) = xyz − x2 + y 2 − 2 x y f3 (x, y, z) = e − e + z − 3 p(0) x(0) 0 (0) = y = 0 1 z (0) 42 Wyznaczamy macierz Df (x(i) ): ∂f1 ∂x ∂f2 ∂x ∂f3 ∂x ∂f1 ∂y ∂f2 ∂y ∂f3 ∂y Df (x(i) ) = ∂f1 ∂z ∂f2 ∂z ∂f3 ∂z y x −2z = yz − 2x xz + 2y xy ex −ey 1 Wyznaczamy macierz Df (x(0) ) poprzez podstawienie odpowiednich wartości punktu początkowego: y=0 −2z = (−2) · 1 = −2 x=0 Df (x(0) ) = yz − 2x = 0 · 1 − 2 · 0 = 0 xz + 2y = 0 · 1 + 2 · 0 = 0 ex = e0 = 1 xy = 0 · 0 = 0 ey = e0 = 1 1 Macierz Df (x(0) ) jest macierzą osobliwą - dla takiego punktu początkowego nie da się otrzymać rozwiązania przybliżonego. 3.28 Wykonać pierwsze dwie iteracje w metodzie Newtona zastosowanej do rozwiązywania układu równań nieliniowych przyjmując punkt początkowy (0,1) 2009, 2011 4x21 − x22 =0 4x1 x22 − x1 = 1 Rozwiązanie: " f1 (x1 , x2 ) = 4x21 − x22 f (x) = f2 (x1 , x2 ) = 4x1 x22 − x1 − 1 " (0) # x (0) # " # x 0 = 1(0) = 1 x2 Wyznaczamy macierz Df (x(i) ): Df (x(i) ) = ∂f1 ∂x1 ∂f2 ∂x1 ∂f1 ∂x2 ∂f2 ∂x2 " 8x1 −2x2 = 4x22 − 1 8x1 x2 # Wyznaczamy macierz Df (x(0) ) poprzez podstawienie odpowiednich wartości punktu początkowego: " # 8x = 8 · 0 = 0 −2x = (−2) · 1 = −2 1 2 Df (x(0) ) = 4x22 − 1 = 4 · (1)2 − 1 = 3 8x1 x2 = 8 · 0 · 1 = 0 Macierz Df (x(0) ) jest macierzą nieosobliwą, korzystamy ze wzoru: x(i+1) = x(i) − [Df (x(i) )]−1 f (x(i) ), i = 0, 1, ... Obliczamy Df (x(0) )−1 : " (0) −1 Df (x ) 0 −2 = 3 0 #−1 " 0 = − 12 1 3 # 0 Obliczamy f (x(0) ): " f (x (0) )= 4x21 − x22 = 4 · (0)2 − (1)2 = −1 4x1 x22 − x1 − 1 = 4 · 0 · (1)2 − 0 − 1 = −1 43 # Podstawiamy do wzoru: " # (1) x " 1 3 # " # −1 · = 0 −1 0 0 = − 1 − 12 "1# 3 1 2 Obliczamy Df (x(1) ): Df (x )= 1 8 3 = 3 ( 12 )2 − 1 8x1 = 8 · " (1) 4x22 − 1 = 4 · "8 Df (x (1) −1 ) = # 1 2 = −1 1 1 4 3 · 2 = 3 −2x2 = (−2) · 8x1 x2 = 8 · =0 #−1 3 −1 0 4 3 "3 9 # 32 3 4 8 = 0 Obliczamy f (x(1) ): 4x21 − x22 = 4 · ( 13 )2 − ( 12 )2 = " (1) f (x )= 4x1 x22 − x1 − 1 = 4 · 1 3 · ( 12 )2 − " 7 36 1 3 7 36 # − 1 = −1 Podstawiamy do wzoru: "1# (2) x = 3 1 2 "3 − 8 0 9 # 32 3 4 · " 13 # # −1 = 24 5 4 W ten oto sposób wykonaliśmy dwie iteracje w metodzie Newtona. 3.29 Stosując metodę Gaussa z częściowym wyborem elementu podstawowego, wyznaczyć macierz A−1 . 2007p 1 0 1 A = 3 3 0 0 2 2 Zgodnie z podanym algorytmem w pierwszym etapie rozkładamy macierz A na iloczyn LU . Najpierw wykonujemy przestawienia wierszy (numery wierszy będziemy zapisywać w oddzielnej kolumnie). Mamy zatem: 1 0 1 1 3 3 0 2 0 2 2 3 Po przestawieniu wierszy, tak aby element a11 był największym z pierwszej kolumny, mamy: 3 3 0 2 1 0 1 1 0 2 2 3 Następnie stosujemy metodę eliminacji Gaussa pierwszej zmiennej z drugiego i trzeciego równania za pomocą mnożników l21 = 31 i l31 = 03 = 0 otrzymujemy macierz (w miejscu współczynników zmiennych, które eliminujemy zamiast zera wpisujemy mnożnik). Zatem 3 3 0 3 0 2 1 − 13 · 3 0 − 13 · 3 1 − 13 · 0 = 31 −1 1 1 0−0·3 2−0·3 2−0·0 0 2 2 3 44 3 Analogicznie dla drugiej zmiennej - zamieniamy wiersze 3 0 1 3 3 0 2 2 2 3 −1 1 1 i odejmujemy drugi wiersz pomnożony przez − 21 3 0 1 3 0 2 2 3 2 1 3 3 3 0 2 2 2 = 0 1 1 −1 + 12 · 2 1 + 12 · 2 − 3 2 Rozbijamy wynikową macierz na macierz dolnotrójkątną L i górnotrójkątną U . 1 L = 0 1 3 0 1 − 12 0 0 , 1 3 3 0 U = 0 2 2 0 0 2 W drugim etapie rozwiązujemy równania LU x(i) = e(i) , i = 1, 2, 3 Dla i = 1 równania te mają postać 1 0 1 3 0 1 − 21 0 1 3 3 0 3 3 0 0 · 0 2 2 · x(1) = 0 2 2 · x(1) = 0 0 1 0 1 0 0 2 1 Otrzymamy 1 6 1 (1) x = 6 − 16 , 1 −4 1 x(2) = 4 , 1 2 1 (3) x = − 2 1 4 1 2 Numer 1 w wektorze przestawień 2 3 1 zajmuje trzecią pozycję, więc jako pierwszą kolumnę macierzy A−1 należy przyjąć x(3) . Numer 2 znajduje się na pierwszej pozycji, więc drugą kolumną macierzy A−1 jest x(1) . Wreszcie, numer 3 zajmuje drugą pozycję, zatem trzecią kolumną jest x(2) . Ostatecznie otrzymujemy 1 1 − 14 2 6 1 A−1 = − 2 1 2 3.30 1 6 − 16 1 4 1 4 Znaleźć przybliżenie funkcji F (x) = sin(x) na przedziale [0, π2 ] wielomianem stopnia drugiego (wskazówka: przyjąć x0 = π2 ). Jaki jest błąd aproksymacji? 2007p, 2008, 2008p, 2010p Wzór Taylora Rozwiazanie: 0 00 F (x0 ) F (x0 ) F n (x0 ) Wn (x) = F (x0 ) + (x − x0 ) + (x − x0 )2 + ... + (x − x0 )n 1! 2! n! 45 W2 (x) = sin π π π 1 π π 1 π 1 πx π 2 + cos · (x − ) − sin · (x − )2 = 1 − · (x − )2 = 1 − x2 + − 2 2 2 2 2 2 2 2 2 2 8 Ponieważ |F 000 (x)| = | − cos x| ¬ 1 dla x ∈ [0, π2 ] i 1 π 3 ( ) < 0, 646 3! 2 |F (x) − W2 (x)| ¬ Zatem maksymalny błąd aproksymacji jest nie większy od 0,646 . 4 Zadania z wykładów 4.1 Znaleźć wielomian interpolacyjny Lagrange’a, który w punktach -2,1,2,4 przyjmuje wartości odpowiednio 3,1,-3,8. Jaka jest wartość tego wielomianu w punkcie x = 0? EAN-6 Wstęp: • Wyznaczamy funkcje pomocnicze: li (x) = n Y x − xj j=0 xi − xj , i = 0, 1, . . . , n j6=i • Następnie wyznaczamy wielomian Ln : Ln (x) = n X f (xi )li (x) i=0 Rozwiązanie: • Dane: i xi f (xi ) 0 -2 3 1 1 1 2 2 -3 3 4 8 • Funkcje pomocnicze: l0 (x) = (x − 1)(x − 2)(x − 4) (x − 1)(x − 2)(x − 4) = (−2 − 1)(−2 − 2)(−2 − 4) −72 l1 (x) = (x + 2)(x − 2)(x − 4) (x + 2)(x − 2)(x − 4) = (1 + 2)(1 − 2)(1 − 4) 9 l2 (x) = (x + 2)(x − 1)(x − 4) (x + 2)(x − 1)(x − 4) = (2 + 2)(2 − 1)(2 − 4) −8 l3 (x) = (x + 2)(x − 1)(x − 2) (x + 2)(x − 1)(x − 2) = (4 + 2)(4 − 1)(4 − 2) 36 46 • Wielomian Langrange’a (x − 1)(x − 2)(x − 4) (x + 2)(x − 2)(x − 4) +1· −72 9 (x + 2)(x − 1)(x − 4) (x + 2)(x − 1)(x − 2) −3· +8· −8 36 2 3 3 2 25 = x − x − x+6 3 2 6 L3 (x) = 3 · • Wartość wielomianu Langrange’a w x = 0: L3 (0) = 6 4.2 Stosując metodę Newtona, znaleźć wielomian interpolacyjny, który w punktach 0, 1, 2 przyjmuje wartości odpowiednio 1, 1, 3. EAN-6 Wstęp: • Wykorzystuje ilorazy różnicowe • Iloraz różnicowy rzędu zerowego oparty na węźle xl : [xl ; f ] = f (xl ) • Wzór rekurencyjny: [x0 , x1 , . . . , xk ; f ] = [x1, x2, . . . , xk ; f ] − [x0 , x1 , . . . , xk−1 ; f ] xk − x0 • Wielomian interpolacyjny Newtona: Nn (x) = f (x0 ) + [x0 , x1 ; f ](x − x0 ) + · · · + [x0 , . . . , xn ; f ](x − x0 ) . . . (x − xn ) • Współczynniki wielomianu określa się na podstawie tabeli ilorazów różnicowych: i 0 xi x0 k=0 f (x0 ) = [x0 ; f ] 1 x1 f (x1 ) = [x1 ; f ] k=1 > x2 .. . ... [x0 , x1 , x2 ; f ] .. . ... [x0 , x1 ; f ] > > 2 .. . k=2 [x1 , x2 ; f ] .. . f (x2 ) = [x2 ; f ] .. . Współczynniki wielomianu (31) znajdują się w najwyższym ukośnym wierszu. Rozwiązanie: i 0 xi 0 k=0 f (x0 ) = 1 k=1 > 1 1 2 1−1 1−0 [1, 2; f ] = 3−1 2−1 =0 f (x1 ) = 1 > > 2 [0, 1; f ] = k=2 [0, 1, 2; f ] = 2−0 2−0 =1 =2 f (x2 ) = 3 Szukany wielomian Newtona: 1 + 0 · (x − 0) + 1 · (x − 0)(x − 1) = x2 − x + 1 47 (31) 4.3 Utworzyć wielomian interpolacyjny Newtona dla funkcji f (x) opisanej poniższą tabelą. x 0 2 3 4 6 f (x) 1 3 2 5 7 Do utworzenia wielomianu utworzymy tabelę. W pierwszej kolumnie znajduje się licznik i, w drugiej argumenty xi dla których znamy wartości, które z kolei wpisujemy do trzeciej kolumny (ponieważ [xi ; f ] = f (xi )). Począwszy od czwartej kolumny korzystamy ze wzoru [xl , xl+1 , . . . , xl+k ; f ] = [xl+1 , xl+2 , . . . , xl+k ; f ] − [xl , xl+1 , . . . , xl+k−1 ; f ] xl+k − xl i xi [xi ; f ] [xi , xi+1 ; f ] [xi , . . . , xi+2 ; f ] [xi , . . . , xi+3 ; f ] [xi , . . . , xi+4 ; f ] 0 0 1 1 2 3 1 2 3 2 −1 − 23 2 3 4 5 3 2 3 −2 −2 4 6 7 1 − 92 3 3 Pogrubione wartości na przekątnej są kolejnymi współczynnikami wielomianu w postaci Newtona. Końcowy wielomian interpolacyjny Newtona: Nn (x) =[x0 ; f ] + [x0 , x1 ; f ](x − x0 ) + [x0 , x1 , x2 ; f ](x − x0 )(x − x1 )+ +[x0 , x1 , x2 , x3 ; f ](x − x0 )(x − x1 )(x − x2 )+ +[x0 , x1 , x2 , x3 , x4 ; f ](x − x0 )(x − x1 )(x − x2 )(x − x3 ) 2 Nn (x) =1 + 2(x − 0) − (x − 0)(x − 2)+ 3 2 2 + (x − 0)(x − 2)(x − 3) − (x − 0)(x − 2)(x − 3)(x − 4) 3 9 4.4 Różnice progresywne i wsteczne wielomianu W4 (x) = x4 − x − 1, h = 1 Różnica progresywna: ∆f (x) = f (x + h) − f (x) Różnica wsteczna: ∇f (x) = f (x) − f (x − h) Różnice rzędu n oznaczone są z róznic rzędu n − 1: ∆n f (x) = ∆(∆n−1 f (x)) 4.5 Z jaką dokładnością można obliczyć ln 100, 5 za pomocą wzoru interpolacyjnego Lagrange’a mając wartości ln 100, ln 101, ln 102, ln 103,? x0 = 100, x1 = 101, x2 = 102, x3 = 103, f (x0 ) = ln 100, f (x1 ) = ln 101, f (x2 ) = ln 102, f (x3 ) = ln 103, 48 r(x) – funkcja dokładności przybliżenia r(x) = f (x) − ln(x) Wiemy, że:1 |r(x)| ¬ |pn+1 (x)| supx∈<x0 ;xn > f (n+1) (x) (n + 1)! Obliczamy teraz pn ze wzoru: pn+1 (x) = (x − x0 )(x − x1 )...(x − xn ) p4 (100, 5) = − 15 16 Obliczamy kolejne pochodne ln(x):2 f (1) (x) = x−1 f (2) (x) = −x−2 f (3) (x) = 2x−3 f (4) (x) = −6x−4 |f (4) (x)| = 6x−4 supx∈<100;103> 6x−4 = 6 · 10−8 I wracamy do wzoru na r(x): |r(x)| ¬ 15 | − 16 | · 6 · 10−8 ≈ 2, 3 · 10−9 24 1 sup to supremum - takie maksimum, ale w przeciwieństwie do maksimum funkcja nie musi osiągać tej wartości, wystarczy, że w granicy dąży do tej wartości 2 zapis, że to pochodne f (x) został użyty przez niego na labkach, ale powoduje, że wzór na r(x) jest bez sensu 49