Note: This is documentation for version 5.10 of Source. For a different version of Source, select the relevant space by using the Spaces menu in the toolbar above

Gauge node - SRG

A Gauge node represents a location in a river network where either:

  • There is measured flow and/or constituent data available that can be compared to modelled flows or constituent concentrations, or
  • Modelled outputs (flows or constituents) need to be recorded and then made available for viewing and comparison.

A rating curve can be associated with a gauge node to water levels to be determined from flows. It is also possible to compare forecast recession with actual recessions at gauge nodes if measured data are available.

Gauge nodes can be used as part of model calibration and verification, by comparing observed and predicted outputs (flows and constituents).

Gauge nodes are not used to input data for subsequent use in a Source model. Flow and constituent data are input via inflow nodes or via an unaccounted difference node. Data at gauge nodes are used for recording and comparison only.

A gauge node can be configured as an unaccounted difference node, which is described in more detail in the Rules-Based Ordering - SRG entry. At an unaccounted difference node:

  • the difference between observed and modelled flow and constituents can be calculated and reported by the model.
  • The input observed gauge data (flow and/or constituents) replaces modelled data (flow and /or constituents).

Scale

The Gauge model is implemented at the site-scale where a gauge is physically located within the catchment. The temporal scale is usually determined by the time-step of the measured data. Common temporal scales are daily or monthly.

Principal developer

eWaterForecasting (Rules-based ordering) - SRG

Scientific provenance

Gauge node was introduced in Source Rivers, WaterCAST and subsequently, Source Catchments.

Version

Source version 2.17

Dependencies

The gauge node must be part of a node link network.

Availability

Gauge is automatically installed with Source.

Structure and processes

A gauge node either marks:

  • a point in a river where there is a physical gauge where measurements of flow or constituents are made; or
  • a logical point in a river model where you need to be able to compare and view modeled outputs (flow or constituents).

If time-series data for the physical gauge location is available, the data can be loaded into the gauge node. Alternatively, a time series from another scenario can be loaded. If necessary, a rating curve can be specified and used to convert gauge measurements (water levels) to flow.

The output for the gauge node allows comparison between the loaded flow or constituent data and modeled flow or constituent data at a point in the network. This can be used to assist model calibration and validation when observed flow or constituents (from a physical gauge) and simulated flow or constituents are compared.

Ownership

When ownership is enabled, the unaccounted difference is shared between owners using the using the sharing rules specified for the ownership system that is specified for the gauge node.

The user can specify each owner’s share of the gauge node input (when the gauge node is operating as an unaccounted difference node) as a percentage, time series or function. The user can also specify that at a gauge node, ownership remains as is.

Unaccounted difference

The unaccounted difference is calculated as a time series of differences between measured and modelled flows.

Rating curve

A rating curve relates water level (stage or gauge reading), discharge, and surface width. Data is entered as a table directly into Source or as a csv file. Linear interpolation is used between the specified values.

Determination of rating curves is governed by an Australian Standard AS 3778.2.3 - Measurement of water flow in open channels - Part 2.3: General determination of the stage discharge relation (2001). It can be a deceptively complex issue, see for example Fenton and Keller (2001).

Forecast

The modeller can forecast unaccounted difference for flow and constituents at an unaccounted difference node. Refer to Ordering for details.

Definition of variables

Variables are defined in Table 1.

Table 1. Definition of Variables
SystemPurpose/DescriptionUnitsModel Phase

cc

Index of a conservative constituent

n/a

Initialisation, Flow

Deficit(o)

Amount of order capacity (order phase) or flow (flow phase) that owner o needs to borrow from other owners.

volume

Ordering, Flow

dt

Length of the model time-step

time

Initialisation, Flow

FlowLoss

Difference between total modelled inflow and modelled outflow volume at the gauge in the current time-step.

volume

Flow

FlowLoss(o)

Difference between owner o’s modelled inflow volume and their modelled outflow volume at the gauge in the current time-step.

volume

Flow

Inflow

Volume of flow entering the gauge from upstream in the current time-step (as calculated by the model)

volume

Flow

InflowConc(cc)

Concentration of conservative constituent cc in flow entering the gauge from upstream in the current time-step (as calculated by the model). The calculation of this variable is described in the Marker routing (Particle tracking) - SRG.

Mass/ volume

Flow

InflowMass(cc)

Mass of conservative constituent cc in flow entering the gauge from upstream in the current time-step (as calculated by the model). The calculation of this variable is described in the Marker routing (Particle tracking) - SRG.

Mass

Flow

Inflow(o)

Volume of owner o’s share of the flow entering the gauge from upstream in the current time-step (as calculated by the model).

volume

Flow

InflowRate

Rate of flow entering the gauge from upstream in the current time-step (as calculated by the model).

Volume/ time

Flow

InflowRate(o)

Rate of owner o’s share of the flow entering the gauge from upstream in the current time-step (as calculated by the model).

Volume/ time

Flow

j

A number of time-steps - added to current time-step t to reference a future time-step in which an order is due to be delivered at the gauge.

n/a

Flow

MassLoss(cc)

Difference between inflow and outflow mass of conservative constituent cc at the gauge in the current time-step.

Mass

Flow

no

Number of owners at the gauge node.

n/a

Initialisation, Ordering Flow

o

Index of an owner.

n/a

Initialisation, Ordering, Flow

ObservedConc(cc)

Observed concentration of conservative constituent cc for the current time-step - which is either the value returned from the configured function fHistConc(cc,t), or if t is not covered by the function, inflow concentration minus forecast UD.

Mass/ volume

Flow

ObservedFlowRate

Observed flow rate for the current time-step - which is either the value returned from the configured function fhistFlowRate(cc,t), or if t is not covered by the function, inflow rate minus forecast UD.

Volume/ time

Flow

ObservedMass(cc)

Observed mass of conservative constituent cc for the current time-step - which is the observed concentration multiplied by the outflow rate.

Mass

Flow

OrderDS(o,t+j)

Owner o‘s ordered volume to be delivered to the gauge node for future time-step t+j, before adjustments for UD have been made (ie. the order volume passed from downstream for that time-step).

Volume

Ordering

OrderUS(o,t+j)

Owner o‘s ordered volume to be delivered to the gauge node future time-step t+j, which has been adjusted for UD. This is the order volume to be passed upstream for that time-step.

Volume

Ordering

Outflow

Volume of flow leaving the gauge in the current time-step.

volume

Flow

OutflowConc(cc)

Concentration of conservative constituent cc in flow leaving the gauge in the current time-step.

Mass/ volume

Flow

OutflowMass(cc)

Mass of conservative constituent cc in flow leaving the gauge in the current time-step.

Mass

Flow

Outflow(o)

Volume of owner o’s share of the flow leaving the gauge in the current time-step.

volume

Flow

OutflowRate

Rate of flow leaving the gauge in the current time-step

Volume/ time

Flow

OutflowRate(o)

Rate of owner o’s share of the flow leaving the gauge from upstream in the current time-step

Volume/ time

Flow

OwnerBorrowed(o)

Amount of order (order phase) or flow (flow phase) that owner o borrowed from other owners

Volume

Ordering, Flow

OwnerLent(o)

Amount of order (order phase) or flow (flow phase) that owner o lent to other owners

Volume

Ordering, Flow

SetFlow

Option as to whether to set downstream outflow rate to the observed flow rate at the gauge node.

n/a

Initialisation

SetOwnership

Option as to whether to change downstream flow ownership at the gauge node.

n/a

Initialisation

ShareRatio(o)

Owner o’s share of orders (ordering phase), outflow or observed UD (flow phase) at the gauge in the current time-step.

n/a

Ordering, Flow

Surplus(o)

Amount of order capacity (order phase) or flow (flow phase) that owner o can lend to other owners.

Volume

Ordering, Flow

system.owner%

An owner’s configured share of lateral flows (losses and gains) for all links in the gauge’s ownership system.

%

Initialisation, Flow

t

Time-step index, usually used to represent the current time-step.

n/a

Flow

UDConcForecast(cc,t+j)

Forecast of unaccounted difference in concentration of conservative constituent cc at the gauge node for future in time-step t+j.

Mass/ volume

Ordering, Flow

UDFlowForecast(t+j)

Forecast of total unaccounted difference in flow rate at the gauge node for future time-step t+j.

volume

Ordering, Flow

UDFlowForecast(o,t+j)

Owner o’s forecast of unaccounted difference in flow rate at the gauge node for future time-step t+j.

volume

Ordering, Flow

UDFlowObserved

Difference between the total modelled inflow and the observed value for the current time-step at the gauge node.

volume

Flow

UDConcObserved(cc)

Difference between modelled inflow concentration of conservative constituent cc and the observed value for the current time-step at the gauge node.

volume

Flow

UDMassObserved(cc)

Difference between modelled inflow mass of conservative constituent cc and the observed value for the current time-step at the gauge node.

volume

Flow

WSE(t)

Water surface elevation at the gauge node in the time-step.

Elevation

Flow

fHistFlowRate(t)

Function (time series) that returns the observed flow rate at the gauge in time-step t.

Volume/time

Initialisation, Flow

fHistConc(cc,t)

Function (time series) that returns the observed concentration of conservative constituent cc in time-step t.

Mass/volume

Initialisation, Flow

fOutflowShare(o,t)

Configured outflow sharing function.

n/a

Initialisation, Flow

fUDConcForecast(cc,t+j)

Function that returns the forecast unaccounted difference between modelled and observed concentration at the gauge for conservative constituent cc in future time-step t+j.

Mass/volume

Initialisation, Ordering

fUDFlowForecast(t+j)

Function that returns the total forecast unaccounted difference between modelled and observed flow rate at the gauge in future time-step t+j.

Volume/time

Initialisation, Ordering

fWSE(flowRate)

Function that returns a water surface elevation for a given flow rate flowRate.

Elevation

Initialisation, Flow


Order phase

Forecast unaccounted differences are used to adjust orders and the volume released from storage so that all accounted and unaccounted demands are satisfied from the releases.

Note that the forecast of unaccounted difference for a future time-step may be updated at each time-step.

For each future time-step t+j from the shortest to the longest delivery time from upstream storage(s) to the gauge node (note that in the following UD means unaccounted difference):

Step 1

Calculate the current UD flow forecast for time-step t+j (positive number is a gain, negative number is a loss).

For each conservative constituent cc where the user has specified that the input concentration should replace the modelled concentration (Set(cc)=YES), forecast concentration using the configured forecast function (the default forecast function calculates the forecast using observed constituent concentration UDConcObserved(cc) in earlier time-steps):

Equation 1

where:

fUDConcForecast() is the function used to create the forecast

UDConcForecast is the forecast value

Get the flow forecast using the total UD flow forecast function (the default forecast function calculates the forecast using observed flow UDFLowObserved in earlier time-steps):

Equation 2

where:

fUDFlowForecast() is the function used to create the forecast

UDFlowForecast is the forecast value

If ownership is enabled:

  • Find the sharing ratio for each owner o (which is initially zero)
    • If the ownership system’s Other Lateral Flux Sharing = Fixed Ratio
Equation 3

    • Otherwise, the ratio is the owner’s share of total downstream orders due for delivery at the gauge node in time-step t+j
Equation 4

where:

OrderDS(o,t+j) is order volume passed from downstream for time-step (t+j) for owner o.

  • Apply the sharing ratio to get each owner’s initial share of forecast UD:
Equation 5

Step 2

Get the order volume for time-step t+j to pass upstream:

If ownership is enabled

  • if any owner o has a unaccounted difference gain greater than their order (UDFlowForecast(o,t+j) > OrderDS(o,t+j)), share to those that don’t:
    • Get each owner’s UD surplus/deficit, ie. the amount of order capacity that the owner can lend to other owners (or needs to borrow from other owners);
Equation 6

Equation 7


    • Use the borrow method to determine how much each owner borrows/lends OwnerBorrowed(o), OwnerLent(o). In this case the borrow accounts are NOT updated;
    • Adjust each owner’s UD forecast to get a final one:
Equation 8


  • Adjust the owner’s downstream order for UD to get the volume of order to pass upstream, ensuring that order volume is not negative:
Equation 9

Otherwise (no ownership), adjust the downstream order for UD to get the upstream order, ensuring that the order volume is not negative:

Equation 10

Flow phase

Details on calculation procedures during the flow phase are provided next.

Step 1

Calculate total flow rates and volumes:

  • Observed flow rate (see Table 2)
Table 2. Observed flow rate decision table

Data Loaded1

Scenario2

ObservedFlowRate

Flow leaving gauged node

No

All

InflowRate

Modelled flow arriving at the gauge node.

Yes

River Manager

fHistFlowRate(t)

Forecast flow rate at the gauge in time-step t

Yes

River Operator

InflowRate + UDFlowForecast

Flow arriving at gauged node + forecast unaccounted difference

1 Data refers to flows and constituents being provided by the user

2 In a river operator scenario, for the current time-step t there is no observed data and a forecast must be used

  • Observed flow UD (used in River Operator forecasting, also reported)
Equation 11

  • Outflow rate (see Table 3)
Table 3. Outflow rate decision table

SetFlow Option

Node type

OutflowRate

No

Gauge

InflowRate

Yes

Unaccounted Difference

ObservedFlowRate


  • Total outflow, water surface elevation (this only applied if a rating table is loaded):
Equation 12

Equation 13

Step 2

If ownership is enabled, determine owner flow rates and volumes.

  • If setOwnerhip=YES,
  • Determine the owner outflow share percentages:
      • If the modeller has specified a sharing function:
Equation 14

      • Otherwise use the configured fixed percentage
Equation 15

    • Get each owner’s outflow rate and volume:
Equation 16

Equation 17

  • Otherwise (when setOwnerhip=NO), share observed flow UD like a lateral flux:
    • Calculate each owner’s outflow volume (see Table 4)
Table 4. Owner outflow volume decision table
SetFlow

Ownership System: lateral flux sharing

ShareRatio(o)Outflow(o)
No

n/a

n/a

Inflow(0)

Yes

Fixed Ratio

system.owner%

Inflow(0)+ShareRatio(0).

UDFlowObserved

Proportional

Inflow(0)/Inflow
    • Calculate each owner’s outflow rate
Equation 18

Step 3

If ownership is enabled, ensure no owner has a negative share of outflow (this could occur if SetFlow=YES and UDFlowObserved < 0), then determine unaccounted difference:

  • If any owner has negative outflow, adjust owner shares:
Equation 19

Equation 20

Use the borrow method to get OwnerBorrowed(o) and OwnerLent(o) (See the Borrow & Payback description). The borrow accounts need to be updated for borrow that occurs. Once this is done:

Equation 21

  • Update each owner’s downstream outflow rate:
Equation 22

  • Calculate each owner’s unaccounted difference.
Equation 23

Step 4

Get inflow concentration and mass for each conservative constituent modelled (InflowConc(cc), InflowMass(cc)) - see Marker routing (Particle tracking) - SRG.

Step 5

For each conservative constituent cc modelled, calculate:

  • Observed Concentration (see Table 5)
Table 5. Observed concentration decision table
Data Loaded?ScenarioObservedConc(cc)Concentration leaving node
NoAllInflowConc(cc)Modelled concentration arriving at the gauge node.
Yes

River Manager

fHistConc(cc,t)

Forecast concentration at the gauge in time-step t.

River Operator

InflowConc(cc) + UDConcForecast(cc,t+j)

Concentration arriving at gauged node + forecast unaccounted difference.

  • Observed Mass:
Equation 24

  • Observed UD for concentration and mass:
Equation 25

Equation 26

Observed UD (concentration) is used in forecasting when the set option is YES, and reported under this name. When the set option is NO it is reported as "Error". Observed UD mass is not used in forecasting, but is reported (as UD when set=YES, and Error when set=NO)


  • Outflow concentration and mass (see Table 6)
Table 6. Outflow concentration and mass decision table

Set(cc) Option1

OutflowConc(cc)

OutflowMass(cc)

No

InflowConc(cc)

InflowMass(cc)

Yes

ObservedConc(cc)

ObservedMass(cc)

1 should concentrations be set to metred values? (yes/no)


Settings

Two settings are considered here; in addition see Input data.

Enabling the Set flow check box enables the calculation of a time series of differences between modelled flows and flow loaded at the gauge node. Modelled flows will be replaced by loaded flows.

Enabling the Set to metered values check box enables the calculation of a time series of differences between modelled concentrations and concentrations loaded at the gauge node. Modelled concentrations will be replaced by loaded concentrations

Recession forecasts can be based on the current time-step or the previous time-step. Forecasting functionality is discussed further in the section on the Inflow node.

Input data

Four types of input data can be specified.

  • Details - station number, river name and station name;
  • Gauge flow - time series of flow data either measured or modelled, to be compared with data from the current scenario at the gauge node;
  • Rating curve - site specific rating curve with rows of values that specify gauge reading, discharge and surface width. Data can be entered directly or as a csv file; and
  • Constituents - time series of constituent flow data either measured or modelled, to be compared with data from the current scenario.

In addition, the k value in the recession equation can be input. See Ordering for details.

For details on importing data files into Source, see the Source User Guide.

Output data

The gauge node outputs any flow and constituent data (that have been loaded) and any modelled data that has been calculated at the location of the gauge node in the model.

Reference list

Fenton, J. D. and R. J. Keller (2001). The calculation of streamflow from measurements of stage. Melbourne, Cooperative Research Centre for Catchment Hydrology. http://www.catchment.crc.org.au/pdfs/technical200106.pdf

Australian Standard AS 3778.2.3-Measurement of water flow in open channels - Part 2.3: General determination of the stage discharge relation (2001)