From f8e091fa917a81a52f73670c0134282327e638d7 Mon Sep 17 00:00:00 2001 From: unknown <olivier.delaigue@ANPI1430.antony.irstea.priv> Date: Thu, 16 Feb 2017 16:08:23 +0100 Subject: [PATCH] v1.0.5.19 function TransfoParam_CemaNeige() cleaned --- DESCRIPTION | 2 +- R/TransfoParam_CemaNeige.R | 48 +++++++++++++++++++++++--------------- 2 files changed, 30 insertions(+), 20 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index d3398c1d..24d869a6 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.0.5.18 +Version: 1.0.5.19 Date: 2017-01-23 Authors@R: c( person("Laurent", "Coron", role = c("aut", "trl")), diff --git a/R/TransfoParam_CemaNeige.R b/R/TransfoParam_CemaNeige.R index 41dd3703..d49d600d 100644 --- a/R/TransfoParam_CemaNeige.R +++ b/R/TransfoParam_CemaNeige.R @@ -1,23 +1,33 @@ -TransfoParam_CemaNeige <- function(ParamIn,Direction){ - +TransfoParam_CemaNeige <- function(ParamIn, Direction) { + NParam <- 2 Bool <- is.matrix(ParamIn) - if(Bool==FALSE){ ParamIn <- rbind(ParamIn) } - if(ncol(ParamIn)!=NParam){ stop(paste("the CemaNeige module requires ",NParam," parameters \n",sep="")); return(NULL) } - - if(Direction=="TR"){ - ParamOut <- ParamIn; - ParamOut[,1] <- (ParamIn[,1]+9.99)/19.98 ### CemaNeige X1 (weighting coefficient for snow pack thermal state) - ParamOut[,2] <- exp(ParamIn[, 2]) / 200 ### CemaNeige X2 (degree-day melt coefficient) - } - if(Direction=="RT"){ - ParamOut <- ParamIn; - ParamOut[,1] <- ParamIn[,1]*19.98-9.99 ### CemaNeige X1 (weighting coefficient for snow pack thermal state) - ParamOut[,2] <- log(ParamIn[,2] * 200) ### CemaNeige X2 (degree-day melt coefficient) - } - - if(Bool==FALSE){ ParamOut <- ParamOut[1,] } + + if (Bool == FALSE) { + ParamIn <- rbind(ParamIn) + } + + if (ncol(ParamIn) != NParam) { + stop(paste( "the CemaNeige module requires ", NParam, " parameters \n", sep = "" )) + return(NULL) + } + + if (Direction == "TR") { + ParamOut <- ParamIn + ParamOut[, 1] <- (ParamIn[, 1] + 9.99) / 19.98 ### CemaNeige X1 (weighting coefficient for snow pack thermal state) + ParamOut[, 2] <- exp(ParamIn[, 2]) / 200 ### CemaNeige X2 (degree-day melt coefficient) + } + + if (Direction == "RT") { + ParamOut <- ParamIn + ParamOut[, 1] <- ParamIn[, 1] * 19.98 - 9.99 ### CemaNeige X1 (weighting coefficient for snow pack thermal state) + ParamOut[, 2] <- log(ParamIn[, 2] * 200) ### CemaNeige X2 (degree-day melt coefficient) + } + + if (Bool == FALSE) { + ParamOut <- ParamOut[1, ] + } + return(ParamOut) - + } - -- GitLab