RunModel_GR2M.Rd 4.37 KB
Newer Older
Delaigue Olivier's avatar
Delaigue Olivier committed
1
% Generated by roxygen2: do not edit by hand
Delaigue Olivier's avatar
Delaigue Olivier committed
2
3
4
5
6
7
8
9
10
11
12
13
14
% Please edit documentation in R/RunModel_GR2M.R
\encoding{UTF-8}
\name{RunModel_GR2M}
\alias{RunModel_GR2M}
\title{Run with the GR2M hydrological model}
\usage{
RunModel_GR2M(InputsModel, RunOptions, Param)
}
\arguments{
\item{InputsModel}{[object of class \emph{InputsModel}] see \code{\link{CreateInputsModel}} for details}

\item{RunOptions}{[object of class \emph{RunOptions}] see \code{\link{CreateRunOptions}} for details}

15
\item{Param}{[numeric] vector of 2 parameters
Delaigue Olivier's avatar
Delaigue Olivier committed
16
\tabular{ll}{                                                                      
Delaigue Olivier's avatar
Delaigue Olivier committed
17
GR2M X1      \tab production store capacity [mm]                 \cr
18
GR2M X2      \tab groundwater exchange coefficient [-]    \cr
Delaigue Olivier's avatar
Delaigue Olivier committed
19
20
21
}}
}
\value{
Delaigue Olivier's avatar
Delaigue Olivier committed
22
23
[list] list containing the function outputs organised as follows:                                         
         \tabular{ll}{                                                                                         
24
25
26
27
28
         \emph{$DatesR  }          \tab [POSIXlt] series of dates                                                          \cr
         \emph{$PotEvap }          \tab [numeric] series of input potential evapotranspiration [mm/month]                  \cr
         \emph{$Precip  }          \tab [numeric] series of input total precipitation [mm/month]                           \cr
         \emph{$Qsim    }          \tab [numeric] series of Qsim [mm/month]                                                \cr
         \emph{$StateEnd}          \tab [numeric] states at the end of the run (production store level and routing store level) [mm] \cr
Delaigue Olivier's avatar
Delaigue Olivier committed
29
         }                                                                                                     
Delaigue Olivier's avatar
Delaigue Olivier committed
30
31
32
         (refer to the provided references or to the package source code for further details on these model outputs)
}
\description{
33
Function which performs a single run for the GR2M monthly lumped model over the test period.
Delaigue Olivier's avatar
Delaigue Olivier committed
34
35
36
37
38
39
}
\details{
For further details on the model, see the references section.
For further details on the argument structures and initialisation options, see \code{\link{CreateRunOptions}}.
}
\examples{
40
41
## loading catchment data
library(airGR)
Delaigue Olivier's avatar
Delaigue Olivier committed
42
43
data(L0123001)

44
45
## conversion of example data from daily to monthly time step
TabSeries       <- data.frame(BasinObs$DatesR, BasinObs$P, BasinObs$E, BasinObs$T, BasinObs$Qmm)
Delaigue Olivier's avatar
Delaigue Olivier committed
46
47
TimeFormat      <- "daily"
NewTimeFormat   <- "monthly"
48
49
50
ConvertFun      <- c("sum", "sum", "mean", "sum")
NewTabSeries    <- SeriesAggreg(TabSeries = TabSeries, TimeFormat = TimeFormat, 
                                NewTimeFormat = NewTimeFormat, ConvertFun = ConvertFun)
Delaigue Olivier's avatar
Delaigue Olivier committed
51
BasinObs        <- NewTabSeries
52
names(BasinObs) <- c("DatesR", "P", "E", "T", "Qmm")
Delaigue Olivier's avatar
Delaigue Olivier committed
53
54

## preparation of the InputsModel object
55
56
InputsModel <- CreateInputsModel(FUN_MOD = RunModel_GR2M, DatesR = BasinObs$DatesR, 
                                 Precip = BasinObs$P, PotEvap = BasinObs$E)
Delaigue Olivier's avatar
Delaigue Olivier committed
57
58

## run period selection
59
60
Ind_Run <- seq(which(format(BasinObs$DatesR, format = "\%m/\%Y")=="01/1990"), 
               which(format(BasinObs$DatesR, format = "\%m/\%Y")=="12/1999"))
Delaigue Olivier's avatar
Delaigue Olivier committed
61
62

## preparation of the RunOptions object
63
64
RunOptions <- CreateRunOptions(FUN_MOD = RunModel_GR2M,
                               InputsModel = InputsModel, IndPeriod_Run = Ind_Run)
Delaigue Olivier's avatar
Delaigue Olivier committed
65
66

## simulation
67
68
Param <- c(265.072, 1.040)
OutputsModel <- RunModel_GR2M(InputsModel = InputsModel, RunOptions = RunOptions, Param = Param)
Delaigue Olivier's avatar
Delaigue Olivier committed
69
70

## results preview
71
plot_OutputsModel(OutputsModel = OutputsModel, Qobs = BasinObs$Qmm[Ind_Run])
Delaigue Olivier's avatar
Delaigue Olivier committed
72
73

## efficiency criterion: Nash-Sutcliffe Efficiency
74
75
76
77
InputsCrit  <- CreateInputsCrit(FUN_CRIT = ErrorCrit_NSE, InputsModel = InputsModel, 
                                RunOptions = RunOptions, Qobs = BasinObs$Qmm[Ind_Run])
OutputsCrit <- ErrorCrit_NSE(InputsCrit = InputsCrit, OutputsModel = OutputsModel)
cat(paste("  Crit  ", OutputsCrit$CritName, "  ", round(OutputsCrit$CritValue, 4), "\\n", sep = ""))
Delaigue Olivier's avatar
Delaigue Olivier committed
78
79
80

}
\author{
81
Laurent Coron, Claude Michel, Safouane Mouelhi (March 2015)
Delaigue Olivier's avatar
Delaigue Olivier committed
82
83
}
\references{
Delaigue Olivier's avatar
Delaigue Olivier committed
84
Mouelhi S. (2003), 
Delaigue Olivier's avatar
Delaigue Olivier committed
85
86
87
88
89
90
91
      Vers une chaîne cohérente de modèles pluie-débit conceptuels globaux aux pas de temps pluriannuel, annuel, mensuel et journalier,
      PhD thesis (in French), ENGREF, Cemagref Antony, France. \cr
  Mouelhi, S., C. Michel, C. Perrin and V. Andréassian (2006),
      Stepwise development of a two-parameter monthly water balance model,
      Journal of Hydrology, 318(1-4), 200-214, doi:10.1016/j.jhydrol.2005.06.014.
}