Numerical Methods Contents - SAM
Numerical Methods Contents - SAM
Numerical Methods Contents - SAM
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
8 1/5 3/40 44/45 19372/6561 9017/3168 35/384<br />
9 0 9/40 −56/15 −25360/2187 −355/33 0<br />
10 0 0 32/9 64448/6561 46732/5247<br />
500/1113<br />
11 0 0 0 −212/729 49/176 125/192<br />
12 0 0 0 0 −5103/18656<br />
−2187/6784<br />
13 0 0 0 0 0 11/84<br />
14 0 0 0 0 0 0<br />
15 ] ;<br />
16 E = [71/57600; 0 ; −71/16695; 71/1920; −17253/339200; 22/525; −1/40];<br />
17 % . (choice of stepsize and main loop omitted)<br />
18 % ADVANCING ONE STEP.<br />
19 hA = h ∗ A ;<br />
20 hB = h ∗ B ;<br />
21 f ( : , 2 ) = feval ( odeFcn , t +hA ( 1 ) , y+ f ∗hB ( : , 1 ) , odeArgs { : } ) ;<br />
22 f ( : , 3 ) = feval ( odeFcn , t +hA ( 2 ) , y+ f ∗hB ( : , 2 ) , odeArgs { : } ) ;<br />
23 f ( : , 4 ) = feval ( odeFcn , t +hA ( 3 ) , y+ f ∗hB ( : , 3 ) , odeArgs { : } ) ;<br />
24 f ( : , 5 ) = feval ( odeFcn , t +hA ( 4 ) , y+ f ∗hB ( : , 4 ) , odeArgs { : } ) ;<br />
25 f ( : , 6 ) = feval ( odeFcn , t +hA ( 5 ) , y+ f ∗hB ( : , 5 ) , odeArgs { : } ) ;<br />
Ôº ½½º<br />
29 h = tnew − t ; % Purify h.<br />
26<br />
27 tnew = t + hA ( 6 ) ;<br />
28 i f done , tnew = t f i n a l ; end % Hit end point exactly.<br />
Special case of oscillating Zhabotinski-Belousov reaction [19]:<br />
BrO − 3 + Br− ↦→ HBrO 2<br />
HBrO 2 + Br − ↦→ Org<br />
BrO − 3 + HBrO 2 ↦→ 2 HBrO 2 + Ce(IV)<br />
(11.5.1)<br />
2 HBrO 2 ↦→ Org<br />
Ce(IV) ↦→ Br −<br />
y 1 := c(BrO − 3 ): ẏ 1 = −k 1 y 1 y 2 − k 3 y 1 y 3 ,<br />
y 2 := c(Br − ): ẏ 2 = −k 1 y 1 y 2 − k 2 y 2 y 3 + k 5 y 5 ,<br />
y 3 := c(HBrO 2 ): ẏ 3 = k 1 y 1 y 2 − k 2 y 2 y 3 + k 3 y 1 y 3 − 2k 4 y3 2 ,<br />
y 4 := c(Org): ẏ 4 = k 2 y 2 y 3 + k 4 y3 2 ,<br />
y 5 := c(Ce(IV)): ẏ 5 = k 3 y 1 y 3 − k 5 y 5 ,<br />
with (non-dimensionalized) reaction constants:<br />
k 1 = 1.34 , k 2 = 1.6 · 10 9 , k 3 = 8.0 · 10 3 , k 4 = 4.0 · 10 7 , k 5 = 1.0 .<br />
periodic chemical reaction ➽ Video 1, Video 2<br />
(11.5.2)<br />
MATLAB simulation with initial state y 1 (0) = 0.06, y 2 (0) = 0.33 · 10 −6 , y 3 (0) = 0.501 · 10 −10 ,<br />
y 4 (0) = 0.03, y 5 (0) = 0.24 · 10 −7 :<br />
Ôº½ ½½º<br />
30 ynew = y + f ∗hB ( : , 6 ) ;<br />
31 % . (stepsize control, see Sect. 11.5 dropped<br />
10 −3 Concentration of Br −<br />
10 −4<br />
10 −6<br />
△<br />
10 −5<br />
10 −7<br />
Example 11.4.7 (<strong>Numerical</strong> integration of logistic ODE in MATLAB).<br />
10 −6<br />
MATLAB-CODE: usage of ode45<br />
fn = @(t,y) 5*y*(1-y);<br />
[t,y] = ode45(fn,[0 1.5],y0);<br />
plot(t,y,’r-’);<br />
MATLAB-integrator: ode45():<br />
Handle passing r.h.s.<br />
initial and final time<br />
initial state y 0<br />
✸<br />
c(t)<br />
10 −7<br />
10 −8<br />
10 −9<br />
10 −10<br />
0 20 40 60 80 100 120 140 160 180 200<br />
Fig. 144<br />
t<br />
c(t)<br />
10 −5 t<br />
10 −8<br />
10 −9<br />
10 −10<br />
10 −11<br />
Concentration of HBrO 2<br />
Fig. 145<br />
0 20 40 60 80 100 120 140 160 180 200<br />
We observe a strongly non-uniform behavior of the solution in time.<br />
11.5 Stepsize control<br />
Example 11.5.1 (Oregonator reaction).<br />
Ôº¼ ½½º<br />
This is very common with evolutions arising from practical models (circuit models, chemical reaction<br />
models, mechanical systems)<br />
Ôº¾ ½½º