Type: | Package |
Title: | Simulation of Supply Reservoir Systems using Standard Operation Policy |
Version: | 1.1 |
Date: | 2016-08-09 |
Author: | Rezgar Arabzadeh, Parisa Aberi, Kaveh Panaghi, Shahab Araghinejad, Majid Montaseri |
Maintainer: | Rezgar Arabzadeh <rezgararabzadeh@ut.ac.ir> |
Description: | Reservoir Systems Standard Operation Policy. A system for simulation of supply reservoirs. It proposes functionalities for plotting and evaluation of supply reservoirs systems. |
License: | GPL-2 |
NeedsCompilation: | no |
Packaged: | 2016-08-30 04:36:02 UTC; ASUS |
Repository: | CRAN |
Date/Publication: | 2016-08-30 07:49:10 |
Tools for Operation of Reservoirs Systems using Standard Operation Policy
Description
RSSOP
Details
Package: | RSSOP |
Type: | Package |
Version: | 1.0 |
Date: | 2015-12-29 |
License: | GPL-2 |
The package provides functions to establish the reservoirs systems elements and build up an operation standard operation policy (SOP) releases. The package include S3 classes for reservoir(s) system operation. Methods such as plot and yield is available for standard objects inherited from class SOP for results illustration and visualization.
Author(s)
Rezgar Arabzadeh <rezgararabzadeh@ut.ac.ir>, Parisa Aberi <ParisaAberi@gmail.com>, Kaveh Panaghi <k.panaghi@gmail.com>, Shahab Araghinejad <araghinejad@ut.ac.ir, Majid Montaseri <montaseri@hotmail.com>
Maintainer: Rezgar Arabzadehh <rezgararabzadeh@ut.ac.ir>
References
Loucks, Daniel P., et al. Water resources systems planning and management: an introduction to methods, models and applications. Paris: UNESCO, 2005. Araghinejad, S. (2013). Data-Driven Modeling: Using MATLAB, in Water Resources and Environmental Engineering (Vol. 67). Springer Science & Business Media.
Standard Operation Policy
Description
function for reservoir(s) system(s) operation using Standard Operation Policy
Usage
SOP(object)
Arguments
object |
an object from class of createArea |
Value
an object inherited from class SOP
Author(s)
Parisa Aberi, Rezgar Arabzadeh, Shahab Araghinejad
References
Yeh, W. W. G. (1985). Reservoir management and operations models: A state of the art review. Water resources research, 21(12), 1797-1818.
Examples
# loading an area
data (object)
## Not run: res<-SOP(object)
## Not run: plot(res)
## Not run: Yeild(res)
Base Function For Class SOP
Description
SOP base function for class SOP
Usage
## S3 method for class 'base'
SOP(object)
Arguments
object |
an object inherited from class creatArea |
Author(s)
Rezgar Arabzadeh, Parisa Aberi
Default Function Closs Of SOP
Description
SOP default function of class SOP
Usage
## Default S3 method:
SOP(object)
Arguments
object |
an object inherited from class createArea |
Author(s)
Rezgar Arabzadeh, Parisa Aberi
Reservoir Performance Indices
Description
a function for evaluation and calculation of reservoir performance indices based on Hashimoto et al. (1982)
Usage
Yeild(object, s.const = 0.95)
Arguments
object |
an object inherited from class SOP |
s.const |
satisfactory constant of supplying |
Value
a matrix presenting Reliability, resiliency, and vulnerability criterion for water resource system performance evaluation
Author(s)
Rezgar Arabzdadeh, Parisa Aberi
References
Hashimoto, T., Stedinger, J. R., & Loucks, D. P. (1982). Reliability, resiliency, and vulnerability criteria for water resource system performance evaluation. Water resources research, 18(1), 14-20.
Adds An Object To The Area
Description
Adds an object to the an object inherited from class createArea
Usage
addObjectToArea(area, object, type)
Arguments
area |
an object inherited from creatArea class |
object |
an object to be added to area |
type |
type of the object to added to area: "reservoir", "demand", "hydrometeorology" |
Value
an object inherited from class of creatArea
Author(s)
Rezgar Arabzadeh, Parisa Aberi, Kaveh Panaghi
Examples
# Create an area
object<-createArea(name ="Zarineh" ,
location="kurdistan",
start =c(1900,1) ,
end =c(1962,1))
# Create an Agricultural demand site
var<-sin(seq(0.2,pi-0.2,length.out=12))*100/sum(sin(seq(0.2,pi-0.2,length.out=12)))
dem<-createDemandSite(type="agricultural" ,
demandName="Agri" ,
demandCode=1 ,
annualUseRate=1.3084 ,
annualVariation=var ,
area=1000 ,
cycle=TRUE ,
numberOfCycles=62 ,
supplierCode=1 ,
downstreamCode=0 ,
priority=1)
# Create a Reservoir
AV<-data.frame(A=seq(2 ,30 ,length.out=10),
V=seq(100,700,length.out=10))
res<-createReservoir(type ="storage",
name ="Bukan" ,
reservoirCode =1 ,
downstreamReservoirCode=0 ,
geometry =list(sMin =100 ,
sMax =700 ,
volumeArea=AV))
# Creat a meteorological object
met<-hydrometeorology(Inflow =rlnorm(744,2,0.2),
netEvaporation=runif(744,0,0.2) ,
reservoirCode =1)
# add object to The area
object<-addObjectToArea(area =object,
object=met ,
type ="hydrometeorology")
object<-addObjectToArea(area =object,
object=dem ,
type ="demand")
object<-addObjectToArea(area =object,
object=res ,
type ="reservoir")
A Function To Create The Reservoirs System Area
Description
it creates an area to operate reservoirs inside it
Usage
createArea(name = "unknown", location = "unknown", start = c(), end = c())
Arguments
name |
a string representing the name of the operating area |
location |
a string representing the location of the operating area |
start |
a vector whose first number presents the number of start month of simulation time and second number shows the start year of of simulation time |
end |
a vector whose first number presents the number of end month of simulation time and second number shows the end year of of simulation time |
Value
an object of class of createArea
Author(s)
Rezgar Arabzadeh, Parisa Aberi
Creates A Demand Site
Description
A function to create a demand site using demand pattern variation or time series
Usage
createDemandSite(type = "agricultural",
demandName = "Agri1",
demandCode,
annualUseRate,
annualVariation,
area,
cycle = FALSE,
numberOfCycles = NULL,
supplierCode,
downstreamCode,
priority = 1,
start = 1900)
Arguments
type |
domestic, agricultural, and environmental. the hydropower is not available in this version |
demandName |
a string name of the desired demand site |
demandCode |
a uniqe integer number |
annualUseRate |
the amount of water consumption per unit of area during a year |
annualVariation |
a vector, in percent, of demand site variation during a year. the summation of vector's ellemnt should be equal to 100 |
area |
for agricultual type: the area of demand site |
cycle |
logical, cycle the time series? |
numberOfCycles |
if cycle is TRUE, number of cycles |
supplierCode |
the code of reservoir which is going to supply this demand site |
downstreamCode |
the downstream of demand site |
priority |
the priority of supply |
start |
the start year |
Value
an object inherited from class create DemandSite
Author(s)
Rezgar Arabzadeh, Parisa Aberi
Creates A Reservoir Object
Description
this function creates a reservoir object usning geometrical specifications
Usage
createReservoir(type = "storage",
name = "resrvoir1",
reservoirCode = 1,
downstreamReservoirCode,
geometry = list(sMin=NULL, sMax=NULL, volumeArea=NULL))
Arguments
type |
the type of reservoir, "storage" and "hydropower". hydropower is not available in this version |
name |
a string representing the name of reservoir object |
reservoirCode |
an unique integer code |
downstreamReservoirCode |
the code of reservoir downstream |
geometry |
a list, include maximum and minimum volumes of reservoir and a data frame for volume-area rating curve whose first column includes area (square KM) and the second column is Volume (MCM) |
Value
an object inherited from class createReservoir
Author(s)
Rezgar Arabzadeh, Parisa Aberi, Kaveh Panaghi
Creates A Meteorological Object
Description
this function creates an hydrometeorological object include stream flow and evaporation time series
Usage
hydrometeorology(Inflow,
netEvaporation,
cycleEvaporation = FALSE,
numberOfCycles = NULL,
startDate = c(1900, 1),
reservoirCode)
Arguments
Inflow |
Inflow time series (MCM) |
netEvaporation |
Net evaporation in (m) |
cycleEvaporation |
logicl, the net evaporation should be cycled or not |
numberOfCycles |
an integer nuber: if cycleEvaporation is TRUE, the number of cycles. if is not specified it would be calculated based on the Inflow time serires |
startDate |
a vector of two elemnts whose elements include start year and strart month respectively |
reservoirCode |
the code of reservoir which this hydrometeorological object belongs to that |
Value
an object from class of hydrometeorology
Author(s)
Rezgar Arabzadeh, Parisa Aberi
An Object From Class Of creatArea
Description
an object from the class of createArea which includes the specifications of a cascde reservoir system in Kurdistan, ZerineRud basin. "object" includes two inflow time series in the Bukan and Sonata dam sites, there demands sites time series and geometrical specifications of mentioned dams
Usage
data("object")
References
Water Resources Management Company, Ministry of Energy, Iran, 2015
A Plot Function for Object Inherited From Class Of SOP
Description
a plot function for an object inherited from class SOP
Usage
## S3 method for class 'SOP'
plot(x , ...)
Arguments
x |
an object inherited from class SOP |
... |
other objects that can passed to plot function |
Author(s)
Rezgar Arabzadeh, Parisa Aberi, Kaveh Panaghi