type 
A string: the type of the reservoir being instantiated: by default 'storage', however, it can be 'hydropower'

name 
(optional) A string: the name of the reservoir.

priority 
(optional) An integer: the supplying priority. priority is a value in [1, 99] interval. If missing, the priority is set to Inf.

downstream 
(optional) An object; from either of classes of createAquifer , createRiver , createReservoir , createJunction , createDiversion , or createDemandSite ; which spillage volume pours to it.

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.

seepageFraction 
(optional) The seepage coeffcient of reservoir storage. The seepage is computed as the product of seepageFraction and reservoir storage. It is in [0, 1] interval

seepageObject 
(optional) An object; from either of classes of createAquifer , createRiver , createReservoir , createJunction , createDiversion , or createDemandSite ; which seepage volume pours to it.

geometry 
A list of reservoir geometric specifications:

storageAreaTable : is a matrix whose first column includes reservoir volume (MCM) for different elevation levels and the second column contains reservoir area (in Km^2) corresponding to the first column

storageElevationTable : is a matrix whose first column includes reservoir volume (MCM) for different elevation levels and the second column contains elevation (in meter) corresponding to the first column

dischargeElevationTable : is a matrix whose first column includes the capacity of reservoir tailwater discharge rate (in cms) for different elevation levels and the second column contains elevation levels corresponding to the first column, required if the type = 'hydropower' and the item submerged = TRUE

deadStorage : refers to water in a reservoir that cannot be drained by gravity through the dam outlet works (MCM)

capacity : The maximum capacity of the reservoir

plant 
A list of power plant specifications. It is provided if type = 'hydropower' :

installedCapacity : the plant installed capacity (MW)

efficiency : is a matrix whose first column includes discharge rate (in cms) and the second column turbine effeciency, in [0 1] interval, corresponding to the first column

designHead : A vector of length of two, containing the minimum and maximum design water head (in meter) of the turbine respecively, that the it is in active state

designFlow : A vector of length of two, containing the minimum and maximum design flow rate (in cms) of the turbine respecively, that the it is in active state

turbineAxisElevation : The elevation of axis of the installed turbine (in meter)

submerged : logical: if the turbine is of type of submeged on, TRUE , otherwise, FALSE

loss : losses associated with the turbine (in meter)

penstock 
(optional) A list of penstock specifications. It is provided if type = 'hydropower' :

diameter : The diameter of the penstock (in meter)

length : The length of the penstock (in meter)

roughness : pipe roughness coefficient used for HazenWilliams formulation

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.
