Föreläsning 8, Numme i2,

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

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

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

OH till Föreläsning 14, Numme I2, God programmeringsteknik

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

Differentialekvationer begynnelsevärdesproblem

OH till Föreläsning 12, NumMet O1, God programmeringsteknik

Numeriska metoder för ODE: Teori

OH till Föreläsning 5, Numme K2, Läsa mellan raderna. Allmän polynom-interpolation, S Ch 3.1.0

Sammanfattning (Nummedelen)

Numeriska metoder för ODE: Teori

Ordinära differentialekvationer,

TENTAMEN I GRUNDKURS I NUMERISKA METODER - DEL 20

Ordinära differentialekvationer,

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

Intervallhalveringsmetoden, GKN sid 73. Sekantmetoden, GKN sid 79

Numeriska metoder för ODE: Teori

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

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

Laboration 3. Funktioner, vektorer, integraler och felskattning

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

Laboration 3. Funktioner, vektorer, integraler och felskattning

OH till Föreläsning 5, Numme K2, GNM Kap 4-4.4A / GKN Kap 4.1A,(D),E Interpolation. Läsa mellan raderna. Allmän polynom-interpolation

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

1. Bestäm definitionsmängden och värdemängden till funktionen f(x,y) = 1 2x 2 3y 2. Skissera definitionsmängden, nivålinjerna och grafen till f.

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

Laboration 4. Numerisk behandling av integraler och begynnelsevärdesproblem

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Laboration 4. Numerisk behandling av integraler och begynnelsevärdesproblem

Interpolation Modellfunktioner som satisfierar givna punkter

Tentamen i Beräkningsvetenskap II, 5.0 hp,

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

Partiella differentialekvationer av första ordningen

Kap Implicit givna funktioner

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Laboration 6. Ordinära differentialekvationer och glesa system

André Jaun, HT-2005 Anteckningar från lektioner i Numeriska Metoder fys-åk2. (Sid 93) Trapetsregeln Adaptiva metoder ODE-metod Förbehandlande metoder

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

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

1. Beräkna hastigheten, farten och accelerationen vid tiden t för en partikel vars rörelse beskrivs av r(t) = (2 sin t + cos t, 2 cos t sin t, 2t).

Tentamen del 1 SF1546, , , Numeriska metoder, grundkurs

Omtentamen i DV & TDV

Repetition, Matematik 2 för lärare. Ï x + 2y - 3z = 1 Ô Ì 3x - y + 2z = a Ô Á. . Beräkna ABT. Beräkna (AB) T

Tentamen i Beräkningsvetenskap II, 5.0 hp,

4 Numerisk integration och av differentialekvationer

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

TATA42: Föreläsning 7 Differentialekvationer av första ordningen och integralekvationer

Tentamen i Beräkningsvetenskap II, 5.0 hp,

TANA19 NUMERISKA METODER

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

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

Laboration 1, M0039M, VT16

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

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

Beräkning av integraler

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

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

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Uppgifter inför KS4 den 11 april Matematik II för CL. SF1613.

SF1626 Flervariabelanalys

a = a a a a a a ± ± ± ±500

LABORATION cos (3x 2 ) dx I =

Tentamen i Beräkningsvetenskap II, 5.0 hp,

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

Datorövning 2 med Maple, vt

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

Lösningsförslag till tentamensskrivningen i Numerisk analys

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

x ( f u 2y + f v 2x) xy = 24 och C = f

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Matlab övningsuppgifter

LÖSNINGSFÖRSLAG TILL TENTAMEN 2 SF1664

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

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Optimering med bivillkor

, x > 0. = sinx. Integrera map x : x 3 y = cosx + C. 1 cosx x 3. = kn där k är. k = 1 22 ln 1 2 = 1 22 ln2, N(t) = N 0 e t. 2 t 32 N 1.

Laboration 2 Ordinära differentialekvationer

Repetitionsfrågor: 5DV154 Tema 4: Förbränningsstrategier för raketer modellerade som begynnelsevärdesproblem

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

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

Typuppgifter på TATA69

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

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Uppsala Universitet Matematiska Institutionen Bo Styf. Sammanfattning av föreläsningarna 11-14, 16/11-28/

f (a) sin

u(x) + xv(x) = 0 2u(x) + 3xv(x) = sin(x) xxx egentliga uppgifter xxx 1. Sök alla lösningar till den homogena differentialekvationen

Kapitel 8. Lösning av ordinära differentialekvationer

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

Föreläsning 10, Numme K2, GNM Kap 6 Integraler & GNM 8:3C Richardsonextrapolation

TMV151/181 Matematisk analys i en variabel M/Td, 2013 MATLAB NUMERISK LÖSNING AV ORDINÄRA DIFFERENTIALEKVATIONER

Lösningar tentamen i kurs 2D1210,

1 Koordinattransformationer

Konsten att lösa icke-linjära ekvationssystem

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

NUMPROG, 2D1212, vt Föreläsning 9, Numme-delen. Stabilitet vid numerisk behandling av diffekvationer Linjära och icke-linjära ekvationssystem

Institutionen för Matematik, KTH Torbjörn Kolsrud

har ekvation (2, 3, 4) (x 1, y 1, z 1) = 0, eller 2x + 3y + 4z = 9. b) Vi söker P 1 = F (1, 1, 1) + F (1, 1, 1) (x 1, y 1, z 1) = 2x + 3y + 4z.

Välkomna till Numme och MATLAB, 9 hp, för Materialdesign och Energi&Miljö, årskurs 2

Institutionen för Matematik, KTH Torbjörn Kolsrud

SF1633, Differentialekvationer I Tentamen, torsdagen den 7 januari Lösningsförslag. Del I

Transkript:

SF545, Numeriska Metoder, I, HT0, Ninni Carlsund Levin, Föreläsning 8 Föreläsning 8, Numme i, 0 GKN Kap - Differentialekvationer GNM kap 7-7), S Ch Dagens termer Riktningsfält Standardform Begynnelsevärdesproblem Lokal linearisering Eulers metod Grafisk tolkning av Euler Runge-Kuttas metod Richardson-extrapolation Metodens ordning DE:s ordning System av DE av första ordningen Lokalt trunkeringsfel Globalt trunkeringsfel Adaptiv steglängd odeul odrk ode3 ode45 Standardform, GKN sid 0 GNM sid 7)3), S p8: y = fx,y) ya) = c Exempel : Skatta y0) då y = +x y och y0) = y Allmän idé yx i ) y i och n+ = y n +h y n} x n+ = x n +h Eulers metod GKN sid GNM sid 7)9, Sp83 yn+ = y n +h fx n,y n ) x n+ = x n +h I exempel har vi y = fx,y) = +x y Först provar jag h = 0 vilket innebär steg: y0 = x 0 = 0 y = y 0 +h+x 0 y 0 } = +0+0 } = x = x 0 +h = 0+0 = 0 Sedan provar jag h = 0 vilket innebär y0 = x 0 = 0 steg: y = y 0 +h+x 0 y 0 } = +0+0 } = x = x 0 +h = 0+0 = 0 y = y +h+x y } = +0+0 } = 0 x = x +h = 0+0 = 0 Sedan provar jag h = 005 vilket innebär steg: y0 = y = y 0 +h+x 0 y 0 } = y = y +h+x y } = x 0 = 0 = +005+0 } = = +005+005 } = 005 x = x 0 +h = 0+005 = 005 x = x +h = 005+005 = 00 y 3 = y +h+x y } = y 4 = y 3 +h+x 3 y 3 } = = +005+00 005}= 007375 = 04505 x 3 = x +h = 00+005 = 05 x 4 = x 3 +h = 05+005 = 00 Valt värde för y0) blir 04505 Jag skattar E trunk = 04505 0 = 0004505 Inga mellanresultatharavrundatssåe ber = 0 Jagsvararfyradecimaler, E pres = 045 04505 = 0000005 Ger felgränsen 0004505 + 0000005 = 000455 och slutsvaret y0) = 045 ± 0004 Trunkeringsfelet i Eulers metod är c h+c h + Med halverat steg skall alltså E trunk avta en faktor : y0,h = 0) y0,h = 0) y0,h = 0) y0,h = 005) = 0) =, 0 04505) OK! Vi tror på vår skattning! y0) fyra korrekta decimaler är 087 som ju ligger i det angivna intervallet!) Med Richardson-extrapolation på Euler-siffrorna ovan får vi 090 ± 0000, se tabell på nästnästa sida)

SF545, Numeriska Metoder, I, HT0, Ninni Carlsund Levin, Föreläsning 8 Metodenär av ordning pomyx;h) yx) ch p därcinteberoravhmenvälavx,y ochf)gkns,sp85) Euler är av ordning E trunk avtar faktor = när steget halveras Runge-Kutta är av ordning 4 E trunk avtar faktor 4 = när steget halveras Runge Kuttas metod GKN s 9 GNM 7)4 S p3 y n+ = y n + k +k +k 3 +k 4 x n+ = x n +h där k = h fx n,y n ) k = h fx n + h,y n + k ) k 3 = h fx n + h,y n + k ) k 4 = h fx n +h,y n +k 3 ) Trots att den ser jobbigare ut så krävs totalt mindre arbete RK än Euler om man önskar en viss noggrannhet Runge-Kuttas metod steget h = 0 på exempel ger x = 0 och y0) y och y0 = x 0 = 0 k = h f x 0,y 0 ) = h+x 0 y 0 } = 0+0 } = 0 k = h f x 0 + h,y 0 + k ) = h + x 0 + h ) = 0+0 } = 00 k 3 = h f x 0 + h,y 0 + k ) = h + x 0 + h ) = 0+0 0} = 008 k 4 = h f x 0 +h,y 0 +k 3 ) = h+x 0 +h) y 0 +k 3 )} = 0+0 08}= 0034 y = y 0 + k +k +k 3 +k 4 = 08733333 x = x 0 +h = 0+0 = 0 Runge-Kuttas metod steget h = 0 på exempel ger 0 = x och y0) y vi startar förstås x 0 = 0 och y 0 = ) k = h f x 0,y 0 ) = h+x 0 y 0 } = 0+0 } = 0 k = h f x 0 + h,y 0 + k ) = h + x 0 + h ) = 0+005 } = 0005 k 3 = h f x 0 + h,y 0 + k ) = h + x 0 + h ) = 0+005 005}= 000475 k 4 = h f x 0 +h,y 0 +k 3 ) = h+x 0 +h) y 0 +k 3 )} = 0+0 00475}= 000955 y = y 0 + k +k +k 3 +k 4 = 0048375 x = x 0 +h = 0+0 = 0 k = h f x,y ) = h+x y } = 0+0 0048375}= 000955 k = h f x + h,y + k ) = h + x + h ) y + k )} = 0+05 0095955}= 004040438 k 3 = h f x + h,y + k ) = h + x + h ) y + k )} = 0+05 085779}= 003848 k 4 = h f x +h,y +k 3 ) = h+x +h) y +k 3 )} = 0+00 08578}= 0083487 y = y + k +k +k 3 +k 4 = 0873090 x = x +h = 0+0 = 0

SF545, Numeriska Metoder, I, HT0, Ninni Carlsund Levin, Föreläsning 8 Den rimlighetskontroll man kan göra är att k och k 3 bör vara någorlunda lika och att skillnaden mellan k och k är ungefär som skillnaden mellan k 3 och k 4 Vi kan redan nu skatta y0)-värdet till 0873 fem säkra decimaler, ty E trunk = 43 0 och E pres = 90 0 7 och E ber 0 9 avr till 9 decim) vilket ger E trunk +E pres +E ber < 05 0 5 ) Eftersom både Euler och RK arbetar konstant steg och har en trunkeringsfelutveckling av typen E trunk = c h p + c h p+ + c 3 h p+ + så kan man förbättra resultatet ytterligare Richardsonextrapolation n y Eul ŷ Eul /3 ŷ Eul 000000000 - - - - - 00000000 000000000 00000000 - - - 4 045050 00045050 090500-0000987500 -0000397 0883333 8 05804 00045554 08797358-000054 -00000774 087544 079938 000047577 0874958-0000050400 -00000800 0873058 3 08705 00005784 08734749-0000009 -0000004070 0873079 n h y RK / ŷ RK 0 08733333 - - - 0 0873090-00000043 -0000000 08730739 4 005 087307-000000039 -0000000009 08730753 8 005 08730754-0000000008 -000000000 08730753 Vi ser att även om man tar hänsyn till att varje steg i RK är fyra gånger så jobbigt som ett Euler-steg så lönar sig Runge-Kutta RK-värdet n = 4 motsvarar i arbete Eulervärdet n =, men RK-värdet är mycket bättre Inte ens ett stegs Richardson-extrapolation hjälper tvärtom) function yprim=dydxx,y); x0=0; xslut=0; y0=; n=8; yprim=+x-y; h=xslut-x0)/n; x=x0; y=y0; xx=x0; yy=y0; for i=:n; yprim=dydxx,y); y=y+h*yprim; x0=0; xslut=0; y0=; n=8; x=x+h; [xx,yy]=odeul dydx,x0,xslut,y0,n); xx=[xx;x]; yy=[yy;y]; m=lengthxx); end; yslut=yym) yslut=y plotxx,yy) plotxx,yy); yvek=[]; for n=[ 4 8 3]; euler; yvek=[yvek; yslut]; end; yvek % n bortkomm yvek=[]; n=; for j=:; euler; yvek=[yvek; yslut]; n=*n; end; yvek % n bortkomm x0=0; xslut=0; y0=; tolval=odeset RelTol,e-); tol=e-; [xut,yut]=ode45 dydx,[x0,xslut],y0,tolval); [xut,yut]=ode45 dydx,x0,xslut,y0,tol); n=lengthxut); yslut=yutn); plotxut,yut) tolval=odeset RelTol,e-9); tol=tol/000; [xut,yut]=ode45 dydx,[x0,xslut],y0,tolval); [xut,yut]=ode45 dydx,x0,xslut,y0,tol); m=lengthxut); yslut=yutm); if m~=n; etrunk=absyslut-yslut),end; valt=yslut 3

SF545, Numeriska Metoder, I, HT0, Ninni Carlsund Levin, Föreläsning 8 System av första ordningens differentialekvationer GKN sid 0 y = fx,y,z) ya) = c Standardform för system, S p 303 : z = gx,y,z) za) = d Exempel y = 3x yz y05) = z sökt z3) = yx z05) = 3 Eulers metod GNM sid 7)3,S p 303 y n+ = y n +h fx n,y n,z n ) z n+ = z n +h gx n,y n,z n ) x n+ = x n +h y 0 = c z 0 = d function uprim=dudxx,u); x0= y0= z0= xslut= n= x0= y0= z0= xslut= uprim=[3*x-u)*u) h=xslut-x0)/n; h=xslut-x0)/n; *u)*x]; x=x0; y=y0; z=z0; x=x0; u0=[y0;z0]; u=u0; xx=x0; yy=y0; zz=z0; xx=x0; uu=u0 ; for i=:n; for i=:n; x0= y0= z0= xslut= n= uprim=dudxx,[y z]); uprim=dudxx,u); u0=[y0 z0]; x=x+h; x=x+h; [xut,uut]=odeul dudx,x0,xslut,u0,n); y=y+h*uprim); u=u+h*uprim; zut=uut:,); z=z+h*uprim); xx=[xx;x];uu=[uu;u ]; plotxut,zut) xx=[xx;x];yy=[yy;y];zz=[zz;z]; end; end; zz=uu:,); plotxx,zz) plotxx,zz) Trunkeringsfelet skattas som vanligt genom en jämförelse motsvarande beräkning dubbla steglängden Regelbundenheten i trunkeringsfelet skattas som vanligt och Richardsonextrapolering fungerar utmärkt eftersom både Euler och Runge-Kutta är metoder konstant steg och har ett trunkeringsfel av typen E trunk = c h p +c h p+ + Man brukar föra in alla beroende variabler i en vektor, vilket ger oss standardformen för system: Inför u = y u = z u = y} = y = 3x yz = 3x u u u = z} = z = yx = u x dvs u = 3x u u u = u x Standardform för system, GKN sid 0/GNM sid 7)3/S p303 : ū = fx,ū) ūa) = c Eulers metod GNM sid 7)3/S p 304 ūn+ = ū n +h fx n,ū n ) x n+ = x n +h ū0 = c I Exempel ovan blir således x 0 = 05,y 0 = och z 0 = 3 alternativt x 0 = 05,u 0 = och u 0 = 3 Alla högre ordningens DE kan skrivas om till ett system av första ordningens DE GKNs0/GNM 7)4/S p 304 u = y u = y} = y = u y = 5xy e y +x cos4y ) inför u = y u = y } = y = u 3 u 3 = y u 3 = y } = y = 5xu e u +x cos4u 3 ) 4

SF545, Numeriska Metoder, I, HT0, Ninni Carlsund Levin, Föreläsning 8 Samma teknik gäller vid system av högre ordning: u = y u = y} = y = u y = 8 yz +x y u = y u = y } = y = u 3 y = z inför u 3 = y u 3 = y } = y = 8 yz +x y = 8 u u 4 +x u xz u 4 = z u u 5 = z 4 = z} = z = u 5 u 5 = z } = z = xzy = xu 4 u 3 Om exakta lösningen är känslig för små störningar i indata är problemet illakonditionerat eller instabilt Om den numeriska metoden ger stora ändringar i lösningen vid små störningar är metoden instabil kan gälla även om själva DE är stabil) c 0 Ninni Carlsund Levin 5