Lbortion i mtemtik Envribelnlys Per-Anders Boo Institutionen för mtemtik och mtemtisk sttistik Umeå universitet Jnuri Regler och llmän informtion om lbortionen I denn lbortion finns uppgifter som skll löss och redoviss för den som som hndleder lbortionen. Uppgiftern skll löss individuellt och redoviss vid dtor i lbortionsslen. Skick inte in lösningr till hndledre eller lärre vi e-post. Före Lbortionstillfället skll du h läst igenom denn lbortionsinstruktion och gjort det som står under rubriken Att gör innn dtorlbortionen i vsnitt 7 på sidn. Om du vill pröv tt gör uppgiftern inför inför lbortionstillfället så kn du ntingen gå till något v vår dtorlb, under förutsättning tt det inte är bokt, eller test progrmmet Octve. Progrmmet Octve är s.k. fri progrmvr och är mycket likt Mtlb vd gäller kommndon, funktionssätt, utseende m.m.. Progrmmet finns på länken http:\\www.octve.org. Om du vill läs mer om Mtlb så kn du gå till http:\\www.mthworks.com. Där finns bl.. diskussionsgrupper och ett filrkiv för Mtlb. Det finns också en introduktion till Mtlb på institutionens hemsid http:\\www.mth.umu.se. För den som hr giltigt skäl tt inte närvr vid lbortionstillfället, exempelvis på grund v sjukdom, eller vrit närvrnde men inte blivit godkänd, finns det särskild s.k. resttillfällen bokde då mn kn redovis lbortionen. Vid dess resttillfällen kn mn också redovis lbortioner som mn inte är klr med från ndr mtemtikkurser på grundläggnde nivå. Redovisningen sker då i slrn MA och MA. Först resttillfället under vårterminen är: 8 jnuri kl. -8. För övrig resttillfällen se institutionens hemsid. Numerisk integrtion Det vnlig sättet tt beräkn en integrl till f(x) och sedn nvänd integrlklkylens huvudsts som säger tt f(x) dx är tt försök hitt en primitiv funktion F (x) f(x) dx = F (b) F (). Det finns fler skäl till tt denn metod inte lltid är den bäst eller ens möjlig. Det kn vr så tt det visserligen går tt beräkn en primitiv funktion men tt det är svårt och kräver både listighet och ett ntl knep, t.ex. ln x x dx går tt beräkn och hr det exkt värdet + x
( ) ln + / / ln () ( ln + ) + men uträkningen är inte så enkel. Integrlen x e 9 x sin 7 x dx går tt beräkn, och det är inte så svårt, men det är lldeles för jobbigt. Det finns ndr integrler t.ex. π π sin x x dx, x dx och ln x e x dx där det bsolut inte går tt hitt någon primitiv funktion uttryckt med hjälp v de elementär funktioner som vi känner till. En vnlig sitution i nturvetenskplig och teknisk tillämpningr är tt funktionen f(x) inte är känd men tt mn hr ett ntl mätvärden som gör tt mn känner funktionens värde (oft inom en viss felmrginl) i ett ändligt ntl indelningspunkter x, x,..., x n. Mn känner lltså värden y = f(x ), y = f(x )..., y n = f(x n ) och med hjälp v dem vill mn nge ett, åtminstone ungefärligt, värde på integrlen f(x) dx. För tt kunn uppsktt hur stort felet är i det värde x n mn x får frm på integrlen är det nödvändigt tt vet lite mer om funktionen f(x).....................!!.. Fig. Funktion given i punkter.!!.. Fig b. Knske denn funktion!!.. Fig c. eller denn!!.. Fig d. eller till och med denn. Figur : I figuren ovn är de givn mätvärden ritde i ett stolpdigrm i Fig. Egentligen knske dett är det end vi vet om funktionen f men oft vet vi mer. I Fig b. är punktern i Fig. förbundn med en slät kurv d.v.s. funktionen f hr kontinuerlig derivtor v ll ordningr. I Fig c. är punktern smmnbundn med en styckvis linjär kurv d.v.s. på vrje delintervll är funktionen f linjär. Slutligen viss i Fig c. en funktion som hr rätt funktionsvärden enligt Fig. men som br är styckvis konstnt. Den är lltså inte ens säkert kontinuerlig i ll punkter. För tt gör en feluppskttning för en pproximtiv beräkning v en integrl behöver mn vet något om hur mycket funktionen kn ändr värde melln mätpunktern x, x,..., x n. Mn kn oftst få en feluppskttning på formen felet < Ch k där h = mx(x i+ x i ) är den störst intervllängden i indelningen d.v.s. det som brukr klls indelningens finhet. Tlet k nger felets storleksordning ju högre värde på k desto bättre pproximtionsmetod. C slutligen är en konstnt som beror v storleken på f (k) (x) d.v.s. derivtn v ordning k, jämför feluppskttningen vid Tylorpproximtion. I den här dtorlbortionen kommer inte så mycket tid tt ägns åt tt gör teortisk feluppskttningr. Sådn sker lär mn sig mer om när mn läser kurser i numerisk nlys. Här kommer det mest tt hndl om tt beknt sig med någr vnlig numerisk integrtionsmetoder och skriv Mtlbprogrm för dess metoder smt tillämp dem på någr exempel och rent experimentellt undersök felets storleksordning. För den som vill lär sig mer om de metoder som ts upp i den här lbortionen och även ndr metoder för pproximtiv beräkning v integrler hänviss till vsnitten 6.6, 6.7 och 6.8 i Adms: Clculus Complete Course. i
Metoden med Riemnnsumm Om = x < x < < x n är indelningen v ett intervll [, b] så får vi en Riemnnsumm till n f(x) dx genom f (ξ k ) x k där ξ k är en vld punkt i intervllet [x k, x k+ ] och x k = x k+ x k k= längden v intervllet. I följnde Mtlbprogrm nvänds ξ k = x k i intervllet [x k, x k+ ]. Jämför Fig d) på sidn. Kopier in följnde progrm i en M-fil och spr den. function integrl=riemnn(funk,x) formt long % Vi vill h fler decimler en br i utskriften % riemnn(funk,x) der x=indelningspunktern, funk=den funktion % mn vill integrer. Som funktionsverden veljs verden i venstr % endpunktern i delintervlen N=size(x,); %N=ntlet element i x y=funk(x); % y=funnktionsverden som svrr mot x-verden integrl=; %nollstellning v integrl % nu berekns riemnnsummn och h=intervllengden for i=:n- h=x(i+)-x(i); integrl=integrl+h*y(i); end Börj med tt i Commnd Window skriv >> help riemnn så får du upp kommentren i progrmmet som beskriver funktionen riemnn. Test sedn progrmmet t.ex. med f(x) = sin x integrerd över intervllet [, π/] genom tt skriv >> x=:.:pi/; >> riemnn(@sin,x) här är x en list med x värden som utgör indelningspunktern. Tlet. som står melln kolontecknen i ngivelsen v x är steglängden, d.v.s. vståndet melln indelningspunktern eller det som beteckndes med h i felformeln felet < Ch k ovn. Övning Beräkn först det exkt värdet på I = π/ sin x dx. Beräkn sedn pproximtiv värden Ĩ med funktionen riemnn och h =.,.,. och.. Beräkn felen I Ĩ. Uppsktt sedn metodens ordning k genom tt beräkn kvoten melln successiv värden på felen. Trpetsmetoden I figur hr funktionen f(x) pproximerts linjärt melln punktern (x i, y i ) och (x i+, y i+ ). Aren under kurvn pproximers med ren A i v prllelltrpetset ABCD. Vi hr tt A i = (y i + y i+ )(x i+ x i ) = (y i + y i+ ) x i n Approximtionen v ren under kurvn blir A = A i Vi väljer tt del in integrtionsintervllet i n lik lång delintervll, d.v.s. x i = b n = h. Då får vi A = h n (y i + y i+ ). Följnde funktion beräknr i= integrlen med trpetsmetoden. i= y(i+) y(i) C D A B x(i) x(i+) Figur : Linjär pproximtion
function integrl=trpets(funktion,,b,n) formt long % Vi vill h fler decimler en br i utskriften % trpets(funktion,,b,n) der funktion=den funktion som skll integrers % och b er integrtionsintervllets grenser och n är ntlet % indelningspunkter % Metoden som nvänds är trpetsmetoden h=(b-)/(n-);%intervllengden berekns x=linspce(,b,n);%x innehller de n indelningspunktern y=funktion(x); % y=funnktionsverden som svrr mot x-verden Summy=; % nollstellning v summn v y-verden for i=:n- Summy=Summy+(y(i)+y(i+));% y-verden summers enligt trpetsmetoden end integrl=h/*summy;% slutligen multiplicers med h/ enligt formeln Simpsons metod Nu skll vi gå vidre och pproximer funktionen med ndrgrdspolynom. Vi ntr tt integrtionsintervllet är indelt i ett jämnt ntl delintervll. Delintervllen prr vi ihop två och två. Genom de tre punktern (x i, y i ), (x i+, y i+ ) och (x i+, y i+ ) kn vi lägg en ndrgrdskurv given v y = p(x) där polynomet p(x) = y i (x x i+ )(x x i+) ) (x i x i+ )(x i x i+ ) + (x x i )(x x i+) ) +y i+ (x i+ x i )(x i+ x i+ ) + y (x x i )(x x i+) ) i+ (x i+ x i )(x i+ x i+ ) Det är lätt tt kontroller tt p(x i ) = y i, p(x i+ ) = y i+ och p(x i+ ) = y i+. Dessutom ser mn tt p(x) blir ett polynom v grd. Det är lätt tt se tt mn på smm sätt skulle kunn konstruer ett n-te grds polynom genom n + givn punkter. Mn säger tt ett sådnt polynom interpolerr till de n + punktern och polynomen konstruerde på dett sätt brukr klls Lgrnges interpoltionspolynom. I figur är interpoltionspolynomet v grd inritt tillsmmns med den fetre ritde kurvn, y = f(x), som vi vill bestämm ren under för tt få en pproximtion v y(i+) y(i) y(i+) x(i) x(i+) x(i+) Figur : Andrgrdspproximtion f(x) dx. Vi ntr tt delintervllen ll hr längden h vilket innebär tt (x i x i+ ) = h, (x i x i+ ) = h, (x i+ x i ) = h o.s.v. Formeln för p(x) förenkls då till x i+ p(x) = h [ yi (x x i+ )(x x i+) ) y i+ (x x i )(x x i+) ) + y i+ (x x i )(x x i+ )) ] Vi beräknr integrlen under kurvn y = p(x) på intervllet [x i, x i+ ] och får x i p(x) dx = = substitution h x x i+ = u, x = u + x i+, dx = du x i+ x i [ yi (x x i+ )(x x i+) ) y i+ (x x i )(x x i+) ) + y i+ (x x i )(x x i+ )) ] dx = = h h [y i u(u h) y i+ (u + h)(u h) + y i+ u(u + h)] du. Nu nvänder vi tt h integrlen v udd termer blir noll så tt integrlen förenkls till:
h h ] [ (yi y i+ + y i+ )u + h ] y i+ du = [(y h i y i+ + y i+ ) h + h y i+ = = h [y i y i+ + y i+ + 6y i+ ] = h [y i + y i+ + y i+ ]. Vi kn nu ställ upp följnde formel för den ny pproximtionen v integrlen. f(x) dx h [(y + y + y ) + (y + y + y ) + + (y n + y n + y n )] = = h n i= udd i (y i + y i+ + y i+ ) (Här förutsätts tt n är ett udd tl). Den formel vi hr härlett här ovn brukr klls Simpsons formel. 6 Att beräkn omkretsen v en ellips I en v lbortionsuppgiftern gäller det tt beräkn omloppsbnns omkrets för plneten Merkurius. Plneten rör sig i en elliptisk bn d.v.s. en bn på formen x + y =. I Adms: Clculus, b exempel på sidn 7 [sid. 8 i uppl.6], beräkns omkretsen v en ellips. π/ Mn härleder formeln s = ε sin t dt. b Här är ε ellipsens excentricitet som ges v formeln ε = c = b. Ellipsens storxel är, lillxeln är b och c är vståndet från centrum till fokus, se figur. Om ellipsen är Merkurius bn så ligger Solen i den mrkerde fokusen. I uppgiften är störst och minst vståndet till Solen ngivn. Med hjälp v de vstånden kn excentriciteten ε liksom och b beräkns. Det går emellertid inte tt exkt beräkn integrlen som ger s utn det kn br görs numeriskt med t.ex. någon v metodern ovn. Se även fig. 8.6 sid.6 [7] i Adms; Clculus. 7 Att gör innn dtorlbortionen. Läs igenom denn lbortionsinstruktion. c b Figur : Ellipsen x + y b =. Studer de ställen i Adms; Clculus som det hänviss till i vsnitt 6 ovn.. Studer Simpsons metod enligt vsnitt ovn och skriv en Mtlbkod, enligt lbortiosuppgift, för metoden så tt du hr den färdig när du kommer till dtorlbbet.. Gör det som står i vsnitt på sidn och tänk igenom hur du skll gör övningen på sidn. Gör dett när du kommer till dtorlbbet, innn du börjr med lbortionsuppgiftern. OBS! Övningen behöver du inte redovis.. Använd dt i lbortionsuppgift till tt beräkn excentriciteten ε för Merkurius bn.
8 Lbortionsuppgifter. Undersök storleksordningen k för felet, då mn nvänder trpetsmetoden, på smm sätt som i övningen ovn för metoden med Riemnnsumm på sidn.. Skp en Mtlb funktion, function integrl=simpson(funktion,,b,n) genom tt modifier Mtlbkoden på sidn för trpetsmetoden. Tänk på tt n är ntlet indelningspunkter och tt lltså n är ntlet delintervll så n måste vr ett udd tl för tt Simpsons formel skll funger, Lägg gärn in ett felmeddelnde med kommndot error så tt progrmmet ger ett meddelnde och stoppr om mn försöker kör det med ett jämnt tl som n. Ett tips är tt i funktionen utnyttj en for-loop med steglängd enligt följnde modell for i=::n stser end Inmtning v funktion i simpson sker ntingen genom tt mn skriver t.ex. >> simpson(@myfun,,b,n) där myfun.m är en funktion som finns kodd i en m-fil eller möjligen är en Mtlb-funktion t.ex. sin. Om mn vill mt in en funktion direkt, utn tt först skp en m-fil så kn mn nvänd en s.k. nonym funktion och t.ex. skriv >> simpson(@(t)./(t+)+t.^,,,) som beräknr funktionen simpson för ( ) t + + t dt där integrtionsintervllet [, ] är indelt i delintervll med längden,. OBS! Det är viktigt tt nvänd punkterde räkneopertioner i definitionern v funktionern så tt de kn ccepter tt x är en list med värden när mn skriver f(x). ) Beräkn ett värde på integrlen exkt värdet ln. dx x med Simpsons metod och jämför med det b) Undersök storleksordningen k för felet då mn nvänder Simpsons metod.. Angående plneten Merkurius bn vet vi, enligt Ntionlencyclopedin, tt den är en ellips och tt minst vståndet till solen är, AU och tt störst vståndet är,7 AU, där AU (stronomicl unit ) = 9, 6 9 m = Jordens medelvstånd till Solen. Vi vet också tt Merkurius omloppstid runt Solen är 87, 97 dygn. Beräkn längden (km) v Merkurius bn runt Solen och plnetens medelhstighet (km/h). 6