- Author:
- Shelley Fong <s.fong@auckland.ac.nz>
- Date:
- 2021-07-21 13:21:28+12:00
- Desc:
- Adding constraint of Gibbs free energy for PDE reaction
- Permanent Source URI:
- https://staging.physiomeproject.org/workspace/674/rawfile/807b1b4db76b95ba92b2cab7115970c165927585/MATLAB/kinetic_parameters.m
% cAMP module
function [k_kinetic, N_cT, K_C] = kinetic_parameters(M, include_type2_reactions, num_cols)
% Set the kinetic rate constants
% knowns: K_m [=] fmol/L
% kcat [=] per_sec
K1_m = 1.03e12;
k1cat = 0.2;
K2_m = 3.15e+11;
k2cat = 8.5;
K3_m = 8.60e+11;
k3cat = 1e-16;
K4_m = 1.30e+09;
k4cat = 5;
K5_m = 3.00e+10;
K6_m = 4.00e+08;
K7_m = 4.40e+10;
% initialise arrays
vkap = zeros(4,1);
vkam = zeros(4,1);
vkbp = zeros(4,1);
vkbm = zeros(4,1);
vkm2 = zeros(3,1);
vkp2 = zeros(3,1);
vK_m = [K1_m,K2_m,K3_m,K4_m,K5_m,K6_m,K7_m];
vkcat = [k1cat,k2cat,k3cat,k4cat];
kap_mult = [0.93, 0.1, 1, 1]; % finding rates from literature?
fastKineticConstant = 1e6; %1e-12;
for i=1:4
vkap(i) = kap_mult(i)*fastKineticConstant;
vkam(i) = vkap(i)*vK_m(i) - vkcat(i);
vkbp(i) = vkcat(i);
vkbm(i) = (vkap(i)*vkbp(i))/vkam(i);
end
if include_type2_reactions
for i= 1:3
vkm2(i) = fastKineticConstant;
vkp2(i) = vkm2(i)/vK_m(i+4);
end
end
if include_type2_reactions == false
k5p = [];
k6p = [];
k7p = [];
k5m = [];
k6m = [];
k7m = [];
end
% Calculate bond graph constants from kinetic parameters
% Note: units of kappa are fmol/s, units of K are fmol^-1
k_kinetic = [vkap(1) vkbp(1) ...
vkap(2) vkbp(2) ...
vkap(3) vkbp(3) ...
vkap(4) vkbp(4) ...
vkp2(:)' ...
vkam(1) vkbm(1) ...
vkam(2) vkbm(2) ...
vkam(3) vkbm(3) ...
vkam(4) vkbm(4) ...
vkm2(:)']';
% CONSTRAINTS
N_cT = zeros(2,size(M,2));
if false
% show substrate ATP is in eqlm with product cAMP
N_cT(1,num_cols + 1) = 1;
N_cT(1,num_cols + 2) = -1;
end
% constraint for equilibrium between cAMP and five_AMP
N_cT(1,num_cols + 2) = 1;
N_cT(1,num_cols + 11) = -1;
% constraint for formation of five_AMP from cAMP and PDE rxn
G_0_cAMP = -48.116; % kJ/mol
R = 8.314;
T = 310;
K_cAMP = exp(G_0_cAMP/(R*T))*10^6;
N_cT(2,num_cols+3) = 1;
N_cT(2,num_cols+1) = -1;
K_C = [1 K_cAMP];
return