Tentamen i Beräkningsvetenskap II, 5.0 hp,

Relevanta dokument
Tentamen i Beräkningsvetenskap II, 5.0 hp,

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Tentamen i Beräkningsvetenskap I, DV, 5.0 hp, OBS: Kurskod 1TD394

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Tentamen i Beräkningsvetenskap II, 5.0 hp,

FÖRSÄTTSBLAD TILL TENTAMEN

Tentamen i Beräkningsvetenskap II, 5.0 hp,

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

Ordinära differentialekvationer,

Tentamen i Beräkningsvetenskap II, 5.0 hp,

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

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

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

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

Ordinära differentialekvationer,

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

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

0.31 = f(x 2 ) = b 1 + b 2 (x 3 x 1 ) + b 3 (x 3 x 1 )(x 3 x 2 ) = ( ) + b 3 ( )(

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

Tentamen i Beräkningsvetenskap II, 5.0 hp, Del A

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

Numeriska metoder för ODE: Teori

Numeriska metoder för ODE: Teori

Sammanfattninga av kursens block inför tentan

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

Tentamen i: Beräkningsvetenskap I och KF

Lösningsanvisningar till de icke obligatoriska workoutuppgifterna

Denna föreläsning. DN1212 Numeriska metoder och grundläggande programmering FN Differentialekvationer. Repetition av FN5 (GNM kap 6.

Lösningsanvisningar till vissa av de icke obligatoriska workout-uppgifterna i Beräkningsvetenskap II

Numeriska metoder för ODE: Teori

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

Tentamen i Beräkningsvetenskap I (1TD393)

Sammanfattning (Nummedelen)

Matematik: Beräkningsmatematik (91-97,5 hp)

Omtentamen i DV & TDV

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

TENTAMEN I GRUNDKURS I NUMERISKA METODER - DEL 20

Tentamen del 1 SF1546, , , Numeriska metoder, grundkurs

Kort sammanfattning av Beräkningsvetenskap I. Varning!!! Varning!!!

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

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

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

Tentamen i Teknisk-Vetenskapliga Beräkningar

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

Institutionen för Matematik TENTAMEN I LINJÄR ALGEBRA OCH NUMERISK ANALYS F1, TMA DAG: Torsdag 28 aug 2008 TID:

Denna föreläsning. DN1212 Numeriska metoder och grundläggande programmering FN Runge-Kuttas metoder. Repetition av FN6 (GNM kap 6.

Sammanfattning av föreläsning 11. Modellbygge & Simulering, TSRT62. Föreläsning 12. Simulering. Föreläsning 12. Numeriska metoder och Simulering

Varning!!! Varning!!!

Omtentamen i DV & TDV

TENTAMEN I GRUNDKURS I NUMERISKA METODER - DEL 2

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

Lösningar tentamen i kurs 2D1210,

Lösningsanvisningar till de icke obligatoriska workoutuppgifterna

Lösningsanvisningar till de icke obligatoriska workoutuppgifterna

Fö4: Kondition och approximation. Andrea Alessandro Ruggiu

Lösningsförslag till tentamensskrivningen i Numerisk analys

Föreläsning 5. Approximationsteori

Fel- och störningsanalys

LABORATION cos (3x 2 ) dx I =

SF1544 LABORATION 2 INTEGRATION, MONTE-CARLO OCH BLACK-SCHOLES EKVATION FÖR OPTIONER

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

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

Facit Tentamen i Beräkningsvetenskap I (1TD393 - nya versionen, 5hp!)

y + 1 y + x 1 = 2x 1 z 1 dy = ln z 1 = x 2 + c z 1 = e x2 +c z 1 = Ce x2 z = Ce x Bestäm den allmänna lösningen till differentialekvationen

Institutionen för Matematik TENTAMEN I LINJÄR ALGEBRA OCH NUMERISK ANALYS F1, TMA DAG: Måndag 14 januari 2002 TID:

Exempel ode45 parametrar Miniprojekt 1 Rapport. Problemlösning. Anastasia Kruchinina. Uppsala Universitet. Januari 2016

Laboration 4. Numerisk behandling av integraler och begynnelsevärdesproblem

Linjär Algebra och Numerisk Analys TMA 671, Extraexempel

Kurvanpassning. Kurvanpassning jfr lab. Kurvanpassning jfr lab

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

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

Preliminärt lösningsförslag till del I, v1.0

TANA09 Föreläsning 5. Matrisnormer. Störningsteori för Linjära ekvationssystem. Linjära ekvationssystem

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

Akademin för utbildning, kultur och kommunikation MMA132 Numeriska Metoder Avdelningen för tillämpad matematik Datum: 17 januari 2013

Denna föreläsning. DN1212 Numeriska metoder och grundläggande programmering FN Standardform för randvärdesproblem

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

Interpolation Modellfunktioner som satisfierar givna punkter

Föreläsningen ger en introduktion till differentialekvationer och behandlar stoff från delkapitel 18.1, 18.3 och 7.9 i Adams. 18.

Institutionen för Matematik TENTAMEN I LINJÄR ALGEBRA OCH NUMERISK ANALYS F1, TMA DAG: Fredag 30 augusti 2002 TID:

Fel- och störningsanalys

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

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

OH till Föreläsning 15, Numme K2, God programmeringsteknik

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

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

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

Monte Carlo-metoder. Bild från Monte Carlo

Institutionen för Matematiska Vetenskaper TENTAMEN I LINJÄR ALGEBRA OCH NUMERISK ANALYS F1, TMA

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

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

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

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

Studietips inför kommande tentamen TEN1 inom kursen TNIU23

Laboration 4. Numerisk behandling av integraler och begynnelsevärdesproblem

Transkript:

Uppsala universitet Institutionen för informationsteknologi Beräkningsvetenskap II Tentamen i Beräkningsvetenskap II, 5.0 hp, 2017-05-31 Skrivtid: 14 00 17 00 (OBS! Tre timmars skrivtid!) Hjälpmedel: Bifogat formelblad, Mathematics Handbook eller Physics Handbook och miniräknare. För fullt uppfyllda mål och kriterier på uppgifterna krävs fullständiga räkningar och utförliga resonemang samt motivering till alla svar. Kursmål (förkortade), hur de täcks i uppgifterna och maximalt betyg (med reservation för modifieringar). Fråga nr Nyckelbegrepp Algoritmer Analys Argumentation 1 3(a) 3(b) 2 3 3 3(b)3(c) 3(a) 4 3 5 3(a) 3(b) 6 4 7 4, 5 Del A 1. (a) För att visa att du kan använda Eulers metod (Euler framåt, explicit Euler) ska du tillämpa den på differentialekvationen y 0 (t)+1000 y(t) 3 t =0, t 0, y(0) = 1 och beräkna y(0.2) med steglängd h =0.1. (b) Om man använder Euler bakåt (implicit Euler) för problemet ovan och utför motsvarande beräkning får man ett helt annat resultatet, nämligen y(0.2) = 0.1635 (du behöver inte räkna ut det). Ange vilken av metoderna som sannolikt ger en mer korrekt lösning och motivera (utan någon analys). Motivering krävs för godkänt resultat. 1

2. När man simulerar trafikflöden, t ex i en stad kan man använda stokastiska modeller och Monte Carlosimuleringar. Med hjälp av en stokastisk process kan man då studera hur många fordon som finns vid olika trafikkorsningar en viss tidpunkt, eller hur antalet förändras med tiden. Antag att den stokastiska processen finns implementerad i en Matlabfunktion function f = traffic(f0, T) Funktionen simulerar trafikfödet från tidpunkt 0 till tidpunkt T, givet ett visst antal fordon f0 vid tidpunkt 0. Ett anrop till funktionen ger alltså en simulering. Utparametern f är en vektor som innehåller antalet fordon vid alla korsningar. Om det exempelvis finns 10000 korsningar, så är f en vektor av längd 10000. Nu är man intresserad av att simulera antalet fordon vid korsning nummer 5 (dvs position 5 i vektorn). Skriv en algoritm, eller ett Matlabscript som med Monte Carlo beräknar det förväntade antalet fordon i korsning nummer 5 vid tidpunkten T. 3. Du har hittat en ODE-lösare på internet men du vet inte riktigt vad den har för egenskaper. I kursen har du lärt dig att två viktiga egenskaper är noggrannhet och stabilitet. (a) För att undersöka noggrannhetsordningen tänker du dig att man kanske kan härleda den utifrån kända feluppskattningsformler med steglängd h och 2h. För att kunna jämföra feluppskattningen med verkligt fel gör du ytterligare ett experiment men med mycket mindre steglängd och använder det som referens till den korrekta lösningen. Resultatet visas i nedanstående tabell. Uppskatta den numeriska metodens noggrannhetsordning med hjälp av tabellen. h 0.0001 0.01 0.02 y(10) 0.017384 0.017610 0.018343 (b) I en kommentarrad i koden står det att metoden är anpassad för styva differentialekvationer, harettstortstabilitetsområde. Förklaravadsommenasmed begreppet styva differentialekvationer. (c) När det gäller trunkeringsfelet (diskretiseringfelet) pratar man om lokalt fel och globalt fel. Förklara vad som menas med dessa två begrepp (rita gärna när du förklarar). 4. Differentialekvationen y 0 + 1000 y x =0är linjär men där koefficienten framför y 2+sin(x) varierar med x. Man säger då att den har variabla koefficienter. När man ska lösa detta problem vill man givetvis ha en stabil och korrekt lösning. Din uppgift är att undersöka vilken metod som är lämplig genom att jämföra det största tidssteget som kan användas. Du ska använda någon av klassisk Runge-Kutta (RK4), Heuns metod eller Euler framåt. Stabilitetsområdena har du slagit upp och 2

visas i figuren nedan. Ange vilken metod som är mest lämplig och vilket är det största tidssteget som kan användas. Figur 1: Stabilitetsområden för Euler framåt, Heun och Runge-Kutta. 5. (a) Vid beräkning av väderleksprognoser behövs indata, t ex lufttryck och temperatur, vid jämnt fördelade beräkningspunkter fördelade över Sverige. Man läser av indata på olika platser i landet men tyvärr är inte mätningar exakt på beräkningspunkterna. Man får då interpolera mellan närliggande mätningar. I tabellen nedan ges temperaturen vid vissa mätpunkter x i (enligt ett koordinatsystem som vi inte behöver bry oss om här). Enbart två mätpunkter presenteras här, men det finns givetvis många fler mätpunkter både före och efter de två mätningarna (markerat med ). Man skulle behöva temperaturen vid x =7.2 eftersom beräkningspunkten finns där. Beräkna med hjälp av Newtons interpolationspolynom och de två mätvärdena temperaturen i den punkten. x 4 8 Temp 15.3 20.8 (b) Ange ett problem med beräkningen i uppgift 5(a) och vad man istället skulle kunna använda för att bestämma temperaturen vid beräkningspunkterna. 3

Del B 6. Minsta kvadratanpassning används vanligtvis för att anpassa ett polynom till mätdata men det kan också användas till att approximera en mer komplicerad funktion med ett enklare polynom. En orsak kan t ex vara att man vill ha en funktion som är enkel att integrera eller derivera. Den enklaste ansatsen p(x) =a 0 + a 1 x + a 2 x 2 +...+ a n x n (s k mnemonisk bas), men det finns skäl att använda andra ansatser och en sådan ansats är s k Legendrepolynom: p(x) = NX c n L n (x) =c 0 L 0 (x)+c 1 L 1 (x)+ + c N L N (x), n=0 där L n (x) är ett Legendrepolynom av grad n. DetreförstafunktionernaiLegendrepolynomet ges i tabellen nedan. Den funktionen vi vill approximera ges inte explicit L 0 (x) L 1 (x) L 2 (x) 1 x 1 2 (3x2 1) Tabell 1: Legendre polynom L i (x) för i =0, 1, 2. här, utan vi betecknar den med f(x). Viskaapproximeradenpåx 2 [ 1, 1] med 5 jämnt fördelade kontrollpunkter och med de tre första Legendrepolynomen. (a) Ställ upp normalekvationerna för koefficienterna c 0,c 1 och c 2 för problemet ovan. Det är inte möjligt att beräkna polynomet eftersom f(x) inte är given explicit, men du ska ställa upp normalekvationerna. (b) Ange det viktigaste skälet till att använda andra ansatser än den mnemoniska basen. Här behövs ingen formel eller liknande utan bara en motivering. 7. Inom t ex meteorologi används något som kallas för ensemble-metoder. Idén är att man beräknar många väderleksprognoser och stör begynnelsevärden slumpmässigt, där störningen hämtas ur en normalfördelning. Själva prognosen beräknas genom att man löser ett system av differentialekvationer. Eftersom begynnelsevärdena är uppmätta data (lufttryck, temperatur, densitet, etc) och innehåller fel, kan man genom dessa störningar få en uppfattning hur säker prognosen är; om lösningarna hamnar väl samlat är den säker, medan den är osäker om lösningarna blir väldigt spridda. Man kan alltså här se differentialekvationen som en stokastisk process. Figuren nedan visar principen. Differentialekvationerna vid väderleksprognoser innehåller kraftigt varierande skalor, och är därför kraftigt styva. Det handlar egentligen om partiella differentialekvationer eftersom de beräknas i tre rumsdimensioner, men genom att anta att vinden är känd 4

Figur 2: Idén bakom ensemblemetoder kan vi reducera ekvationerna till ett system av ODE r. Kvar blir termodynamikens 2:a huvudsats c p dt R dp T dt p dt = Q allmänna gaslagen p = RT och kontinuitetsekvationen 1 d dt + f vind(t) =0. Här har vi antagit att vinden är en känd funktion. I ekvationerna är T luftens temperatur, p luftens tryck och luftens densitet, övriga parametrar kan betraktas som konstanter. En omskrivning av ekvationerna ger följande system av ODEr : d dt = f vind(t) dt dt = T (Q R f vind(t))/(c p R) (a) Skriv en algoritm t ex i Matlabliknande kod som utför ensemblemetoden med lösning av de givna differentialekvationerna enligt beskrivningen ovan, och som dessutom hittar medelprognosen, dvs medelvärdet av alla prognoser. Du kan förutsätta att du har samma typ av funktioner tillgängliga som finns inbyggt i Matlab, dvs olika typer av ODE-lösare och slumptalsgeneratorer, och som du alltså kan använda. I initialdata behöver du bara göra störningar av temperaturen. (b) Eftersom differentialekvationerna ska lösas många gånger är det mycket viktigt att beräkningen är effektiv. Redogör för vilka egenskaper hos metoden som är viktiga när det gäller beräkningstid. Använd relevanta nyckelbegrepp. Ange också vilken typ av metod du skulle välja. 5

Uppsala universitet Institutionen för informationsteknologi Avd. för beräkningsvetenskap Blandade formler i Beräkningsvetenskap I och II 1. Flyttal och avrundningsfel Ett flyttal fl(x) representeras enligt fl(x) = ˆm e, ˆm = ±(d 0.d 1 d 2,...,d p 1 ), 0 apple d i <, d 0 6=0, L apple e apple U, där betecknar bas och p precision. Ett flyttalssystem defineras FP(,p,L,U). Maskinepsilon (avrundningsenheten) M = 1 2 sådant att fl(1 + ) > 1. 1 p och kan defineras som det minsta tal 2. Linjära och ickelinjära ekvationer f(x Newton-Raphsons metod: x k+1 = x k ) k f 0 (x k ) För system: x k+1 = x k [F 0 ] 1 F (x k ),därx k och F (x k ) är vektorer och F 0 är Jacobianen. Fixpunktsiteration för x = g(x): x k+1 = g(x k ) Konvergenskvot, konvergenshastighet x k+1 x lim = C, k!1 x k x r där C är en konstant, och r anger konvergenshastigheten (r =1betyder t ex linjär konvergens). Allmän feluppskattning x k x? apple f(x k) min f 0 (x) Konditionstalet cond(a) =kak ka 1 k mäter känsligheten för störningar hos ekvationssystemet Ax = b. Det gäller att k xk kxk apple cond(a)k bk kbk, där x = x ˆx och b = b ˆb. Normer (vektor- respektive matrisnorm) k x k 2 = p x 1 2 +...+ x n 2 k x k 1 = P i x i k x k 1 =max i { x i } k A k 1 = max j ( P i a ij ) k A k 1 = max i ( P j a ij )

3. Approximation Newtons interpolationspolynom p(x) då vi har n punkter (x 1,y 1 ),...(x n,y n ) bygger på ansatsen p(x) =a 0 + a 1 (x x 1 )+a 2 (x x 1 )(x x 2 )+...+ a n 1 (x x 1 ) (x x n 1 ) Minstakvadratapproximationen till punktmängden (x 1,y 1 ), (x 2,y 2 ),...(x m,y m ) med ett n:egradspolynom p(x) =a 0 1+a 1 x+...+a n x n kan formuleras som ett överbestämt ekvationssystem Ax = b, dära är m n, m>n. Minstakvadratlösningen kan fås ur normalekvationerna A T Ax = A T b 4. Ordinära differentialekvationer Eulers metod (explicit Euler): y k+1 = y k + hf(x k,y k ),n.o.1 Implicit Euler (Euler bakåt): y k+1 = y k + hf(x k+1,y k+1 ),n.o.1 Trapetsmetoden: y k+1 = y k + h 2 (f(x k,y k )+f(x k+1,y k+1 )), n.o.=2 Heuns metod (tillhör gruppen Runge-Kuttametoder): 8 < : K 1 = f(x k,y k ) K 2 = f(x k+1,y k + hk 1 ) y k+1 = y k + h 2 (K 1 + K 2 ) n.o. = 2 Klassisk Runge-Kutta: 8 K 1 = f(x k,y k ) >< K 2 = f(x k + h,y 2 k + hk 2 1) K 3 = f(x k + h,y 2 k + hk 2 2) K >: 4 = f(x k+1,y k + hk 3 ) y k+1 = y k + h(k 6 1 +2K 2 +2K 3 + K 4 ) n.o. = 4 5. Numerisk integration Trapetsformeln Beräkning på ett delintervall med steglängd h k = x k+1 x k Z xk+1 x k f(x) dx = h k 2 [f(x k)+f(x k+1 )]

Sammansatt formel på helt intervall [a b], dåekvidistantsteglängdh = h k : Z b a f(x) dx h 2 [f(x 0)+2f(x 1 )+...+2f(x N 1 )+f(x N )] Diskretiseringsfelet R på helt intervall [a b], dvs R b f(x) dx = T (h)+r är a R = (b a) h 2 f 00 ( ). 12 Funktionsfelet (övre gräns): (b a), där är en övre gräns för absoluta felet i varje funktionsberäkning. Simpsons formel Beräkning på ett dubbelintervall med steglängd h Z xk+2 f(x) dx = h x k 3 [f(x k)+4f(x k+1 )+f(x k+2 )] Sammansatt formel på helt intervall [a b], dåekvidistantsteglängdh = h k : Z b a f(x) dx h 3 [f(x 0)+4f(x 1 )+2f(x 2 )+4f(x 3 )+...+2f(x N 2 )+4f(x N 1 )+f(x N )] Diskretiseringsfelet R på helt intervall [a b], dvs R b f(x) dx = S(h)+R är a R = (b a) 180 h4 f 0000 ( ). Funktionsfelet: Samma som för trapetsformeln, se ovan. 6. Richardsonextrapolation Om F 1 (h) och F 1 (2h) är två beräkningar (t ex ett steg i en beräkning av en integral eller en ODE) med en metod av noggrannhetsordning p med steglängd h respektive dubbel steglängd 2h så är R(h) = F 1(h) F 1 (2h) 2 p 1 en uppskattning av den ledande termen i trunkeringsfelet i F 1 (h). Kanävenanvändasför att förbättra noggrannheten i F 1 (h) genom F (h) =F 1 (h)+ F 1(h) F 1 (2h). 2 p 1

7. Numerisk derivering För numerisk derivering används s k differensformler f 0 (x) f 0 (x) f(x+h) h f 0 (x) h f 00 (x) f(x+h) f(x h) 2h f(x) f(x) f(x h) f(x+h) 2f(x)+f(x h) h 2 8. Monte Carlometoder, centraldifferens, framåtdifferens, bakåtdifferens Den övergripande strukturen för Monte Carlosimuleringar är Indata N (antal försök) for i = 1:N Utför en stokastisk simulering resultat(i) = resultatet av simuleringen end slutresultat genom någon statistisk beräkning, t ex medelvärdet mean(resultat) Noggrannhetsordning för Monte carlometoder är O( 1 p N ),därn är antal samplingar. Kumultativ fördelningsfunktion: F (x) = R x1 f X(y)dy Normalfördelning f X (x) = 1 p 2 e (x µ)2 2 2. Aritmetiskt medelvärde baserat på N realisationer x i av slumpvariablen X: µ = 1 N P N i=1 x i. 9. Taylorutveckling Taylorutveckling av y(x k + h) kring x k : y(x k + h) =y(x k )+hy 0 (x k )+ h2 2! y00 (x k )+ h3 3! y000 (x k )+O(h 4 )