Overview
Description and rationale
...
Automatically included with the full version of Source.
Structure & processes
Theory
Introduction
The Murray Darling Basin Agreementenables the operators in the River Murray to exchange the ownership of volumes of water between the states of New South Wales (NSW) and Victoria when the lending state has water surplus to its requirements. An example of this is when state owned tributary inflows are greater than expected. These excess tributary flows result in a state’s share of water in the river being surplus to that required to meet to meet its ordered requirements. Where possible, this excess water is utilised by the other state (owner) and the amount of water that needs to be released from storage is reduced. The water used by the other state (owner) is termed a borrow and is reconciled against the state’s water share. In the case of the River Murray, payback and account balances are reconciled at Lake Victoria.
...
Anchor | ||||
---|---|---|---|---|
|
Table 1. Assumptions and constraints
No | Assumption/constraint |
---|---|
1 | An ownership system must have a global borrow and payback system. |
2 | An ownership system’s global borrow and payback distribution hierarchy applies in all storages where there is no local borrow and payback system. |
3 | Borrow and payback systems only operate when ownership is enabled. |
4 | A borrow can occur anywhere in an ownership system when one or more owners has insufficient water to meet requirements. |
5 | When a global borrow and payback system is reconciled/paid back at a storage, the payback storage must maintain a local borrow and payback system. |
6 | For payback at a storage, owners are checked to see if they have to forfeit lending credit if they do not have enough airspace available. This is to ensure that the owner has enough capacity to be repaid. |
7 | When a global borrow and payback system is reconciled/paid back at a storage, all owners in the system must payback water at the same storage. |
8 | Borrow and payback accounting will occur prior to resource assessment. Resource assessment and accounting must consider the total sum of all borrows in the model, and thus includes:
|
9 | The borrow network for the global borrow and payback system must be complete. That is, there must be a connection between each owner and every other owner (the connection can be made at any priority level). |
10 | The borrow network for sharing a system constraint must be complete. An operator is not going to refuse service to an owner if there is surplus capacity available to use to serve them. |
Definitions
Airspace | Difference between the volume in a storage (reservoir) and its full supply level. |
Borrow | In systems with multiple owners, losses and gains are shared by defined ratios. In such cases it is possible for different owners to have surpluses and deficits in the use of these losses and gains. For efficient river operations these surpluses can be shared to owners with deficits. The borrow records the trading of these fluxes from owners with surpluses to owners with deficit. |
Payback | This is the reverse of borrow; i.e. when the water that was lent to a particular owner is paid back by the borrower. |
Borrow Network or Distribution System | System that prioritises the sharing of each owner’s surplus water to other owners with a deficit/insufficient water to meet their requirements. |
Unallocated water | In the flow distribution phase, all water is either allocated (previously ordered) or unallocated. Unallocated water is not associated with a demand node or a non-consumptive requirement. Water that was ordered but not extracted on passing the node that generated the order, becomes unallocated water. |
Other definitions can be found in the eWater glossary.
...
The structure of borrow and payback systems is illustrated in Figures 1 and 2, below.
Figure 1. Entity relationship diagram: Borrow and payback
Figure 2: Example of storage allocation to a scenario's borrow and payback systems
Figure 2 illustrates how each storage that falls within a scenario’s ownership system can only be a member of one borrow and payback system, except that where there is reconciliation/payback at a storage for the global system, this storage must also be in a local system.
...
Table 2. Variables and entities: general
Symbol | Purpose/Description | Units |
---|---|---|
Allocation(RAS) | Allocation for resource assessment system RAS | volume |
BPSystem BPSystem(RAS) BPSystem(ownersys) | Borrow and payback system. See Table 3 for variables and methods specific to this entity. BPSystem(RAS) is used to manage the same water resources as resource assessment system RAS BPSystem(ownersys) belongs to ownership system ownersys. | n/a |
nBPSystem(RAS) | Number of borrow and payback systems that are used to manage the same water as resource assessment system RAS | n/a |
nBPSystem(ownersys) | Number of borrow and payback systems that belong to ownership system ownersys. | n/a |
component | Model component index. | n/a |
nowner | Number of owners in the ownership system the borrow-payback system belongs to. | n/a |
nowner(pl) | Number of owners that have a borrow & payback sharing relationship at priority level pl. | n/a |
n_other_owner | Number of owners, other than the ‘current’ one, a total is being calculated for. | n/a |
n_other_owner(pl) | Number of owners, other than the ‘current’ one, a total is being calculated for that have a borrow & payback sharing relationship at priority level pl. | n/a |
ownersys | An ownership system | n/a |
owner | Current owner in system | n/a |
owner(pl) | Owner that has a borrow & payback sharing relationship at priority level pl. | n/a |
other_owner | Owner that is not owner | n/a |
other_owner(pl) | Owner that is not but has a borrow and payback sharing relationship with at priority level pl. | n/a |
RAS | Resource assessment system | n/a |
pl | Priority level for sharing | n/a |
t | Time-step index | n/a |
The following variables relate to a Borrow and Payback system:
Table 3. Borrow and Payback System Variables
Variable or method | Purpose/description | Units |
---|---|---|
*BorrowBalance(t, owner) | Owner’s cumulative borrow balance at time step – equals the sum for all other owners: NetBorrow(t, owner, other_owner) | volume |
*ComponentBorrowBalance(t, component, owner) | Owner’s time step t borrow balance for borrowing done at component. | volume |
*ComponentNetBorrow(t, component, owner, other_owner) | Net borrow between owner and other_owner for time step t, performed at model component - +ve value indicates owner does the borrowing, -ve value indicates owner does the lending | volume |
*NetBorrow(t, owner, other_owner) | Cumulative net borrow between owner and other_owner at time step | volume |
Share(pl, owner) | Flag (Yes or No) specified by modeller indicating whether an owner, owner, shares with other owners at priority level pl. For any two owners, owner and other_owner, they can share at priority level pl if Share(pl, owner) = Yes and Share(pl, other_owner) = Yes. | n/a |
Connected(owner, other_owner) | Flag (Yes or No) indicating whether two owners, owner and other_owner, are able to share using the configured distribution hierarchy, and is derived from Share(pl, owner). These flags are set up and used for validating the distribution hierarchy used in a global borrow and payback system. | n/a |
*Recorded values
The following variables are used by the Borrow method in the order and/or flow phases:
Table 4. Variables & entities: Borrow Method
Variable or method | Purpose/description | Units |
---|---|---|
Airspace(owner) | Owner’s share of the airspace in the payback storage for BPSystem in the current time step (input parameter). Airspace is the difference between the volume in storage and the full supply volume – each owner has a configured fixed percentage of this. | volume |
Borrow(owner, other_owner) | Amount owner borrows from other_owner in this instance of sharing (calculated). This may be limited by airspace if it is within a storage. | n/a |
component | Model component accessing the borrow method (input parameter). | n/a |
BPSystem | Borrow system to use for the current round of sharing (input parameter). | n/a |
Deficit(owner) | Deficit volume/capacity/flux per owner in the current time step (input parameter). | n/a |
OwnerBorrowed(owner) | Total each owner borrowed from all other owners in this instance of sharing (output parameter). | n/a |
OwnerLent(owner) | Total each owner lent to all other owners in this instance of sharing (output parameter). | n/a |
Surplus(owner) | Surplus order/flux/capacity for owner in the current time step (input parameter). | n/a |
TotalDeficit(pl) | Total of owner deficits at priority level pl (calculated). | n/a |
TotalSurplus(pl) | Total of all owner surpluses remaining to be shared to other owners with a deficit at priority level pl (calculated). | n/a |
UpdateAccounts | Input parameter that indicates whether borrow and payback system accounts should be updated. | n/a |
The following variables are used by the Payback method at a Storage Node in the flow phase:
Table 5. Variables & entities: Payback Method
Variable or method | Purpose/description | Units |
---|---|---|
Airspace(owner) | Owner’s share of the airspace in the current time step (input and output parameter). Airspace is the difference between the volume in storage and the full supply volume – each owner has a configured fixed percentage of this. | volume |
BPSystem | System to perform paybacks for (input parameter). This must be associated with the current storage. | n/a |
CanPayback(owner, pl) | Maximum volume of debt owner can pay back to lending owners that share at priority level pl in BPSystem. This is limited by the owner’s storage share. (Calculated) | volume |
CanReceive(owner, pl) | Maximum volume owner can receive this time step as payback for loans to other owners that share at priority level pl in BPSystem. This is limited by the owner’s airspace. (Calculated) | volume |
component | Model component accessing the payback method (input parameter). | n/a |
PaidBack(owner, pl) | Volume of debt owner paid back to all lending owners that share at priority level pl in BPSystem. (Calculated) | volume |
Received(owner, pl) | Volume owner received as payback for loans to other owners that share at priority level pl in BPSystem. (Calculated) | volume |
TotalCanPayback(pl) | Total volume all debtor owners that share at priority level pl in BPSystem can pay back lending owners using their storage share. (Calculated) | volume |
TotalCanReceive(pl) | Total volume all lending owners that share at priority level pl in BPSystem can receive as payback from debtor owners into their airspace. (Calculated) | volume |
Payback(owner, other_owner, pl) | The volume an owner paid back to the other_owner for sharing at priority level pl (Calculated). | volume |
Storage(owner) | Owner’s share of the storage volume in the current time step (input and output parameter). | volume |
Model Configuration Phase
...
Example global system distribution hierarchy (where every owner can share with every other, but not necessarily at all priority levels):
Owners | |||
Priority | A | B | C |
1 | Yes | Yes | No |
2 | No | Yes | Yes |
3 | Yes | No | Yes |
In this example, with owners A, B and C, the connections required are AB, AC, BC. AB applies at priority level 1, AC at priority level 3, and BC at priority level 2.
...
An initial net borrow value is configured for each owner / other_owner combination in each borrow and payback system: BPSystemBorrow(0, owner, other_owner). A negative value indicates that an owner owes other_owner, a positive value indicates that the other_owner owes the owner. During the configuration phase, Source calculates each owner’s initial borrow balance, and ensures the total of all these balances adds up to zero, i.e.:
Equation 1 |
---|
Equation 2 |
---|
Model Initialisation Phase
...
Borrow and payback accounts are cumulative, so it is necessary to carry over borrow and payback totals from the previous time step to the next one. This is done for each borrow and payback system being modelled:
Equation 3 |
---|
The accounts for each individual model component that falls within a given borrow and payback system boundary are NOT cumulative, so these start at zero every time step:
Equation 4 |
---|
Equation 5 |
---|
Each model component uses the methods described in the following sections to update the relevant borrow and payback system’s accounts in the flow phase for any borrow/lending that occurs at the model component.
...
Start with zero borrow between all owners:
Equation 6 If the borrow and payback system BPSystem is a local system and this method is used in the flow phase to lend water (UpdateAccounts = Yes), limit the surplus amount each owner can lend to their airspace (to ensure payback is possible).
Equation 7 (This should not be done for global systems, as it is possible for ownership to get out of synchronisation at different points in the system, so temporary incompatibility between airspace and balances must be allowed to occur)
Share surpluses to owner’s with a deficit. Surpluses are shared to owners that participate in sharing at the same priority level and have a deficit in proportion to their deficit. Where surpluses exceed deficits, the volume of the owner’s surplus distributed to other owners is in proportion to their share of the total surplus:
For each priority level pl represented in the configured distribution table – PSystem.Share(pl, owner), do the following:Calculate the total surplus and deficit remaining to be shared at the priority level (this is the sum for all owners sharing at the priority level):
Equation 8 Equation 9 If there is no surplus and/or deficit (TotalSurplus(pl) = 0 or TotalDeficit(pl)=0), sharing at the priority level is finished, so skip to the next priority level.
For each owner and other owner that share at this priority level pl (Share(pl, owner) = yes and Share(pl, other owner) = yes), calculate the volume owner can borrow from the other owner at the priority level:
Equation 10 Update the surpluses & deficits left over for sharing at the next priority level:
Equation 11 Equation 12
Find the owner’s borrow and lending totals to return to the relevant model component:
Equation 13 Equation 14 If the UpdateAccounts flag is set,
Update the reported borrow accounts for the current component and the borrow and payback system as a whole:Equation 15 Equation 16 Equation 17 Equation 18
Payback at a Storage (Flow Phase only)
...
In this phase, allocation of each owner’s resource assessment systems (RAS) must be adjusted for the net borrow between owners recorded in borrow and payback system accounts. Each RAS will belong to an ownership system, that has a global borrow and payback system. A RAS may also be associated with one or more local borrow and payback systems (if it is used to manage storages). The allocation of each RAS should be adjusted as follows:
Equation 19 |
---|
More details regarding the way resource assessment systems are configured and allocate water are given in Resource Assessment - SRG and its sub-pages.
...
Table 6. Borrow & Payback System Parameters
Parameter name | Parameter Description | Unit type | No. of values | Allowable values & validation rules | Default Value(s) |
---|---|---|---|---|---|
B&P Storage Name | Name of a storage that is a member of the current B&P system | n/a | Local system: one Global system: multiple | Global B&P: Must be a storage in the current scenario | Global B&P: One row for each storage in the scenario that is not in a local B&P system. Local B&P: None |
B&P System Name | Name of borrow & payback system | n/a | One | Any unique name | <type> Borrow & Payback <seq no.> |
B&P System Type | Type of borrow & payback system | n/a | One | Read only | First one for ownership system: Global Subsequent: Local |
B&P Distribution System Name | Name of the distribution system used for a borrow & payback system. | n/a | One | ***Name of an existing Distribution System. | 'Default' |
Initial Borrow | Initial borrow between each Owner - Other Owner at the start of the scenario run. Negative value indicates other owner has borrowed from this owner. | volume | Multiple: 2 dimensions for each time step | Real ≥ 0 Sum of initial borrow for all owner-owner combinations must be zero. | 0 |
Owner Name | Name of an owner in the current ownership systems | n/a | Multiple (each owner) | Read only | Owners in ownership system |
Other Owner Name other_owner | Name of another owner in the ownership system (that is not Owner Name) | n/a | Multiple (each owner) | Read only | Owners in ownership system |
Payback Storage Name | Storage where debts in the borrow-payback system are paid back/reconciled. | n/a | one | Local system: Read Only Global system: Name of any local borrow & payback system’s storage (within the ownership system) | Local system: B&P Storage Name Global system: None |
Payback Type (Phase 2) | Type of payback: System or Storage based. | n/a | one | Local system: Read Only Global system: System, Storage | Local system: Storage Global system: System |
Table 7. Distribution System Parameters
Parameter name | Parameter Description | Unit type | No. of values | Allowable values & validation rules | Default Value(s) |
---|---|---|---|---|---|
Distribution System Name | Name of the distribution system | n/a | One | Any unique name | Distribution <seq> |
Priority pl | Priority for sharing surpluses between owners. | n/a | Multiple | Integer > 0 | Row number |
Owner Name | Name of an owner in the current ownership system | n/a | Multiple (each owner) | Read only | Owners in ownership system |
Share? Share(pl, owner) | Flag indicating whether owner shares at priority level. | n/a | Multiple | Yes or no | Yes |
Table 8. For Storages: Additional Parameter for Borrow and Payback Systems
Parameter name | Parameter Description | Unit type | No. of values | Allowable values & validation rules | Default Value(s) |
---|---|---|---|---|---|
Local B&P System Name | Name of the local borrow and payback system associated with this storage | n/a | 1 | Must be the name of an existing local borrow and payback system | none |
Output data
Table 9. Recorded parameters (Borrow & Payback)
Model Element | Parameter | Units | Methodology variable | Frequency | Display format |
---|---|---|---|---|---|
Borrow & Payback System – model component | Time step Borrow | volume | ComponentNetBorrow(t, component, owner, other_owner) | Time-step | Table of owner-other owner values for a selected time step. |
volume | ComponentBorrowBalance(t, component, owner, other_owner) | Time-step | |||
Borrow & Payback System | Borrow | volume | NetBorrow(t, owner, other_owner) | Time-step | Time Series table and Graph/chart – see examples below. |
volume | BorrowBalance(t, owner, other_owner) | Time-step | |||
Ownership System | Borrow | volume | Time-step | ||
volume | Time-step |
Example Model Component Borrow & Payback Report Table
...
Time Step: 10 (30/1/2010)
Other owners | ||||
Owner | NSW | Victoria | QLD | Owner summary |
NSW | 100 | 0 | 100 | |
Victoria | -100 | 0 | -100 | |
QLD | 0 | 0 | 0 | |
All owners | 0 |
Example Borrow & Payback System Report Views Table
Murray Global Borrow & Payback System
Other owners | ||||
Owner | NSW | Victoria | QLD | Owner summary |
NSW | View time series | View time series | View time series | |
Victoria | View time series | View time series | View time series | |
QLD | View time series | View time series | View time series | |
All owners | View time series |
When a ‘View Time Series’ function/link is selected from an ‘Other Owners’ column, a window allows borrow and payback data for the relevant owner-other owner combination to be displayed as follows:
Murray Global Borrow & Payback: NSW-Vic Net Borrow
Time-step | NSW-Vic Net Borrow |
---|---|
1 | -20 |
2 | -15 |
3 | 10 |
4 | 20 |
5 | 5 |
6 | -7 |
7 | 0 |
8 | 30 |
9 | 10 |
Min | 20 |
Max | 30 |
Average | 3.67 |
When a ‘View Time Series’ function/link is selected in the ‘Owner Summary’ column, a window allows a summary of borrow and payback data for the relevant owner to be displayed as follows:
Murray Global Borrow & Payback: NSW Balance
Time-step | NSW-Vic Net Borrow | NSW-QLD Net Borrow |
---|---|---|
1 | -20 | -15 |
2 | -15 | -7 |
3 | 10 | 0 |
4 | 20 | 5 |
5 | 5 | 8 |
6 | -7 | -3 |
7 | 0 | 0 |
8 | 30 | 10 |
9 | 10 | 20 |
Min | -20 | -15 |
Max | 30 | 20 |
Average | 3.67 | 2.00 |
When the ‘View Time Series’ function/link is selected in the ‘All Owners’ row, a window allows borrow and payback totals for all owners to be displayed as follows:
Murray Global Borrow & Payback: All Owner Balances
Time-step | NSW Borrow Balance | Vic Borrow Balance | QLD Borrow Balance |
---|---|---|---|
1 | -35 | 15 | 20 |
2 | -22 | 15 | 7 |
3 | 10 | -15 | 5 |
4 | 25 | -30 | 5 |
5 | 13 | -8 | -5 |
6 | -10 | 7 | 3 |
7 | 0 | 0 | 0 |
8 | 40 | -45 | 5 |
9 | 30 | -18 | -12 |
Min | -35 | -45 | -12 |
Max | 40 | 15 | 20 |
Average | 5.67 | -8.78 | 3.11 |