Location: BG_TCC @ 1be12bb694fe / parameter_finder / kinetic_parameters_TCC.py

Author:
Shelley Fong <s.fong@auckland.ac.nz>
Date:
2022-03-14 14:59:25+13:00
Desc:
Adding z to Vnorm in param_finding calculations, and updating parameters
Permanent Source URI:
https://models.cellml.org/workspace/831/rawfile/1be12bb694fe0367462fc4827b5411dc9f7e96f7/parameter_finder/kinetic_parameters_TCC.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']

    G_GHK = 8.941484386828576E-7    # Unit mA/mM
    P_TCC = G_GHK/F * 1e12 # Unit pL/s . G_GHK [=] Amp/(mol/s)
    x_TCC = 50000/N_A*1e15 # unit    fmol

    # load gate transition parameters
    params_b = [132.51796137864406,	0.3429854720383411,	48.8728740902765,	-0.2775102001007474]
    params_g = [1.7731164468320164,	-0.4500912005641351,	47.97994076098573,	0.375200850350315]
    z_bf = params_b[1]
    z_br = params_b[3]
    z_gf = params_g[1]
    z_gr = params_g[3]
    zf = [z_bf, z_gf]
    zr = [z_br, z_gr]

    # unit    s ^ -1
    alpha_b = params_b[0] # unit    s ^ -1
    beta_b = params_b[2] # unit    s ^ -1

    alpha_g = params_g[0] # unit    s ^ -1
    beta_g = params_g[2] # unit    s ^ -1

    kf_Ca = [P_TCC / x_TCC,     # R_GHK
    2 * alpha_b,     # Rb_00
    2 * alpha_b,     # Rb_01
    alpha_b,     # Rb_10
    alpha_b,     # Rb_11
    alpha_g,     # Rg_00
    alpha_g,     # Rg_10
    alpha_g] # Rg_20

    kr_Ca = [P_TCC / x_TCC,     # R_GHK
    beta_b,     # Rb_00
    beta_b,     # Rb_01
    2 * beta_b,     # Rb_10
    2 * beta_b,     # Rb_11
    beta_g,     # Rg_00
    beta_g,     # Rg_10
    beta_g] # Rg_20

    k_kinetic = kf_Ca + kr_Ca

    # 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)