import nsrunit; unit conversion on; unit hour=3600 second^1; // unit nanomolar predefined unit flux=2.7777778E-10 meter^(-3)*second^(-1)*mole^1; unit first_order_rate_constant=2.7777778E-4 second^(-1); unit second_order_rate_constant=2.7777778E2 meter^3*second^(-1)*mole^(-1); unit hour=3600 second^1; // unit nanomolar predefined unit flux=2.7777778E-10 meter^(-3)*second^(-1)*mole^1; unit first_order_rate_constant=2.7777778E-4 second^(-1); unit second_order_rate_constant=2.7777778E2 meter^3*second^(-1)*mole^(-1); unit hour=3600 second^1; // unit nanomolar predefined unit flux=2.7777778E-10 meter^(-3)*second^(-1)*mole^1; unit first_order_rate_constant=2.7777778E-4 second^(-1); unit second_order_rate_constant=2.7777778E2 meter^3*second^(-1)*mole^(-1); unit hour=3600 second^1; // unit nanomolar predefined unit flux=2.7777778E-10 meter^(-3)*second^(-1)*mole^1; unit first_order_rate_constant=2.7777778E-4 second^(-1); unit second_order_rate_constant=2.7777778E2 meter^3*second^(-1)*mole^(-1); unit hour=3600 second^1; // unit nanomolar predefined unit flux=2.7777778E-10 meter^(-3)*second^(-1)*mole^1; unit first_order_rate_constant=2.7777778E-4 second^(-1); unit second_order_rate_constant=2.7777778E2 meter^3*second^(-1)*mole^(-1); math main { realDomain time hour; time.min=0; extern time.max; extern time.delta; real MP(time) nanomolar; when(time=time.min) MP=0.1; real MP_init nanomolar; MP_init=0.1; real vsP flux; vsP=2.4; real vmP flux; vmP=2.2; real kdmp first_order_rate_constant; kdmp=0.02; real KAP nanomolar; KAP=0.6; real KmP nanomolar; KmP=0.3; // Var below replaced by constant in model eqns to satisfy unit correction // real n dimensionless; // n=2.0; real BN(time) nanomolar; when(time=time.min) BN=0.1; real MC(time) nanomolar; when(time=time.min) MC=1.2; real MC_init nanomolar; MC_init=1.2; real vsC flux; vsC=2.2; real vmC flux; vmC=2.0; real kdmc first_order_rate_constant; kdmc=0.02; real KAC nanomolar; KAC=0.6; real KmC nanomolar; KmC=0.4; real MB(time) nanomolar; when(time=time.min) MB=9; real MB_init nanomolar; MB_init=9; real vsB flux; vsB=1.8; real vmB flux; vmB=1.3; real kdmb first_order_rate_constant; kdmb=0.02; real KIB nanomolar; KIB=2.2; real KmB nanomolar; KmB=0.4; // Var below replaced by constant in model eqns to satisfy unit correction // real m dimensionless; // m=2.0; real RN(time) nanomolar; when(time=time.min) RN=0.1; real MR(time) nanomolar; when(time=time.min) MR=1.5; real MR_init nanomolar; MR_init=1.5; real vsR flux; vsR=1.6; real vmR flux; vmR=1.6; real kdmr first_order_rate_constant; kdmr=0.02; real KAR nanomolar; KAR=0.6; real KmR nanomolar; KmR=0.4; // Var below replaced by constant in model eqns to satisfy unit correction // real h dimensionless; // h=2.0; real PC(time) nanomolar; when(time=time.min) PC=0.1; real PC_init nanomolar; PC_init=0.1; real ksP first_order_rate_constant; ksP=1.2; real Kp nanomolar; Kp=1.006; real Kdp nanomolar; Kdp=0.1; real k3 second_order_rate_constant; k3=0.8; real k4 first_order_rate_constant; k4=0.4; real kdn first_order_rate_constant; kdn=0.02; real V1P flux; V1P=9.6; real V2P flux; V2P=0.6; real PCP(time) nanomolar; when(time=time.min) PCP=0.1; real PCC(time) nanomolar; when(time=time.min) PCC=0.1; real CC(time) nanomolar; when(time=time.min) CC=0.1; real CC_init nanomolar; CC_init=0.1; real ksC first_order_rate_constant; ksC=3.2; real kdnc first_order_rate_constant; kdnc=0.02; real V1C flux; V1C=1.2; real V2C flux; V2C=0.2; real CCP(time) nanomolar; when(time=time.min) CCP=0.1; real RC(time) nanomolar; when(time=time.min) RC=0.1; real ksR first_order_rate_constant; ksR=1.7; real Kd nanomolar; Kd=0.3; real k9 first_order_rate_constant; k9=0.8; real k10 first_order_rate_constant; k10=0.4; real vdRC flux; vdRC=4.4; real PCP_init nanomolar; PCP_init=0.1; real vdPC flux; vdPC=3.4; real CCP_init nanomolar; CCP_init=0.1; real vdCC flux; vdCC=1.4; real PCC_init nanomolar; PCC_init=0.1; real k1 first_order_rate_constant; k1=0.8; real k2 first_order_rate_constant; k2=0.4; real V1PC flux; V1PC=2.4; real V2PC flux; V2PC=0.2; real PCCP(time) nanomolar; when(time=time.min) PCCP=0.1; real PCN(time) nanomolar; when(time=time.min) PCN=0.1; real PCN_init nanomolar; PCN_init=0.1; real k7 second_order_rate_constant; k7=1.0; real k8 first_order_rate_constant; k8=0.2; real V3PC flux; V3PC=2.4; real V4PC flux; V4PC=0.2; real PCNP(time) nanomolar; when(time=time.min) PCNP=0.1; real IN(time) nanomolar; when(time=time.min) IN=0.1; real RN_init nanomolar; RN_init=0.1; real vdRN flux; vdRN=0.8; real one nanomolar; one=1; real PCCP_init nanomolar; PCCP_init=0.1; real vdPCC flux; vdPCC=1.4; real PCNP_init nanomolar; PCNP_init=0.1; real vdPCN flux; vdPCN=1.4; real BC(time) nanomolar; when(time=time.min) BC=0.1; real BC_init nanomolar; BC_init=0.1; real ksB first_order_rate_constant; ksB=0.32; real k5 first_order_rate_constant; k5=0.8; real k6 first_order_rate_constant; k6=0.4; real V1B flux; V1B=1.4; real V2B flux; V2B=0.2; real BCP(time) nanomolar; when(time=time.min) BCP=0.1; real BCP_init nanomolar; BCP_init=0.1; real vdBC flux; vdBC=3.0; real BN_init nanomolar; BN_init=0.1; real V3B flux; V3B=1.4; real V4B flux; V4B=0.4; real BNP(time) nanomolar; when(time=time.min) BNP=0.1; real BNP_init nanomolar; BNP_init=0.1; real vdBN flux; vdBN=3.0; real IN_init nanomolar; IN_init=0.1; real vdIN flux; vdIN=1.6; // // // // // // // // RC:time=(ksR*MR+k10*RN-(k9*RC+vdRC*(RC/(Kd+RC))+kdn*RC)); // // // PCC:time=(V2PC*(PCCP/(Kdp+PCCP))+k3*PC*CC+k2*PCN-(V1PC*(PCC/(Kp+PCC))+k4*PCC+k1*PCC+kdn*PCC)); // // RN:time=(k9*RC-(k10*RN+vdRN*(RN/(Kd+RN))+kdn*RN)); // // // BC:time=(V2B*(BCP/(Kdp+BCP))+k6*BN+ksB*MB-(V1B*(BC/(Kp+BC))+k5*BC+kdn*BC)); // // // // IN:time=(k7*BN*PCN-(k8*IN+vdIN*(IN/(Kd+IN))+kdn*IN)); // // MP:time=(vsP*(BN^2/(KAP^2+BN^2))-(vmP*(MP/(KmP+MP))+kdmp*MP)); // MC:time=(vsC*(BN^2/(KAC^2+BN^2))-(vmC*(MC/(KmC+MC))+kdmc*MC)); // MB:time=(vsB*(KIB^2/(RN^2+KIB^2))-(vmB*(MB/(KmB+MB))+kdmb*MB)); // MR:time=(vsR*(BN^2/(KAR^2+BN^2))-(vmR*(MR/(KmR+MR))+kdmr*MR)); // PC:time=(ksP*MP+V2P*(PCP/(Kdp+PCP))+k4*PCC-(V1P*(PC/(Kp+PC))+k3*PC*CC+kdn*PC)); // CC:time=(ksC*MC+V2C*(CCP/(Kdp+CCP))+k4*PCC-(V1C*(CC/(Kp+CC))+k3*CC*PC+kdnc*CC)); // PCP:time=(V1P*(PC/(Kp+PC))-(V2P*(PCP/(Kdp+PCP))+vdPC*(PCP/(Kd+PCP))+kdn*PCP)); // CCP:time=(V1C*(CC/(Kp+CC))-(V2C*(CCP/(Kdp+CCP))+vdCC*(CCP/(Kd+CCP))+kdn*CCP)); // PCCP:time=(V1PC*(PCC/(Kp+PCC))-(V2PC*(PCCP/(Kdp+PCCP))+vdPCC*(PCCP/(Kd+PCCP))+kdn*PCCP)); // PCNP:time=(V3PC*(PCN/(Kp+PCN))-(V4PC*(PCNP/(Kdp+PCNP))+vdPCN*(PCNP/(Kd+PCNP))+kdn*PCNP)); // BCP:time=(V1B*(BC/(Kp+BC))-(V2B*(BCP/(Kdp+BCP))+vdBC*(BCP/(Kd+BCP))+kdn*BCP)); // BNP:time=(V3B*(BN/(Kp+BN))-(V4B*(BNP/(Kdp+BNP))+vdBN*(BNP/(Kd+BNP))+kdn*BNP)); // PCN:time=(V4PC*(PCNP/(Kdp+PCNP))+k1*PCC+k8*IN-(V3PC*(PCN/(Kp+PCN))+k2*PCN+k7*BN*PCN+kdn*PCN)); // BN:time=(V4B*(BNP/(Kdp+BNP))+k5*BC+k8*IN-(V3B*(BN/(Kp+BN))+k6*BN+k7*PCN*BN+kdn*BN)); }