Location: BG_LRGbinding_M2 @ 88369d2f746a / parameter_finder / TEMP.cellml.txt

Author:
Shelley Fong <s.fong@auckland.ac.nz>
Date:
2021-11-26 14:26:35+13:00
Desc:
Updating Knames
Permanent Source URI:
https://models.cellml.org/workspace/707/rawfile/88369d2f746a0234b3ff860cfe8cca2efe643f28/parameter_finder/TEMP.cellml.txt

def model individual_LRGbinding_M2 as
 def import using "units_and_constants/units_BG.cellml" for
        unit mM using unit mM;
unit fmol using unit fmol;
unit per_fmol using unit per_fmol;
        unit J_per_mol using unit J_per_mol;
unit fmol_per_sec using unit fmol_per_sec;
        unit C_per_mol using unit C_per_mol;
  unit J_per_C using unit J_per_C;
        unit microm3 using unit microm3;
  unit fF using unit fF;
        unit fC using unit fC;
  unit fA using unit fA;
        unit per_second using unit per_second;
  unit millivolt using unit millivolt;
        unit per_sec using unit per_sec;
  unit J_per_K_per_mol using unit J_per_K_per_mol;
        unit fmol_per_L using unit fmol_per_L;
  unit fmol_per_L_per_sec using unit fmol_per_L_per_sec;
        unit per_sec_per_fmol_per_L using unit per_sec_per_fmol_per_L;
  unit uM using unit uM;
        unit mM_per_sec using unit mM_per_sec;
  unit uM_per_sec using unit uM_per_sec;
        unit pL using unit pL;
  unit m_to_u using unit m_to_u;
 enddef;
def import using "units_and_constants/constants_BG.cellml" for
            comp constants using comp constants;
enddef;

    def comp environment as
    var time: second {pub: out};
    // initial values
        var q_L_M2_init: fmol;
        var q_R_M2_init: fmol {init: 0.00072162};
        var q_Gi_init: fmol {init: 0.00836};
        var q_LR_M2_init: fmol {init: 1e-18};
        var q_R_M2Gi_init: fmol {init: 1e-18};
        var q_LR_M2Gi_init: fmol {init: 1e-18};
        var L_T: fmol {pub: in};
        var R_T: fmol {pub: in};
        var Gi_T: fmol {pub: in};
        
        // stimulus

        var stimSt: second {init: 3.1};
        var stimDur: second {init: 0.5e1};
        var tR: second {init: 0.3e1};
        var stimMag: fmol {init: 1e-7};
        var stimHolding: fmol {init: 1e-8};
        var m: fmol_per_sec;

        m = stimMag/tR;

        q_L_M2_init = sel
            case (time < stimSt) and (time > stimSt-tR):
                stimHolding+m*(time-stimSt+tR);
            case (time >= stimSt) and (time < stimSt+stimDur):
                stimMag+stimHolding;
            case (time < stimSt+tR+stimDur) and (time >= stimSt+stimDur):
                stimHolding+-m*(time-stimSt-tR-stimDur);
            otherwise:
                stimHolding;
        endsel;
// Global value
var q_L_M2: fmol {pub: out};
var q_R_M2: fmol {pub: out};
var q_Gi: fmol {pub: out};
var q_LR_M2: fmol {pub: out};
var q_R_M2Gi: fmol {pub: out};
var q_LR_M2Gi: fmol {pub: out};
// From submodule
var q_L_M2_mLRGbinding_M2: fmol {pub: in};
var q_R_M2_mLRGbinding_M2: fmol {pub: in};
var q_Gi_mLRGbinding_M2: fmol {pub: in};
var q_LR_M2_mLRGbinding_M2: fmol {pub: in};
var q_R_M2Gi_mLRGbinding_M2: fmol {pub: in};
var q_LR_M2Gi_mLRGbinding_M2: fmol {pub: in};
q_L_M2 = q_L_M2_mLRGbinding_M2 + q_L_M2_init;
q_R_M2 = q_R_M2_mLRGbinding_M2 + q_R_M2_init;
q_Gi = q_Gi_mLRGbinding_M2 + q_Gi_init;
q_LR_M2 = q_LR_M2_mLRGbinding_M2 + q_LR_M2_init;
q_R_M2Gi = q_R_M2Gi_mLRGbinding_M2 + q_R_M2Gi_init;
q_LR_M2Gi = q_LR_M2Gi_mLRGbinding_M2 + q_LR_M2Gi_init;

        // mass conservation checks 

        var L_T: fmol {pub: out};
        var R_T: fmol {pub: out};
        var Gi_T: fmol {pub: out};

        L_T = q_L_M2+q_LR_M2+q_LR_M2Gi;
        R_T = q_R_M2+q_LR_M2+q_R_M2Gi+q_LR_M2Gi;
        Gi_T = q_Gi+q_R_M2Gi+q_LR_M2Gi;

enddef;

def comp LRGbinding_M2_parameters as
var kappa_R_C_M2: fmol_per_sec {init: 18188.9, pub: out};
var kappa_R_R_M2: fmol_per_sec {init: 626.532, pub: out};
var kappa_R_L_M2: fmol_per_sec {init: 13018.6, pub: out};
var K_L_M2: per_fmol {init: 0.0767207, pub: out};
var K_R_M2: per_fmol {init: 0.846069, pub: out};
var K_Gi: per_fmol {init: 0.0549123, pub: out};
var K_LR_M2: per_fmol {init: 24.5623, pub: out};
var K_R_M2Gi: per_fmol {init: 47.9464, pub: out};
var K_LR_M2Gi: per_fmol {init: 106.329, pub: out};
enddef;
def comp LRGbinding_M2 as
        var time: second {pub: in};
        var R: J_per_K_per_mol {pub: in};
        var T: kelvin {pub: in};
        // parameters
var kappa_R_C_M2: fmol_per_sec {pub: in};
var kappa_R_R_M2: fmol_per_sec {pub: in};
var kappa_R_L_M2: fmol_per_sec {pub: in};
var K_L_M2: per_fmol {pub: in};
var K_R_M2: per_fmol {pub: in};
var K_Gi: per_fmol {pub: in};
var K_LR_M2: per_fmol {pub: in};
var K_R_M2Gi: per_fmol {pub: in};
var K_LR_M2Gi: per_fmol {pub: in};
// Input from global environment
var q_L_M2_global: fmol {pub: in};
var q_R_M2_global: fmol {pub: in};
var q_Gi_global: fmol {pub: in};
var q_LR_M2_global: fmol {pub: in};
var q_R_M2Gi_global: fmol {pub: in};
var q_LR_M2Gi_global: fmol {pub: in};
// Output to global environment
var q_L_M2: fmol {init: 1e-16, pub: out};
var q_R_M2: fmol {init: 1e-16, pub: out};
var q_Gi: fmol {init: 1e-16, pub: out};
var q_LR_M2: fmol {init: 1e-16, pub: out};
var q_R_M2Gi: fmol {init: 1e-16, pub: out};
var q_LR_M2Gi: fmol {init: 1e-16, pub: out};
// Constitutive parameters
var mu_L_M2: J_per_mol;
var mu_R_M2: J_per_mol;
var mu_Gi: J_per_mol;
var mu_LR_M2: J_per_mol;
var mu_R_M2Gi: J_per_mol;
var mu_LR_M2Gi: J_per_mol;
var v_R_C_M2: fmol_per_sec;
var v_R_R_M2: fmol_per_sec;
var v_R_L_M2: fmol_per_sec;
mu_L_M2 = R*T*ln(K_L_M2*q_L_M2_global);
mu_R_M2 = R*T*ln(K_R_M2*q_R_M2_global);
mu_Gi = R*T*ln(K_Gi*q_Gi_global);
mu_LR_M2 = R*T*ln(K_LR_M2*q_LR_M2_global);
mu_R_M2Gi = R*T*ln(K_R_M2Gi*q_R_M2Gi_global);
mu_LR_M2Gi = R*T*ln(K_LR_M2Gi*q_LR_M2Gi_global);
        v_R_C_M2 = kappa_sig1_M2*exp((mu_R_M2+mu_Gi)/(R*T))-exp(mu_R_M2Gi/(R*T));
        v_R_R_M2 = kappa_sig3_M2*exp((mu_LR_M2+mu_Gi)/(R*T))-exp(mu_LR_M2Gi/(R*T));
        v_R_L_M2 = kappa_sig4_M2*exp((mu_R_M2+mu_L_M2)/(R*T))-exp(mu_LR_M2/(R*T));
        ode(q_L_M2, time) = -v_R_L_M2;
        ode(q_R_M2, time) = -v_R_C_M2-v_R_L_M2;
        ode(q_Gi, time) = -v_R_C_M2-v_R_R_M2;
        ode(q_LR_M2, time) = -v_R_R_M2+v_R_L_M2;
        ode(q_R_M2Gi, time) = v_R_C_M2;
        ode(q_LR_M2Gi, time) = v_R_R_M2;

enddef;
def map between environment and LRGbinding_M2 for
vars time and time;
vars q_L_M2_mLRGbinding_M2 and q_L_M2;
vars q_L_M2 and q_L_M2_global;
vars q_R_M2_mLRGbinding_M2 and q_R_M2;
vars q_R_M2 and q_R_M2_global;
vars q_Gi_mLRGbinding_M2 and q_Gi;
vars q_Gi and q_Gi_global;
vars q_LR_M2_mLRGbinding_M2 and q_LR_M2;
vars q_LR_M2 and q_LR_M2_global;
vars q_R_M2Gi_mLRGbinding_M2 and q_R_M2Gi;
vars q_R_M2Gi and q_R_M2Gi_global;
vars q_LR_M2Gi_mLRGbinding_M2 and q_LR_M2Gi;
vars q_LR_M2Gi and q_LR_M2Gi_global;
enddef;
def map between LRGbinding_M2 and LRGbinding_M2_parameters for
vars kappa_R_C_M2 and kappa_R_C_M2;
vars kappa_R_R_M2 and kappa_R_R_M2;
vars kappa_R_L_M2 and kappa_R_L_M2;
vars K_L_M2 and K_L_M2;
vars K_R_M2 and K_R_M2;
vars K_Gi and K_Gi;
vars K_LR_M2 and K_LR_M2;
vars K_R_M2Gi and K_R_M2Gi;
vars K_LR_M2Gi and K_LR_M2Gi;
enddef;
def map between constants and LRGbinding_M2 for
vars R and R;
 vars T and T;
enddef;
enddef;