Adding Mosetse dam
Last updated
Last updated
Please note that there are two nodes in WaterStrategy and Pywr that represent reservoirs. The first is a storage node and the second is a reservoir node.
Both nodes store water. The reservoir node works just like a storage node, however it has built-in parameters allowing evaporation and precipitation to be directly represented on the node. To represent evaporation and precipitation with a storage node, a catchment node connected to the storage node is used to represent precipitation and output node drawing water from the storage node is is used to represent evaporation. The reservoir node is a recent addition to Pywr. The Botswana national model uses storage nodes while this tutorial uses the reservoir node as it was made before the reservoir node update.
Add the newest version of the Botswana training model by clicking the following link. This link will copy the newest version of the model to a new project called 'Botswana training model' July 2024' in your account.
https://hydra.org.uk/dn/BotsTrainModel0724
Open the Botswana training model July 2024 network. Zoom to Mosetse town and river.
Add the following nodes to the network
Please a reservoir node on the river upstream of Mosetse town.
Remeber to connect the nodes by clicking first on the upstream node and then the downstream node.
You can view how to add edges in the video below.
The reservoir system should look like the figure below.
Rename the nodes to names that make sense with their contexts.
Rename
the Catchment node to 'Mosetse catchment',
the Reservoir node to 'Mosetse reservoir'
the Output node to 'Mosetse outlet'.
the Link nodes to 'Spill' and the other one 'Release'.
The figure below shows where to click to rename the catchment node. The same process can be repeated for all the other nodes.
Inputing data into the Catchment node.
Please go to the following link to find the time series data for this step.
Click on the Catchment node and follow the clicks (red arrows shown in the sequence of figures below.
In the Excel link you will have a time series. Please copy the first (or only time series if there is only one). Make sure to copy the dates as well.
Paste the time series into cell A1 in the Dataframe tab
You should have a time series as shown below. Click Save.
Inputing data into the Mosetse reservoir node
Click on the Mosetse reservoir node
Set the max_volume to 25 Mm3. This is the maximum capacity for the dam in this tutorial.
Set the initial_volume to 15 Mm3. This is the storage level that the simulation starts with on the first time step.
Set the allocation penalty to -200. Often reservoirs have a negative allocation penalty. Allocation penalties are often used to balance reservoir or other water source use in multi-reservoir and multi-source systems.
The attributes on the reservoir should look like those below:
Inputting data on the the Spill and Release Link nodes.
On the Spill link node set the 'Allocation penalty' to 1000
The Release link node should not have any data input.
Run the model
View the 'simulated_volume' of the reservoir node to see the reservoir storage volume over time.
Click on the 'Plot' view.
The reservoir is seen to fill and remain full for most of the time horizon. This is the case becaues there is no demand on the reservoir nor are there any evaporation losses defined.
To see a video on how to run the model and view outputs click here.
Please note, make sure you use the 'Reservoir' node and not the 'Storage' node:
Place a catchment node upstream of the reservoir. The catchment node represents the river flowing into the reservoir.
Place an output node downstream of the reservoir. The output node in this case represents the river outlet.
Place two link nodes betwen the reservoir and outlet (as shown below). In this case, these link nodes represent the (1) reservoir releases and (2) spill. The link representing the reservoir release represents flow that leaves the reservoir as a result of any release rules or to meet downstream allocations. Release rules would generally be specified on this node. Reservoir release rules defined on this node are usually represented by a parameter defined on the nodes max_flow attribute. The 2nd link node represents the spill from the reservoir. The spill is used if reservoir release rules are defined constraining how much water can be released via this node and additional water needs to be released than is allowed by the release rules (for example if the resevoir is over capacity). As the spill is generally used only when the resevoir is over capacity, this node generally has a highly positive allocation penalty.
Connect the nodes with edges which are commonly referred to links.