F BE & Page of 5 Ordiära differetialevatioer, PP CH 6, forts. Vi ser u på de valigaste lassera av steg-metoder, explicita Ruge-Kutta-metoder oc Implicita flerstegs-metoder. MATLAB-metodera är (frå MATLAB elp: fler ä vi beöver! me är är de Default: ode5 (Dormad-Price ode5 (Dormad-Price Computes te model's state at te ext time step usig a explicit Ruge-Kutta (,5 formula (te Dormad-Price pair for umerical itegratio. ode5 is a oe-step solver, ad terefore ol eeds te solutio at te precedig time poit. Use ode5 as a first tr for most problems. ode (Bogaci-Sampie Computes te model's state at te ext time step usig a explicit Ruge-Kutta (, formula (te Bogaci-Sampie pair for umerical itegratio. ode is a oe-step solver, ad terefore ol eeds te solutio at te precedig time poit. ode is more efficiet ta ode5 at crude toleraces ad i te presece of mild stiffess. ode (Adams ode5s (stiff/ndf Computes te model's state at te ext time step usig a variable-order Adams-Basfort-Moulto PECE umerical itegratio tecique. ode is a multistep solver, ad tus geerall eeds te solutios at several precedig time poits to compute te curret solutio. ode ca be more efficiet ta ode5 at striget toleraces. Computes te model's state at te ext time step usig variable-order umerical differetiatio formulas (NDFs. Tese are related to, but more efficiet ta te bacard differetiatio formulas (BDFs, also o as Gear's metod. ode5s is a multistep solver, ad tus geerall eeds te solutios at several precedig time poits to compute te curret solutio. ode5s is efficiet for stiff problems. Tr tis solver if ode5 fails or is iefficiet. odes (stiff/mod. Rosebroc Computes te model's state at te ext time step usig a modified Rosebroc formula of order. odes is a oe-step solver, ad terefore ol eeds te solutio at te precedig time poit. odes is more efficiet ta ode5s at crude toleraces, ad ca solve stiff problems for ic ode5s is ieffective. odet (Mod. stiff/trapeoidal Computes te model's state at te ext time step usig a implemetatio of te trapeoidal rule it a "free" iterpolat. odet is a oe-step solver, ad terefore ol eeds te solutio at te precedig time poit. Use odet if te problem is ol moderatel stiff ad ou eed a solutio it o umerical dampig. odetb (stiff/tr-bdf Computes te model's state at te ext time step usig a multistep implemetatio of TR-BDF, a implicit Ruge-Kutta formula it a trapeoidal rule first stage, ad a secod stage cosistig of a bacard differetiatio formula of order to. B costructio, te same iteratio matrix is used i evaluatig bot stages. odetb is more efficiet ta ode5s at crude toleraces, ad ca solve stiff problems for ic ode5s is ieffective.
F BE & Page of 5 Explicita Ruge-Kutta-metoder E S-stage Ruge-Kutta metod aväder S evaluerigar av f(x, i ett steg. Ju större S dess ögre oggraetsordig är möjlig. Med S = a ma få e metod med ordig för =,, oc me ögre ordig räver äu större S. Valiga metoder: Heu stage, ordig = f(x, = f(x+, +; (x+ = (x + / ( + ; Klassis RK -stage, ordig = f(x, = f(x+/, +/; = f(x+/, +/; = f(x+, +; (x+ = (x + /6 ( + + + ; Exempel Kotrollera RK på test-evatioe = = Sätt a = = a (+/ = a (+/a; = a (+/ = a (+/ a(+/a = a(+ = a (+a (+/ a(+/a (x+ = + /6 (a+ a(+/a + a (+/ a(+/a + a(+ a (+/ a(+/a (x+/(x = (+a+a /+a /6+a / = e a - / a 5 + O(a 6 ODE: I ode ser vi: A = [/, /, ]; B = [ / /9 / / /9 ]; E = [-5/7; /; /9; -/8]; = f(x, = f(x + a, + b = f(x + a, + b (x+ = (x + b + b + b Ordig? testa på =, = a, etc, = a = a( + b a = a( + b a = a( + b a( + b a (x+/(x = + b a + b a(+b a + b a( + b a ( + b a = + a(b + b + b + a (b b + b b + a b b b = + a + a (/ / + /9 / + a /9 / / = + a + a / + a /6 = e a + O(a således S =, p =
F BE & Page of 5 Trapetsregel (x+-(x = / (f(x, + f(x+,+, oggraetsordig oc Baåteuler (x+-(x = f(x+,+, oggraetsordig Se PP p. Vi provar på exemplet d A,, A, ( dt a där vi vet att för a = - blir lösige = - = e -t. Då blir Trapetsmet ode :( Baåteuler:( I A I A ( I A : B Beul :, B B Beul Trap, B ( I A Trap ( I A ( I A Egevärdea för A är - oc - så (t = Ce -t + De -t. Om ite a väljs precis = - blir C ite oll oc lösige visar e sabb trasiet, som sulle räva steglägder O(/ för oggraet. Vi provar för a = med =. oc Baåteuler oc Trapets:.5 Beul Egevärde B:.99.999 prim.5 Trap Egevärde B:.995 -.66667 prim -.5 -.5 - -.5 -...6.8 -...6.8 (observera de olia salora på -axel Baåteuler ger e lösig som är orret efter ett par steg (säg. me trapetsmetode ger stara avligade oscillatioer i i börja. Orsae ses i egevärdea till matrise B: för trapetsmetode är ett egevärde ugefär -/ oc lösige ar i e ompoet D(-/ Numeris tillämpig på IVP Vi fic ova att RK vid tillämpig på = ger x x x P(, P( x x 6 oc vi frågar oss: För vila q = i omplexa plaet blir P(q <=? För dessa q blir de umerisa lösige begräsad för alla oc det ger upplsig om ur litet ma måste aväda för umeris stabilitet. Området där P(q <= allas därför för stabilitets-området. Eftersom egevärde för reella matriser i allmäet är omplexa måste vi ut i omplexa plaet. Gräse för området ges av P(q = oc origo ligger alltså på gräse. Det fis tterligare e särig mella real-axel oc gräse, där P = -. Det blir vid x = -.78. Särig med imagiäraxel q = i ser vid, t P( i s s s s s s s( 6 s s ( s ( : s s s 6 Därmed ar vi fra puter på gräse. Me ur ser reste ut? i(,( 6 s ( 6, s ; 8 7 s
F BE & Page of 5 Låt oss besriva gräs-urva som parameter-urva. På gäller P(q( = e i, e reell viel. Vi deriverar P m a p : i dq dq ie P i ( q ie, q( : d d q q / q / 6 oc provar om MATLABs ode larar omplexa tal. RK P = Jomevisst: f = @(fi,q i*exp(i*fi/(+q*(+/*q*(+q/; [fiout,qout]=ode(f,[ 8*pi],; plot(qout,'.' oc tillsggad plot ger bilde t. Kurva sluter sig ite - orret, av samma aledig som Euler framåt gjorde e spiral av e ösad cirel: - qout(ed =.8 -.i Strägare toleras ger midre opp vid q =. - ger - qout(ed =.988e-9-7.5e-i efter 86 steg. Ma oterar att det fis puter i ögra alvplaet, dvs. med Re >, som ger avtagade umeris lösig, me bara för stora steglägder = O(. Gräsurva ar lodrät taget i origo (Visa! oc för tillräcligt små steglägder blir det rätt. När vi u åller på så visar vi figure för ODE själv. De ar (som vi räade ut ova efter smgtitt i programode x x x P( x x, P x 6 så det är bara att ta bort e term frå ode för RK. Övig:. Det beövdes (,8 för RK me bara (,6 för ODE. Varför?. Visa, att figurera ser liadaa ut för alla -stage ordig- oc -stage ordig- metoder. - - - ODE: P = Im Im Re Re Som avslutig på dea iledig visar vi att Eulers metod overgerar mot lösige till iitialvärdesproblemet d f (t,, ( c dt Vi förutsätter, - - -5 - - - -. Lipscit (L-otiuitet os f: f(t, - f(t, <= L -. Att de exata lösiges adraderivata är begräsad, (t < K i (,T. Evidistata steg, t =, =,,. att vi ger exat startvärde, = c. Det första villoret är ödvädigt för etdig lösig, det tredje är oödigt me uderlättar formelsrivige. Det adra räver lite mer av f ä det första, oc a försvagas. Det fjärde a försvagas. Då får vi umeris lösig som approximatio till (t oc vi ar (se figure ( ( f (, ( / d, d '( t r f (, K
F BE & Page 5 of 5 Kalla globala felet (t för E. Subtraera evatioera, så får vi E E ( f(, ( f(, / d oc uppsattige E E E E f (, ( f (, / ( L ( L E L / K Här a vi jämföra med reursios-formel (C = +L, B = / K u Cu B u som ar lösige B u ( C B( C C... C C L K K K Lt E (( L (( L L ( e då L, L L L oc därmed är det lart att felet går mot oll som första potese av steglägde. d ( E (t + (+LE + O( + r E + t