Matematikk Øvingsoppgaver i numerikk leksjon 8. Løsningsforslag

Like dokumenter
BYFE/EMFE 1000, 2012/2013. Numerikkoppgaver uke 43

Matematikk Øvingsoppgaver i numerikk leksjon 9. Løsningsforslag

Matematikk Øvingsoppgaver i numerikk leksjon 5 Litt oppsummering undervegs Løsningsforslag

Matematikk Øvingsoppgaver i numerikk leksjon 11 Eulers metode. Løsningsforslag

Løsningsforslag. Innlevering i BYFE/EMFE 1000 Oppgavesett 1 Innleveringsfrist: 14. september klokka 14:00 Antall oppgaver: 3.

Matematikk Øvingsoppgaver i numerikk leksjon 6 Løsningsforslag

Matematikk Øvingsoppgaver i numerikk leksjon 6. Løsningsforslag

Matematikk Øvingsoppgaver i numerikk leksjon 5. Løsningsforslag

Matematikk Øvingsoppgaver i numerikk leksjon 8. Løsningsforslag

Matematikk Øvingsoppgaver i numerikk leksjon 7. Løsningsforslag

Matematikk Øvingsoppgaver i numerikk leksjon 5 Løsningsforslag

Matematikk Løsningsforslag

Høgskolen i Oslo og Akershus. i=1

Matematikk Eksamensaktuelle numerikk-oppgåver

Høgskolen i Oslo og Akershus. sin 2 x cos 2 x = 0, x [0, 2π) 1 cos 2 x cos 2 x = 0 2 cos 2 x = 1 cos 2 x =

BYFE/EMFE 1000, 2012/2013. Numerikkoppgaver veke 14

Matematikk Øvingsoppgaver i numerikk leksjon 5 Løsningsforslag

Løsningsforslag. Innlevering i BYFE 1000 Oppgavesett 1 Innleveringsfrist: 10. oktober klokka 14:00 Antall oppgaver: 6. Oppgave 1

BYFE/EMFE 1000, 2012/2013. Numerikkoppgaver uke 35

Matematikk Øvingsoppgaver i numerikk leksjon 3. Løsningsforslag

Matematikk Øvingsoppgaver i numerikk leksjon 3 Løsningsforslag

Matematikk Øvingsoppgaver i numerikk leksjon 5 for-løkker

Matematikk Øvingsoppgaver i numerikk leksjon 5 Skript

Matematikk Øvingsoppgaver i numerikk leksjon 7 Løsningsforslag

Matematikk Øvingsoppgaver i numerikk leksjon 5 Løsningsforslag

Matematikk Øvingsoppgaver i numerikk leksjon 4 Løsningsforslag

Matematikk 1000, 2012/2013. Eksamensaktuelle numerikk-oppgåver

Matematikk Øvingsoppgaver i numerikk leksjon 4 m-ler

Matematikk Øvingsoppgaver i numerikk leksjon 6. Løsningsforslag

Matematikk Øvingsoppgaver i numerikk leksjon 6 Løsningsforslag

Matematikk Øvingsoppgaver i numerikk leksjon 7 Numerisk derivasjon

Oppgaver om fart, strekning og akselerasjon. Løsningsforslag. Oppgave 1

Matematikk Øvingsoppgaver i numerikk leksjon 3 Skript

BYFE/EMFE 1000, 2012/2013. Numerikkoppgaver uke 40

Matematikk Øvingsoppgaver i numerikk leksjon 1 Løsningsforslag

Fasit MAT102 juni 2016

Løsningsforslag. Innlevering i BYFE/EMFE 1000 Oppgavesett 5 Innleveringsfrist: 15. april klokka 14:00 Antall oppgaver: 3.

Løsningsforslag. Oppgave 1 Gitt matrisene ] [ og C = A = 4 1 B = 2 1 3

BYFE/EMFE 1000, 2012/2013. Numerikkoppgaver uke 34

Matematikk Øvingsoppgaver i numerikk leksjon 2 Funksjoner og plotting

Matematikk Øvingsoppgaver i numerikk leksjon 2 Løsningsforslag

Matematikk Øvingsoppgaver i numerikk leksjon 3 Funksjoner og plotting

Matematikk Øvingsoppgaver i numerikk leksjon 2 Løsningsforslag

Løsningsforslag Matematikk 2MX - AA mai 2006

Løsningsforslag MAT102 Vår 2018

Matematikk Øvingsoppgaver i numerikk leksjon 9 Numerisk integrasjon

Øvingsforelesning i Matlab TDT4105

BYFE/EMFE 1000, 2012/2013. Numerikkoppgaver uke 37 og 38

Løsningsforslag. og B =

Høgskolen i Oslo og Akershus. c) Et annet likningssystem er gitt som. t Bestem parametrene s og t slik at likningssystemet blir inkonsistent.

Løsningsforslag. Innlevering i BYFE 1000 Oppgavesett 4 Innleveringsfrist:??? klokka 14:00 Antall oppgaver: 5, 20 deloppgaver.

Matematikk Øvingsoppgaver i numerikk leksjon 8 Numerisk integrasjon

MA1102 Grunnkurs i analyse II Vår 2014

Fasit til eksamen i emnet MAT102 - Brukerkurs i matematikk II Mandag 21.september 2015

13.1 Fourierrekker-Oppsummering

x 2 = x 1 f(x 1) (x 0 ) 3 = 2 n x 1 n x 2 n 0 0, , , , , , , , , , , 7124

Alle svar skal grunngis. Alle deloppgaver har lik vekt.

Newtons metode - Integrasjon Forelesning i Matematikk 1 TMA4100

x n+1 = x n f(x n) f (x n ) = x n x2 n 3

Løsningsforslag for eksamen i AA6516 Matematikk 2MX - 4. desember eksamensoppgaver.org

Øvingsforelesning i Matlab TDT4105

Matematikk Øvingsoppgaver i numerikk leksjon 1. Løsningsforslag

Prøve i Matte 1000 ELFE KJFE MAFE 1000 Dato: 02. desember 2015 Hjelpemiddel: Kalkulator og formelark

LØSNINGSFORSLAG TIL EKSAMEN I MA0001 BRUKERKURS A Tirsdag 14. desember 2010

Løsningsforslag AA6526 Matematikk 3MX - 8. desember eksamensoppgaver.org

x 2 = x 1 f(x 1) (x 0 ) 3 = 2 x 2 n n x 1 n 0 0, , , , , , , , , , , 7124

Matematikk Øvingsoppgaver i numerikk leksjon 1. Løsningsforslag

1. (a) Finn egenverdiene og egenvektorene til matrisen A =

Løsningsforslag. og B =

MAT jan jan jan MAT Våren 2010

Løsningsforslag AA6526 Matematikk 3MX Privatister 3. mai eksamensoppgaver.org

Løsningsforslag AA6524 Matematikk 3MX Elever AA6526 Matematikk 3MX Privatister eksamensoppgaver.org

Forelesning Matematikk 4N

Matematikk Øvingeoppgaver i numerikk leksjon 1 Å komme i gang

Prøve i Matte 1000 BYFE DAFE 1000 Dato: 03. mars 2016 Hjelpemiddel: Kalkulator og formelark. Alle svar skal grunngis. Alle deloppgaver har lik vekt.

Løsningsforslag AA6524 Matematikk 3MX Elever 7. juni eksamensoppgaver.org

Alle svar skal grunngis. Alle deloppgaver har lik vekt.

Matematikk Øvingsoppgaver i numerikk leksjon 3 Funksjoner og plotting

TDT4105 IT Grunnkurs Høst 2014

Løsningsforslag. Alle svar skal grunngis. Alle deloppgaver teller like mye.

Løsningsforslag eksamen 18/ MA1102

Matematikk Øvingeoppgaver i numerikk leksjon 1 Å komme i gang

Eksamensoppgave i TMA4125 Matematikk 4N

Oppgave x d 1.0 for n from 1 by 1 to 200 do x d sin x end do

Løsningsforslag MAT102 - v Jon Eivind Vatne

Løsningsforslag AA6526 Matematikk 3MX - 5. mai eksamensoppgaver.org

Oppgave Iterasjonen ser ut til å konvergere sakte mot null som er det eneste fikspunktet for sin x.

Løsningsforslag AA6516 Matematikk 2MX - 5. mai eksamensoppgaver.org

MAT1110: Obligatorisk oppgave 2, V Løsningsforslag

Løsningsforslag AA6516 Matematikk 2MX desember eksamensoppgaver.org

1. Finn egenverdiene og egenvektorene til matrisen A = 2 1 A =

TMA Kræsjkurs i Matlab. Oppgavesett 1/3

EKSAMEN I EMNET Løsning: Mat Grunnkurs i Matematikk I Mandag 14. desember 2015 Tid: 09:00 14:00

Løsningsforslag. f(x) = 2/x + 12x

BYFE DAFE Matematikk 1000 HIOA Obligatorisk innlevering 5 Innleveringsfrist Fredag 15. april 2016 kl 14 Antall oppgaver: 8

Øvingsforelesning i Matlab TDT4105

UNIVERSITETET I OSLO

Løsningsforslag. 3 x e. g(x) = 1 + x4 x 2

MA1102 Grunnkurs i analyse II Vår 2019

Løsningsforslag. Prøve i Matematikk 1000 BYFE DAFE 1000 Dato: 29. mai 2017 Hjelpemiddel: Kalkulator og formelark. Oppgave 1 Gitt matrisene.

Transkript:

Matematikk 1000 Øvingsoppgaver i numerikk leksjon 8 Løsningsforslag Oppgave 1 Riemann-summer a) b) f(x) = 1/x P = {1, 6/5, 7/5, 8/5, 9/5, 2} S = {6/5, 7/5, 8/5, 9/5, 2} (x i = x i ) Her kan partisjon og seleksjon bli gitt slik: `P=1:1/5:2;', og seleksjonen slik: `S=6/5:1/5:2;' eller slik:`s=p(2:6)' eller slik:`s=p(2:end);'. `end' refererer her til det siste elementet i P-vektoren slik at vi ikke trenger å vite hvor lang vektoren er. Disse endringene gjør vi i linje 5 og 7 i skriptet, som vi har kalt RiemannSum.m. Funksjonsla endres slik at den siste linja blir 'F=1./x;'. Vi kjører skriptet og får: > RiemannSum Rps = 0.64563 Her kunne vi også ha funnet svaret eksakt: ( 5 R P,S = x f(x i ) = 1 1 5 6 + 1 7 + 1 8 5 5 5 ( 1 5 5 6 + 5 7 + 5 8 + 5 9 + 5 ) 10 420 + 360 + 315 + 280 + 252 2520 f(x) = x 2 P = { 1, 1/2, 0, 1/2, 1} + 1 9 5 + 1 2 ) = = 1 6 + 1 7 + 1 8 + 1 9 + 1 10 = = 1627 2520 S = { 1, 1/2, 0, 1/2} (x i = x i 1 ) Vi gir partisjonen og seleksjonen slik: 1

P=-1:0.5:1 S=P(1:(end-1)). Vi oppdaterer funksjonsla slik at den gir x 2 og får > RiemannSum Rps = 0.75000 Det kan se ut til at Riemann-summen er eksakt 3/4, noe vi får bekrefta om gjør det analytisk: R P,S = x 4 f(x i ) = 1 ( 1) 4 ( ( 1) 2 + ( 1/2) 2 + 0 2 + (1/2) 2) = 1 2 3 2 = 3 4. c) f(x) = sin x P = {0, π/6, π/4, π/3, π/2, 2π/3, 3π/4, 5π/6, π} S = {π/6, π/4, π/3, π/2, 2π/3, 3π/4, 5π/6, π} (x i = x i ) Her må vi nok skrive hele partisjonen eksplisitt: % Partisjon: P=[0 pi/6 pi/4 pi/3 pi/2 2*pi/3 3*pi/4 5*pi/6 pi]; % Seleksjon: S=P(2:end); Vi kjører skriptet og får: > RiemannSum Rps = 1.9667 Også her kan summen nnes eksakt (selv om det ikke er så pent): R P,S = 8 f(x i ) x i = sin(π/6)(π/6 0) + sin(π/4)(π/4 π/6) + sin(π/3)(π/3 π/4) + sin(π/2)(π/2 π/3) + sin(2π/3)(2π/3 π/2) + sin(3π/4)(3π/4 2π/3) + sin(5π/6)(5π/6 3π/4) + sin π(π 5π/6) = 1/2 π/6 + 2/2 π/12 + 3/2 π/12 + 1 π/6 + π ( 3/2 π/6 + 2/2 π/12 + 1/2 π/12 + 0 = 7 + 2 2 + 3 ) 3 24 d) Denne gangen er partisjon regulær igjen. Og seleksjonen er gitt ved midpunktet i hvert del-intervall: f(x) = x 3 P = { 1, 3/4, 1/2, 1/4, 0, 1/4, 1/2, 3/4, 1} S = { 7/8, 5/8, 3/8, 1/8, 1/8, 3/8, 5/8, 7/8} (x i = (x i x i 1 )/2) Vi gir partisjonen og seleksjon i skriptet slik: 2

% Partisjon: P=-1:1/4:1; % Seleksjon: S=-7/8:1/4:7/8; Seleksjonen kunne blitt gitt på ere måter; en annen måte kunne være `S=(P(1:(end-1))+P(2:end))/2;'. Vi endrer funksjonla tilbake til det den var utgangspunktet og får > RiemannSum Rps = 0 En analytisk utregning bekrefter at 0 er den eksakte verdien av Riemannsummen (og det tilsvarende integralet). Oppgave 2 Enda en Riemann-sum f(x) = x 2 a) Lengda av alle del-intervall skal være like lange. Siden vi skal ha n delintervall, og lengda av intevallet [0, a] er a, må hvert del-intervall ha lengda x = a/n. b) Partisjonen P n = {x 0, x 1,..., x n } har x i = x 0 + i x = i x. Seleksjonen S n er gitt ved at x i = x i = i x. Det gir Riemann-summen R Pn,S n = n f(x i ) x i = x ( x) 3 n f(i x) = x n ( a ) 3 i 2 2n 3 + 3n 2 + n = n 6 n (i x) 2 = = a3 6 (2 + 3n + 1n 2 ). c) lim R P n,s n = lim R a 3 P P n 0 n n,s n = lim (2 + 3n n 6 + 1n ) 2 = a3 a3 (2+0+0) = 6 3. Setning 5.1.5 er nødvendig fordi vi bare har vist at Riemann-summen går mot a 3 /3 for en bestmet partisjon og seleksjon. Dersom en annen partisjon eller seleksjon hadde gitt en annen grenseverdi, ville ikke grenseverdien av Riemann-summen eksistert. Setning 5.1.5 sier at for stykkevis kontinuerlige funksjoner (som inkluderer kontinuerlige funksjoner), er grenseverdien alltid veldenert. d) Vi velger a = 1 og n = 10 og regner ut R P10,S 10 ved hjelp av dette skriptet: 3

1 % Skript som bergegner en Riemann-summ for f(x)=x^2 2 % på intervallet [0, a]. Partisjonen er reguær og 3 % seleksjonen er gitt ved x_i^* = x_i 4 5 % Bestemmer a: 6 a=1; 7 % Bestemmer antall delintervall 8 n=10; 9 % Lengda av delintervallene 10 DeltaX=a/n; 11 % Partisjon: 12 P=0:DeltaX:a; 13 % Seleksjon - lik partisjonsvektoren bortsett fra første element 14 S=P(2:end); 15 16 % Starter med å sette Riemann-summen til 0: 17 Rps=0; 18 % for-løkke som regner ut Riemann-summen 19 for :n 20 xstjerne=s(i); 21 Rps=Rps+(xStjerne)^2*DeltaX; 22 end 23 %Skriver Riemann-summen til skjerm 24 Rps Seleksjonen i linje 14 kunne også ha blitt gitt slik: `S=P(2:(n+1))'; P har n+1 elementer. Vi har kalt skriptet RegulaerPartisjon.m. Når vi kjører det i MATLAB, får vi > RegulaerPartisjon Rps = 0.30250 Når vi skal bruke ulike n-verdier, kan det være nyttig å endre tilordninga i linje 8 til en input-kommando: n=input('angi antall delintervall: '); Når skriptet kjører, vil det stoppe når det kommer til denne linja og vente på at du gir n i kommandovinduet. Teksten `Angi antall delintervall: ' blir da skrevet til skjerm. Når vi kjører skriptet, kan det se slik ut: > RegulaerPartisjon Angi antall delintervall: 50 Rps = 0.34340 > RegulaerPartisjon Angi antall delintervall: 100 Rps = 0.33835 4

> RegulaerPartisjon Angi antall delintervall: 500 Rps = 0.33433 > RegulaerPartisjon Angi antall delintervall: 5000 Rps = 0.33343 Riemannsummen ser vitterlig ut til å nærme seg 1/3 som seg hør og bør. Oppgave 3 Høgre-, venstre- eller midtseleksjon: Hva er best? a) Vi velger oss følgende: f(x) = x 2 + e x, a = 1 og b = 1. Integralet blir b a f(x) dx = 1 1 ( x 2 + e x) dx = [ x 3 /3 + e x] 1 1 = 1/3 + e ( 1/3 + e 1 ) = 2/3 + e 1/e 3.017. b) Vi får x = b a = 2 5 5 x i = x 0 + i x = 1 + 2i/5 P 5 = { 1, 3/5, 1/5, 1/5, 3/5, 1} S 5,v = { 1, 3/5, 1/5, 1/5, 3/5} S 5,h = { 3/5, 1/5, 1/5, 3/5, 1} S 5,m = { 4/5, 2/5, 0, 2/5, 4/5} Vi regner ut de tre Riemann-summene ved å lage et lite skript til å kjøre i MATLAB: % Skript som regner ut Riemann-summer for en regulær % partisjon på tre ulike måter % Maskevidde DeltaX=2/5; % Partisjon: P=-1:DeltaX:1; % Seleksjoner Sv=P(1:5); Sh=P(2:6); Sm=-4/5:DeltaX:4/5; 5

% Setter de tre summene til null: RsumV=0; RsumH=0; RsumM=0; % for-løkke som regner summene for :5 XvStjerne=Sv(i); XhStjerne=Sh(i); XmStjerne=Sm(i); RsumV=RsumV+IntFunk(XvStjerne)*DeltaX; RsumH=RsumH+IntFunk(XhStjerne)*DeltaX; RsumM=RsumM+IntFunk(XmStjerne)*DeltaX; end % Skriver summene til skjerm RsumV RsumH RsumM I kommandovinduet i MATLAB får vi: RsumV = 2.6316 RsumH = 3.5717 RsumM = 2.9748 c) Vi velger å bruke input-funksjonen slik at vi ikke trenger endre skriptet hver gang vi velger en ny n (skriptet er veldig likt det vi hadde i deloppgave b) og i oppgave 2): 1 % Skript som regner ut Riemann-summer for en regulær 2 % partisjon på tre ulike måter 3 4 % Grenser 5 a=-1; 6 b=1; 7 8 % Antall del-intervaller: 9 n=input('angi antall del-intervaller ') 10 11 % Maskevidde 12 DeltaX=(b-a)/n; 13 14 % Partisjon (har n+1 elementer): 15 P=-1:DeltaX:1; 16 % Seleksjoner (har n elementer) 17 Sv=P(1:n); % Venstre 18 Sh=P(2:(n+1)); % Høgre 6

19 Sm=(Sv+Sh)/2; % Midt 20 21 % Setter de tre summene til null: 22 RsumV=0; RsumH=0; RsumM=0; 23 24 % for-løkke som regner summene 25 for :n 26 XvStjerne=Sv(i); 27 XhStjerne=Sh(i); 28 XmStjerne=Sm(i); 29 RsumV=RsumV+IntFunk(XvStjerne)*DeltaX; 30 RsumH=RsumH+IntFunk(XhStjerne)*DeltaX; 31 RsumM=RsumM+IntFunk(XmStjerne)*DeltaX; 32 end 33 RsumV 34 RsumH 35 RsumM Her har vi regna ut Sh-vektoren som gjennomsnittet av de to vektorene Sv og Sh. Vi har alt sett at slike midpunksseleksjoner kan lages på ulike måter. Det er strengt tatt nødvendig å lage vektorer for seleksjonene; vi kunne like gjerne ha regna ut x i direkte for hver iterasjon i for-løkka med utgangspunkt i partisjons-vektoren P. d) Vi kjører skriptet, som heter TreRiemannSummer.m, for diverse n-verdier: Angi antall del-intervaller 5 RsumV = 2.6316 RsumH = 3.5717 RsumM = 2.9748 Angi antall del-intervaller 10 RsumV = 2.8032 RsumH = 3.2733 RsumM = 3.0065 Angi antall del-intervaller 20 RsumV = 2.9048 RsumH = 3.1399 RsumM = 3.0144 Angi antall del-intervaller 50 RsumV = 2.9709 RsumH = 3.0649 RsumM = 3.0166 Angi antall del-intervaller 100 7

RsumV = 2.9938 RsumH = 3.0408 RsumM = 3.0170 Angi antall del-intervaller 500 RsumV = 3.0124 RsumH = 3.0218 RsumM = 3.0171 Det ser ut til at alle tre Riemann-summene nærmer seg integralet når n øker (se deloppgave a)). Men det er tydelig at midt-summen nærmer seg mye raskere; allerede med n = 50 har denne metoden 3 desimaler riktig, mens for høgre- og venstresummene ikke dette tilfelle med n = 500 en gang. e) Vi lager tre funksjonsler for hver av de tre funksjonene. Den for R Pn,Sn,v b a f(x) dx ser slik ut: function D=RiemannDiffV(n) % Funksjon som regner ut absoluttverdien av differanse mellom et integral % og en Riemann-sum for en regulær partisjon og venstre-seleksjon. % "Fasiten": Integral=2/3+exp(1)-1/exp(1); % Grenser a=-1; b=1; % Maskevidde DeltaX=(b-a)/n; % Partisjon (har n+1 elementer): P=a:DeltaX:b; % Seleksjon (har n elementer) Sv=P(1:n); % Setter summen til null: RsumV=0; % For-løkke som regner summen for :n XvStjerne=Sv(i); RsumV=RsumV+IntFunk(XvStjerne)*DeltaX; end D=abs(RsumV-Integral); 8

Figur 1: Figuren viser forskjellen mellom integralet og de tre Riemann-summene for ulike verdier av n. Til venstre ser vi et vanlig plott, mens plottet til høgre bruker logaritmiske akser. og heter RiemannDiffV.m. De andre to ser tilsvarende ut og har tilsvarende navn. Når du lager tre.m-ler som er så like, bruker vi så klart klipp og lim-metoden for alt den er verd. Det bør nevnes at det er mulig å lage ei funksjonsl som gir alle tre funksjonsverdiene i ett spør gjerne oss lærere om du vil vite hvordan. Vi lager et skript som lager plottet: % Velger n-verdier nvektor=2:5:30; % Lager vektorer for plotting indeks=1; for n=nvektor VenstreVektor(indeks)=RiemannDiffV(n); HogreVektor(indeks)=RiemannDiffH(n); MidtVektor(indeks)=RiemannDiffM(n); indeks=indeks+1; end % Plotter plot(nvektor,venstrevektor,'bx-','linewidth',2) set(gca,'fontsize',15) hold on plot(nvektor,hogrevektor,'r+-','linewidth',2) plot(nvektor,midtvektor,'mo-','linewidth',2) hold off legend('venstre-seleksjon','hogre-seleksjon','midt-seleksjon') Resultatet er vist i gur 1. Resultatet er vist både som et vanlig plott og som et logaritmisk plott. Logaritmiske plott lager man på samme måte 9

som vanlige plott bortsett fra at man skriver `loglog' i stedet for `plot'. Legg merke til at på et slikt plott ser feilen ut til å gå som rette linjer. Den grønne går klart bratteste nedover altså avtar feilen mye raskere med n for midtpunktsseleksjon enn for høgre- og venstreseleksjoner. Konklusjonen bør være ganske tydelig: Riemann-summen konvergerer mye raksere mot integralet om vi velger midtpunktene enn når vi velger endene. 10