UpdateQsimUpstream.R 865 Bytes
Newer Older
#' Update InputsModel$Qupstream with simulated upstream flows provided by GRiwrmOutputsModels object.
Dorchies David's avatar
Dorchies David committed
#'
#' @param InputsModel \emph{InputsModel} object. See \code{\link[airGR]{CreateInputsModel}}
#' @param IndPeriod_Run numeric index of period to be used for the model run (-)
#' @param OutputsModel \emph{GRiwrmOutputsModel} object provided by [RunModel.GRiwrmInputsModel].
Dorchies David's avatar
Dorchies David committed
#'
#' @description This function is used by [RunModel.GRiwrmInputsModel] and [Calibration.GRiwrmInputsModel] in order to provide upstream simulated flows to a node.
Dorchies David's avatar
Dorchies David committed
#'
#' @return `InputsModel` object with updated `Qupstream`
Dorchies David's avatar
Dorchies David committed
#'
UpdateQsimUpstream <- function(InputsModel, IndPeriod_Run, OutputsModel) {
  iQ <- which(InputsModel$UpstreamIsRunoff)
  for(i in iQ) {
    InputsModel$Qupstream[IndPeriod_Run, i] <- OutputsModel[[InputsModel$UpstreamNodes[i]]]$Qsim
Dorchies David's avatar
Dorchies David committed
  }
  return(InputsModel)
}