node00101node00402node00403node00404node04001node04002node04003node04004node04005node04006node04007node04008node04009node04010node04011node04012node04013node04014node04015node04016node04017node04018node04019node04020node04021node04022node04023node04024node04025node04026node04027node04028node04029node04030node04031node04032node04033node04034node04035node04036node04037node04038node04039node04040node04041node04042node04043node04044node04045node04046node04047node04048node04049node04050node04051node04052node04053node04054node04055node04056node04057node04058node04059node04060node04061node04062node04063node04064node04065node04066node04067node04068node04069node04070node04071node04072node04073node04074node04075trueModel of sugar-starch cycling in Arabidopsis thaliana leaves.nonenone/win98/Program Files/Simile/Examples/forest.smlwhite0noneFramework model0truestarch_convtruefn1element([parameter],61)1element.parameter[]61trueJ_V ratiotruefn102element([parameter],53)1element.parameter[]53trueCumThrm(t+1)truefn301CumThrm+Thrm*dt()1CumThrmThrmdttrueStop executiontruefn101if Flower then stop(1) else time()1stop1Flowertimetruecd1trueprobabilitytruefn402element([parameter],73)1element.parameter[]73node00301node00710node00717node00722node04076node04077node04078node04079node04080node04081truewhiteformal argstrueJV ratiofile1.711.7bdr6892truestarch turnoverfile0.8410.84bdr15804bdr2135in ppmtrue400370co23751375truelightfile1101110truegenotruefn81int1bdr11185Base temperature for thermal-time calculationtrueTbtruefn2element([parameter],1)1element.parameter[]1degree days required from seed germination until plant emergence (stage 1.0 in Boyes et al. 2001)trueTT0truefn3element([parameter],19)1element.parameter[]19leaf expansiontruePLtruefn4element([parameter],20)1element.parameter[]20trueaLtruefn5element([parameter],21)1element.parameter[]21truebLtruefn6element([parameter],22)1element.parameter[]22root expansiontruePRtruefn7element([parameter],23)1element.parameter[]23trueaRtruefn8element([parameter],24)1element.parameter[]24truebRtruefn109element([parameter],25)1element.parameter[]25degree days of leaf lifespantrueTStruefn110element([parameter],26)1element.parameter[]26cotyledon expansion periodtrueTLcottruefn111element([parameter],27)1element.parameter[]27expansion period of true leavetrueTLtruetruefn112element([parameter],28)1element.parameter[]28root expansion periodtrueRoot_LCtruefn113element([parameter],29)1element.parameter[]29carbon-dry mass conversiontrueleaf_factortruefn114element([parameter],30)1element.parameter[]30trueroot_factortruefn115element([parameter],31)1element.parameter[]31trueseed_inputtruefn116element([parameter],32)1element.parameter[]32when they are fully openedtruecot_areatruefn117element([parameter],33)1element.parameter[]33initial sucrose content per unit areatruesucrose_initialtruefn118element([parameter],34)1element.parameter[]34initial starch content per initial sucrose contenttruestarch_initialtruefn119element([parameter],35)1element.parameter[]35maximum shadingtruepetioletruefn120element([parameter],36)1element.parameter[]36minimum zenithal angletruemin_alphatruefn121element([parameter],65)1element.parameter[]65converted from ppm to kPatrueCO2truefn13co2/101co210truePARtruefn14light*element([weather],6)1lightelement.weather[]6maximum increase in zenithal angle from the minimum valuetrueinc_alphatruefn122element([parameter],66)1element.parameter[]66thermal time since plant emergence for the juvenile-to-adult transitiontruejuv_TTtruefn123element([parameter],67)1element.parameter[]67thermal time interval of leaf appearance (phyllochron) at juvenile stagetruejuv_ratetruefn124element([parameter],68)1element.parameter[]68Thermal time interval of leaf appearance (phyllochron) at adult stagetruead_ratetruefn125element([parameter],69)1element.parameter[]69SLA for cotyledons (in m2/g dry mass) Fig. 3 Christophe et al (2008)trueSLA_cottruefn126element([parameter],71)1element.parameter[]71y-intercept for the adult rate of leaf appearancetruead_interctruefn127element([parameter],70)1element.parameter[]70curve shape for SLA against thermal timetrueSLA_exptruefn128element([parameter],72)1element.parameter[]72Point of emergencetrueemetruefn306CumThrm>TT0booleanCumThrmTT0trueCumThrmtruefn401010true240fn607[fmod(time(),24)+1,1,1,1,1,1]array16.fmodtime241.1.1.1.1.1[]node04082node04083node04084node04085node04086node04087node04088node04089node04090node04091node04092node04093node04094node04095node04096node04097node04098node04099node04100trueModel of sugar-starch cycling in Arabidopsis thaliana leaves.nonenone/win98/Program Files/Simile/Examples/forest.smlwhite0nonephenology0trueMPTUtruefn25Gating*Phot*Thermal_time*Vern1GatingPhotThermal_timeVernnode00104node04101node04102node04103node04104node04105node04106node04107node04108node04109node04110node04111node04112node04113truenonenonewhitenonePhotothermal model0bdr3481node04114node04115node04116node04117node04118node04119truewhiteInput datatrue2412Sunsetfile21121true50-20Temperaturefile21.3121.3bdr10166true120Sunrisefile919bdr2812bdr5916node00405node04120node04121node04122node04123node04124node04125node04126node04127node04128truewhitePhotoperiodbdr4401trueDaylengthtruefn5Sunset-Sunrise1SunsetSunrisetruePhottruefn61-0.3374*(5.733241^7/(5.733241^7+acc_FT^7))110.33745.7332475.733247acc_FT7node04129node04130node04131node04132node04133node04134node04135node04136node04137truewhiteParametertrueCSDLtruefn7element([parameter_0],9)1element.parameter_0[]9trueCLDLtruefn8element([parameter_0],10)1element.parameter_0[]10trueDsdtruefn9element([parameter_0],16)1element.parameter_0[]16trueDldtruefn10element([parameter_0],8)1element.parameter_0[]8bdr943bdr1497bdr9430bdr839bdr894node04138node04139node04140node04141node04142node04143node04144node04145node04146truewhiteGatingJAT -- fraction of daytime this hour
time pt 1 = 12am-1amtrueLight fractiontruefn11Hour = fmod(24*time()-1,24)+1,
if (Sunrise>=Hour or Sunset<=(Hour-1)) then 0
elseif (Sunrise<=(Hour-1) and Sunset>Hour) then 1
elseif (Sunrise>=(Hour-1)) then (Hour-Sunrise)
else (Sunset-Hour+1)1,Hourfmod24time12410SunriseHourSunsetHour11SunriseHour1SunsetHourHourSunriseSunriseHour1SunsetHour1node04147node04148node04149node04150node04151node04152node04153truewhiteParametertrueDay truefn141int1trueNighttruefn15element([parameter_0],18)1element.parameter_0[]18bdr26640bdr27886bdr1121bdr4580bdr7633trueGatingtruefn311Light_fractionDay1Light_fractionNightbdr10937bdr1082node04154node04155node04156node04157node04158node04159truewhiteVernalising temperaturetrueVetruefn16if (Temperature>=Tvmin and Temperature<=Tvmax) then (exp(kappa)*(Temperature-Tvmin)^omega*(Tvmax-Temperature)^zeta) else 01kappaTemperatureTvminomegaTvmaxTemperaturezetaTemperatureTvminTemperatureTvmax0node04160node04161node04162node04163node04164node04165node04166node04167node04168node04169node04170node04171node04172node04173node04174node04175truewhiteParametertrueTvmintruefn19element([parameter_0],2)1element.parameter_0[]2trueTvmaxtruefn20element([parameter_0],3)1element.parameter_0[]3v in Matlabtruekappatruefn22element([parameter_0],5)1element.parameter_0[]5m in Matlabtrueomegatruefn23element([parameter_0],7)1element.parameter_0[]7sigma in Matlabtruezetatruefn24element([parameter_0],6)1element.parameter_0[]6bdr15556bdr16574bdr17607bdr18752bdr19897bdr5921bdr14557bdr3945bdr4902node04176node04177node04178node04179node04180node04181truewhiteNon-vernalising temperaturetrueThermal timetruefn331TemperatureT_baseTemperatureT_base0bdr29542bdr12915node04182node04183node04184node04185truewhiteParametertrueT_basetruefn32element([parameter_0],1)1element.parameter_0[]1bdr14961bdr3961bdr2977bdr3255bdr6237bdr840bdr293bdr7916bdr9957bdr11994bdr129trueThresholdtruefn30element([parameter_0],74)1element.parameter_0[]74truecomp2truefn6010truecd3trueFlowertruefn8comp2>Thresholdbooleancomp2Thresholdnode04186node04187node04188node04189node04190node04191node04192node04193node04194node04195node04196truewhiteVernalisationtruecd1truecomp1truefn5010trueVhtruefn35(comp1+flow1*dt())*Vsen1comp1flow1dtVsentrueVerntruefn36if (Vh<=Vsat) then (Fb+Vh*(1-Fb)/Vsat) else 11FbVh1FbVsatVhVsat1node04197node04198node04199node04200node04201node04202node04203node04204node04205node04206truewhiteParametertrueVsentruefn371int1trueVsattruefn38element([parameter_0],4)1element.parameter_0[]4trueFbtruefn39element([parameter_0],15)1element.parameter_0[]15bdr4588bdr5811bdr6911bdr7570bdr1546bdr13844bdr6677bdr1967bdr2290bdr5273bdr739bdr1534bdr1616These values were hard-coded into the original modelparameterfile[3, -3.5, 6, 960, -5.17, 1, 2.23, 1, 10, 14, 0.3756, 0.6626, 2392, 0]array114.3.-3.5.6.960.-5.17.1.2.23.1.10.14.0.3756.0.6626.2392.0[]node00001node00002node00103node00406node04207node04208node04209node04210node04211node04212node04213node04214node04215node04216node04217node04218node04219node04220node04221node04222node04223node04224node04225node04226node04227node04228node04229node04230node04231node04232node04233node04234node04235node04236node04237node04238node04239node04240node04241node04242node04243node04244node04245node04246node04247node04248node04249node04250node04251node04252node04253node04254node04255node04256node04257node04258node04259node04260node04261node04262node04263node04264node04265node04266node04267node04268node04269node04270node04271node04272node04273node04274node04275node04276node04277node04278node04279node04280node04281node04282node04283node04284node04285node04286node04287node04288node04289node04290node04291node04292node04293node04294node04295node04296node04297node04298node04299node04300node04301node04302node04303node04304node04305node04306node04307node04308node04309node04310node04311node04312node04313node04314node04315node04316node04317node04318node04319node04320node04321node04322node04323node04324node04325node04326node04327node04328node04329node04330node04331node04332node04333node04334node04335node04336node04337node04338node04339node04340node04341node04342node04343node04344node04345node04346node04347node04348node04349node04350node04351node04352node04353node04354node04355node04356node04357node04358node04359node04360node04361node04362node04363node04364node04365node04366node04367node04368node04369node04370node04371node04372node04373node04374node04375node04376node04377node04378node04379node04380node04381node04382node04383node04384node04385node04386node04387node04388node04389node04390node04391node04392node04393node04394node04395node04396node04397node04398node04399node04400node04401node04402node04403node04404truenonenonewhitenoneClock-regulated photoperiodism02truefn301Sunset-Sunrise1SunsetSunrisebdr115bdr211bdr561truecd101trueRXN1trueRXN1_function1*light_function*q1*cPn11light_functionq1cPntrueRXN10trueRXN10_function1* (m4*cTm/ (k4+cTm))11m4cTmk4cTmtrueRXN11trueRXN11_function1*p2*cTm11p2cTmtrueRXN12trueRXN12_function1*r4*cTn11r4cTntrueRXN13trueRXN13_function1* ((1-light_function)*m5+m6)* (cTc/ (k5+cTc))111light_functionm5m6cTck5cTctrueRXN14trueRXN14_function1*r3*cTc11r3cTctrueRXN15trueRXN15_function1* ((1-light_function)*m7+m8)* (cTn/ (k6+cTn))111light_functionm7m8cTnk6cTntrueRXN16trueRXN16_function1* (n3*pow(cTn, d)/ (pow(g4, d)+pow(cTn, d)))11n3powcTndpowg4dpowcTndtrueRXN17trueRXN17_function1* (m9*cXm/ (k7+cXm))11m9cXmk7cXmtrueRXN18trueRXN18_function1*p3*cXm11p3cXmtrueRXN19trueRXN19_function1*r6*cXn11r6cXntrueRXN2trueRXN2_function1* (n1*pow(cXn, a)/ (pow(g1, a)+pow(cXn, a)))11n1powcXnapowg1apowcXnatrueRXN20trueRXN20_function1* (m10*cXc/ (k8+cXc))11m10cXck8cXctrueRXN21trueRXN21_function1*r5*cXc11r5cXctrueRXN22trueRXN22_function1* (m11*cXn/ (k9+cXn))11m11cXnk9cXntrueRXN23trueRXN23_function1* (light_function*q2*cPn+ (light_function*n4+n5)*pow(g5, e)/ (pow(g5, e)+pow(cTn, e)))* (pow(g6, f)/ (pow(g6, f)+pow(cLn, f)))11light_functionq2cPnlight_functionn4n5powg5epowg5epowcTnepowg6fpowg6fpowcLnftrueRXN24trueRXN24_function1* (m12*cYm/ (k10+cYm))11m12cYmk10cYmtrueRXN25trueRXN25_function1*p4*cYm11p4cYmtrueRXN26trueRXN26_function1*r8*cYn11r8cYntrueRXN27trueRXN27_function1* (m13*cYc/ (k11+cYc))11m13cYck11cYctrueRXN28trueRXN28_function1*r7*cYc11r7cYctrueRXN29trueRXN29_function1* (m14*cYn/ (k12+cYn))11m14cYnk12cYntrueRXN3trueRXN3_function1* (m1*cLm/ (k1+cLm))11m1cLmk1cLmtrueRXN30trueRXN30_function1* (1-light_function)*p5111light_functionp5trueRXN31trueRXN31_function1* (m15*cPn/ (k13+cPn))11m15cPnk13cPntrueRXN32trueRXN32_function1*q3*light_function*cPn11q3light_functioncPntrueRXN4trueRXN4_function1*p1*cLm11p1cLmtrueRXN5trueRXN5_function1*r2*cLn11r2cLntrueRXN6trueRXN6_function1* (m2*cLc/ (k2+cLc))11m2cLck2cLctrueRXN7trueRXN7_function1*r1*cLc11r1cLctrueRXN8trueRXN8_function1* (m3*cLn/ (k3+cLn))11m3cLnk3cLntrueRXN9trueRXN9_function1* (n2*pow(cYn, b)/ (pow(g2, b)+pow(cYn, b)))* (pow(g3, c)/ (pow(g3, c)+pow(cLn, c)))11n2powcYnbpowg2bpowcYnbpowg3cpowg3cpowcLnctruecafile1truebfile1truecfile1truecLctruecLc_function0.01510.015truecLc_cloudtruecLmtruecLm_function0.53910.539truecLm_cloudtruecLntruecLn_function0.085510.0855truecLn_cloudtruecPntruecPn_function0.83510.835truecPn_cloudtruecTctruecTc_function8.718.7truecTc_cloudtruecTmtruecTm_function0.45610.456truecTm_cloudtruecTntruecTn_function0.410.4truecTn_cloudtruecXctruecXc_function1.3411.34truecXc_cloudtruecXmtruecXm_function0.0810.08truecXm_cloudtruecXntruecXn_function0.410.4truecXn_cloudtruecYctruecYc_function0.00410.004truecYc_cloudtruecYmtruecYm_function0.03710.037truecYm_cloudtruecYntruecYn_function0.01310.013truecYn_cloudtruecyclePeriodfile1truedfile1trueefile1trueffile1trueg1file1trueg2file1trueg3file1trueg4file1trueg5file1trueg6file1truek1file1truek10file1truek11file1truek12file1truek13file1truek2file1truek3file1truek4file1truek5file1truek6file1truek7file1truek8file1truek9file1truelightAmplitudefile1truelightOffsetfile1truem1file1truem10file1truem11file1truem12file1truem13file1truem14file1truem15file1truem2file1truem3file1truem4file1truem5file1truem6file1truem7file1truem8file1truem9file1truen1file1truen2file1truen3file1truen4file1truen5file1truep1file1truep2file1truep3file1truep4file1truep5file1truephasefile1truephotoPeriodfile1trueq1file1trueq2file1trueq3file1truer1file1truer2file1truer3file1truer4file1truer5file1truer6file1truer7file1truer8file1truetwilightPeriodfile1truecCOtruefn10.1317610.13176truecFTtruefn20.0898610.08986truecd1truecd2trueRXN33truefn5vCOm*cTn1vCOmcTntrueRXN34truefn6(1-light_function)*vCOp*cCO/(kCOp+cCO)11light_functionvCOpcCOkCOpcCOtrueRXN35truefn7VCO*cCO/(KCO+cCO)1VCOcCOKCOcCOtrueRXN36truefn8vFT*cFT/(kFT+cFT)1vFTcFTkFTcFTtruevCOmfile1truevCOpfile1truekCOpfile1truekFTfile1truevFTfile1trueKCOfile1trueVCOfile1trueBcofile1truelight functiontruefn101lightFunction(time(),lightOffset,lightAmplitude,phase,photoPeriod/24,cyclePeriod/24,twilightPeriod/24)1lightFunctiontimelightOffsetlightAmplitudephasephotoPeriod24cyclePeriod24twilightPeriod24trueacc FTtruefn122010truecd9trueparameterfilemakearray(1.0,74)array174makearray1.074true240weather[fmod(time(),24)+1,1,1,1,1,1]array16.fmodtime241.1.1.1.1.1[]node00706node00719node04405node04406node04407node04408node04409node04410node04411node04412node04413node04414node04415node04416node04417node04418node04419node04420node04421node04422node04423node04424node04425node04426node04427node04428node04429node04430node04431node04432node04433node04434node04435node04436node04437node04438node04439node04440node04441node04442node04443node04444node04445node04446node04447node04448node04449node04450node04451node04452node04453node04454node04455node04456node04457node04458node04459node04460node04461node04462node04463node04464node04465node04466node04467node04468node04469node04470node04471node04472node04473node04474node04475node04476node04477node04478node04479node04480node04481node04482node04483node04484node04485node04486node04487node04488node04489node04490node04491node04492node04493node04494node04495node04496node04497node04498node04499node04500node04501node04502node04503node04504node04505node04506node04507node04508node04509node04510node04511node04512node04513node04514node04515node04516node04517node04518node04519node04520truewhiteactionbdr2467bdr12469truefRtruefn214fR0/maximum_root1fR0maximum_roottruefR0truefn207if CumThrm_t_1_>=TR-0.5 then 0 else ((CumThrm_t_1_+0.5)/TR)^(aR-1)*(1-(CumThrm_t_1_+0.5)/TR)^(bR-1)10CumThrm_t_1_TR0.5CumThrm_t_1_0.5TRaR11CumThrm_t_1_0.5TRbR1bdr1612bdr4615bdr9731truephyllochrontrueCumThrm at emetruefn301if CumThrm_t_1_<(juv_TT+TT0) then juv_rate else ad_rate1juv_rateCumThrm_t_1_juv_TTTT0ad_ratebdr1856truefn501if CumThrm_t_1_-Youngest_emerge_thermal_time>=phyllochron*probability then 1*binome(probability,1)/dt() else 011binomeprobability1dtCumThrm_t_1_Youngest_emerge_thermal_timephyllochronprobability0bdr1894trueadd new leaf?truefn401at_init(CumThrm)1at_initCumThrmbdr1907truewater contenttruefn6040.9210.92trueShoot FWtruefn605Shoot_DW/(1-water_content)1Shoot_DW1water_contenttrueShoot DWtruefn706leaf_c_per_plant/leafconversion+Hypocotyl_mass1leaf_c_per_plantleafconversionHypocotyl_masstrueTotal plant DWtruefn807Root_mass+Shoot_DW1Root_massShoot_DWbdr2891bdr3892node04521node04522node04523node04524node04525node04526node04527node04528node04529node04530node04531node04532node04533node04534node04535node04536node04537node04538node04539node04540node04541node04542node04543node04544node04545node04546node04547node04548node04549node04550node04551node04552node04553node04554node04555node04556node04557node04558node04559node04560node04561node04562node04563node04564node04565node04566node04567node04568node04569node04570node04571node04572node04573node04574node04575node04576node04577node04578node04579node04580node04581node04582node04583node04584node04585node04586node04587node04588node04589node04590truenonenonewhitenonepopulationPhytomers0bdr1615This is the fraction of the time through the growth cycle at which demand is maximum -- found by differentiating the beta law and solving the resulting equation analyticallytruemax_point_leaftruefn402TL/(1 + (bL-1)/(aL-1))-0.51TL1bL1aL10.5truemaximum_leaftruefn503((max_point_leaf+0.5)/TL)^(aL-1)*(1-(max_point_leaf+0.5)/TL)^(bL-1)1max_point_leaf0.5TLaL11max_point_leaf0.5TLbL1truealphatruefn305if i<=i_max then
min_alpha
else
min_alpha+inc_alpha*(i-i_max)/(last(Current_Leaf_No)-i_max)1min_alphaii_maxmin_alphainc_alphaii_maxlastCurrent_Leaf_Noi_maxtrueLeaf emerge thermal time
(Cycle threshold)truefn110at_init(CumThrm)1at_initCumThrmbdr2426bdr3665bdr4686truefn605Si*fS1SifSbdr32579trueLeaf_masstruefn617if index(1)<=2 then cot_area/SLA_cot else 01cot_areaSLA_cotindex120bdr33683truecd3bdr34470bdr35587bdr36897bdr40448trueTLtruefn101if channel_is(cotyledons) then TLcot else TLtrue1TLcotchannel_iscotyledonsTLtruebdr1653bdr2660truefL0truefn104if CumThrm_t_1_<=Cycle_threshold or CumThrm_t_1_>=Cycle_threshold+TL-0.5 then 0 else ((CumThrm_t_1_-Cycle_threshold+0.5)/TL)^(aL-1)
*(1-(CumThrm_t_1_-Cycle_threshold+0.5)/TL)^(bL-1)10CumThrm_t_1_Cycle_thresholdCumThrm_t_1_Cycle_thresholdTL0.5CumThrm_t_1_Cycle_threshold0.5TLaL11CumThrm_t_1_Cycle_threshold0.5TLbL1truefStruefn105if last(CumThrm)<Cycle_threshold+TS
then 1 else 0int1lastCumThrmCycle_thresholdTS0bdr11680bdr13668truerel_Ldtruefn1if Totaldemand==0 then 0 else Ld/Totaldemand10Totaldemand0LdTotaldemandbdr3675truecarried forwardtruefn404in_preceding([who])array113in_preceding.who[]truefLtruefn212fL0/maximum_leaf1fL0maximum_leafbdr4390trueSitruefn316max(Leaf_mass*SLA, prev(1))1maxLeaf_massSLAprev1bdr22908Leaf demandtrueLdtruefn329PL*fL1PLfLbdr41683bdr48435bdr63827trueTrue leavestruefn404add_new_leaf_1add_new_leaf_node04591node04592node04593node04594node04595node04596node04597node04598node04599node04600node04601node04602node04603node04604node04605node04606node04607node04608node04609node04610node04611node04612node04613node04614node04615node04616node04617node04618node04619node04620node04621node04622node04623node04624node04625truewhitegeometrynode04626node04627node04628node04629node04630node04631node04632node04633node04634node04635truewhiteattachmenttruextruefn10int0trueytruefn20int0trueztruefn3Attachment_height1Attachment_heightbdr1866bdr2405bdr3300bdr4128 - In Arabidopsis, the first two leaves (cotyledons) appear at the
same time with a degree of 180. The third leaf has an angle of close to 90
deg from one of the cotyledons and the fourth leaf is almost opposite the
third leaf. Leaf 5 onwards, the angle is around 137.5 degree from the
previous leaftrueRadial angle around trunkthetatruemajor radiustruefn101sqrt(eccentricity*Si/pi())1eccentricitySitruepetiolestruefn1if index(1)<=4 then element([0,180, 90,270],index(1))
else fmod(in_preceding(prev(0))+137.5, 360)1element.0.180.90.270[]index1index14fmodin_precedingprev0137.5360 Data from the literature (temperature ~ 20 deg C)
- For the first 3 leaves, the length:width ratio is almost 1. For
leaf 4 onwards, the ratio change with leaf rank with the following equation:
Ratio = 0.157 x rank +0.573
Note that the measurements were taken when the leaves were fully
expanded. For the visualisation purpose, I think it would be easier to just
assume
the ratios do not change with time.trueEccentricity of ellipseeccentricitytruefn2if index(1)<=3 then 1 else 0.157*index(1)+0.57311index130.157index10.573truepetiole lengthtruefn40.5*major_radius10.5major_radiusbdr1728trueAttachment heighttruefn5index(1)/25001index12500trueminor radiustruefn102major_radius/eccentricity1major_radiuseccentricitytruez coefftruefn103sin(alpha*pi()/180)1alpha180truey coefftruefn104horizontality*sintheta1horizontalitysinthetatruex coefftruefn105horizontality*costheta1horizontalitycosthetabdr1543bdr2455node04636node04637node04638node04639node04640node04641node04642node04643node04644node04645node04646node04647node04648node04649truewhiteleaf basetruextruefn107x_coeff*petiole_length1x_coeffpetiole_lengthtrueytruefn108y_coeff*petiole_length1y_coeffpetiole_lengthtrueztruefn109Attachment_height+z_coeff*petiole_length1Attachment_heightz_coeffpetiole_lengthbdr3586bdr4750bdr5909bdr6891bdr7785bdr12412bdr14244bdr1689node04650node04651node04652node04653node04654node04655node04656node04657node04658node04659node04660node04661node04662node04663node04664node04665truewhiteleaf centretruextruefn107x+x_coeff*major_radius1xx_coeffmajor_radiustrueytruefn108y+y_coeff*major_radius1yy_coeffmajor_radiustrueztruefn109z+z_coeff*major_radius1zz_coeffmajor_radiusbdr8588bdr9756bdr10909bdr11589bdr13762bdr15911bdr17785bdr26409bdr29232bdr3188node04666node04667node04668node04669node04670node04671node04672node04673node04674node04675node04676node04677node04678node04679node04680truewhiteleaf sidetruextruefn107x+sintheta*minor_radius1xsinthetaminor_radiustrueytruefn108y-costheta*minor_radius1ycosthetaminor_radiustrueztruefn109z1zbdr18586bdr20750bdr25588bdr27593bdr28756bdr30909bdr32359bdr33256bdr34152truecosthetatruefn110cos(theta*pi()/180)1theta180truesinthetatruefn111sin(theta*pi()/180)1theta180trueleavestruefn113mag*[x,y,z,x_0,y_0,z_0,x_1,y_1,z_1]array19mag.x.y.z.x_0.y_0.z_0.x_1.y_1.z_1[]truemagtruefn2021000int1000truefn204mag*[x,y,z,x_0,y_0,z_0]array16mag.x.y.z.x_0.y_0.z_0[]trueitruefn505index(1)intindex1bdr5422truecotyledonstruefn301212node04681node04682node04683node04684node04685node04686node04687node04688node04689Purpose of this bit is to get the 13 highest values of S without using an auto-relationtruenonenonewhitenone13sort_descend001bdr6955bdr828truecurtruefn406element([carried_forward],index(1))1element.carried_forward[]index1truedroppedtruefn407if index(1)==1 then S else element([carried_forward],index(1)-1)1Sindex11element.carried_forward[]index11truewhotruefn405if cur>S then cur elseif dropped<S then dropped else S1curcurSdroppeddroppedSSbdr41766bdr2660truehorizontalitytruefn106if alpha < 10 then 0 else cos(alpha*pi()/180)10alpha10alpha180bdr43378trueStruefn504Si*horizontality*fS1SihorizontalityfStrueSftrueleaf emerge timetruefn201at_init(time())*241at_inittime24bdr5568bdr6556bdr8499bdr1644SLA (in m2/g dry mass) Fig. 3 Christophe et al (2008)trueSLAtruefn201if CumThrm==CumThrm_at_eme then SLA_cot else SLA_cot*exp(-SLA_exp*(CumThrm-TT0))1SLA_cotCumThrmCumThrm_at_emeSLA_cotSLA_expCumThrmTT01.3 fold flowering time (the current value is for Col)trueTRtruefn206963.4951963.495truefR0(eme)truefn207((CumThrm+0.5)/TR)^(aR-1)*(1-(CumThrm+0.5)/TR)^(bR-1)1CumThrm0.5TRaR11CumThrm0.5TRbR1truemaximum_roottruefn213((max_point_root+0.5)/TR)^(aR-1)*(1-(max_point_root+0.5)/TR)^(bR-1)1max_point_root0.5TRaR11max_point_root0.5TRbR1truefR(eme)truefn214fR0_eme_/maximum_root1fR0_eme_maximum_rootg Carbon per g dry masstrueleafconversiontruefn1leaf_factor1leaf_factorg Carbon per g dry mass
from Kumar et al (Agroforest Syst 2010) around 30-35%
from UK BioChar Research Centre (UoE) around 35 % in
wheat, cited as Prendergast-Miller M and Sohi SP 2010.
Investigating biochar impacts on plant roots and root carbon.
Poster presented in the Organic Matter Stabilization
and Ecosystem Functions session at Soil Organic
Matter Conference, Cote d''Azur, France (Sept 2010)truerootconversiontruefn202root_factor1root_factortruenumtruefn203fR*PR*rootconversion1fRPRrootconversiontruedenomtruefn204sum({fL})*PL*leafconversion1sum{}fLPLleafconversiontruersratiotruefn205num/denom1numdenomSeed dry mass (g), emptied after the first cycle to reach stage 1.0trueSeed_masstruefn307seed_input1seed_inputtrueQ(eme)truefn308Seed_mass1Seed_masstrueD(eme)truefn309PR*fR + 2*PL1PRfR2PLtrueRoot_masstruefn310root_c_per_plant/rootconversion1root_c_per_plantrootconversiontrueHypocotyl_masstruefn313if CumThrm==CumThrm_at_eme then Seed_mass - Root_mass_0 - sum({Leaf_mass}) else prev(1)1Seed_massRoot_mass_0sum{}Leaf_massCumThrmCumThrm_at_emeprev1trueTotal_shoot(eme)truefn315Seed_mass-Root_mass_01Seed_massRoot_mass_0trueS(eme)truefn12*cot_area12cot_areatruep(61)truefn413element([parameter],61)1element.parameter[]61truei_maxtruefn306max(with_greatest({Si},{i}),2)intmaxwith_greatest{}Si{}i2Previously started: if use_initial then S_eme_*cos(10*pi()/180)
else...
but this should be the same as the actual initial value from the leaf submodeltrueS_intercept(n-1)truefn312if TLN<=15 then
sum({S})
else
sum([maxblade])1sum{}STLN15sum.maxblade[]Total dry biomass accumulation for leaves (g)trueBiomassLtruefn328Net_leaf_growth/leafconversion1Net_leaf_growthleafconversiontrueTotaldemandtruefn330sum({Ld})1sum{}LdThis is the fraction of the time through the growth cycle at which demand is maximum -- found by differentiating the beta law and solving the resulting equation analyticallytruemax_point_roottruefn504TR/(1 + (bR-1)/(aR-1))-0.51TR1bR1aR10.5bdr1704comp1fn3031comp2bdr4875bdr5891bdr6897bdr7891bdr8912bdr9898bdr10897bdr11901bdr12904bdr13903bdr14899bdr15838bdr16881bdr17891bdr19876bdr20872bdr21873bdr22904bdr23912bdr24909bdr25922bdr27447bdr28452bdr34920node00707node00720node04690node04691node04692node04693node04694node04695node04696node04697node04698node04699node04700node04701node04702node04703node04704node04705node04706node04707node04708node04709node04710node04711node04712node04713node04714node04715node04716node04717node04718node04719node04720node04721node04722node04723node04724node04725node04726node04727node04728node04729node04730node04731node04732node04733node04734node04735node04736node04737node04738truenonenonewhitenonebiochem0bdr3444bdr13443bdr21715bdr13861bdr16706node04739node04740node04741node04742node04743node04744node04745node04746node04747node04748node04749node04750node04751node04752node04753node04754node04755node04756node04757node04758node04759node04760node04761node04762node04763node04764node04765node04766truewhiteallocationtrueSucrose for growth (g C / plant / time step)suc_growthtruefn203sum({suc_growth}) + sum({suc_growth_0})1sum{}suc_growthsum{}suc_growth_0trueSucrose to starch conversion (gC / plant over this time step)suc_statruefn47sum({suc_sta}) + sum({suc_sta_0})1sum{}suc_stasum{}suc_sta_0border2211border3575border4773trueLeaf growth actually achieved (g C / plant / time step)leaf_gro1border7673border8841node04767node04768node04769node04770node04771node04772node04773node04774node04775node04776node04777node04778node04779node04780node04781node04782node04783node04784node04785node04786node04787node04788node04789node04790node04791node04792node04793node04794node04795node04796truewhitefull organ demand mettruefn42root_gro1root_groborder21545truefn39rrc_pt1rrc_ptborder32702border1311trueLeaf growth actually achieved (g C / plant / time step)leaf_gro1truefn41leaf_gro1leaf_groborder5637border12859trueRoot growth actually achieved (g C / plant / time step)root_gro1border14610border17835trueg C / plant / time step actually usedrlc_pt1truefn37rlc_pt1rlc_ptborder25788trueg C / plant / time step actually usedrrc_pt1border28591border3748border8560<fileref name="edited AS-NewBSC.f95" line="343" >
Added to model to allow for mutant specific values (see lines 345 and 347).
</fileref>trueFlag set to 1 to indicate that sucrose to starch conversion is enabled when needed, set flag to 0 to disable conversion at all times.suc_sta_0?
truefn1011int1<fileref name="edited AS-NewBSC.f95" fromline="343" toline="348" >
Note that on line 343 "<=" used for finding light period rather than the "<" used on line 305
</fileref>trueSucrose to starch conversion (gC / plant over this time step)suc_statruefn102if is_light_ and (suc_sta_0_ == 1) then
suc_c_disp - suc_growth
else
01suc_c_dispsuc_growthis_light_suc_sta_0_10border1576<fileref name="edited AS-NewBSC.f95" line="342" />trueSucrose for growth (g C / plant / time step)suc_growthtruefn201totdem1totdemborder6396trueis met?truefn1full_demand_met_ == 1cond_specfull_demand_met_1border1895node04797node04798node04799node04800node04801node04802node04803node04804node04805node04806node04807node04808node04809node04810node04811node04812node04813node04814node04815node04816node04817node04818node04819node04820node04821node04822node04823truewhitefull organ demand not metborder6683<fileref name="edited AS-NewBSC.f95" line="353" >
Variable added to implement reuse of variable name.
</fileref>trueRoot growth actually achieved (g C / plant / time step)root_gro1truefn37rlc_pt * (suc_growth / totdem)1rlc_ptsuc_growthtotdem<fileref name="edited AS-NewBSC.f95" line="355" >
Variable added to implement reuse of variable name.
</fileref>trueg C / plant / time step actually usedrrc_pt1truefn39rrc_pt * (suc_growth / totdem)1rrc_ptsuc_growthtotdemborder34715<fileref name="edited AS-NewBSC.f95" line="352" >
Variable added to implement reuse of variable name.
</fileref>trueLeaf growth actually achieved (g C / plant / time step)leaf_gro1truefn41leaf_gro * (suc_growth / totdem)1leaf_grosuc_growthtotdemborder11894border13810truefn42root_gro * (suc_growth / totdem)1root_grosuc_growthtotdemborder15658border19873trueg C / plant / time step actually usedrlc_pt1border22587border27848border29629border5564border791trueis not met?truefn2full_demand_met_ == 0cond_specfull_demand_met_0border2916<fileref name="edited AS-NewBSC.f95" line="351" />trueSucrose to starch conversion (gC / plant over this time step)suc_statruefn103010border2607<fileref name="edited AS-NewBSC.f95" line="350" />trueSucrose for growth (g C / plant over this time step)suc_growthtruefn202suc_c_disp1suc_c_disp<fileref name="edited AS-NewBSC.f95" line="341" />trueSwitch variable set to 1 if full organ demand is met, otherwise it is set to 0full demand
met?truefn103if (totdem < suc_c_disp ) then
1
else
0int1totdemsuc_c_disp0border1594truefn41sum({leaf_gro1}) + sum({leaf_gro1_0})1sum{}leaf_gro1sum{}leaf_gro1_0border31749trueRoot growth actually achieved (g C / plant / time step)root_gro1truefn42sum({root_gro1}) + sum({root_gro1_0})1sum{}root_gro1sum{}root_gro1_0border16819border20609trueg C / plant / time step actually usedrlc_pt1truefn37sum({rlc_pt1}) + sum({rlc_pt1_0})1sum{}rlc_pt1sum{}rlc_pt1_0border23585border24800trueg C / plant / time step actually usedrrc_pt1truefn39sum({rrc_pt1}) + sum({rrc_pt1_0})1sum{}rrc_pt1sum{}rrc_pt1_0border30619node04824node04825node04826node04827node04828node04829node04830node04831node04832node04833node04834node04835node04836node04837node04838node04839node04840truewhiteinitialisationborder1263<fileref name="edited AS-NewBSC.f95" line="219" />trueInitial specific leaf area index of Arabidopsis (m2 leaf / g C)sla_ini specific LAItruefn170.3810.38<fileref name="edited AS-NewBSC.f95" line="225" />trueAmount of leaf carbon when runs are started (g / plant)leaf_c_ini_unadjustedtruefn530.00013410.000134<fileref name="edited AS-NewBSC.f95" line="228" />trueleaf_c_ini_adjustedtruefn301leaf_c_ini_unadjusted * 0.941leaf_c_ini_unadjusted0.94<fileref name="edited AS-NewBSC.f95" line="230" >
Added to model to allow for mutant specific values (see lines 230, 242, 254).
</fileref>trueAmount of root carbon when runs are started (g / plant)root c initruefn302leaf_c_ini_adjusted * ini_root_c_as_prop_ini_leaf_c1leaf_c_ini_adjustedini_root_c_as_prop_ini_leaf_c<fileref name="edited AS-NewBSC.f95" line="230" >
Added to model to allow for mutant specific values (see lines 230, 242, 254).
</fileref>trueInitial root C as a proportion of initial leaf Cini root c as prop
ini leaf ctruefn3030.1410.14<fileref name="edited AS-NewBSC.f95" line="231" />trueAmount of sucrose carbon when runs are started (g / plant)suc c initruefn3040.1 * leaf_c_ini_adjusted * sla_ini_specific_LAI10.1leaf_c_ini_adjustedsla_ini_specific_LAI<fileref name="edited AS-NewBSC.f95" line="232" >
Added to model to allow for mutant specific values (see lines 232, 244, 256).
</fileref>trueFlag set to 1 to indicate that the initial starch C value is calculated by formula, set flag to 0 to indicate initial C value is set to 0 instead.sta c ini calc?truefn3051int1<fileref name="edited AS-NewBSC.f95" line="232" >
Added to model to allow for mutant specific values (see lines 232, 244, 256).
</fileref>trueAmount of starch carbon when runs are started (g / plant)sta c initruefn306if sta_c_ini_calc_== 0 then
0.0
else
2.0 * 0.1 * leaf_c_ini_adjusted * sla_ini_specific_LAI10.0sta_c_ini_calc_02.00.1leaf_c_ini_adjustedsla_ini_specific_LAInode04841node04842node04843node04844node04845node04846node04847node04848node04849node04850node04851node04852node04853node04854node04855node04856node04857node04858node04859node04860truewhitemaintenance respirationborder623border7705border8471border9340border11615border12662border13634<fileref name="edited AS-NewBSC.f95" line="292" >
Original variable name ("Rl20") and the "293" and "20" used in line 296 suggest this is at 20oC and not the 25oC in the comments.
</fileref>trueLeaf respiration at 20oC (g CO2 C / m2 / d)rl20_leaf resp 20oCtruefn9(0.0850 * suc_conc_s + 0.016) * 2410.085suc_conc_s0.01624truefn1066400166400<fileref name="edited AS-NewBSC.f95" line="289" />trueSucrose conc / unit leaf area (g C / m2 leaf)suc_conc_struefn35suc_c_per_plant / leaf_s1suc_c_per_plantleaf_s<fileref name="edited AS-NewBSC.f95" line="299" />trueLeaf respiration per plant per time step (gC per plant per time step)rl_pt_plant leaf resptruefn36rl_leaf_resp * leaf_s * timestep1rl_leaf_respleaf_stimestep<fileref name="edited AS-NewBSC.f95" line="300" />truegC / plant / time steprrm_pttruefn38rl_pt_plant_leaf_resp * (root_c_per_plant / leaf_c_per_plant)1rl_pt_plant_leaf_resproot_c_per_plantleaf_c_per_plantborder3207<fileref name="edited AS-NewBSC.f95" line="295" />trueActivation energy for rl20 (kJ/mol)earl_activation energy<fileref name="edited AS-NewBSC.f95" line="296" >
The constraint on "rl_leaf resp" at line 293 has been moved to this variable so that it is no longer before "rl_leaf resp" is set
</fileref>trueLeaf respiration at leaf temperature (g CO2 C / m2 / d)rl_leaf resptruefn11num = earl_activation_energy * (tc_leaf_temp - 20),
denom = 293 * 8.314 * (tc_leaf_temp + 273),
if (suc_conc_s <= 0) then
0
else
rl20_leaf_resp_20oC *exp(num / denom)1,numearl_activation_energytc_leaf_temp20,denom2938.314tc_leaf_temp2730suc_conc_s0rl20_leaf_resp_20oCnumdenomnode00716node00721node04861node04862node04863node04864node04865node04866node04867node04868node04869node04870node04871node04872node04873node04874node04875node04876node04877node04878node04879node04880node04881node04882node04883node04884node04885node04886node04887node04888node04889node04890node04891node04892node04893node04894node04895node04896node04897node04898node04899node04900node04901node04902node04903node04904node04905truewhiteassimilatory flux and related starch and sucrose reactionstruefn203starch_turnover1starch_turnoverbdr14403border4848border17797border18817border19784border20753border21628border2379border24657border26859border27887<fileref name="edited AS-NewBSC.f95" line="304" >
This calculation is done via a submodel containing the Farquhar, Caemmerer and Berry model of C3 photosynthesis
</fileref>trueNet rate of leaf photosynthesis (micromol CO2 / m2 leaf / s)al_net rate leaf
photosynthesistruefn3sum({al_net_rate_leaf_photosynthesis})1sum{}al_net_rate_leaf_photosynthesis<fileref name="edited AS-NewBSC.f95" line="279" />trueConversion factor for umol CO2/m2 leaf/sec to gC/m2 leaf/time stepconvert_to gC truefn19timestep * 86400 * 1e-6 * 121timestep864001e-0612trueAssimilatory flux per plant (g C / plant / time step)al_pt_plant assimtruefn20sum({al_pt_plant_assim}) + sum({al_pt_plant_assim_0})1sum{}al_pt_plant_assimsum{}al_pt_plant_assim_0<fileref name="edited AS-NewBSC.f95" line="168" />
from assimilation.m ; set to p(60) then overwritten
model had 0.125trueBaseline starch conversion coefficient (dimensionless)stabase_baseline starch
convtruefn22 0.12510.125trueConversion of starch to soluble sugars (gC / plant / time step)sta_usetruefn43sum({sta_use}) + sum({sta_use_0})1sum{}sta_usesum{}sta_use_0trueg C / plant / time stepal_suctruefn44sum({al_suc}) + sum({al_suc_0})1sum{}al_sucsum{}al_suc_0<fileref name="edited AS-NewBSC.f95" fromline="330" toline="332" />trueComputation of the amount of available sugar for growth (gC / plant)suc_c_disptruefn45current_value = suc_c_intermed - (suc_equi * leaf_s)/dt(),
if (current_value <= 0) then
0
else
current_value1,current_valuesuc_c_intermedsuc_equileaf_sdt0current_value0current_value<fileref name="edited AS-NewBSC.f95" line="183" />trueEquilibrium sucrose plus hexose concentration in leaves (g C / m2 leaf)suc_equitruefn480.0510.05trueBaseline starch conversion (g C / plant / time step)suc_sta_basetruefn54sum({suc_sta_base}) + sum({suc_sta_base_0})1sum{}suc_sta_basesum{}suc_sta_base_0<fileref name="edited AS-NewBSC.f95" line="223" />trueProportion of end of light period starch content converted to soluble sugars during the dark period (dimensionless)sta_convert2_conv at nightfile0.8410.84<fileref name="edited AS-NewBSC.f95" line="325" />trueTotal assimilatory flux per plant (g C / plant ) during simulationaltottruefn601010<fileref name="edited AS-NewBSC.f95" line="305" >
Variable added to model to implement light/dark cycles
</fileref>trueSwitch variable set to 1 if light and 0 if darkis light?truefn701is_light_booleanis_light_node04906node04907node04908node04909node04910node04911node04912node04913node04914node04915node04916node04917node04918node04919node04920node04921node04922node04923node04924<fileref name="edited AS-NewBSC.f95" fromline="305" toline="312" />truenonenonewhitenonein light period 0truelight?truefn20al_net_rate_leaf_photosynthesis * leaf_s * convert_to_gC1al_net_rate_leaf_photosynthesisleaf_sconvert_to_gCborder3860border4748border5791border6145border11486<fileref name="edited AS-NewBSC.f95" line="310" />trueConversion of starch to soluble sugars (gC / plant / time step)sta_usetruefn43010border13633truefn702is_light_cond_specis_light_border1217This calculation converts micromol CO2 to equivalent g fixed C
<fileref name="edited AS-NewBSC.f95" line="306" />trueAssimilatory flux per plant (g C / plant / time step)al_pt_plant assim<fileref name="edited AS-NewBSC.f95" line="308" />trueBaseline starch conversion (g C / plant / time step)suc_sta_basetruefn54al_pt_plant_assim * stabase_baseline_starch_conv1al_pt_plant_assimstabase_baseline_starch_convborder8556border10299<fileref name="edited AS-NewBSC.f95" line="309" />truegC / plant / time stepal_suctruefn44al_pt_plant_assim - suc_sta_base1al_pt_plant_assimsuc_sta_basenode04925node04926node04927node04928node04929node04930node04931node04932node04933node04934node04935node04936node04937node04938node04939node04940node04941node04942node04943node04944node04945<fileref name="edited AS-NewBSC.f95" fromline="313" toline="323" />truenonenonewhitenonein dark period0truedark?truefn703not is_light_cond_specnotis_light_truefn20010border7120<fileref name="edited AS-NewBSC.f95" line="317" />trueBaseline starch conversion (g C / plant / time step)suc_sta_basetruefn54010border9638<fileref name="edited AS-NewBSC.f95" line="316" />truegC / plant / time stepal_suctruefn44010border12754<fileref name="edited AS-NewBSC.f95" line="320" />trueConversion of starch to soluble sugars (during dark periods only) (gC / plant / time step)sta_use<fileref name="edited AS-NewBSC.f95" line="311" />trueStarch carbon (g C per plant) at the end of the last light periodsta_c_enddaytruefn103sta_c_endday1sta_c_enddayborder3904border5343border287border2818border239<fileref name="edited AS-NewBSC.f95" line="315" />trueAssimilatory flux per plant (g C / plant / time stepal_pt_plant assimtruefn43((sta_c_endday*sta_convert2_conv_at_night)/(24-light_hr))*timestep*241sta_c_enddaysta_convert2_conv_at_night24light_hrtimestep24border14706<fileref name="edited AS-NewBSC.f95" line="311" />trueVariable used to find starch carbon (g C per plant) at the end of a light period and store it during the following dark periodsta_c_enddaytruefn102if last(is_light_) then
sta_c_per_plant
else
prev(1)1sta_c_per_plantlastis_light_prev1<fileref name="edited AS-NewBSC.f95" line="324" />trueVariable added to model to allow for state variable's use as an intermediate variable in original code (g C / plant (during current time step))suc c intermedtruefn801suc_c_per_plant/dt() + sta_use + al_suc - rl_pt_plant_leaf_resp - rrm_pt1suc_c_per_plantdtsta_useal_sucrl_pt_plant_leaf_resprrm_pttruecd1border14927border187border1893border9739border16723node04946node04947node04948node04949node04950node04951node04952node04953node04954node04955node04956node04957node04958node04959node04960node04961node04962node04963node04964node04965node04966node04967node04968node04969truewhiteorgan demandborder10161border33346border28303border30510<fileref name="edited AS-NewBSC.f95" line="164" />trueMaximum growth rate of leaves (g / g/ day)gromaxtruefn2317.0 * 0.001 * 24.0117.00.00124.0<fileref name="edited AS-NewBSC.f95" line="339" />trueTotal organ demand (g C / plant / time step)totdemtruefn24leaf_gro + root_gro + rlc_pt + rrc_pt1leaf_groroot_grorlc_ptrrc_pt<fileref name="edited AS-NewBSC.f95" fromline="480" toline="486" >
Note that the leaf_s value used in the calcs is the value before the state variables were updated on lines 382 to 384.
</fileref>trueRoot to shoot ratio (dimensionless)rsratiotruefn34rsratio1rsratio<fileref name="edited AS-NewBSC.f95" line="176" />trueGrowth respiration to total growth allocation (dimensionless)rc_coef_grow resp
to tot grow alloctruefn400.19510.195<fileref name="edited AS-NewBSC.f95" line="335" />trueMaximal leaf growth (g C / plant / time step)leaf_grotruefn901gromax * leaf_c_per_plant * timestep1gromaxleaf_c_per_planttimestep<fileref name="edited AS-NewBSC.f95" line="336" />trueRoot growth (g C / plant / time step)root_grotruefn902leaf_gro * rsratio1leaf_grorsratio<fileref name="edited AS-NewBSC.f95" line="337" />trueIn g C / plant / time steprlc_pttruefn903num = leaf_gro * rc_coef_grow_resp_to_tot_grow_alloc,
denom = 1 - rc_coef_grow_resp_to_tot_grow_alloc,
num / denom1,numleaf_grorc_coef_grow_resp_to_tot_grow_alloc,denom1rc_coef_grow_resp_to_tot_grow_allocnumdenom<fileref name="edited AS-NewBSC.f95" line="338" />trueIn g C / plant / time steprrc_pttruefn1001num = root_gro * rc_coef_grow_resp_to_tot_grow_alloc,
denom = 1 - rc_coef_grow_resp_to_tot_grow_alloc,
num / denom1,numroot_grorc_coef_grow_resp_to_tot_grow_alloc,denom1rc_coef_grow_resp_to_tot_grow_allocnumdenomborder18197border26249border5471bdr12377<fileref name="edited AS-NewBSC.f95" line="381" >
Initialised at line 231.
</fileref>trueSucrose carbon (g C per plant)suc_c_per planttruefn65sucrose_initial*S_eme_1sucrose_initialS_eme_<fileref name="edited AS-NewBSC.f95" line="383" >
Initialised at line 229.
</fileref>trueLeaf carbon (g C per plant)leaf_c_per planttruefn67leafconversion*sum({Leaf_mass})1leafconversionsum{}Leaf_mass<fileref name="edited AS-NewBSC.f95" line="384" >
Initialised at line 230.
</fileref>trueRoot carbon (g C per plant)root_c_per planttruefn68rootconversion*PR*fR_eme_*Q_eme_/D_eme_1rootconversionPRfR_eme_Q_eme_D_eme_<fileref name="edited AS-NewBSC.f95" line="382" >
Initialised at line 232.
</fileref>trueStarch carbon (g C per plant)sta_c_per planttruefn69starch_initial*suc_c_per_plant1starch_initialsuc_c_per_planttruecd5truecd6<fileref name="edited AS-NewBSC.f95" line="357" />truegC / plantrgtottruefn501010<fileref name="edited AS-NewBSC.f95" line="301" />trueg C / plantrmtottruefn504010<fileref name="edited AS-NewBSC.f95" line="286" />trueleaf area per plant (m2 / plant)leaf_struefn18Rosette_area1Rosette_area<fileref name="edited AS-NewBSC.f95" line="488" />trueTotal C (gC / plant)totaltruefn52leaf_c_per_plant + root_c_per_plant + rmtot + rgtot + sta_c_per_plant + suc_c_per_plant1leaf_c_per_plantroot_c_per_plantrmtotrgtotsta_c_per_plantsuc_c_per_plant<fileref name="edited AS-NewBSC.f95" line="387" />trueStarch conc in nmol glucose / mg fresh leaf biomasssta_conctruefn55num = sta_c_per_plant * 1e9 / (6 *12),
denom = 1000 * leaf_c_per_plant / (0.4 * 0.07),
num / denom1,numsta_c_per_plant1e+09612,denom1000leaf_c_per_plant0.40.07numdenom<fileref name="edited AS-NewBSC.f95" line="388" />trueSucrose conc in nmol glucose / mg fresh leaf biomasssuc_conctruefn56num = suc_c_per_plant * 1e9 / (6 *12),
denom = 1000 * leaf_c_per_plant / (0.4 * 0.07),
num / denom1,numsuc_c_per_plant1e+09612,denom1000leaf_c_per_plant0.40.07numdenomnode00708node04970node04971node04972node04973node04974node04975node04976node04977node04978node04979node04980node04981node04982node04983node04984node04985node04986node04987node04988node04989node04990node04991node04992node04993C3 photosynthesis model of Farquhar, von Caemmerer and Berrytruenonenonewhitenonephotosynthesis0bdr4542truecond2truefn403is_light_cond_specis_light_bdr1452Net rate of photosynthesis is the minimum of the rates calculated under rubisco limitation and RuBP regeneration limitation.
<fileref name="edited photosynthesis.f95" line="81" >
Value returned from model.
</fileref>trueNet rate of leaf photosynthesis (micromol CO2 m-2 leaf s_1)al_net rate leaf
photosynthesistruefn3if (sqrt_error_flag == 1) then
av_rub_limited_photosyn
else
min(av_rub_limited_photosyn, aj_RuBP_regen_limited_photosyn)1av_rub_limited_photosynsqrt_error_flag1minav_rub_limited_photosynaj_RuBP_regen_limited_photosyn<fileref name="edited photosynthesis.f95" line="1" >
Value passed to model.
</fileref>trueExperimental atmospheric CO2 partial pressure (Pa)ca_atmos co2truefn4ca_atmos_co21ca_atmos_co2<fileref name="edited photosynthesis.f95" line="1" >
Value passed to model.
</fileref>trueLeaf temperature (oC)tc_leaf temptruefn6tc_leaf_temp1tc_leaf_temp<fileref name="edited photosynthesis.f95" line="33" />trueCO2 compensation point of photosynthesis in the absence of mitochondrial respiration (Pa)gammastar_co2 comp point
without mit resptruefn73.69 + 0.188 * (tc_leaf_temp - 25) + 0.0036 * ((tc_leaf_temp -25)^2)13.690.188tc_leaf_temp250.0036tc_leaf_temp252<fileref name="edited photosynthesis.f95" line="40" />trueIntercellular CO2 partial pressure (Pa)ci_intercell co2truefn120.7 * ca_atmos_co210.7ca_atmos_co2<fileref name="edited photosynthesis.f95" line="1" >
Value passed to model.
</fileref>truePhotosynthetic rubisco capacity per unit leaf area at 25oC (micomol CO2 m-2 s-1)vlmax25_photosyn
rub captruefn13vlmax25_photosyn_rub_cap1vlmax25_photosyn_rub_cap<fileref name="edited photosynthesis.f95" line="13" />trueUniversal gas constant (J mol-1 k-1)r_gas consttruefn148.31418.314node00709node04994node04995node04996node04997node04998node04999node05000node05001node05002node05003node05004node05005node05006node05007node05008node05009node05010node05011node05012node05013node05014node05015node05016node05017node05018node05019node05020node05021node05022node05023node05024node05025node05026node05027node05028node05029node05030node05031node05032node05033node05034node05035node05036node05037node05038node05039node05040node05041truewhitecalc rate of photosynthesis limited by RuBP (ribulose bis-phosphate) regenerationbdr5497<fileref name="edited photosynthesis.f95" fromline="68" toline="70" />trueFlag that indicates that a term to be square rooted is negativesqrt error flagtruefn1if (rho <= 0) then
1
else
0int1rho00border138Enables the user to see how many times an error occured during a simulation without having to view the "sqrt error flag" at each integration step.
<fileref name="edited photosynthesis.f95" fromline="68" toline="70" />trueNumber of times error occured during simulationnum errorstruefn101prev(1) + sqrt_error_flagintprev1sqrt_error_flag<fileref name="edited photosynthesis.f95" line="74" />trueRate of photosynthesis limited by RuBP (ribulose bis-phosphate) regeneration (micromol CO2 m-2 leaf s_1)aj_RuBP regen
limited photosyntruefn2num = jl_electron_transport * (ci_intercell_co2 - gammastar_co2_comp_point_without_mit_resp),
denom = 4 * (ci_intercell_co2 + 2 * gammastar_co2_comp_point_without_mit_resp),
num / denom1,numjl_electron_transportci_intercell_co2gammastar_co2_comp_point_without_mit_resp,denom4ci_intercell_co22gammastar_co2_comp_point_without_mit_respnumdenom<fileref name="edited photosynthesis.f95" line="1" >
Value passed to model.
</fileref>trueTotal absorbed PAR (photosynthetically active radiation ) per unit leaf area (micromol m-2 s-1)il_total absorbed
partruefn8il_total_absorbed_par1il_total_absorbed_par<fileref name="edited photosynthesis.f95" line="36" />trueSpectral correction factor. PAR absorbed by other tissue than the chloroplast lamella.fspec_spectral
correctiontruefn90.1510.15<fileref name="edited photosynthesis.f95" line="38" />truePhotosynthetically active radiation (PAR) effectively absorbed by PSII (photosystem II) (micromol m-2 s-1)ile_par absorbed
psiitruefn10il_total_absorbed_par * (1 - fspec_spectral_correction) / 21il_total_absorbed_par1fspec_spectral_correction2<fileref name="edited photosynthesis.f95" line="45" />truePotential rate of electron transport per unit leaf area at 25oC (micromol m-2 s-1)jm25_pot elec
transport 25octruefn24JV_ratio * vlmax25_photosyn_rub_cap1JV_ratiovlmax25_photosyn_rub_cap<fileref name="edited photosynthesis.f95" line="52" />trueActivation energy for jm25 (kJ mol-1)eajm_act energy jm25truefn2537000137000truefn277101710<fileref name="edited photosynthesis.f95" line="58" />truePotential rate of electron transport per unit leaf area (micromol m-2 s-1)jm_pot elec
transporttruefn28jm25_pot_elec_transport_25oc * term1 * term2 / term31jm25_pot_elec_transport_25octerm1term2term3<fileref name="edited photosynthesis.f95" line="61" />trueCurvature of leaf response of electron transport to irradiance (dimensionless)thetal_curve respon
elec to irradtruefn290.710.7<fileref name="edited photosynthesis.f95" line="66" />trueIntermediate calc used in quadratic formula for finding jlaatruefn30thetal_curve_respon_elec_to_irrad1thetal_curve_respon_elec_to_irrad<fileref name="edited photosynthesis.f95" line="64" />trueIntermediate calc used in quadratic formula for finding jlbbtruefn31-1 * (ile_par_absorbed_psii + jm_pot_elec_transport)1-1ile_par_absorbed_psiijm_pot_elec_transport<fileref name="edited photosynthesis.f95" line="67" />trueIntermediate calc used in quadratic formula for finding jl (it is the term in the square root)rhotruefn33bb^2 - 4 * aa * cc1bb24aaccjl is obtained through the resolution of the equation:
thetal * j^2 - (ile + jm) * j + ile * jm = 0
The solution is found using the standard quadratic formula. If the term in the square root of the formula (stored in variable "rho") is negative then there is no physically meaningful solution. Under these conditions "sqrt error flag" is set to 1 which sets "jl_electron transport" and aj_RuBP regen limited photosyn" to zero. The error flag also causes "al_net rate leaf photosynthesis" to be set to "av_rub limited photosyn".
<fileref name="edited photosynthesis.f95" fromline="62" toline="71" >
The Fortran program did not trap the square root error but relied on the generation of "not a number (NaN)" which caused the same effects as the flag system used in the Simile version. The Fortran just printed an error message to the screen. Also note that the message was printed when "rho <= 0" , the Simile version therefore also traps the 0.
</fileref>trueElectron transportjl_electron
transporttruejl_0if (sqrt_error_flag == 1) then
0
else
(-1 * bb - sqrt(rho)) / (2 * aa)10sqrt_error_flag1-1bbrho2aa<fileref name="edited photosynthesis.f95" line="55" />trueIntermediate calc for jmterm1truefn35num = eajm_act_energy_jm25 * (tc_leaf_temp - 25),
denom = 298 * r_gas_const * (tc_leaf_temp + 273),
exp(num / denom)1,numeajm_act_energy_jm25tc_leaf_temp25,denom298r_gas_consttc_leaf_temp273numdenom<fileref name="edited photosynthesis.f95" line="56" />trueIntermediate calc for jmterm2truefn36num = s_elec_trans_temp_resp * 298 - h_curvature_param_of_jm,
denom = r_gas_const * 298,
1 + exp(num / denom)1,nums_elec_trans_temp_resp298h_curvature_param_of_jm,denomr_gas_const2981numdenom<fileref name="edited photosynthesis.f95" line="57" />trueIntermediate calc for jmterm3truefn37num = s_elec_trans_temp_resp * (273 + tc_leaf_temp) - h_curvature_param_of_jm,
denom = r_gas_const * (273 + tc_leaf_temp),
1 + exp(num / denom)1,nums_elec_trans_temp_resp273tc_leaf_temph_curvature_param_of_jm,denomr_gas_const273tc_leaf_temp1numdenomborder137border247border355border4243border5440border6419border5508<fileref name="edited photosynthesis.f95" line="47" />trueCurvature parameter of Jm (J mol-1)h_curvature param
of jmtruefn262200001220000<fileref name="edited photosynthesis.f95" line="50" />trueElectron transport temperature response parameter (J K-1 mol-1)s_elec trans
temp resp<fileref name="edited photosynthesis.f95" line="65" />trueIntermediate calc used in quadratic formula for finding jlcctruefn32ile_par_absorbed_psii * jm_pot_elec_transport1ile_par_absorbed_psiijm_pot_elec_transportnode05042node05043node05044node05045node05046node05047node05048node05049node05050node05051node05052node05053node05054node05055node05056node05057node05058node05059node05060node05061node05062node05063node05064node05065node05066node05067node05068node05069truewhitecalc rate of photosynthesis limited by rubisco<fileref name="edited photosynthesis.f95" line="42" />trueRubisco-limited photosynthesis (micromol CO2 m-2 leaf s_1)av_rub limited
photosyntruefn1num = ci_intercell_co2 - gammastar_co2_comp_point_without_mit_resp,
denom = ci_intercell_co2 + kprim_effective_mm_rub,
vlmax_leaf_temp_photosyn_rub_cap * (num / denom)1,numci_intercell_co2gammastar_co2_comp_point_without_mit_resp,denomci_intercell_co2kprim_effective_mm_rubvlmax_leaf_temp_photosyn_rub_capnumdenom<fileref name="edited photosynthesis.f95" line="27" />trueEffective Michaelis-Menten constant of Rubisco (Pa)kprim_effective
mm rubtruefn51kc_leaf_temp_mm_rub_co21o2_partial_pressureko_leaf_temp_mm_rub_o2<fileref name="edited photosynthesis.f95" line="15" />trueOxygen partial pressure (Pa)o2_partial pressuretruefn1520500120500<fileref name="edited photosynthesis.f95" line="20" />trueMichaelis-Menten constant of Rubisco for CO2 at leaf temperature (Pa)kc_leaf temp
mm rub co2truefn16num=eakc_act_energy_kc25*(tc_leaf_temp-25),denom=298*r_gas_const*(tc_leaf_temp+273),kc25_mic_ment_rub_co2*exp(num/denom)1,numeakc_act_energy_kc25tc_leaf_temp25,denom298r_gas_consttc_leaf_temp273kc25_mic_ment_rub_co2numdenom<fileref name="edited photosynthesis.f95" line="17" />trueMichaelis-Menten constant of Rubisco for CO2 at 25oC (Pa)kc25_mic ment rub co2truefn1740.4140.4<fileref name="edited photosynthesis.f95" line="25" />trueMichaelis-Menten constant of Rubisco for O2 at leaf temperature (Pa)ko_leaf temp
mm rub o2truefn19num=eako_act_energy_ko25*(tc_leaf_temp-25),denom=298*r_gas_const*(tc_leaf_temp+273),ko25_mic_ment_rub_o2*exp(num/denom)1,numeako_act_energy_ko25tc_leaf_temp25,denom298r_gas_consttc_leaf_temp273ko25_mic_ment_rub_o2numdenom<fileref name="edited photosynthesis.f95" line="22" />trueMichaelis-Menten constant of Rubisco for O2 at 25oC (Pa)ko25_mic ment rub o2truefn2024800124800<fileref name="edited photosynthesis.f95" line="24" />trueActivation energy for ko25 (kJ mol-1)eako_act energy ko25truefn2136000136000<fileref name="edited photosynthesis.f95" line="30" />truePhotosynthetic rubisco capacity per unit leaf area at leaf temperature (micomol CO2 m-2 s-1)vlmax_leaf temp
photosyn rub captruefn22num = eavlmax_act_energy_vlmax25 * (tc_leaf_temp - 25),
denom = 298 * r_gas_const * (tc_leaf_temp + 273),
vlmax25_photosyn_rub_cap * exp(num / denom)1,numeavlmax_act_energy_vlmax25tc_leaf_temp25,denom298r_gas_consttc_leaf_temp273vlmax25_photosyn_rub_capnumdenom<fileref name="edited photosynthesis.f95" line="29" />trueActivation energy for vlmax25 (kJ mol-1)eavlmax_act energy
vlmax25truefn2364800164800border7965border8952border9938border10640border11725border12884<fileref name="edited photosynthesis.f95" line="19" />trueActivation energy for kc25 (kJ mol-1)eakc_act energy kc25truefn1859400159400border1489border2529border3490border4550border6557<fileref name="edited AS-NewBSC.f95" fromline="326" toline="329" />trueFlag set to 0 if state variable in valid range else simulation stops with error code 1suc c error 1?truefn803if (suc_c_per_plant <= 0) then
stop(1)
else
0intstop1suc_c_per_plant00node05070node05071node05072node05073node05074node05075node05076node05077node05078node05079node05080node05081node05082node05083node05084node05085node05086node05087node05088node05089node05090node05091node05092node05093node05094truewhitetime controlbdr17656bdr22835border3435truefn1011 / steps_per_day11steps_per_dayIt is assumed that time() will be incrementing in steps of 1 (arbitary units)trueTime since start of simulation in dayselapsed time
daystruefn1time()* timestep1timetimestep<fileref name="edited AS-NewBSC.f95" line="136" >
The single light hours value replaces the (single value) do-loop starting at line 200.
</fileref>trueNumber of light hours per daylight_hrtruefn3sunset-sunrise1sunsetsunrisetrueTime step length used to solve the model (days)timesteptrueSwitch variable set to 1 if light and 0 if darkis light?truefn202fmod(time(),steps_per_day)>=sunrise*steps_per_day/24 and fmod(time(),steps_per_day)<sunset*steps_per_day/24booleanfmodtimesteps_per_daysunrisesteps_per_day24fmodtimesteps_per_daysunsetsteps_per_day24border2839border3606truesunrisetruefn201Sunrise1Sunrisetruesunsettruefn302Sunset1Sunset<fileref name="edited AS-NewBSC.f95" line="122" >
This is the 600 value in the calculation.
</fileref>trueNumber of time steps per hoursteps per
hourtruefn3011/241124<fileref name="edited AS-NewBSC.f95" line="122" />trueNumber of steps per daysteps per
daytruefn40224 * steps_per_hour124steps_per_hourtrueLength of light period in stepslight period
stepstruefn403light_hr * steps_per_hour1light_hrsteps_per_hourtrueNumber of steps into current daysteps into
current daytruefn404time() - int( time() / steps_per_day ) * steps_per_day1timeinttimesteps_per_daysteps_per_daynode05095node05096node05097node05098node05099node05100node05101node05102node05103node05104node05105node05106node05107node05108node05109node05110node05111node05112node05113truewhitetranslocation<fileref name="edited AS-NewBSC.f95" line="363" />trueSwitch variable set to 1 if translocation needed, otherwise it is set to 0translocation
needed?truefn3if (suc_c_intermed <= suc_equi_plant) then
1
else
0int1suc_c_intermedsuc_equi_plant0border325border10974border5927trueTranslocation from root (g C / plant (during current time step))root_transnode05114node05115node05116node05117node05118node05119node05120node05121node05122truewhitetranslocation not neededtruefn1translocation_needed_ == 0cond_spectranslocation_needed_0border1260border1965border3873truenot needed?<fileref name="edited AS-NewBSC.f95" line="361" />trueTranslocation from root (g C / plant (during current time step))root_transtruefn62010<fileref name="edited AS-NewBSC.f95" line="360" />trueTranslocation from leaves (g C / plant (during current time step))leaf_transtruefn59010node05123node05124node05125node05126node05127node05128node05129node05130node05131node05132node05133node05134node05135node05136truewhitetranslocation neededtrueneeded?border2693<fileref name="edited AS-NewBSC.f95" line="366" />trueTranslocation from leaves (g C / plant (during current time step))leaf_transtruefn59scaling = leaf_c_per_plant / root_and_leaf_c,
(suc_equi_plant - suc_c_intermed) * scaling1,scalingleaf_c_per_plantroot_and_leaf_csuc_equi_plantsuc_c_intermedscalingborder4783border12920truefn2translocation_needed_ == 1cond_spectranslocation_needed_1<fileref name="edited AS-NewBSC.f95" line="367" />trueTranslocation from root (g C / plant (during current time step))root_transtruefn62scaling = root_c_per_plant / root_and_leaf_c,
(suc_equi_plant - suc_c_intermed) * scaling1,scalingroot_c_per_plantroot_and_leaf_csuc_equi_plantsuc_c_intermedscalingborder2852border9989border10882border1167border13958<fileref name="edited AS-NewBSC.f95" line="363" >
Used as part of the calculations on lines 363, 366 and 367.
</fileref>trueEquilibrium sucrose plus hexose mass for whole plant (g C / plant)suc equi planttruefn4suc_equi * leaf_s/dt()1suc_equileaf_sdtborder866truefn62sum({root_trans}) + sum({root_trans_0})1sum{}root_transsum{}root_trans_0trueTranslocation from leaves (g C / plant (during current time step))leaf_transtruefn59sum({leaf_trans}) + sum({leaf_trans_0})1sum{}leaf_transsum{}leaf_trans_0border6878trueTotal of root and leaf C (g C / plant)root and leaf ctruefn1root_c_per_plant + leaf_c_per_plant1root_c_per_plantleaf_c_per_plantborder781border8116<fileref name="edited AS-NewBSC.f95" fromline="455" toline="458" >
Note that the leaf_s value used in the calcs is the value before the state variables were updated on lines 382 to 384.
</fileref>trueSpecific leaf area index of Arabidopsis (m2 leaf / g C)sla_specific LAItruefn201leaf_s_to_use = last(leaf_s),
newval = 0.1549 + 0.2286 * exp(-2315 * leaf_s_to_use),
if (time() == 0) then
sla_ini_specific_LAI
elseif (newval >= 0.4) then
0.4 / 0.94
else
newval / 0.941,leaf_s_to_uselastleaf_s,newval0.15490.2286-2315leaf_s_to_usesla_ini_specific_LAItime00.40.94newval0.4newval0.94node05137node05138node05139node05140node05141node05142node05143node05144node05145node05146node05147node05148node05149node05150node05151node05152node05153node05154node05155truewhitesettings for photosynthesisbdr14815border3854border443<fileref name="edited AS-NewBSC.f95" line="146" >
The 19 value conflicts with the update on lines 467 and 470.
</fileref>trueInitial photosynthetic rubisco capacity per unit leaf area at 25oC (micromol CO2 m-2 s-1)vlmax25 ini<fileref name="edited AS-NewBSC.f95" line="208" >
The single CO2 value replaces the do-loop of CO2 values starting at line 206.
</fileref>trueExperimental atmospheric CO2 partial pressure (Pa)ca_atmos co2truefn4CO21CO2<fileref name="edited AS-NewBSC.f95" line="133" />trueLeaf temperature (oC)tc_leaf temptruefn5Temperature1Temperature<fileref name="edited AS-NewBSC.f95" line="129" >
The single PAR value replaces the do-loop of PAR values starting at line 197.
</fileref>trueTotal absorbed PAR (photosynthetically active radiation ) per unit leaf area (micromol m-2 s-1)il_total absorbed
partruefn6PAR1PAR<fileref name="edited AS-NewBSC.f95" line="470" />truePhotosynthetic rubisco capacity per unit leaf area at 25oC (micromol CO2 m-2 s-1)vlmax25_photosyn
rub captruefn7if (time() == 0) then
vlmax25_ini
else
vlmax20 / 0.641vlmax25_initime0vlmax200.64border199border2841bdr4367bdr10637truefn119119<fileref name="edited AS-NewBSC.f95" line="467" />truePhotosynthetic rubisco capacity per unit leaf area at 20oC (micromol CO2 m-2 s-1)vlmax20truefn219119bdr35978bdr36930bdr37974bdr38960bdr39840bdr4047bdr44420bdr45415trueNet leaf growthtruefn606leaf_grow-leaf_transl1leaf_growleaf_translbdr50962fn3041comp3fn3051trueemergedtruefn707emecond_specemenode05156node05157node05158truewhiteroot geometrybdr1173truedepthtruefn3100*root_c_per_plant^(1/3)1100root_c_per_plant13truemaxbladetruefn623with_greatest({i},{[who]})array113with_greatest{}i{}.who[]trueYoungest emerge timetruefn607with_greatest({i},{leaf_emerge_time})1with_greatest{}i{}leaf_emerge_timetrueCurrent Leaf Notruefn403greatest({i})intgreatest{}itrueYoungest emerge thermal timetruefn302with_greatest({i},{Leaf_emerge_thermal_time__Cycle_threshold_})1with_greatest{}i{}Leaf_emerge_thermal_time__Cycle_threshold_truefn506rl_pt_plant_leaf_resp1rl_pt_plant_leaf_resp973truefn507rrm_pt1rrm_pt514truefn502rlc_pt11rlc_pt1430truefn503rrc_pt11rrc_pt1768truefn404suc_sta1suc_sta392truefn413suc_sta_base1suc_sta_base450truefn406root_gro11root_gro1298truefn405leaf_gro11leaf_gro1176truefn402leaf_trans1leaf_trans291truefn403root_trans1root_trans186truefn401sta_use1sta_use61truefn412al_suc1al_suc147truefn802al_pt_plant_assim1al_pt_plant_assim476truefn618rel_Ld*BiomassL1rel_LdBiomassL562truefn123cFT*241cFT24550truefn4(Bco+RXN35-RXN36)*241BcoRXN35RXN3624550truefn3(RXN33-RXN34)*241RXN33RXN3424550truecYn_rate_function1/1* (-1*RXN26+ -1*RXN29+RXN28)*24111-1RXN26-1RXN29RXN2824450truecYm_rate_function1/1* (-1*RXN24+RXN23)*24111-1RXN24RXN2324450truecYc_rate_function1/1* (-1*RXN27+ -1*RXN28+RXN25+RXN26)*24111-1RXN27-1RXN28RXN25RXN2624450truecXn_rate_function1/1* (-1*RXN19+ -1*RXN22+RXN21)*24111-1RXN19-1RXN22RXN2124450truecXm_rate_function1/1* (-1*RXN17+RXN16)*24111-1RXN17RXN1624450truecXc_rate_function1/1* (-1*RXN20+ -1*RXN21+RXN18+RXN19)*24111-1RXN20-1RXN21RXN18RXN1924450truecTn_rate_function1/1* (-1*RXN12+ -1*RXN15+RXN14)*24111-1RXN12-1RXN15RXN1424450truecTm_rate_function1/1* (-1*RXN10+RXN9)*24111-1RXN10RXN924450truecTc_rate_function1/1* (-1*RXN13+ -1*RXN14+RXN11+RXN12)*24111-1RXN13-1RXN14RXN11RXN1224450truecPn_rate_function1/1* (-1*RXN31+ -1*RXN32+RXN30)*24111-1RXN31-1RXN32RXN3024450truecLn_rate_function1/1* (-1*RXN5+ -1*RXN8+RXN7)*24111-1RXN5-1RXN8RXN724450truecLm_rate_function1/1* (-1*RXN3+RXN1+RXN2)*24111-1RXN3RXN1RXN224450truecLc_rate_function1/1* (-1*RXN6+ -1*RXN7+RXN4+RXN5)*24111-1RXN6-1RXN7RXN4RXN524450truefn201const_delay(cFT,1)*241const_delaycFT124550truefn4Ve*241Ve24550truefn7MPTU*241MPTU24554truefn1Thermal_time1Thermal_time550i301truei304i302truei303i401truei402truei503i101truei102i202truei203truei711truei724truei608truei8truei122i127truei154i128truei159i129truei164i130truei165i131truei166i132truei167i133truei155i134truei160i135truei168i136truei169i137truei170i138truei171i139truei156i140truei161i141truei172i142truei173i143truei174i144truei175i145truei157i146truei162i13truei607i14truei20truei121i147truei176i148truei177i149truei178i150truei179i151truei163i152truei158i153truei180i423truei1170truei1169node05159trueThrmi201truei418truei421i25truei12truei15truei18truei21truei540truei102truei44truei3truei7truei541truei113truei1truei117i5truei2truei114i6truei542truei118i7truei120i8truei121i9truei123i10truei119truei14truei5truei9truei225i11truei6truei10truei226i14i15truei227truei83truei85i81truei82truei84truei86truei17truei52truei106i16truei53truei54truei56truei58truei60truei62truei107i19truei108i20truei109i22truei114i23truei116i24truei115truei55truei57truei59truei61truei63truei4truei92truei103i91truei93truei94truei20truei104i90truei105truei94truei203truei206truei309truei3truei13truei16truei19i80truei224i124node05160trueflow2truei227i226truei228truei230truei1truei110node05161trueflow1i120truei121i101truei122truei123truei5i102truei7truei8truei10truei111i103i104truei113i105truei122truei6truei9truei11truei22truei103truei2truei205truei308truei419truei422truei536truei538truei537truei539truei543node05162true24 hr beforetruei203truearc00072truearc00078truei108truearc00080truearc00081truearc00082truearc00083truearc00084truearc00085truearc00086truearc00087truearc00089truearc00092truearc00093truei109truearc00097truearc00098truearc00099truearc00101truearc00104truearc00105truei110truearc00109truearc00110truearc00111truearc00112truearc00113truearc00114truearc00115truearc00116truearc00117truearc00118truearc00119truearc00120truearc00121truearc00122truearc00123truearc00124truearc00125truearc00126truearc00127truearc00128truearc00129truearc00130truearc00131truearc00132truearc00133truearc00134truearc00136truearc00137truearc00138truearc00139truearc00142truearc00143truearc00146truei111truearc00148truearc00149truearc00150truearc00151truearc00152truearc00153truearc00154truearc00155truearc00156truearc00157truearc00158truearc00159truearc00160truearc00161truearc00162truearc00163truearc00164truearc00165truearc00169truei112truearc00173truearc00174truearc00175truearc00176truearc00182truei113truearc00184truearc00185truearc00186truearc00187truearc00188truearc00189truearc00190truearc00191truearc00192truearc00193truearc00194truearc00195truearc00196truearc00197truearc00198truearc00199truearc00200truearc00201truearc00202node05163truecLc_ratetruearc00204truearc00205truearc00206truearc00207truearc00203node05164truecLm_ratetruearc00209truearc00210truearc00211truearc00208node05165truecLn_ratetruearc00213truearc00214truearc00215truearc00212node05166truecPn_ratetruearc00217truearc00218truearc00219truearc00216node05167truecTc_ratetruearc00221truearc00222truearc00223truearc00224truearc00220node05168truecTm_ratetruearc00226truearc00227truearc00225node05169truecTn_ratetruearc00229truearc00230truearc00231truearc00228node05170truecXc_ratetruearc00233truearc00234truearc00235truearc00236truearc00232node05171truecXm_ratetruearc00238truearc00239truearc00237node05172truecXn_ratetruearc00241truearc00242truearc00243truearc00240node05173truecYc_ratetruearc00245truearc00246truearc00247truearc00248truearc00244node05174truecYm_ratetruearc00250truearc00251truearc00249node05175truecYn_ratetruearc00253truearc00254truearc00255truearc00252i535i1node05176truecCO_ratetruei26truei27i2node05177truecFT_ratetruei28truei29truei20i5truei25truei17i6truei30truei18truei19truei114i7truei31truei22truei21i8truei32truei24truei23i101truei102truei103truei104truei105truei106truei107i451node05178trueflow11truei453i936truei506truei720truei605truei204truei410truei504truei1truei705truei919truei1021truei644truei108truei839truei327truei324truei212truei428truei430truei310truei103truei205truei106truei207truei426truei887truei1248truei1269truei507truei505truei920truei609truei1099truei106truei1171truei403i449truei1114truei1115i323truei1116truei1117truei1118truei1119i703i201truei704truei808truei1020truei1022truei306truei605truei803truei804truei806i602truei502i606i812truei918truei917i913truei916truei915truei903i914truei919truei1120truei907truei301truei1095truei505truei1106truei1104truei303truei1099truei609truei507truei887truei839truei310truei327truei324truei205truei103truei1131i509truei606truei608truei607i612truei609truei810truei812truei811i411truei506truei508truei610truei4truei1132i233truei304truei726truei725i1097node05179trueLeaf_growthtruei1107truei711truei1100truei1101truei1110truei1149i101truei104truei206truei714i212truei806truei223truei401truei326truei329i213truei807truei402truei312i708truei710truei709i409truei1157i442truei813truei443truei415i573truei1096truei829truei578i837truei838truei841truei850i406truei908truei5truei110truei114truei204i1i2i3truei205truei208truei210truei212i1i101truei103truei104i206i2i4truei201i8i102truei105truei106i107truei111i108truei115truei159i109truei116truei158truei122truei124truei126truei128truei130i119truei123truei132i120truei125truei131i121truei127truei129truei133truei142truei145truei148truei134truei136truei138truei140truei143truei146truei149i119truei135truei141truei151i120truei137truei144truei150i121truei139truei147truei152truei179truei184truei188truei177truei180truei182truei186truei160truei166i119truei168truei178truei181i120truei162truei185truei183i121truei187truei197truei199truei201i153truei156i154truei157i189truei190truei191truei192truei193truei194truei195truei196truei198truei200truei305i304truei207truei209truei211truei213truei214truei215truei306i930truei932i301truei418truei1150truei414i420truei421i422truei423truei1152i410truei424truei425truei1151i112truei113truei1159i720truei723truei721truei1i724i201truei817truei823i1truei802truei309truei3truei108truei106i320i323truei401truei326truei430truei428i446truei402truei625truei624truei623i449truei450truei452i1truei106i102truei207i103truei1221truei209truei212i104truei414truei418truei420i105truei421truei422i425truei426i527truei528i529truei532truei534truei530i535truei1244truei1243i553truei503truei604truei554truei555truei1109i569truei570truei571i1truei1258i643truei644i412truei929truei931i756truei1148truei1160truei825i834truei836truei934i842truei849i620truei101truei622truei621i1027truei1028truei830truei1232i1233truei1234truei707truei721truei629truei219truei423truei923truei1026truei1269truei920truei505truei619truei7truei22truei138truei152truei207truei301i613truei614truei616i47truei304truei306i41truei6truei301truei619truei207truei204truei153truei23truei139truei13truei24truei133truei154i41truei14truei2i42truei19i37truei140i39truei147i101i102truei302truei618truei620truei621truei305i201truei208truei615i1truei205truei11truei16truei611truei206truei156truei26truei142truei4i42truei145truei143truei144i39truei157truei159truei158i41truei12truei17truei15truei29truei27truei28truei21i37truei135truei149truei617i2truei207i103truei307i202truei612i103truei208truei209truei408truei1truei3i42truei18truei20truei131i37truei132truei134truei137i39truei146truei148truei151truei702i17i53i301truei302i307truei324truei310i309i312truei314truei326i318i319truei320truei322truei325truei704truei810truei809truei703truei705truei803truei1005truei1006i9truei705i35truei704truei703i36truei807truei706truei806i38truei809truei810truei808i10i11truei803truei804truei801truei805truei722truei1005truei1006truei1011truei105truei1013truei820truei201truei601truei607truei723truei110truei423truei209truei425i3truei820i19truei602i20truei914truei916i22i43truei931truei933i44truei925truei927i45truei1013truei1012truei1i48i54truei918truei920i718i601node05180<fileref name="edited AS-NewBSC.f95" line="325" />trueAssimilatory flux per plant (g C / plant / time step)assim flux per pltruei1008i901truei607truei904truei908truei910truei912truei923i902truei909truei911truei913truei915truei926i43truei932truei905i20i54truei922truei924truei919i44truei929truei930truei906truei115truei109truei202truei603i903truei907truei917i54truei921i44truei928i43i103truei110i20truei203truei604truei112truei116truei934i102truei302truei104i1001truei1006truei1005truei1002truei1003truei1004truei219truei402truei1103truei710truei923truei10truei155truei208i23i24truei1405truei1406truei1407truei1408i34truei924i40i1101truei1103truei1102truei711i1104truei1105truei1106i1107truei1108truei1109i1402truei1403truei1404truei25truei141i65node05181trueleaf translnode05182trueroot translnode05183truestarch to sol sugarnode05184trueal_suctruei111truei109truei402truei423node05185trueleaf growi67truei5node05186trueroot growi68truei130node05187truesuc to sta
convi69node05188truebaseline sta
convtruei408truei425truei1270truei1269node05189truerlc_pt1node05190truerrc_pt1i501truei136truei150node05191<fileref name="edited AS-NewBSC.f95" line="301" />truegC / plant / time stepleaf resp
per plantnode05192<fileref name="edited AS-NewBSC.f95" line="301" />truegC / plant / time steprrm_pti506truei511truei510i18truei1026i52truei1001truei1002truei1205truei1206truei1204truei1203i55truei802truei801i56truei903truei904truei708truei1110truei811truei813truei815truei817i1009truei1111i3truei304truei408truei407i4truei816i6truei814i7truei201i12truei204i13truei812i14truei709truei102truei209truei213truei214truei405truei406truei818i1truei102truei505i101truei503i2truei404truei405truei406i8truei819i9i10truei202truei203i24truei710truei209i25i28truei222truei223truei224truei225i29i30truei305i31truei301truei302i33truei306truei307truei308i34truei103truei401truei402truei403i35truei210truei214truei213i36truei217truei216truei215i37truei221truei219truei220truei218truei408i26i27i32truei303truei304truei206truei207truei103truei104truei112i1truei208truei205truei206truei207i5truei111truei109truei110i15i16truei101truei104truei103truei102i17i19truei105truei106truei108truei107i20i21i22truei113truei114truei115truei112i23truei407i18truei821i1009truei1010truei630truei524truei404truei504i1truei201i4truei915truei916i101i204truei917truei918truei301truei606truei608i607truei525i708truei631i401i402truei403i505truei507truei511i508truei302truei108truei220truei114truei116truei217i3truei109truei222truei110i62truei4truei5truei2truei106i1i62i59truei124truei6truei120truei118truei128truei122i2i59truei127truei130truei126truei129truei108truei7i62truei125truei119truei121truei123truei104i216truei221truei218truei1truei103i59truei105truei107truei112i113truei115truei117i901truei902truei1004truei320truei505truei920truei817truei811i1i4truei506i5truei321i6truei921i7truei104truei3truei815truei813i2truei1246truei1028truei1234i831truei832truei833truei935truei1237truei1238truei1239truei1240truei1242truei1246i1245truei1248truei1249i1259truei1261truei2i5truei6i1153truei1156truei1158i1036truei819truei820i607truei702i202truei821truei822