Location: ECC_MSK (Rios et al. 1993) @ 113b9d7fbceb / Components / buildsrc / MWC_18.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.physiomeproject.org/workspace/8af/rawfile/113b9d7fbcebee0427016d8f7d9b5b181656ab2e/Components/buildsrc/MWC_18.txt

def model MWC_18 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 "C0_S2.cellml" for
        comp C0 using comp C0_S2;
    enddef;

    def import using "C_S3.cellml" for
        comp C1 using comp C_S3;
    enddef;

    def import using "C_S3.cellml" for
        comp C2 using comp C_S3;
    enddef;

    def import using "C_S3.cellml" for
        comp C3 using comp C_S3;
    enddef;

    def import using "C_S3.cellml" for
        comp C4 using comp C_S3;
    enddef;

    def import using "C_S3.cellml" for
        comp C5 using comp C_S3;
    enddef;

    def import using "C_S3.cellml" for
        comp C6 using comp C_S3;
    enddef;

    def import using "C_S3.cellml" for
        comp C7 using comp C_S3;
    enddef;

    def import using "CN_S2.cellml" for
        comp C8 using comp CN_S2;
    enddef;

    def import using "O0_S2.cellml" for
        comp O0 using comp O0_S2;
    enddef;

    def import using "O_S3.cellml" for
        comp O1 using comp O_S3;
    enddef;

    def import using "O_S3.cellml" for
        comp O2 using comp O_S3;
    enddef;

    def import using "O_S3.cellml" for
        comp O3 using comp O_S3;
    enddef;

    def import using "O_S3.cellml" for
        comp O4 using comp O_S3;
    enddef;

    def import using "O_S3.cellml" for
        comp O5 using comp O_S3;
    enddef;

    def import using "O_S3.cellml" for
        comp O6 using comp O_S3;
    enddef;

    def import using "O_S3.cellml" for
        comp O7 using comp O_S3;
    enddef;

    def import using "ON_S2.cellml" for
        comp O8 using comp ON_S2;
    enddef;

    def comp MWC_18 as
        var alpha: per_ms {pub: in};
        var C0_init: dimensionless {pub: in, priv: out};
        var C1_init: dimensionless {pub: in, priv: out};
        var C2_init: dimensionless {pub: in, priv: out};
        var C3_init: dimensionless {pub: in, priv: out};
        var C4_init: dimensionless {pub: in, priv: out};
        var C5_init: dimensionless {pub: in, priv: out};
        var C6_init: dimensionless {pub: in, priv: out};
        var C7_init: dimensionless {pub: in, priv: out};
        var C8_init: dimensionless {pub: in, priv: out};
        var O0_init: dimensionless {pub: in, priv: out};
        var O1_init: dimensionless {pub: in, priv: out};
        var O2_init: dimensionless {pub: in, priv: out};
        var O3_init: dimensionless {pub: in, priv: out};
        var O4_init: dimensionless {pub: in, priv: out};
        var O5_init: dimensionless {pub: in, priv: out};
        var O6_init: dimensionless {pub: in, priv: out};
        var O7_init: dimensionless {pub: in, priv: out};
        var O8_init: dimensionless {pub: in, priv: out};
        var N: dimensionless {init: 8, pub: out, priv: out};
        var C1_i: dimensionless {pub: in, priv: out};
        var C2_i: dimensionless {pub: in, priv: out};
        var C3_i: dimensionless {pub: in, priv: out};
        var C4_i: dimensionless {pub: in, priv: out};
        var C5_i: dimensionless {pub: in, priv: out};
        var C6_i: dimensionless {pub: in, priv: out};
        var C7_i: dimensionless {pub: in, priv: out};
        var O1_i: dimensionless {pub: in, priv: out};
        var O2_i: dimensionless {pub: in, priv: out};
        var O3_i: dimensionless {pub: in, priv: out};
        var O4_i: dimensionless {pub: in, priv: out};
        var O5_i: dimensionless {pub: in, priv: out};
        var O6_i: dimensionless {pub: in, priv: out};
        var O7_i: dimensionless {pub: in, priv: out};
        var K: mV {pub: in};
        var k_L: per_ms {pub: in, priv: out};
        var k_Lminus: per_ms {pub: in, priv: out};
        var f: dimensionless {pub: in, priv: out};
        var V0: mV {pub: in};
        var k_C: per_ms {pub: out, priv: out};
        var k_Cminus: per_ms {pub: out, priv: out};
        var V: mV {pub: in};
        var C_0: dimensionless {pub: out, priv: in};
        var C_1: dimensionless {pub: out, priv: in};
        var C_2: dimensionless {pub: out, priv: in};
        var C_3: dimensionless {pub: out, priv: in};
        var C_4: dimensionless {pub: out, priv: in};
        var C_5: dimensionless {pub: out, priv: in};
        var C_6: dimensionless {pub: out, priv: in};
        var C_7: dimensionless {pub: out, priv: in};
        var C_8: dimensionless {pub: out, priv: in};
        var O_0: dimensionless {pub: out, priv: in};
        var O_1: dimensionless {pub: out, priv: in};
        var O_2: dimensionless {pub: out, priv: in};
        var O_3: dimensionless {pub: out, priv: in};
        var O_4: dimensionless {pub: out, priv: in};
        var O_5: dimensionless {pub: out, priv: in};
        var O_6: dimensionless {pub: out, priv: in};
        var O_7: dimensionless {pub: out, priv: in};
        var O_8: dimensionless {pub: out, priv: in};
        var dC_0: per_ms {pub: out, priv: in};
        var dC_1: per_ms {pub: out, priv: in};
        var dC_2: per_ms {pub: out, priv: in};
        var dC_3: per_ms {pub: out, priv: in};
        var dC_4: per_ms {pub: out, priv: in};
        var dC_5: per_ms {pub: out, priv: in};
        var dC_6: per_ms {pub: out, priv: in};
        var dC_7: per_ms {pub: out, priv: in};
        var dC_8: per_ms {pub: out, priv: in};
        var dO_0: per_ms {pub: out, priv: in};
        var dO_1: per_ms {pub: out, priv: in};
        var dO_2: per_ms {pub: out, priv: in};
        var dO_3: per_ms {pub: out, priv: in};
        var dO_4: per_ms {pub: out, priv: in};
        var dO_5: per_ms {pub: out, priv: in};
        var dO_6: per_ms {pub: out, priv: in};
        var dO_7: per_ms {pub: out, priv: in};
        var dO_8: per_ms {pub: out, priv: in};
        var O: dimensionless ;
        var C: dimensionless ;
        var norm: dimensionless {pub: out, priv: out};
        var P_o: dimensionless {pub: out};
        var Q: dimensionless {pub: out};
        var dQ: per_ms {pub: out};
        var t: ms {pub: in, priv: out};

        k_C = 0.5{dimensionless}*alpha*exp((V-V0)/(8{dimensionless}*K));
        k_Cminus = 0.5{dimensionless}*alpha*exp(-(V-V0)/(8{dimensionless}*K));
        O = O_0+O_1+O_2+O_3+O_4+O_5+O_6+O_7+O_8;
        C = C_0+C_1+C_2+C_3+C_4+C_5+C_6+C_7+C_8;
        norm = C+O;
        P_o = O/norm;
        Q = (O_1+2{dimensionless}*O_2+3{dimensionless}*O_3+4{dimensionless}*O_4+5{dimensionless}*O_5+6{dimensionless}*O_6+7{dimensionless}*O_7+8{dimensionless}*O_8+C_1+2{dimensionless}*C_2+3{dimensionless}*C_3+4{dimensionless}*C_4+5{dimensionless}*C_5+6{dimensionless}*C_6+7{dimensionless}*C_7+8{dimensionless}*C_8)/8{dimensionless};
        dQ = (dO_1+2{dimensionless}*dO_2+3{dimensionless}*dO_3+4{dimensionless}*dO_4+5{dimensionless}*dO_5+6{dimensionless}*dO_6+7{dimensionless}*dO_7+8{dimensionless}*dO_8+dC_1+2{dimensionless}*dC_2+3{dimensionless}*dC_3+4{dimensionless}*dC_4+5{dimensionless}*dC_5+6{dimensionless}*dC_6+7{dimensionless}*dC_7+8{dimensionless}*dC_8)/8{dimensionless};

    enddef;

    def group as encapsulation for
        comp MWC_18 incl
            comp C0;
            comp C1;
            comp C2;
            comp C3;
            comp C4;
            comp C5;
            comp C6;
            comp C7;
            comp C8;
            comp O0;
            comp O1;
            comp O2;
            comp O3;
            comp O4;
            comp O5;
            comp O6;
            comp O7;
            comp O8;
        endcomp;
    enddef;

    def map between C0 and C1 for
        vars S_i and S_1;
        vars S_2 and S_i;
    enddef;

    def map between C0 and O0 for
        vars S_i and S_1;
        vars S_1 and S_i;
    enddef;

    def map between C0 and MWC_18 for
        vars S_i and C_0;
        vars dS_i and dC_0;
        vars k_L and k_L;
        vars k_Lminus and k_Lminus;
        vars k_C and k_C;
        vars k_Cminus and k_Cminus;
        vars norm and norm;
        vars Si_init and C0_init;
        vars N and N;
        vars t and t;
    enddef;

    def map between C1 and C2 for
        vars S_i and S_1;
        vars S_3 and S_i;
    enddef;

    def map between C1 and O1 for
        vars S_i and S_2;
        vars S_2 and S_i;
    enddef;

    def map between C1 and MWC_18 for
        vars S_i and C_1;
        vars dS_i and dC_1;
        vars k_L and k_L;
        vars k_Lminus and k_Lminus;
        vars k_C and k_C;
        vars k_Cminus and k_Cminus;
        vars f and f;
        vars norm and norm;
        vars Si_init and C1_init;
        vars N and N;
        vars i and C1_i;
        vars t and t;
    enddef;

    def map between C2 and C3 for
        vars S_i and S_1;
        vars S_3 and S_i;
    enddef;

    def map between C2 and O2 for
        vars S_i and S_2;
        vars S_2 and S_i;
    enddef;

    def map between C2 and MWC_18 for
        vars S_i and C_2;
        vars dS_i and dC_2;
        vars k_L and k_L;
        vars k_Lminus and k_Lminus;
        vars k_C and k_C;
        vars k_Cminus and k_Cminus;
        vars f and f;
        vars norm and norm;
        vars Si_init and C2_init;
        vars N and N;
        vars i and C2_i;
        vars t and t;
    enddef;

    def map between C3 and C4 for
        vars S_i and S_1;
        vars S_3 and S_i;
    enddef;

    def map between C3 and O3 for
        vars S_i and S_2;
        vars S_2 and S_i;
    enddef;

    def map between C3 and MWC_18 for
        vars S_i and C_3;
        vars dS_i and dC_3;
        vars k_L and k_L;
        vars k_Lminus and k_Lminus;
        vars k_C and k_C;
        vars k_Cminus and k_Cminus;
        vars f and f;
        vars norm and norm;
        vars Si_init and C3_init;
        vars N and N;
        vars i and C3_i;
        vars t and t;
    enddef;

    def map between C4 and C5 for
        vars S_i and S_1;
        vars S_3 and S_i;
    enddef;

    def map between C4 and O4 for
        vars S_i and S_2;
        vars S_2 and S_i;
    enddef;

    def map between C4 and MWC_18 for
        vars S_i and C_4;
        vars dS_i and dC_4;
        vars k_L and k_L;
        vars k_Lminus and k_Lminus;
        vars k_C and k_C;
        vars k_Cminus and k_Cminus;
        vars f and f;
        vars norm and norm;
        vars Si_init and C4_init;
        vars N and N;
        vars i and C4_i;
        vars t and t;
    enddef;

    def map between C5 and C6 for
        vars S_i and S_1;
        vars S_3 and S_i;
    enddef;

    def map between C5 and O5 for
        vars S_i and S_2;
        vars S_2 and S_i;
    enddef;

    def map between C5 and MWC_18 for
        vars S_i and C_5;
        vars dS_i and dC_5;
        vars k_L and k_L;
        vars k_Lminus and k_Lminus;
        vars k_C and k_C;
        vars k_Cminus and k_Cminus;
        vars f and f;
        vars norm and norm;
        vars Si_init and C5_init;
        vars N and N;
        vars i and C5_i;
        vars t and t;
    enddef;

    def map between C6 and C7 for
        vars S_i and S_1;
        vars S_3 and S_i;
    enddef;

    def map between C6 and O6 for
        vars S_i and S_2;
        vars S_2 and S_i;
    enddef;

    def map between C6 and MWC_18 for
        vars S_i and C_6;
        vars dS_i and dC_6;
        vars k_L and k_L;
        vars k_Lminus and k_Lminus;
        vars k_C and k_C;
        vars k_Cminus and k_Cminus;
        vars f and f;
        vars norm and norm;
        vars Si_init and C6_init;
        vars N and N;
        vars i and C6_i;
        vars t and t;
    enddef;

    def map between C7 and C8 for
        vars S_i and S_1;
        vars S_3 and S_i;
    enddef;

    def map between C7 and O7 for
        vars S_i and S_2;
        vars S_2 and S_i;
    enddef;

    def map between C7 and MWC_18 for
        vars S_i and C_7;
        vars dS_i and dC_7;
        vars k_L and k_L;
        vars k_Lminus and k_Lminus;
        vars k_C and k_C;
        vars k_Cminus and k_Cminus;
        vars f and f;
        vars norm and norm;
        vars Si_init and C7_init;
        vars N and N;
        vars i and C7_i;
        vars t and t;
    enddef;

    def map between C8 and O8 for
        vars S_i and S_2;
        vars S_2 and S_i;
    enddef;

    def map between C8 and MWC_18 for
        vars S_i and C_8;
        vars dS_i and dC_8;
        vars k_L and k_L;
        vars k_Lminus and k_Lminus;
        vars k_C and k_C;
        vars k_Cminus and k_Cminus;
        vars f and f;
        vars norm and norm;
        vars Si_init and C8_init;
        vars N and N;
        vars t and t;
    enddef;

    def map between O0 and O1 for
        vars S_i and S_1;
        vars S_2 and S_i;
    enddef;

    def map between O0 and MWC_18 for
        vars S_i and O_0;
        vars dS_i and dO_0;
        vars k_L and k_L;
        vars k_Lminus and k_Lminus;
        vars k_C and k_C;
        vars k_Cminus and k_Cminus;
        vars f and f;
        vars norm and norm;
        vars Si_init and O0_init;
        vars N and N;
        vars t and t;
    enddef;

    def map between O1 and O2 for
        vars S_i and S_1;
        vars S_3 and S_i;
    enddef;

    def map between O1 and MWC_18 for
        vars S_i and O_1;
        vars dS_i and dO_1;
        vars k_L and k_L;
        vars k_Lminus and k_Lminus;
        vars k_C and k_C;
        vars k_Cminus and k_Cminus;
        vars f and f;
        vars norm and norm;
        vars Si_init and O1_init;
        vars N and N;
        vars i and O1_i;
        vars t and t;
    enddef;

    def map between O2 and O3 for
        vars S_i and S_1;
        vars S_3 and S_i;
    enddef;

    def map between O2 and MWC_18 for
        vars S_i and O_2;
        vars dS_i and dO_2;
        vars k_L and k_L;
        vars k_Lminus and k_Lminus;
        vars k_C and k_C;
        vars k_Cminus and k_Cminus;
        vars f and f;
        vars norm and norm;
        vars Si_init and O2_init;
        vars N and N;
        vars i and O2_i;
        vars t and t;
    enddef;

    def map between O3 and O4 for
        vars S_i and S_1;
        vars S_3 and S_i;
    enddef;

    def map between O3 and MWC_18 for
        vars S_i and O_3;
        vars dS_i and dO_3;
        vars k_L and k_L;
        vars k_Lminus and k_Lminus;
        vars k_C and k_C;
        vars k_Cminus and k_Cminus;
        vars f and f;
        vars norm and norm;
        vars Si_init and O3_init;
        vars N and N;
        vars i and O3_i;
        vars t and t;
    enddef;

    def map between O4 and O5 for
        vars S_i and S_1;
        vars S_3 and S_i;
    enddef;

    def map between O4 and MWC_18 for
        vars S_i and O_4;
        vars dS_i and dO_4;
        vars k_L and k_L;
        vars k_Lminus and k_Lminus;
        vars k_C and k_C;
        vars k_Cminus and k_Cminus;
        vars f and f;
        vars norm and norm;
        vars Si_init and O4_init;
        vars N and N;
        vars i and O4_i;
        vars t and t;
    enddef;

    def map between O5 and O6 for
        vars S_i and S_1;
        vars S_3 and S_i;
    enddef;

    def map between O5 and MWC_18 for
        vars S_i and O_5;
        vars dS_i and dO_5;
        vars k_L and k_L;
        vars k_Lminus and k_Lminus;
        vars k_C and k_C;
        vars k_Cminus and k_Cminus;
        vars f and f;
        vars norm and norm;
        vars Si_init and O5_init;
        vars N and N;
        vars i and O5_i;
        vars t and t;
    enddef;

    def map between O6 and O7 for
        vars S_i and S_1;
        vars S_3 and S_i;
    enddef;

    def map between O6 and MWC_18 for
        vars S_i and O_6;
        vars dS_i and dO_6;
        vars k_L and k_L;
        vars k_Lminus and k_Lminus;
        vars k_C and k_C;
        vars k_Cminus and k_Cminus;
        vars f and f;
        vars norm and norm;
        vars Si_init and O6_init;
        vars N and N;
        vars i and O6_i;
        vars t and t;
    enddef;

    def map between O7 and O8 for
        vars S_i and S_1;
        vars S_3 and S_i;
    enddef;

    def map between O7 and MWC_18 for
        vars S_i and O_7;
        vars dS_i and dO_7;
        vars k_L and k_L;
        vars k_Lminus and k_Lminus;
        vars k_C and k_C;
        vars k_Cminus and k_Cminus;
        vars f and f;
        vars norm and norm;
        vars Si_init and O7_init;
        vars N and N;
        vars i and O7_i;
        vars t and t;
    enddef;

    def map between O8 and MWC_18 for
        vars S_i and O_8;
        vars dS_i and dO_8;
        vars k_L and k_L;
        vars k_Lminus and k_Lminus;
        vars k_C and k_C;
        vars k_Cminus and k_Cminus;
        vars f and f;
        vars norm and norm;
        vars Si_init and O8_init;
        vars N and N;
        vars t and t;
    enddef;

enddef;