Views
Reconstruction of the action potential of ventricular myocardial fibres
Generated code
Download this code
- The required array sizes are:
- VARIABLES[25]
- CONSTANTS[5]
- BOUND[1]
- RATES[8]
- The following variables are defined:
- Variable Cai(RATES[0] and VARIABLES[0])
- Variable d(RATES[1] and VARIABLES[1])
- Variable alpha_d(VARIABLES[8]; recomputed after rate changes)
- Variable beta_d(VARIABLES[9]; recomputed after rate changes)
- Variable f(RATES[2] and VARIABLES[2])
- Variable alpha_f(VARIABLES[10]; recomputed after rate changes)
- Variable beta_f(VARIABLES[11]; recomputed after rate changes)
- Variable i_x1(VARIABLES[12]; recomputed after rate changes)
- Variable x1(RATES[3] and VARIABLES[3])
- Variable m(RATES[4] and VARIABLES[4])
- Variable alpha_m(VARIABLES[13]; recomputed after rate changes)
- Variable beta_m(VARIABLES[14]; recomputed after rate changes)
- Variable h(RATES[5] and VARIABLES[5])
- Variable alpha_h(VARIABLES[15]; recomputed after rate changes)
- Variable beta_h(VARIABLES[16]; recomputed after rate changes)
- Variable j(RATES[6] and VARIABLES[6])
- Variable alpha_j(VARIABLES[17]; recomputed after rate changes)
- Variable beta_j(VARIABLES[18]; recomputed after rate changes)
- Variable i_s(VARIABLES[19]; recomputed after rate changes)
- Variable g_s(CONSTANTS[0])
- Variable E_s(VARIABLES[20]; recomputed after rate changes)
- Variable alpha_x1(VARIABLES[21]; recomputed after rate changes)
- Variable beta_x1(VARIABLES[22]; recomputed after rate changes)
- Variable i_K1(VARIABLES[23]; recomputed after rate changes)
- Variable time(BOUND[0])
- Variable V(RATES[7] and VARIABLES[7])
- Variable C(CONSTANTS[1])
- Variable i_Na(VARIABLES[24]; recomputed after rate changes)
- Variable g_Na(CONSTANTS[2])
- Variable E_Na(CONSTANTS[3])
- Variable g_Nac(CONSTANTS[4])
- No equation needed for Newton-Raphson evaluation.
void SetupFixedConstants(double* CONSTANTS)
{
CONSTANTS[0] = 0.09;
CONSTANTS[1] = 1;
CONSTANTS[2] = 4;
CONSTANTS[3] = 50;
CONSTANTS[4] = 0.003;
}
void SetupComputedConstants(double* CONSTANTS, double* VARIABLES)
{
VARIABLES[0] = 0;
VARIABLES[1] = 0.003;
VARIABLES[2] = 0.994;
VARIABLES[3] = 0;
VARIABLES[4] = 0.011;
VARIABLES[5] = 0.988;
VARIABLES[6] = 0.975;
VARIABLES[7] = -84.624;
}
void ComputeRates(double* BOUND, double* RATES, double* CONSTANTS, double* VARIABLES)
{
RATES[7] = ((-(1.00000/CONSTANTS[1]))*(VARIABLES[24]+VARIABLES[19]+VARIABLES[12]+VARIABLES[23]));
RATES[4] = ((VARIABLES[13]*(1.00000-VARIABLES[4]))-(VARIABLES[14]*VARIABLES[4]));
RATES[5] = ((VARIABLES[15]*(1.00000-VARIABLES[5]))-(VARIABLES[16]*VARIABLES[5]));
RATES[6] = ((VARIABLES[17]*(1.00000-VARIABLES[6]))-(VARIABLES[18]*VARIABLES[6]));
RATES[0] = ((-0.00100000*VARIABLES[19])+(0.0700000*(0.00100000-VARIABLES[0])));
RATES[1] = ((VARIABLES[8]*(1.00000-VARIABLES[1]))-(VARIABLES[9]*VARIABLES[1]));
RATES[2] = ((VARIABLES[10]*(1.00000-VARIABLES[2]))-(VARIABLES[11]*VARIABLES[2]));
RATES[3] = ((VARIABLES[21]*(1.00000-VARIABLES[3]))-(VARIABLES[22]*VARIABLES[3]));
}
void ComputeVariables(double* BOUND, double* RATES, double* CONSTANTS, double* VARIABLES)
{
VARIABLES[24] = (((CONSTANTS[2]*pow(VARIABLES[4],3.00000)*VARIABLES[5]*VARIABLES[6])+CONSTANTS[4])*(VARIABLES[7]-CONSTANTS[3]));
VARIABLES[8] = ((0.0950000*exp((-((VARIABLES[7]+-5.00000)/100.000))))/(1.00000+exp((-((VARIABLES[7]+-5.00000)/13.8900)))));
VARIABLES[9] = ((0.0700000*exp((-((VARIABLES[7]+44.0000)/59.0000))))/(1.00000+exp(((VARIABLES[7]+44.0000)/20.0000))));
VARIABLES[10] = ((0.0120000*exp((-((VARIABLES[7]+28.0000)/125.000))))/(1.00000+exp(((VARIABLES[7]+28.0000)/6.67000))));
VARIABLES[11] = ((0.00650000*exp((-((VARIABLES[7]+30.0000)/50.0000))))/(1.00000+exp((-((VARIABLES[7]+30.0000)/5.00000)))));
VARIABLES[12] = (VARIABLES[3]*0.800000*((exp((0.0400000*(VARIABLES[7]+77.0000)))-1.00000)/exp((0.0400000*(VARIABLES[7]+35.0000)))));
VARIABLES[13] = ((-1.00000*(VARIABLES[7]+47.0000))/(exp((-0.100000*(VARIABLES[7]+47.0000)))-1.00000));
VARIABLES[14] = (40.0000*exp((-0.0560000*(VARIABLES[7]+72.0000))));
VARIABLES[15] = (0.126000*exp((-0.250000*(VARIABLES[7]+77.0000))));
VARIABLES[16] = (1.70000/(exp((-0.0820000*(VARIABLES[7]+22.5000)))+1.00000));
VARIABLES[17] = ((0.0550000*exp((-0.250000*(VARIABLES[7]+78.0000))))/(exp((-0.200000*(VARIABLES[7]+78.0000)))+1.00000));
VARIABLES[18] = (0.300000/(exp((-0.100000*(VARIABLES[7]+32.0000)))+1.00000));
VARIABLES[20] = (-82.3000-(13.0287*log(VARIABLES[0])));
VARIABLES[19] = (CONSTANTS[0]*VARIABLES[1]*VARIABLES[2]*(VARIABLES[7]-VARIABLES[20]));
VARIABLES[21] = (0.000500000*(exp(((VARIABLES[7]+50.0000)/12.1000))/(1.00000+exp(((VARIABLES[7]+50.0000)/17.5000)))));
VARIABLES[22] = (0.00130000*(exp((-((VARIABLES[7]+20.0000)/16.6700)))/(1.00000+exp((-((VARIABLES[7]+20.0000)/25.0000))))));
VARIABLES[23] = (0.350000*((4.00000*((exp((0.0400000*(VARIABLES[7]+85.0000)))-1.00000)/(exp((0.0800000*(VARIABLES[7]+53.0000)))+exp((0.0400000*(VARIABLES[7]+53.0000))))))+(0.200000*((VARIABLES[7]+23.0000)/(1.00000-exp((-0.0400000*(VARIABLES[7]+23.0000))))))));
#ifndef VARIABLES_FOR_RATES_ONLY
#endif
}
