reservoirRouting {WRSS} | R Documentation |
base function for reservoir simulation
Description
Given a sort of demand(s), reservoirRouting
function simulates the effect of a dam under givn hydrometeorological time series, e.g. inflow
and netEvaporation
, on the drainage network.
Usage
reservoirRouting(type='storage',
inflow,
netEvaporation=NA,
demand=NA,
priority=NA,
seepageFraction=NA,
geometry=list(storageAreaTable=NULL,
storageElevationTable=NULL,
dischargeElevationTable=NULL,
deadStorage=0,
capacity=NULL),
plant=list(installedCapacity=NULL,
efficiency=NULL,
designHead=NULL,
designFlow=NULL,
turbineAxisElevation=NULL,
submerged=FALSE,
loss=0),
penstock=list(diameter=NULL,
length=0,
roughness=110),
initialStorage=NA,
simulation)
Arguments
type |
A string: the type of the reservoir being instantiated: by default 'storage', however, it can be 'hydropower' |
inflow |
A vector : a vector of water flowing into the diversion (MCM) |
netEvaporation |
A vector: is a vector of net evaporation depth time series at the location of dam site (meter). If omitted, the evaporation is assumed to be zero. |
demand |
A matrix: is column-wise matrix of demands, at which the rows presents demands for each monthly time steps and columns are for different individual demand sites (MCM). |
priority |
(optional) A vector: is a vector of priorities associated to |
seepageFraction |
(optional) The seepage coeffcient of reservoir storage. The seepage is computed as the product of |
geometry |
A list of reservoir geometric specifications:
|
plant |
A list of power plant specifications. It is provided if
|
penstock |
(optional) A list of penstock specifications. It is provided if
|
initialStorage |
(optional) The initial stored water at the reservoir in the first step of the simulation (MCM). If is missing the the function iterate to carry over the reservoir. |
simulation |
A list: |
Value
the reservoirRouting
function returns a list of features given as folows:
-
release
: a matrix of release(s) equivalant to eachdemand
(MCM) -
spill
: a vector of spilage time series (MCM) -
seepage
: a vector of steepage time series (MCM) -
storage
: a vector of storage time series (MCM) -
loss
: a vector of evaporation loss time series (MCM)
Author(s)
Rezgar Arabzadeh
References
Yeh, William WG. "Reservoir management and operations models: A state of the art review." Water resources research 21.12 (1985): 1797-1818.
See Also
Examples
type <-c('storage','hydropower')
demand <-matrix(rnorm(480,10,3),120)
priority <-sample(1:3,4,replace=TRUE)
inflow <-rlnorm(120,log(50),log(4))
netEvaporation <-rnorm(120,0.4,0.1)
simulation <-list(start='2000-01-01',end='2009-12-29',interval='month')
seepageFraction<-0.05
geometry <-list(storageAreaTable=cbind(seq(0,100,10),seq(0,10,1)),
storageElevationTable=cbind(seq(0,100,10),seq(0,200,20)),
dischargeElevationTable=cbind(seq(0,50,10),seq(0,10,2)),
deadStorage=50,
capacity=100)
plant <-list(installedCapacity=50,
efficiency=cbind(c(5,25,45),c(0.5,0.9,0.7)),
designHead=c(100,200),
designFlow=c(10,40),
turbineAxisElevation=5,
submerged=TRUE,
loss=2)
penstock <-list(diameter=2,
length=50,
roughness=110)
#-----Storage Reservoir----------
reservoirRouting(type=type[1],
inflow=inflow,
netEvaporation=netEvaporation,
demand=demand,
priority=priority,
seepageFraction=seepageFraction,
geometry=geometry,
plant=plant,
penstock=penstock,
simulation=simulation)
## Not run:
##-----Takes Several Minutes----------
#-----Hydropower Reservoir with demand----------
reservoirRouting(type=type[2],
inflow=inflow,
netEvaporation=netEvaporation,
demand=demand,
priority=priority,
seepageFraction=seepageFraction,
geometry=geometry,
plant=plant,
penstock=penstock,
simulation=simulation)
#-----Hydropower Reservoir----------
reservoirRouting(type=type[2],
inflow=inflow,
netEvaporation=netEvaporation,
priority=priority,
seepageFraction=seepageFraction,
geometry=geometry,
plant=plant,
penstock=penstock,
simulation=simulation)
## End(Not run)