View source: R/CreateInputsCrit_Lavenne.R
CreateInputsCrit_Lavenne | R Documentation |
Creation of the InputsCrit
object required to the ErrorCrit
function. This function defines a composite criterion based on the formula proposed by Lavenne et al. (2019).
CreateInputsCrit_Lavenne(FUN_CRIT = ErrorCrit_KGE, InputsModel, RunOptions, Obs, VarObs = "Q", AprParamR, AprCrit = 1, k = 0.15, BoolCrit = NULL, transfo = "sqrt", epsilon = NULL)
FUN_CRIT |
[function] error criterion function (e.g. |
InputsModel |
[object of class InputsModel] see |
RunOptions |
[object of class RunOptions] see |
Obs |
[numeric (atomic or list)] series of observed variable ([mm/time step] for discharge or SWE, [-] for SCA) |
VarObs |
(optional) [character (atomic or list)] names of the observed variable ( |
AprParamR |
[numeric] a priori parameter set from a donor catchment |
AprCrit |
(optional) [numeric] performance criterion of the donor catchment (1 by default) |
k |
(optional) [numeric] coefficient used for the weighted average between |
BoolCrit |
(optional) [boolean] boolean (the same length as |
transfo |
(optional) [character] name of the transformation applied to the variables (e.g. |
epsilon |
(optional) [numeric] small value to add to all observations and simulations for |
The parameters FUN_CRIT
, Obs
, VarObs
, BoolCrit
, transfo
, and epsilon
must be used as they would be used for CreateInputsCrit
in the case of a single criterion.
ErrorCrit_RMSE
cannot be used in a composite criterion since it is not a unitless value.
CreateInputsCrit_Lavenne
creates a composite criterion in respect with Equations 1 and 2 of de Lavenne et al. (2019).
[list] object of class InputsCrit containing the data required to evaluate the model outputs (see CreateInputsCrit
for more details).
CreateInputsCrit_Lavenne
returns an object of class Compo.
Items Weights
of the criteria are respectively equal to k
and k * max(0, AprCrit)
.
To calculate the Lavenne criterion, it is necessary to use the ErrorCrit
function as for any other composite criterion.
David Dorchies
de Lavenne, A., Andréassian, V., Thirel, G., Ramos, M.-H. and Perrin, C. (2019). A Regularization Approach to Improve the Sequential Calibration of a Semidistributed Hydrological Model. Water Resources Research 55, 8821–8839. doi: 10.1029/2018WR024266
RunModel
, CreateInputsModel
, CreateRunOptions
, CreateCalibOptions
, ErrorCrit
library(airGR) ## loading catchment data data(L0123001) ## preparation of the InputsModel object InputsModel <- CreateInputsModel(FUN_MOD = RunModel_GR4J, DatesR = BasinObs$DatesR, Precip = BasinObs$P, PotEvap = BasinObs$E) ## calibration period selection Ind_Run <- seq(which(format(BasinObs$DatesR, format = "%Y-%m-%d")=="1990-01-01"), which(format(BasinObs$DatesR, format = "%Y-%m-%d")=="1999-12-31")) ## preparation of RunOptions object RunOptions <- CreateRunOptions(FUN_MOD = RunModel_GR4J, InputsModel = InputsModel, IndPeriod_Run = Ind_Run) ## simulation Param <- c(X1 = 257.238, X2 = 1.012, X3 = 88.235, X4 = 2.208) OutputsModel <- RunModel_GR4J(InputsModel = InputsModel, RunOptions = RunOptions, Param = Param) ## The "a priori" parameters for the Lavenne formula AprParamR <- c(X1 = 157, X2 = 0.8, X3 = 100, X4 = 1.5) ## Single efficiency criterion: GAPX with a priori parameters IC_DL <- CreateInputsCrit_Lavenne(InputsModel = InputsModel, RunOptions = RunOptions, Obs = BasinObs$Qmm[Ind_Run], AprParamR = AprParamR) str(ErrorCrit(InputsCrit = IC_DL, OutputsModel = OutputsModel))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.