Tentamen del 2 SF1511, , kl , Numeriska metoder och grundläggande programmering

Relevanta dokument
Tentamen del 1 SF1511, , kl , Numeriska metoder och grundläggande programmering

Tentamen del 1 SF1546, , , Numeriska metoder, grundkurs

Tentamen, del 2 Lösningar DN1240 Numeriska metoder gk II F och CL

TENTAMEN I GRUNDKURS I NUMERISKA METODER - DEL 2

TENTAMEN I GRUNDKURS I NUMERISKA METODER - DEL 20

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

Tentamen, del 2 DN1240 Numeriska metoder gk II för F

) + γy = 0, y(0) = 1,

Tentamen i Matematik 2: M0030M.

LAB 4. ORDINÄRA DIFFERENTIALEKVATIONER. 1 Inledning. 2 Eulers metod och Runge-Kuttas metod

Tentamen del 2 SF1511, , kl , Numeriska metoder och grundläggande programmering

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

6. Temperaturen u(x) i positionen x av en stav uppfyller värmeledningsekvationen. u (x) + u(x) = f(x), 0 x 2, u(0) = 0 u(2) = 1,

Tentamen i Matematik 3: M0031M.

DN1212 Numeriska Metoder och Grundläggande Programmering DN1214 Numeriska Metoder för S Lördag , kl 9-12

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

Tentamen i Matematik 2: M0030M.

Sammanfattning (Nummedelen)

Omtentamen i DV & TDV

8 < x 1 + x 2 x 3 = 1, x 1 +2x 2 + x 4 = 0, x 1 +2x 3 + x 4 = 2. x 1 2x 12 1A är inverterbar, och bestäm i så fall dess invers.

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

LABORATION cos (3x 2 ) dx I =

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

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

Teknisk beräkningsvetenskap I 5DV154

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

Tentamen i Beräkningsvetenskap I (1TD393)

ELLER (fyll bara i om du saknar tentamenskod): Datum: 32 maj Bordsnummer: Kontrollera att du fått rätt tentamensuppgifter

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.

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

Numeriska metoder för fysiker Lördag , kl 10-14

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

1. Compute the following matrix: (2 p) 2. Compute the determinant of the following matrix: (2 p)

Tentamen i Beräkningsvetenskap I (nya versionen), 5.0 hp, Del A

SF1625 Envariabelanalys Tentamen Fredag 17 mars 2017

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

Ordinära differentialekvationer,

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 9p av totalt 20p Hjälpmedel: MATLAB

Övningsexempel och labuppgifter, Lab 5-2D1242

Module 4 Applications of differentiation

Numeriska metoder, grundkurs II. Dagens program. Gyllenesnittminimering, exempel Gyllenesnittetminimering. Övningsgrupp 1

Tentamen i Teknisk-Vetenskapliga Beräkningar

DN1212+DN1214+DN1215+DN1240+DN1241+DN1243 mfl Tentamen i Grundkurs i numeriska metoder Del 2 (av 2) Lördag , kl 9-12

Laboration 4. Numerisk behandling av integraler och begynnelsevärdesproblem

Lösningsanvisningar till de icke obligatoriska workoutuppgifterna

Kurskod: TAMS28 MATEMATISK STATISTIK Provkod: TEN1 05 June 2017, 14:00-18:00. English Version

Sekantmetoden Beräkningsmatematik TANA21 Linköpings universitet Caroline Cornelius, Anja Hellander Ht 2018

Akademin för utbildning, kultur och kommunikation MMA132 Numeriska Metoder Avdelningen för tillämpad matematik Datum: 2 juni 2014

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

DN1212+DN1214+DN1215+DN1240+DN1241+DN1243 mfl Lördag , kl 9-12 Tentamen i Grundkurs i numeriska metoder Del 1 (av 2)

Numerisk Analys, MMG410. Lecture 13. 1/58

12.6 Heat equation, Wave equation

Tentamen i Beräkningsvetenskap I (nya versionen), 5.0 hp, Del A

Fel- och störningsanalys

TMA226 datorlaboration

2. (a) Skissa grafen till funktionen f(x) = e x 2 x. Ange eventuella extremvärden, inflektionspunkter

Tentamen i Beräkningsvetenskap II, 5.0 hp,

TENTAMEN I LINJÄR ALGEBRA OCH NUMERISK ANALYS F1, TMA671

Laboration 4. Numerisk behandling av integraler och begynnelsevärdesproblem

Matlab övningsuppgifter

This exam consists of four problems. The maximum sum of points is 20. The marks 3, 4 and 5 require a minimum

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Laboration 2 Ordinära differentialekvationer

Laboration 3. Funktioner, vektorer, integraler och felskattning

Omtentamen i DV & TDV

1.6 Lösningar till kapitel 8

Lösningar tentamen i kurs 2D1210,

6. a) Visa att följande vektorer är egenvektorer till matrisen A = , och ange motsvarande

LUNDS TEKNISKA HÖGSKOLA Institutionen för Elektro- och Informationsteknik

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

LÖSNINGSFÖRSLAG TILL TENTAMEN 2 SF1664

Laboration 6. Ordinära differentialekvationer och glesa system

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 14:e januari klockan

SF1626 Flervariabelanalys

Module 6: Integrals and applications

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

SF1664 Tillämpad envariabelanalys med numeriska metoder Lösningsförslag till tentamen DEL A

Sammanfattninga av kursens block inför tentan

Facit Tentamen i Beräkningsvetenskap I, STS ES W K1

TMA 671 Linjär Algebra och Numerisk Analys. x x2 2 1.

Laboration 3. Funktioner, vektorer, integraler och felskattning

Högskolan i Skövde (SK, JS) Svensk version Tentamen i matematik

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

Kurskod: TAIU06 MATEMATISK STATISTIK Provkod: TENA 31 May 2016, 8:00-12:00. English Version

SF1625 Envariabelanalys Tentamen Måndagen den 11 januari 2016

( ) = 2x + y + 2 cos( x + 2y) omkring punkten ( 0, 0), och använd sedan detta ( ).

Laboration 1 i SF1544: Öva på Matlab och konstruera en optimal balk Avsikten med denna laboration är att:

Pre-Test 1: M0030M - Linear Algebra.

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

Newtons metod. 1 Inledning. CTH/GU LABORATION 3 MVE /2014 Matematiska vetenskaper

Facit Tentamen i Beräkningsvetenskap I, STS ES W K1

Fel- och störningsanalys

LÖSNINGSFÖRSLAG TILL TENTAMEN 2 SF1664

TMV225 Inledande Matematik M

KTH Matematik SF1633 Differentialekvationer I, för I1 Kontrollskrivning nr 2, Måndag den 31 mars 2008, kl Version: A Namn:... Personnr:...

TMV225 Inledande matematik M. Veckoprogram för läsvecka 4

Solutions to exam in SF1811 Optimization, June 3, 2014

Institutionen för Matematik, KTH Lösningar till tentamen i Analys i en variabel för I och K (SF1644) 1/ e x h. (sin x) 2 1 cos x.

Tentamen i kurserna Beräkningsmodeller (TDA181/INN110) och Grundläggande Datalogi (TDA180)

Transkript:

KTH Matematik Tentamen del 2 SF1511, 2018-03-16, kl 8.00-11.00, Numeriska metoder och grundläggande programmering Del 2, Max 50p + bonuspoäng (max 4p). Rättas ast om del 1 är godkänd. Betygsgränser inkl bonuspoäng: 10p D, 20p C, 30p B, 40p A. Svar skall motiveras och uträkningar redovisas. Korrekt svar utan motivering eller med felaktig motivering medför poängavdrag. Inga hjälpmedel är tillåtna (ej heller miniräknare). P1. Vi vill hitta lösningen (x, y, z) till följande icke-linjära system av ekvationer x 2 2x + y 2 z + 1 0 F (x, y, z) = xy 2 x 3y + yz + 2 = 0. xz 2 3z + yz 2 + xy 0 (8 p) a) Beräkna Jakobian-matrisen till funktionen F (x, y, z) för hand. b) När Newtons metod för system används för att lösa systemet får man felen e k efter iteration k, enligt följande tabell k 1 2 3 e k 0.2 0.04 1.6 10 3 Efter hur många ytterligare iterationer kommer felet bli mindre än 10 5? Motivera ditt svar noga! c) Skriv ett Matlab-program som löser F (x, y, z) = 0 med Newtons metod för system. Svaret ska ha ett fel som är mindre än 10 10 i alla komponenter. En bra startgissing är (x, y, z) = (2, 0, 1). d) Betrakta nu ekvationssystemet x 2 2x + y 2 z + 1 a F (x, y, z) = xy 2 x 3y + yz + 2 = b, xz 2 3z + yz 2 + xy c där a = 0.1 ± 0.1, b = 0.1 ± 0.05 och c = ±0.2. Skriv ett Matlabprogram som uppskattar osäkerheten i lösningens x-komponent. Utgå från programmet i deluppgift (c) och förklara vad som behöver läggas till/modifieras. Programmet skall vara effektivt för full poäng. Solution: a) The Jacobi matrix is given by 2x 2 2y 1 DF (x, y, z) = y 1 2xy 3 + z y. z 2 + y z 2 + x 2xz 3 + 2yz

b) For the errors e 1 and e 2 we observe e 2 e 2 1 = 4 10 2 (2 10 1 ) 2 = 1. and for e 2 and e 3 e 3 e 2 2 = 1.6 10 3 16 10 4 = = 1. (4 10 2 ) 2 16 10 4 Hence, we have a quadratic convergence rate and expect the error after k 1 iterations to be We obtain e k+1 = e 2k 1. e 4 e 23 1 = 2 8 10 8 = 256 10 8 < 10 3 10 8 = 10 5 Hence, after 4 iterations the error is expected to fall below 10 5. c) Matlab program: x = [ 2; 0 ; 1]; % starting values tol = 1e-10; error = 1.0; while ( error > tol ) F = [ x(1).^2-2*x(1) + x(2).^2 - x(3) + 1 ; x(1) * x(2).^2 - x(1) - 3*x(2) + x(2)*x(3) + 2; x(1) * x(3).^2-3*x(3) + x(2)*x(3).^2 + x(1)*x(2) ]; DF = [ 2*x(1) - 2, 2*x(2), -1 ; (x(2)^2-1), ( 2 * x(1) * x(2) - 3 + x(3)), x(2) ; (x(3).^2 + x(2)), (x(3).^2 + x(1)),... (2 * x(1) * x(3) - 3 + 2 * x(2) * x(3)) ]; deltax = DF \ F; x = x - deltax; error = norm( deltax ); d) Olofs solution: Jag börjar med att skriva om koden för Newtons metod till en funktion som för givna värden på a,b och c beräknar lösningen. Detta görs så att högerledet (a, b, c) subtraheras från F. Jakobianen är oförändrad. function wres=stordp3(a,b,c) w=[2;0;1]; korr=w; while norm(korr,inf) > 1.E-10 [F,J]=FoJp3c(w); F=F-[a;b;c]; korr=-j\f; w=w+korr; wres=w;

Därefter använder vi ovanståe rutin för att genomföra störningsräkning map de osäkra storheterna. a=0.1; Ea=0.1; b=-0.1; Eb=0.05; c=0; Ec=0.2; wres0=stordp3(a,b,c); x=wres0(1); wresa=stordp3(a+ea,b,c); wresb=stordp3(a,b+eb,c); wresc=stordp3(a,b,c+ec); Fel=abs(wresa(1)-x)+abs(wresb(1)-x)+abs(wresc(1)-x) Var god vänd

P2. Vi vill beräkna y(t) som satisfierar den ordinära differentialekvationen y + 3y 2e y + t 2 = 0, y(0) = 1, y (0) = 1, y (0) = 1. (8 p) (7 p) (2 p) a. Inför lämpliga beteckningar och skriv ekvationen som ett system av första ordningens differentialekvationer. Glöm inte begynnelsevillkoren! b. Skriv en detaljerad algoritm i Matlab som beräknar y(t) fram till t = 5 och plottar lösningen. Algoritmen ska vara baserad på Framåt Euler-metoden. c. Utöka Matlab-programmet så att det beräknar båglängden L av y(t) i intervallet t [0, 5]. Båglängden ges av L = 5 0 1 + y (t) 2 dt. Matlabs inbyggda funktioner för integration får ej användas här. d. Beskriv hur man kan gå tillväga för att uppskatta tillförlitligheten i approximationen av L. Solution: a) We set u 1 y u := u 2 = y u 3 y and obtain y u = y = y u 2 u 3 3u 2 + 2e u 1 t 2 1 with u(0) = 1. 1

b) Matlab program: T = 5.0; N = 1000; h = T / N; u_n = [ 1 ; -1 ; 1 ]; t_n = [ ]; f = @(t, u ) [ u(2) ; u(3) ; -3 * u(2) + 2 * exp(-u(1)) - t.^2 ]; t_n(1) = 0; for n = 1:N u_n(:,n+1) = u_n(:,n) + h * f( t_n(n), u_n(:,n) ); t_n(n+1) = n*h; plot( t_n, u_n(1,:), b ) hold on plot( t_n, u_n(2,:), r ) hold on plot( t_n, u_n(3,:), g ) hold off c) With L(t) = t 0 1 + y (s) 2 ds introduce the modified system with u 1 y u := u 2 u 3 = y y u 4 L and obtain y u 2 1 u = y y = u 3 3u 2 + 2e u 1 t 2 with u(0) = 1 1. L 1 + u 2 2 0 Matlab program: T = 5.0; N = 1000; h = T / N; u_n = [ 1 ; -1 ; 1 ; 0 ]; t_n = [ ]; f = @(t, u ) [ u(2) ; u(3) ; -3 * u(2) + 2 * exp(-u(1)) - t.^2; sqrt( 1 + u(2)^2 ) ]; t_n(1) = 0; for n = 1:N u_n(:,n+1) = u_n(:,n) + h * f( t_n(n), u_n(:,n) ); t_n(n+1) = n*h; % arc length L(5): u_n(4,)

d.) The accuracy is induced by the accuracy of the forward Euler method. We expect a linear convergence order to exact value of the arc length L(5). One way to guess the accuracy is to study the error between the Euler approximations for different steps sizes. If these errors show a linear reduction with h, we can assume that we are in the asymptotic regime and it approximately holds L(5) L h (5) L(5) L h/2 (5) + L h (5) L h/2 (5) which implies 1 2 L(5) L h(5) + L h (5) L h/2 (5), L(5) L h (5) 2 L h (5) L h/2 (5), where we can use the right hand side as an a-posteriori error estimator. P3. Du vill beräkna derivatan av en snäll funktion f(x). Du känner inte till dess precisa form, men har tillgång till en Matlab-funktion med funktionshuvud function f=func(x) som givet x ger dig f(x). Du har också tillgång till en funktion i Matlab där en numerisk metod för att approximera f (x) finns implementerad. Den har funktionshuvudet: function Dh=numder(x,h) där h är en steglängd och x punkten där man vill approximera derivatan. Till exemepel kan differensapproximationen D(h) = vara implementerad i numder. f(x + h) f(x) h (1) (5 p) (5 p) a. Visa att differensapproximationen i (??) minst har noggrannhetsordning ett. b. Du vill veta vad den numeriska metoden som är implementerad i numder har för noggrannhetsordning. Tyvärr är funktionen numder dåligt kommenterad. Förklara hur du skulle gå till väga för att bestämma noggrannhetsordningen genom numeriska experiment. Motivera ditt svar. c. Skriv en egen version av numder i Matlab som approximerar f (x) med en noggrannhetsordning som är minst två. Du behöver inte bevisa ordningen. Solution: a. Taylor yields f(x + h) = f(x) + hf (x) + O(h 2 ) and hence D(h) f(x + h) f(x) h = O(h).

b. Take a smooth function f where you know the exact derivative and compute q = log( f (x) D(2h) / f (x) D(h) )/ log(2) for various values of h. The closest integer to q is most likely the correct convergence rate. c. Central differences: function D = numder(f, x, h ) D = ( f(x+h) - f(x-h) ) / (2*h);