View source: R/reservoirRouting.R
reservoirRouting | R Documentation |
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.
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)
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: |
the reservoirRouting
function returns a list of features given as folows:
release
: a matrix of release(s) equivalant to each demand
(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)
Rezgar Arabzadeh
Yeh, William WG. "Reservoir management and operations models: A state of the art review." Water resources research 21.12 (1985): 1797-1818.
aquiferRouting
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)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.