library(airGRdatassim)
## loading catchment data
data(L0123001, package = "airGR")
Param <- c(X1 = 194.243, X2 = -0.088, X3 = 117.740, X4 = 1.680, X5 = 0.000)
## run period selection
IndRun <- seq(which(format(BasinObs$DatesR, format = "%Y-%m-%d")=="2006-01-01"),
which(format(BasinObs$DatesR, format = "%Y-%m-%d")=="2006-01-31"))
## preparation of the InputsModel object
InputsModel <- CreateInputsModel(FUN_MOD = RunModel_GR5J, DatesR = BasinObs$DatesR,
Precip = BasinObs$P, PotEvap = BasinObs$E)
## number of ensemble members
## minimum of 20 recommanded for the EnKF scheme
## minimum of 30 recommanded for the PF scheme
NbMbr <- 20L
## preparation of perturbed meteorological ensemble
InputsPert <- CreateInputsPert(FUN_MOD = RunModel_GR5J,
DatesR = BasinObs$DatesR,
Precip = BasinObs$P, PotEvap = BasinObs$E,
NbMbr = NbMbr)
## simulation with DA via EnKF
OutputsModelDA <- RunModel_DA(InputsModel = InputsModel,
InputsPert = InputsPert,
Qobs = BasinObs$Qmm,
IndRun = IndRun,
FUN_MOD = RunModel_GR5J, Param = Param,
DaMethod = "EnKF", NbMbr = NbMbr,
StateEnKF = c("Prod", "Rout"),
StatePert = c("Prod", "Rout"))
## results preview
plot(OutputsModelDA, Qobs = BasinObs$Qmm[IndRun])
## results preview on a subset
plot(OutputsModelDA[1:10], Qobs = BasinObs$Qmm[IndRun][1:10])
Run the code above in your browser using DataLab