5.3.1 modi ed euler method - university of leedskersale/2600/notes/runge-kutta.pdf · 5.3.1 modi ed...
TRANSCRIPT
5.3.1 Modified Euler Method
Numerical solution of Initial Value Problem:
dY
dt= f (t,Y )⇔ Y (tn+1) = Y (tn) +
∫ tn+1
tn
f (t,Y (t))dt.
Approximate integral using the trapezium rule:
Y (tn+1) ≈ Y (tn) +h
2[f (tn,Y (tn)) + f (tn+1,Y (tn+1))] , tn+1 = tn + h.
Use Euler’s method to approximate Y (tn+1) ≈ Y (tn) + hf (tn,Y (tn)) intrapezium rule:
Y (tn+1) ≈ Y (tn) +h
2[f (tn,Y (tn)) + f (tn+1,Y (tn) + hf (tn,Y (tn)))] .
Hence the modified Euler’s scheme
yn+1 = yn+h
2[f (tn, yn) + f (tn+1, yn + hf (tn, yn))]⇔
K1 = hf (tn, yn)
K2 = hf (tn+1, yn + K1)
yn+1 = yn +K1 + K2
2
5.3.1 Modified Euler Method
Numerical solution of Initial Value Problem:
dY
dt= f (t,Y )⇔ Y (tn+1) = Y (tn) +
∫ tn+1
tn
f (t,Y (t))dt.
Approximate integral using the trapezium rule:
Y (tn+1) ≈ Y (tn) +h
2[f (tn,Y (tn)) + f (tn+1,Y (tn+1))] , tn+1 = tn + h.
Use Euler’s method to approximate Y (tn+1) ≈ Y (tn) + hf (tn,Y (tn)) intrapezium rule:
Y (tn+1) ≈ Y (tn) +h
2[f (tn,Y (tn)) + f (tn+1,Y (tn) + hf (tn,Y (tn)))] .
Hence the modified Euler’s scheme
yn+1 = yn+h
2[f (tn, yn) + f (tn+1, yn + hf (tn, yn))]⇔
K1 = hf (tn, yn)
K2 = hf (tn+1, yn + K1)
yn+1 = yn +K1 + K2
2
5.3.1 Modified Euler Method
Numerical solution of Initial Value Problem:
dY
dt= f (t,Y )⇔ Y (tn+1) = Y (tn) +
∫ tn+1
tn
f (t,Y (t))dt.
Approximate integral using the trapezium rule:
Y (tn+1) ≈ Y (tn) +h
2[f (tn,Y (tn)) + f (tn+1,Y (tn+1))] , tn+1 = tn + h.
Use Euler’s method to approximate Y (tn+1) ≈ Y (tn) + hf (tn,Y (tn)) intrapezium rule:
Y (tn+1) ≈ Y (tn) +h
2[f (tn,Y (tn)) + f (tn+1,Y (tn) + hf (tn,Y (tn)))] .
Hence the modified Euler’s scheme
yn+1 = yn+h
2[f (tn, yn) + f (tn+1, yn + hf (tn, yn))]⇔
K1 = hf (tn, yn)
K2 = hf (tn+1, yn + K1)
yn+1 = yn +K1 + K2
2
5.3.1 Modified Euler Method
Numerical solution of Initial Value Problem:
dY
dt= f (t,Y )⇔ Y (tn+1) = Y (tn) +
∫ tn+1
tn
f (t,Y (t))dt.
Approximate integral using the trapezium rule:
Y (tn+1) ≈ Y (tn) +h
2[f (tn,Y (tn)) + f (tn+1,Y (tn+1))] , tn+1 = tn + h.
Use Euler’s method to approximate Y (tn+1) ≈ Y (tn) + hf (tn,Y (tn)) intrapezium rule:
Y (tn+1) ≈ Y (tn) +h
2[f (tn,Y (tn)) + f (tn+1,Y (tn) + hf (tn,Y (tn)))] .
Hence the modified Euler’s scheme
yn+1 = yn+h
2[f (tn, yn) + f (tn+1, yn + hf (tn, yn))]⇔
K1 = hf (tn, yn)
K2 = hf (tn+1, yn + K1)
yn+1 = yn +K1 + K2
2
5.3.1 Modified Euler Method — Local truncation error (1/3)
Local truncation error due to the approximation:
Y (tn+1) ≈ Y (tn) +1
2(K1 + K2)
where K1 = hf (tn,Y (tn)) and K2 = hf (tn + h,Y (tn) + K1).
Taylor Series of f (tn + h,Y (tn) + K1) in two variables:
K2 = h
[f (tn,Y (tn)) + h
∂
∂tf (tn,Y (tn)) + K1
∂
∂Yf (tn,Y (tn)) + O
(h2,K 2
1
)].
Since K1 = hf (tn,Y (tn)) = O(h),
1
2(K1 + K2) = hf (tn,Y (tn))
+h2
2
[∂
∂tf (tn,Y (tn)) + f (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O
(h3),
Expression to be compared with Taylor expansion of Y (tn+1)
5.3.1 Modified Euler Method — Local truncation error (1/3)
Local truncation error due to the approximation:
Y (tn+1) ≈ Y (tn) +1
2(K1 + K2)
where K1 = hf (tn,Y (tn)) and K2 = hf (tn + h,Y (tn) + K1).
Taylor Series of f (tn + h,Y (tn) + K1) in two variables:
K2 = h
[f (tn,Y (tn)) + h
∂
∂tf (tn,Y (tn)) + K1
∂
∂Yf (tn,Y (tn)) + O
(h2,K 2
1
)].
Since K1 = hf (tn,Y (tn)) = O(h),
1
2(K1 + K2) = hf (tn,Y (tn))
+h2
2
[∂
∂tf (tn,Y (tn)) + f (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O
(h3),
Expression to be compared with Taylor expansion of Y (tn+1)
5.3.1 Modified Euler Method — Local truncation error (1/3)
Local truncation error due to the approximation:
Y (tn+1) ≈ Y (tn) +1
2(K1 + K2)
where K1 = hf (tn,Y (tn)) and K2 = hf (tn + h,Y (tn) + K1).
Taylor Series of f (tn + h,Y (tn) + K1) in two variables:
K2 = h
[f (tn,Y (tn)) + h
∂
∂tf (tn,Y (tn)) + K1
∂
∂Yf (tn,Y (tn)) + O
(h2,K 2
1
)].
Since K1 = hf (tn,Y (tn)) = O(h),
1
2(K1 + K2) = hf (tn,Y (tn))
+h2
2
[∂
∂tf (tn,Y (tn)) + f (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O
(h3),
Expression to be compared with Taylor expansion of Y (tn+1)
5.3.1 Modified Euler Method — Local truncation error (2/3)
Taylor Series of Y (tn+1) = Y (tn + h):
Y (tn + h) = Y (tn) + hY ′(tn) +h2
2Y ′′(tn) + O
(h3).
Substitute Y ′(tn) = f (tn,Y (tn)) and
Y ′′(tn) =d
dtf (t,Y (t))
∣∣∣∣tn
=∂
∂tf (tn,Y (tn)) +
d
dtY (tn)
∂
∂Yf (tn,Y (tn)),
=∂
∂tf (tn,Y (tn)) + f (tn,Y (tn))
∂
∂Yf (tn,Y (tn)),
to get
Y (tn + h) = Y (tn) + hf (tn,Y (tn))
+h2
2
[∂
∂tf (tn,Y (tn)) + f (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O
(h3). (5.10)
5.3.1 Modified Euler Method — Local truncation error (2/3)
Taylor Series of Y (tn+1) = Y (tn + h):
Y (tn + h) = Y (tn) + hY ′(tn) +h2
2Y ′′(tn) + O
(h3).
Substitute Y ′(tn) = f (tn,Y (tn))
and
Y ′′(tn) =d
dtf (t,Y (t))
∣∣∣∣tn
=∂
∂tf (tn,Y (tn)) +
d
dtY (tn)
∂
∂Yf (tn,Y (tn)),
=∂
∂tf (tn,Y (tn)) + f (tn,Y (tn))
∂
∂Yf (tn,Y (tn)),
to get
Y (tn + h) = Y (tn) + hf (tn,Y (tn))
+h2
2
[∂
∂tf (tn,Y (tn)) + f (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O
(h3). (5.10)
5.3.1 Modified Euler Method — Local truncation error (2/3)
Taylor Series of Y (tn+1) = Y (tn + h):
Y (tn + h) = Y (tn) + hY ′(tn) +h2
2Y ′′(tn) + O
(h3).
Substitute Y ′(tn) = f (tn,Y (tn)) and
Y ′′(tn) =d
dtf (t,Y (t))
∣∣∣∣tn
=∂
∂tf (tn,Y (tn)) +
d
dtY (tn)
∂
∂Yf (tn,Y (tn)),
=∂
∂tf (tn,Y (tn)) + f (tn,Y (tn))
∂
∂Yf (tn,Y (tn)),
to get
Y (tn + h) = Y (tn) + hf (tn,Y (tn))
+h2
2
[∂
∂tf (tn,Y (tn)) + f (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O
(h3). (5.10)
5.3.1 Modified Euler Method — Local truncation error (2/3)
Taylor Series of Y (tn+1) = Y (tn + h):
Y (tn + h) = Y (tn) + hY ′(tn) +h2
2Y ′′(tn) + O
(h3).
Substitute Y ′(tn) = f (tn,Y (tn)) and
Y ′′(tn) =d
dtf (t,Y (t))
∣∣∣∣tn
=∂
∂tf (tn,Y (tn)) +
d
dtY (tn)
∂
∂Yf (tn,Y (tn)),
=∂
∂tf (tn,Y (tn)) + f (tn,Y (tn))
∂
∂Yf (tn,Y (tn)),
to get
Y (tn + h) = Y (tn) + hf (tn,Y (tn))
+h2
2
[∂
∂tf (tn,Y (tn)) + f (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O
(h3). (5.10)
5.3.1 Modified Euler Method — Local truncation error (3/3)
Now, the equations
Y (tn+1) = Y (tn) + hf (tn,Y (tn))
+h2
2
[∂
∂tf (tn,Y (tn)) + f (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O
(h3)
and
1
2(K1 + K2) = hf (tn,Y (tn))
+h2
2
[∂
∂tf (tn,Y (tn)) + f (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O
(h3)
imply that Y (tn+1) = Y (tn) +1
2(K1 + K2) + O
(h3)
.
The local truncation error is τn = O(h3): the modified Euler method is second
order accurate. (A method is conventionally called pth order if the localtruncation error is of order p + 1.)
5.3.1 Modified Euler Method — Local truncation error (3/3)
Now, the equations
Y (tn+1) = Y (tn) + hf (tn,Y (tn))
+h2
2
[∂
∂tf (tn,Y (tn)) + f (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O
(h3)
and
1
2(K1 + K2) = hf (tn,Y (tn))
+h2
2
[∂
∂tf (tn,Y (tn)) + f (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O
(h3)
imply that Y (tn+1) = Y (tn) +1
2(K1 + K2) + O
(h3)
.
The local truncation error is τn = O(h3): the modified Euler method is second
order accurate. (A method is conventionally called pth order if the localtruncation error is of order p + 1.)
5.3.1 Modified Euler Method — Local truncation error (3/3)
Now, the equations
Y (tn+1) = Y (tn) + hf (tn,Y (tn))
+h2
2
[∂
∂tf (tn,Y (tn)) + f (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O
(h3)
and
1
2(K1 + K2) = hf (tn,Y (tn))
+h2
2
[∂
∂tf (tn,Y (tn)) + f (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O
(h3)
imply that Y (tn+1) = Y (tn) +1
2(K1 + K2) + O
(h3)
.
The local truncation error is τn = O(h3): the modified Euler method is second
order accurate. (A method is conventionally called pth order if the localtruncation error is of order p + 1.)
5.3.2 Second order Runge-Kutta schemes (1/3)
Modified Euler is an example of 2nd order R-K method.
The general 2nd order Runge-Kutta scheme takes the formK1 = hf (tn, yn);
K2 = hf (tn + αh, yn + βK1);
yn+1 = yn + a1K1 + a2K2.
(5.11)
Repeating the earlier analysis, K1 = hf (tn,Y (tn)) and
K2 = hf (tn,Y (tn))
+ h2
[α∂
∂tf (tn,Y (tn)) + βf (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O(h3);
⇒ a1K1 + a2K2 = h(a1 + a2)f (tn,Y (tn))
+ a2h2
[α∂
∂tf (tn,Y (tn)) + βf (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O(h3).
5.3.2 Second order Runge-Kutta schemes (1/3)
Modified Euler is an example of 2nd order R-K method.
The general 2nd order Runge-Kutta scheme takes the formK1 = hf (tn, yn);
K2 = hf (tn + αh, yn + βK1);
yn+1 = yn + a1K1 + a2K2.
(5.11)
Repeating the earlier analysis, K1 = hf (tn,Y (tn)) and
K2 = hf (tn,Y (tn))
+ h2
[α∂
∂tf (tn,Y (tn)) + βf (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O(h3);
⇒ a1K1 + a2K2 = h(a1 + a2)f (tn,Y (tn))
+ a2h2
[α∂
∂tf (tn,Y (tn)) + βf (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O(h3).
5.3.2 Second order Runge-Kutta schemes (1/3)
Modified Euler is an example of 2nd order R-K method.
The general 2nd order Runge-Kutta scheme takes the formK1 = hf (tn, yn);
K2 = hf (tn + αh, yn + βK1);
yn+1 = yn + a1K1 + a2K2.
(5.11)
Repeating the earlier analysis, K1 = hf (tn,Y (tn)) and
K2 = hf (tn,Y (tn))
+ h2
[α∂
∂tf (tn,Y (tn)) + βf (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O(h3);
⇒ a1K1 + a2K2 = h(a1 + a2)f (tn,Y (tn))
+ a2h2
[α∂
∂tf (tn,Y (tn)) + βf (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O(h3).
5.3.2 Second order Runge-Kutta schemes (2/3)
Comparing
a1K1 + a2K2 = h(a1 + a2)f (tn,Y (tn))
+ a2h2
[α∂
∂tf (tn,Y (tn)) + βf (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O(h3)
with equation (5.10)
Y (tn+1) = Y (tn) + hf (tn,Y (tn))
+h2
2
[∂
∂tf (tn,Y (tn)) + f (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O
(h3),
one gets a second order scheme Y (tn+1) = Y (tn) + a1K1 + a2K2 + O(h3)
ifa1 + a2 = 1;
αa2 = βa2 =1
2.
(5.12)
5.3.2 Second order Runge-Kutta schemes (2/3)
Comparing
a1K1 + a2K2 = h(a1 + a2)f (tn,Y (tn))
+ a2h2
[α∂
∂tf (tn,Y (tn)) + βf (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O(h3)
with equation (5.10)
Y (tn+1) = Y (tn) + hf (tn,Y (tn))
+h2
2
[∂
∂tf (tn,Y (tn)) + f (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O
(h3),
one gets a second order scheme Y (tn+1) = Y (tn) + a1K1 + a2K2 + O(h3)
ifa1 + a2 = 1;
αa2 = βa2 =1
2.
(5.12)
5.3.2 Second order Runge-Kutta schemes (2/3)
Comparing
a1K1 + a2K2 = h(a1 + a2)f (tn,Y (tn))
+ a2h2
[α∂
∂tf (tn,Y (tn)) + βf (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O(h3)
with equation (5.10)
Y (tn+1) = Y (tn) + hf (tn,Y (tn))
+h2
2
[∂
∂tf (tn,Y (tn)) + f (tn,Y (tn))
∂
∂Yf (tn,Y (tn))
]+ O
(h3),
one gets a second order scheme Y (tn+1) = Y (tn) + a1K1 + a2K2 + O(h3)
ifa1 + a2 = 1;
αa2 = βa2 =1
2.
(5.12)
5.3.2 Second order Runge-Kutta Schemes (3/3)
General 2nd order Runge-Kutta scheme:K1 = hf (tn, yn);
K2 = hf (tn + αh, yn + βK1);
yn+1 = yn + a1K1 + a2K2.
with
a1 + a2 = 1;
αa2 = βa2 =1
2.
Since we have 3 equations and 4 unknowns (a1, a2, α, β), there are infinitelymany solutions.
The most popular are,
I Modified Euler: a1 = a2 = 1/2, α = β = 1.
⇒ K1 = hf (tn, yn), K2 = hf (tn + h, yn + K1) and yn+1 = yn + (K1 + K2)/2.
I Midpoint method: a1 = 0, a2 = 1, α = β = 1/2.
⇒ K1 = hf (tn, yn), K2 = hf (tn + h/2, yn + K1/2) and yn+1 = yn + K2.
I Heun’s method: a1 = 1/4, a2 = 3/4, α = β = 2/3.
⇒ K1 = hf (tn, yn), K2 = hf (tn + 2h/3, yn + 2K1/3) andyn+1 = yn + (K1 + 3K2)/4.
5.3.2 Second order Runge-Kutta Schemes (3/3)
General 2nd order Runge-Kutta scheme:K1 = hf (tn, yn);
K2 = hf (tn + αh, yn + βK1);
yn+1 = yn + a1K1 + a2K2.
with
a1 + a2 = 1;
αa2 = βa2 =1
2.
Since we have 3 equations and 4 unknowns (a1, a2, α, β), there are infinitelymany solutions.
The most popular are,
I Modified Euler: a1 = a2 = 1/2, α = β = 1.
⇒ K1 = hf (tn, yn), K2 = hf (tn + h, yn + K1) and yn+1 = yn + (K1 + K2)/2.
I Midpoint method: a1 = 0, a2 = 1, α = β = 1/2.
⇒ K1 = hf (tn, yn), K2 = hf (tn + h/2, yn + K1/2) and yn+1 = yn + K2.
I Heun’s method: a1 = 1/4, a2 = 3/4, α = β = 2/3.
⇒ K1 = hf (tn, yn), K2 = hf (tn + 2h/3, yn + 2K1/3) andyn+1 = yn + (K1 + 3K2)/4.
5.3.3 Higher order Runge-Kutta methods
Schemes of the form (5.11) can be extended to higher order methods. Themost widely used Runge-Kutta scheme is the 4th order scheme RK4 based onSimpson’s rule.
yn+1 = yn +1
6(K1 + 2K2 + 2K3 + K4),
where K1 = hf (tn, yn),
K2 = hf
(tn +
h
2, yn +
K1
2
), (5.13)
K3 = hf
(tn +
h
2, yn +
K2
2
),
K4 = hf (tn + h, yn + K3).
This scheme has local truncation error of order h5, which can be checked in thesame way as the second order scheme, but involves rather messy algebra.