# Hai murphy module # adapted to smooth muscle contraction module from Yang et al 2005, which have different rate constants to original Hai Murphy. # Also dependence on Ca_i and cGMP # return (k_kinetic, N_cT, K_C, W) kinetic parameters, constraints, and vector of volumes in each # compartment (pL) (1 if gating variable, or in element corresponding to # kappa) import numpy as np def kinetic_parameters(M, include_type2_reactions, dims, V): # Set the kinetic rate constants. num_cols = dims['num_cols'] num_rows = dims['num_rows'] bigNum = 1e6 fastKineticConstant = bigNum smallReverse = fastKineticConstant/(pow(bigNum,2)) k1 = 1180 # [=] 1/s ( 1 on Yang paper) k2 = 0.07128868*0.0327 + 0.0086 # [=] 1/s (not accounting for Pi) k3 = 1.8 # [=] 1/s k4 = 0.1 # [=] 1/s k5 = k2 # [=] 1/s k6 = k1 # [=] 1/s k7 = 0.045 # [=] 1/s # use detailed balance to find k8 if True: k8 = k1*k3*k5*k7/(k2*k4*k6) else: k8 = smallReverse # [=] 1/s k_kinetic = [ k1,k3,k5,k7, k2,k4,k6,k8 ] # CONSTRAINTS N_cT = [] # np.zeros(len(M[0])) K_C = [] # volume vector W = list(np.append([1] * num_cols, [V['V_myo']] * num_rows)) return (k_kinetic, [N_cT], K_C, W)