Storage node
Storage details
The editor’s main window (Figure 1) allows you to specify storage details, which are outlined in Table 1. You are recommended to use the same units as those in Dimensions, but you can change them by clicking on their respective units buttons.
Figure 1. Storage node
Table 1. Storage node, details
Parameter | Definition | Default |
---|---|---|
Hydropower generation | A drop-down menu allowing you to choose where to generate spill for hydropower generation. When a storage with an ungated spillway is close to FSL, and inflows would cause the storage to physically spill in the absence of release, the system can find it difficult to accurately determine if the generator could have been used to pass inflows, rather than the spillway. For example, if a storage is at the spill level of the ungated spillway at the start of the time-step, and there is inflow which could have been passed through the generator, the majority of the inflow will pass over the spillway. This situation arises when the correct configuration for a storage with only ungated spillways is used, ie, Don't generate from spill is chosen. Actual generation in such situations would depend on the operating rules for the reservoir, and pattern of inflow though the day. It is not possible to define a single generically applicable solution for this. Similarly, if the storage is below spill level, and inflow is such that the storage would spill without releases, and downstream demand = inflow (and therefore the storage wouldn't physically spill), Source sets a minimum release which is interpreted as physical spill. Choosing Generate using spill will generate from all spill limited ONLY by hydropower valve capacity Choosing Generate using spill; upto downstream orders will generate spill limited by downstream orders and hydropower valve capacity. | Don't generate from spill |
Full Supply | The level or volume for which uncontrolled flow commences over an un-gated spillway. | Equal to the level of the spillway. |
Initial Conditions | The initial water level/volume in the storage at the start. This level must be above or equal to the minimum storage water level defined in the storage dimensions relationship. | There is no default value, but it can be a non-integer, with the minimum being the lowest storage dimension level. |
Dead Storage Capacity | The level or volume below which water cannot be released from the storage. This is different for rules-based and netLP ordering. Refer to the note below. | 0 |
Node elevation | The node's height above sea level (this value can be negative to represent an elevation below sea level) | 0 |
Operating constraints and targets
Operating Constraints
Operating constraints are only available if either the Backward Euler method is chosen as the storage processing method, or the storage has been configured as a Weir. Operating constraints are now available for the network that has been setup in either Rules-based ordering or netLP ordering.
The operating constraints affect storage releases, keeping the storage level or volume within a specified operating range. You may select whether the constraints are specified by volume or level using radio buttons provided, and then the unspecified property will be calculated using storage dimensions. The storage will not release water to satisfy downstream requirements if this results in the water level or volume dropping below the Minimum Operating constraint. Likewise, water will be released to prevent the storage rising above the Maximum Operating constraint (Figure 2).
Releases down an outlet path made in an attempt to meet the maximum operating constraint are limited to the safe release capacity for that outlet path. This is configured by selecting the outlet path from the tree menu, enabling Use Safe Release Capacity and entering a flow rate for the Safe Release Capacity (Figure 9, see Storage node#Outlets). Currently only one outlet path could be enabled for the safe release of water above the maximum operating constraint. Note that if you do not provide a safe release capacity for an outlet path, then no releases will be made for the purpose of meeting the maximum operating level but releases to meet normal demand requirements should still happen. The safe release capacity should be less than maximum outlet capacity. The safe release capacity can be set bigger than the maximum outlet capacity, but releases through this outlet will be constrained to the maximum outlet capacity.
The Safe Release Capacity can also be configured using a Function (Figure 9, see Storage node#Outlets). The advantage of this is that a safe release capacity can be configured which changes over time, facilitating the modelling of e.g. raising a spillway.
Figure 2. Storage Node, Operating Constraints
Operating Targets
Operating Target refers to the level or volume that the system will attempt to maintain in a downstream storage by ordering water from an upstream storage. You may select whether the targets are specified by volume or level using radio buttons provided, and then the unspecified property will be calculated using storage dimensions (Figure 3).
The Maximum Unregulated Operating Target captures surplus water during an off-allocation event. It specifies a target level or volume in the storage that is used by the off-allocation system in determining how much water may be allocated to the storage during the off-allocation event.
Figure 3. Storage node, Operating Target
Storage dimensions
Storage dimensions can be configured to be either static or vary over time (see Time-varying storage dimensions). You can use time-varying storage dimensions to model the gradual decrease in storage capacity caused by sedimentation, or to model the abrupt increase in storage capacity from implementing a new dam.
Static storage dimensions
To configure dimensions that remain constant for the duration of the model run, select Dimensions » Static Storage Dimension (Figure 4) and then specify the dimensions using level, volume and surface area. Dimensions can be entered manually as a piecewise linear relationship or imported as a comma-separated file (format shown in Table 1). There is no need to specify a start date, this is used for configuring time-varying storage dimensions. You can also export the relationship for use in another scenario. The graph displays a relationship between Level vs Volume or Level vs Surface Area, which can be changed using the drop down menu.
Figure 4. Storage node, Dimensions
Table 2. Storage node, Dimensions (data file format)
Row | Column (comma-separated) | ||
---|---|---|---|
1 | 2 | 3 | |
1 | Level (m) | Volume (ML) | Surface Area (ha) |
2 | -10 | 0 | 0 |
3 | 0 | 100 | 500 |
4 | level | volume | surface area |
Example Storage Dimensions File
Level,Volume,SurfaceArea473,0,0475,100,0.1478,4600,2.9479,8100,2.9
Time-varying storage dimensions
Storages can be configured to increase and/or decrease in storage capacity over time, these changes can be gradual or happen in a single time step.
To vary storage dimensions over time, at least two storage dimensions need to be configured, each with a different start date, so that Source can interpolate between them. To add a second storage dimension, right click on Dimensions and select Add Storage Dimension from the contextual menu.
For each storage dimension, configure the level, volume and surface area relationship as explained for Static Storage Dimensions.
Start Dates
For each storage dimension, set the Start Date to the date from which the dimensions apply. The start date is also the storage dimension's name. If you have a static storage dimension configured and you add another storage dimension, the static storage name will also change to its start date (default is 01/01/1880).
If the start dates for all storage dimensions are after the start date of the run, then the storage dimension with the earliest start date is used at the beginning of the run.
Interpolation
You can configure how Source interpolates between storage dimensions by selecting Dimensions and then toggling on or off Interpolate Between Storage Dimensions. When toggled off, the second storage dimension will take effect from configured start date. When toggled on, the storage dimensions are linearly interpolated between the first start date and the second start date, and so on.
The period of the model run does not effect the interpolation.
Changing between storage dimensions
- If the storage volume decreases, then the level is set as constant between the two time steps. This is because decreases are assumed to be caused by sedimentation, which results in a loss of water volume (ie. storage volume), because some of the 'water' was actually sediment. This loss can be recorded with the Loss to Storage Dimension Change parameter.
- If the storage volume increases, then the volume is set as constant between the two time steps, this may result in a decrease in storage level. This is because increases are assumed to be caused by construction work to increase storage capacity.
The following is an illustrative example to demonstrate the effects of:
- Increasing and decreasing storage dimensions,
- Enabling Interpolation Between Storage Dimensions, and
- Model run commencing before the earliest storage dimension start date.
A model was configured with constant flow, and a storage with three storage dimensions (Table 3).
Table 3. Example of time-varying storage dimensions
Storage Dimension Start Date | Level (m) | Volume (ML) | Surface Area (km2) |
---|---|---|---|
05/04/2016 | 0 | 0 | 0 |
100 | 200000 | 1000 | |
15/04/2016 | 0 | 0 | 0 |
100 | 100000 | 500 | |
25/04/2016 | 0 | 0 | 0 |
100 | 200000 | 1000 |
The second storage dimension decreases in storage capacity relative to the first. The third storage dimension increases the storage capacity relative to the second (Table 3).
The model was run from the 01/04/2016 to 01/05/2016. The beginning of the run (01/04) is before the first storage dimension starts (05/04), so the initial storage dimensions are considered to be those configured for the 05/04, but interpolation does not start until the 05/04.
The results of this configuration on Storage Volume, Level and Loss to Storage Dimension Change are shown in Figure 5. Interpolation was toggled on (solid lines) or off (dashed lines).
Figure 5. Example of time-varying storage dimensions.
Constituents
These inputs are required for water quality constituents, and can be specified by selecting Constituents. Ensure that constituents and constituent sources have been defined prior to configuration (using Edit » Constituents). Refer to Constituents - Storage node.
Gauged Level
The Apply Unaccounted Difference to Storage level calculation check box allows you to enable modelled values to be overridden by observed values. The storage level forces the parameter to equal the observed value. You may want to use this for calibration or for storage inflow derivation using the Unaccounted Difference recorder. You can specify the source data as a single value, link it to a time series (using Data Sources) or a function (using the Function Editor), as shown in Figure 6. You can also specify the gauged value as a level or volume, and the unspecified property will be calculated using storage dimensions. The storage node icon changes to indicate that modelled data is being overridden (Figure 7).
Figure 6. Storage node, Gauged level
Figure 7. Storage node icon, observed data replaces modelled data
Gauged Releases
This menu item allows you to overwrite modelled storage releases with observed releases, for example for the purposes of flow routing calibration in the reach downstream of the storage. First, click on the disclosure triangle next to Gauged Releases to view a list of available outlet paths, then right click on an outlet path to enable. Enter the observed data either as a single value, a time series (using Data Sources) or a function (using the Function Editor), as shown in Figure 8. The storage node icon changes to indicate that modelled data is being overridden (Figure 6).
Figure 8. Storage node, Gauged releases
Outlets
Outlets (Figure 8) define how water is released from the storage and must be added to allow for spills. In Source, you must specify the following:
- Outlet path – the path (out of the storage node) taken by the outlet. To choose an outlet path, click on the disclosure triangle to open a list of links connected to the node. You can choose the link that is associated with an outlet by right-clicking and choosing the outlet type;
- Outlet types – right-click on Outlets and choose the outlet type from the contextual menu.You can add more than one outlet type per storage. These are shown in Table 4; and
- Storage Outlet Capacity - For each outlet you can enter a relationship between storage level and discharge as a piecewise linear relationship (format shown in Table 5.)
Select an outlet path from the tree menu to view the Total Outlet Capacity table, which is a piecewise linear relationship accounting for the combination of all the release types for that outlet path (eg. if you have a spillway and a valve, Figure X). If Backward Euler is chosen as the storage processing method, this dialog is also where the Safe Release Capacity is configured (Figure 9), see Storage node#Operating Constraints. It is to be noted that currently only one outlet path could be enabled for the safe release of above maximum operating constraint water. To see the Total Outlet Capacity table for all outlets in the storage select Outlets.
Table 4. Storage Outlet Types
Outlet Type | Description | Piecewise linear function required |
---|---|---|
Culvert | A conduit is used to enclose a flowing body of water. It may be used to allow water to pass underneath a road, railway or embankment. | Level vs discharge |
Gated Spillway | Controls releases by the operation of gates. This allows for arange of discharges rates for each water level, depending on how wide the gates are opened. | Level vs minimum and maximum discharge |
Hydropower Valve | The power generated from a hydroelectric system. | Level vs maximum discharge |
Pump | Used to extract water from the storage (rather than allow discharge). This may be used where the location of the demand is at a higher elevation compared with the storage, or to extract water from the dead storage and which is below other release structures | Level vs maximum water pumped |
Un-gated Spillway | A structure that controls the spill of water from a storage. It is designed to spill water once the storage is full and ensures that any spills are controlled. This prevents the storage from failing. Un-gated spillway rating tables are used to populate the Discharge table. The full storage level should have a zero discharge and the discharge depth needs to be calculated as the height above the full storage level. | Level vs discharge |
Valve | Used to release water via a pipe. Valves normally release environmental flows from storages. The valve rating table is used to control the volume of water released via this method. | Level vs maximum discharge |
Table 5. Storage node, Seepage (data file format)
Row | Column (comma-separated) | |
---|---|---|
1 | 2 | |
1 | Level (m) | Seepage (mm/d) |
2 | 0 | 0 |
3 | level | seepage |
Figure 9. Storage node, Outlets
Outlet Path Priorities
Priorities are only available if the Backward Euler method is chosen as the storage processing method. You can configure the priority given for releasing water from the storage's outlet paths by toggling on Enable Prioritisation of Outlet Paths and then entering priorities for each outlet path into the table (Figure 10). These priorities only take effect when there is insufficient storage capacity to meet all orders. In this case, all the demands at priority 1 are met first, then priority 2 demands, and so on.
Figure 10 Storage node, outlet path priorities
Rainfall
Rain falling directly over the storage reservoir can be input as a time series, using the Function Editor (such as adding a daily or monthly pattern), or linking to the output of another scenario, as shown in Figure 11. It is assumed to occur only on the surface area. Daily rainfall data near the storage is required and can be obtained from managing agencies, SILO or the Bureau of Meteorology.
Figure 11. Storage node, Rainfall
Evaporation
Evaporation directly from the storage surface can be input as a single value, as a time series or a function (Figure 12).
Figure 12. Storage node, Evaporation
Seepage
Water can infiltrate into the ground where the soil is not fully saturated. Where groundwater intercepts the surface, water can seep from groundwater into the storage, where infiltration can occur wherever there is a ground/water interface. Seepage (Figure 13) is specified using a piecewise linear relationship between storage level and seepage velocity. Note that you can specify positive values to represent water seeping from the storage and entering groundwater. The data file format for seepage is shown in Table 5.
Figure 13. Storage node, Seepage
Ordering at storages
The following two options are mutually exclusive. If one is enabled, the other is greyed out (Figure 13).
If Pass Orders Straight Through Storage is enabled (Figure 14), then the storage level for forecasting seepage and evaporation losses is:
- For weirs min (current level, Maximum Operating Level); and
- For storages min (current level, Full Supply Level).
Otherwise min (current level, Operating Target).
If Do Not Order From Upstream Storages is enabled, then the storage acts as if it has no storage nodes upstream of it for the purposes of ordering. This is useful when a storage has the capacity to fulfill all downstream requirements, and will not need to order water from upstream storages.
Water Forecast To Arrive During Order Travel Time lets this storage know the volume of water in the storage routing upstream from it .Turn forecasting off by setting the Water Forecast value to 0.
When this storage orders water from an upstream storage, there is travel time if there is water in transit. In the field the user can enter the volume of water that is in transit, and the volume of water is expected to arrive at this downstream storage during the travel time. This can include any releases from upstream storage and inflows. This feature allows the system to determine if any additional water needs to be ordered.
When Target Refill Rate Factor is enabled, it allows the shortfall volume to have a factor applied, that allows the storage to meet the volume progressively over a number of days rather than in one day.
NetLP Inactive Storage Volume is specific to NetLP ordering. It does not apply to Rules-based ordering. In NetLP ordering, this volume would typically be selected by the user to represent the dead storage volume, which Source determines as the volume of the reservoir below the invert or sill of the lowest outlet. In normal usage the user can set this volume to be dead storage volume as determined above. An advanced modeller may however select to use a different value - for example, a higher volume which would provide an additional source of supply at high cost. This volume does not influence Resource Assessment calculations.
Hint: This volume is provided with a specific very high cost incentive - i.e., in general this will be the first demand to be supplied in any timestep, subject to physical constraints. Advanced users may override this with a Parallel Arcs node.
Figure 14. Storage Node, Ordering
Ownership in storages
In ownership, observed values may not be available for every time-step. Additionally, observed values cannot include negative numbers, as ownership of storages can potentially result in negative shares when you support borrow and payback. Refer to Figure 15 for details and Ownership for more information.
Figure 15. Storage node (Ownership)
Temporary increase in share of storage capacity ownership
A new feature which enables any one of the owners to increase its storage capacity share can be enabled by using the 'Use Airspace' option under 'Internal Spilling' as shown in Figure 16. If there is airspace available in the storage and by selecting the 'Use Airspace' option, the owner (cannot select more than one owner) can exceed its storage capacity share instead of internally spilling, as long it does not impact other users. In Figure 16, the owner 'Blue' can use the airspace to exceed its capacity temporarily, while 'Red' and 'Yellow' internally spill as normal. Blue would not internally spill to other owners and also cannot receive spills from others. Refer to Ownership for more details.
Figure 16. Internal Spilling with 'Use Airspace' option