From ce5ba39dacc09d941b3d972f72e8cb2ca32b5e0e Mon Sep 17 00:00:00 2001
From: Delaigue Olivier <olivier.delaigue@irstea.priv>
Date: Mon, 1 Apr 2019 09:17:42 +0200
Subject: [PATCH] v1.2.12.18 DOC: minor syntax revision in CemaNeige Hysteresis
 doc

---
 DESCRIPTION                            |  2 +-
 NEWS.rmd                               |  2 +-
 vignettes/V04_cemaneige_hysteresis.Rmd | 46 +++++++++++++++++---------
 3 files changed, 32 insertions(+), 18 deletions(-)

diff --git a/DESCRIPTION b/DESCRIPTION
index caae9871..317e825e 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.2.12.17
+Version: 1.2.12.18
 Date: 2019-04-01
 Authors@R: c(
   person("Laurent", "Coron", role = c("aut", "trl"), comment = c(ORCID = "0000-0002-1503-6204")),
diff --git a/NEWS.rmd b/NEWS.rmd
index 3c122656..4cf44a54 100644
--- a/NEWS.rmd
+++ b/NEWS.rmd
@@ -13,7 +13,7 @@ output:
 
 
 
-### 1.2.12.17 Release Notes (2019-04-01) 
+### 1.2.12.18 Release Notes (2019-04-01) 
 
 
 
diff --git a/vignettes/V04_cemaneige_hysteresis.Rmd b/vignettes/V04_cemaneige_hysteresis.Rmd
index 85366d4b..13fc7022 100644
--- a/vignettes/V04_cemaneige_hysteresis.Rmd
+++ b/vignettes/V04_cemaneige_hysteresis.Rmd
@@ -9,6 +9,10 @@ vignette: >
 ---
 
 
+```{r, echo=FALSE}
+library(airGR)
+```
+
 
 # Introduction
 
@@ -16,19 +20,19 @@ vignette: >
 
 Rainfall-runoff models that include a snow accumulation and melt module are still often calibrated using only discharge observations.
   
-After the work of Riboust et al. (2019), we propose now in airGR an improved version of the degree-day CemaNeige snow and accumulation module. This new version is based on a more accurate representation of the relationship that exists at the basin scale between the Snow Water Equivalent (SWE) and the Snow Cover Area (SCA). To do so, a linear SWE-SCA hysteresis, which represents the fact that snow accumulation is rather homogeneous and snow melt is more heterogeneous, was implemented.
+After the work of Riboust et al. (2019), we propose now in **airGR** an improved version of the degree-day CemaNeige snow and accumulation module. This new version is based on a more accurate representation of the relationship that exists at the basin scale between the Snow Water Equivalent (SWE) and the Snow Cover Area (SCA). To do so, a linear SWE-SCA hysteresis, which represents the fact that snow accumulation is rather homogeneous and snow melt is more heterogeneous, was implemented.
   
 This new CemaNeige version presents two more parameters to calibrate. It also presents the advantage of allowing using satellite snow data to constrain the calibration in addition to discharge. 
 Riboust et al. (2019) show that while the simulated discharge is not significantly improved, the snow simulation is much improved. In addition, they show that the model is more robust (i.e. transferable) in terms of discharge, which has many implications for climate change impact studies.
   
-The configuration that was identified as optimal by Riboust et al. (2019) includes a CemaNeige module run on 5 elevation bands and an objective function determine by a composite function of KGE' calculated on discharge (75% weight) and KGE' calculated on each elevation band (5 % for each).
+The configuration that was identified as optimal by Riboust et al. (2019) includes a CemaNeige module run on 5 elevation bands and an objective function determine by a composite function of KGE' calculated on discharge (75 % weight) and KGE' calculated on each elevation band (5 % for each).
   
 In this page, we show how to use and calibrate this new CameNeige version. 
   
   
 ## Data preparation
   
-We load an example data set from the package. Please note that this data set includes MODIS data that was pre-calculated for 5 elevation bands and for which days with few data (more than 40% cloud coverage) were assigned as missing values. 
+We load an example data set from the package. Please note that this data set includes MODIS data that was pre-calculated for 5 elevation bands and for which days with few data (more than 40 % cloud coverage) were assigned as missing values. 
   
   
 ## loading catchment data
@@ -37,9 +41,10 @@ data(X0310010)
 summary(BasinObs)
 ```
 
+
 ## Object model preparation
 
-We assume that the R global environment contains data and functions from the Get Started page.
+We assume that the R global environment contains data and functions from the [Get Started](V01_get_started.html) vignette.
 
 The calibration period has been defined from 2000-09-01 to 2005-08-31, and the validation period from 2005-09-01 to 2010-07-31.
 
@@ -55,22 +60,22 @@ InputsModel <- CreateInputsModel(FUN_MOD = RunModel_CemaNeigeGR4J,
 ## ---- calibration step
 
 ## short calibration period selection (< 6 months)
-Ind_Cal <- seq(which(format(BasinObs$DatesR, format = "%d/%m/%Y %H:%M")=="01/09/2000 00:00"), 
-               which(format(BasinObs$DatesR, format = "%d/%m/%Y %H:%M")=="31/08/2005 00:00"))
+Ind_Cal <- seq(which(format(BasinObs$DatesR, format = "%Y-%m-%d") == "2000-09-01"), 
+               which(format(BasinObs$DatesR, format = "%Y-%m-%d") == "2005-08-31"))
 
 
 # ---- validation step
 
 ## validation period selection
-Ind_Val <- seq(which(format(BasinObs$DatesR, format = "%d/%m/%Y %H:%M")=="01/09/2005 00:00"), 
-               which(format(BasinObs$DatesR, format = "%d/%m/%Y %H:%M")=="31/07/2010 00:00"))
+Ind_Val <- seq(which(format(BasinObs$DatesR, format = "%Y-%m-%d") == "2005-09-01"), 
+               which(format(BasinObs$DatesR, format = "%Y-%m-%d") == "2010-07-31"))
 ```
 
 
 
 # Calibration and evaluation of the new CemaNeige module
 
-In order to use the hysteresis, a new argument (IsHyst) is added in the CreateRunOptions and CreateCalibOptions functions and has to be set to TRUE. 
+In order to use the hysteresis, a new argument (`IsHyst`) is added in the `CreateRunOptions()` and `CreateCalibOptions()` functions and has to be set to `TRUE`. 
 
 ```{r, warning=FALSE}
 ## preparation of the RunOptions object for the calibration period
@@ -89,22 +94,30 @@ CalibOptions <- CreateCalibOptions(FUN_MOD = RunModel_CemaNeigeGR4J,
                                    IsHyst = TRUE)
 ```
 
-In order to calibrate and assess the model performance, we will follow the recommendations of Riboust et al. (2019). This is now possible in airGR with the added functionality that permits calculated composite criteria by combining different metrics. 
+In order to calibrate and assess the model performance, we will follow the recommendations of Riboust et al. (2019). This is now possible in **airGR** with the added functionality that permits calculated composite criteria by combining different metrics. 
 
 
 ```{r, warning=FALSE}
 ## efficiency criteria: 75 % KGE'(Q) + 5 % KGE'(SCA) on each of the 5 layers
 InputsCrit_Cal  <- CreateInputsCrit(FUN_CRIT = rep("ErrorCrit_KGE2", 6),
                                     InputsModel = InputsModel, RunOptions = RunOptions_Cal,
-                                    obs = list(BasinObs$Qmm[Ind_Cal], BasinObs$SCA1[Ind_Cal], BasinObs$SCA2[Ind_Cal],
-                                               BasinObs$SCA3[Ind_Cal], BasinObs$SCA4[Ind_Cal], BasinObs$SCA5[Ind_Cal]),
+                                    obs = list(BasinObs$Qmm[Ind_Cal],
+                                               BasinObs$SCA1[Ind_Cal],
+                                               BasinObs$SCA2[Ind_Cal],
+                                               BasinObs$SCA3[Ind_Cal],
+                                               BasinObs$SCA4[Ind_Cal],
+                                               BasinObs$SCA5[Ind_Cal]),
                                     varObs = list("Q", "SCA", "SCA", "SCA", "SCA", "SCA"),
                                     weights = list(0.75, 0.05, 0.05, 0.05, 0.05, 0.05))
 
 InputsCrit_Val  <- CreateInputsCrit(FUN_CRIT = rep("ErrorCrit_KGE2", 6),
                                     InputsModel = InputsModel, RunOptions = RunOptions_Val,
-                                    obs = list(BasinObs$Qmm[Ind_Val], BasinObs$SCA1[Ind_Val], BasinObs$SCA2[Ind_Val],
-                                               BasinObs$SCA3[Ind_Val], BasinObs$SCA4[Ind_Val], BasinObs$SCA5[Ind_Val]),
+                                    obs = list(BasinObs$Qmm[Ind_Val],
+                                               BasinObs$SCA1[Ind_Val],
+                                               BasinObs$SCA2[Ind_Val],
+                                               BasinObs$SCA3[Ind_Val],
+                                               BasinObs$SCA4[Ind_Val],
+                                               BasinObs$SCA5[Ind_Val]),
                                     varObs = list("Q", "SCA", "SCA", "SCA", "SCA", "SCA"),
                                     weights = list(0.75, 0.05, 0.05, 0.05, 0.05, 0.05))
 ``` 
@@ -158,9 +171,10 @@ str(OutputsCrit_Val, max.level = 2)
 ```
 
 
+
 # Comparison with the performance of the initial CemaNeige version 
 
-Here we use the same InputsModel object and calibration and validation periods. However, we have to redefine the way we run the model (RunOptions), calibrate and assess it (InputsCrit). The objective function is only based on KGE'(Q). 
+Here we use the same InputsModel object and calibration and validation periods. However, we have to redefine the way we run the model (`RunOptions` argument), calibrate and assess it (`InputsCrit` argument). The objective function is only based on KGE'(Q). 
 
 ```{r, warning=FALSE}
 ## preparation of RunOptions object
@@ -230,4 +244,4 @@ However, over the validation period, we see that the discharge simulated by the
 
 Reference
 
-Riboust, P., Thirel, G., Le Moine, N., and Ribstein, P.: Revisiting a simple degree-day model for integrating satellite data: implementation of SWE-SCA hystereses. Journal of Hydrology and Hydromechanics, DOI: 10.2478/johh-2018-0004, 67, 1, 70–81, 2019.							   
\ No newline at end of file
+Riboust, P., Thirel, G., Le Moine, N., and Ribstein, P.: Revisiting a simple degree-day model for integrating satellite data: implementation of SWE-SCA hystereses. Journal of Hydrology and Hydromechanics, DOI: 10.2478/johh-2018-0004, 67, 1, 70–81, 2019.
\ No newline at end of file
-- 
GitLab