This is a test version of Biostars. For the public version, visit https://www.biostars.org.
Matlab Modeling Of Product Inhibition

I am trying to model the Product Inhibition of Beta-Galactosidase by the product glucose which is model by the diagram E + S <==> ES ==> E + P <==> EP where E + S goes to ES with the constants K1 and K_1 while ES goes to E + P with constant K_cat and E + P goes to EP with constants K2 and K_2 The ordered differential equations I obtained from this model are:

dE/dt = -K1[E]o[S] + K_1[ES] - K_cat[ES]

dS/dt = -K1[E]o[S] + K_1[ES] - K_cat[ES]

dES/dt = K1[E]o[S] - K_1[ES] - K_cat[ES]

dP/dt = K_cat[ES] + K_2[E][P] + K_2[EP]

dEP/dt = K2[E]o[P] - K_2[EP]

when I try to solve and plot these equations using Matlab I obtain the error that my initial vector is of different length than the vector my function returns can anyone help me out? Here is my code:

k_1 = 50;
k_cat = 10;
k2 = 100;
k_2 = 6;

e_o = 0.05;
s_o = 100;
es_o = 0; 
p_o = 0;
ep_o = 0;

x0 = [e_o s_o 300 es_o p_o 0];
p = [k1 k_1 k_cat k2 k_2];
[T1 Y1] = ode15s(@(t,y)competitive(t, y, p), [0 50], x0);

figure(1);
plot(T1, Y1(:,5), 'b');
xlabel('Time [s]');
ylabel('Product Concentration [mM]');
legend('0.1','1','10')
title('Competitive Product Inhibition');


function xdot = competitive(t,x,k)
% x = [E S ES P EP]
% k = [k1 k_1 k_cat k2 k_2]

xdot = [-k(1)*x(1)*x(2) + k(2)*x(3) + k(3)*x(3);
    -k(1)*x(1)*x(2) + k(2)*x(3) - k(3)*x(3);
    k(1)*x(1)*x(2) - k(2)*x(3) - k(3)*x(3);
    k(3)*x(3) + k(4)*x(1)*x(4) + k(5)*x(4);
    k(4)*x(1)*x(4) - k(5)*x(4);
    k(3)*x(4)];
end
end
matlab

This sounds suspiciously like a homework question.

Even if it is, the OP has clearly defined the question, shown that he tried to solve the problem himself, and is now asking how to solve a particular issue with his approach. Fine.

0 answers

No answers yet.

Log in to answer this question.