Ordering priorities allow users in Source to specify how shortfalls are prioritised between different demands in Source. Without a priority system enabled, Source will shortfall all demands equally proportionally within the model. The priority ordering system addresses situations encountered in water resource models such as the following:
...
Version
Source full version 4.1.19
Assumptions and Dependencies
...
The priority array is calculated during the order phase for each elements' minimum order travel time.
The priority array is kept for order times (0...min order time) at all elements.
...
Anchor | ||||
---|---|---|---|---|
|
Scenario | Allow Order | Extract Water | Result |
1 | True | True | Standard case |
2 | True | False | Priorities have no effect on the flow phase. |
3 | False | True | Water will be extracted independently of the priorities |
4 | False | False | No effect |
Flow Phase
In the flow phase the shortfall priorities will inform the supply point on the volume of water it is able to extract. It tries to ensure that orders of higher priority are maintained and equalises access at the supply point's priority level.
Transfer of Ownership
The transfer of ownership has two options regarding ordering priorities:
- Maintain downstream ratio
- Override ratios and assign to one priority level (re-prioritise orders - see user guide).
...
Note: Priority ordering will override ownership if they both turned on in a system. When there is not enough water in the system, borrow and payback will work to make sure higher priority demand get water prior to lower priority demand. |
Storage
Three options at a storage node that have an impact on the prioritisation of orders
Gauged Release - Gauged release has a higher priority than the highest priority order in the system.
Pass Orders Through – simply sum the volumes at each priority level across all outlets and divide by total volume being passed up all outlets to get proportions.
sumOutletOrder = Sum the total order from all outlets
OutletOrders(p) += dsOrder(p) * OutletOrder
nPriority(p) = OutletOrders(p)/ sumOutletOrder
The priority of the upstream orders will be the same as that of the downstream orders.
Re-regulating the orders
- Downstream orders
- Storage losses
- Different upstream min order time
- Operational targets being met
...
- Supply priority ratio = 1.0 at priority level
- operational priority ratio = 0 at priority level
...
(default)
If pass orders through is not selected, the default behaviour is for the storage to re-regulate the flows. As a result, orders will be passed to upstream storages under two priorities, supply priority (specified by the user), and operational priority, which is always the lowest priority. The supply priority order is the minimum of the upstream and downstream orders at the storage. The operational-priority order is the greater of the upstream order minus the downstream order, or zero.
Maximum Order
The maximum order can truncate orders being passed upstream to a specified value. If this is the case, we try and preserve the highest priority volume of water being passed upstream. Therefore we need to adjust the ratios to reflect the change.
- If MaxOrder < dsOrder Then
- Loop on priorities p = 0 to n
- sumDSPriorityG = sum of dsPriority(n) where n < p
- If(sumDSPriorityG*dsOrder>MaxOrder,0,Min(MaxOrder - sumDSPriorityG*dsOrder, dsPriority(p)*dsOrder/MaxOrder))
- If MaxOrder > dsOrder Then…. For all p nPriority(p) = dsPriority(p)
...
- Just split the ratios upstream
...
- Loop on priorities p = 0 to n
- nPriority(p) = (dsMainPriority(p)*dsMainOrder + dsEffPriority(p)*dsEffOrder)/( dsMainOrder+ dsEffOrder)
Bulk Licensing
??This is done by removing the lower priority orders until the total is less the maximum specified.
Confluence
The confluence maintains the ratio of priorities up both branches.
Bulk Licensing
User specifies priority.