diff --git a/DESCRIPTION b/DESCRIPTION index 1dcba7eb967a1ada417ecd46a684ec7ea218d644..8ca16abad8a6e8efaccf74e59ded0783bccd23be 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,8 +1,8 @@ Package: airGR Type: Package Title: Suite of GR Hydrological Models for Precipitation-Runoff Modelling -Version: 1.6.1.6 -Date: 2020-04-05 +Version: 1.6.1.7 +Date: 2020-04-07 Authors@R: c( person("Laurent", "Coron", role = c("aut", "trl"), comment = c(ORCID = "0000-0002-1503-6204")), person("Olivier", "Delaigue", role = c("aut", "cre"), comment = c(ORCID = "0000-0002-7668-8468"), email = "airGR@inrae.fr"), diff --git a/NEWS.md b/NEWS.md index 8840495c0dd8a5a6728f8ef287519b68a6e8851f..768a8f862ab469f432a2a7f80e29660ed39e14a3 100644 --- a/NEWS.md +++ b/NEWS.md @@ -2,7 +2,7 @@ -### 1.6.1.6 Release Notes (2020-04-05) +### 1.6.1.7 Release Notes (2020-04-07) #### New features diff --git a/R/RunModel.R b/R/RunModel.R index dc135b289364c8e0fb32e4ca18adc71f350b5e1f..0e88dd4ca4205d807463bc0dbe3933febbe6f479 100644 --- a/R/RunModel.R +++ b/R/RunModel.R @@ -2,7 +2,7 @@ RunModel <- function (InputsModel, RunOptions, Param, FUN_MOD) { FUN_MOD <- match.fun(FUN_MOD) if (inherits(InputsModel, "SD")) { OutputsModelDown <- FUN_MOD(InputsModel = InputsModel, RunOptions = RunOptions, - Param = Param[-length(Param)]) + Param = Param[-length(Param)]) OutputsModelDown$QsimDown <- OutputsModelDown$Qsim if (inherits(InputsModel, "daily")) { TimeStep <- 60 * 60 * 24 @@ -10,12 +10,18 @@ RunModel <- function (InputsModel, RunOptions, Param, FUN_MOD) { if (inherits(InputsModel, "hourly")) { TimeStep <- 60 * 60 } - AreaTot <- sum(InputsModel$BasinAreas) + AreaTot <- sum(InputsModel$BasinAreas) # total area + # propagation time from upstream meshes to outlet + PT <- InputsModel$LengthHydro[1, ] * 1000 / Param[length(Param)] / TimeStep + HUTRANS <- rbind(1 - (PT - floor(PT)), PT - floor(PT)) + OutputsModelDown$Qsim <- OutputsModelDown$QsimDown * InputsModel$BasinAreas[length(InputsModel$BasinAreas)] / AreaTot + - 1000 / Param[length(Param)] / TimeStep * - InputsModel$QobsUpstr %*% (InputsModel$LengthHydro[1, ] * InputsModel$BasinAreas[1:length(InputsModel$LengthHydro)]) + InputsModel$QobsUpstr[(1 + floor(PT)) : length(OutputsModelDown$QsimDown), ] %*% HUTRANS[1, ] * + InputsModel$BasinAreas[1:length(InputsModel$LengthHydro)] / AreaTot + + InputsModel$QobsUpstr[(2 + floor(PT)) : length(OutputsModelDown$QsimDown), ] %*% HUTRANS[2, ] * + InputsModel$BasinAreas[1:length(InputsModel$LengthHydro)] / AreaTot } else { OutputsModelDown <- FUN_MOD(InputsModel = InputsModel, RunOptions = RunOptions, Param = Param) } return(OutputsModelDown) -} +} \ No newline at end of file