/* There are a total of 17 entries in the algebraic variable array. There are a total of 16 entries in each of the rate and state variable arrays. There are a total of 72 entries in the constant variable array. */ /* * VOI is time in component environment (minute). * STATES[0] is N in component N (nanomolar). * CONSTANTS[0] is KdN in component N (nanomolar). * CONSTANTS[1] is vsN in component N (flux). * CONSTANTS[2] is vdN in component N (flux). * CONSTANTS[3] is kc in component model_parameters (first_order_rate_constant). * CONSTANTS[4] is KIF in component model_parameters (nanomolar). * STATES[1] is F in component F (nanomolar). * CONSTANTS[5] is epsilon in component model_parameters (dimensionless). * CONSTANTS[6] is j in component model_parameters (dimensionless). * STATES[2] is Na in component Na (nanomolar). * ALGEBRAIC[0] is Vtr in component Na (flux). * CONSTANTS[7] is KdNa in component Na (nanomolar). * CONSTANTS[8] is VdNa in component Na (flux). * CONSTANTS[9] is kt1 in component Na (first_order_rate_constant). * CONSTANTS[10] is kt2 in component Na (first_order_rate_constant). * STATES[3] is Nan in component Nan (nanomolar). * CONSTANTS[11] is KdNan in component Nan (nanomolar). * CONSTANTS[12] is VdNan in component Nan (flux). * STATES[4] is MF in component MF (nanomolar). * CONSTANTS[13] is KdMF in component MF (nanomolar). * CONSTANTS[14] is vsF in component MF (flux). * CONSTANTS[15] is vmF in component MF (flux). * CONSTANTS[16] is KA in component MF (nanomolar). * CONSTANTS[17] is p in component model_parameters (dimensionless). * CONSTANTS[18] is KdF in component F (nanomolar). * CONSTANTS[19] is vdF in component F (flux). * CONSTANTS[20] is ksF in component F (first_order_rate_constant). * STATES[5] is K in component K (nanomolar). * ALGEBRAIC[2] is V1 in component Wnt_parameters (flux). * CONSTANTS[21] is theta in component model_parameters (dimensionless). * STATES[6] is B in component B (nanomolar). * CONSTANTS[22] is kd1 in component B (first_order_rate_constant). * CONSTANTS[23] is vsB in component B (flux). * ALGEBRAIC[4] is VK in component Wnt_parameters (flux). * ALGEBRAIC[5] is VP in component Wnt_parameters (flux). * ALGEBRAIC[3] is V2 in component Wnt_parameters (flux). * CONSTANTS[24] is Kt in component Wnt_parameters (nanomolar). * ALGEBRAIC[1] is AK in component Wnt_parameters (nanomolar). * STATES[7] is Bp in component Bp (nanomolar). * CONSTANTS[25] is kd2 in component Bp (first_order_rate_constant). * STATES[8] is BN in component BN (nanomolar). * STATES[9] is MAx in component MAx (nanomolar). * CONSTANTS[26] is v0 in component MAx (flux). * CONSTANTS[27] is vMB in component MAx (flux). * CONSTANTS[28] is vmd in component MAx (flux). * CONSTANTS[29] is KaB in component MAx (nanomolar). * CONSTANTS[30] is Kmd in component MAx (nanomolar). * CONSTANTS[31] is n in component MAx (dimensionless). * STATES[10] is A in component A (nanomolar). * CONSTANTS[32] is ksAx in component A (first_order_rate_constant). * CONSTANTS[33] is vdAx in component A (flux). * CONSTANTS[34] is KdAx in component A (nanomolar). * CONSTANTS[35] is d1 in component Wnt_parameters (first_order_rate_constant). * CONSTANTS[36] is a1 in component Wnt_parameters (second_order_rate_constant). * CONSTANTS[37] is K1 in component Wnt_parameters (nanomolar). * CONSTANTS[38] is K2 in component Wnt_parameters (nanomolar). * CONSTANTS[39] is D in component Wnt_parameters (nanomolar). * CONSTANTS[40] is KID in component Wnt_parameters (nanomolar). * CONSTANTS[41] is kt3 in component Wnt_parameters (first_order_rate_constant). * CONSTANTS[42] is kt4 in component Wnt_parameters (first_order_rate_constant). * CONSTANTS[43] is VMK in component Wnt_parameters (flux). * CONSTANTS[44] is VMP in component Wnt_parameters (flux). * STATES[11] is Rasa in component Rasa (nanomolar). * ALGEBRAIC[7] is VaRas in component FGF_parameters (flux). * ALGEBRAIC[8] is VdRas in component FGF_parameters (flux). * CONSTANTS[45] is eta in component model_parameters (dimensionless). * STATES[12] is ERKa in component ERKa (nanomolar). * ALGEBRAIC[10] is VaErk in component FGF_parameters (flux). * ALGEBRAIC[11] is VdErk in component FGF_parameters (flux). * STATES[13] is Xa in component Xa (nanomolar). * ALGEBRAIC[13] is VaX in component FGF_parameters (flux). * ALGEBRAIC[14] is VdX in component FGF_parameters (flux). * STATES[14] is MDusp in component MDusp (nanomolar). * ALGEBRAIC[15] is VsMDusp in component FGF_parameters (flux). * ALGEBRAIC[16] is VdMDusp in component FGF_parameters (flux). * STATES[15] is Dusp in component Dusp (nanomolar). * CONSTANTS[46] is ksDusp in component Dusp (first_order_rate_constant). * CONSTANTS[47] is vdDusp in component Dusp (flux). * CONSTANTS[48] is KdDusp in component Dusp (nanomolar). * ALGEBRAIC[6] is Rasi in component FGF_parameters (nanomolar). * ALGEBRAIC[9] is ERKi in component FGF_parameters (nanomolar). * ALGEBRAIC[12] is Xi in component FGF_parameters (nanomolar). * CONSTANTS[49] is Rast in component FGF_parameters (nanomolar). * CONSTANTS[50] is ERKt in component FGF_parameters (nanomolar). * CONSTANTS[51] is Xt in component FGF_parameters (nanomolar). * CONSTANTS[52] is kcDusp in component FGF_parameters (first_order_rate_constant). * CONSTANTS[53] is VMaRas in component FGF_parameters (flux). * CONSTANTS[54] is VMdRas in component FGF_parameters (flux). * CONSTANTS[55] is VMaErk in component FGF_parameters (flux). * CONSTANTS[56] is VMaX in component FGF_parameters (flux). * CONSTANTS[57] is VMdX in component FGF_parameters (flux). * CONSTANTS[58] is VMsMDusp in component FGF_parameters (flux). * CONSTANTS[59] is VMdMDusp in component FGF_parameters (flux). * CONSTANTS[60] is Fgf in component FGF_parameters (nanomolar). * CONSTANTS[61] is KaFgf in component FGF_parameters (nanomolar). * CONSTANTS[62] is KaRas in component FGF_parameters (nanomolar). * CONSTANTS[63] is KdRas in component FGF_parameters (nanomolar). * CONSTANTS[64] is KdErk in component FGF_parameters (nanomolar). * CONSTANTS[65] is KaErk in component FGF_parameters (nanomolar). * CONSTANTS[66] is KaX in component FGF_parameters (nanomolar). * CONSTANTS[67] is KdX in component FGF_parameters (nanomolar). * CONSTANTS[68] is KaMDusp in component FGF_parameters (nanomolar). * CONSTANTS[69] is KdMDusp in component FGF_parameters (nanomolar). * CONSTANTS[70] is q in component FGF_parameters (dimensionless). * CONSTANTS[71] is r in component FGF_parameters (dimensionless). * RATES[0] is d/dt N in component N (nanomolar). * RATES[2] is d/dt Na in component Na (nanomolar). * RATES[3] is d/dt Nan in component Nan (nanomolar). * RATES[4] is d/dt MF in component MF (nanomolar). * RATES[1] is d/dt F in component F (nanomolar). * RATES[5] is d/dt K in component K (nanomolar). * RATES[6] is d/dt B in component B (nanomolar). * RATES[7] is d/dt Bp in component Bp (nanomolar). * RATES[8] is d/dt BN in component BN (nanomolar). * RATES[9] is d/dt MAx in component MAx (nanomolar). * RATES[10] is d/dt A in component A (nanomolar). * RATES[11] is d/dt Rasa in component Rasa (nanomolar). * RATES[12] is d/dt ERKa in component ERKa (nanomolar). * RATES[13] is d/dt Xa in component Xa (nanomolar). * RATES[14] is d/dt MDusp in component MDusp (nanomolar). * RATES[15] is d/dt Dusp in component Dusp (nanomolar). * There are a total of 0 condition variables. */ void initConsts(double* CONSTANTS, double* RATES, double *STATES) { STATES[0] = 0.5; CONSTANTS[0] = 1.4; CONSTANTS[1] = 0.23; CONSTANTS[2] = 2.82; CONSTANTS[3] = 3.45; CONSTANTS[4] = 0.5; STATES[1] = 0.001; CONSTANTS[5] = 0.3; CONSTANTS[6] = 2.0; STATES[2] = 0.2; CONSTANTS[7] = 0.001; CONSTANTS[8] = 0.01; CONSTANTS[9] = 0.1; CONSTANTS[10] = 0.1; STATES[3] = 0.0; CONSTANTS[11] = 0.001; CONSTANTS[12] = 0.1; STATES[4] = 0.1; CONSTANTS[13] = 0.768; CONSTANTS[14] = 3.0; CONSTANTS[15] = 1.92; CONSTANTS[16] = 0.05; CONSTANTS[17] = 2.0; CONSTANTS[18] = 0.37; CONSTANTS[19] = 0.39; CONSTANTS[20] = 0.3; STATES[5] = 3.0; CONSTANTS[21] = 1.5; STATES[6] = 0.1; CONSTANTS[22] = 0.0; CONSTANTS[23] = 0.087; CONSTANTS[24] = 3.0; STATES[7] = 0.1; CONSTANTS[25] = 7.062; STATES[8] = 0.001; STATES[9] = 0.1; CONSTANTS[26] = 0.06; CONSTANTS[27] = 1.64; CONSTANTS[28] = 0.8; CONSTANTS[29] = 0.7; CONSTANTS[30] = 0.48; CONSTANTS[31] = 2.0; STATES[10] = 0.1; CONSTANTS[32] = 0.02; CONSTANTS[33] = 0.6; CONSTANTS[34] = 0.63; CONSTANTS[35] = 0.1; CONSTANTS[36] = 1.8; CONSTANTS[37] = 0.28; CONSTANTS[38] = 0.03; CONSTANTS[39] = 2.0; CONSTANTS[40] = 0.5; CONSTANTS[41] = 0.7; CONSTANTS[42] = 1.5; CONSTANTS[43] = 5.08; CONSTANTS[44] = 1.0; STATES[11] = 0.5; CONSTANTS[45] = 0.3; STATES[12] = 0.2; STATES[13] = 0.1; STATES[14] = 0.1; STATES[15] = 0.1; CONSTANTS[46] = 0.5; CONSTANTS[47] = 2.0; CONSTANTS[48] = 0.5; CONSTANTS[49] = 2.0; CONSTANTS[50] = 2.0; CONSTANTS[51] = 2.0; CONSTANTS[52] = 1.35; CONSTANTS[53] = 4.968; CONSTANTS[54] = 0.41; CONSTANTS[55] = 3.30; CONSTANTS[56] = 1.6; CONSTANTS[57] = 0.5; CONSTANTS[58] = 0.9; CONSTANTS[59] = 0.5; CONSTANTS[60] = 1.0; CONSTANTS[61] = 0.5; CONSTANTS[62] = 0.103; CONSTANTS[63] = 0.1; CONSTANTS[64] = 0.05; CONSTANTS[65] = 0.05; CONSTANTS[66] = 0.05; CONSTANTS[67] = 0.05; CONSTANTS[68] = 0.5; CONSTANTS[69] = 0.5; CONSTANTS[70] = 2.0; CONSTANTS[71] = 2.0; RATES[0] = 0.1001; RATES[2] = 0.1001; RATES[3] = 0.1001; RATES[4] = 0.1001; RATES[1] = 0.1001; RATES[5] = 0.1001; RATES[6] = 0.1001; RATES[7] = 0.1001; RATES[8] = 0.1001; RATES[9] = 0.1001; RATES[10] = 0.1001; RATES[11] = 0.1001; RATES[12] = 0.1001; RATES[13] = 0.1001; RATES[14] = 0.1001; RATES[15] = 0.1001; } void computeResiduals(double VOI, double* CONSTANTS, double* RATES, double* OLDRATES, double* STATES, double* OLDSTATES, double* ALGEBRAIC, double* CONDVARS) { resid[0] = RATES[0] - CONSTANTS[5]*(CONSTANTS[1] - ( CONSTANTS[2]*(STATES[0]/(CONSTANTS[0]+STATES[0]))+ CONSTANTS[3]*STATES[0]*(pow(CONSTANTS[4], CONSTANTS[6])/(pow(CONSTANTS[4], CONSTANTS[6])+pow(STATES[1], CONSTANTS[6]))))); resid[1] = RATES[2] - CONSTANTS[5]*( CONSTANTS[3]*STATES[0]*(pow(CONSTANTS[4], CONSTANTS[6])/(pow(CONSTANTS[4], CONSTANTS[6])+pow(STATES[1], CONSTANTS[6]))) - ( CONSTANTS[8]*(STATES[2]/(CONSTANTS[7]+STATES[2]))+ALGEBRAIC[0])); resid[2] = RATES[3] - CONSTANTS[5]*(ALGEBRAIC[0] - CONSTANTS[12]*(STATES[3]/(CONSTANTS[11]+STATES[3]))); resid[3] = RATES[4] - CONSTANTS[5]*( CONSTANTS[14]*(pow(STATES[3], CONSTANTS[17])/(pow(CONSTANTS[16], CONSTANTS[17])+pow(STATES[3], CONSTANTS[17]))) - CONSTANTS[15]*(STATES[4]/(CONSTANTS[13]+STATES[4]))); resid[4] = RATES[1] - CONSTANTS[5]*( CONSTANTS[20]*STATES[4] - CONSTANTS[19]*(STATES[1]/(CONSTANTS[18]+STATES[1]))); resid[5] = RATES[5] - CONSTANTS[21]*ALGEBRAIC[2]; resid[6] = RATES[6] - CONSTANTS[21]*((CONSTANTS[23]+ALGEBRAIC[5]+ALGEBRAIC[3]) - ( ALGEBRAIC[4]*(ALGEBRAIC[1]/CONSTANTS[24])+ CONSTANTS[22]*STATES[6])); resid[7] = RATES[7] - CONSTANTS[21]*( ALGEBRAIC[4]*(ALGEBRAIC[1]/CONSTANTS[24]) - (ALGEBRAIC[5]+ CONSTANTS[25]*STATES[7])); resid[8] = RATES[8] - - ( CONSTANTS[21]*ALGEBRAIC[3]); resid[9] = RATES[9] - CONSTANTS[21]*((CONSTANTS[26]+ CONSTANTS[27]*(pow(STATES[8], CONSTANTS[31])/(pow(CONSTANTS[29], CONSTANTS[31])+pow(STATES[8], CONSTANTS[31])))) - CONSTANTS[28]*(STATES[9]/(CONSTANTS[30]+STATES[9]))); resid[10] = RATES[10] - CONSTANTS[21]*(( CONSTANTS[32]*STATES[9]+ALGEBRAIC[2]) - CONSTANTS[33]*(STATES[10]/(CONSTANTS[34]+STATES[10]))); resid[11] = RATES[11] - CONSTANTS[45]*(ALGEBRAIC[7] - ALGEBRAIC[8]); resid[12] = RATES[12] - CONSTANTS[45]*(ALGEBRAIC[10] - ALGEBRAIC[11]); resid[13] = RATES[13] - CONSTANTS[45]*(ALGEBRAIC[13] - ALGEBRAIC[14]); resid[14] = RATES[14] - CONSTANTS[45]*(ALGEBRAIC[15] - ALGEBRAIC[16]); resid[15] = RATES[15] - CONSTANTS[45]*( CONSTANTS[46]*STATES[14] - CONSTANTS[47]*(STATES[15]/(CONSTANTS[48]+STATES[15]))); } void computeVariables(double VOI, double* CONSTANTS, double* RATES, double* STATES, double* ALGEBRAIC) { } void computeEssentialVariables(double VOI, double* CONSTANTS, double* RATES, double* STATES, double* ALGEBRAIC) { ALGEBRAIC[0] = CONSTANTS[9]*STATES[2] - CONSTANTS[10]*STATES[3]; ALGEBRAIC[1] = CONSTANTS[24] - STATES[5]; ALGEBRAIC[2] = CONSTANTS[35]*ALGEBRAIC[1] - CONSTANTS[36]*STATES[10]*STATES[5]; ALGEBRAIC[3] = CONSTANTS[42]*STATES[8] - CONSTANTS[41]*STATES[6]; ALGEBRAIC[4] = CONSTANTS[43]*(CONSTANTS[40]/(CONSTANTS[40]+CONSTANTS[39]))*(STATES[6]/(CONSTANTS[37]+STATES[6])); ALGEBRAIC[5] = CONSTANTS[44]*(STATES[7]/(CONSTANTS[38]+STATES[7])); ALGEBRAIC[6] = CONSTANTS[49] - STATES[11]; ALGEBRAIC[7] = CONSTANTS[53]*(pow(CONSTANTS[60], CONSTANTS[71])/(pow(CONSTANTS[61], CONSTANTS[71])+pow(CONSTANTS[60], CONSTANTS[71])))*(ALGEBRAIC[6]/(CONSTANTS[62]+ALGEBRAIC[6])); ALGEBRAIC[8] = CONSTANTS[54]*(STATES[11]/(CONSTANTS[63]+STATES[11])); ALGEBRAIC[9] = CONSTANTS[50] - STATES[12]; ALGEBRAIC[10] = CONSTANTS[55]*(STATES[11]/CONSTANTS[49])*(ALGEBRAIC[9]/(CONSTANTS[65]+ALGEBRAIC[9])); ALGEBRAIC[11] = CONSTANTS[52]*STATES[15]*(STATES[12]/(CONSTANTS[64]+STATES[12])); ALGEBRAIC[12] = CONSTANTS[51] - STATES[13]; ALGEBRAIC[13] = CONSTANTS[56]*(STATES[12]/CONSTANTS[50])*(ALGEBRAIC[12]/(CONSTANTS[66]+ALGEBRAIC[12])); ALGEBRAIC[14] = CONSTANTS[57]*(STATES[13]/(CONSTANTS[67]+STATES[13])); ALGEBRAIC[15] = CONSTANTS[58]*(pow(STATES[13], CONSTANTS[70])/(pow(CONSTANTS[68], CONSTANTS[70])+pow(STATES[13], CONSTANTS[70]))); ALGEBRAIC[16] = CONSTANTS[59]*(STATES[14]/(CONSTANTS[69]+STATES[14])); } void getStateInformation(double* SI) { SI[0] = 1.0; SI[1] = 1.0; SI[2] = 1.0; SI[3] = 1.0; SI[4] = 1.0; SI[5] = 1.0; SI[6] = 1.0; SI[7] = 1.0; SI[8] = 1.0; SI[9] = 1.0; SI[10] = 1.0; SI[11] = 1.0; SI[12] = 1.0; SI[13] = 1.0; SI[14] = 1.0; SI[15] = 1.0; } void computeRoots(double VOI, double* CONSTANTS, double* RATES, double* OLDRATES, double* STATES, double* OLDSTATES, double* ALGEBRAIC, double* CONDVARS) { }