Mtemtisk modellering og numeriske metoder Lektion 1 Morten Grud Rsmussen 8. november, 1 1 Numerisk integrtion og differentition [Bogens fsnit 19. side 84] 1.1 Grundlæggende om numerisk integrtion Vi vil i det følgende gennemgå fem tilgnge til numeriske pproksimtion f bestemte integrler, også kldet numerisk integrtion. Numerisk integrtion er typisk f interesse i to tilfælde, nemlig når vi ikke kn finde en stmfunktion til integrnten, eller når vi ikke kender et nlytisk funktionsudtryk, men kun kender funktionsværdien i et begrænset ntl punkter. 1. Midtpunktsreglen Den første metode, vi vil se på, er nturligvis også den mest primitive. Antg, t vi er interesseret i en numerisk løsning f f(x) dx. Metoden går helt simpelt ud på t dele intervllet I = [, b], der integreres over, op i n delintervller I i = [, x i ], i = 1,..., n f længde h = b og så pproksimere integrlet over de enkelte n delintervller I i ved t gnge intervllængden I i = h med funktionsværdien f( + h ) f integrnten midt i intervllet I n. Her er x =, x n = b og x i = + h for i = 1,..., n. Det smlede integrl er så pproksimeret f summen f pproksimtionerne over disse delintervller, og vi får ltså f(x) dx h f( + h b ), hvor h = n. (1) Midtpunktsreglen kn tolkes på følgende måde. Funktionen p f( + h ) kn opfttes som en nulgrdspolynomiumspproksimtion f f. Så er x i p dx = hf( + h ), og (1) er ltså summen f integrlerne over stykkevise nulgrdspolynomiumspproksimtioner f f. 1
1. Trpezreglen I smme ånd som ovenfor kn vi finde en førstegrdspolynomiumspproksimtion p 1 f f på I i, hvis vi i stedet for midtpunktet f( + h) kender værdierne f(x i 1) og f(x i ) f f i endepunkterne f I n : p 1 (x) = f( ) + f() f(x i ) (x ) x i (her fundet vh. Newtons divideret differens-metode med x = og x 1 = x i ), som integrerer til xi p 1 (x) dx = h (f() + f(x i )), hvor h = x i. Trpezreglen er ltså følgende pproksimtion: f(x) dx h ( f(xi 1 ) + f(x i ) ) = h ( ) n 1 f() + f(b) + h f(x i ), () hvor sidste omskrivning følger f en simpel omorgnisering. Det kn vises, t fejlen i denne pproksimtion er ε t n = b 1 h f (x I ), () for et pssende vlg f x I I = [, b], hvor vi understreger, t n et intet hr med polynomiumsgrden t gøre, men henviser til ntllet f delintervller I i. Som for polynomiumsinterpoltionerne kn vi ltså finde øvre og nedre grænser for vores fejl ved t finde mksimum og minimum f f på I. Er det f den ene eller nden grund ikke muligt t finde sådnne grænser, kn mn, hvis n er et lige tl, benytte følgende formel til t estimere fejlen: 1.4 Simpsons regel ε t n 1 (J n t J t n ), hvor Jn t = h ( ) n 1 f() + f(b) + h f(x i ). (4) Næste nturlige skridt er t pproksimere f på I i med et ndengrdspolynomium p gennem f( ), f( + h) og f(x i). Den ihærdige læser kn selv finde p (med en vlgfri metode fr lektion 1) og integrere ndengrdspolynomiet. Den dovne kn ånde lettet op, læne sig tilbge, og få det hele serveret: xi p (x) dx = h ( f(xi 1 ) + 4f( + h ) + f(x i) ), hvor h = x i. Anvendes dette på lle delintervller, kldes resulttet Simpsons regel og ser ud som følger: f(x) dx h ( f(xi 1 ) + 4f( + h ) + f(x i) ) = h ( f(x ) + f(x n ) ) + h f(x i h) + h n 1 f(x i ). Det bemærkes, t bogen ikke er konsekvent med, om den tæller målepunkter (ltså steder, hvor f skl kendes) eller delintervller, og t deres formel f den grund ser lidt nderledes ud.
1. Præcisionsgrd Inden vi diskuterer fejlvurderinger i forbindelse med Simpsons regel, vil vi indføre begrebet præcisionsgrd f en metode til numerisk integrtion. For t en metode kn klde sig en numerisk integrtionsmetode, skl den kunne bestemme integrlet f en konstnt funktion også kendt som et nultegrdspolynomium uden fejl. Vi kn derfor for en given numerisk integrtionsmetode lde N betegne det største hele tl, sådn t metoden nvendt på et vilkårligt N tegrdspolynomium over et vilkårligt intervl giver det rigtige resultt. Dette tl kldes præcisionsgrden. Det er nemt t se, t midtpunktsreglen hr præcisionsgrd (mn kn kun være sikker på t få det rigtige resultt, hvis integrnten er et nultegrdspolynomium) og t trpezreglen hr præcisionsgrd 1 (trpezreglen giver det rigtige integrl for lle førstegrdspolynomier, men ikke for lle ndengrdspolynomier). Det er oplgt t gætte på, t Simpsons regel hr præcisionsgrd, og det er d også sndt, t ndengrdspolynomier integreres korrekt med Simpsons regel. Ld nu f være et tredjegrdspolynomium. Vi kn skrive f som f = p + g, hvor p er ndengrdsinterpoltionspolynomiet gennem f( ), f( + h) og f(x i) mens g er tredjegrdspolynomiet gennem et vilkårligt fjerde punkt x (, x i ), x + h, fr Newtons divideret differens-metode, g (x) = f[, + h, x i, x ](x ) ( x ( + h )) (x x i ). Det er nu nemt t vise, t x i g (x) dx = unset hvd f[, + h, x i, x ] er prøv evt. selv t betrgte det konkrete tilfælde = 1, x i = 1 og h =. Dette betyder, t også tredjegrdspolynomier ltid integreres korrekt med Simpsons regel, og præcisionsgrden er derfor. At Simpsons regel vh. tre målepunkter pr. delintervl og ndengrdspolynomiumsinterpoltion kn give korrekt integrtion f tredjegrdspolynomier, hænger i høj grd på, hvor de tre målepunkter er plceret i delintervllet i forhold til hinnden. Vi vil om lidt se på en metode kldet Guss-kvdrtur, som netop går ud på t optimere disse forhold. Inden d skl vi dog lige vende tilbge til et hængeprti. 1. Fejlvurderinger i Simpsons regel Ligesom præcisionsgrden i Simpsons regel ikke er men, er fejlen ved brug f Simpsons regel ikke proportionl med f (x I ) for et pssende vlg f x I [, b], men derimod ε S (b ) n = 88 h4 f (4) (x I ), () hvor n et indikerer ntllet f delintervller, som på højresiden er indkodet i værdien f h (husk igen bogens lidt nderledes nottion). Vi kn igen finde øvre og nedre grænser for fejlen ved t finde mksimum og minimum f f (4) på I = [, b]. Skulle f (4) f en eller nden grund være en problemtisk størrelse, kn mn, hvis n er et lige tl, benytte sig f følgende estimt: ε S n 1 1 (J n S J S n ),
hvor Jn S = h ( f(x ) + f(x n ) ) + h n 1 f(x i ) + h f(x i h) er pproksimtionen f integrlet fr Simpsons regel med n delintervller. Simpsons regel er endvidere numerisk stbil med hensyn til frunding i den forstnd, t frundingsfejl i værdierne f(x ), f(x i ) og f(x i h ), i = 1,..., n er begrænset f (b )u, hvor u er frundingsenheden, og fuldstændig ufhængig f n. 1. Guss-kvdrtur Guss-kvdrtur er som nævnt en metode, som går ud på t udnytte t præcisionsgrden fhænger f plceringen f målepunkterne. Mere specifikt foretges pproksimtionen ved f(x) dx b ( b w i f z i + + b ), for nogle særlige vægte w i og punkter z i. For n mellem og kn vægtene og punkterne flæses i følgende tbel. Antl målepunkter n punkter z i vægte w i præcisionsgrd N ± 1 4 ± ± ± + 8 9 9 18+ 18 ± 1 ± 1 + 1 1 18 +1 9 1 9 9 Det ses, t præcisionsgrden i ovenstående tbel er n 1. Dette gælder også for n > og det kn vises, t det er den højst opnåelige præcisionsgrd. Det er klrt, t vi kun kn vente, t Gusskvdrtur giver gode resultter, såfremt den pågældende integrnt ligner et polynomium. 1.8 Adptiv numerisk integrtion En metode, som tger mere hensyn til den konkrete funktion, er dptiv numerisk integrtion, som er en slgs overbygning på metoder, der som trpezreglen og Simpsons regel bserer sig på 4
inddeling i delintervller og som tillder estimtion f fejlen. Kernen i metoden er ltså eksempelvis Simpsons regel. Antg, t vi vil integrere en funktion f på intervllet I = [, b] og t vi ccepterer én eller nden grd f fejl, f.eks. t tolerncen T > skl være større end den bsolutte fejl ε. Vi lder J n ([c, d]) og ε n ([c, d]) betegne hhv. pproksimtionen f integrlet og fejlen på pproksimtionen over [c, d] når [c, d] er inddelt i n delintervller. Hvis vi eksempelvis nvender Simpsons regel på f over intervllet [c, d] med n = 1 og n =, så kn vi estimere ε ([c, d]) = ε S ([c, d]). Hvis den smlede bsolutte fejl skl være mindre end T, så er det tilstrækkeligt, t fejlen på hvert delintervl opfylder ε ([c, d]) b d c < T eller ε ([c, d]) < d c b T. Hvis et estimt f ε ([c, d]) er større end d c T, kn vi forbedre vores pproksimtion f integrlet b på dette delintervl ved t udregne J 4 ([c, d]) = J ([c, c+d]) + J ([ c+d, d]). Det skulle være klrt, t denne process kn fortsættes. Når vi skl udregne et integrl, begynder vi ltså med c = og d = b, udregner J 1 ([c, d]) og J ([c, d]), estimerer ε ([c, d]), og ersttter efter behov (dvs. hvis ε ([c, d]) d c T ) hhv. c og d b med c+d og gentger processen med disse vlg f c og d. Forhåbentlig opnås efter et endeligt ntl skridt med pssende hlveringer f delintervllerne en tilps fin inddeling, til t ε ([c, d]) < d ct b for lle relevnte pr f c og d, og pproksimtionen f integrlet med en tolernce mindre end T er så summen f J ([c, d]) erne for disse pr. 1.9 Eksempler Midtpunktsreglen skulle gerne være ligetil, og d den smtidig generelt er noget mindre præcis end trpezreglen, som kun kræver 1 ekstr målepunkt for smme inddeling, vil vi ikke se nærmere på midtpunktsreglen. I stedet vil vi gennemgå et eksempel på nvendelsen f trpezreglen, Simpsons regel og Guss-kvdrtur. Eksempel 1.1 (Exmple 1,,, 4 og i bogen side 8, 8, 8, 81 og 84). Vi vil numerisk beregne integrlet 1 e x dx og vurdere fejlen. Vi begynder med trpezreglen. Skriv f(x) = e x og ntg, t vi kender f(x i ) = e x i for xi = i, i =,..., 1. Vi kn d nvende trpezreglen med 1 n = 1 hvilket svrer til h =.1 og inddelingen [, 1] = 1 [, x i ]. Vi får d vh. () 1 e x dx J t 1 = h ( f(x ) + f(x n ) ) + h 9 f(x i ) =.1 1.89 +.1.81 =.411, hvor J t 1 indikerer, t det er trpezreglen med n = 1. Hvis vi i smme ånd skriver ε t 1 for fejlen, så kn vi finde øvre og nedre grænser for fejlen vh. (): ε t 1 = 1 1.1 f (x I ) hvor x I [, 1], så 1 1 mx x [,1] f (x) ε t 1 1 1 min x [,1] f (x).
D f (x) = (x 1)e x og f (x) for x [, 1] er så mx f (x) = f (1) =.9 og min f (x) = f () =, x [,1] x [,1] Vi kn også estimere ε t 1 vh. (4): så.14 ε t 1.1. J t =. 1.89 +..9 =.448 ε t 1 1 (J t 1 J t ) =.1411. Denne fejl kn vises t være korrekt med to betydende cifre: ε t 1 =.1.... Dette vr trpezreglen. Men hvd med Simpsons regel? Med de smme kendte målepunkter x i kn vi kun klre n =, idet Simpsons regel også bruger et målepunkt midtvejs i delintervllerne. Vi får derfor h =. og:. 1.89 +..4 +..91 =.48. Ud fr ovenstående er det klrt, t fejlen her er mindre, selvom vi tog udgngspunkt i præcis de smme tl. Benytter vi () til t vurdere fejlen ε S fås. = 1 88.4 mx x [,1] f (4) (x) ε S 1 88.4 min x [,1] f (4) (x) =.. D n = er ulige, kn vi ikke benytte ε S n 1 (J 1 n J n ) til t estimere fejlen. Til gengæld kunne vi bruge () til t finde n, så vi eksempelvis hr rigtige cifre efter kommet ved t indsætte h = b ε S n b 88 ( b n ) 4 mx x [,b] f (4) (x) = 1 88n 4 1 1, og dermed n = 1, idet vi bliver nødt til t runde op. Hvis f (4) vrierer meget på intervllet [, b] kn denne vurdering dog være lt for streng, forstået på den måde, t mn kunne klre sig med et mindre n. Til sidst vil vi pproksimere integrlet vh. Guss-kvdrtur. Dette er dog ikke problemfrit, d vi nu ikke længere kn bruge vores llerede kendte x i er som målepunkter. Vi dispenserer for ntgelsen om, t vi kun kender disse, og ntger i stedet, t vi selv må bestemme, hvor vi evluerer funktionen. Hvis vi vælger n =, så skl vi ltså kende f( 1), f( 1 (1 /) ) og f ( 1 (1 + /) ) : 1 e x dx 1 ( 9 f( 1 (1 )) + 8 9 f(1) + 9 f( 1 (1 ))) =.481. De få målepunkter tget i betrgtning, er der her tle om en ret imponerende præcision: fejlen er.1. Hvde vi i Simpsons regel forsøgt os med n =, hvde vi fået J S =.418, og trpezreglen ville hve været endnu værre. n :
Eksempel 1. (Exmple i bogen side 8). Vi vil nu numerisk integrere f(x) = 1 4 πx4 cos( 1 πx) fr 4 til 1 vh. dptiv integrtion og Simpsons regel og en tolernce på T =.. Først udregnes J 1 ([, ]) =.448 og J ([, ]) = J 1 ([, 1]) + J 1 ([1, ]) =.194 + 1.19 = 1.94. Vi kn så estimere fejlen ε ([, ]) 1 (1.94.448) =.1 1.. Altså skl vi splitte [, ] i [, 1 ] = [, 1] og [, ] = [1, ]. Vi hr så J 1([, 1]) =.194 og J 1 ([1, ]) = 1.19 og finder J ([, 1]) = J 1 ([, 1]) + J 1([ 1, 1]) =.11 og J ([1, ]) = J 1 ([1, ]) + J 1([, ]) =.81 +.81 = 1.1. Vi kn nu estimere ε ([, 1]) 1 (J 1 ([, 1]) J 1 ([, 1])) =.1 < 1., så [, 1] mener vi ltså t hve pproksimeret tilstrækkeligt godt, mens ε ([1, ]) 1 1 (J ([1, ]) J 1 ([1, ])) =.18 1.. Vi splitter derfor [1, ] i [1, ] og [, ]. Så beregnes J ([1, ]) =.889 og J ([, ]) =.9 smt ε ([1, ]) =.48 < 1. og ε ([, ]) =.8 <. og vi er ltså tilfredse med lle delintervller. Vi lægger smmen og får 1 4 πx4 cos( 1πx) dx J 4 ([, 1]) + J ([1, ]) + J ([ ]) =.11 +.889 +.9 = 1.9. 1.1 Numerisk differentition Vi hr llerede i forbindelse med finite difference-metoden set på forskellige numeriske pproksimtioner f differentilkvotienter vh. differenskvotienter. Problemet med differentilkvotienter er, t de er defineret som en grænseværdi f en differenskvotient, hvor både tæller og nævner går mod. De er derfor ret følsomme overfor upræcisheder, idet deres værdi er forholdet mellem hstigheden, hvormed tæller og nævner går mod nul. Alterntivt til differenskvotienterne kn differentilkvotienten pproksimeres ved t pproksimere den pågældende funktion f med et polynomium p n vh. metoderne fr sidste lektion og bruge følgende: f (x) p n(x). Hvis n = og under ntgelsen x 1 x = x x 1 = h giver dette: f 1 h ( f + 4f 1 f ), f 1 1 h ( f + f ) f 1 h (f 4f 1 + f ) hvor f i = f (x i ) og f i = f(x i ). Med flere målepunkter stiger grden f polynomiet, og eksempelvis fås f = 1 1h (f 8f 1 + 8f f 4 ), igen under ntgelsen x i = h, f i = f(x i ) og f i = f (x i ).