7 Numeerinen derivointi j integrointi 7.1 Derivttojen estimointi Numeerisell derivoinnill trkoitetn likirvon lskemist funktion f : R R derivtlle f ilmn derivtn nlyyttistä lusekett. Jos funktion f rvo tunnetn ennlt määrätyissä pisteissä, voidn f:ää interpoloid spline-funktioll j derivoid se. Tämä tp sopii, jos pisteitä on pljon ti pisteistö ei ole tsvälinen. Oletetn jtkoss, että funktion rvot tunnetn tsvälisessä pisteistössä j derivtn rvoj hlutn lske vin muutmiss pisteissä. 7.1.1 Derivtn differenssipproksimtiot Lähdetään liikkeelle derivtn määritelmän pohjlt. Vlitsemll pieni h, voidn funktion f derivtt pisteessä x pproksimoid erotusosmäärän vull (etenevä differenssi) f (x) f(x+h) f(x). (7.1) h Tylorin luseen vull voimme rviod pproksimtion virhettä. Luseen nojll on olemss ξ [x,x+h] siten, että f(x+h) = f(x)+hf (x)+h 21 2 f (ξ) Edelleen, uudelleen järjestelemällä sdn f (x) = f(x+h) f(x) h 1 2 hf (ξ) (7.2) Approksimtion (7.1) virheeksi sdn siis 1 2 hf (ξ). Yhtälöstä (7.2) nähdään, rvon h lähestyessä noll lähestyy myös virhe noll nopeudell O(h) (mikäli f ). Muodostetnf (x):n pproksimtio, mikä on trkkuudeltno(h 2 ). Tylorin srjoj soveltmll sdn seurvt kksi srjkehitelmää: f(x+h) = f(x)+hf (x)+ 1 2! h2 f (x)+ 1 3! h3 f (x)+ 1 4! h4 f (4) (x)+... f(x h) = f(x) hf (x)+ 1 2! h2 f (x) 1 3! h3 f (x)+ 1 4! h4 f (4) (x)+... (7.3) Vähentämällä yhtälöt toisistn sdn: f(x+h) f(x h) = 2hf (x)+ 2 3! h3 f (x)+ 2 5! h5 f (5) (x)+... Edelleen, sdn hyödyllinen luseke derivtn f (x) pproksimoimiseksi: f (x) = 1 h2 (f(x+h) f(x h)) 2h 3! f (x) h4 5! f(5) (x)... (7.4) 141
eli sdn ns. keskeisdifferenssi rvio: f (x) f(x+h) f(x h). 2h Kosk suurin virhetermi on 1 6 h2 f (x) on keskeisdiffernssirvio trkkuudeltn luokk O(h 2 ). Huomutus 7.1. Tietokoneell lskettess rjllinen lskenttrkkuus iheutt pyöristysvirhettä, eli mitä pienempi h on, sitä pienemmäksi tulee erotus f(x + h) f(x h) j erotukseen sdn yhä vähemmän merkitseviä numeroit. Täten pienemmällä h:n rvoll ei in välttämättä sdkn trkemp tulost. Trkstelln keskeisdifferenssiä D (h) = f(x+h) f(x h). 2h Funktion f rvo ei tunnet trksti, vn inostn sen pproksimtio ˆf siten, että ˆf(x±h) f(x±h) ε Differenssipproksimtion pyöristysvirhe on nyt ˆf(x+h) ˆf(x h) f(x+h)+f(x h) ˆD (h) D (h) = 2h ˆf(x+h) f(x+h) + ˆf(x h) f(x h) ε 2h h Kokonisvirhe on siten ˆD (h) f (x) ˆD (h) D (h) + D (h) f (x) = ε h + 1 6 f (ξ) h 2, ξ [x h,x+h], eli yleensä ˆD (h) f (x), kun h. Prs h löydetään minimoimll funktio h:n suhteen. E(h) := ε h + 1 6 f (ξ) h 2. Esimerkki 7.1. Lske optimlinen h funktion f(x) = sin x derivtn lskemiseksi pisteessä x =.9. Käytä keskeisdifferenssin lusekett: f (.9) f(.9+h) f(.9 h) 2h Derivtn trkk rvo on cos(.9) =.62161. Rtkisu. Virheen minimi sdn kun E(h) = ε h + h2 6 M = E (h) = ε h 2 + h 3 M, 142
ts. h = 3 3ε/M. M:lle sdn helposti lskettu rvo, sillä M = mx f (x) = mx cosx.69671. x [.8,1.] x [.8,1.] Mikäli f:n rvot on lskettu esim. 5 desimlin trkkuudell, niin voidn olett, että ε =.5. Tällöin h:n optimliseksi rvoksi sdn j f (.9).62153. h = 3 3ε M = 3 3(.5).69671.28 Kv (7.4) voidn kirjoitt myös muodoss f (x) = f(x+h) f(x h) 2h + 2 h 2 + 4 h 4 + 6 h 6 +... (7.5) missä vkiot 2, 4,... riippuvt funktiost f j pisteestä x. Jos on stvill tieto kyseisistä vkioist, voidn numeerist prosessi tehost. Tällist menetelmää kutsutn Richrdsonin exstrpoltioksi. 7.1.2 Richrdsonin ekstrpoltio Olkoon f j x kiinteitä j määritellään h:n funktio ω(h) = f(x+h) f(x h) 2h (7.6) Tvoitteen on lske lim h ω(h). Nolln läheisyydessä (missä kv (7.6) ei nn trkk tulost) ω(h) käyttäytyy kuten kvdrttinen funktio. Richrdsonin ekstrpoltioss lsketn ω(h):n rvoj nolln lähellä j rvioidn niiden vull ω(h):n rj-rvo pisteessä. Oletetn, että on lskettu rvot ω(h) j ω(h/2). Kvn (7.5) mukn ω(h) = f (x) 2 h 2 4 h 4 6 h 6... ω(h/2) = f (x) 2 ( h 2 )2 4 ( h 2 )4 6 ( h 2 )6... Eliminoidn johtv virhetermi kertomll toinen yhtälö 4:ll j vähentämällä se ensimmäisestä, sdn ω(h) 4ω( h 2 ) = 3f (x) 3 4 4h 4 15 16 6h 6 +... Jkmll 3:ll j järjestelemällä luseke uudelleen, sdn ( h ω + 2) 1 [ω( h ] 3 2 ) ω(h) = f (x)+ 1 4 4h 4 + 5 16 6h 6 +... Olemme nyt sneet derivtlle f lusekkeen minkä trkkuus on luokk O(h 4 ). Kosk h 4 on pieni, on kyseessä merkittävä prnnus. Edellistä prosessi voidn jtk, 143
jolloin sdn eliminoitu lisää virhetermejä j siten entistä trkempi rvio derivtlle. Tätä eliminointiprosessi kutsutn Richrdsonin ekstrpoltioksi. Sm tilnne esiintyy numeerisess integroinniss (Rombergin menetelmä), joten trkstelln proseduuri hiemn yleisemmin. Olkoon nyt ω funktio jolle pätee ω(h) = L 2k h 2k, (7.7) missä kertoimet 2k ovt tuntemttomi. Oletetn, että ω(h) voidn lske kikill h > j trkoituksen on pproksimoid L:ää trksti käyttämällä funktiot ω. Vlitn luksi sopiv h j lsketn rvot Yhtälön (7.7) nojll smme k=1 D(n,) = ω( h 2n) (n ) D(n,) = L+ A(k,)( h 2 n)2k k=1 missä A(k,) = 2k. Luvut D(n,) ovt rvioit tuntemttomlle L = lim x ω(x). Trkempi rvioit sdn Richrdsonin ekstrpoltioll, jonk kv on: D(n,m) = 4m 4 m D(n,m) 1 D(n,m) (1 m n) (7.8) 4 m Luse 7.1. Richrdsonin ekstrpoltion (7.8) rvot D(n,m) toteuttvt yhtälön D(n,m) = L+ k=m+1 Todistus. Todistus induktioll (hrj). A(k,m)( h 2 n)2k ( m n) (7.9) Oletuksen nojll väite on tosi kun m =. Oletetn, että väite pätee mv. rvolle m j osoitetn, että väite pätee rvolle m. Yhtälöistä (7.8) j (7.9) kiinteälle m, sdn: D(n,m) = 4m [ L+ 4 m = L+ k=m k=m A(k,m)( h 2 n)2k] A(k,m) ( 4 m 4 k 4 m )( h 2 n ) 2k Määritellään nyt A(k,m) = A(k,m) ( 4 m 4 k ). 4 m Lisäksi huomtn, että A(m,m)=, joten sdn: D(n,m) = L+ k=m+1 1 [ L+ 4 m A(k,m)( k=m A(k,m) ( 4 m 4 k )( h ) 2k. 4 m 2 n h 2 n)2k] 144
Yhtälön (7.9) merkitys piilee siinä, että summ lk termistä (h/2 n ) 2m+2. Kosk h/2 n on pieni, lähestyvät luvut D(n,m) nopesti luku L, ts. ( h 2(m+1) ) D(n,m) = L+O 2 2n(m+1) Käytännössä, luvut voidn ts järjestää kolmiomuotoon: D(, ) D(1, ) D(1, 1) D(2, ) D(2, 1) D(2, 2)...... D(N,) D(N,1) D(N,2)... D(N,N) Richrdsonin menetelmä voidn esittää lgoritmin seurvsti: 7.1.3 Algoritmi 1. Kirjoit proseduuri ω:lle 2. Vlitse sopivt rvot muuttujille N j h. 3. Lske D(i,) = ω( h ) kun i =,1,...,N. 2 i 4. Kun i j N, lske (yhtälö (7.8)) D(i,j) = D(i,j )+(4 j ) [D(i,j ) D(i,j )] Seurvss pseudokoodi derivtn lskemiseksi Richrdsonin menetelmällä: procedure Derivtive(f,x,n,h,(d ij )) rel rry (d ij ) :n :n integer i,j,n rel h,x interfce externl function f for i = to n do d i [f(x+h) f(x h)]/(2h) for j = to i do d i,j+1 d ij +(d ij d i,j )/(4 j+1 ) end for h h/2 end for end procedure Derivtive 145
7.1.4 Derivtt interpoltiopolynomin vull Yleinen metodi numeerisess derivoinniss (j integroinniss) on määrittää funktiolle f interpoltiopolynomi p j pproksimoid derivtt f funktioll p. Käytettäessä tällist pproksimtiot, on oltv vrovinen, sillä interpoltiopolynomi voi oskilloid ljsti, jolloin pproksimtiot derivtlle ovt hyvin epätrkkoj. Prempi onkin ehkä käyttää jonkinlist splinefunktiot f:n pproksimointiin j lske derivtt sen vull. Voimme kuitenkin joht virhe-rvion derivtlle siinä tpuksess että käytämme interpoltiopolynomi. Seurvss oletetn, että p n interpoloi funktiot f pisteissä x,x 1,...,x n. Tällöin voidn kirjoitt interpoltiopolynomin Lgrngen muodon j interpoloinnin virhekvn nojll: f(x) = n 1 f(x i )l i (x)+ (n+1)! f(n+1) (ξ x )ω(x) i= missä ω(x) = n j= (x x j). Derivoimll sdn: f (x) = n f(x i )l i(x)+ i= 1 (n+1)! f(n+1) (ξ x )ω (x)+ 1 (n+1)! ω(x) d dx f(n+1) (ξ x ). Jos x = x α on solmupiste, niin derivtn lskeminen helpottuu, sillä ω(x α ) = j sdn n f (x α ) = f(x i )l i(x 1 α )+ (n+1)! f(n+1) (ξ xα )ω (x α ). i= Yhtälöä voidn sieventää, huommll ω (x) = n i= n (x x j ) joten ω (x α ) = j= j i n (x α x j ). j= j α Derivtn differenssikv virhetermin knss on nyt f (x α ) = n f(x i )l i(x 1 α )+ (n+1)! f(n+1) (ξ xα ) i= n (x α x j ). (7.1) j= j α Esimerkki 7.2. Lske derivtn luseke yhtälöstä (7.1) kun n = 2 j α = 1. Rtkisu. Lgrngen interpoltiopolynomin krdinlifunktiot j niiden derivtt ovt: l (x) = (x x 1)(x x 2 ) l 2x x 1 x 2 (x x 1 )(x x 2 ) (x) = (x x 1 )(x x 2 ) l 1 (x) = (x x )(x x 2 ) l 2x x x 2 (x 1 x )(x 1 x 2 ) 1(x) = (x 1 x )(x 1 x 2 ) l 2 (x) = (x x )(x x 1 ) l 2x x x 1 2(x) = (x 2 x )(x 2 x 1 ) (x 2 x )(x 2 x 1 ) 146
Lskemll derivttojen rvot pisteessä x 1, sdn l (x 1 ) = Numeerinen differenssikv on nyt x 1 x 2 (x x 1 )(x x 2 ) l 1(x 1 ) = 2x 1 x x 2 (x 1 x )(x 1 x 2 ) l 2(x x 1 x 1 ) = (x 2 x )(x 2 x 1 ) f x 1 x 2 (x 1 ) = f(x ) (x x 1 )(x x 2 ) +f(x 2x 1 x x 2 1) (x 1 x )(x 1 x 2 ) x 1 x +f(x 2 ) (x 2 x )(x 2 x 1 ) + 1 6 f (ξ x1 )(x 1 x )(x 1 x 2 ) Mikäli solmupisteet ovt tsisesti jkutuneet siten, että x = x 1 h j x 2 = x 1 +h, niin sdn (x = x 1 ): ( ) ( 1 ) f (x) = f(x h) +f(x+h) 1 2h 2h 6 f (ξ x )h 2, mikä on keskeisdifferenssin kv. 7.1.5 Toisen kertluvun derivtn differenssipproksimtio Toisen kertluvun derivtlle voidn muodost pproksimtio lskemll yhteen yhtälön (7.3) Tylorin srjkehitelmät f(x+h):lle j f(x h):lle, sdn: Tästä sdn eli pproksimtio f(x+h)+f(x h) = 2f(x)+h 2 f (x)+2 [ 1 4! h4 f (4) (x)+ ] f (x) = 1 h 2 [f(x+h) 2f(x)+f(x h)] 2[ 1 4! h2 f (4) (x)+ ], on trkkuudeltn O(h 2 ). f (x) 1 h 2 [f(x+h) 2f(x)+f(x h)] 7.2 Numeerinen integrointi Trkstelln yksiuloitteisen Riemnn-integrlin f(x)dx 147
lskemist. Anlyysin perusluseen mukn f(x)dx = F(b) F() jollekin ntiderivtlle F. Yleisessä tpuksess ei void kuitenkn löytää F:ää suljetuss muodoss (esim. f(x) = e x2 ) ti ei tunnet f:n nlyyttistä lusekett, vn inostn sen tulukoituj rvoj. Tällöin täytyy integrli pproksimoid numeerisesti. Jtkoss pyritään löytämään integrlille w(x)f(x)dx likirvo kvll w(x)f(x)dx = A 1 f(x 1 )+...+A p f(x p )+E[f] (7.11) Muoto (7.11) olevi kvoj kutsutn numeerisiksi integrointikvoiksi eli kvdrtuureiksi. Luvut A i ovt pinokertoimi, pisteet x k integrointipisteitä j E[f] on virhetermi. Funktiot w kutsutn pinofunktioksi j usein w 1. Määritelmä 7.1. Kvn (7.11) trkkuusste ond, jos se on trkk (E[f] = ) kikill polynomeill, joiden steluku d, j jos on olemss d+1-steinen polynomi jolle se ei ole trkk. Luse 7.2. Jos on nnettu pisteistö x 1 < x 2 <... < x n, niin on olemss kertoimet A 1,...A n siten, että kvn n w(x)f(x)dx = A k f(x k )+E[f] (7.12) trkkuusste on vähintään n. k=1 Todistus. Kv (7.12) on trkk funktioille jos seurvt yhtälöt ovt voimss: A 1 +...+A n = f(x) = x m, m =,1,...,n (7.13) A 1 x 1 +...+A n x n = A 1 x n 1 +...+A n x n n =. w(x)dx w(x)xdx w(x)x n dx (7.14) Kosk kikki x k :t ovt erisuuri, niin determinntti (ns. Vndermonden mtriisin determinntti) 1 1... 1 x 1 x 2... x n n k D n = = (x... k x j ) x n 2... x n k=2 j=1 1 x n n 148
j linerisell yhtälöryhmällä (7.14) on yksikäsitteinen rtkisu. Kosk integrointi on linerinen opertio, niin kv (7.12) on trkk kikille funktioiden (7.13) linerikombintioille + 1 x+...+ n x n. Esimerkki 7.3. Olkoon n = 3 j = x =, x 1 = 1 2, x 2 = b = 1. Hetn integrointikv muodoss f(x)dx A f()+a 1 f( 1 2 )+A 2f(1) mikä on trkk kikille polynomeille p, joille deg(p) 2. Käytetään, testifunktioin f(x) = 1, f(x) = x j f(x) = x 2, ts. 1 = 1 2 = 1 3 = 1dx = A +A 1 +A 2 xdx = 1 2 A 1 +A 2 x 2 dx = 1 4 A 1 +A 2 Yhtälöryhmän rtkisu on [ 1 6, 2 3, 1 6]. Sdn kvdrtuuri: f(x)dx 1 6 f()+ 2 3 f(1 2 )+ 1 6 f(1) = 1 6 [ f()+4f( 1 2 )+f(1)], mikä tunnetn Simpsonin sääntönä. Edellisen luseen nojll Simpsonin sääntö tuott trkkoj tuloksi kikille kvdrttisille polynomeille, f(x) = x 2 +bx+c. 7.2.1 Newton-Cotes kvt Trkstelln integrlin f(x)dx (7.15) lskemist. Asetetn = x j h = b. Olkoon f jtkuv välillä [,b]. Yksinkertisin tp pproksimoid integrli (7.15) on korvt f :nen steen interpoltin j interpolointivirheen summll (=välirvoluse) f(x +sh) = f +hsf (x +θh), missä θ = θ(s) ],1[ j f := f(x ). Muuttujnvihdoll x = x +sh sdn f(x)dx = = h f(x +sh)hds f ds+h 2 sf (x +θh)ds = hf +h 2 sf (x +θh)ds. 149
Kosk s ei vihd merkkiä välillä [,1], sdn 1 integrlilskennn välirvoluseen nojll Siis sf (x +θh)ds = f (x +ξh) sds = 1 2 f (x +ξh), ξ ],1[. f(x)dx = hf + h2 2 f (x +ξh) = hf +E[f] Tämä kv tunnetn suorkidesäännön nimellä j sillä on kuvn mukinen geometrinen tulkint f(x) f A h B Kuv 1: Suorkidesääntö Smll tvll voidn joht monimutkisempi kvoj. Olkoon nnettu pisteistö x i = x + ih (i =,...,k), missä = x, b = x k j h = (b )/k. Integrli pproksimoidn nyt integrlill p k (x)dx, missä p k (x) on enintään stett k olev interpoltiopolynomi, mille p k (x i ) = f(x i ) =: f i, i =,...,k Tekemällä muuttujnvihto x = x + sh j kehittämällä p k etenevien differenssien vull, sdn = h p k (x)dx = k k p k (x +sh)hds [ f + f s+ 1 2! 2 f s(s)+...+ 1 k! k f s(s)...(s k +1) ] ds Tämä integrli on helppo lske j k:t muuttmll sdn erilisi kvdrtuurej, ns. suljettuj Newton-Cotes kvoj. 1 Olk. f jv j g ti (g ) Riemn integroituv välillä [,b]. Silloin on olemss ξ [,b] siten, että f(x)g(x)dx = f(ξ) g(x)dx. 15
Luse 7.3. Olkoon f (k+1) j f (k+2) jtkuvi välillä [,b]. Tällöin h k+3 (k +2)! f(k+2) (x +ξh) E[f] = h k+2 (k +1)! f(k+1) (x +ξh) j missä ξ ],k[. k k s 2 (s)...(s k)ds, k prillinen s(s)...(s k)ds, k priton Todistus. Virhetermi E[f] sdn integroimll interpoltiovirhe f p k j käyttämällä integrlilskennn välirvolusett. Esimerkki 7.4. Vlitsemll k = 1 sdn ns. puolisuunnikssääntö f(x)dx h = hf +h [ f + f s ] ds [ f1 f ] sds = h 2 (f +f 1 ). Puolisuunnikssäännöllä on seurvn kuvn 2 mukinen geometrinen tulkint. Luseen f1 f(x) f A h B Kuv 2: Puolisuunnikssääntö 7.3 mukn kv on trkk, jos f, eli f on suor. Virhelle sdn Luseen 7.3 nojll: E[f] = h3 2 f (ξ) s(s)ds = h3 12 f (ξ). Esimerkki 7.5. Vlint k = 2 tuott Simpsonin kvn missä h = b 2. f(x)dx h 3 (f +4f 1 +f 2 ), 151
Rtkisu. f(x)dx h 2 [f + f s+ 1 2! 2 f s(s)]ds 2 2 = hf ds+h f sds+ h 2 2 2 f s(s)]ds = 2hf +h f 2+ h / 2 2 2 f ( 1 3 s3 1 2 s2 ) = h(2f +2f 1 2f + 1 2 (f 2 2f 1 +f ) 2 3 ) = h(2f 1 + 1 3 (f 2 2f 1 +f )) = h 3 (6f 1 +f 2 2f 1 +f ) = h 3 (f +4f 1 +f 2 ) Simpsonin kvn virhe on E[f] = h5 9 f(4) (ξ) Esimerkki 7.6. j vlint k = 3 tuott Simpsonin 3/8 kvn f(x)dx 3h 8 (f +3f 1 +3f 2 +f 3 ). Molempien kvojen trkkuusste on sm, ts. ne ovt trkkoj korkeintn stett 3 oleville polynomeille. Menetelmävirheen kertluokk on molemmille O(h 5 ). Simpsonin 3/8 kv vtii kuitenkin yhden pisteen enemmän. Edellä esitettyjä Newton-Cotes kvoj snotn suljetuiksi, kosk interpoltiopolynomi interpoloi f:ää välin [, b] päätepisteissä. Toinen mhdollisuus on pproksimoid f:ää polynomill jok interpoloi f:ää vin välin [, b] sisäpisteissä. Merkitään sisäpisteitä x i = x +ih (i = 1,...,k), missä x = +h, x k = b h j h = (b )/(k +2). Asetetn lisäksi x = j x k+1 = b (kuv 3). f f 1 f k-1 f k =x x x... -1 1 x k-1 x x k k+1 =b Kuv 3: interpolointi sisäpisteissä Integrli (7.15) pproksimoidn nyt kvll p k (x)dx = h k+1 [ f + f s+ 1 2! 2 f s(s)+... + 1 k! k f s(s)...(s k +1) ] ds, 152
missä p k on korkeintn stett k olev polynomi, jolle p k (x i ) = f(x i ), i =,...,k. Kvoj kutsutn voimiksi Newton-Cotes kvoiksi. Luse 7.4. Olkoon f (k+1) j f (k+2) jtkuvi välillä [,b]. Tällöin h k+3 (k +2)! f(k+2) (x +ξh) E[f] = h k+2 (k +1)! f(k+1) (x +ξh) j missä ξ ],k +1[. k+1 k+1 Esimerkki 7.7. Vlitsemll k =, sdn f(x)dx = h s 2 (s)...(s k)ds, k prillinen s(s)...(s k)ds, k priton f ds+ h3 2! f (x +ξh) s 2 ds = 2hf + h3 3 f (x +ξh), ξ ],1[. Kv tunnetn nimellä keskipistesääntö j sen geometrinen tulkint on esitetty kuvss 4. f(x) f = x -1 x x 1 =b Kuv 4: Keskipistesääntö Esimerkki 7.8. Modifoitu puolisuunnikssääntä ti Newton-Cotes khden pisteen (k=1, x,x 1 ) voin sääntö sdn kvll missä h = b k +2. Rtkisu. f(x)dx f(x)dx = 3 2 h(f +f 1 ), p 1 (x)dx = h 2 = h [ 2 f ds+(f 1 f ) (f + f s)ds 2 sds] = h(3f + 3 2 f 1 3 2 f ) = 3 2 h(f +f 1 ) 153
Huomutus 7.2. All on nnettu muutmi korkemmn steen Newton-Cotes kvoj integrlien lskemiseksi virhetermeineen ilmn johtmist. x4 Boolen sääntö: x f(x)dx = 2 45 h(7f(x )+32f(x 1 )+12f(x 2 )+32f(x 3 )+7f(x 4 )) 8 945 h7 f (6) (ξ) Kuusipisteinen Newtonin-Cotesin suljettu sääntö: f(x)dx = 5 x 288 h(19f(x )+75f(x 1 )+5f(x 2 )+5f(x 3 ) x5 +75f(x 4 )+19f(x 5 )) 275 1296 h7 f (6) (ξ) Kolmipisteinen Newtonin-Cotesin voin sääntö: f(x)dx = 4 x 3 h(2f(x ) f(x 1 )+2f(x 2 ))+ 14 45 h5 f (4) (ξ) x3 x4 Nelipisteinen Newtonin-Cotesin voin sääntö: x f(x)dx = 5 24 h(11f(x )+f(x 1 )+f(x 2 )+11f(x 3 ))+ 95 144 h5 f (4) (ξ) x5 x Viisipisteinen Newtonin-Cotesin voin sääntö: f(x)dx = 6 2 h(11f(x )4f(x 1 )+26f(x 2 )4f(x 3 )+11f(x 4 )) 41 14 h7 f (7) (ξ) 7.2.2 Plottinen puolisuunniksmenetelmä Edellä esitetyt mtl-steiset Newton-Cotes kvt ntvt epätrkkoj tuloksi jos integroimisväli on liin pitkä. Toislt korke-steisten interpoltiopolynomien käyttö tsvälisellä pisteistöllä ei ole järkevää niiden oskillointitipumuksen vuoksi. Mtlsteisi kvoj voidn käyttää tehokksti, jos integrointiväli jetn osväleihin, joill integrointi suoritetn erikseen. Jkopisteet x i voidn vlit peritteess mielivltisesti väliltä (,b). Tämän jälkeen pproksimoimme osvälillä (x i,x i+1 ) olev pint-l puolisuunnikkll. Koko lueen integrlille sdn siten pproksimtio lskemll yhteen osvälien pproksimoidut lt. Kosk puolisuunnikkn pint-l on sen leveys kerrottun korkeuden keskirvoll, on osvälin pproksimoitu pint-l: xi+1 x i f(x)dx 1 2 (x i+1 x i )[f(x i )+f(x i+1 )] 154
A:= x x x 4 x 1 x 2 x 5 =:B 3 Kuv 5: Ploittinen puolisuunnikssääntö Koko lueen pint-l puolisuunniksmenetelmällä on siis f(x)dx 1 n (x i+1 x i ) [ f(x i )+f(x i+1 ) ] (7.16) 2 i= Käytännössä puolisuunniksmenetelmässä kuten myöhemmin esiteltävässä Rombergin menetelmässäkin käytetään usein tsmittist osväleihin jko, eli x i = +ih, missä h = (b )/n, joten x i+1 x i = h. Tällöin iempi kv muuttuu muotoon f(x)dx h n [f(x i )+f(x i+1 )] 2 Lskennn tehostmiseksi voidn edellinen vielä muunt muotoon i= (n f(x)dx h f(x i )+ 2[ 1 f(x )+f(x n ) ]) (7.17) Pseudokoodi menetelmälle: progrm T rpezoid(n,, b) integer i rel h,sum,x h (b )/n sum 1 2 [f()+f(b)] for i = 1 to n do x +ih sum sum+f(x) end for sum (sum)h output sum end T rpezoid 155
Ploittisen puolisuunniksmenetelmän virheelle pätee: Luse 7.5. Jos funktioll f on välillä [,b] jtkuv toisen kertluvun derivtt f j f:n integrli f(x)dx pproksimoidn puolisuunniksmenetelmällä, niin on olemss ξ (, b) siten, että E[f] = 1 12 (b )h2 f (ξ) = O(h 2 ) Todistus. Emme todist väitettä sillä todistus on sngen pitkä. Virheelle on kuitenkin helppo rvioid ylärj. Integrlille pätee f(x)dx = h 2 (f +2f 1 +...+2f n +f n ) h3 12 [f (x +ξ h)+f (x 1 +ξ 1 h)+...+f (x n +ξ n h)], missä ξ i ],1[. Virhetermiä voidn nyt rvioid E[f] h3 12 n mx f (x) = h3 b mx f (x) x [,b] 12 h x [,b] = h2 (b ) mx f (x) 12 x [,b] (7.18) Esimerkki 7.9. Jetn väli [,b] 2n:ään h:n mittiseen osväliin [x i,x i+1 ], missä x i = x + ih (i =,...,2n), x =,x 2n = b j h = (b )/2n. Jkmll integrli osiin f(x)dx = x2 x f(x)dx+ x4 x 2 f(x)dx+... x2n j soveltmll jokiseen osväliin Simpsonin sääntöä, sdn x 2n 2 f(x)dx f(x)dx h 3[ f +4f 1 +2f 2 +4f 3 +...+2f 2n 2 +4f 2n +f 2n ]. Virhetermille sdn rvio: E[f] h4 (b ) mx 18 x [,b] f(4) (x). Huomutus 7.3. Virheen ylärjn rviot (7.18) voidn käyttää rvioitess trvittvien osvälien lukumäärää hlutun trkkuuden svuttmiseksi. Mikäli kuitenkin integroitv funktio käyttäytyy hyvin eri tvoin integroimisvälin eri kohdiss, ei virhervioll (7.18) ole käyttöä sen globlin luonteen vuoksi. Tällöin osväleihin jko on suoritettv funktion käyttäytymistä mukillen dptiivisesti. Esimerkki 7.1. Jos ploittist puolisuunnikssääntöä käytetään pproksimoimn integrli e x2 dx trkkuudell 1 2 1 4, niin montko integrointipistettä täytyy vlit? 156
Rtkisu. Puolisuunnikssäännön virhe on E[f] = b 12 h2 f (ξ). Funktiof(x) = e x2, f (x) = 2xe x2 j f (x) = (4x 2 2)e x2. Siten mx f (x) 2 x [,1] j siten E[f] 1 6 h2. Vditn, että 1 6 h2 1 2 1 4 = h.1732 Kosk h = 1, niin trkkuuden svuttmiseksi täytyy oll n > 58. Siis trvitn 59 n integrointipistettä. 7.2.3 Rekursiivinen puolisuunnikssääntö Trkstelln kuink integrlin ploittinen puolisuunnikspproksimtio lsketn kun väli [,b] on jettu 2 n osväliin. Ploittinen puolisuunnikssääntö tsvälisessä pisteistössäx,...,x n voidn kirjoitt muotoon: 2 n R(n,) = h f(+ih)+ h [f()+f(b)] (7.19) 2 jos väli [,b] on jettu 2 n :ään osväliin j h = (b )/2 n. Jos R(n,) on lskettu j hlutn lske R(n,), niin käytetään yhtäsuuruutt: R(n,) = 1 2 R(n,)+[R(n,) 1 2 R(n,)]. Lsketn rvo viimeiselle sulkulusekkeelle. Olkoon h = (b )/2 n j merkitään C = h [f()+f(b)] kvss (7.19). Sdn, 2 2 n R(n,) = h f(+ih)+c (7.2) j 2 n R(n,) = 2h f(+2jh)+2c. (7.21) j=1 Edellen yhtälöistä (7.2) j (7.21) smme: R(n,) 1 2n 2 R(n,) = h 2 n f(+ih) h j=1 2 n = h f[(+(2k )h]. k=1 157 f(+2jh)
Yllä jokinen ensimmäisen summn prillist i vstv rvo nollutuu toisen summn vstvn termin tki. Ainostn pritont i vstvt termit jäävät jäljelle. Tulos voidn esittää seurvn luseen muodoss: Luse 7.6. Jos R(n,) on lskettu, niin R(n,) voidn lske lusekkeest R(n,) = 1 2 2n R(n,)+h k=1 missä h = (b )/2 n j R(,) = 1 2 (b )[f()+f(b)]. f[+(2k )h] (n 1), (7.22) 7.2.4 Rombergin menetelmä Numeerisen integroinnin trkkuus riippuu käytetyn menetelmän trkkuussteest j käyteystä osvälin pituudest. Rombergin menetelmä on extrpolointimenetelmä, missä integrli lsketn ensin mielivltisell osvälin pituudell h j sen jälkeen h:n puolikkll. Tämän jälkeen käytetään Richrdsonin ekstrpoltiot, jolloin muodostetn linerikombintio edellä sduist likirvoist. Jtkoss trkstelln Rombergin menetelmää puolisuunnikssääntöön sovellettun. Luse 7.7. Jos f C ([,b]), niin puolisuunnikssääntö 2 n :llä osvälillä voidn esittää muodoss f(x)dx = R(n,)+ 2 h 2 + 4 h 4 + 6 h 6 +... missä h = (b )/2 n j kertoimet i eivät riipu h:st. Todistus. Ohitetn. Luse tunnetn Euler-Mclurin luseen. Luseen nojll voidn iemmin esitettyä Richrdsonin ekstrpolointi sovelt integrlin pproksimointiin. Rombergin lgoritmin nimellä tunnettu menetelmä tuott nyt kolmiomisen tulukon lukuj, mitkä kikki ovt integrlin f(x)dx pproksimtioit. O(h 2 ) O(h 4 ) O(h 6 )... R(, ) R(1,) R(1,1) R(2,) R(2,1) R(2,2)...... R(n,) R(n,1) R(n,2) R(n,n) Ensimmäinen srke koostuu integrlin pproksimtioist mitkä ovt lskettu rekursiivist puolisuunnikssääntöä (7.22) käyttämällä j osväliä puolittmll. Toinen j sitä seurvt srkkeet sdn Richrdsonin extrpoloinnill, ts. R(n,m) = R(n,m)+ 1 [ ] R(n,m) R(n,m) (7.23) 4 m 158
missä n 1 j m 1. Esimerkki 7.11. Jos R(4, 2) = 8 j R(3, 2) = 1, niin mikä on R(4, 3)? Rtkisu. Kvst (7.23) sdn R(4,3) = R(4,2)+ 1 [ ] 1 R(4,2) R(3,2) = 8+ 63 63 (8) = 73 9 Esimerkki 7.12. Lske Rombergin menetelmällä trkk rvo integrlille I = 4 x 5 dx = 46 6 = 6822 3 Rtkisu. Nyt =, b = 4 j yksinkertinen puolisuunnikssääntö nt pproksimtion R(,) = 4 2 (+45 ) = 1 2 46 = 248 j virhervion I R(,) = (b )3 f (ξ) 43 12 12 2 43 = 6826 2 3. Soveltmll sm sääntöä ploittin khdelle osvälille, sdn R(1,) = 1 2 R(,)+2 25 = 188 j virhervio I R(1,) = h2 12 (b ) f (ξ) 4 12 4 2 43 = 176 2 3. Jkmll väli neljään osn (h = 1), sdn R(2,) = 1 2 R(1,)+1 (15 +3 5 ) = 788 j virhervio I R(2,) = h2 12 (b ) f (ξ) 1 12 4 2 43 = 426 2 3. Soveltmll Simpsonin sääntöä Rombergin kvion mukisesti, sdn R(1,1) = R(1,)+ R(1,) R(,) 3 = 768 j Simpsonin kvn mukinen virhervio I R(1,1) = h5 9 f(4) (ξ) 25 9 5!4 = 172 3. 159
Vstvsti j virhervio R(2,1) = R(2,)+ R(2,) R(1,) 3 = 688 I R(1,1) = h5 9 f(4) (ξ) 15 9 5!4 = 52 3. Rombergin kvioon voidn vielä ekstrpoloid rvo R(2,2) = R(2,1)+ R(2,1) R(1,1) 3 = 688 2 3 Kosk R(2,2) = I +ch 6 f (6) (ξ) pätee, että R(2,2) = I. Seurv pseudokoodi lskee Rombergin pproksimtiot R(i, j) funktiolle f välillä (, b). Termit lsketn rivi riviltä, eli ensin R(, ), sitten R(1, ), jolloin smme lskettu termin R(1, 1) jne. Prosessi voidn lopett esimerkiksi, kun R(k, k) R(k,k ) ε R(k,k). procedure Romberg(f,,b,n,(r ij )) rel rry (r ij ) :n :n integer i,j,k,n rel,b,h,sum interfce externl function f h b r (h/2)(f()+f(b)) for i = 1 to n do h h/2 sum for k = 1 to 2 i step 2 do sum sum+f(+kh) end for r i 1 2 r i, +(sum)h for j = 1 to i do r ij r i,j +(r i,j r i,j )/(4 j ) end for end for end procedure Romberg 7.3 Adptiiviset integrointilgoritmit Adptiivinen integrointilgoritmi käyttää yhtä ti usemp lkeellist integrointikv j määrää utomttisesti osvälien pituudet siten, että tulos täyttää sille setetun trkkuusvtimuksen. Eri skelpituuksi käytetään integroimislueen eri osiss: pitkää skelt jos integroitv funktio on "tsinen"j lyhyempää muull. Tällä tvoin pyritään smn hluttu trkkuus mhdollisimmn vähällä lskenttyöllä. 16
7.3.1 Adptiivinen osvälijko Väli [,b] jetn osväleihin [x i,x i+1 ], h i = x i+1 x i. Kullkin osvälillä käytetään kht eri integrointisääntöä. Olkoon tulokset P i j Q i, jotk siis pproksimoivt integrli I i = xi+1 x i f(x)dx. Erotust P i Q i trkstelemll sdn rvio niiden trkkuudelle. Jos trkkuus on hyväksyttävissä, niin otetn niistä toinen integrlin pproksimtioksi välillä [x i,x i+1 ]. Jos trkkuus ei ole hyväksyttävä, niin osväli puolitetn j prosessi toistetn osvälin puolikkss. Oletetn, että Q i sdn soveltmll P i :n lskemiseksi käytettyä sääntöä khteen osväliin, joiden pituus on h/2 j kvdrtuurin P i trkkuusste on p. Kehittämällä f Tylorin srjksi välin [x i,x i+1 ] keskipisteessä,sdn I i P i = ch p +O ( h p+1) ch p I i Q i = c ( h) ( p ( h) ) p+1 +O c 1 ( 2 p ) 2 2 2 php Sdn Edelleen I i Q i = 1 2 p(i i P i ) (2 p )I i = 2 p Q i P i = (2 p )Q i +Q i P i I i Q i = 1 2 p (Q i P i ) Olkoon [,b] jettu n:ään osväliin j I := f(x)dx n Q i =: Q. Osväli on trpeeksi lyhyt, jos on voimss sillä, tällöin I i Q i = 1 2 p Q i P i h i ε, (7.24) b n I Q = (I i Q i ) n I i Q i n (7.24) 1 2 p (Q i P i ) ε b n h i = ε 7.3.2 Adptiivinen Simpsonin menetelmä Adptiivisess prosessiss väli [,b] jetn khteen osväliin j sitten päätetään, trvitseeko osvälejä vielä jk usempn osväliin. Prosessi jtketn rekursiivisesti 161
f(x) P i - Q i Q i c b Kuv 6: Approksimtiot dptiivisess osvälijoss. kunnes hluttu lskenttrkkuus välillä [, b] svutetn. Jott menetelmä voisi toimi, on kehitettävä testi joll päätetään, jetnko kyseistä osväliä usempn osväliin. Merkitään missä j I = S(,b) = (b ) 6 f(x)dx = S(,b)+E(,b), [ f()+4f( +b ] 2 )+f(b) E(,b) = 1 9 (b 2 )5 f (4). S(,b) on siis Simpsonin säännöllä lskettu pproksimtio integrlille j E(,b) pproksimtion virhe. Oletmme nyt että piste missä f (4) on lskettu pysyy vkion. Kun h = (b ), niin I = S (1) +E (1) (7.25) missä S (1) = S(,b) j E (1) = 1 9 (h 2 )5 f (4) Soveltmll Simpsonin sääntöä kksi kertn välillä [,b], sdn missä S (2) = S(,c)+S(c,b) j I = S (2) +E (2) (7.26) E (2) = 1 9 (h/2 2 )5 f (4) 1 9 (h/2 2 )5 f (4) = 1 16 E(1) Edellisessä c = +(b )/2. Vähentämällä yhtälö (7.25) yhtälöstä (7.26), sdn Tästä j yhtälöstä (7.26) sdn S (2) S (1) = E (1) E (2) = 15E (2) I = S (2) +E (2) = S (2) + 1 15 (S(2) S (1) ) 162
Käytämme nyt epäyhtälöä 1 15 S(2) S (1) < ǫ ehton, kun päätämme milloin osväli pitäisi jk: Jos epäyhtälö ei toteudu, jmme osvälin, muutoin emme. Jos osväli jetn, jtkmme prosessi uudess skeleess käyttäen rvo ǫ/2 j niin edelleen. recursive rel function Simpson(f,, b, ǫ, level, level_mx) result(simpson_result) integer level, level_mx rel,b,c,d,e,h interfce externl function f level level+1 h b c (+b)/2 one_simpson h(f()+4f(c)+f(b))/6 d (+c)/2 e (c+b)/2 two_simpson h(f()+4f(d)+2f(c)+4f(e)+f(b))/12 if level level_mx then simpson_result two_simpson output "mximum level reched" else if two_simpson one_simpson < 15ǫ then simpson_result two_simpson + (two_simpson one_simpson)/15 else lef t_simpson Simpson(f,, c, ǫ/2, level, level_mx) right_simpson Simpson(f, c, b, ǫ/2, level, level_mx) simpson_result lef t_simpson + right_simpson end if end if end function Simpson 7.3.3 Gussin integrointimenetelmät Newton-Cotes-kvoj johdettess oli pisteistö x,x 1,...,x n etukäteen kiinnitetty j tsvälinen. Voidn osoitt (Krl Friedrich Guss (1777-1855)), että vlitsemll integrointipisteet optimlisesti väliltä [, b], voidn kvdrtuurin trkkuutt huomttvsti prnt. Johdetn seurvksi integrointikv f(x)dx = k A i f(x i )+E(f), (7.27) 163
missä sekä kertoimet A i että integrointipisteet x i ovt vpit prmetrej. Yritetään löytää kvn (7.27) prmetrit siten, että kv olisi trkk kikille p P 2k, eli p(x)dx = k A i p(x i ). (7.28) Rtkisu. Olkoon p (x) = k p(x i )l i (x) (7.29) k -steinen Lgrngen interpoltiopolynomi, jolle p (x i ) = p(x i ). Nyt polynomi p voidn esittää muodoss p(x) = p (x)+(x x 1 )...(x x k )q(x) missä q(x) P k. Vditn, että yhtälön k A i p(x i ) (7.28) = p(x)dx (7.29) = k p(x i ) l i (x)dx+ (x x 1 ) (x x k )q(x)dx on oltv voimss kikille k-steisille polynomeille q j kikille solmupistervoille p(x i ). Vlitsemll p(x i ) =,i =,...,k nähdään, että ortogonlisuusehto (x x 1 ) (x x k )q(x)dx = kikille q P k (7.3) on välttämätön ehto (7.28):lle. Jott ehto (7.3) olisi voimss on integrointipisteiksi vlitv k-steisen Legendren polynomin 2 L k nollkohdt: Vlitsemll p(x i ) = δ ij, sdn L k (x) = (x x 1 ) (x x k ). A j = l j (x)dx Huomutus 7.4. Kv (7.27) pätee välille [, 1]. Tämä ei kuitenkn ole mikään ongelm, sillä jos kv trvitn välille [, b], niin määritellään ensin linerinen funktio λ : [,1] [,b], missä: ( b ) ( +b ) λ(t) = t+ 2 2 2 Legendren polynomit sdn rekursiokvll: L (x) = 1, L 1 (x) = x, L k+1 (x) = 2k +1 k +1 xl k(x) k k +1 L k(x) 164
Tehdään integrliss f(x)dx muuttujnvihto x = λ(t). Silloin dx = λ (t)dt = 1 (b )dt, j sdn 2 Ts., pätee f(x)dx = b 2 f(x)dx b 2 f ( λ(t) ) dt b 2 k k A i f ( λ(t i ) ) ( b A i f 2 t i + +b ) 2 (7.31) Edellinen trkstelu voidn yleistää luseeksi: Luse 7.8. olkoon pinofunktio w(x) j = äärellisen moness pisteessä välillä [,b]. Tällöin on olemss pisteet x 1,...,x k [,b] j kertoimet A 1,...,A k siten, että kvn k w(x)f(x)dx = A i f(x i )+E[f] trkkuusste on 2k. Tämä trkkuusste on optimlinen k:n suhteen. Esimerkki 7.13. Lsketn muutmi gussin kvojen integroimispisteitä j pinokertoimi. k=1: Polynomin L 1 (x) = x, juuri on x 1 =. Pinokertoimeksi sdn A 1 = l 1 (x)dx = 1dx = 2 k=2: Polynomin L 2 (x) = 1 + 3 2 2 x2, juuret ovt x 1 = 1 3, x 2 = + 1 3. Pinokertoimet ovt tällöin: x/ 3 A 1 = l 1 (x)dx = / 3/ 3 dx = 1 A 2 = l 2 (x)dx = x (/ 3) 1/ 3 (/ 3) dx = 1 k=3: Polynomin L 3 (x) = 3x+ 5 2 2 x3 3, juuret ovt x 1 =, x 2,3 = ±. Pinokertoimet 5 ovt tällöin: 3 (x )(x+ 3 ) 5 5 A 1 = l 1 (x)dx = dx = 3 ( )( 3 5 ) 3 x2 +1dx = 8 9 5 5 Vstvsti lsketna 2,3 = 5 9. 165
Esimerkki 7.14. Lske integrli I = 4 Gussin-Legendren 1-, 2- j 3-piste kvll. x 5 dx = 682 2 3 Rtkisu. Solmupisteet sijoitetn välille [,4] smss suhteess, kuin ne ovt välillä [-1,1]. Kvn (7.31) mukn sdn I 2 k Sdn seurvt pproksimtiot: k = 1 : k = 2 : k = 3 : Q = 2 2 2 5 = 128 ( 4 A i f 2 z i + 4+ ) = 2 2 k A i (2z i +2) 5 Q 1 = 2 ( (2 2 3 ) 5 +(2+ 2 3 ) 5) 625.777... Q 2 = 2 ( 5 9 (2 2 9/15) 5 + 5 9 (2+2 9/15) 5 + 8 9 25) = 682 2 3 7.3.4 Epäoleelliset integrlit Jos integroimisväli ti integroitv funktio eivät ole rjoitettuj snotn integrli "epäoleelliseksi". Ennen numeerisen rtkisun etsimistä on ensin vrmistuttv epäoleellisen integrlin äärellisyydestä. Käydään seurvksi läpi menetelmiä epäoleellisten integrlien lskemisess. 7.3.5 Integroimisvälin ktkiseminen Tässä tpuksess epäoleellist integrli pproksimoidn lskemll integrli rjoitetull välillä. Oletus on tällöin, että on tiedoss jokin väli jonk ulkopuolell funktio "häviää", eli suurin os integrlin pint-lst on kyseisen välin sisäpuolell. Esimerkiksi e x2 dx = M e x2 dx+ M e x2 dx = I 1 (M)+I 2 (M) Jälkimmäinen termi I 2 (M) pienenee hyvin nopesti, joten likirvo koko integrlille sdn lskemll termi I 1 (M) jollin iemmin esitellyllä menetelmällä. 166
7.3.6 Singulriteetin eliminoiminen Jos integroitvss funktioss esiintyy singulriteetti integrointivälillä, on integrli epäoleellinen. Joskus funktiot voidn kuitenkin käsitellä siten, että integrli säilyy smn, mutt singulriteetti poistuu. Esimerkiksi integrli cosx x dx on epäoleellinen, sillä integroitvss funktioss esiintyy singulriteetti origoss. Voimme kuitenkin kirjoitt integrlin muodoss I = missä funktio 1 1 2 x2 x dx+ cosx+ 1 2 x2 dx = 9 x 5 + g(x)dx = 9 5 +I 2, x = g(x) = cosx+ 1 2 x2, x ],1] x on jtkuv välillä ],1[. Integrli I 2 voidn lske siten numeerisesti tvllisen Riemnnin-integrlin. 7.3.7 Muuttujnvihto Rjoittmton integroimisväli voidn joskus muunt rjoitetuksi muuttujnvihdoksell. Esimerkiksi vihdoksell x = e t sdn puolikseli [, [ muunnettu väliksi [,1[: f( lnx) 1 g(x) f(t)dt = dx = x x dx Jos g(x)/x on rjoitettu origon ympäristössä, oikenpuoleinen integrli on oleellinen. Jos integroitv funktio pysyy rjoitettun kun x, voidn koko relikseli muunt suljetuksi väliksi käyttäen muuttujnvihto x = tnt: I = f(x)dx = π/2 π/2 f(tnt) cos 2 t dt 7.3.8 Gussin kvt epäoleellisille integrleille Tietynlisille epäoleellisille integrleille voidn joht optimlisi Gussin integrointikvoj smn tpn kuin tvllisille integrleille. Tällöin rjoittmton integrointiväli ti singulriteetti käsitellään sopivn pinofunktion vull. Guss-Chebyshev-integrointi: f(x)dx 1 x 2 = π k k f(x i )+ 2π 2 2k (2k)! f(2k) (ξ), ξ ],1[ 167
Integrointipisteet x i = cos( 2i π) ovt k-steisen Chevysevin polynomin juuret. 2k Guss-Lguerre-integrointi: e x f(x)dx = k A i f(x i )+ (k!)2 (2k)! f(2k) (ξ), ξ [, [ Integrointipisteet x i ovt k-steisen Lquerren polynomin juuret. Guss-Hermite-integrointi: e x2 f(x)dx = k A i f(x i )+ k! π 2 k (2k)! f(2k) (ξ), ξ ], [ Integrointipisteet x i ovt k-steisen Hermiten polynomin juuret. 7.4 Moniulotteinen integrointi j Monte Crlo-menetelmä Tehtävänä on lske moniulotteinen integrli I = f(x 1,x 2,...,x n )dx 1 dx 2...dx n, A n missä f(x 1,...,x n ) on määritelty n-ulotteisen vruuden osss A n. Huomutus 7.5. Numeerinen teori moniulotteisten integrlien lskemiseksi on kehittymätöntä, erityisesti on ongelmi virheen rvioinniss singulriteettien (isompi vruuden osi kuin piste) käsittelyssä lskent-jn pitämisessä pienenä Approksimointimenetelmän vlint riippuu rtkisevsti vruuden dimensiost Jos dim(a n ) 4 sovelletn 1-ulotteiselle tehtävälle kehitettyjä menetelmiä Jos dim(a n ) 5 käytetään Monte-Crlo menetelmää Prhiten perinteisten integrointimenetelmien teori tunnetn tsoss: on olemss integrointimenetelmiä joiden integrointilue on suorkide, kolmio ti ympyrä. Elementtimenetelmän mukinen jttelu on käyttökelpoinen, jos integroitvn lueen reunkäyrä on monimutkinen. Mielivltist tso-luett voidn helposti pproksimoid 168
kolmioill, peittämällä lue kolmioverkoll. Lisäksi dptiivisiss menetelmissä kolmioverkko on helppo tihentää. Trkstelln lyhyesti integrointi joidenkin yksinkertisten tson monikulmioiden yli. 7.4.1 Yksinkertisi kvoj kolmiolle Olkoon µ(k) kolmion K pint-l j G kolmion pinopiste. Tällöin integrointikv f(x,y)dxdy µ(k) f(g) K on trkk 1-steen polynomeille. Jos A, B j C ovt kolmion sivujen keskipisteet on kv f(x,y)dxdy µ(k) (f(a)+f(b)+f(c)) 3 trkk 2-steen polynomeille. K 7.4.2 Tulointegrlit Moniulotteinen integrli voidn lske soveltmll yksiulotteisi menetelmiä peräkkäin kullekin dimensiolle. Esimerkiksi yksiulotteisen k-piste Guss-Legendre-kvn vstine R 2 :ss on f(x,y)dxdy k [ A i ] f(x i,y)dy k k A i A j f(x i,y j ) missä (A i,x i ) ovt yksiulotteisen kvn pinokertoimet j integrointipisteet. Kv on trkk 2k 1-steisille polynomeille. Kv snotn tulokvksi, kosk siinä funktio f lsketn k k pisteessä. Huomutus 7.6. Tulokvoj on helppo joht. Kun vruuden dimensio suurenee, integrointipisteiden määrä ksv kuitenkin hyvin nopesti. Jos 3-piste Guss- Legendre-kv sovelletn 1-ulotteiseen integrliin, on funktion f rvo lskettv 3 1 = 5949 pisteessä. Jos vruus on 2-ulotteinen, pisteitä trvitn yli 1 9 kpplett! Esimerkki 7.15. Trkstelln Gussin 3-piste kv (trkkuus O(h 5 )). g(x)dx 5 ) 3 ( 9 g + 8 5 9 g()+ 5 ( ) 3 9 g 5 j=1 169
Kv muuttuu 2-uloitteiseksi kertomll f(x,y)dxdy 25 ( ) 3 3 81 f 5, + 4 5 + 25 ( ) 3 3 81 f 5, + 4 5 81 f + 4 ( ) 3 81 f, + 25 5 81 f + 25 ( ) 3 3 81 f 5, 5 ( 81 f ( ( 3 5, ) 3 5, ) 3, + 64 5 81 f(,) ) 3 + 4 ( 3 5 81 f 5, Huomutus 7.7. Kun ploittist puolisuunnikssääntöä sovelletn s-ulotteiseen kuutioon V = [,1] s, niin V f(x)dx I PS = m... i 1 = m i s= ( i1 w i1...w is f m,... i ) s. m Tulokv vtii N = (m+1) s funktion lsku, j sen trkkuus on I I PS = O(m 2 ) = O(N 2/s ), missä N = (m+1) s on solmupisteiden lukumäärä. Jos nyt hlutn virhe 1 2, niin trvitn 1 s solmupistettä suuridimensioisiin integrleihin trvitn muit menetelmiä. ) 7.4.3 Monte Crlo-menetelmä Täysin erilinen lähestymistp numeeriseen integrointiin on Monte Crlo-menetelmä, jok on käyttökelpoinen silloinkin kun integroidn usempiulotteisen lueen yli, jok stt oll hyvinkin monimutkinen. Jos integrli I = f(x)dx pproksimoidn suorkidemenetelmällä, sdn I 1 N N f(x i ) i= Approksimtio on siis funktion rvojen keskirvo. Keskirvojttelu johtkin tilstotieteen j todennäköisyyslskennn menetelmiin. Todennäköisyyslskennst tutun suurten lukujen lin perusteell sdn seurv luse: Luse 7.9. Olkoon x 1,x 2,...,x n stunnispisteitä väliltä [,1]. Tällöin ( 1 Pr lim N N N ) f(x i ) = I = 1. 17
Edellisessä luseess kuvtun Monte Crlo-intergointimenetelmän virhervio voidn joht keskeisen rj-rvoluseen vull: Luse 7.1. Olkoon funktion f vrinssi. Tällöin ( 1 Pr N σ 2 := N f(x i ) I λσ ) N Luseen nojll virheelle pätee f 2 (x)dx I 2 = 1 2π λ λ I I MC = O(N 2 ), eli virhe on riippumton vruuden dimensiost s. e x2 2 dx+o ( 1 N ). Monte Crlo-integrointi voidn helposti yleistää usempn ulottuvuuteen j mielivltiseen (rjoitettuun) integrointilueeseen. Olkoon f : Ω R s R sileä funktio, j olkoon lskettvn integrli I = f(x)dx. Asetetn g(x) = Ω { f(x), x Ω, x / Ω. Suljetn integroimislue Ω suorkulmisen s-ulotteisen särmiön S sisään. Tällöin f(x)dx = g(x)dx Ω Muunnetn seurvksi S yhdensuuntissiirroll j mittkvojen muutoksill yksikkökuutioksi V = [,1] s. Tällöin g(x)dx = g(x)dx, S joten pproksimtio integrlille I sdn rpomll riippumttomt stunnisvektorit z 1,...,z N V j settmll I MC = 1 N V S N g(z i ) Huomutus 7.8. All on koottu muutmi huomioit Monte Crlo menetelmästä Konvergenssinopeus N 2 ei ole hyvä ei yleensä käytetä 1-ulotteisiss tehtävissä. Jos trkkuutt hlutn yksi desimli lisää, niin trvitn 1-kertinen määrä pisteitä. 171
Virherj on prempi kuin tulokvn virherj O(N 2/s ), kun dimensio on iso. MC-menetelmät selviävät hyvin moniulotteisen vruuden singulriteeteist, mitkä ovt käyriä ti pintoj. Ongelmn on, että dimension ksvess täytyy generoid suuri määrä stunnislukuj. MC-menetelmän suosiot vähentää se, että hyviä stunnislukugenerttoreit on vähän. SL ei in knnt generoid tsisesti, vn enemmän lskennn knnlt tärkeille lueille. Jos esim. f(x)dx = e x dx niin f(x), kun x.5 generoidn SL: sellisen jkumn mukn, mikä seur funktion f olennisi osi. 172