Simulation routine to realistically predict grass cutting events. This follows an implementation described in Petersen et al. (2021).
Details
The decision to cut is made based on two criteria.
First, it is checked whether a target biomass is reached on given
DOY. The defined target depends on the DOY and is given through
:func:get_target_biomass
. If said biomass is present, return TRUE
.
Otherwise, it is checked whether a given amount of time has passed
since the last cut. Depending on whether this is the first cut of
the season or not, the relevant parameters are
:int:last_DOY_for_initial_cut
and :int:max_cut_period
.
If that amount of time has passed, return TRUE
, otherwise return
FALSE
.
The target biomass for a given day is determined following the principles described in Petersen et al.
The exact regression for the target biomass is based on Fig. S2 in the supplementary material of Petersen et al.
A refinement to expected yield as function of altitude has been implemented according to Table 1a in Huguenin et al. (2017).
References
Huguenin-Elie I, Mosimann E, Schlegel P, Lüscher A, Kessler W, Jeangros B (2017). “Grundlagen für die Düngung landwirtschaftlicher Kulturen in der Schweiz (GRUD), Kapitel 9: Düngung von Grasland.” Agrarforschung Schweiz. https://www.agrarforschungschweiz.ch/2017/06/9-duengung-von-grasland-grud-2017/. Petersen K, Kraus D, Calanca P, Semenov MA, Butterbach-Bahl K, Kiese R (2021). “Dynamic Simulation of Management Events for Assessing Impacts of Climate Change on Pre-Alpine Grassland Productivity.” European Journal of Agronomy, 128, 126306. ISSN 1161-0301, doi:10.1016/j.eja.2021.126306 , https://www.sciencedirect.com/science/article/pii/S1161030121000782.
Huguenin-Elie I, Mosimann E, Schlegel P, Lüscher A, Kessler W, Jeangros B (2017). “Grundlagen für die Düngung landwirtschaftlicher Kulturen in der Schweiz (GRUD), Kapitel 9: Düngung von Grasland.” Agrarforschung Schweiz. https://www.agrarforschungschweiz.ch/2017/06/9-duengung-von-grasland-grud-2017/.
Petersen K, Kraus D, Calanca P, Semenov MA, Butterbach-Bahl K, Kiese R (2021). “Dynamic Simulation of Management Events for Assessing Impacts of Climate Change on Pre-Alpine Grassland Productivity.” European Journal of Agronomy, 128, 126306. ISSN 1161-0301, doi:10.1016/j.eja.2021.126306 , https://www.sciencedirect.com/science/article/pii/S1161030121000782.
Super class
growR::Autocut
-> PetersenAutocut
Public fields
last_DOY_for_initial_cut
Start cutting after this DOY, even if yield target is not reached.
max_cut_period
Maximum period to wait between subsequent cuts.
dry_precipitation_limit
Maximum amount of allowed precipitation (mm) to consider a day.
dry_days_before_cut
Number of days that shold be dry before a cut is made.
dry_days_after_cut
Number of days that shold be dry after a cut is made.
max_cut_delay
Number of days a farmer is willing to wait for dry conditions before a cut is made anyways.
cut_delays
Vector to keep track of cut delay times.
dry_window
Logical that indicates if DOY at index is considered dry enough to cut.
target_biomass
Biomass amount that should to be reached by given DOY for a cut to be made.
end_of_cutting_season
Determined DOY after which no more cuts are made.
Methods
Inherited methods
Method new()
Constructor
Usage
PetersenAutocut$new(MVS)
Arguments
MVS
The ModvegeSite object for which cuts shall be determined.
Method get_annual_gross_yield()
Lookup table returning expected annual gross yields as function of elevation and management intensity.
Based on data from Table 1a in Lookup Table of expected yield as functions of height and management intensity after Olivier Huguenin et al. (2017).
Method get_target_biomass()
Get target value of biomass on given DOY, which determines whether a cut is to occur.
The regression for the target biomass is based on Fig. S2 in the supplementary material of Petersen, Krischan, David Kraus, Pierluigi Calanca, Mikhail A. Semenov, Klaus Butterbach-Bahl, and Ralf Kiese. “Dynamic Simulation of Management Events for Assessing Impacts of Climate Change on Pre-Alpine Grassland Productivity.” European Journal of Agronomy 128 (August 1, 2021): 126306. https://doi.org/10.1016/j.eja.2021.126306.
A refinement to expected yield as function of altitude has been implemented according to Table 1a in Huguenen-Elie et al. "Düngung von Grasland", Agrarforschung Schweiz, 8, (6), 2017, https://www.agrarforschungschweiz.ch/2017/06/9-duengung-von-grasland-grud-2017/
Method get_relative_cut_contribution()
Relative cut contribution
Get the fraction of the total annual harvested biomass that a cut at given DOY is expected to contribute.
The regression for the target biomass is based on Fig. S2 in the supplementary material of Petersen et al. (2021).
Method get_end_of_cutting_season()
Last day of cutting season
Estimate the last day on which it still makes sense to cut. This is done
by checking at which point the expected target biomass (see
self$get_relative_cut_contribution()
) goes below the minimally harvestable
standing biomass.
Method determine_cut()
Decide based on simple criteria whether day of year DOY would be a good day to cut.
This follows an implementation described in Petersen, Krischan, David Kraus, Pierluigi Calanca, Mikhail A. Semenov, Klaus Butterbach-Bahl, and Ralf Kiese. “Dynamic Simulation of Management Events for Assessing Impacts of Climate Change on Pre-Alpine Grassland Productivity.” European Journal of Agronomy 128 (August 1, 2021): 126306. https://doi.org/10.1016/j.eja.2021.126306.
The decision to cut is made based on two criteria.
First, it is checked whether a target biomass is reached on given
DOY. The defined target depends on the DOY and is given through
:func:get_target_biomass
. If said biomass is present, return TRUE
.
Otherwise, it is checked whether a given amount of time has passed
since the last cut. Depending on whether this is the first cut of
the season or not, the relevant parameters are
:int:last_DOY_for_initial_cut
and :int:max_cut_period
.
If that amount of time has passed, return TRUE
, otherwise return
FALSE
.