Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
hol353 committed Feb 6, 2024
2 parents f493b09 + 2dc1d34 commit 0f1e016
Show file tree
Hide file tree
Showing 493 changed files with 110,527 additions and 93,847 deletions.
864 changes: 432 additions & 432 deletions Examples/Continuous Sorghum.out

Large diffs are not rendered by default.

289 changes: 258 additions & 31 deletions Examples/Continuous Sorghum.sum

Large diffs are not rendered by default.

10 changes: 5 additions & 5 deletions Examples/SWIM3 Maize with Cl.sum
Original file line number Diff line number Diff line change
Expand Up @@ -954,7 +954,7 @@ Paddock:
Weight 1000 grains(g) = 262.2 Grains/m^2 = 3601.4
Grains/head = 360.1
Grain N percent (%) = 1.43 Grain N (kg/ha) = 135.02
Total N content (kg/ha) = 276.84 Senesced N content (kg/ha) = 102.62
Total N content (kg/ha) = 276.85 Senesced N content (kg/ha) = 102.62
Green N content (kg/ha) = 88.98

Average Stress Indices: Water Photo Water Expan N Photo
Expand Down Expand Up @@ -3259,7 +3259,7 @@ Paddock:
Manager sending message :- maize end_crop
Crop ended.
Organic matter from crop:- Tops to surface residue Roots to soil FOM
DM (kg/ha) = 16011.53 6259.34
DM (kg/ha) = 16011.54 6259.34
N (kg/ha) = 158.74 63.49
P (kg/ha) = 0.00 0.00
26 October 1952(Day of year=300), paddock.Salinity:
Expand Down Expand Up @@ -4403,15 +4403,15 @@ Paddock:
Maximum iterations reached - swim will reduce timestep
ApsimSwim|apswim_swim - Changing dt value from: 3.750 to: 1.875
Maximum iterations reached - swim will reduce timestep
ApsimSwim|apswim_swim - Changing dt value from: 0.938 to: 0.469
ApsimSwim|apswim_swim - Changing dt value from: 0.937 to: 0.469
Maximum iterations reached - swim will reduce timestep
ApsimSwim|apswim_swim - Changing dt value from: 3.750 to: 1.875
Maximum iterations reached - swim will reduce timestep
ApsimSwim|apswim_swim - Changing dt value from: 0.938 to: 0.469
ApsimSwim|apswim_swim - Changing dt value from: 0.937 to: 0.469
Maximum iterations reached - swim will reduce timestep
ApsimSwim|apswim_swim - Changing dt value from: 3.750 to: 1.875
Maximum iterations reached - swim will reduce timestep
ApsimSwim|apswim_swim - Changing dt value from: 0.938 to: 0.469
ApsimSwim|apswim_swim - Changing dt value from: 0.937 to: 0.469
Maximum iterations reached - swim will reduce timestep
ApsimSwim|apswim_swim - Changing dt value from: 3.750 to: 1.875
27 October 1957(Day of year=300), paddock.Salinity:
Expand Down
16 changes: 8 additions & 8 deletions Model/CSUserInterface/ProfileUI.Designer.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion Model/Maize/Maize.rsp

This file was deleted.

38 changes: 22 additions & 16 deletions Model/Sorghum.xml
Original file line number Diff line number Diff line change
Expand Up @@ -166,9 +166,9 @@
<aMaxI type="text" description="Intercept for Largest leaf calculation">-321.13</aMaxI>
<aMaxVert type="text" description="Vertical Offset for Largest Leaf Calc">0.3</aMaxVert>
<aTillerVert type="text" description="Additional Vertical Offset for each additional Tiller">0.05</aTillerVert>
<tilleringPropensity type="text" description="Propensity to Tiller">-0.82</tilleringPropensity>
<tillerSdSlope type="text" description="Tiller Supply/demand slope">0.2065</tillerSdSlope>

<tillerSdIntercept type="text" description="Propensity to Tiller">-0.265</tillerSdIntercept>
<tillerSdSlope type="text" description="Tiller Supply/demand slope">0.247</tillerSdSlope>
<maxLAIForTillerAddition type="text" description="Max Linear LAI for tillers">0.325</maxLAIForTillerAddition>
<!-- *****************************************************************************************************
SECTION 4 - ROOT DEPTH AND ROOT LENGTH GROWTH
*****************************************************************************************************
Expand Down Expand Up @@ -361,9 +361,11 @@
<maxGFRate type="text" description="maxGFRate">0.09</maxGFRate>
<x_stem_wt type="text" description="look up table for canopy height">0 80</x_stem_wt>
<y_height type="text" description="plant canopy height">0 2000</y_height>
<aX0 type="text" description="Largest leaf multiplier">0.786</aX0>
<aMaxS type="text" description="Largest Leaf Area Slope">46.312</aMaxS>
<aMaxI type="text" description="Intercept for Largest leaf calculation">-321.13</aMaxI>
<aX0 type="text" description="Largest leaf multiplier">0.687</aX0>
<aMaxS type="text" description="Largest Leaf Area Slope">22.25</aMaxS>
<aMaxI type="text" description="Intercept for Largest leaf calculation">92.45</aMaxI>
<tillerSdIntercept type="text" description="Propensity to Tiller">0.329</tillerSdIntercept>
<tillerSdSlope type="text" description="Tiller Supply/demand slope">0.300</tillerSdSlope>
</Buster>
<early cultivar="yes">
<tt_emerg_to_endjuv units="oC" description="fixed for all genotypes">100</tt_emerg_to_endjuv>
Expand Down Expand Up @@ -500,6 +502,8 @@
<aX0 type="text" description="Largest leaf multiplier">0.687</aX0>
<aMaxS type="text" description="Largest Leaf Area Slope">8.9</aMaxS>
<aMaxI type="text" description="Intercept for Largest leaf calculation">245.3</aMaxI>
<tillerSdIntercept type="text" description="Propensity to Tiller">-1.363</tillerSdIntercept>
<tillerSdSlope type="text" description="Tiller Supply/demand slope">0.206</tillerSdSlope>
</M35-1>
<CSH13R>
<tt_emerg_to_endjuv type="text" description="tt_emerg_to_endjuv">100</tt_emerg_to_endjuv>
Expand All @@ -522,6 +526,8 @@
<aX0 type="text" description="Largest leaf multiplier">0.687</aX0>
<aMaxS type="text" description="Largest Leaf Area Slope">22.25</aMaxS>
<aMaxI type="text" description="Intercept for Largest leaf calculation">92.45</aMaxI>
<tillerSdIntercept type="text" description="Propensity to Tiller">-0.818</tillerSdIntercept>
<tillerSdSlope type="text" description="Tiller Supply/demand slope">0.159</tillerSdSlope>
</CSH13R>
<dekalb_DK55 cultivar="yes">
<tt_emerg_to_endjuv units="oC" description="fixed for all genotypes">100</tt_emerg_to_endjuv>
Expand Down Expand Up @@ -600,7 +606,7 @@
<aX0 type="text" description="Largest leaf multiplier">0.83</aX0>
<aMaxS type="text" description="Largest Leaf Area Slope">2.3</aMaxS>
<aMaxI type="text" description="Intercept for Largest leaf calculation">514</aMaxI>
<rue description="g bio/MJ Radn radiation use efficiency">1.75</rue>
<rue description="g bio/MJ Radn radiation use efficiency">1.75</rue>
</Scorpio>
<Apollo cultivar="yes">
<tt_emerg_to_endjuv type="text" description="tt_emerg_to_endjuv">100</tt_emerg_to_endjuv>
Expand All @@ -619,9 +625,9 @@
<aX0 type="text" description="Largest leaf multiplier">0.71</aX0>
<aMaxS type="text" description="Largest Leaf Area Slope">37</aMaxS>
<aMaxI type="text" description="Intercept for Largest leaf calculation">-101</aMaxI>
<rue description="g bio/MJ Radn radiation use efficiency">1.75</rue>
<rue description="g bio/MJ Radn radiation use efficiency">1.75</rue>
</Apollo>
<Bazley cultivar="yes">
<Bazley cultivar="yes">
<tt_emerg_to_endjuv type="text" description="tt_emerg_to_endjuv">100</tt_emerg_to_endjuv>
<photoperiod_crit1 type="text" description="photoperiod_crit1">11.5</photoperiod_crit1>
<photoperiod_crit2 type="text" description="photoperiod_crit2">13.5</photoperiod_crit2>
Expand All @@ -638,9 +644,9 @@
<aX0 type="text" description="Largest leaf multiplier">0.71</aX0>
<aMaxS type="text" description="Largest Leaf Area Slope">37</aMaxS>
<aMaxI type="text" description="Intercept for Largest leaf calculation">-101</aMaxI>
<rue description="g bio/MJ Radn radiation use efficiency">1.75</rue>
<rue description="g bio/MJ Radn radiation use efficiency">1.75</rue>
</Bazley>
<Taurus cultivar="yes">
<Taurus cultivar="yes">
<tt_emerg_to_endjuv type="text" description="tt_emerg_to_endjuv">100</tt_emerg_to_endjuv>
<photoperiod_crit1 type="text" description="photoperiod_crit1">11.5</photoperiod_crit1>
<photoperiod_crit2 type="text" description="photoperiod_crit2">13.5</photoperiod_crit2>
Expand Down Expand Up @@ -730,7 +736,7 @@
<aMaxS type="text" description="Largest Leaf Area Slope">0</aMaxS>
<aMaxI type="text" description="Intercept for Largest leaf calculation">495</aMaxI>
</P86G56>
<MR43 cultivar="yes">
<MR43 cultivar="yes">
<tt_emerg_to_endjuv type="text" description="tt_emerg_to_endjuv">100</tt_emerg_to_endjuv>
<photoperiod_crit1 type="text" description="photoperiod_crit1">11.5</photoperiod_crit1>
<photoperiod_crit2 type="text" description="photoperiod_crit2">13.5</photoperiod_crit2>
Expand All @@ -748,7 +754,7 @@
<aMaxS type="text" description="Largest Leaf Area Slope">37</aMaxS>
<aMaxI type="text" description="Intercept for Largest leaf calculation">-101</aMaxI>
</MR43>
<N_14NUS01 cultivar="yes">
<N_14NUS01 cultivar="yes">
<tt_emerg_to_endjuv type="text" description="tt_emerg_to_endjuv">100</tt_emerg_to_endjuv>
<photoperiod_crit1 type="text" description="photoperiod_crit1">11.5</photoperiod_crit1>
<photoperiod_crit2 type="text" description="photoperiod_crit2">13.5</photoperiod_crit2>
Expand All @@ -766,7 +772,7 @@
<aMaxS type="text" description="Largest Leaf Area Slope">8.5</aMaxS>
<aMaxI type="text" description="Intercept for Largest leaf calculation">378</aMaxI>
</N_14NUS01>
<N_14NUS02 cultivar="yes">
<N_14NUS02 cultivar="yes">
<tt_emerg_to_endjuv type="text" description="tt_emerg_to_endjuv">100</tt_emerg_to_endjuv>
<photoperiod_crit1 type="text" description="photoperiod_crit1">11.5</photoperiod_crit1>
<photoperiod_crit2 type="text" description="photoperiod_crit2">13.5</photoperiod_crit2>
Expand All @@ -784,7 +790,7 @@
<aMaxS type="text" description="Largest Leaf Area Slope">8.5</aMaxS>
<aMaxI type="text" description="Intercept for Largest leaf calculation">378</aMaxI>
</N_14NUS02>
<N_14NUS03 cultivar="yes">
<N_14NUS03 cultivar="yes">
<tt_emerg_to_endjuv type="text" description="tt_emerg_to_endjuv">100</tt_emerg_to_endjuv>
<photoperiod_crit1 type="text" description="photoperiod_crit1">11.5</photoperiod_crit1>
<photoperiod_crit2 type="text" description="photoperiod_crit2">13.5</photoperiod_crit2>
Expand All @@ -802,7 +808,7 @@
<aMaxS type="text" description="Largest Leaf Area Slope">9.3</aMaxS>
<aMaxI type="text" description="Intercept for Largest leaf calculation">384</aMaxI>
</N_14NUS03>
<N_14NUS04 cultivar="yes">
<N_14NUS04 cultivar="yes">
<tt_emerg_to_endjuv type="text" description="tt_emerg_to_endjuv">100</tt_emerg_to_endjuv>
<photoperiod_crit1 type="text" description="photoperiod_crit1">11.5</photoperiod_crit1>
<photoperiod_crit2 type="text" description="photoperiod_crit2">13.5</photoperiod_crit2>
Expand Down
34 changes: 20 additions & 14 deletions Model/Sorghum/Leaf.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -471,25 +471,25 @@ double Leaf::provideN(double requiredN, bool forLeaf)
* (dilnNSlope * slnToday + dilnNInt) * laiToday;
dilutionN = Max(dilutionN,0.0);

// pre anthesis, get N from dilution, reduction in dltLai and senesence
// pre anthesis, get N from dilution first, then reduction in dltLai and then senesence
if(stage <= flowering)
{
double nProvided = Min(dilutionN,requiredN/2.0);
dltNRetranslocate -= nProvided;
// Only one third of required N is available from dilution. (To reduce rate of decay in SLN).
double nProvided = Min(dilutionN,requiredN/3.0);
dltNRetranslocate -= nProvided;
requiredN -= nProvided;
if(requiredN <= 0.0001)
return nProvided;

// not sufficient N from dilution - take from decreasing dltLai and senescence
// not sufficient N from dilution - take from decreasing dltLai and then senescence if needed.
if (dltLAI > 0)
{
// Only half of the requiredN can be accounted for by reducing DltLAI
// If the RequiredN is large enough, it will result in 0 new growth
// Stem and Rachis can technically get to this point, but it doesn't occur in all of the validation data sets
// All of the remaining requiredN can be obtained by reducing DltLAI.
// If the RequiredN is large enough, it will result in 0 delta LAI.

double n = dltLAI * newLeafSLN;
double laiN = Min(n,requiredN/2.0);
double laiN = Min(n, requiredN);

dltLAI = (n - laiN) / newLeafSLN;
if (forLeaf)
{
Expand All @@ -498,12 +498,15 @@ double Leaf::provideN(double requiredN, bool forLeaf)
}

// recalc the SLN after this N has been removed
// Check for senescance if more N required. (Structural Stem/rachis).
// Bound the rate of supply of N to the amount possible
laiToday = calcLAI();
slnToday = calcSLN();
double maxN = plant->phenology->getDltTT()
* (dilnNSlope * slnToday + dilnNInt) * laiToday;
maxN = Max(maxN, 0);
double maxN = plant->phenology->getDltTT() * (dilnNSlope * slnToday + dilnNInt) * laiToday;
maxN = Max(maxN, 0);
requiredN = Min(requiredN,maxN);
if (maxN < requiredN)
int temp = 0;

double senescenceLAI = Max(divide(requiredN,(slnToday-senescedLeafSLN)),0.0);

Expand All @@ -517,7 +520,7 @@ double Leaf::provideN(double requiredN, bool forLeaf)
}
else // post anthesis
{
// if sln > 1, dilution then senescence
// if sln > 1, then get required N from dilution then senescence
if(slnToday > 1.0)
{
double nProvided = Min(dilutionN,requiredN);
Expand All @@ -533,6 +536,9 @@ double Leaf::provideN(double requiredN, bool forLeaf)
double maxN = plant->phenology->getDltTT()
* (dilnNSlope * slnToday + dilnNInt) * laiToday;
requiredN = Min(requiredN,maxN);
if (maxN < requiredN)
int temp = 0;


double senescenceLAI = Max(divide(requiredN,(slnToday-senescedLeafSLN)),0.0);

Expand All @@ -547,7 +553,7 @@ double Leaf::provideN(double requiredN, bool forLeaf)

return nProvided;
}
else // sln < 1.0
else // SLN < 1.0
{
// half from dilution and half from senescence
// dilution
Expand Down
Loading

0 comments on commit 0f1e016

Please sign in to comment.