rk4
intsharp/timesteppers.py
4th-order Runge-Kutta
\[
\begin{aligned}
k_1 &= \text{RHS}(f^n, t^n) \\
k_2 &= \text{RHS}(f^n + \tfrac{1}{2} \Delta t \, k_1, t^n + \tfrac{1}{2} \Delta t) \\
k_3 &= \text{RHS}(f^n + \tfrac{1}{2} \Delta t \, k_2, t^n + \tfrac{1}{2} \Delta t) \\
k_4 &= \text{RHS}(f^n + \Delta t \, k_3, t^n + \Delta t) \\
f^{n+1} &= f^n + \frac{\Delta t}{6}(k_1 + 2k_2 + 2k_3 + k_4)
\end{aligned}
\]
Fourth-order accurate; more computationally expensive but much more accurate for smooth solutions.