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.