From 88a4ebce742c54abaf3e2ac186dc3cfbba0a5e8d Mon Sep 17 00:00:00 2001
From: Daniel Vedder <daniel.vedder@idiv.de>
Date: Thu, 10 Aug 2023 12:03:31 +0200
Subject: [PATCH] Implemented ALMaSS crop growth function

This is a major commit, probably rather too large, but anyway. There
are no tests yet, so no guarantee for correctness. But it's good
progress :-)
---
 data/crop_data_general.csv                    |  14 +-
 ...mperatures_Ramirez-Villegas_etal_20213.png | Bin 0 -> 47474 bytes
 src/core/simulation.jl                        |   3 +
 src/crop/crops.jl                             |  13 +-
 src/crop/farmplot.jl                          | 130 ++++++++++++++----
 src/parameters.toml                           |   2 +-
 src/world/landscape.jl                        |   2 +-
 test/test_parameters.toml                     |   4 +-
 8 files changed, 123 insertions(+), 45 deletions(-)
 create mode 100644 docs/base_temperatures_Ramirez-Villegas_etal_20213.png

diff --git a/data/crop_data_general.csv b/data/crop_data_general.csv
index c8f2fdb..4fd8224 100644
--- a/data/crop_data_general.csv
+++ b/data/crop_data_general.csv
@@ -1,19 +1,19 @@
 name,minsowdate,maxsowdate,minharvestdate,maxharvestdate,mingrowthtemp
-"winter barley","15 September","30 September",NA,NA,NA
-"spring barley","1 March","10 April",NA,NA,NA
-"peas/beans",NA,NA,NA,NA,NA
+"winter barley","15 September","30 September",NA,NA,0
+"spring barley","1 March","10 April",NA,NA,0
+"peas/beans",NA,NA,NA,NA,5
 "spring rape",NA,NA,NA,NA,NA
 "winter rape",NA,NA,NA,NA,NA
 "winter rye",NA,NA,NA,NA,NA
-"winter wheat","15 October","31 October",NA,NA,NA
+"winter wheat","15 October","31 October",NA,NA,0
 "beet",NA,NA,NA,NA,NA
-"maize",NA,NA,NA,NA,NA
+"maize",NA,NA,NA,NA,8
 "permanent grassland (grazed)",NA,NA,NA,NA,NA
 "permanent grassland (seeded)",NA,NA,NA,NA,NA
 "fodder/clover",NA,NA,NA,NA,NA
 "natural grass",NA,NA,NA,NA,NA
-"potatoes",NA,NA,NA,NA,NA
-"undersown spring barley",NA,NA,NA,NA,NA
+"potatoes",NA,NA,NA,NA,4
+"undersown spring barley",NA,NA,NA,NA,0
 "carrots",NA,NA,NA,NA,NA
 "oats",NA,NA,NA,NA,NA
 "permanent set-aside",NA,NA,NA,NA,NA
diff --git a/docs/base_temperatures_Ramirez-Villegas_etal_20213.png b/docs/base_temperatures_Ramirez-Villegas_etal_20213.png
new file mode 100644
index 0000000000000000000000000000000000000000..fc8e2a9cd2dd33f2c7861aa55257363b7b3c03a0
GIT binary patch
literal 47474
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

literal 0
HcmV?d00001

diff --git a/src/core/simulation.jl b/src/core/simulation.jl
index ae42934..c21578e 100644
--- a/src/core/simulation.jl
+++ b/src/core/simulation.jl
@@ -69,12 +69,15 @@ function initmodel(settings::Dict{String, Any})
         weather = initweather(settings["world.weatherfile"],
                               settings["core.startdate"],
                               settings["core.enddate"])
+        crops = readcropparameters(settings["crop.cropfile"],
+                                   settings["crop.growthfile"])
         space = GridSpace(size(landscape), periodic=false)
         properties = Dict{Symbol,Any}(:settings=>settings,
                                       :logger=>logger,
                                       :date=>settings["core.startdate"],
                                       :landscape=>landscape,
                                       :weather=>weather,
+                                      :crops=>crops,
                                       :dataoutputs=>dataoutputs,
                                       :events=>events)
         model = AgentBasedModel(Union{Farmer,Animal,FarmPlot}, space, properties=properties,
diff --git a/src/crop/crops.jl b/src/crop/crops.jl
index 7f51beb..f716c9e 100644
--- a/src/crop/crops.jl
+++ b/src/crop/crops.jl
@@ -4,7 +4,6 @@
 ###
 
 #TODO write tests for input functions
-#TODO write actual growth function
 
 """
     GrowthPhase
@@ -96,14 +95,14 @@ end
 Parse a CSV file containing the required parameter values for each crop
 (as produced from the original ALMaSS file by `convert_almass_data.py`).
 """
-function readcropparameters(generalcropfile::String, cropgrowthfile::String)
+function readcropparameters(generalcropfile::String, growthfile::String)
     @debug "Reading crop parameters"
     cropdata = CSV.File(generalcropfile, missingstring="NA", dateformat="d U",
                         types=[String,Date,Date,Date,Date,Float64])
-    growthdata = CSV.File(cropgrowthfile, missingstring="NA",
+    growthdata = CSV.File(growthfile, missingstring="NA",
                           types=[Int,String,String,GrowthPhase,String,
                                  Float64,Float64,Float64,Float64])
-    croptypes = Vector{CropType}()
+    croptypes = Dict{String,CropType}()
     for crop in cropdata
         cropgrowthdata = growthdata |> filter(x -> !ismissing(x.crop_name) &&
                                               x.crop_name == crop.name)
@@ -111,9 +110,9 @@ function readcropparameters(generalcropfile::String, cropgrowthfile::String)
                                     filter(x -> x.nutrient_status=="high"))
         lownuts = buildgrowthcurve(cropgrowthdata |>
                                    filter(x -> x.nutrient_status=="low"))
-        append!(croptypes, [CropType(crop.name, crop.minsowdate, crop.maxsowdate,
-                                     crop.minharvestdate, crop.maxharvestdate,
-                                     crop.mingrowthtemp, highnuts, lownuts)])
+        croptypes[crop.name] = CropType(crop.name, crop.minsowdate, crop.maxsowdate,
+                                        crop.minharvestdate, crop.maxharvestdate,
+                                        crop.mingrowthtemp, highnuts, lownuts)
     end
     croptypes
 end
diff --git a/src/crop/farmplot.jl b/src/crop/farmplot.jl
index a77d0f8..8b7b24b 100644
--- a/src/crop/farmplot.jl
+++ b/src/crop/farmplot.jl
@@ -14,25 +14,13 @@ This is the spatial unit with which the crop growth model and the farm model wor
 @agent FarmPlot GridAgent{2} begin
     pixels::Vector{Tuple{Int64, Int64}}
     croptype::CropType
+    phase::GrowthPhase
     growingdegreedays::Float64
     height::Float64
-    biomass::Float64
+    LAItotal::Float64
+    LAIgreen::Float64
+    #biomass::Float64 #XXX I need to figure out how to calculate this
     events::Vector{EventType}
-    #TODO
-end
-
-"""
-    stepagent!(farmplot, model)
-
-Update a farm plot by one day.
-"""
-function stepagent!(farmplot::FarmPlot, model::AgentBasedModel)
-    # update growing degree days
-    gdd = meantemp(model) - farmplot.croptype.mingrowthtemp
-    gdd > 0 && (farmplot.growingdegreedays += gdd)
-    # update crop growth
-    growcrop!(farmplot, model)
-    #TODO expand?
 end
 
 """
@@ -56,7 +44,11 @@ function initfields!(model::AgentBasedModel)
                 model.landscape[x,y].fieldid = objectid
                 push!(model[objectid].pixels, (x,y))
             else
-                fp = add_agent!((x,y), FarmPlot, model, [(x,y)], fallow, 0.0, 0.0)
+                #XXX does this phase calculation work out?
+                month(model.date) < 3 ? phase = janfirst : phase = marchfirst
+                fp = add_agent!((x,y), FarmPlot, model, [(x,y)],
+                                model.crops["natural grass"], phase, false,
+                                0.0, 0.0, 0.0, 0.0, Vector{EventType}())
                 model.landscape[x,y].fieldid = fp.id
                 convertid[rawid] = fp.id
                 n += 1
@@ -66,6 +58,99 @@ function initfields!(model::AgentBasedModel)
     @info "Initialised $n farm plots."
 end
 
+"""
+    stepagent!(farmplot, model)
+
+Update a farm plot by one day.
+"""
+function stepagent!(farmplot::FarmPlot, model::AgentBasedModel)
+    # update growing degree days
+    # if no crop-specific base temperature is given, default to 5°C
+    # (https://www.eea.europa.eu/publications/europes-changing-climate-hazards-1/heat-and-cold/heat-and-cold-2014-mean)
+    basetemp = farmplot.croptype.mingrowthtemp
+    ismissing(basetemp) && (basetemp = 5.0)        
+    gdd = (maxtemp(model)+mintemp(model))/2 - basetemp
+    gdd > 0 && (farmplot.growingdegreedays += gdd)
+    # update the phase on key dates
+    monthday(model.date) == (1,1) && (farmplot.phase = janfirst)
+    monthday(model.date) == (3,1) && (farmplot.phase = marchfirst)
+    # update crop growth
+    growcrop!(farmplot, model)
+end
+
+
+## CROP MANAGEMENT AND GROWTH FUNCTIONS
+
+"""
+    sow!(cropname, farmplot, model)
+
+Sow the specified crop on this farmplot.
+"""
+function sow!(cropname::String, farmplot::FarmPlot, model::AgentBasedModel)
+    createevent!(model, farmplot.pixels, sowing)
+    farmplot.croptype = model.crops[cropname]
+    farmplot.phase = sow
+    #XXX test if the crop is sowable?
+end
+
+"""
+    harvest!(farmplot, model)
+
+Harvest the crop on this farmplot.
+"""
+function harvest!(farmplot::FarmPlot, model::AgentBasedModel)
+    createevent!(model, farmplot.pixels, harvesting)
+    farmplot.phase in [harvest1, harvest2] ?
+        farmplot.phase = harvest2 :
+        farmplot.phase = harvest1
+    # height & LAI will be automatically adjusted by the growth function
+    #TODO calculate and return yield
+end
+
+#TODO fertilise!()
+#TODO spray!()
+#TODO till!()
+
+"""
+    growcrop!(farmplot, model)
+
+Apply the relevant crop growth model to update the plants on this farm plot.
+Currently only supports the ALMaSS crop growth model by Topping et al.
+"""
+function growcrop!(farmplot::FarmPlot, model::AgentBasedModel)
+    fertiliser in farmplot.events ?
+        curve = farmplot.croptype.lownutrientgrowth :
+        curve = farmplot.croptype.highnutrientgrowth
+    points = curve.GDD[farmplot.phase]
+    for p in 1:length(points)
+        if points[p] == 99999
+            return # the marker that there is no further growth this phase
+        elseif points[p] == -1 # the marker to set all variables to specified values
+            farmplot.height = curve.height[farmplot.phase][p]
+            farmplot.LAItotal = curve.LAItotal[farmplot.phase][p]
+            farmplot.LAIgreen = curve.LAIgreen[farmplot.phase][p]
+            return
+        else
+            gdd = farmplot.growingdegreedays
+            # figure out which is the correct slope value to use for growth
+            if p == length(points) || gdd < points[p+1]
+                farmplot.height += curve.height[farmplot.phase][p]
+                farmplot.LAItotal += curve.LAItotal[farmplot.phase][p]
+                farmplot.LAIgreen += curve.LAIgreen[farmplot.phase][p]
+                return
+            end
+            #XXX To be precise, we ought to figure out if one or more inflection
+            # points have been passed between yesterday and today, and calculate the
+            # growth exactly up to the inflection point with the old slope, and onward
+            # with the new slope. Not doing so will introduce a small amount of error,
+            # although I think this is acceptable.
+        end
+    end
+end
+                 
+
+## UTILITY FUNCTIONS
+
 """
     averagefieldsize(model)
 
@@ -101,14 +186,3 @@ function cropheight(pos::Tuple{Int64,Int64}, model::AgentBasedModel)
     ismissing(model.landscape[pos...].fieldid) ? nothing :
               model[model.landscape[pos...].fieldid].height
 end
-
-
-"""
-    growcrop!(farmplot, model)
-
-Apply the relevant crop growth model to update the plant height on this farm plot.
-"""
-function growcrop!(farmplot::FarmPlot, model::AgentBasedModel)
-    crop = farmplot.croptype
-    #TODO
-end
diff --git a/src/parameters.toml b/src/parameters.toml
index 6b26cac..46d1902 100644
--- a/src/parameters.toml
+++ b/src/parameters.toml
@@ -35,5 +35,5 @@ insectmodel = ["season", "habitat", "pesticides", "weather"] # factors affecting
 [crop]
 cropmodel = "almass" # crop growth model to use, "almass" or "aquacrop"
 cropfile = "data/crop_data_general.csv" # file with general crop parameters
-cropgrowthfile = "data/almass_crop_growth_curves.csv" # file with crop growth parameters	
+growthfile = "data/almass_crop_growth_curves.csv" # file with crop growth parameters	
 
diff --git a/src/world/landscape.jl b/src/world/landscape.jl
index d6b16f6..d8127d4 100644
--- a/src/world/landscape.jl
+++ b/src/world/landscape.jl
@@ -8,7 +8,7 @@
 ## Do not change the order of this enum, or initlandscape() will break!
 
 "The types of landscape event that can be simulated"
-@enum EventType tillage sowing fertiliser pesticide harvest
+@enum EventType tillage sowing fertiliser pesticide harvesting
 
 """
     Pixel
diff --git a/test/test_parameters.toml b/test/test_parameters.toml
index 9e68c6f..eac86aa 100644
--- a/test/test_parameters.toml
+++ b/test/test_parameters.toml
@@ -31,5 +31,7 @@ indoutfreq = "end" # output frequency individual-level data, daily/monthly/yearl
 insectmodel = ["season", "habitat", "pesticides"] # which factors affect insect growth ("weather" is not yet implemented)
 	
 [crop]
-cropmodel = "linear" # crop growth model to use, "linear" or "aquacrop" (not yet implemented)
+cropmodel = "almass" # crop growth model to use, "almass" or "aquacrop"
+cropfile = "data/crop_data_general.csv" # file with general crop parameters
+growthfile = "data/almass_crop_growth_curves.csv" # file with crop growth parameters
 
-- 
GitLab