24 Mar 2016 – APSIM 7.8 Release Notes
24th March 2016
Enhancements and bug fixes to the cotton model
Cotton.dll replaces both OZCOT.dll and mvOZCOT.dll and is installed by default.
Crop stages are now reported by ‘stageName’ or numerically by ‘stage’.
|1 = germination||period from sowing to emergence|
|2 = presquaring||emergence to first square|
|3 = squaring||first square to first flower|
|4 = flowering||first flower to first open boll|
|5 = openbolls||first open boll to %OpenBolls marking maturity (default= 60% boll open)|
|6 = mature||%OpenBolls to end of leaf drop (defoliation period)|
|7 = harvest_ripe||crop defoliated and ready to harvest|
Use of crop stages removes the necessity to monitor ‘ozcot_status > 0’ to determine when a crop is ready to harvest and improves management and reporting flexibility.
Cotton manager scripts now need to explicitly call ‘defoliate’ as well as ‘harvest’ and ‘end_crop’. E.G.
if ('[crop]' = 'cotton') then
!! cotton defoliation
if ([crop].stageName = 'mature' and [crop].defol_das = 0) then
!! cotton harvest
if ([crop].stageName = ‘harvest_ripe’ or [crop].PlantStatus = ‘dead’) then
PlantStatus = ‘dead’ has been added as well as a ‘kill_crop’ event.
(Task 2023) ‘ep’ plant transpiration matches expected value reported as ‘ozcot_rwu’ (root water use).
(Task 2025) Max rooting depth of crop limited to value of ‘rtdep_max’.
(Task 2026) plant_status = ‘dead’ added.
(Task 2074) crop height now estimated from a function based on crop LAI (based on traditional cotton growing regions in Australia).
(Task 4088) surfaceOM_wt_cotton reports dry weight pool from cotton based on crop_type = ‘cotton’.
(Task 4095) Above ground biomass reported in Summary file corrected to exclude dry weight of roots.
The ownership of CO2 has moved to the Input (Met) module. If no CO2 is specified in the weather file then a value of 350ppm is assumed. If a value is supplied in the weather file then that will replace the default value. The CO2 value in input is settable from other modules e.g. manager script. If CO2 is set from another module then it’s value only lasts for the day that it is set. At the beginning of the next day the value is reset to the value in the file or the default value if none was supplied.
The result of this change is that CO2 is ALWAYS present in every simulation. The crop modules check to see if the CO2 value is different from 350ppm. If it is and the crop doesn’t have a CO2 parameterisation, an error is given to that effect. This is the same behavour as previously. All values of co2_default have been removed from all crop XML files.
Changes to “Run on Cluster” form
Cluster jobs have been rearranged. Instead of running “one simulation per CPU”, the system attempts to run several simulations in parallel, using all available CPUs on a single machine, significantly reducing the amount of network traffic for each job. This changes the interpretation of “number of simulations per job” – as the throughput is now related to the number of CPU cores as well as their speed. On the toowoomba cluster, Linux hosts have 8 or 16 CPUs per machine, the Windows hosts have 12, so simply multiplying the existing number by 12 or 16 should suffice to keep runtime the same. The general principle is that the longer a job runs, the higher its throughput – as less time is spent setting up and tearing down the job. However, longer running jobs have a higher chance of being interrupted if a higher priority user enters the queue.