Personal tools
You are here: Home Model Repository
 
Views

Modelling Hypertrophic IP3 Transients in the Cardiac Myocyte

Generated code

Programming Language

Download this code
  • The required array sizes are:
    • VARIABLES[37]
    • CONSTANTS[31]
    • BOUND[1]
    • RATES[13]
  • The following variables are defined:
    • Variable kr2(VARIABLES[13]; computed once)
    • Variable Kd2(CONSTANTS[0])
    • Variable J3(VARIABLES[14]; recomputed after rate changes)
    • Variable kf3(CONSTANTS[1])
    • Variable kr3(CONSTANTS[2])
    • Variable J4(VARIABLES[15]; recomputed after rate changes)
    • Variable kf4(CONSTANTS[3])
    • Variable kr4(VARIABLES[16]; computed once)
    • Variable Kd4(CONSTANTS[4])
    • Variable J5(VARIABLES[17]; recomputed after rate changes)
    • Variable kf5(CONSTANTS[5])
    • Variable J6(VARIABLES[18]; recomputed after rate changes)
    • Variable kf6(CONSTANTS[6])
    • Variable J7(VARIABLES[19]; recomputed after rate changes)
    • Variable kf7(CONSTANTS[7])
    • Variable J8(VARIABLES[20]; recomputed after rate changes)
    • Variable kf8(CONSTANTS[8])
    • Variable kr8(CONSTANTS[9])
    • Variable J9(VARIABLES[21]; recomputed after rate changes)
    • Variable kf9(CONSTANTS[10])
    • Variable kr9(CONSTANTS[11])
    • Variable J10(VARIABLES[22]; recomputed after rate changes)
    • Variable kf10(CONSTANTS[12])
    • Variable kr10(CONSTANTS[13])
    • Variable J11(VARIABLES[23]; recomputed after rate changes)
    • Variable kf11(CONSTANTS[14])
    • Variable kr11(VARIABLES[24]; computed once)
    • Variable Kd11(CONSTANTS[15])
    • Variable J12(VARIABLES[25]; recomputed after rate changes)
    • Variable Ca(RATES[0] and VARIABLES[0])
    • Variable L(VARIABLES[26]; recomputed after rate changes)
    • Variable Ls(CONSTANTS[16])
    • Variable ts(CONSTANTS[17])
    • Variable Gd(RATES[1] and VARIABLES[1])
    • Variable Gt(RATES[2] and VARIABLES[2])
    • Variable R(RATES[3] and VARIABLES[3])
    • Variable Rl(RATES[4] and VARIABLES[4])
    • Variable Rg(RATES[5] and VARIABLES[5])
    • Variable Rlg(RATES[6] and VARIABLES[6])
    • Variable Rlgp(RATES[7] and VARIABLES[7])
    • Variable IP3(RATES[8] and VARIABLES[8])
    • Variable PIP2(CONSTANTS[18])
    • Variable Pc(RATES[9] and VARIABLES[9])
    • Variable Pcg(RATES[10] and VARIABLES[10])
    • Variable P(RATES[11] and VARIABLES[11])
    • Variable Pg(RATES[12] and VARIABLES[12])
    • Variable J1(VARIABLES[27]; recomputed after rate changes)
    • Variable kf1(CONSTANTS[19])
    • Variable kr1(VARIABLES[28]; computed once)
    • Variable Kd1(CONSTANTS[20])
    • Variable J2(VARIABLES[29]; recomputed after rate changes)
    • Variable kf2(CONSTANTS[21])
    • Variable t(BOUND[0])
    • Variable kf12(CONSTANTS[22])
    • Variable J13(VARIABLES[30]; recomputed after rate changes)
    • Variable kf13(CONSTANTS[23])
    • Variable J14(VARIABLES[31]; recomputed after rate changes)
    • Variable kf14(CONSTANTS[24])
    • Variable Km14(CONSTANTS[25])
    • Variable J15(VARIABLES[32]; recomputed after rate changes)
    • Variable kf15(CONSTANTS[26])
    • Variable Km15(CONSTANTS[27])
    • Variable J16(VARIABLES[33]; recomputed after rate changes)
    • Variable kf16(CONSTANTS[28])
    • Variable Cpc(VARIABLES[34]; computed once)
    • Variable Cc(VARIABLES[35]; computed once)
    • Variable Cp(VARIABLES[36]; computed once)
    • Variable Vc(CONSTANTS[29])
    • Variable Rpc(CONSTANTS[30])
  • No equation needed for Newton-Raphson evaluation.
void SetupFixedConstants(double* CONSTANTS)
{
CONSTANTS[0] = 27500;
CONSTANTS[1] = 1;
CONSTANTS[2] = 0.001;
CONSTANTS[3] = 0.3;
CONSTANTS[4] = 3e-05;
CONSTANTS[5] = 0.0004;
CONSTANTS[6] = 1;
CONSTANTS[7] = 0.15;
CONSTANTS[8] = 0.0167;
CONSTANTS[9] = 0.0167;
CONSTANTS[10] = 0.0042;
CONSTANTS[11] = 1;
CONSTANTS[12] = 0.042;
CONSTANTS[13] = 1;
CONSTANTS[14] = 0.0334;
CONSTANTS[15] = 0.1;
CONSTANTS[16] = 0.1;
CONSTANTS[17] = 10;
CONSTANTS[18] = 4000;
CONSTANTS[19] = 0.0003;
CONSTANTS[20] = 3e-05;
CONSTANTS[21] = 0.000275;
CONSTANTS[22] = 6;
CONSTANTS[23] = 6;
CONSTANTS[24] = 0.444;
CONSTANTS[25] = 19.8;
CONSTANTS[26] = 3.8;
CONSTANTS[27] = 5;
CONSTANTS[28] = 1.25;
CONSTANTS[29] = 2550;
CONSTANTS[30] = 4.61;
}

void SetupComputedConstants(double* CONSTANTS, double* VARIABLES)
{
VARIABLES[28] = (CONSTANTS[19]*CONSTANTS[20]);
VARIABLES[35] = (1.00000/(CONSTANTS[29]*602.200));
VARIABLES[36] = (1.00000/(CONSTANTS[29]*CONSTANTS[30]));
VARIABLES[34] = (VARIABLES[35]/VARIABLES[36]);
VARIABLES[13] = (CONSTANTS[21]*CONSTANTS[0]);
VARIABLES[16] = (CONSTANTS[3]*CONSTANTS[4]);
VARIABLES[24] = (CONSTANTS[14]*CONSTANTS[15]);
VARIABLES[0] = 0.100000;
VARIABLES[1] = 10000.0;
VARIABLES[2] = 0.00000;
VARIABLES[3] = 13.9000;
VARIABLES[4] = 0.00000;
VARIABLES[5] = 5.06000;
VARIABLES[6] = 0.00000;
VARIABLES[7] = 0.00000;
VARIABLES[8] = 0.0150000;
VARIABLES[9] = 9.09000;
VARIABLES[10] = 0.00000;
VARIABLES[11] = 90.9000;
VARIABLES[12] = 0.00000;
}

void ComputeRates(double* BOUND, double* RATES, double* CONSTANTS, double* VARIABLES)
{
RATES[11] = (VARIABLES[30]-(VARIABLES[21]+VARIABLES[20]));
RATES[12] = (VARIABLES[21]-(VARIABLES[23]+VARIABLES[30]));
RATES[9] = ((VARIABLES[20]+VARIABLES[25])-VARIABLES[22]);
RATES[10] = ((VARIABLES[22]+VARIABLES[23])-VARIABLES[25]);
RATES[8] = ((VARIABLES[34]*(VARIABLES[31]+VARIABLES[32]))-VARIABLES[33]);
RATES[1] = ((VARIABLES[19]+VARIABLES[30]+VARIABLES[25])-(VARIABLES[29]+VARIABLES[14]));
RATES[2] = (VARIABLES[18]-(VARIABLES[19]+VARIABLES[21]+VARIABLES[22]));
RATES[0] = (VARIABLES[34]*(-1.00000)*(VARIABLES[20]+VARIABLES[23]));
RATES[3] = ((-1.00000)*(VARIABLES[27]+VARIABLES[29]));
RATES[4] = ((VARIABLES[27]+VARIABLES[18])-VARIABLES[14]);
RATES[5] = (VARIABLES[29]-VARIABLES[15]);
RATES[7] = VARIABLES[17];
RATES[6] = (((VARIABLES[14]-VARIABLES[17])+VARIABLES[15])-VARIABLES[18]);
}

void ComputeVariables(double* BOUND, double* RATES, double* CONSTANTS, double* VARIABLES)
{
VARIABLES[26] = ((((BOUND[0]<(CONSTANTS[17]+0.150000)))&&((BOUND[0]>=CONSTANTS[17])))) ? ((CONSTANTS[16]/(1.00000+exp(((-80.0000)*((BOUND[0]-CONSTANTS[17])-0.0500000)))))) : (((BOUND[0]>=(CONSTANTS[17]+0.150000)))) ? (CONSTANTS[16]) : (0.00000);
VARIABLES[27] = ((CONSTANTS[19]*VARIABLES[3]*VARIABLES[26])-(VARIABLES[28]*VARIABLES[4]));
VARIABLES[29] = ((CONSTANTS[21]*VARIABLES[3]*VARIABLES[1])-(VARIABLES[13]*VARIABLES[5]));
VARIABLES[30] = (CONSTANTS[23]*VARIABLES[12]);
VARIABLES[31] = ((CONSTANTS[24]*VARIABLES[9]*CONSTANTS[18])/((CONSTANTS[25]/VARIABLES[34])+CONSTANTS[18]));
VARIABLES[32] = ((CONSTANTS[26]*VARIABLES[10]*CONSTANTS[18])/((CONSTANTS[27]/VARIABLES[34])+CONSTANTS[18]));
VARIABLES[33] = (CONSTANTS[28]*VARIABLES[8]);
VARIABLES[14] = ((CONSTANTS[1]*VARIABLES[4]*VARIABLES[1])-(CONSTANTS[2]*VARIABLES[6]));
VARIABLES[15] = ((CONSTANTS[3]*VARIABLES[26]*VARIABLES[5])-(VARIABLES[16]*VARIABLES[6]));
VARIABLES[17] = (CONSTANTS[5]*VARIABLES[6]);
VARIABLES[18] = (CONSTANTS[6]*VARIABLES[6]);
VARIABLES[19] = (CONSTANTS[7]*VARIABLES[2]);
VARIABLES[20] = ((CONSTANTS[8]*VARIABLES[11]*VARIABLES[0])-(CONSTANTS[9]*VARIABLES[9]));
VARIABLES[21] = ((CONSTANTS[10]*VARIABLES[11]*VARIABLES[2])-(CONSTANTS[11]*VARIABLES[12]));
VARIABLES[22] = ((CONSTANTS[12]*VARIABLES[9]*VARIABLES[2])-(CONSTANTS[13]*VARIABLES[10]));
VARIABLES[23] = ((CONSTANTS[14]*VARIABLES[12]*VARIABLES[0])-(VARIABLES[24]*VARIABLES[10]));
VARIABLES[25] = (CONSTANTS[22]*VARIABLES[10]);
#ifndef VARIABLES_FOR_RATES_ONLY
#endif
}