// Created by libAntimony v2.8.0 model *Cloutier2009_BrainEnergyMetabolism() // Compartments and Species: compartment Astrocytes, Capillaries, Extracellular_space, Neurons; species $NAg in Astrocytes, $GLCg in Astrocytes, $G6Pg in Astrocytes, $F6Pg in Astrocytes; species $GAPg in Astrocytes, $PEPg in Astrocytes, $PYRg in Astrocytes, $LACg in Astrocytes; species $NADHg in Astrocytes, $ATPg in Astrocytes, $PCrg in Astrocytes; species $O2g in Astrocytes, $GLYg in Astrocytes, $GLUg in Astrocytes, $NADg in Astrocytes; species $NADH_g_tot in Astrocytes, $ADPg in Astrocytes, $CRg in Astrocytes; species $PCrg_tot in Astrocytes, $AMPg in Astrocytes, $O2c in Capillaries; species $GLCc in Capillaries, $LACc in Capillaries, $CO2c in Capillaries; species $GLCe in Extracellular_space, $LACe in Extracellular_space, $GLUe in Extracellular_space; species $NAe in Extracellular_space, $O2a in Extracellular_space, $CO2a in Extracellular_space; species $GLCa in Extracellular_space, $LACa in Extracellular_space, $NAn_ in Neurons; species $GLCn in Neurons, $G6Pn in Neurons, $F6Pn in Neurons, $GAPn in Neurons; species $PEPn in Neurons, $PYRn in Neurons, $LACn in Neurons, $NADHn in Neurons; species $ATPn in Neurons, $PCrn in Neurons, $O2n in Neurons, $GLUn in Neurons; species $ADPn in Neurons, $CRn in Neurons, $PCrn_tot in Neurons, $NADn in Neurons; species $NADH_n_tot in Neurons, $AMPn in Neurons; // Assignment Rules: Vg_leak_Na := Sm_g/Vg*(gg_NA/F)*(RT/F*ln(NAe/NAg) - Vm); Veg_GLU := Vmax_eg_GLU*(GLUe/(GLUe + Km_GLU)); Vg_pump := Sm_g/Vg*kpump*ATPg*NAg*(1 + ATPg/Km_pump)^-1; Vcg_GLC := Vm_cg_GLC*(GLCc/(GLCc + Km_cg_GLC) - GLCg/(GLCg + Km_cg_GLC)); Veg_GLC := KO1*Vm_eg_GLC*(GLCe/(GLCe + Km_eg_GLC) - GLCg/(GLCg + Km_eg_GLC)); Vg_hk := Vmax_g_hk*ATPg*(GLCg/(GLCg + Km_GLC))*(1 - 1/(1 + exp(-aG6P_inh_hk*1*(G6Pg - G6P_inh_hk)))); Vg_glyp := Vmax_glyp*(GLYg/(GLYg + Km_GLY))*deltaVt_GLY; Vg_pgi := Vmaxf_g_pgi*(G6Pg/(G6Pg + Km_G6P)) - Vmaxr_g_pgi*(F6Pg/(F6Pg + Km_F6P_pgi)); Vg_glys := Vmax_glys*(G6Pg/(G6Pg + Km_G6P_glys))*(1 - 1/(1 + exp(-aGLY_inh*1*(GLYg - GLY_inh)))); Vg_pfk := kg_pfk*ATPg*(F6Pg/(F6Pg + Km_F6P_pfk))*(1 + (ATPg/Ki_ATP)^nH)^-1; Vg_pgk := kg_pgk*GAPg*ADPg*(NADg/NADHg); Vg_pk := kg_pk*PEPg*ADPg; Vg_ldh := kfg_ldh*PYRg*NADHg - krg_ldh*LACg*NADg; Vg_mito := Vmax_g_mito*(O2g/(O2g + Km_O2))*(ADPg/(ADPg + Km_ADP))*(PYRg/(PYRg + Km_PYR))*(1 - 1/(1 + exp(1*-aATP_mito*(ATPg/ADPg - 1*rATP_mito)))); Vge_LAC := Vmax_ge_LAC*(LACg/(LACg + Km_ge_LAC) - LACe/(LACe + Km_ge_LAC)); Vgc_LAC := Vmax_gc_LAC*(LACg/(LACg + Km_gc_LAC) - LACc/(LACc + Km_gc_LAC)); Vg_ck := kfg_ck*PCrg*ADPg - krg_ck*CRg*ATPg; Vg_ATPase := Vmax_g_ATPase*(ATPg/(ATPg + 0.001)); Vg_gs := Vmax_g_gs*(GLUg/(GLUg + Km_GLU))*(ATPg/(ATPg + Km_ATP)); dAMP_dATPg := (qak/2 + qak*(ATPtot/(ATPg*u_g^(1/2)))) - (1 + 0.5*u_g^(1/2)); Vcg_O2 := PScapg/Vg*(Ko2*(HbOP/O2c - 1)^(-1/nh_O2_model_parameters) - O2g); NADg := NADH_g_tot - NADHg; ADPg := ATPg/2*(-qak + (qak^2 + 4*qak*(ATPtot/ATPg - 1))^(1/2)); CRg := PCrg_tot - PCrg; AMPg := ATPtot - (ATPg + ADPg); Vc_O2 := 2*(Fin_t/Vc)*(O2a - O2c); Vcn_O2 := PScapn/Vn*(Ko2*(HbOP/O2c - 1)^(-1/nh_O2_Vcn_O2) - O2n); Vc_GLC := 2*(Fin_t/Vc)*(GLCa - GLCc); Vce_GLC := Vm_ce_GLC*(GLCc/(GLCc + Km_ce_GLC) - GLCe/(GLCe + Km_ce_GLC)); Vc_LAC := 2*(Fin_t/Vc)*(LACa - LACc); Vec_LAC := Vm_ec_LAC*(LACe/(LACe + Km_ec_LAC) - LACc/(LACc + Km_ec_LAC)); Vnc_CO2 := 3*Vn_mito; Vgc_CO2 := 3*Vg_mito; Vc_CO2 := 2*(Fin_t/Vc)*(CO2c - CO2a); V_en_GLC := Vm_en_GLC*(GLCe/(GLCe + Km_en_GLC) - GLCn/(GLCn + Km_en_GLC)); Vne_LAC := Vmax_ne_LAC*(LACn/(LACn + Km_ne_LAC) - LACe/(LACe + Km_ne_LAC)); Vn_stim_GLU := Vn_stim*R_GLU_NA*KO2*(GLUn/(GLUn + Km_GLU)); Vn_leak_Na := Sm_n/Vn*(gn_NA/F)*(RT/F*ln(NAe/NAn_) - Vm); Vn_stim := v_stim; Vn_pump := Sm_n/Vn*kpump*ATPn*NAn_*(1 + ATPn/Km_pump)^-1; Vn_hk := Vmax_n_hk*ATPn*(GLCn/(GLCn + Km_GLC))*(1 - 1/(1 + exp(-aG6P_inh_hk*1*(G6Pn - G6P_inh_hk)))); Vn_pgi := Vmaxf_n_pgi*(G6Pn/(G6Pn + Km_G6P)) - Vmaxr_n_pgi*(F6Pn/(F6Pn + Km_F6P_pgi)); Vn_pfk := kn_pfk*ATPn*(F6Pn/(F6Pn + Km_F6P_pfk))*(1 + (ATPn/Ki_ATP)^nH)^-1; Vn_pgk := kn_pgk*GAPn*ADPn*(NADn/NADHn); Vn_pk := kn_pk*PEPn*ADPn; Vn_ldh := kfn_ldh*PYRn*NADHn - krn_ldh*LACn*NADn; Vn_mito := Vmax_n_mito*(O2n/(O2n + Km_O2))*(ADPn/(ADPn + Km_ADP))*(PYRn/(PYRn + Km_PYR))*(1 - 1/(1 + exp(-aATP_mito*1*(ATPn/ADPn - 1*rATP_mito)))); Vn_ck := kfn_ck*PCrn*ADPn - krn_ck*CRn*ATPn; Vn_ATPase := Vmax_n_ATPase*(ATPn/(ATPn + 0.001)); dAMP_dATPn := (qak/2 + qak*(ATPtot/(ATPn*u_n^(1/2)))) - (1 + 0.5*u_n^(1/2)); ADPn := ATPn/2*(-qak + (qak^2 + 4*qak*(ATPtot/ATPn - 1))^(1/2)); CRn := PCrn_tot - PCrn; NADn := NADH_n_tot - NADHn; AMPn := ATPtot - (ATPn + ADPn); u_n := qak^2 + 4*qak*(ATPtot/ATPn - 1); u_g := qak^2 + 4*qak*(ATPtot/ATPg - 1); Fin_t := CBF0_Fin_t + (stim*CBF0_Fin_t*deltaf*(1/(1 + exp(1*-sr*(time - ((to + t1) - 3))))) - stim*CBF0_Fin_t*deltaf*(1/(1 + exp(1*-sr*(time - (to + tend + t1 + 3)))))); Fout_t := CBF0_model_parameters*(((Vv/Vv0)^2 + tv*(Vv/Vv0)^-0.5*(Fin_t/Vv0))/(1 + CBF0_model_parameters*tv*(Vv/Vv0)^-0.5*(1/Vv0))); v_stim := stim*(v1_n + v2_n*((time - to)/t_n_stim)*exp(-((time - to)*(unitpulseSB/t_n_stim))))*unitpulseSB; deltaVt_GLY := 1 + stim*delta_GLY*KO3*(1/(1 + exp(1*-sr_GLY*(time - (to + to_GLY)))))*(1 - unitstepSB2); unitstepSB2 := piecewise(1, time - (tend_GLY + to + to_GLY) >= 0, 0); BOLD := Vv0*((k1 + k2)*(1 - dHb/dHb0) - (k2 + k3)*(1 - Vv/Vv0)); unitpulseSB := piecewise(1, time >= to && time <= to + tend, 0); unitstepSB := piecewise(1, time - (tend + to) >= 0, 0); // Rate Rules: NAg' = (Vg_leak_Na + 3*Veg_GLU) - 3*Vg_pump; GLCg' = (Vcg_GLC + Veg_GLC) - Vg_hk; G6Pg' = (Vg_hk + Vg_glyp) - (Vg_pgi + Vg_glys); F6Pg' = Vg_pgi - Vg_pfk; GAPg' = 2*Vg_pfk - Vg_pgk; PEPg' = Vg_pgk - Vg_pk; PYRg' = Vg_pk - (Vg_ldh + Vg_mito); LACg' = Vg_ldh - (Vge_LAC + Vgc_LAC); NADHg' = Vg_pgk - (Vg_ldh + Vg_mito); ATPg' = ((Vg_pgk + Vg_pk + nOP*Vg_mito + Vg_ck) - (Vg_hk + Vg_pfk + Vg_ATPase + Vg_pump + Vg_gs))*(1 - dAMP_dATPg)^-1; PCrg' = -Vg_ck; O2g' = Vcg_O2 - NAero*Vg_mito; GLYg' = Vg_glys - Vg_glyp; GLUg' = Veg_GLU - Vg_gs; O2c' = Vc_O2 - (Vcn_O2*(1/Rcn) + Vcg_O2*(1/Rcg)); GLCc' = Vc_GLC - (Vce_GLC*(1/Rce) + Vcg_GLC*(1/Rcg)); LACc' = Vc_LAC + Vec_LAC*(1/Rce) + Vgc_LAC*(1/Rcg); CO2c' = (Vnc_CO2*(1/Rcn) + Vgc_CO2*(1/Rcg)) - Vc_CO2; GLCe' = Vce_GLC - (Veg_GLC*(1/Reg) + V_en_GLC*(1/Ren)); LACe' = (Vne_LAC*(1/Ren) + Vge_LAC*(1/Reg)) - Vec_LAC; GLUe' = Vn_stim_GLU*(1/Ren) - Veg_GLU*(1/Reg); NAn_' = (Vn_leak_Na + Vn_stim) - 3*Vn_pump; GLCn' = V_en_GLC - Vn_hk; G6Pn' = Vn_hk - Vn_pgi; F6Pn' = Vn_pgi - Vn_pfk; GAPn' = 2*Vn_pfk - Vn_pgk; PEPn' = Vn_pgk - Vn_pk; PYRn' = Vn_pk - (Vn_ldh + Vn_mito); LACn' = Vn_ldh - Vne_LAC; NADHn' = Vn_pgk - (Vn_ldh + Vn_mito); ATPn' = ((Vn_pgk + Vn_pk + nOP*Vn_mito + Vn_ck) - (Vn_hk + Vn_pfk + Vn_ATPase + Vn_pump))*(1 - dAMP_dATPn)^-1; PCrn' = -Vn_ck; O2n' = Vcn_O2 - NAero*Vn_mito; GLUn' = Vg_gs*(1/Rng) - Vn_stim_GLU; Vv' = Fin_t - Fout_t; dHb' = Fin_t*(O2a - O2c) - Fout_t*(dHb/Vv); // Species initializations: NAg = 13.36; GLCg = 0.1656; G6Pg = 0.7326; F6Pg = 0.1116; GAPg = 0.0698; PEPg = 0.0254; PYRg = 0.1711; LACg = 0.4651; NADHg = 0.0445; ATPg = 2.24; PCrg = 4.6817; O2g = 0.1589; GLYg = 2.5; GLUg = 0; NADH_g_tot = 0.22; PCrg_tot = 5; O2c = 7.4201; GLCc = 4.6401; LACc = 0.3251; CO2c = 2.12; GLCe = 0.3339; LACe = 0.3986; GLUe = 0; NAe = 150; O2a = 8.34; CO2a = 1.2; GLCa = 4.8; LACa = 0.313; NAn_ = 15.533; GLCn = 0.2633; G6Pn = 0.7275; F6Pn = 0.1091; GAPn = 0.0418; PEPn = 0.0037; PYRn = 0.0388; LACn = 0.3856; NADHn = 0.0319; ATPn = 2.2592; PCrn = 4.2529; O2n = 0.0975; GLUn = 3; PCrn_tot = 5; NADH_n_tot = 0.22; // Compartment initializations: Astrocytes = 1; Capillaries = 1; Extracellular_space = 1; Neurons = 1; // Variable initializations: nOP = 15; NAero = 3; qak = 0.92; ATPtot = 2.379; Rcn = 0.01222; Rcg = 0.022; Rce = 0.0275; Reg = 0.8; Ren = 0.444444444444444; Rng = 1.8; Vv = 0.0237; dHb = 0.0218; Sm_n = 40500; Vn = 0.45; gn_NA = 0.0039; F = 96500; RT = 2577340; Vm = -70; kpump = 3.17e-007; Km_pump = 0.4243; Vm_en_GLC = 0.50417; Km_en_GLC = 5.32; Vmax_n_hk = 0.0513; Km_GLC = 0.105; aG6P_inh_hk = 20; G6P_inh_hk = 0.6; Vmaxf_n_pgi = 0.5; Km_G6P = 0.5; Vmaxr_n_pgi = 0.45; Km_F6P_pgi = 0.06; kn_pfk = 0.55783; Km_F6P_pfk = 0.18; Ki_ATP = 0.7595; nH = 4; kn_pgk = 0.4287; kn_pk = 28.6; kfn_ldh = 5.3; krn_ldh = 0.1046; Vmax_n_mito = 0.05557; Km_O2 = 0.0029658; Km_ADP = 0.00107; Km_PYR = 0.0632; aATP_mito = 5; rATP_mito = 20; Vmax_ne_LAC = 0.1978; Km_ne_LAC = 0.09314; Vmax_n_ATPase = 0.04889; kfn_ck = 0.0524681; krn_ck = 0.015; PScapn = 0.2202; Ko2 = 0.089733; HbOP = 8.6; nh_O2_Vcn_O2 = 2.7; Sm_g = 10500; Vg = 0.25; gg_NA = 0.00325; KO1 = 1; Vm_eg_GLC = 0.038089; Km_eg_GLC = 3.53; Vm_cg_GLC = 0.0098394; Km_cg_GLC = 9.92; Vmax_g_hk = 0.050461; Vmaxf_g_pgi = 0.5; Vmaxr_g_pgi = 0.45; kg_pfk = 0.403; kg_pgk = 0.2514; kg_pk = 2.73; kfg_ldh = 6.2613; krg_ldh = 0.54682; Vmax_g_mito = 0.008454; Vmax_ge_LAC = 0.086124; Km_ge_LAC = 0.22163; Vmax_gc_LAC = 0.00021856; Km_gc_LAC = 0.12862; Vmax_g_ATPase = 0.035657; kfg_ck = 0.0243; krg_ck = 0.02073; PScapg = 0.2457; nh_O2_model_parameters = 2.7; Vc = 0.0055; Vm_ce_GLC = 0.0489; Km_ce_GLC = 8.4568; Vm_ec_LAC = 0.0325; Km_ec_LAC = 0.764818; R_GLU_NA = 0.075; KO2 = 1; Km_GLU = 0.05; Vmax_g_gs = 0.3; Km_ATP = 0.01532; Vmax_eg_GLU = 0.0208; Vmax_glys = 0.0001528; Km_G6P_glys = 0.5; aGLY_inh = 20; GLY_inh = 4.2; Vmax_glyp = 4.922e-005; Km_GLY = 1; stim = 1; delta_GLY = 62; KO3 = 1; sr_GLY = 4; to = 200; to_GLY = 83; CBF0_Fin_t = 0.012; deltaf = 0.42; sr = 4.59186; t1 = 2; tend = 300; CBF0_model_parameters = 0.012; Vv0 = 0.0236; tv = 35; k1 = 2.22; k2 = 0.46; dHb0 = 0.064; k3 = 0.43; v1_n = 0.041; v2_n = 2.55; t_n_stim = 2; tend_GLY = 440; // Other declarations: var Vg_leak_Na, Veg_GLU, Vg_pump, Vcg_GLC, Veg_GLC, Vg_hk, Vg_glyp, Vg_pgi; var Vg_glys, Vg_pfk, Vg_pgk, Vg_pk, Vg_ldh, Vg_mito, Vge_LAC, Vgc_LAC, Vg_ck; var Vg_ATPase, Vg_gs, dAMP_dATPg, Vcg_O2, Vc_O2, Vcn_O2, Vc_GLC, Vce_GLC; var Vc_LAC, Vec_LAC, Vnc_CO2, Vgc_CO2, Vc_CO2, V_en_GLC, Vne_LAC, Vn_stim_GLU; var Vn_leak_Na, Vn_stim, Vn_pump, Vn_hk, Vn_pgi, Vn_pfk, Vn_pgk, Vn_pk; var Vn_ldh, Vn_mito, Vn_ck, Vn_ATPase, dAMP_dATPn, u_n, u_g, Vv, Fin_t; var Fout_t, dHb, v_stim, deltaVt_GLY, unitstepSB2, BOLD, unitpulseSB, unitstepSB; const Astrocytes, Capillaries, Extracellular_space, Neurons, nOP, NAero; const qak, ATPtot, Rcn, Rcg, Rce, Reg, Ren, Rng, Sm_n, Vn, gn_NA, F, RT; const Vm, kpump, Km_pump, Vm_en_GLC, Km_en_GLC, Vmax_n_hk, Km_GLC, aG6P_inh_hk; const G6P_inh_hk, Vmaxf_n_pgi, Km_G6P, Vmaxr_n_pgi, Km_F6P_pgi, kn_pfk; const Km_F6P_pfk, Ki_ATP, nH, kn_pgk, kn_pk, kfn_ldh, krn_ldh, Vmax_n_mito; const Km_O2, Km_ADP, Km_PYR, aATP_mito, rATP_mito, Vmax_ne_LAC, Km_ne_LAC; const Vmax_n_ATPase, kfn_ck, krn_ck, PScapn, Ko2, HbOP, nh_O2_Vcn_O2, Sm_g; const Vg, gg_NA, KO1, Vm_eg_GLC, Km_eg_GLC, Vm_cg_GLC, Km_cg_GLC, Vmax_g_hk; const Vmaxf_g_pgi, Vmaxr_g_pgi, kg_pfk, kg_pgk, kg_pk, kfg_ldh, krg_ldh; const Vmax_g_mito, Vmax_ge_LAC, Km_ge_LAC, Vmax_gc_LAC, Km_gc_LAC, Vmax_g_ATPase; const kfg_ck, krg_ck, PScapg, nh_O2_model_parameters, Vc, Vm_ce_GLC, Km_ce_GLC; const Vm_ec_LAC, Km_ec_LAC, R_GLU_NA, KO2, Km_GLU, Vmax_g_gs, Km_ATP, Vmax_eg_GLU; const Vmax_glys, Km_G6P_glys, aGLY_inh, GLY_inh, Vmax_glyp, Km_GLY, stim; const delta_GLY, KO3, sr_GLY, to, to_GLY, CBF0_Fin_t, deltaf, sr, t1, tend; const CBF0_model_parameters, Vv0, tv, k1, k2, dHb0, k3, v1_n, v2_n, t_n_stim; const tend_GLY; // Display Names: Extracellular_space is "Extracellular space"; nh_O2_Vcn_O2 is "nh_O2"; nh_O2_model_parameters is "nh_O2_2"; CBF0_Fin_t is "CBF0"; CBF0_model_parameters is "CBF0_2"; end