- Author:
- Shelley Fong <sfon036@UoA.auckland.ac.nz>
- Date:
- 2024-11-08 12:11:28+13:00
- Desc:
- Adding exposure files
- Permanent Source URI:
- https://models.physiomeproject.org/workspace/828/rawfile/da8ac256d12197076149c38f8681b66339077330/parameter_finder/kinetic_parameters_NCX.py
# 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']
# load gate transition parameters - with updated params found from actual used volumes
params = [323.2592297817289, 6.911447298392656, 4.113516627678789E7, 0.13419021047464114,
469173.29229603236, 2528149.5534127243, 3413.9776277285114, 51.22860832366725, 0.02218888189756564,
1425.9123082882184, -0.556790119918188] # original Pan
params = [370.328903593437, 18.8602822628204, 72578052.5394232, 0.400073619931864, 1289852.37227604,
2356108.60994548, 45516.9924334909, 18.7787311137038, 0.112995480828711, 4275.19393026393,
-0.556864130959396] # Kernik cell of vol=3.71 pL
params = [33.88389500174221, 0.88760482250967, 1.2243575371188797E8, 0.056474828763463936,
3675996.9359448263, 3.34679170881807E7, 958.0639582039124, 399.03604766483835,
0.06482563708742461, 35697.79246249781, -0.556873748348377] # LRd cell of 34.4 pL
kappa_fast = 1e6
kappa_3 = params[0]
kappa_6 = params[1]
K_1 = params[2]
K_2 = params[3]
K_3 = params[4]
K_4 = params[5]
K_5 = params[6]
K_6 = params[7]
K_Nai = V['V_myo'] * params[8]
K_Cai = V['V_myo'] * params[9]
K_Nae = K_Nai
K_Cae = K_Cai
Delta_NCX = params[10]
kf_NCX = [kappa_fast * K_1,
kappa_fast * K_2 * K_Cai,
kappa_3 * K_3,
kappa_fast * K_4,
kappa_fast * K_5 * pow(K_Nae,3),
kappa_6 * K_6]
kr_NCX = [kappa_fast * K_2 * pow(K_Nai,3),
kappa_fast * K_3,
kappa_3 * K_4,
kappa_fast * K_5 * K_Cae,
kappa_fast * K_6,
kappa_6 * K_1]
k_kinetic = kf_NCX + kr_NCX
# CONSTRAINTS
N_cT = []
K_C = []
# volume vector
# W = list(np.append([1] * num_cols, [V['V_myo']] * num_rows))
W = [1] * num_cols + [1] * 6 + [V['V_myo'], V['V_myo'], V['V_o'], V['V_o']]
return (k_kinetic, N_cT, K_C, W)