The APSIM Canopy Module (CANOPY)
Operation
When a simulation is conducted in APSIM involving light and water competition between crops, the user must plug in the CANOPY module.
The CANOPY module arbitrates the competition for intercepted radiation. On a daily basis, the module finds the number of crops in the simulation and their canopy heights. Canopy layers are then defined, with the layer boundaries being defined by the top of each canopy. Thus there are as many layers as canopies.
Then each layer in turn is taken from the top, in the combined canopy, to get the combined extinct_coeff*lai value (green + dead) of the canopies present in that layer. The fraction of light transmitted out of the bottom of that layer can be calculated, which is in turn the fraction entering the next layer below.
The total radiation intercepted in a layer is divided amongst the canopies occupying the layer, being done on the basis of extinct_coeff * LAI of each canopy. This approach ignores the possibility of different LAI distributions within a layer. LAI is distributed with height in the canopy using normalized height and integration of a function to the power of 5. This results in 47% of the leaf area in the top 10% of height, 27% in the next 10%, 15% in the next 10%, and so on.
Arbitration for water and nitrogen uptake is done on the basis of APSIM changing the order each day (on a rotational basis) in which the competing species are given the opportunity to capture soil resources.
Parameter file settings
The APSIM Canopy Module requires parameters to specify the crops that are to be intercropped
[sample.canopy.parameters]
intercrop = maize cowpea
A maximum of ten crops can be specified for intercropping.
Control file settings
An example control file for the above parameter settings may look like this;
[apsim.sample_canopy]
Module = clock canopy.par [sample]
Module = report canopy.par [sample]
Module = met DALBY.MET [weather]
Module = maize canopy.par [sample] maize.ini[standard]
Module = cowpea canopy.par [sample] cowpea.ini[standard]
Module = manager canopy.par [sample]
Module = canopy canopy.par [sample]
For a working sample of the Canopy module look to the sample provided in the sample directory under Canopy.
References
Charles-Edwards, D. …