# fast Na module # Return kinetic parameters, constraints, and vector of volumes in each # compartment (pL) (1 if gating variable, or in element corresponding to # kappa) # Translated from Pan 2018 cardiac AP 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'] # constants are stored in V F = V['F'] R = V['R'] T = V['T'] N_A = V['N_A'] G_GHK = 3.233669778973711e-09 # Unit mA/mM P_Kr = G_GHK/F * 1e12 # Unit pL/s . G_GHK [=] Amp/(mol/s) x_Kr_channel = 2*503e7/N_A*1e15 # fmol. From inferring whole cell conductance (Clancy) against single cell (10 Ps, Chinn) x_Kr_channel = 5030/N_A*1e15 # load gate transition parameters alpha = [28.523400884804747, 2.1719999886814705, 8.891319064613533, 655.999997020704, 8.891314046537206 ] beta = [2.3570011784259544, 1.0769999996074826, 2.9357019143027285, 243.8368647542509, 72.44770977217509 ] # Calculate bond graph constants from kinetic parameters # Note: units of kappa are fmol/s, units of K are fmol^-1 kf_Kr = [P_Kr / x_Kr_channel] + alpha kr_Kr = [P_Kr / x_Kr_channel] + beta k_kinetic = kf_Kr + kr_Kr # CONSTRAINTS N_cT = [] K_C = [] # volume vector # W = list(np.append([1] * num_cols, [V['V_myo']] * num_rows)) W = [1] * num_cols + [V['V_myo'], V['V_o']] + [1] * (num_rows-2) return (k_kinetic, N_cT, K_C, W)