I currently have a system of odes with a time-dependent constant. E.g.
def fun(u, t, a, b, c):
x = u[0]
y = u[1]
z = u[2]
dx_dt = a * x + y *
No, that is not possible, since the solver will use internal time steps that you have no control over, and each time step uses several evaluations of the function.
If the parameters are piecewise constant then you can integrate from jump point to jump point.
If piecewise linear you could use the interpolation functions.
For anything else you have to implement your own logic to go from the time t to the correct values of those parameters.
Note that the approximation order of the numerical integration is not only bounded by the order of the RK method but also by the differentiation order of the (parts of) the differential equation.