RunModel_GR2M.Rd 4.21 KB
Newer Older
Delaigue Olivier's avatar
Delaigue Olivier committed
1
2
3
4
5
6
7
8
9
10
11
12
\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}

13
\item{Param}{[numeric] vector of 2 parameters
Delaigue Olivier's avatar
Delaigue Olivier committed
14
\tabular{ll}{                                                                      
Delaigue Olivier's avatar
Delaigue Olivier committed
15
GR2M X1      \tab production store capacity [mm]                 \cr
16
GR2M X2      \tab groundwater exchange coefficient [-]    \cr
Delaigue Olivier's avatar
Delaigue Olivier committed
17
18
19
}}
}
\value{
Delaigue Olivier's avatar
Delaigue Olivier committed
20
21
[list] list containing the function outputs organised as follows:                                         
         \tabular{ll}{                                                                                         
22
23
24
25
         \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
26
         \emph{$StateEnd}          \tab [numeric] states at the end of the run (production store level and routing store level) [mm], \cr\tab see \code{\link{CreateIniStates}} for more details \cr
Delaigue Olivier's avatar
Delaigue Olivier committed
27
         }                                                                                                     
Delaigue Olivier's avatar
Delaigue Olivier committed
28
29
30
         (refer to the provided references or to the package source code for further details on these model outputs)
}
\description{
31
Function which performs a single run for the GR2M monthly lumped model over the test period.
Delaigue Olivier's avatar
Delaigue Olivier committed
32
33
34
35
36
37
}
\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{
38
library(airGR)
unknown's avatar
unknown committed
39
40

## loading catchment data
Delaigue Olivier's avatar
Delaigue Olivier committed
41
42
data(L0123001)

43
44
## 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
45
46
TimeFormat      <- "daily"
NewTimeFormat   <- "monthly"
47
48
49
ConvertFun      <- c("sum", "sum", "mean", "sum")
NewTabSeries    <- SeriesAggreg(TabSeries = TabSeries, TimeFormat = TimeFormat, 
                                NewTimeFormat = NewTimeFormat, ConvertFun = ConvertFun)
Delaigue Olivier's avatar
Delaigue Olivier committed
50
BasinObs        <- NewTabSeries
51
names(BasinObs) <- c("DatesR", "P", "E", "T", "Qmm")
Delaigue Olivier's avatar
Delaigue Olivier committed
52
53

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

## run period selection
58
59
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
60
61

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

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

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

## efficiency criterion: Nash-Sutcliffe Efficiency
73
74
75
InputsCrit  <- CreateInputsCrit(FUN_CRIT = ErrorCrit_NSE, InputsModel = InputsModel, 
                                RunOptions = RunOptions, Qobs = BasinObs$Qmm[Ind_Run])
OutputsCrit <- ErrorCrit_NSE(InputsCrit = InputsCrit, OutputsModel = OutputsModel)
Delaigue Olivier's avatar
Delaigue Olivier committed
76
77
}
\author{
78
Laurent Coron, Claude Michel, Safouane Mouelhi (March 2015)
Delaigue Olivier's avatar
Delaigue Olivier committed
79
80
}
\references{
Delaigue Olivier's avatar
Delaigue Olivier committed
81
Mouelhi S. (2003), 
Delaigue Olivier's avatar
Delaigue Olivier committed
82
83
84
85
86
87
88
      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.
}