Я новичок в Matlab. Я надеюсь, что вы можете мне помочь.
Я должен решить систему ODE, используя функцию ODE45. Вот функция, которая описывает мои уравнения.
function dNdt = rateEquations(t, y)
%populations of corresponding state
Ng = y(1);
Ns = y(2);
Nt = y(3);
%All constants used are dropped for the sake of easy reading.
Обратите внимание на параметр F.
%rate equations
dNs = s0 * Ng * F - Ns/ t_S1;
dNt = Ns / t_ISC - Nt / t_T1;
dNg = -dNt - dNs;
dNdt = [dNg; dNs; dNt];
end
Затем в моем скрипте .m-файл я вызываю функцию ode45 в 'for loop'. Во время каждой итерации я должен изменить параметр F и передать его в мою функцию 'rateEquations'. Но я не знаю, как это реализовать.
for T = Tmin: dt : Tmax
%initial conditions
initialConditions = [N0 0 0];
timeSpan = [T T+dt];
перед вызовом ODE45 F необходимо изменить.
[t,N] = ode45('rateEquations', timeSpan, initialConditions)
и так далее ...
end
Заранее спасибо.