I have the following adaptive Adams-Bashforth scheme for estimating an ODE:

$y_{{i+1}} = y_{{i}} + \alpha f_i + \beta f_{i-1}$

where, if we have 3 time points that are not equally spaced: $t_{i-1}, t_i$ and $t_{i+1}$, then

$t_i - t_{i-1} = h_{prev}, \space \space t_{i+1} - t_i = h$

I am asked to calculate an alternative $y^*_{i+1}$, given a $y_i$, using the third order Runge-Kutta method defined by the Butcher table:

    0    |
  (1/2)  | (1/2)
    1    |  -1      2
         |  (1/6)  (2/3)  (1/6)

I have no idea if I wrote the explicit formula for the Runge-Kutta method correctly, however. I dont have experience working with Butcher tables which is why I'm not confident.

Here's what I got:

$y_{i+1} = y_i + h/6 (k_1 + 4k_2 +k_3)$ where

$k_1 = f(t_i,y_i)$

$k_2 = f(t_i + h/2, \space y_i + \frac{h}{2} k_1)$

$k_3 = f(t_i + h/2, \space y_i + \frac{h}{2} k_2)$

I'm hoping someone can show me if/where I went wrong. Part of what's throwing me off is that we're dealing with an adaptive step size, but I'm not sure either way. I'd really appreciate the help.


1 Answer 1


Up to $k_2$ it is correct, however, you have to read the third line as $$ k_3 = f(t_i+h, y_i-h·k_1+2h·k_2). $$


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.