Location: ECC_MSK (Rios et al. 1993) @ 113b9d7fbceb / Components / buildsrc / MWC_10_test.txt

Author:
WeiweiAi <wai484@aucklanduni.ac.nz>
Date:
2022-07-12 17:11:03+12:00
Desc:
Change the stimulation protocol to double pulse with conditioning; add steady state equations
Permanent Source URI:
https://models.cellml.org/workspace/8af/rawfile/113b9d7fbcebee0427016d8f7d9b5b181656ab2e/Components/buildsrc/MWC_10_test.txt

def model MWC_10_test as
    def import using "../cellLib/Components/units.cellml" for
        unit mV using unit mV;
        unit ms using unit ms;
        unit per_ms using unit per_ms;
    enddef;

    def import using "../Components/MWC_10.cellml" for
        comp MWC_10 using comp MWC_10;
    enddef;

    def import using "../Components/Para.cellml" for
        comp Para using comp Para;
    enddef;

    def import using "../cellLib/Protocols/Patch_clamp_protocol.cellml" for
        comp dPulse_protocol_ms using comp dPulse_protocol_ms;
    enddef;

    def import using "../cellLib/Components/time.cellml" for
        comp time using comp time_ms;
    enddef;

    def comp output_10 as
        var P_o: dimensionless {pub: in};
        var Q: dimensionless {pub: in};
        var P_ss: dimensionless {pub: in};
        var Q_ss: dimensionless {pub: in};
        var t: ms {pub: in};
        var V: mV {pub: in};
        var dQ: per_ms {pub: in};
        var C_0: dimensionless {pub: in};
        var C_1: dimensionless {pub: in};
        var C_2: dimensionless {pub: in};
        var C_3: dimensionless {pub: in};
        var C_4: dimensionless {pub: in};
        var O_0: dimensionless {pub: in};
        var O_1: dimensionless {pub: in};
        var O_2: dimensionless {pub: in};
        var O_3: dimensionless {pub: in};
        var O_4: dimensionless {pub: in};
    enddef;

    def comp clamp_para as
        var t_ss: ms {init: 100, pub: out};
        var V_actHolding: mV {init: -80, pub: out};
        var t_act: ms {init: 100, pub: out};
        var V_actTest: mV {init: -40, pub: out};
        var t_cd: ms {init: 10, pub: out};
        var T_cd: ms {init: 100, pub: out};
        var V_cd: mV {init: 20, pub: out};
    enddef;

    def comp free_para_10 as
        var K: mV {init: 4.5, pub: out};
        var k_L: per_ms {init: 0.002, pub: out};
        var k_Lminus: per_ms {init: 900, pub: out};
        var f: dimensionless {init: 0.175, pub: out};
        var V0: mV {init: -20, pub: out};
        var C0_init: dimensionless {init: 0.922136731, pub: out};
        var C1_init: dimensionless {init: 0.075497647, pub: out};
        var C2_init: dimensionless {init: 0.002317952, pub: out};
        var C3_init: dimensionless {init: 3.16E-05, pub: out};
        var C4_init: dimensionless {init: 1.61E-07, pub: out};
        var O0_init: dimensionless {init: 2.05E-06, pub: out};
        var O1_init: dimensionless {init: 5.48E-06, pub: out};
        var O2_init: dimensionless {init: 5.49E-06, pub: out};
        var O3_init: dimensionless {init: 2.45E-06, pub: out};
        var O4_init: dimensionless {init: 4.07E-07, pub: out};
    enddef;

    def map between MWC_10 and output_10 for
        vars C_0 and C_0;
        vars C_1 and C_1;
        vars C_2 and C_2;
        vars C_3 and C_3;
        vars C_4 and C_4;
        vars O_0 and O_0;
        vars O_1 and O_1;
        vars O_2 and O_2;
        vars O_3 and O_3;
        vars O_4 and O_4;
        vars P_ss and P_ss;
        vars Q_ss and Q_ss;
        vars P_o and P_o;
        vars Q and Q;
        vars dQ and dQ;
    enddef;

    def map between MWC_10 and free_para_10 for
        vars C0_init and C0_init;
        vars C1_init and C1_init;
        vars C2_init and C2_init;
        vars C3_init and C3_init;
        vars C4_init and C4_init;
        vars O0_init and O0_init;
        vars O1_init and O1_init;
        vars O2_init and O2_init;
        vars O3_init and O3_init;
        vars O4_init and O4_init;
        vars K and K;
        vars k_L and k_L;
        vars k_Lminus and k_Lminus;
        vars f and f;
        vars V0 and V0;
    enddef;

    def map between MWC_10 and Para for
        vars alpha and alpha;
        vars C1_i and C1_i;
        vars C2_i and C2_i;
        vars C3_i and C3_i;
        vars O1_i and O1_i;
        vars O2_i and O2_i;
        vars O3_i and O3_i;
    enddef;

    def map between MWC_10 and dPulse_protocol_ms for
        vars V and V;
    enddef;

    def map between MWC_10 and time for
        vars t and time;
    enddef;

    def map between output_10 and dPulse_protocol_ms for
        vars V and V;
    enddef;

    def map between output_10 and time for
        vars t and time;
    enddef;

    def map between clamp_para and dPulse_protocol_ms for
        vars t_ss and t_ss;
        vars V_actHolding and V_actHolding;
        vars t_act and t_act;
        vars V_actTest and V_actTest;
        vars t_cd and t_cd;
        vars T_cd and T_cd;
        vars V_cd and V_cd;
    enddef;

    def map between dPulse_protocol_ms and time for
        vars time and time;
    enddef;

enddef;