Nothing
context("CreateInputsCrit_Lavenne")
data(L0123001)
InputsModel <- CreateInputsModel(FUN_MOD = RunModel_GR4J, DatesR = BasinObs$DatesR,
Precip = BasinObs$P, PotEvap = BasinObs$E)
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"))
RunOptions <- suppressWarnings(
CreateRunOptions(FUN_MOD = RunModel_GR4J,
InputsModel = InputsModel, IndPeriod_Run = Ind_Run)
)
Param <- c(X1 = 257.238, X2 = 1.012, X3 = 88.235, X4 = 2.208)
OutputsModel <- RunModel_GR4J(InputsModel = InputsModel,
RunOptions = RunOptions, Param = Param)
k <- 0.15
IC_DL <- CreateInputsCrit_Lavenne(FUN_CRIT = ErrorCrit_KGE,
InputsModel = InputsModel,
RunOptions = RunOptions,
Obs = BasinObs$Qmm[Ind_Run],
AprParamR = Param,
k = k)
test_that("should return a composed ErrorCrit", {
expect_s3_class(IC_DL, "Compo")
expect_length(IC_DL, 2)
AprParamT <- TransfoParam_GR4J(Param, "RT")
expect_equal(IC_DL$IC2$Obs, AprParamT)
})
test_that("should return KGE*(1-k)+k with parameters matching a priori parameters", {
IC_KGE <- CreateInputsCrit(ErrorCrit_KGE,
InputsModel = InputsModel,
RunOptions = RunOptions,
Obs = BasinObs$Qmm[Ind_Run],
transfo = "sqrt")
expect_equal(ErrorCrit_KGE(IC_KGE, OutputsModel)$CritValue * (1 - k) + k,
ErrorCrit(IC_DL, OutputsModel)$CritValue)
})
test_that("should return proper error if mismatch number of parameters", {
expect_error(
CreateInputsCrit_Lavenne(FUN_CRIT = ErrorCrit_KGE,
InputsModel = InputsModel,
RunOptions = RunOptions,
Obs = BasinObs$Qmm[Ind_Run],
AprParamR = Param[-1],
k = k),
regex = "'AprParamR' must be a numeric vector of length 4"
)
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.