Location: BG_NBC @ 9663cef135e0 / parameter_finder / kinetic_parameters_NBC.py

Author:
Shelley Fong <sfon036@UoA.auckland.ac.nz>
Date:
2022-07-13 15:51:00+12:00
Desc:
Moving channel initial moles to main environment from channel component
Permanent Source URI:
https://models.fieldml.org/workspace/87f/rawfile/9663cef135e064889113d2338e877c6a0f4244e0/parameter_finder/kinetic_parameters_NBC.py

# Na-HCO3 cotransporter, based on 6 state transporter by Crampin and Smith 2006

# Return 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']

    fkc = 1e4
    # dissociation constants for A+B>C where Kd = k-/k+
    K_Na = 4.87e3 # [=] mM
    K_HCO3 = 8.02e-3 # [=] mM
    kp = [9.97, 8.53e-2] # [=] 1/s
    km = [5.6e1, 4.87e6] # [=] 1/s
    pKi = 6.738
    pKo = 7.185
    ni = 2.91
    no = 2.18
    Kd_pHi = pow(pow(10, -pKi), -ni)
    Kd_pHo = pow(pow(10, -pKo), no)

    kf_1 =[kp[0], fkc, fkc, kp[1], fkc*K_HCO3, fkc*K_Na]
    kr_1 =[km[0], fkc*K_Na, fkc*K_HCO3, km[1], fkc, fkc]

    # pH_dependent reactions
    kf_pHi = fkc
    kr_pHi = kf_pHi*Kd_pHi
    kf_2 = [kf_pHi]*6
    kr_2 = [kr_pHi]*6

    kf_pHo = fkc
    kr_pHo = kf_pHo*Kd_pHo
    kf_3 = [kf_pHo]*6
    kr_3 = [kr_pHo]*6

    # detailed bal? They said they did it already
    # kr[5] = np.product(kf)/(np.product(kr[0:4]))

    # total kf and kr
    kf = kf_1 #+ kf_2 + kf_3
    kr = kr_1 #+ kr_2 + kr_3
    k_kinetic = kf + 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']]*2 + [1]*6

    return (k_kinetic, N_cT, K_C, W)