We beschouwen het beginwaardeprobleem
$$\begin{cases}x'(t) = f(x, t)\\x(t_0) = x_0\end{cases}$$
en zoeken een numerieke oplossing voor de functie $$x$$ via de Runge-Kutta methode van orde 4.
Schrijf de functie runge_kutta_4()
met volgende argumenten:
f
: de functie $$f(x, t)$$, met 2 reƫle argumenten x0
: de waarde $$x(t_0)$$ t0
: het beginpunt $$t_0$$ tmax
: het eindpunt waarvoor we $$x(t)$$ bepalen N
: het aantal totaal aantal punten waar $$x(t)$$ bepaald wordt, de stapgrootte van het iteratieschema wordt dan $$h=\frac{t_{max}-t_0}{N}$$f = lambda x,t : 5*x t, x = runge_kutta_4(f, 3.0, 0.0, 2.0, 200) print(t[0:200+1:25]) #[0.00, 0.25, 0.50, 0.75, 1.00, 1.25, 1.50, 1.75, 2.00] print(x[0:200+1:25]) #[3.00, 10.47, 36.55, 127.56, 445.24, 1554.04, 5424.13, 18932.06, 66079.36]