Index
Mathematics
Runge-Kutta Method

Runge-Kutta Method

问题: 求一个由

$$ {dy(t)} \over {dt} = y'(t) = f(y(t),t), \quad \quad {\rm{with\;}} y(t_0)=y_0 $$

给出的一阶微分方程的近似解。

计算斜率的方式:

$$ \eqalign{ & {k_1} = f({y^*}({t_0}),{t_0}) \cr & {k_2} = f\left( {y^*}({t_0}) + {k_1}{h \over 2},{t_0} + {h \over 2}\right) \cr & {k_3} = f\left( {y^*}({t_0}) + {k_2}{h \over 2},{t_0} + {h \over 2}\right) \cr & {k_4} = f\left( { {y^*}({t_0}) + {k_3}h,{t_0} + h} \right) \cr} $$

最终估计由以上四个斜率的加权和给出:

$$ \eqalign{ {y^*}({t_0} + h) &= {y^*}({t_0}) + { {k_1} + 2{k_2} + 2{k_3} + {k_4} \over 6}h = {y^*}({t_0}) + \left( {1 \over 6}{k_1} + {1 \over 3}{k_2} + {1 \over 3}{k_3} + {1 \over 6}{k_4} \right)h \cr &= {y^*}({t_0}) + mh\quad \quad {\rm{where\;}}m{\rm{\;is\;a\;weighted\;average\; slope\; approximation}} \cr} $$

Created by sine. Last modification: 2022-06-03 13:01:13