// Created by libAntimony v2.8.0 function NADPH_production(j, S1, Nt) j/2*(S1/Nt); end function carboxylation(Vc, Vj, Vp) ((((Vc + Vj) - abs(Vc - Vj))/2 + Vp) - abs(((Vc + Vj) - abs(Vc - Vj))/2 - Vp))/2; end function PGA_consumption(S1, Rp, R, Nt, Vc) S1/Rp*(R/Nt)*Vc; end function oxygenation(phi, Vc, Vj, Vp) (phi*((((Vc + Vj) - abs(Vc - Vj))/2 + Vp) - abs(((Vc + Vj) - abs(Vc - Vj))/2 - Vp)))/2; end model *Arnold2011_Schultz2003_RuBisCO_CalvinCycle() // Compartments and Species: compartment chloroplast; species $RuBP in chloroplast, PGA in chloroplast, NADPH in chloroplast; species $CO2 in chloroplast, $O2 in chloroplast, $NADP in chloroplast; // Assignment Rules: NADP := Nt - NADPH; J := (alpha*PPFD)/sqrt(1 + ((alpha*PPFD)/Jmax)^2)/(65*0.5); phi := (0.21*(((g0 + (h*k)/CO2*(v_c - Rd))*O2)/Ko))/((g0 + (h*k - 1.6)*(v_c - Rd))/Kc); v_c := (abs((abs(Vc + Vj) - abs(Vc - Vj))/2 + Vp) - abs((abs(Vc + Vj) - abs(Vc - Vj))/2 - Vp))/2; Vc := Vcmax*((CO2 - 1.6*((1/2*((1.6*(Vcmax - Rd) + ((k*h)/CO2*Rd + g0)*(CO2 + Kc*(1 + O2/Ko)) + (k*h)/CO2*Vcmax*(Gamma - CO2))/(1.6 - (k*h)/CO2*(CO2 + Kc*(1 + O2/Ko))) + sqrt(((1.6*(Vcmax - Rd) + ((k*h)/CO2*Rd + g0)*(CO2 + Kc*(1 + O2/Ko)) + (k*h)/CO2*Vcmax*(Gamma - CO2))/(1.6 - (k*h)/CO2*(CO2 + Kc*(1 + O2/Ko))))^2 + 4*g0*((Rd*(CO2 + Kc*(1 + O2/Ko)) + Vcmax*(Gamma - CO2))/(1.6 - (k*h)/CO2*(CO2 + Kc*(1 + O2/Ko)))))))/(g0 + (k*h)/CO2*(1/2)*((1.6*(Vcmax - Rd) + ((k*h)/CO2*Rd + g0)*(CO2 + Kc*(1 + O2/Ko)) + (k*h)/CO2*Vcmax*(Gamma - CO2))/(1.6 - (k*h)/CO2*(CO2 + Kc*(1 + O2/Ko))) + sqrt(((1.6*(Vcmax - Rd) + ((k*h)/CO2*Rd + g0)*(CO2 + Kc*(1 + O2/Ko)) + (k*h)/CO2*Vcmax*(Gamma - CO2))/(1.6 - (k*h)/CO2*(CO2 + Kc*(1 + O2/Ko))))^2 + 4*g0*((Rd*(CO2 + Kc*(1 + O2/Ko)) + Vcmax*(Gamma - CO2))/(1.6 - (k*h)/CO2*(CO2 + Kc*(1 + O2/Ko)))))))))/(CO2 - 1.6*((1/2*((1.6*(Vcmax - Rd) + ((k*h)/CO2*Rd + g0)*(CO2 + Kc*(1 + O2/Ko)) + (k*h)/CO2*Vcmax*(Gamma - CO2))/(1.6 - (k*h)/CO2*(CO2 + Kc*(1 + O2/Ko))) + sqrt(((1.6*(Vcmax - Rd) + ((k*h)/CO2*Rd + g0)*(CO2 + Kc*(1 + O2/Ko)) + (k*h)/CO2*Vcmax*(Gamma - CO2))/(1.6 - (k*h)/CO2*(CO2 + Kc*(1 + O2/Ko))))^2 + 4*g0*((Rd*(CO2 + Kc*(1 + O2/Ko)) + Vcmax*(Gamma - CO2))/(1.6 - (k*h)/CO2*(CO2 + Kc*(1 + O2/Ko)))))))/(g0 + (k*h)/CO2*(1/2)*((1.6*(Vcmax - Rd) + ((k*h)/CO2*Rd + g0)*(CO2 + Kc*(1 + O2/Ko)) + (k*h)/CO2*Vcmax*(Gamma - CO2))/(1.6 - (k*h)/CO2*(CO2 + Kc*(1 + O2/Ko))) + sqrt(((1.6*(Vcmax - Rd) + ((k*h)/CO2*Rd + g0)*(CO2 + Kc*(1 + O2/Ko)) + (k*h)/CO2*Vcmax*(Gamma - CO2))/(1.6 - (k*h)/CO2*(CO2 + Kc*(1 + O2/Ko))))^2 + 4*g0*((Rd*(CO2 + Kc*(1 + O2/Ko)) + Vcmax*(Gamma - CO2))/(1.6 - (k*h)/CO2*(CO2 + Kc*(1 + O2/Ko)))))))) + Kc*(1 + O2/Ko))); Vj := J/4*((CO2 - 1.6*((1/2*((1.6*(J/4 - Rd) + ((k*h)/CO2*Rd + g0)*(CO2 + 2*Gamma) + ((k*h)/CO2*J)/4*(Gamma - CO2))/(1.6 - (k*h)/CO2*(CO2 + 2*Gamma)) + sqrt(((1.6*(J/4 - Rd) + ((k*h)/CO2*Rd + g0)*(CO2 + 2*Gamma) + ((k*h)/CO2*J)/4*(Gamma - CO2))/(1.6 - (k*h)/CO2*(CO2 + 2*Gamma)))^2 + 4*g0*((Rd*(CO2 + 2*Gamma) + J/4*(Gamma - CO2))/(1.6 - (k*h)/CO2*(CO2 + 2*Gamma))))))/(g0 + (k*h)/CO2*(1/2)*((1.6*(J/4 - Rd) + ((k*h)/CO2*Rd + g0)*(CO2 + 2*Gamma) + ((k*h)/CO2*J)/4*(Gamma - CO2))/(1.6 - (k*h)/CO2*(CO2 + 2*Gamma)) + sqrt(((1.6*(J/4 - Rd) + ((k*h)/CO2*Rd + g0)*(CO2 + 2*Gamma) + ((k*h)/CO2*J)/4*(Gamma - CO2))/(1.6 - (k*h)/CO2*(CO2 + 2*Gamma)))^2 + 4*g0*((Rd*(CO2 + 2*Gamma) + J/4*(Gamma - CO2))/(1.6 - (k*h)/CO2*(CO2 + 2*Gamma))))))))/(CO2 - 1.6*((1/2*((1.6*(J/4 - Rd) + ((k*h)/CO2*Rd + g0)*(CO2 + 2*Gamma) + ((k*h)/CO2*J)/4*(Gamma - CO2))/(1.6 - (k*h)/CO2*(CO2 + 2*Gamma)) + sqrt(((1.6*(J/4 - Rd) + ((k*h)/CO2*Rd + g0)*(CO2 + 2*Gamma) + ((k*h)/CO2*J)/4*(Gamma - CO2))/(1.6 - (k*h)/CO2*(CO2 + 2*Gamma)))^2 + 4*g0*((Rd*(CO2 + 2*Gamma) + J/4*(Gamma - CO2))/(1.6 - (k*h)/CO2*(CO2 + 2*Gamma))))))/(g0 + (k*h)/CO2*(1/2)*((1.6*(J/4 - Rd) + ((k*h)/CO2*Rd + g0)*(CO2 + 2*Gamma) + ((k*h)/CO2*J)/4*(Gamma - CO2))/(1.6 - (k*h)/CO2*(CO2 + 2*Gamma)) + sqrt(((1.6*(J/4 - Rd) + ((k*h)/CO2*Rd + g0)*(CO2 + 2*Gamma) + ((k*h)/CO2*J)/4*(Gamma - CO2))/(1.6 - (k*h)/CO2*(CO2 + 2*Gamma)))^2 + 4*g0*((Rd*(CO2 + 2*Gamma) + J/4*(Gamma - CO2))/(1.6 - (k*h)/CO2*(CO2 + 2*Gamma))))))) + 2*Gamma)); Vp := 3*TPU*((CO2 - 1.6*((1/2*(((1.6*(3*TPU - Rd) + ((k*h)/CO2*Rd + g0)*(CO2 - Gamma)) - k*h*3*TPU)/(1.6 - (k*h)/CO2*(CO2 - Gamma)) + sqrt((((1.6*(3*TPU - Rd) + ((k*h)/CO2*Rd + g0)*(CO2 - Gamma)) - k*h*3*TPU)/(1.6 - (k*h)/CO2*(CO2 - Gamma)))^2 + 4*g0*((Rd*(CO2 - Gamma) - 3*TPU*CO2)/(1.6 - (k*h)/CO2*(CO2 - Gamma))))))/(g0 + (k*h)/CO2*(1/2)*(((1.6*(3*TPU - Rd) + ((k*h)/CO2*Rd + g0)*(CO2 - Gamma)) - k*h*3*TPU)/(1.6 - (k*h)/CO2*(CO2 - Gamma)) + sqrt((((1.6*(3*TPU - Rd) + ((k*h)/CO2*Rd + g0)*(CO2 - Gamma)) - k*h*3*TPU)/(1.6 - (k*h)/CO2*(CO2 - Gamma)))^2 + 4*g0*((Rd*(CO2 - Gamma) - 3*TPU*CO2)/(1.6 - (k*h)/CO2*(CO2 - Gamma))))))))/(CO2 - 1.6*((1/2*(((1.6*(3*TPU - Rd) + ((k*h)/CO2*Rd + g0)*(CO2 - Gamma)) - k*h*3*TPU)/(1.6 - (k*h)/CO2*(CO2 - Gamma)) + sqrt((((1.6*(3*TPU - Rd) + ((k*h)/CO2*Rd + g0)*(CO2 - Gamma)) - k*h*3*TPU)/(1.6 - (k*h)/CO2*(CO2 - Gamma)))^2 + 4*g0*((Rd*(CO2 - Gamma) - 3*TPU*CO2)/(1.6 - (k*h)/CO2*(CO2 - Gamma))))))/(g0 + (k*h)/CO2*(1/2)*(((1.6*(3*TPU - Rd) + ((k*h)/CO2*Rd + g0)*(CO2 - Gamma)) - k*h*3*TPU)/(1.6 - (k*h)/CO2*(CO2 - Gamma)) + sqrt((((1.6*(3*TPU - Rd) + ((k*h)/CO2*Rd + g0)*(CO2 - Gamma)) - k*h*3*TPU)/(1.6 - (k*h)/CO2*(CO2 - Gamma)))^2 + 4*g0*((Rd*(CO2 - Gamma) - 3*TPU*CO2)/(1.6 - (k*h)/CO2*(CO2 - Gamma))))))) - Gamma)); // Reactions: PGA_prod_Vc: $RuBP + $CO2 + 2NADPH => 2PGA; chloroplast*carboxylation(Vc, Vj, Vp); PGA_prod_Vo: $RuBP + $O2 + 2NADPH => 1.5PGA; chloroplast*oxygenation(phi, Vc, Vj, Vp); PGA_cons: PGA => $RuBP; chloroplast*PGA_consumption(PGA, Rp, NADPH, Nt, Vcmax); NADPH_prod: $NADP => NADPH; chloroplast*NADPH_production(J, NADP, Nt); // Species initializations: RuBP = 2; PGA = 2.4; NADPH = 0.21; CO2 = 35; O2 = 21; // Compartment initializations: chloroplast = 1; // Variable initializations: Nt = 0.5; Rp = 3.2; alpha = 0.19; PPFD = 1000; Jmax = 112.989573402043; Gamma = 3.81695; Vcmax = 1.4749455852483; Kc = 27.8535785188479; Ko = 41.9469718861558; g0 = 0.468615384615385; h = 0.6; k = 118.69; Rd = 0.00624227154326423; TPU = 0.227712577291006; // Other declarations: var J, phi, v_c, Vc, Vj, Vp; const chloroplast, Nt, Rp, alpha, PPFD, Jmax, Gamma, Vcmax, Kc, Ko, g0; const h, k, Rd, TPU; // Unit definitions: unit substance = 1e-3 mole; // Display Names: PGA_prod_Vc is "PGA production - v_c"; PGA_prod_Vo is "PGA production - v_o"; PGA_cons is "PGA consumption"; NADPH_prod is "NADPH production"; end