Lösningsförslag till inlämningsuppgift 5 i Beräkningsprogrammering Problem 1 function prob1

Relevanta dokument
Lösningsförslag till inlämningsuppgift 5 i Beräkningsprogrammering Problem 1 function prob1

Lösningsförslag till inlämningsuppgift 3 i Beräkningsprogrammering Problem 1) function condtest format compact format long

FMNF15 HT18: Beräkningsprogrammering Numerisk Analys, Matematikcentrum

Laboration 4. Numerisk behandling av integraler och begynnelsevärdesproblem

f(x + h) f(x) h f(x) f(x h) h

Lösningsanvisningar till de icke obligatoriska workoutuppgifterna

Lösningsanvisningar till de icke obligatoriska workoutuppgifterna

Laboration 4. Numerisk behandling av integraler och begynnelsevärdesproblem

Dubbelintegraler. 1 Inledning. 2 Rektangelregeln. CTH/GU LABORATION 5 MVE /2018 Matematiska vetenskaper

Tentamen i Beräkningsvetenskap I/KF, 5.0 hp,

Laboration 3. Funktioner, vektorer, integraler och felskattning

Laboration 6. Ordinära differentialekvationer och glesa system

SF1669 Matematisk och numerisk analys II Lösningsförslag till tentamen DEL A

Lösningsanvisningar till de icke obligatoriska workoutuppgifterna

Lösningsförslag Tentamen i Beräkningsvetenskap I, 5.0 hp,

Flervariabelanalys och Matlab Kapitel 3

KPP053, HT2016 MATLAB, Föreläsning 2. Vektorer Matriser Plotta i 2D Teckensträngar

Fallstudie: numerisk integration Baserad på läroboken, Case Study 19.9

Facit Tentamen i Beräkningsvetenskap I (1TD393) STS ES W K1

KTH 2D1240 OPEN vt 06 p. 1 (5) J.Oppelstrup

Laboration 2 Ordinära differentialekvationer

SF1669 Matematisk och numerisk analys II Bedömningskriterier till tentamen Torsdagen den 4 juni 2015

LABORATION 2. Trapetsregeln, MATLAB-funktioner, ekvationer, numerisk derivering

Tentamen i Beräkningsvetenskap I och KF, 5.0 hp,

Laboration 3. Funktioner, vektorer, integraler och felskattning

Facit Tentamen i Beräkningsvetenskap I (1TD393) STS ES W K1

TANA17 Matematiska beräkningar med Matlab

LAB 3. INTERPOLATION. 1 Inledning. 2 Interpolation med polynom. 3 Splineinterpolation. 1.1 Innehåll. 3.1 Problembeskrivning

TAIU07 Matematiska beräkningar med Matlab

Låt vara en reell funktion av en reell variabel med definitionsmängden som är symmetrisk i origo.

1.1 MATLABs kommandon för matriser

Flervariabelanlys och Matlab Kapitel 3

Laboration 3. Ergodicitet, symplektiska scheman och Monte Carlo-integration

Matlab övningsuppgifter

CTH/GU LABORATION 1 MVE /2013 Matematiska vetenskaper. Mer om grafritning

Mer om funktioner och grafik i Matlab

SF1669 Matematisk och numerisk analys II Lösningsförslag till modelltentamen DEL A

Del I: Lösningsförslag till Numerisk analys,

Analys av elektriska nät med numeriska metoder i MATLAB

LABORATION cos (3x 2 ) dx I =

FÖRSÄTTSBLAD TILL TENTAMEN. ELLER (fyll bara i om du saknar tentamenskod): Datum: 16 januari Bordsnummer:

TANA17 Matematiska beräkningar med Matlab

Uppgift 1 - programmet, Uppg6.m, visade jag på föreläsning 1. Luftmotståndet på ett objekt som färdas genom luft ges av formeln

Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI

TAIU07 Matematiska beräkningar med Matlab

Dubbelintegraler och volymberäkning

MATEMATIKPROV, LÅNG LÄROKURS BESKRIVNING AV GODA SVAR

Datorövning 1 Fördelningar

TMV225 Inledande matematik M

TMV036 Analys och Linjär Algebra K Kf Bt, del C

SF1669 Matematisk och numerisk analys II Lösningsförslag till tentamen DEL A

Beräkning av integraler

MMA127 Differential och integralkalkyl II

DN1212 för M: Projektrapport. Krimskramsbollen. av Ninni Carlsund

Gemensamt projekt: Matematik, Beräkningsvetenskap, Elektromagnetism. Inledning. Fysikalisk bakgrund

TAIU07 Matematiska beräkningar med Matlab

Minsta-kvadratmetoden

SF1513 NumProg för Bio3 HT2013 LABORATION 4. Ekvationslösning, interpolation och numerisk integration. Enkel Tredimensionell Design

Tentamen i matematik. f(x) = ln(ln(x)),

R AKNE OVNING VECKA 2 David Heintz, 13 november 2002

Matematisk analys för ingenjörer Matlabövning 2 Numerisk ekvationslösning och integration

Tentamen i: Beräkningsvetenskap I och KF

Teorifrågor. 6. Beräkna konditionstalet för en diagonalmatris med diagonalelementen 2/k, k = 1,2,...,20.

Ansvariga lärare: Yury Shestopalov, rum 3A313, tel (a) Problem 1. Använd Eulers metod II (tre steg) och lös begynnelsevärdesproblemet

2 Matrisfaktorisering och lösning till ekvationssystem

Parametriserade kurvor

SF1626 Flervariabelanalys Lösningsförslag till tentamen DEL A

Datoraritmetik. Från labben. Från labben. Några exempel

Introduktion till Matlab

4. Bestäm eventuella extrempunkter, inflexionspunkter samt horisontella och vertikala asymptoter till y = 1 x 1 + x, och rita funktionens graf.

Sammanfattning (Nummedelen)

Kurvanpassning. Kurvanpassning jfr lab. Kurvanpassning jfr lab

Kap Generaliserade multipelintegraler.

Fö4: Kondition och approximation. Andrea Alessandro Ruggiu

SF1669 Matematisk och numerisk analys II Bedömningskriterier till tentamen Måndagen den 16 mars 2015

Mer om geometriska transformationer

Grafritning och Matriser

Blandade uppgifter om tal

Datorövning 1: Fördelningar

Numeriska metoder, grundkurs II. Dagens program. Exempel Kubiska splines. Ögna igenom de gamla övningsanteckningarna.

SF1669 Matematisk och numerisk analys II Lösningsförslag till tentamen DEL A. r cos t + (r cos t) 2 + (r sin t) 2) rdrdt.

KPP053, HT2016 MATLAB, Föreläsning 3. Plotter och diagram Läsa och skriva data till fil

Homework Three. Farid Bonawiede Samer Haddad Michael Litton Alexandre Messo. 28 november Time series analysis

Studio 6: Dubbelintegral.

En introduktion till MatLab

Kurs DN1215, Laboration 3 (Del 1): Randvärdesproblem för ordinära differentialekvationer

1.6 Lösningar till kapitel 8

Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI

Tentamen i Beräkningsvetenskap II, 5.0 hp,

MA2001 Envariabelanalys 6 hp Mikael Hindgren Tisdagen den 9 januari Skrivtid:

Datorövning 1: Fördelningar

Föreläsning 5. Approximationsteori

5B1134 Matematik och modeller Lösningsförslag till tentamen den 12 januari 2005

Experimentella metoder, FK3001. Datorövning: Finn ett samband

Lösningar till Tentamen i Beräkningsvetenskap II, 5.0 hp, Del A. 1. (a) ODE-systemet kan skrivas på formen

1 Förberedelser. 2 Att starta MATLAB, användning av befintliga m-filer. 3 Geometriskt fördelad avkomma

LAB 1. FELANALYS. 1 Inledning. 2 Flyttal. 1.1 Innehåll. 2.1 Avrundningsenheten, µ, och maskinepsilon, ε M

SF1669 Matematisk och numerisk analys II Lösningsförslag till tentamen DEL A

2D1240 Numeriska metoder gk II för T2, VT Störningsanalys

System av ordinära differentialekvationer

Transkript:

Lösningsförslag till inlämningsuppgift 5 i Beräkningsprogrammering Problem 1 function prob1 % Integrationsgränserna a = 0; b = 0.8; % Antalet olika n-värden np = 1; % Referensvärdet på integralen Iref = 0.657669856383957; % En vektor med antalet punkter i integrationsintervallet nvec =.^(:np+1) + 1; % En vektor för att spara resultaten från den sammansatta trapetsregeln I = zeros(np,1); for i = 1:np % Starta tidtagning % Aktuellt n-värde n = nvec(i); % En vektor med x-punkterna xvec = linspace(a,b,n) ; % Avståndet mellan varje punkt h = (b-a)/(n-1); % En vektor med bredderna på staplarna (vikterna) w = h*[0.5; ones(n-,1); 0.5]; % Integralens värde enligt den sammansatta trapetsregeln I(i) = g(xvec) *w; % Avsluta tidtagning. Bara den sista sparas. timetrap = toc; % De relativa felen relerr = abs((iref-i)/iref); 1

Relativfel % Plotta loglog(nvec,relerr, * ) xlabel( Antalet punkter n ); ylabel( Relativfel ); grid on disp([ Relativfel med trapetsregeln ( numstr(nvec(np))... punkter) : numstr(relerr(np)), beräkningen tog... numstr(timetrap) sekunder. ]) % Integralen beräknad med integral Iint = integral(@g,a,b); timeint = toc; disp([ Relativfel med "integral" : numstr(abs((iref-iint)/iref))..., beräkningen tog numstr(timeint) sekunder. ]); function gout = g(x) gout = exp(-x.^); I figuren kan man se att om antalet noder n ändras från 10 1 till 10 6 (+5 i exponenterna) så ändras det relativa felet från ungefär 10 3 till 10 13 ( 10 i exponenterna), (där punkterna är valda för att få enkla siffror). Då kan man direkt se att relativfelet avtar med kvadraten på n, dvs p i den givna formeln. Man kan också utgå från formeln, relerr I c n p, sätta in siffrorna ovan, dividera ledvis, logaritmera, och lösa ut p, varvid p ( 13 ( 3))/(6 1) =. Felet avtar alltså som c. n Matlabs integral är enkel att använda och är snabbare än den sammansatta trapetsregeln; detta eftersom den använder effektivare metoder. Den ger dessutom mindre fel. 10-10 -4 10-6 10-8 10-10 10-1 10-14 10-16 10 0 10 10 4 10 6 10 8 Antalet punkter n Figur 1: Det relativa felet i uppskattningen av I plottat mot antalet punkter n.

Problem function broms % r-värdena är ekvidistanta, så vi kan skriva r = linspace(9.38,14.58,11) ; T = [338 43 474 506 557 573 601 6 651 661 671] ; % Antalet punkter n = length(t); % Vikter för sammansatta trapetsregeln h = (r(n)-r(1))/(n-1); wtrap = h*[1/;ones(n-,1);1/]; % Beräkna integralen i nämnaren med sammansatta trapetsregeln namnaretrapets = r *wtrap % Beräkna integralen i täljaren med sammansatta trapetsregeln taljaretrapets = (r.*t) *wtrap % Medeltemperaturen beräknad med den sammansatta trapetsregeln TmedTrapets = taljaretrapets/namnaretrapets % Det analytiska uttrycket för nämnaren och felet i uppskattningen från % sammansatta trapetsregeln namnareanalytisk = r(n)^/-r(1)^/ namnarefel = abs(namnaretrapets-namnareanalytisk) % Vikter för Simpsons regel m = (n-1)/; hs = (r(n)-r(1))/m; wsimp = ones(n,1); wsimp(::n-1) = 4; wsimp(3::n-) = ; wsimp = hs/6*wsimp; % % Kortare, men svårläsligt, sätt att skapa viktvektorn: % wsimp = hs/6*[1, *rem(1:n-,)+, 1] ; % % Man kan också bara skriva upp vikterna: % wsimp = hs/6*[1;4;;4;;4;;4;;4;1]; % Täljaren beräknad med Simpsons regel taljaresimp = (r.*t) *wsimp; % Medeltemperaturen beräknad med det analytiska uttrycket för nämnaren och % med uppskattningen av täljaren gjord med Simpsons regel 3

TmedSimpAnalytisk = taljaresimp/namnareanalytisk % Skillnaden mellan de beräknade medeltemperaturerna: skillnad = abs(tmedsimpanalytisk-tmedtrapets) Att vi kan använda den sammansatta trapetsregeln beror på att r-värdena är ekvidistanta (avståndet mellan två punkter på r-axeln är konstant i integrationsintervallet), vilket gör att vi kan definiera ett h. Nämnaren blir väldigt noggrann. Detta beror på att förstagradspolynom integreras exakt med trapetsregeln. Medeltemperaturen beräknad analytiskt och med Simpsons regel skiljer sig med ungefär 0.4 C från medeltemperaturen beräknad helt med trapetsregeln. Vi vet inget om mätfel i temperaturerna, men data är givna med tre värdesiffror och har alltså maximala avrundningsfel på 0.5 C. Integralberäkningen innebär emellertid ett slags medelvärdesbildning och avrundningsfelen tar därför i stor utsträckning ut varandra. Felet i medeltemperaturen torde därför vara mindre än 1 C. Siffrorna till och med entalssiffran bör alltså tas med: T med 568 C. Problem 3 Överkurs function dblint close all % Skapa en x- och en y-vektor N = 50; xhat = linspace(-,,n); yhat = linspace(-,,n); % Skapa en matris att spara dubbelintegralens värden i P = zeros(n); for j = 1:N for i = 1:N P(i,j) = integral(@(x,y) pot(x,y,xhat(j),yhat(i)),-1,1,-1,1); % Skapa griden och plotta funktionen [X,Y] = meshgrid(xhat,yhat); [cs,h] = contour(x,y,p); clabel(cs,h, labelspacing,3000); xlabel( $\hat{x}$, interpreter, latex ) % Special för att kunna skriva ^ ylabel( $\hat{y}$, interpreter, latex ) % Special för att kunna skriva ^ axis equal toc function potout = pot(x,y,xhat,yhat) % Integranden potout = 1./sqrt((xhat-x).^ + (yhat-y).^); 4

^y 4 6 1.5 1 0.5 3 3.5 5.5 5 6.5 7 0 4.5.5-0.5-1 -1.5 - - -1.5-1 -0.5 0 0.5 1 1.5 ^x Figur : Nivåkurvor för funktionen Φ. 5