The task was to model an enzymatic reaction which I did with the written code. The obtained plot and the equations are in the attached picture. I need to find the the time when the enzyme concentration is minimal and enzyme-substrate concentration maximal. I know that the concentration change in the minimum/maximum should be zero ( d[E]/dt=d[C]/dt=0 ) but I don't know how I would write the code to find the time.
function dydt = reaction(~, cse)% Defining reaction parameters:
k1 = 6;k2 = 1;kminus1 = 2;% Defining reactions
reaction=zeros(4,1);reaction(1) = k1*cse(2)*cse(3)-kminus1*cse(1)-k2*cse(1);reaction(2) = -k1*cse(2)*cse(3)+kminus1*cse(1);reaction(3) = -k1*cse(2)*cse(3)+kminus1*cse(1)+k2*cse(1);reaction(4) = k2*cse(1);dydt=[reaction(1); reaction(2); reaction(3); reaction(4)];end_____% defining the time range:
T=12;trange=[0 T];% defining initial values (concentrations) for c,s,e i p:
cs0 = [0; 1; 1; 0]; % [t,x] = ode45(@reaction, trange, initial values)
[t,unknown]=ode45(@reaction,trange,cs0);c = unknown(:, 1);s = unknown(:, 2);e = unknown(:, 3);p = unknown(:, 4); % plot drawing
plot(t,c,'m',t,s,'c',t,e,'r',t,p,'k')ylim([0 1.1])xlabel('time, t')ylabel('concentration')legend({' enzyme-substrate complex concentration',' substrate concentration',' enzyme concentration ',' product concentration'}, "Location","best")
Best Answer