Crop submodel
Eventually, Persephone will include a full-blown crop-growth model (an adaptation of AquaCrop, created by the FAO). At the moment, we are only working with a very basic mock-up.
crops.jl
This includes the types and functions needed for all crop growth model, which are also referenced by the other submodels.
Persephone.CropType — TypeThe crop types simulated by the model
Persephone.FarmPlot — TypeFarmPlotThis represents one field, i.e. a collection of pixels with the same management. This is the spatial unit with which the crop growth model and the farm model work.
Persephone.averagefieldsize — Methodaveragefieldsize(model)Calculate the average field size in hectares for the model landscape.
Persephone.cropheight — Methodcropheight(model, position)Return the height of the crop at this position, or nothing if there is no crop here (utility wrapper).
Persephone.croptype — Methodcroptype(model, position)Return the crop at this position, or nothing if there is no crop here (utility wrapper).
Persephone.initfields! — Methodinitfields!(model)Initialise the model with its farm plots.
Persephone.stepagent! — Methodstepagent!(farmplot, model)Update a farm plot by one day.