I am running simulations on chemical reaction systems. Usually for these I have some input signal and I want to investigate what happens to the system when suddenly an input is turned on. Typically I might have a variable (X), representing something which is produced under certain input (i). Typically I could model this as:
dX/dt = i - d*X
(Then X goes on to activate some system.)
using parameters I would express this as:
dX/dt = p[1] - p[2]*X
Now my input is a step, so up and until some timepoint (t0) i (that is p[1]) would be small, i_inactive. But at time t0 the input becomes i_active which is some large number. How would I do to create a callback which changes the parameter value of p[1] to a new value? I think I know how to use the affect!
function to change the integrator to change the actual value of X, but how do I change the parameter values (the integrator seems to have no field for the parameter).
At worst I could make i a second variable, which have di/dt = 0, and then change it via the integrator. But this do not feel like the natural solution to the problem?