Metody numeryczne
Transkrypt
Metody numeryczne
http://www.ii.uni.wroc.pl/sle/open/metnum/mn-series.pdf Metody numeryczne Stanisªaw Lewanowicz Pa¹dziernik 2013 r. I. Zastosowania szeregów w obliczeniach 1. Szereg Taylora Mamy nast¦puj¡ce twierdzenie ogólne: Twierdzenie 1.1 (Twierdzenie Taylora ). Zaªó»my, »e funkcja f ma ma pochodne ci¡gªe rz¦du 1, 2, . . . n + 1 w przedziale domkni¦tym [a, b]. Niech b¦dzie x0 ∈ [a, b]. Dla ka»dego x ∈ [a, b] istnieje takie ξx le»¡ce mi¦dzy x a x0 , »e (1.1) f (x) = Pn (x) + Rn (x), gdzie Pn (x) := n X f (k) (x0 ) k=0 k! (x − x0 )k oraz Rn (x) := f (n+1) (ξx ) (x − x0 )n+1 . (n + 1)! Wielomian Pn (x) nazywamy n-tym wielomianem Taylora funkcji f w otoczeniu x0 , a Rn (x) reszt¡ (lub bª¦dem uci¦cia ). Szereg niesko«czony otrzymany przez przej±cie graniczne (je±li to mo»liwe) limn→∞ Pn (x) nazywamy szeregiem Taylora funkcji f w otoczeniu punktu x0 : ∞ X f (k) (x0 ) f (x) = (x − x0 )k . k! k=0 Gdy x0 = 0, wielomian Taylora nazywamy wielomianem Maclaurina , a szereg Taylora szeregiem Maclaurina . Przykªad 1.2 Zastosujmy twierdzenie 1.1 do f (x) = cos x, n = 3, and x0 = 0. Otrzymujemy cos x = P3 (x) + R3 (x), gdzie 1 P3 (x) = 1 − x2 , 2 przy czym ξ jest liczb¡ le»¡c¡ w (0, x). Dla x = 0.01, mamy R3 (x) = 1 4 x cos ξ, 24 1 1 cos 0.01 = P3 (0.01) + R3 (0.01) = 1 − (0.01)2 + (0.01)4 cos ξ = 0.99995 + 4.2 × 10−10 cos ξ, 2 24 S. Lewanowicz, Metody numeryczne Zastosowania szeregów w obliczeniach / [Pa¹dziernik 2013] 2 gdzie 0 < ξ < 0.01. Poniewa» | cos ξ| < 1, mamy prawo u»y¢ 0.99995 jako przybli»enia warto±ci cos 0.01 z gwarancj¡ co najmniej dziewi¦ciocyfrowej dokªadno±ci dziesi¦tnej. Zauwa»my, »e dokªadna warto±¢ wynosi cos 0.01 = 0.99995000042. We¹my f (x) = ex i x0 = 0. Poniewa» f (k) (x) = ex dla k ≥ 0, wi¦c f (k) (x0 ) = = 1 dla k ≥ 0. Wobec Eq. (1.1) mamy Przykªad 1.3 e0 (1.2) ex = Pn (x) + Rn (x), gdzie Pn (x) = n X xk k=0 k! , Rn (x) = eξ xn+1 . (n + 1)! Zaªó»my, »e x nale»y do pewnego przedziaªu symetrycznego wzgl¦dem 0, powiedzmy −s ≤ x ≤ s. Wówczas |x| ≤ s, |ξ| ≤ s i eξ ≤ es . Reszta Rn (x) speªnia nierówno±¢ eξ es n+1 n+1 lim |Rn (x)| = lim x s ≤ lim = 0. n→∞ n→∞ (n + 1)! n→∞ (n + 1)! Przechodz¡c do granicy, gdy n → ∞ po obu stronach równania Eq. (1.2), dostajemy x e = lim Pn (x) = n→∞ ∞ X xk k=0 k! . Oto znane przykªady szeregów Taylora. (1.3) (1.4) (1.5) (1.6) (1.7) x e = sin x = cos x = 1 = 1−x ln x = ∞ X xk k=0 ∞ X k=0 ∞ X k! (|x| < ∞), (−1)k x2k+1 (2k + 1)! (−1)k x2k (2k)! k=0 ∞ X xk (|x| < ∞), (|x| < ∞), (|x| < 1), k=0 ∞ X (−1)k−1 k=1 (x − 1)k k (0 < x ≤ 2). W praktyce przybli»on¡ warto±¢ funkcji w ustalonym punkcie x otrzymujemy obliczaj¡c pewn¡ sum¦ cz¦±ciow¡ szeregu. Przykªad 1.4 Np. dla x = 1.1 pi¦¢ pocz¡tkowych skªadników szeregu Eq. (1.7) daje ln(1.1) ≈ 5 X k=1 (−1)k−1 (0.1)k = 0.0953103333 . . . k S. Lewanowicz, Metody numeryczne / Zastosowania szeregów w obliczeniach [Pa¹dziernik 2013] 3 Warto±¢ dokªadna wynosi 0.09531017980, otrzymali±my wi¦c przybli»enie wyniku, które ma sze±¢ cyfr dokªadnych. Niestety, nie zawsze sytuacja jest tak optymistyczna. Oto przykªad. Przykªad 1.5 Obliczmy e8 u»ywaj¡c szeregu (1.3). Niech b¦dzie sn := n X 8k k=0 k! . Oto wyniki oblicze« dla n = 0, 1, . . . , 31: n 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 sn 1 9 41 126.3333333 297 570.0666667 934.1555556 1350.257143 1766.358730 2136.226808 2432.121270 2647.317242 2790.781224 2879.066751 2929.515624 2956.421689 n 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 sn 2969.874722 2976.205561 2979.019267 2980.203985 2980.677873 2980.858401 2980.924048 2980.946882 2980.954493 2980.956928 2980.957678 2980.957900 2980.957963 2980.957981 2980.957985 2980.957987 Jak widzimy, trzeba bardzo wielu skªadników, »eby otrzyma¢ warto±¢ e8 z dobr¡ dokªadno±ci¡. Ogólna prawidªowo±¢ jest taka, »e szereg Taylora jest szybko zbie»ny w pobli»u punktu rozwini¦cia, a w du»e odlegªo±ci od tego punktu jest wolno zbie»ny . 2. Szeregi przemienne Inne cz¦sto przydatne twierdzenie z analizy matematycznej stosuje si¦ do szeregów przemiennych. Twierdzenie 2.1. Je±li ak ≥ 0 (k = 0, 1, . . .), a1 ≥ a2 ≥ . . . ≥ an ≥ . . . i lim an→∞ = 0, to szereg przemienny ∞ X (−1)k−1 ak k=1 jest zbie»ny. Ponadto, je±li s oznacza sum¦ szeregu, sn := n X k=1 (−1)k−1 ak (n ≥ 1), S. Lewanowicz, to dla ka»dego Metody numeryczne Zastosowania szeregów w obliczeniach / [Pa¹dziernik 2013] 4 n zachodzi nierówno±¢ |s − sn | ≤ an+1 . Tak wi¦c, bª¡d uci¦cia szeregu jest nie wi¦kszy ni» pierwszy odrzucony skªadnik. Sprawd¹my, ilu wyrazów szeregu (1.4) trzeba u»y¢ do obliczenia warto±ci sin 1 z bª¦dem mniejszym ni» 12 · 10−6 . Je±li 1/(2n − 1)! b¦dzie ostatnim zachowanym skªadnikiem szeregu, to bª¡d nie przewy»szy pierwszego odrzucanego skªadnika, tj. 1/(2n + 1)!. Oznacza to, »e powinni±my wybra¢ takie n, »eby Przykªad 2.2 1/(2n + 1)! < 1 2 · 10−6 . St¡d wynika, »e n ≥ 5. Sprawd¹my, ilu wyrazów szeregu (1.7) trzeba u»y¢ do obliczenia warto±ci ln 2 z bª¦dem mniejszym ni» 21 · 10−6 . Poªó»my x = 2 w (1.7) i przyjmijmy oznaczenia Przykªad 2.3 s := ln 2, sn := 2 − (−1)n−1 1 1 1 + − + ... + . 2 3 4 n Wówczas |s − sn | ≤ 1/(n + 1). Najmniejsza warto±¢ n, dla której zachodzi nierówno±¢ 1/(n + 1) < 1 2 · 10−6 przekracza dwa miliony! Stwierdzamy, »e to kiepska metoda obliczania ln 2! Lepiej b¦dzie u»y¢ szeregu ∞ X 1+x x2k+1 (2.8) ln =2 (−1 < x < 1). 1−x 2k + 1 k=0 Dziesi¡ta jego suma cz¦±ciowa daje dla x = 1 3 wynik ln 2 ≈ 0.6931471806, którego wszystkie cyfry s¡ poprawne.