Osnutek predavanj 20.4.
Transcription
Osnutek predavanj 20.4.
10.4 Richardsonova ekstrapolacija Z razpolavljanjem h pridemo pri sestavljenih formulah do toˇcnejˇsih rezultatov. Iz pribliˇzkov pri razliˇcnih h lahko ocenimo napako in ugotovimo, ˇce je potrebno ˇse nadaljnje razpolavljanje. Naj bo Sh(f ) Simpsonova formula s korakom h in Rh(f ) napaka Simpsonove formule pri koraku h. Vemo, da velja Zb f (x)dx = Sh(f ) + Rh(f ) = Sh/2(f ) + Rh/2(f ). I(f ) = a Za napaki velja −(b − a)h4 (4) Rh(f ) = f (ξ1), 180 −(b − a)h4 (4) Rh/2(f ) = f (ξ2). 16 · 180 ˇ predpostavimo, da je f (4)(ξ1) ≈ f (4)(ξ2), dobimo Ce Rh(f ) ≈ 16Rh/2(f ). Bor Plestenjak - NM 2 2009 Richardsonova ekstrapolacija Iz Rh/2(f ) = I(f ) − Sh/2(f ) = Sh(f ) + Rh(f ) − Sh/2(f ) ≈ Sh(f ) + 16Rh/2(f ) − Sh/2(f ) dobimo Rh/2(f ) ≈ Sh/2(f ) − Sh(f ) 15 . To formulo lahko uporabimo za oceno napake Simpsonove formule. Poleg ocene lahko iz Sh/2(f ) in Sh(f ) z ekstrapolacijo dobimo ˇse boljˇsi pribliˇzek, saj je I(f ) = Sh/2(f ) + Rh/2(f ) ≈ 16Sh/2(f ) − Sh(f ) Podobno lahko naredimo pri trapezni in sredinski formuli. Bor Plestenjak - NM 2 2009 15 . Richardsonova ekstrapolacija - zgled Z1 Raˇcunamo I = x2 e dx = 1.462651745907182. 0 S Simpsonovim sestavljenim pravilom dobimo: S(0.1) = 1.462681400099797 in S(0.05) = 1.462653624886297. Ocena za napako je (S(0.05) − S(0.1))/15 = −1.85 · 10 prava ocena za napako pa je I − S(0, 0.05) = −1.87 · 10 Vidimo, da je v tem primeru ocena izredno dobra. Bor Plestenjak - NM 2 2009 −6 . −6 , 10.5 Adaptivne metode Pri adaptivnih metodah sproti ocenjujemo napako in ˇce je potrebno dodatno delimo podintervale. Metoda se prilagaja funkciji, kar pomeni, da pri pohlevnem obnaˇsanju uporablja veˇcji h, pri divjem obnaˇsanju pa manjˇsi h. Bor Plestenjak - NM 2 2009 Adaptivna metoda na osnovi Simpsonove metode function [Q,etol] = quadtx(F,a,b,tol) c = (a + b)/2; fa = F(a); fc = F(c); fb=F(b); [Q,etol] = quadtxstep(F, a, b, tol, fa, fc, fb); function [Q,etol] = quadtxstep(F,a,b,tol,fa,fc,fb) h = b - a; c = (a + b)/2; fd = F((a+c)/2); fe = F((c+b)/2); Q1 = h/6 * (fa + 4*fc + fb); Q2 = h/12 * (fa + 4*fd + 2*fc + 4*fe + fb); etol=abs(Q2-Q1); if etol <= tol Q = Q2 + (Q2 - Q1)/15; else [Qa,etol1] = quadtxstep(F, a, c, tol/2, fa, fd, fc); [Qb,etol2] = quadtxstep(F, c, b, tol-etol1, fc, fe, fb); Q = Qa + Qb; etol=etol1+etol2; end Bor Plestenjak - NM 2 2009 10.6 Rombergova metoda Izrek 1. Za neskonˇcnokrat zvezno odvedljivo funkcijo f velja Euler-Maclaurinova sumacijska formula Zb f (x)dx = Th(f ) − I(f ) = a ∞ X k=1 B2k 2k (2k−1) (2k−1) h f (b) − f (a) . (2k)! Bistveno je, da ima napako obliko Zb 2 4 6 f (x)dx = Th(f ) + a1h + a2h + a3h + · · · , a koeficienti ai pa so neodvisni od h. Bor Plestenjak - NM 2 2009 Euler-Maclaurinova sumacijska formula Zb f (x)dx = Th(f ) − I(f ) = a ∞ X k=1 B2k 2k (2k−1) (2k−1) f (b) − f (a) . h (2k)! Bk so Bernoullijeva ˇstevila, ki so doloˇcena z razvojem x = ex − 1 ∞ X Bk k=0 k! k x , |x| < 2π. Vsa Bernoullijeva ˇstevila so racionalna, vsa liha ˇstevila razen B1 pa so enaka 0. Nekaj prvih Bernoullijevih ˇstevil je B0 = 1, 1 B1 = − , 2 B2 = 1 , 6 B4 = − 1 , 30 B6 = 1 , 42 .... Od tod sledi h2 0 h4 0 000 000 I(f ) = Th(f ) − (f (b) − f (a)) + (f (b) − f (a)) + · · · , 12 720 vrsta praviloma ni konvergentna, je pa asimptotska, kar pomeni, da velja, ko gre h → 0. Bor Plestenjak - NM 2 2009 Rombergova ekstrapolacija 2 4 6 I(f ) = Th (f ) + a1,0 h + a2,0 h + a3,0 h + · · · I(f ) = Th/2 (f ) + a1,0 I(f ) = Th/4 (f ) + a1,0 h 2 2 h 2 4 + a2,0 + a2,0 h 4 2 h 2 4 + a3,0 + a3,0 h 6 2 h 6 4 + ··· + ··· ˇ enaˇcbo za h/2 pomnoˇzimo s 4 in odˇstejemo od enaˇcbe za h, se znebimo ˇclena h2 in dobimo toˇcnejˇsi Ce pribliˇzek: I(f ) I(f ) (1) 4 6 = Th/2 (f ) + a2,1 h + a3,1 h + · · · = (1) Th/4 (f ) + a2,1 h 4 2 + a3,1 h 6 2 + ···, kjer sta (1) Th/2 (f ) = 4Th/2 (f ) − Th (f ) Postopek sedaj nadaljujemo v 3 , (1) Th/4 (f ) = (2) 4Th/4 (f ) − Th/2 (f ) 6 3 8 I(f ) = Th/4 (f ) + a3,2 h + a4,2 h + · · · , kjer je (1) (2) Th/4 (f ) = Bor Plestenjak - NM 2 2009 (1) 16Th/4 (f ) − Th/2 (f ) 15 . . Rombergova shema V sploˇsnem postopku tvorimo shemo O(h2) (0) Th (f ) (0) Th/2(f ) napaka O(h4) (1) Th/4(f ) (0) Th/8(f ) Th/8(f ) O(h8) Th/2(f ) (0) Th/4(f ) O(h6) (1) Th/4(f ) (2) (1) Th/8(f ) (3) (4) Th/8(f ) kjer je sploˇsna formula T (j) h/2k Bor Plestenjak - NM 2 2009 (j−1) (f ) h/2k 4j T (f ) = (j−1) (f ) h/2k−1 −T 4j − 1 . ··· Zgled uporabe Rombergove metode Z Rombergovo metodo bomo izraˇcunali in naredimo dve razpolavljanji. R 2.2 ln xdx = 0.5346062. Zaˇcnemo s h = 0.6 1 Dobimo: (0) = Th/2 (0) = (0) = Th Th/4 1 1 0.6( ln 1.0 + ln 1.6 + ln 2.2) = 0.5185394 2 2 1 (0) T + 0.3(ln 1.3 + ln 1.9) = 0.5305351 2 h 1 (0) T + 0.15(ln 1.15 + ln 1.45 + ln 1.75 + ln 2.05) = 0.5335847 2 h/2 Pomembno je, da Th/2k vedno raˇcunamo kot Th/2k = 1 h Th/2k−1 + k (y1 + y3 + · · · + y2k −1). 2 2 Tako vsako funkcijsko vrednost izraˇcunamo enkrat in imamo z Rombergom zanemarljivo (0) dodatnega dela v primerjavi z raˇcunanjem T k , rezultat pa je lahko mnogo natanˇcnejˇsi. h/2 Bor Plestenjak - NM 2 2009 Rezultat po uporabi Rombergove ekstrapolacije Za primerjavo, toˇcen rezultat je R 2.2 ln xdx = 0.5346062. 1 Z Rombergovo ekstrapolacijo dobimo (0) (1) Th/2 = (0) 4Th/2 − Th (0) (1) Th/4 = (0) 4Th/4 − Th/2 3 (1) (2) Th/4 Bor Plestenjak - NM 2 2009 = = 0.5345337 3 = 0.5346013 (1) 16Th/4 − Th/2 15 = 0.5346058. 10.7 Gaussove kvadraturne formule Zb Integral f (x)ρ(x)dx, a kjer je ρ nenegativna uteˇz, aproksimiramo s kvadraturno formulo Zb f (x)ρ(x)dx = a n X (n) (n) Ai f (xi ) + R(f ). i=0 (n) Ai R b = L Koeficienti so doloˇceni z vozli, saj velja a poljubni izbiri vozlov toˇcna za polinome stopnje vsaj n. n,i (x)ρ(x)dx, formula pa je pri S primerno izbiro vozlov lahko doseˇzemo, da bo formula toˇcna za polinome stopnje vsaj 2n + 1, v ozadju pa so ortogonalni polinomi. Bor Plestenjak - NM 2 2009 Ortogonalni polinomi Za funkcije lahko na [a, b] definiramo skalarni produkt kot Zb hf, gi: = f (x)g(x)ρ(x)dx. a Funkciji f in g sta ortogonalni, ˇce je hf, gi = 0. Iz standardne baze polinomov 2 1, x, x , . . . z ortogonalizacijo dobimo ortonormirano bazo P0(x), P1(x), P2(x), . . . , kjer je Pi polinom stopnje i in velja hPi, Pk i = δik . Bor Plestenjak - NM 2 2009 Toˇ cnost do stopnje vsaj 2n + 1 (n) Naj bo Pn+1 = kn+1(x−x0 ) · · · (x−x(n) n ) tak normiran polinom, da je hPn+1 , qi = 0 za vsak polinom q stopnje kveˇcjemu n. Pri Gaussovi kvadraturni formuli za vozle izberemo (n) niˇcle x0 , . . . , x(n) n , torej je (n) (n) ω(x) = (x − x0 ) · · · (x − xn ). Poljuben polinom f stopnje 2n + 1 lahko zapiˇsemo kot f (x) = q(x)ω(x) + r(x), kjer sta q, r polinoma stopnje kveˇcjemu n. To pomeni: Zb Zb f (x)ρ(x)dx = a q(x)ω(x)ρ(x)dx + a = Zb 0+ X X r(x)ρ(x)dx a n (n) (n) Ai r(xi ) i=0 n = (n) (n) Ai f (xi ). i=0 Pokazali smo, da je pravilo toˇcno za vse polinome stopnje 2n + 1 ali manj. Bor Plestenjak - NM 2 2009 Napaka Gaussovih kvadraturnih formul (n) Iz teorije ortogonalnih polinomov sledi, da so vse niˇcle xi (a, b). enostavne, realne in leˇzijo na Koeficiente Ai lahko izraˇcunamo z integriranjem Lagrangevih koeficientov, ˇse bolje pa je, ˇce uporabimo Darboux-Cristoffelove formule: (n) Ai = Pn 1 2 (x(n) ) P j=0 j i , i = 0, . . . , n. Lema 1. Uteˇzi Gaussovih kvadraturnih pravil so pozitivne. Izrek 2. Za f ∈ C (2n+2)[a, b] velja Zb f (x)ρ(x) = a Bor Plestenjak - NM 2 2009 n X i=0 (n) (n) Ai f (xi ) f (2n+2)(ξ) + . 2 (2n + 2)!kn+1 Znani ortogonalni polinomi Najpogostejˇsi ortogonalni polinomi so: [−1, 1], ρ(x) = 1, [−1, 1], ρ(x) = (1 − x2)− 2 , [−1, 1], [−1, 1], ρ(x) = (1 − x2) 2 , ρ(x) = (1 − x)α(1 + x)β , [−1, 1], [0, ∞), ρ(x) = (1 − x2)σ− 2 , ρ(x) = xσ e−x, (−∞, ∞), ρ(x) = e−x , (Legendre) ˇ sev 1. vrste) (Cebiˇ ˇ sev 2. vrste) (Cebiˇ 1 1 1 2 α, β > −1, (Jacobi) σ > 12 , σ > −1 (Gegenbauer) (Laguerre) (Hermite). Za te ortogonalne polinome imamo tabelirane niˇcle in Gaussove kvadraturne formule. Bor Plestenjak - NM 2 2009 Gauss–Legendrove kvadraturne formule Gauss–Legendrovi kvadraturni formuli na dveh in treh toˇckah sta Z1 f (x)dx = f −1 Z1 f (x)dx = −1 5 f 9 r1! − 3 +f r3! − 5 r1! 3 1 (4) + f (ξ), 135 5 8 + f (0) + f 9 9 r3! 5 + 1 (6) f (ξ). 15750 Za primerjavo, pri trapeznem in Simpsonovem pravilu dobimo Z1 2 (2) f (x)dx = f (−1) + f (1) − f (ξ), 3 −1 Z1 1 4 1 1 (4) f (x)dx = f (−1) + f (0) + f (1) + f (ξ). 3 3 3 90 −1 Bor Plestenjak - NM 2 2009 10.8 Izlimitirani integrali Zb Pol v krajiˇsˇcu: I = a g(x) dx, p (x − a) 0 < p < 1, kjer je g zvezna na [a, b]. Zb Po definiciji je I = lim →0 g(x) dx, p a+ (x − a) a je ta konvergenca lahko prepoˇcasna, da bi bila uporabna za praktiˇcno raˇcunanje. Zato iˇsˇcemo boljˇse moˇznosti. Bor Plestenjak - NM 2 2009 Pol v krajiˇsˇ cu 1 Zb Raˇcunamo I = a g(x) dx, (x − a)p 0 < p < 1, kjer je g zvezna na [a, b]. Varianta 1: I razdelimo na I = I1 + I2, kjer sta Z a+ I1 = a g(x) dx, p (x − a) I2 = Zb g(x) dx. p a+ (x − a) I2 izraˇcunamo s standardnimi metodami, pri raˇcunanju I1 pa g razvijemo v Taylorjevo vrsto okoli a: (x − a)2 00 g (a) + · · · g(x) = g(a) + (x − a)g (x) + 2 0 in dobimo 0 I1 = Bor Plestenjak - NM 2 2009 1−p 2 00 g(a) g (a) g (a) + + + ··· 1−p 1!(2 − p) 2!(3 − p) ! . Pol v krajiˇsˇ cu 2 Zb Raˇcunamo I = a g(x) dx, (x − a)p 0 < p < 1, kjer je g zvezna na [a, b]. Varianta 2: g razvijemo v Taylorjevo vrsto okoli a: g(x) = Ps(x) + ostanek I zapiˇsemo kot I = I1 + I2, kjer sta Zb I1 = a Ps(x) dx, (x − a)p I2 = Z b g(x) − Ps(x) a (x − a)p dx. I1 lahko izraˇcunamo eksplicitno, pri I2 lahko uporabimo standardne metode. Bor Plestenjak - NM 2 2009 Pol v krajiˇsˇ cu 3 Zb Raˇcunamo I = a g(x) dx, (x − a)p 0 < p < 1, kjer je g zvezna na [a, b]. Varianta 3: Uporabimo substitucijo, npr. m (x − a) = t , m−1 dx = pt Z (b−a)1/p Dobimo I =p p k−1 g(a + t )t 0 in lahko uporabimo standardne metode. Bor Plestenjak - NM 2 2009 dt, k , m= 1−p dt k ∈ N. Pol v krajiˇsˇ cu 4 Varianta 4: pomagamo si lahko tudi z Gaussovimi kvadraturnimi formulami. Npr., ˇce imamo Z1 I = potem je uteˇz √ 1 1−x2 g(x) dx, √ 2 1−x −1 ˇ seve kvadraturne formule. in uporabimo Gauss-Cebiˇ Primer: Z1 g(x) π dx = √ 3 1 − x2 −1 Bor Plestenjak - NM 2 2009 √ g − 3 2 ! √ + g(0) + g 3 2 !! + Cf (6) (ξ). Neskonˇ cen interval Z∞ Raˇcunamo I = f (x)dx. I razdelimo na I = I1 + I2, kjer sta a Zb I1 = Z∞ f (x)dx, I2 = a f (x)dx. b I1 izraˇcunamo normalno s standardnimi metodami. Variante za I2 so • I2 zanemarimo, ˇce poznamo kakˇsno dobro oceno za |I2|. • Naredimo substitucijo u = 1/x in dobimo integral po konˇcnem intervalu Z0 I2 = − g(1/u)u −2 du. 1/b Tretja varianta je, da za I uporabimo ustrezno Gaussovo kvadraturno formulo. Bor Plestenjak - NM 2 2009