Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Storages are used to hold water for varying periods. They include dams and other reservoirs; weir pools; urban detention, retention or retarding basins; and natural lakes. In regulated river systems, storages control the supply of water to consumptive and non-consumptive users, and may also provide flood mitigation and environmental services. Typically, inflows to storages include stream flow from upstream catchments, rainfall over the storage surface area, recharge from groundwater, and runoff from the local catchment surrounding the storage. Outflows from storages include controlled releases and spills. Losses from storages include evaporation from the storage surface area and seepage to groundwater.

...

The following explains how the mass balance equation (Equation 9). As all of the functions are piecewise-linear we can construct a table with entries for each unique value of volume that appears in the functions:

 V1…Vn

Image Added

 

The corresponding values of the min/max release, seepage and area are then calculated by interpolating the user specified values.

Table 1. Example of pre-computed solution table

Image Modified

 

...


...

ϵ1…ϵn

...

These values stay the same for the length of the model run and can then be used at each time step. Using the current value of of Ordersj and  and Edepth we  we can calculate the corresponding value of ϵ for ε for each table row (V):

 

Image Added

At which point storage routing becomes a table lookup and interpolation exercise where we find the value of V that give a ϵ value of zero. Obviously we don't have to calculate the entire table but just use a standard search technique.

...

There are a number of special cases where the above method won't will not work.Image Removed Anchor_Ref395687335_Ref395687335


Figure 1 Maximum and minimum release curves for a single outlet path
Image Added

Figure 1 shows the minimum and maximum possible releases for a single outlet path with the current order for this path. Using the table search approach described above the resulting curve will be ABCD as these are the points calculated in the table. However the true curve is AEFD meaning that solutions in the range V1 to V2 and V3 to V4 will be incorrect. To avoid this we would check to see if any of the outlet's minimum or maximum curves were intercepted by their orders and if they did we would continue the table search by creating virtual entries (V1V1', V2V2', …).

While searching the table we can end up with two situations:

  1. We get to V = 0 and ϵ > zero ε > 0
  2. We get to Vn and ϵ < zero and ε < 0

The first situation can happen when the storage has a flat bottom (ie: the storage can dry out due to evaporation but there is not enough water to meet all of the evaporative requirements). In this case the solution is a storage volume of zero and the reported evaporation has to scaled back to match.
The second situation is due to the user supplied relationship not covering a large enough range of volumes. Provided that the orders are not out-ranging the table then a solution can be obtained by extrapolating the last segment of each of the relationships.

...

  1. Solving the current time step using the above method.
  2. Check to see if the resulting reservoir volume is outside the range allowed (otherwise the solution from step 1 is acceptable and we can stop).
  3. If it is outside of the range allowed then see if it is possible to get back into the acceptable range by either:
    1. If initial solution is below the minimum target then recompute the time step assuming that there are no downstream orders
    2. If initial solution is above the maximum target then recompute the time step assuming that the downstream orders are the greater of the current order and the maximum flow rate allowed on each outlet path for releasing above target water (the safe release).
  4. If the resulting answer from step 3 is still outside the allowed range the result obtained at step 3 becomes the final answer for this time step.
  5. Compute a total release from: TotRelease=Starget-St-1+In-Edepth×fareaStarget+fseepStarget Where Starget is the appropriate minimum or maximum target volume (are you trying to cut back releases to stop the reservoir dropping below the minimum or increasing releases to stop it going over the maximum).
  6. To calculate the corresponding release rates for the solution obtained at step 5 we have to scale up or down the orders so when we evaluate equation (5) we'll get the required results. The two cases are:
    1. If the initial solution (step 1) fell below the minimum target volume then we are cutting back and Starget at step 5 was Smin. We cut back each path in proportion to how far their order is above fjminSmin.
      1. Calculate the sum of current demands in excess of the path minimum capacity (limiting to the maximum outlet capacity at the minimum target volume): TotD=j=1mmaxminfjmaxSmin,Orderj-fjminSmin,0
      2. Calculate the release cutback required: cut=TotD-TotRelease-j=1mfjminSmin
      3. Scale back the orders: Orderj=minfj Anchor_GoBack_GoBackmaxSminminfjmaxSmin,Orderj-maxOrderj-fjminSmin,0TotDcut
    2. If the initial solution (step 1) fell above the maximum target volume then we are ramping up the releases and Starget at step 5 was Smax. We add onto each path in proportion to how much remaining release capacity each path has.
      1. Calculate maximum we can currently send down each path: MaxQj=minmaxOrderj,AllowedQj,fjmaxSmax Where AllowedQj is the maximum permitted release down path j for above target water.
      2. the flow that's already going to go down path j: Dj=minmaxOrderj,fjminSmax,MaxQj
      3. the remaining release capacity: SurpQj=MaxQj-Dj
      4. The required increase in release is then: Ramp= TotRelease-j=1mDj
      5. Modified orders are then calculated from: Orderj=Dj+SurpQjj=1mSurpQjRamp