3. OBLIGATORISKE OPGAVE

Relaterede dokumenter
Numeriske metoder 2011: Adams-Bashforth-Moulton Predictor-Corrector method

Matematisk modellering og numeriske metoder. Lektion 17

lineær regression er en metode man bruger for at finde den mindste afstand mellem bestemte punkter ved at bruge denne formel: a= n i=1 i=1

Eulers metode. Tom Pedersen //Palle Andersen. Aalborg University. Eulers metode p. 1/2

Repetition. Diskrete stokastiske variable. Kontinuerte stokastiske variable

Numerisk løsning af differentialligninger

Landmålingens fejlteori - Lektion 2. Sandsynlighedsintervaller Estimation af µ Konfidensinterval for µ. Definition: Normalfordelingen

Matematik og IT Anton Vilhelm Wiinstedt Clausen 3.b Studieretningsprojekt Numeriske metoder Frederiksberg Tekniske gymnasium 13/

Matematisk modellering og numeriske metoder. Overskrifter

Introduktion til Matlab Matrix Operationer og Plots

Oversigt [S] 5.2, 5.4, 12.1

Noter til Computerstøttet Beregning Taylors formel

Numeriske metoder - til løsning af differentialligninger - fra borgeleo.dk

Løsning til eksaminen d. 14. december 2009

Integralregning ( 23-27)

Integralregning med TI-Interactive! Stamfunktioner Integraler Arealer Jan Leffers (2005)

Matematisk modellering og numeriske metoder. Lektion 19

Løsning eksamen d. 15. december 2008

1/41. 2/41 Landmålingens fejlteori - Lektion 1 - Kontinuerte stokastiske variable

Oversigt [S] 5.2, 5.4, 12.1

Logistisk Regression. Repetition Fortolkning af odds Test i logistisk regression

Landmålingens fejlteori Lektion 1 Det matematiske fundament Kontinuerte stokastiske variable

gudmandsen.net 1 Parablen 1.1 Grundlæggende forhold y = ax 2 bx c eksempelvis: y = 2x 2 2x 4 y = a x 2 b x 1 c x 0 da x 1 = x og x 0 = 1

Note om Laplace-transformationen

Løsninger til eksamensopgaver på A-niveau 2019 ny ordning

Pointen med Differentiation

Bilag 1 til opgave

Opgaver til Maple kursus 2012

Matematisk modellering og numeriske metoder. Lektion 15

Fagets IT Introduktion til MATLAB

Definition: Normalfordelingen. siges at være normalfordelt med middelværdi µ og varians σ 2, hvor µ og σ er reelle tal og σ > 0.

En Introduktion til SAS. Kapitel 5.

Koblede differentialligninger.

Brug af TI-83. Løsning af uligheder: Andre ikke simple uligheder løses ved følgende metode - skitseret ved et eksempel : Løs uligheden

Landmålingens fejlteori - Lektion 2 - Transformation af stokastiske variable

Matematisk modellering og numeriske metoder

Uge 10 Teoretisk Statistik 1. marts 2004

Notesæt - Eksempler på polær integration

Introduktion til Laplace transformen (Noter skrevet af Nikolaj Hess-Nielsen sidst revideret marts 2013)

Nøgleord og begreber Eksistens og entydighed Retningsfelt Eulers metode Hastighedsfelt Stabilitet

Hvis du har vinduer abne fra en tidligere session, sa luk dem ned { vi vil have

Forelæsning 3: Kapitel 5: Kontinuerte fordelinger

Logistisk Regression. Repetition Fortolkning af odds Test i logistisk regression

MM502+4 forelæsningsslides. uge 6, 2009

Evaluering af Soltimer

Oversigt [S] 7.1, 7.2, 7.3, 7.4, 7.5

Kursus 02323: Introducerende Statistik. Forelæsning 12: Forsøgsplanlægning. Peder Bacher

Lineære differentialligningers karakter og lineære 1. ordens differentialligninger

Arealer som summer Numerisk integration

Differentialligninger. Ib Michelsen

Heisenbergs usikkerhedsrelationer. Abstrakt. Hvorfor? Funktionsrum. Nils Byrial Andersen Institut for Matematik. Matematiklærerdag 2013

Der er facit på side 7 i dokumentet. Til opgaver mærket med # er der vink eller kommentarer på side 6.

Besvarelser til Calculus Ordinær eksamen - Forår - 6. Juni 2016

Statistik Lektion 3. Simultan fordelte stokastiske variable Kontinuerte stokastiske variable Normalfordelingen

Grafværktøjer til GeoMeter Grafværktøjer Hjælp Grafværktøjer.gsp Grafværktøjer

Mere om differentiabilitet

Normalfordelingen og Stikprøvefordelinger

Den homogene ligning. Vi betragter den n te ordens, homogene, lineære differentialligning. d n y dt n. an 1 + any = 0 (1.2) dt. + a1 d n 1 y dt n 1

Eksamen i Matematik F2 d. 19. juni Opgave 2. Svar. Korte svar (ikke fuldstændige)

Løsning til eksamen d.27 Maj 2010

Højere Teknisk Eksamen maj Matematik A. Forberedelsesmateriale til 5 timers skriftlig prøve NY ORDNING. Undervisningsministeriet

Landmålingens fejlteori - Lektion 3. Estimation af σ Dobbeltmålinger Geometrisk nivellement Linearisering

Besvarelser til Calculus Ordinær Eksamen - 5. Januar 2018

Matematisk modellering og numeriske metoder. Lektion 8

Besvarelser til Calculus Ordinær Eksamen Juni 2018

Note til styrkefunktionen

Mujtaba og Farid Integralregning

Lodret belastet muret væg efter EC6

Elementær sandsynlighedsregning

Kortfattet svar til eksamen i Matematik F2 d. 21. juni 2017

Øvelse 1 a) Voksende b) Voksende c) Konstant d) Aftagende. Øvelse 2 a) f aftagende i f voksende i b) f aftagende i

Københavns Universitet, Det naturvidenskabelige Fakultet. Afleveringsopgave 1

Matematisk modellering og numeriske metoder. Lektion 13

Naturvidenskabelig Bacheloruddannelse Forår 2006 Matematisk Modellering 1 Side 1

Manual til TI-89. Af: Martin Kyhl og Andreas Kristansen. Med denne i hånden til eksamen burde de fleste opgaver kunne løses på få minutter.

Oversigt. Course 02402/02323 Introducerende Statistik. Forelæsning 3: Kontinuerte fordelinger. Per Bruun Brockhoff

Sætning (Kædereglen) For f(u), u = g(x) differentiable er den sammensatte funktion F = f g differentiabel med

π er irrationel Frank Nasser 10. december 2011

Reaktionskinetik - 1 Baggrund. lineære og ikke-lineære differentialligninger. Køreplan

Tema. Dagens tema: Indfør centrale statistiske begreber.

Læringsprogram. Numeriske metoder. Matematik A Programmering C Studieområdet. Roskilde Tekniske Gymnasium Klasse 3.4

Transkript:

3. OBLIGATORISKE OPGAVE Kursus 02603, Introduktion til Numeriske Algoritmer Danmarks Tekniske Universitet Jonas Pedersen s103228, Camilla Terkildsen s103262, Tobias Ritschel s103275

5. november 2011

Indholdsfortegnelse 0.1 Opgave 1.............................. 2 0.1.1 midtpunkts-kvadratur.................. 2 0.1.2 trapez-kvadratur..................... 2 0.1.3 simpson-kvadratur.................... 2 0.1.4 Test af kvadratur-metoderne............... 3 0.1.5 1. integral......................... 3 0.1.6 2. integral......................... 6 0.1.7 3. integral......................... 9 0.1.8 Planck-integralet..................... 13 0.2 Opgave 2.............................. 18 0.3 Opgave 3.............................. 21 0.3.1 Eulers metode....................... 22 0.3.2 Runge-Kutta....................... 22 0.3.3 Runge Kutta w. Adaptive Step Length......... 25 0.4 Bilag................................ 29 0.4.1 plotintegral.m....................... 29 0.4.2 plotnormal.m....................... 30 0.4.3 testfractile.m....................... 31 0.4.4 plotbrusserlator.m.................... 32 0.4.5 plotadaptrk45....................... 32 1

0.1 Opgave 1 I denne opgave implementeres 3 metoder til numerisk udregning af integraler. Disse er midtpunkts-kvadratur, trapez-kvadratur og simpson-kvadratur. De afprøves herefter på 4 integraler. Nogle af integralerne er problematiske og der behøves variabel-transformationer for at kunne udregne integralet. 0.1.1 midtpunkts-kvadratur 1 function [M,h,nf] = midpoint (fun,a,b,m) 2 3 h = (b-a)/m; % steplength 4 x = a + (0.5: m)*h; % the midpoints 5 M = sum ( feval (fun,t))*h % the integral sum 6 nf = m; % number of function evaluations 0.1.2 trapez-kvadratur 1 function [T,h,nf] = trapez (fun,a,b,m) 2 3 h = (b-a)/m; % steplength 4 T = 0.5*( feval (fun,a) + feval (fun,b)); % function...evaluations of end - points 5 x = a + (1:(m -1) )*h; % the middle - interval points 6 T = (T + sum ( feval (fun,t)))*h; % the integral sum 7 nf = m +1; % number of function evaluations 0.1.3 simpson-kvadratur 1 function [S,h,nf] = simpson (fun,a,b,m) 2 3 h = (b-a)/m; % steplength 2 af 32

4 x = linspace (a,b,m +1) ; % interval points 5 y = feval ( fun, x) % function evaluations 6 S = h /3*( y (1) + y(m +1) + 4* sum (y (2:2: m)) + 2* sum (y (3:2:m...-1) )); % the integral sum 7 nf = 2* m +1; % number of function evaluations 0.1.4 Test af kvadratur-metoderne. 0.1.5 1. integral Vi har følgende integral I = 1 0 4 dt = π (1) 1 + t2 På figur 1 er integranden plottet i det relevante interval. Figur 1: plot af integranden i (1) Nu udregnes integralet vha. de tre metoder og med forskellige skridtlængder, h. Skridtlængden varieres ved at variere på parameteren, m som angiver antallet af intervaller som integralet deles op i. m varieres på følgende måde; m = 2 i, i = 0..10, og resultaterne er vist nedenfor. På figur 3 er plottet 3 af 32

den absolutte fejl ved udregninger mod skridtlængden og mod antallet af funktionsevalueringer. m = 1 M = 3.200000 T = 3.000000 S = 2.000000 m = 2 M = 3.162353 T = 3.100000 S = 3.133333 m = 4 M = 3.146801 T = 3.131176 S = 3.141569 m = 8 M = 3.142895 T = 3.138988 S = 3.141593 m = 16 M = 3.141918 T = 3.140942 S = 3.141593 m = 32 M = 3.141674 T = 3.141430 S = 3.141593 m = 64 M = 3.141613 T = 3.141552 S = 3.141593 m = 128 M = 3.141598 T = 3.141582 S = 3.141593 m = 256 M = 3.141594 T = 3.141590 S = 3.141593 m = 512 M = 3.141593 T = 3.141592 S = 3.141593 m = 1024 M = 3.141593 T = 3.141592 S = 3.141593 Figur 2: Integrale af ligning (1) udregnet vha. midpunkts-, trapez- og simpson-kvadratur metoderne Figur 3: Den absolutte fejl på den numeriske udregning af ligning (1) vha. midpunkts-, trapez- og simpson-kvadratur metoderne Det ses at den absolutte fejl er størst ved brug af simpson-metoden når skridtlængden, h = 1, hvilket vil sige at integralet kun deles op i et enkelt interval. Ved alle andre skridtlængder (der kan ikke være tale om skridtlængder 4 af 32

der er større end intervallet) er simpson-metoden mest præcis og den falder når h falder, og der ses en logaritmisk sammenhæng. Faldet fortsætter indtil den absolutte fejl kommer ned omkring maskinnøjagtigheden på ca 10 16, hvorefter den hopper lidt op og ned. Midtpunkts- og trapez-metoden følges ad og ligger meget tæt op ad hinanden. Også disse falder når h falder, og også her er sammenhængen logaritmisk. Den absolutte fejl når ikke ned i nærheden af maskinnøjagtigheden med disse to metoder og så høje værdier af h. Der ses en lignende tendens når man kigger på den absolutte fejl ni forhold til antallet af funktions-evalueringer, blot hvor fejlen falder når antallet af funktionsevalueringer stiger. Dette giver også mening idet, at h er omvendt proportional med m, hvor antallet af funktionsevalueringer er direkte proportional med m. Ved h = 1 bruger simpson-metoden 3 funktions-evalueringer (ca 10 1 2 ) og det ses den absolutte fejl ved simpson-metoden ved dette punkt er en smule større end ved midtpunkts- og trapez-metoden. Herefter falder simpsonmetoden drastisk ned mod maskinnøjagtigheden hvor midtpunkts- og trapezmetoden falder langsommere. Også her er der logaritmisk sammenhæng for alle tre metoder. Alt-i-alt er simpson-metoden langt den bedste (iflg. disse resultater) såfremt at antallet af intervaller er tilstrækkelig stor. Dog vil de tre metoder angiveligt alle have en lige stor absolut fejl på omkring maskinnøjagtigheden, når antallet af funktionsevalueringer bliver stort nok og når skridtlængden samtidig bliver tilstrækkelig lille. Det ses at simpson-metoden skal bruge omkring 10 funktionsevalueringer for at få en nøjagtighed der går ned på sjette decimal (10 6 ) hvor midpunkts- og trapez-metoden skal bruge op imod 300 funktions-evalueringer. Når den adaptive kvadratur-metode bruges, behøves der 58 funktionsevalueringer til at opnå den ønskede præcision, hvilket er flere end med simpson-metoden, men betydeligt færre end med midtpunkts- og trapezmetoden. 5 af 32

0.1.6 2. integral Vi har følgende integral I = 1 0 tdt = 2 3 På figur 4 er integranden plottet i det relevante interval. (2) Figur 4: tv: plot af integranden i (2). th: plot af integranden i (3). Nu udregnes integralet vha. de tre metoder og med forskellige skridtlængder, h. Skridtlængden varieres ved at variere på parameteren, m som angiver antallet af intervaller som integralet deles op i. m varieres på følgende måde; m = 2 i, i = 0..20, og resultaterne er vist på figur 5. På figur 6 er plottet den absolutte fejl ved udregninger mod skridtlængden og mod antallet af funktionsevalueringer. Også ved dette integrale gælder der at simpson-metoden har den største fejl når h = 1, men her følges alle tre metoder ad når h bliver mindre. Ingen af dem når ned omkring maskinnøjagtigheden på trods af at antallet af intervaller bliver 1000 gange større end ved forrige integral. Det ses at trapezmetoden har en lidt højere fejl end de to andre og midtpunkts-metoden har angiveligt den laveste fejl, men forskellen mellem de tre metoder er meget lille. Disse kommentarer kan næsten gentages når det gælder den absolutte fejl i forhold til antallet af funktionsevalueringer. Her er simpson-metoden dog den 6 af 32

m = 1 M = 0.707107 T = 0.500000 S = 0.333333 m = 2 M = 0.683013 T = 0.603553 S = 0.638071 m = 4 M = 0.672977 T = 0.643283 S = 0.656526 m = 8 M = 0.669032 T = 0.658130 S = 0.663079 m = 16 M = 0.667537 T = 0.663581 S = 0.665398 m = 32 M = 0.666983 T = 0.665559 S = 0.666218 m = 64 M = 0.666781 T = 0.666271 S = 0.666508 m = 128 M = 0.666707 T = 0.666526 S = 0.666611 m = 256 M = 0.666681 T = 0.666617 S = 0.666647 m = 512 M = 0.666672 T = 0.666649 S = 0.666660 m = 1024 M = 0.666669 T = 0.666660 S = 0.666664 m = 2048 M = 0.666667 T = 0.666664 S = 0.666666 m = 4096 M = 0.666667 T = 0.666666 S = 0.666666 m = 8192 M = 0.666667 T = 0.666666 S = 0.666667 m = 16384 M = 0.666667 T = 0.666667 S = 0.666667 m = 32768 M = 0.666667 T = 0.666667 S = 0.666667 m = 65536 M = 0.666667 T = 0.666667 S = 0.666667 m = 131072 M = 0.666667 T = 0.666667 S = 0.666667 m = 262144 M = 0.666667 T = 0.666667 S = 0.666667 m = 524288 M = 0.666667 T = 0.666667 S = 0.666667 m = 1048576 M = 0.666667 T = 0.666667 S = 0.666667 Figur 5: Integrale af (2) udregnet vha. midpunkts-, trapez- og simpsonkvadratur metoderne 7 af 32

Figur 6: Den absolutte fejl på den numeriske udregning af (2) vha. midpunkts-, trapez- og simpson-kvadratur metoderne. med højest fejl (en lille anelse højere end trapez-metoden) og midtpunktsmetoden er stadig den bedste. Det tager her mellem 3000 og 10000 funktionsevalueringer at opnå en nøjagtighed på 10 6, hvor det med den adaptive kvadratur-metode kun tager omkring 200. Dette er en enorm forskel i forhold til det forrige integral hvor simpson-metoden var betydeligt bedre end samtlige af de andre metoder. Her er den adaptive kvadratur-metode de andre overlegen. Denne bruger dog også simpson-metoden. 8 af 32

Vi kan nu gå videre til at tage variabeltransformation i brug, for at opnå bedre resultater med simpson-metoden. Variablentransformationen er t = x 3 hvor dt dx = 3 x2. Plottet af denne ses på figur 4. I = 1 0 2 x 2 dx (3) Nu udregnes integralet vha. de tre metoder og med forskellige skridtlængder, h. Skridtlængden varieres ved at variere på parameteren, m som angiver antallet af intervaller som integralet deles op i. m varieres på følgende måde; m = 2 i, i = 0..20, og resultaterne er vist på figur 7. På figur 8 er vist den absolutte fejl plottet mod henholdsvis, skridtlængden h og antallet af funktionsevalueringer. Det ses at simpson-metoden nu har en meget stejlere hældning end de andre metoder. Dog er præcisionen på alle tre metoder højere idet simpson-metoden kommer helt ned omkring maskinnøjagtigheden ved skridtlængden på omkring 10 4 og de to andre metoder når ned på omkring 10 12. Altså har variabeltransformationen øget præcisionen. Tendensen er meget lignende når det kommer til den absolutte fejl mod antallet af funktionsevalueringer. 0.1.7 3. integral Vi har følgende integral I = 1 0 t log(t)dt = 4 9 På figur 9 er integranden plottet i det relevante interval. Før integralet kan udregnes er en variabeltransformation nødvendig idet funktionen har en asymptote i t = 0. (funktionerne trapez.m og simpson.m returnerer i dette tilfælde NaN fordi f eval(0, log(t)) = inf eller N an. Midtpunkts-metoden kan derimod godt klare udregningerne fordi den ikke evaluerer funktionen i t = 0). (4) 9 af 32

m = 1 M = 0.500000 T = 1.000000 S = 0.666667 m = 2 M = 0.625000 T = 0.750000 S = 0.666667 m = 4 M = 0.656250 T = 0.687500 S = 0.666667 m = 8 M = 0.664063 T = 0.671875 S = 0.666667 m = 16 M = 0.666016 T = 0.667969 S = 0.666667 m = 32 M = 0.666504 T = 0.666992 S = 0.666667 m = 64 M = 0.666626 T = 0.666748 S = 0.666667 m = 128 M = 0.666656 T = 0.666687 S = 0.666667 m = 256 M = 0.666664 T = 0.666672 S = 0.666667 m = 512 M = 0.666666 T = 0.666668 S = 0.666667 m = 1024 M = 0.666667 T = 0.666667 S = 0.666667 m = 2048 M = 0.666667 T = 0.666667 S = 0.666667 m = 4096 M = 0.666667 T = 0.666667 S = 0.666667 m = 8192 M = 0.666667 T = 0.666667 S = 0.666667 m = 16384 M = 0.666667 T = 0.666667 S = 0.666667 m = 32768 M = 0.666667 T = 0.666667 S = 0.666667 m = 65536 M = 0.666667 T = 0.666667 S = 0.666667 m = 131072 M = 0.666667 T = 0.666667 S = 0.666667 m = 262144 M = 0.666667 T = 0.666667 S = 0.666667 m = 524288 M = 0.666667 T = 0.666667 S = 0.666667 m = 1048576 M = 0.666667 T = 0.666667 S = 0.666667 Figur 7: Integrale af (3) udregnet vha. midpunkts-, trapez- og simpsonkvadratur metoderne. Variabeltransformationen vælges til; t = e x hvor dt dx = ex. Således fås det nye integral til I = 0 ex x e x dt = 4 9 log(t), t 0. Vi kan givetvis ikke udregne integralet når den ene grænse er uendelig og derfor bruges metoden, at afskære halen. Det vides at (5) 10 af 32

Figur 8: Den absolutte fejl på den numeriske udregning af (3) vha. midpunkts-, trapez- og simpson-kvadratur metoderne. integranden (4) går mod 0 når t går mod - så hvis en tilstrækkelig stor (negativ) værdi vælges skulle det fundne integralet være en god approksimation. Det er dog set at værdien også kan vælges for stor hvor integralet da bliver 0, hvilket kunne skyldes problemer med maskinnøjagtigheden. Den nedre grænse sættes til 10 5 da denne værdi giver små fejl. Iflg. figur 5 kunne værdien givetvis også vælges til -4, men det er set at fejlen her er betydeligt større. Ved værdier højere end 10 5 bliver integralet udregnet til værende 0. 11 af 32

Figur 9: plot af integranden i (4) samt plot af integranden i (5) Nu udregnes integralet vha. de tre metoder og med forskellige skridtlængder, h. Skridtlængden varieres ved at variere på parameteren, m som angiver antallet af intervaller som integralet deles op i. m varieres på følgende måde; m = 2 i, i = 0..24, og resultaterne er vist nedenfor, på figur 10. De store værdier af m er vigtigt fordi intervallet er så stort at det kræver større værdier af m, for at skridtlængden kan blive tilstrækkelig lille (hvis skridtlængden ikke når under 10, kan det være svært at sige noget-somhelst om den metodernes funktionalitet). Det har ikke været muligt at bruge flere værdier af m, pga problemer med MEMORY i MATLAB. På figur 11 er plottet den absolutte fejl ved udregninger mod skridtlængden og mod antallet af funktionsevalueringer. Først og fremmest ses det at alle tre metoder udregner integralet med en abnormt stor fejl på omkring 3, så længde h er større end 10 (hvilket også er en stor skridtlængde. Der er et mindre interval herefter hvor midtpunktsmetoden har den mindste fejl, men når skridtlængden kommer under 1 falder simpsons-metoden drastisk og midtpunkts- og trapez-metoden følges ad som det er set med andre integraler. Ingen af metoderne når ned omkring maskinnøjagtiheden hvilket muligvis kunne være sket hvis det var muligt at arbejde med større værdier af m. Det ses desuden at fejlen på alle tre metoder er enormt høj så længe der er tale om færre end 10 4 funktionsevalueringer. På samme måde som med 12 af 32

m = 4096 M = -0.000003 T = -0.000000 S = -0.000000 m = 8192 M = -0.007872 T = -0.000002 S = -0.000002 m = 16384 M = -0.191525 T = -0.003937 S = -0.005249 m = 32768 M = -0.486928 T = -0.097731 S = -0.128996 m = 65536 M = -0.505584 T = -0.292330 S = -0.357196 m = 131072 M = -0.466071 T = -0.398957 S = -0.434499 m = 262144 M = -0.450337 T = -0.432514 S = -0.443700 m = 524288 M = -0.445949 T = -0.441425 S = -0.444396 m = 1048576 M = -0.444823 T = -0.443687 S = -0.444441 Figur 10: Integrale af (4) udregnet vha. midpunkts-, trapez- og simpsonkvadratur metoderne. Resultater for m mindre end 4000 er ikke medtaget da disse alle er 0 skridtlængden er der lille interval mellem 10 4 og 10 5 funktionsevalueringer hvor midtpunkts-metoden er mest præcis. Herefter falder simpson-metoden hurtigere end de to andre metoder som falder lige hurtigt. 0.1.8 Planck-integralet Vi har følgende integral I = 1 0 t 3 dt (6) e t 1 På figur 12 er integranden i (6) plottet i det relevante interval. Før integralet kan udregnes er en variabeltransformation nødvendig idet funktionen har en asymptote i t = 0 (selvom det bestemt ikke ser sådan ud på figur 12). (funktionerne trapez.m og simpson.m returnerer i dette tilfælde NaN fordi f eval(0, log(t)) = inf. Midtpunkts-metoden kan derimod godt klare udregningerne fordi den ikke evaluerer funktionen i t = 0). Variabeltransformationen vælges til; t = ln(e x + 1) hvor dt dx = ex. Således fås det e x + 1 nye integral til 13 af 32

Figur 11: Den absolutte fejl på den numeriske udregning af (??) vha. midpunkts-, trapez- og simpson-kvadratur metoderne. I = 0 (ln(e x + 1)) 3 e x e x e x + 1 = (ln(ex + 1)) 3 e x + 1 ln(e 0 1), t 0 og ln(e 1) ln(e ) =. Vi kan givetvis ikke udregne integralet når grænserne er uendelige og derfor bruges metoden, at afskære halen, eller i dette tilfælde halerne. Det vides at integranden (7) går mod 0 når t går mod ±uendelig så hvis tilstrækkelige store (positive og negative) værdier vælges skulle det fundne integralet være en god approksi- (7) 14 af 32

Figur 12: plot af (7) mation. Det er dog set at værdien også kan vælges for stor hvor integralet da bliver 0, hvilket kunne skyldes problemer med maskinnøjagtigheden. Den nedre grænse sættes til 500 og den øvre sættes til 500. Iflg figur 12 kunne intervallet formentlig også vælges til 5 og 25, men førstnævnte interval giver en faktor 10 mindre fejl. Nu udregnes integralet vha. de tre metoder og med forskellige skridtlængder, h. Skridtlængden varieres ved at variere på parameteren, m som angiver antallet af intervaller som integralet deles op i. m varieres på følgende måde; m = 2 i, i = 0..10, og resultaterne er vist på figur 13. De store værdier af m er vigtigt fordi intervallet er så stort at det kræver større værdier af m, for at skridtlængden kan blive tilstrækkelig lille (hvis skridtlængden ikke når under 10, kan det være svært at sige noget-somhelst om den metodernes funktionalitet). Det har ikke været muligt at bruge flere værdier af m, pga problemer med MEMORY i MATLAB. På figur 14 er plottet den absolutte fejl ved udregninger mod skridtlængden og mod antallet af funktionsevalueringer. For værdier af h større end 3 er fejlen større end 1 og ingen af metoderne er konsekvent bedre end de andre. For mindre værdier af h er midtpunktsog trapez-metoden bedre end simpson-metoden. De når alle ned på en fast fejl når h bliver mindre end 0.33. Denne fejl er ca 10 9 og grunden til at de ligger fast her istedet for eksempelvis maskinnøjagtigheden er at det korrekte 15 af 32

m = 1 M = 166.512326 T = 0.000000 S = 0.000000 m = 2 M = 0.000000 T = 83.256163 S = 111.008217 m = 4 M = 0.000000 T = 41.628081 S = 27.752054 m = 8 M = 0.000000 T = 20.814041 S = 13.876027 m = 16 M = 0.000000 T = 10.407020 S = 6.938014 m = 32 M = 0.019519 T = 5.203510 S = 3.469007 m = 64 M = 3.014104 T = 2.611515 S = 1.747516 m = 128 M = 9.426195 T = 2.812809 S = 2.879907 m = 256 M = 6.870293 T = 6.119502 S = 7.221733 m = 512 M = 6.492982 T = 6.494897 S = 6.620029 m = 1024 M = 6.493939 T = 6.493940 S = 6.493621 m = 2048 M = 6.493939 T = 6.493939 S = 6.493939 m = 4096 M = 6.493939 T = 6.493939 S = 6.493939 m = 8192 M = 6.493939 T = 6.493939 S = 6.493939 m = 16384 M = 6.493939 T = 6.493939 S = 6.493939 m = 32768 M = 6.493939 T = 6.493939 S = 6.493939 Figur 13: Integrale af (7) udregnet vha. midpunkts-, trapez- og simpsonkvadratur metoderne. 16 af 32

Figur 14: Den absolutte fejl på den numeriske udregning af (7) vha. midpunkts-, trapez- og simpson-kvadratur metoderne. 17 af 32

resultat også er udregnet numerisk, altså vha. adaptint som har en tolerance på 10 12. Situationen er ikke meget anderledes når det gælder antallet af funktionsevalueringer. For færre end 100 funktionsevalueringer ligger fejlen over 1 og der er heller ikke her en metode der er konsekvent bedre end de andre. Herefter falder midtpunkts- og trapez-metoden ved et lavere antal funktionsevalueringer. Hældningen ser ud til at være den samme for alle tre. Ved omkring 10 4 funktionsevalueringer når alle tre metoder ned på den faste fejl på omkring 10 9. 0.2 Opgave 2 Givet er Ydermere har vi f(x) = ( 1 exp 1 2πσ 2 2 ( ) ) 2 x µ σ (8) P {x x} = F (x; µ, σ) = x f(t)dt (9) For at kunne arbejde med dette kigges der først på følgende integral I(x) = x e t2 dt (10) Vi ønsker at lave en funktion, [I,nf] = computeint(fun,x) der beregner integralet i (10) udfra den viden at integranden er symmetrisk og at I π π for x. Da integranden er symmetrisk må dette betyde at I 2 for x 0, og dette vil sige vi kan nøjes med at udregne integralet i (11) og lægge π 2 til. I(x) = x 0 e t2 dt (11) 18 af 32

For at kunne udregne integralet med en præcision på 10 12 bruges adaptintfunktionen (se bilag). 1 function [I,nf] = computeint (fun,x) 2 [I,nf] = adaptint (fun,0,x,10^( -12) ); 3 I = I + sqrt (pi)/2; Vi kan nu gå videre til at lave en funktion der beregner F (x; µ, σ). Forbindelsen ( mellem ) (8) og (10) er en variabeltransformation der hedder t = 1 x µ og deraf kommer det at dt 2 σ dx = 1 og heraf at dx = 2σdt. 2σ Vi har således at F (x; µ, σ) = x 1 ( x µ = 2 σ ( 1 exp 1 2πσ 2 2 ) 1 ( x µ = 2 σ = 1 π I ( ) ) 2 t µ dt (12) σ 1 2πσ 2 exp ( t 2) 2σdt (13) ) ( 1 1 π exp ( t 2) dt (14) 2 ( x µ σ Vi kan nu plotte F (x; 2, 4) for x [ 20; 20] og grafen ses på figur 15. )) (15) Vi kan nu gå videre til at lave en funktion der bestemmer p-fraktilen, a. Dette vil sige at løse ligningen der hedder F (x; µ, σ) = p hvilket svarer til at løse nulpunktsproblemet der hedder F (x; µ, σ) p = 0. MATLAB har en indbygget funktion der hedder fzero som kan bruges. Derudover kan man vælge at bruge Newtons metode (nu vi har den afledte til rådighed) og så er sekantmetoden også en mulighed. Vi tester derfor disse 3 og finder ud af hvilken der virker bedst. Der laves 3 funktioner, fractilefzero.m, fractilenewton.m og fractilesecant.m. Til fractilenewton.m bruges MyIntFun2.m som også indeholder den afledte 19 af 32

Figur 15: tv: Plot af F (x; 2, 4). th: Plot af a vs p af F (x; µ, σ) altså f(x). Ellers bruges blot MyIntFun.m. fractilefzero.m er vist herunder 1 function a = fractilefzero ( p, mu, sigma ) 2 % Solves the problem F(x;mu, sigma ) - p = 0 3 4 fun = @(x) MyIntFun (x,mu, sigma ) - p; 5 a = fzero (fun,0) ; Startgættet ligger altid på 0. På figur 16 er resultaterne vist 20 af 32

fzero fejl på fzero newton fejl på newton sekant fejl på sekant -3.12620 2.77555e-017-3.12620 1.52655e-016-3.12620 2.77555e-016-1.36648 0-1.36648 9.43689e-016-1.36648 0-0.09760 0-0.09760 0-0.09760 0 0.98661 0 0.98661 0 0.98661 0 2.00000 0 2.00000 2.99760e-015 2.00000 0 3.01338 0 3.01338 3.33066e-016 3.01338 0 4.09760 0 4.09760 0 4.09760 5.05151e-014 5.36648 0 5.36648 6.23945e-014 5.36648 1.11022e-016 7.12620 1.11022e-016 7.12620 0 7.12620 1.11022e-016 Figur 16: Test af fzero, newton.m og sekant.m til løsningen af F (x; µ, σ) p = 0 Det ses at fzero har flest forekomster af fuldstændigt præcise gæt, nemlig 7. Sekant-metoden har 5 og Newton har 4. Newton har desuden og den højest fejl på 6.24 10 14. Både Newton og Sekant-metoden har betydeligt højere fejl end fzero hvad man måske også kunne forvente. Dog er det en smule besynderligt at Sekant-metoden giver umiddelbart bedre resultater da Newton metoden får mere information om funktionen i form af den afledede, f(x). Et plot af a vs p er vist på figur 15. 0.3 Opgave 3 Vi kigger i denne opgave på Brusselator-ligningen der hedder x 1 = 1 + x 2 1x 2 4x 1 x 1 (0) = 1.5 x 2 = 3x 1 x 2 1x 2 x 2 (0) = 3 Både x 1 og x 2 er funktioner af t. I denne opgave vil der blive lavet tre MATLAB-funktioner til beregning af disse koblede differential-ligningerne, 21 af 32

nemlig Eulers metode, Runge-Kutta-metoden (RK4) og Runge-Kutta-Fehlbergmetoden med adaptiv skridtlængde. 0.3.1 Eulers metode 1 function [x,y] = eulers (f,ab,y0,n) 2 % Compute approximation of the solution of the initial...value 3 % problem y = f(x,y), y(a) = y0 on the interval ab = [a...,b] 4 % Euler s method with step length h = (b-a)/n. 5 6 a = ab (1) ; b = ab (2) ; % initiating 7 h = (b-a)/n; % step length 8 x = linspace ( a, b, N +1) ; % points to be approximated 9 y (1,:) = y0; % intitial function values 10 for n = 1: N 11 y(n+1,: = y(n,.) + h* feval (f,x(n),y(n,:) ); % the 12 end... next function values are computed På figur 17 ses approksimation af brusselator-ligningen beregnet med eulers.m med N = [25, 100, 350]. Det ses at approksimationen er meget ustabil ved de høje skridtlængder (lave værdier af N). Løsningen til Brusselatorligningen synes at oscillere ved de lave skridtlængder og dette er bestemt ikke tilfældet ved de høje. 0.3.2 Runge-Kutta 1 function [x,y] = rk4 (f,ab,y0,n) 2 % Compute approximation of the solution of the initial...value 22 af 32

Figur 17: Approksimation af brusselator-ligningen fundet med Euler s metode. Fra venstre mod højre: N = [25, 100, 350] 3 % problem y = f(x,y), y(a) = y0 on the interval ab = [a...,b] 4 % Classical Runge Kutta method with step length h = ( b- a...)/n. 5 6 a = ab (1) ; b = ab (2) ; % initiating 7 h = (b-a)/n; hh = h /2; % step lengths are defined 8 x = linspace ( a, b, N +1= % points to be approximated 9 for n = 1: N 10 k1 = feval (f,x(n),y(n,:) ); 11 k2 = feval (f,x(n)+hh,y(n,:) +hh*k1); 12 k3 = feval (f,x(n)+hh,y(n,:) +hh*k2); 13 k4 = feval (f,x(n)+hh,y(n,:) +h*k3); 14 23 af 32

15 y(n +1,:) = y(n,:) + h /6*( k1 + 2* k2 + 2* k3 + k4); % 16 end...the next function values are computed 24 af 32

På figur 18 ses approksimationen af brusselator-ligningen beregnet med rk4.m med N = [25, 100, 350]. Også her er approksimationen bedst ved høje værdier af N. Dog er approksimationen bedre her idet den stadig i nogen grad oscillerer ved N = 50. Også ved N = 25 synes løsningen at være korrekt i et større interval. Figur 18: Approksimation af brusselator-ligningen fundet med Runge-Kuttametoden 0.3.3 Runge Kutta w. Adaptive Step Length 1 function [x,y, neval ] = adaptrk45 (f,ab,y0,h0, tol ) 2 % Compute approximation of the solution of the initial...value 3 % problem y = f(x,y), y(a) = y0 on the interval ab = [a...,b] 4 % Runge kutta method with adaptive step length, and step... length control 25 af 32

5 6 % Runge - Kutta - Fehlberg34 constants. Alpha in A, beta in...b 7 A = [0 1/4 3/8 12/ 13 1 1/ 2]; 8 B = [0 0 0 0 0 0 9 1/4 0 0 0 0 0 10 3/ 32 9/ 32 0 0 0 0 11 1932/ 2197-7200/ 2197 7296/ 2197 0 0 0 12 439/ 216-8 3680/ 513-845/ 4104 0 0 13-8/27 2-3544/ 2565 1859/ 4104-11/40 0] ; 14 % weights 15 w4 = [ 25/ 216 0 1408/ 2565 2197/ 4104-1/5 0] ; 16 w5 = [ 16/ 235 0 6656/ 12825 28561/ 56430-9/50 2/55] ; 17 dw = w4 - w5; 18 % initialize 19 a = ab (1) ; b = ab (2) ; 20 m = length (y0); 21 z = a; y = y0 (:) ; neval = 0; % initialize output 22 n = 0; xn = a; yn = y0; h = min (h0,b-a); 23 K = zeros ( m,6) ; % for storing k1.. k6 24 while xn < b 25 xn = min ( xn +h, b); % possible adjustment at end 26 h = xn1 -xn; 27 for j = 1:6 28 K(:,j) = feval (f,xn + A(j)*h, yn + h*k*b(:,j)); 29 end 30 neval = neval + 6; 31 y5 = yn + h* K* w5 % RK5 - approximation 32 d = h* norm (K*dw); % estimated error 33 if d <= tol % accept the step 34 n = n +1; xn = xn1 ; yn = y5; 35 x(n +1) = xn; y(:,n +1) = yn; % save in output 36 end 26 af 32

Figur 19: Approksimation af brusselator-ligningen fundet med Runge-Kutta- Fehlberg-metoden med adaptiv skridtlængde 37 h = h* min (0.8*( tol /d) ^0.2,5) ; % update step length 38 end 39 x = x ; y = y ; % return in standard format På figur 19 ses approksimationen af brusselator-ligningen beregnet med adaptrk4.m. Det ses at grafen er mere kantet på de stykker hvor hældningen ikke ændrer sig så meget og at den er blødere der hvor hældningen ændrer sig drastisk. Vi er nu interesserede i at udregne steady-states for systemet. Dette vil sige at f(x1, x2) = ẋ = 0. Dette vil sige at ẋ(t 0 ) = { x 1 (t 0 ) = 1 + x 1 (t 0 ) 2 x 2 (t 0 ) 4x 1 (t 0 ) = 0 x 2 (t 0 ) = 3x 1 (t 0 ) x 1 (t 0 ) 2 x 2 (t 0 ) = 0 (16) Løser man disse to ligningerne får man at x 1 (t 0 ) = 1 og x 2 (t 0 ) = 3. Løsningen ses på figur 20 Det ses at når startbetingelserne er et steady-state så er funktionen konstant. 27 af 32

Figur 20: Løsningen af Brusselator-ligningen med steady-state som startbetingelser 28 af 32

Dette giver mening fordi steady-state er det punkt hvor hældningen er 0, og som er et reelt minimum. 0.4 Bilag Her er vedlagt de MATLAB-scripts der ikke indgår i rapporten 0.4.1 plotintegral.m Dette script bruges til at plotte områder, og logaritmiske plots igennem hele opgave 1 1 a1 = 0; b1 = 1; % changed according to the integral -...interval 2 x = linspace (a1,b1,100) 3 4 figure (1) 5 area ( x, MyFun ( x)); % MyFun is the relevant integrand 6 7 k = 0: 20; h = 2.^ k 8 9 M = zeros ( size (h)); T = M; s = M; 10 11 for i = 1: length (h) 12 [M(i),hM(i),nfM (i)] = midpoint ( @MyFun,a1,b1,h(i)); 13 [T(i),hT(i),nfT (i)] = trapez ( @MyFun,a1,b1,h(i)); 14 [S(i),hS(i),nfS (i)] = simpson ( @MyFun,a1,b1,h(i)); 15 fprintf ( m = %4f & M = %8f & T = %8f & S = %8f\n, [...h(i) M(i) T(i) S(i)]); 16 end 17 18 sol = 2/3 % the solution to the integral is changed...accordingly 29 af 32

19 20 fs = 16; 21 figure (2) ; 22 loglog (hm, abs (M-sol ), b-o,ht, abs (T-sol ), r-x,hs, abs (S-...sol ), g -*, linewidth,3, markersize,12); 23 xlabel ( h, fontsize,fs); ylabel ( Absolute Error,...fontsize,fs); 24 set (gca, fontsize,fs),grid on 25 legend ( midpoint, trapez, simpson, fontsize,fs,...location, northwest ) 26 27 figure (3) ; 28 loglog (nfm, abs (M-sol ), b-o nft, abs (T-sol ), r-x,nfs, abs (...S-sol ), g -*, linewidth,3, markersize,12); 29 xlabel ( h, fontsize,fs); ylabel ( Absolute Error,...fontsize,fs); 30 set (gca, fontsize,fs),grid on 31 legend ( midpoint, trapez, simpson, fontsize,fs,...location, northwest ) 32 33 [I,nfI ] = adaptint ( @MyFun,a1,b1,10^( -6) ); 34 fprintf ( I = %2d - function evalutions = %2f\n, [I,nfI...]); 0.4.2 plotnormal.m Bruges til at udregne værdier F (x; µ, σ) i opgave 2.3 (disse bliver plottet i testfractile.m. 1 mu = 2; sigma = 4; 2 x = linspace ( -20,20,100) ; y = x; 3 4 for i = 1: length (x) 30 af 32

5 y(i) = MyIntFun (x(i),mu, sigma ); 6 end 0.4.3 testfractile.m Bruges til at teste funktionerne fractilefzero, fractilesecant og fractilenewton og plotte a vs p. 1 mu = 2; sigma = 4; k = 0; 2 a = zeros (1,9) ; b = a; c = a; error = a; 3 plotnormal ; 4 5 for i = 0.1:0.1:0.9 6 k = k +1; 7 a(k) = fractilefzero (i,mu, sigma ); 8 errora (k) = abs ( MyIntFun (a(k),mu, sigma ) - i); 9 b(k) = fractilefzero (i,mu, sigma ); 10 errorb (k) = abs ( MyIntFun (b(k),mu, sigma ) - i); 11 c(k) = fractilefzero (i,mu, sigma ); 12 errorc (k) = abs ( MyIntFun (c(k),mu, sigma ) - i); 13 p(k) = i; 14 fprintf ( %9f & %14 d & %9f & %14 d & %9f & %14 d \n, [ 15 end 16 17 subplot (1,2,2) ;...a(k) errora (k) b(k) errorb (k) c(k) errorc (k) 18 plot (a,p,. ); axis ([ -20 20 0 1]) ; 19 subplot (1,2,1) ; 20 plot (x,y,. ); axis ([ -20 20 0 1]) ; 31 af 32

0.4.4 plotbrusserlator.m Bruges til at plotte løsninger til brusselator-ligningen i opgave 3. 1 ab = [0 20]; y0 = [ 1. 5 3]; j = 0; 2 3 for N = [25 100 350] 4 j = j +1; 5 [x,y] = rk4 ( @odef1,ab,y0,n); % either euler or rk4 6 subplot (1,3, j); % odef1 is a function...containing the brusselator - equation 7 plot (x,y); axis ([ ab 0 5]) ; 8 end 0.4.5 plotadaptrk45 Bruges til at plotte løsningen til brusselator-ligningen fundet med adaptrk4. I opgave 3.5 bruges y0 = [1 3]. 1 ab = [0 20]; j = 0; y0 = [ 1. 5 3]; 2 3 [x,y] = adaptrk45 ( @odef1,ab,y0,0.1,0.0001) ; 4 plot (x,y); axis ([ ab 0 5]) ; 32 af 32