RunModel_CemaNeigeGR5H {airGR}  R Documentation 
Run with the CemaNeigeGR5H hydrological model
Description
Function which performs a single run for the CemaNeigeGR5H hourly lumped model over the test period.
Usage
RunModel_CemaNeigeGR5H(InputsModel, RunOptions, Param)
Arguments
InputsModel 
[object of class InputsModel] see  
RunOptions 
[object of class RunOptions] see  
Param 
[numeric] vector of 7 (or 9 parameters if

Details
The choice of the CemaNeige version is explained in CreateRunOptions
.
For further details on the model, see the references section.
For further details on the argument structures and initialisation options, see CreateRunOptions
.
See RunModel_GR5H
to look at the diagram of the hydrological model or RunModel_GR5J
when no interception store is used.
Value
[list] containing the function outputs organised as follows:
$DatesR  [POSIXlt] series of dates 
$PotEvap  [numeric] series of input potential evapotranspiration (E) [mm/h] 
$Precip  [numeric] series of input total precipitation (P) [mm/h] 
$Interc  [numeric] series of interception store level (I) [mm] 
$Prod  [numeric] series of production store level (S) [mm] 
$Pn  [numeric] series of net rainfall (Pn) [mm/h] 
$Ps  [numeric] series of the part of Pn filling the production store (Ps) [mm/h] 
$AE  [numeric] series of actual evapotranspiration (Ei+Es) [mm/h] 
$EI  [numeric] series of evapotranspiration from rainfall neutralisation or interception store (Ei) [mm/h] 
$ES  [numeric] series of evapotranspiration from production store (Es) [mm/h] 
$Perc  [numeric] series of percolation (Perc) [mm/h] 
$PR  [numeric] series of Pr=PnPs+Perc (Pr) [mm/h] 
$Q9  [numeric] series of UH outflow going into branch 9 (Q9) [mm/h] 
$Q1  [numeric] series of UH outflow going into branch 1 (Q1) [mm/h] 
$Rout  [numeric] series of routing store level (R1) [mm] 
$Exch  [numeric] series of potential semiexchange between catchments [mm/h] 
$AExch1  [numeric] series of actual exchange between catchments for branch 1 [mm/h] 
$AExch2  [numeric] series of actual exchange between catchments for branch 2 [mm/h] 
$AExch  [numeric] series of actual exchange between catchments (AExch1+AExch2) [mm/h] 
$QR  [numeric] series of routing store outflow (Qr) [mm/h] 
$QD  [numeric] series of direct flow from UH after exchange (Qd) [mm/h] 
$Qsim  [numeric] series of simulated discharge (Q) [mm/h] 
$CemaNeigeLayers  [list] CemaNeige outputs (1 element per layer) 
$CemaNeigeLayers[[iLayer]]$Pliq  [numeric] series of liquid precip. [mm/h] 
$CemaNeigeLayers[[iLayer]]$Psol  [numeric] series of solid precip. [mm/h] 
$CemaNeigeLayers[[iLayer]]$SnowPack  [numeric] series of snow pack (snow water equivalent) [mm] 
$CemaNeigeLayers[[iLayer]]$ThermalState  [numeric] series of snow pack thermal state [°C] 
$CemaNeigeLayers[[iLayer]]$Gratio  [numeric] series of Gratio [01] 
$CemaNeigeLayers[[iLayer]]$PotMelt  [numeric] series of potential snow melt [mm/h] 
$CemaNeigeLayers[[iLayer]]$Melt  [numeric] series of actual snow melt [mm/h] 
$CemaNeigeLayers[[iLayer]]$PliqAndMelt  [numeric] series of liquid precip. + actual snow melt [mm/h] 
$CemaNeigeLayers[[iLayer]]$Temp  [numeric] series of air temperature [°C] 
$CemaNeigeLayers[[iLayer]]$Gthreshold  [numeric] series of melt threshold [mm] 
$CemaNeigeLayers[[iLayer]]$Glocalmax  [numeric] series of local melt threshold for hysteresis [mm] 
RunOptions$WarmUpQsim  [numeric] series of simulated discharge (Q) on the warmup period [mm/h] 
RunOptions$Param  [numeric] parameter set parameter set used by the model 
$StateEnd  [numeric] states at the end of the run: store & unit hydrographs levels [mm], CemaNeige states [mm & °C]. See CreateIniStates for more details 
Refer to the provided references or to the package source code for further details on these model outputs.
Author(s)
Laurent Coron, Guillaume Thirel, Olivier Delaigue, Audrey Valéry, Vazken Andréassian
References
Ficchi, A. (2017).
An adaptive hydrological model for multiple timesteps:
Diagnostics and improvements based on fluxes consistency.
PhD thesis, UPMC  Irstea Antony, Paris, France.
Ficchi, A., Perrin, C. and Andréassian, V. (2019).
Hydrological modelling at multiple subdaily time steps: model improvement via fluxmatching.
Journal of Hydrology, 575, 13081327, doi:10.1016/j.jhydrol.2019.05.084.
Perrin, C., Michel, C. and Andréassian, V. (2003).
Improvement of a parsimonious model for streamflow simulation.
Journal of Hydrology, 279(14), 275289, doi:10.1016/S00221694(03)002257.
Riboust, P., Thirel, G., Le Moine, N. and Ribstein, P. (2019).
Revisiting a simple degreeday model for integrating satellite data: Implementation of SWESCA hystereses.
Journal of Hydrology and Hydromechanics, 67(1), 70–81, doi:10.2478/johh20180004.
Valéry, A., Andréassian, V. and Perrin, C. (2014).
"As simple as possible but not simpler": What is useful in a temperaturebased snowaccounting routine?
Part 1  Comparison of six snow accounting routines on 380 catchments.
Journal of Hydrology, 517(0), 11661175, doi:10.1016/j.jhydrol.2014.04.059.
Valéry, A., Andréassian, V. and Perrin, C. (2014).
"As simple as possible but not simpler": What is useful in a temperaturebased snowaccounting routine?
Part 2  Sensitivity analysis of the Cemaneige snow accounting routine on 380 catchments.
Journal of Hydrology, 517(0), 11761187, doi:10.1016/j.jhydrol.2014.04.058.
See Also
RunModel_CemaNeige
, RunModel_CemaNeigeGR4H
, RunModel_GR5H
, Imax
,
CreateInputsModel
, CreateRunOptions
, CreateIniStates
.
Examples
## Not run:
library(airGR)
## loading catchment data
data(U2345030)
## preparation of the InputsModel object
InputsModel < CreateInputsModel(FUN_MOD = RunModel_CemaNeigeGR5H, DatesR = BasinObs$DatesR,
Precip = BasinObs$P, PotEvap = BasinObs$E, TempMean = BasinObs$T,
ZInputs = BasinInfo$ZInputs,
HypsoData = BasinInfo$HypsoData, NLayers = 5)
## run period selection
Ind_Run < seq(which(format(BasinObs$DatesR, format = "%Y%m%d %H")=="20040301 00"),
which(format(BasinObs$DatesR, format = "%Y%m%d %H")=="20081231 23"))
##  original version of CemaNeige
## Imax computation
Imax < Imax(InputsModel = InputsModel, IndPeriod_Run = Ind_Run,
TestedValues = seq(from = 0, to = 3, by = 0.2))
## preparation of the RunOptions object
RunOptions < CreateRunOptions(FUN_MOD = RunModel_CemaNeigeGR5H, InputsModel = InputsModel,
Imax = Imax, IndPeriod_Run = Ind_Run)
## simulation
Param < c(X1 = 218.537, X2 = 0.009, X3 = 174.862, X4 = 6.674, X5 = 0.000,
CNX1 = 0.002, CNX2 = 3.787)
OutputsModel < RunModel_CemaNeigeGR5H(InputsModel = InputsModel,
RunOptions = RunOptions, Param = Param)
## results preview
plot(OutputsModel, Qobs = BasinObs$Qmm[Ind_Run])
## efficiency criterion: NashSutcliffe Efficiency
InputsCrit < CreateInputsCrit(FUN_CRIT = ErrorCrit_NSE, InputsModel = InputsModel,
RunOptions = RunOptions, Obs = BasinObs$Qmm[Ind_Run])
OutputsCrit < ErrorCrit_NSE(InputsCrit = InputsCrit, OutputsModel = OutputsModel)
## End(Not run)