Section 5.4 Runge-Kutta Methods
Transcript of Section 5.4 Runge-Kutta Methods
![Page 1: Section 5.4 Runge-Kutta Methods](https://reader033.fdocuments.in/reader033/viewer/2022060902/629901d2a27516359740a7a6/html5/thumbnails/1.jpg)
Section 5.4 Runge-KuttaMethods
![Page 2: Section 5.4 Runge-Kutta Methods](https://reader033.fdocuments.in/reader033/viewer/2022060902/629901d2a27516359740a7a6/html5/thumbnails/2.jpg)
Motivation
• How to design a high-order accurate method without knowledge of derivatives of 𝑓 𝑡, 𝑦 , which are cumbersome to compute.
𝑤&'( = 𝑤& + ℎ𝑇 - 𝑡&, 𝑤& ,where
𝑇 - 𝑡&, 𝑤& = 𝑓 𝑡&, 𝑤& +ℎ2
𝜕𝑓𝜕𝑡
𝑡&, 𝑤& +𝜕𝑓𝜕𝑦
𝑡&, 𝑤& 𝑓 𝑡&, 𝑤&
• Recall Taylor method of order 2:
𝑤&'( = 𝑤& + ℎ 𝑎(𝑓(𝑡& + 𝛼(, 𝑤& + 𝛽(),thendeterminethecoefficients 𝑎(, 𝛼(, 𝛽( suchthat
|𝑎(𝑓 𝑡 + 𝛼(, 𝑦 + 𝛽( -𝑇 - 𝑡, 𝑦 | = 𝑂(ℎ-)
•Main idea: design a method of the form
![Page 3: Section 5.4 Runge-Kutta Methods](https://reader033.fdocuments.in/reader033/viewer/2022060902/629901d2a27516359740a7a6/html5/thumbnails/3.jpg)
Derivation of Runge-Kutta Method of Order Two
a) 𝑇 - 𝑡, 𝑦 = 𝑓 𝑡, 𝑦 + H-IJIK
𝑡, 𝑦 𝑡 + H-IJIL
𝑡, 𝑦 𝑡 M 𝑓 𝑡, 𝑦 𝑡 .
b) Using Talyor theorem of two variables (Thm 5.13 in textbook), 𝑎(𝑓 𝑡 + 𝛼(, 𝑦 + 𝛽( = 𝑎(𝑓 𝑡, 𝑦 + 𝑎(𝛼(
IJIK
𝑡, 𝑦 + 𝑎(𝛽(IJIL
𝑡, 𝑦
+𝑎(𝑅( 𝑡 + 𝛼(, 𝑦 + 𝛽( <-- remainder•Matching coefficients in a) and b) −−→
𝑎( = 1, 𝛼( =ℎ2, 𝛽( =
ℎ2𝑓 𝑡, 𝑦 .
• The remainder term 𝑎(𝑅( 𝑡 + 𝛼(, 𝑦 + 𝛽( = 𝑂 ℎ- ---- >|𝑎(𝑓 𝑡 + 𝛼(, 𝑦 + 𝛽( − 𝑇 - 𝑡, 𝑦 | = 𝑂(ℎ-)
èèèThe new method is of order 2!!! (same order as Taylor 2)
![Page 4: Section 5.4 Runge-Kutta Methods](https://reader033.fdocuments.in/reader033/viewer/2022060902/629901d2a27516359740a7a6/html5/thumbnails/4.jpg)
Midpoint Method
• The midpoint method:
𝑤&'( = 𝑤& + ℎ𝑓 𝑡& +ℎ2, 𝑤& +
ℎ2𝑓 𝑡&, 𝑤& ,
for each 𝑖 = 0, 1, 2,⋯ ,𝑁 − 1.
Remark: Local truncation error of Midpoint method is 𝑂 ℎ- .The method is second-order accurate.
![Page 5: Section 5.4 Runge-Kutta Methods](https://reader033.fdocuments.in/reader033/viewer/2022060902/629901d2a27516359740a7a6/html5/thumbnails/5.jpg)
Two stage formula of Midpoint Method
W𝑘( = 𝑓(𝑡&, 𝑤&)
𝑘- = 𝑓 𝑡& +ℎ2, 𝑤& +
ℎ2𝑘(
𝑤&'( = 𝑤& + ℎ𝑘-for each 𝑖 = 0, 1, 2,⋯ ,𝑁 − 1.
• Example 2. Use the Midpoint method with 𝑁 = 2 to solve the IVP𝑦Y = 𝑦 − 𝑡- + 1, 0 ≤ 𝑡 ≤ 2, 𝑦 0 = 0.5.
(MATLAB) Implement the method using ℎ = 0.2. Record the maximum error.
![Page 6: Section 5.4 Runge-Kutta Methods](https://reader033.fdocuments.in/reader033/viewer/2022060902/629901d2a27516359740a7a6/html5/thumbnails/6.jpg)
Midpoint
![Page 7: Section 5.4 Runge-Kutta Methods](https://reader033.fdocuments.in/reader033/viewer/2022060902/629901d2a27516359740a7a6/html5/thumbnails/7.jpg)
Modified Euler Method• This is another Runge-Kutta method of order two:
The modified Euler method:
𝑤&'( = 𝑤& +ℎ2𝑓 𝑡&, 𝑤& + 𝑓 𝑡&'(, 𝑤& + ℎ𝑓 𝑡&, 𝑤&
for each 𝑖 = 0, 1, 2,⋯ ,𝑁 − 1.
Remark: Local truncation error of Modified Euler method is 𝑂 ℎ- .
![Page 8: Section 5.4 Runge-Kutta Methods](https://reader033.fdocuments.in/reader033/viewer/2022060902/629901d2a27516359740a7a6/html5/thumbnails/8.jpg)
Two stage formula of Modified Euler Method
\𝑘( = 𝑓(𝑡&, 𝑤&)
𝑘- = 𝑓 𝑡& + ℎ, 𝑤& + ℎ𝑘(𝑤&'( = 𝑤& +
ℎ2[𝑘( + 𝑘-],
for each 𝑖 = 0, 1, 2,⋯ ,𝑁 − 1.
Example 2. Use the modified Euler method with 𝑁 = 2 to solve the IVP
𝑦Y = 𝑦 − 𝑡- + 1, 0 ≤ 𝑡 ≤ 2, 𝑦 0 = 0.5.(MATLAB) Implement the method using ℎ = 0.2. Record the maximum error.
![Page 9: Section 5.4 Runge-Kutta Methods](https://reader033.fdocuments.in/reader033/viewer/2022060902/629901d2a27516359740a7a6/html5/thumbnails/9.jpg)
![Page 10: Section 5.4 Runge-Kutta Methods](https://reader033.fdocuments.in/reader033/viewer/2022060902/629901d2a27516359740a7a6/html5/thumbnails/10.jpg)
Runge-Kutta Order Four (RK4)𝑘( = 𝑓 𝑡&, 𝑤&
𝑘- = 𝑓 𝑡& +ℎ2 ,𝑤& +
ℎ2 𝑘(
𝑘_ = 𝑓(𝑡& +ℎ2,𝑤& +
ℎ2𝑘-)
𝑘` = 𝑓(𝑡& + ℎ,𝑤& + ℎ 𝑘_)
,
𝑤&'( = 𝑤& +ℎ6 [𝑘( + 2𝑘- + 2𝑘_ + 𝑘`],
for each 𝑖 = 0, 1, 2,⋯ ,𝑁 − 1.
Remark: RK4 hasfour stages,andisthe mostwidelyusedRKmethod.Its local truncation error is 𝑂 ℎ` . , 𝑖. 𝑒., fourth order accurate.
![Page 11: Section 5.4 Runge-Kutta Methods](https://reader033.fdocuments.in/reader033/viewer/2022060902/629901d2a27516359740a7a6/html5/thumbnails/11.jpg)
Example 3. Use RK4 with 𝑁 = 2 to solve the IVP𝑦Y = 𝑦 − 𝑡- + 1, 0 ≤ 𝑡 ≤ 2, 𝑦 0 = 0.5.
(MATLAB) Implement the method using ℎ = 0.2. Record the maximum error.
![Page 12: Section 5.4 Runge-Kutta Methods](https://reader033.fdocuments.in/reader033/viewer/2022060902/629901d2a27516359740a7a6/html5/thumbnails/12.jpg)