diff --git a/DESCRIPTION b/DESCRIPTION index 667cc345a1222ac4e8149196af362ec04c00666d..8fd23efa9fa44ccf71beb370fad448a6977e0800 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,7 +1,7 @@ Package: airGR Type: Package Title: Suite of GR Hydrological Models for Precipitation-Runoff Modelling -Version: 1.1.2.6 +Version: 1.1.2.7 Date: 2018-10-22 Authors@R: c( person("Laurent", "Coron", role = c("aut", "trl"), comment = c(ORCID = "0000-0002-1503-6204")), diff --git a/man/ErrorCrit_NSE.Rd b/man/ErrorCrit_NSE.Rd index 25cba8f47829c123234bfb5de69dae66109d4f24..5a5cdcee287566b4935f77fb4719086e392f0a28 100644 --- a/man/ErrorCrit_NSE.Rd +++ b/man/ErrorCrit_NSE.Rd @@ -49,7 +49,47 @@ the use of the function for model calibration: the product CritValue * Multiplie \examples{ -## see example of the ErrorCrit function +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) + +## run period selection +Ind_Run <- seq(which(format(BasinObs$DatesR, format = "\%d/\%m/\%Y")=="01/01/1990"), + which(format(BasinObs$DatesR, format = "\%d/\%m/\%Y")=="31/12/1999")) + +## preparation of the RunOptions object +RunOptions <- CreateRunOptions(FUN_MOD = RunModel_GR4J, + InputsModel = InputsModel, IndPeriod_Run = Ind_Run) + +## simulation +Param <- c(734.568, -0.840, 109.809, 1.971) +OutputsModel <- RunModel(InputsModel = InputsModel, RunOptions = RunOptions, + Param = Param, FUN = RunModel_GR4J) + +## efficiency criterion: Nash-Sutcliffe Efficiency +InputsCrit <- CreateInputsCrit(FUN_CRIT = ErrorCrit_NSE, InputsModel = InputsModel, + RunOptions = RunOptions, obs = BasinObs$Qmm[Ind_Run]) +OutputsCrit <- ErrorCrit_NSE(InputsCrit = InputsCrit, OutputsModel = OutputsModel) + +## efficiency criterion: Nash-Sutcliffe Efficiency on log-transformed flows +transfo <- "log" +InputsCrit <- CreateInputsCrit(FUN_CRIT = ErrorCrit_NSE, InputsModel = InputsModel, + RunOptions = RunOptions, obs = BasinObs$Qmm[Ind_Run], + transfo = transfo) +OutputsCrit <- ErrorCrit_NSE(InputsCrit = InputsCrit, OutputsModel = OutputsModel) + +## efficiency criterion: Nash-Sutcliffe Efficiency above a threshold (q75\%) +BoolCrit <- rep(TRUE, length(BasinObs$Qmm[Ind_Run])); +BoolCrit[BasinObs$Qmm[Ind_Run]<quantile(BasinObs$Qmm[Ind_Run], 0.75, na.rm = TRUE)] <- FALSE +InputsCrit <- CreateInputsCrit(FUN_CRIT = ErrorCrit_NSE, InputsModel = InputsModel, + RunOptions = RunOptions, obs = BasinObs$Qmm[Ind_Run], + BoolCrit = BoolCrit) +OutputsCrit <- ErrorCrit_NSE(InputsCrit = InputsCrit, OutputsModel = OutputsModel) }