Return Flow Routing

The methods in the Return Flow Routing category are used to route the return flow on the Water User object. The methods available in this category are dependent upon the method selected in the Return Flow Split category.

None

This is the default method. It performs no calculations and instantiates no new slots. The user should use this method if the Return Flow is not routed.

Impulse Response

This method is available if the user has selected None in the Return Flow Split category. In this method the Return Flow is routed based on the impulse response method of routing. It sets values only on the dispatching timestep, that is, current object timestep.

Slots Specific to This Method

Number of Coeffs

Type: Scalar Slot

Units: None

Description: Integer number of lag coefficients to be used in the method.

I/O: Required input

Links: Not linkable

Lag Coefficients

Type: Table Slot

Units: None

Description: Impulse response lag coefficients

Information: The same number of coefficients must be input as the value in the Number of Coeffs slot. The input will be in rows.

I/O: Required input

Links: Not linkable

Routed Return Flow

Type: Series Slot

Units: Flow

Description: Routed return flow

Information: The return flows will be set in the Return Flow slot and then routed to this slot.

I/O: Output

Links: Should be linked to the destination object. If this slot is linked the Return Flow slot should not be linked.

Method Details

The Routed Return Flow is calculated as follows:

In this equation, ReturnFlowt is either the Return Flow slot or the Total Return Flow, when supplemental diversions are used.

When part of a sequential Agg Diversion Site, the Routed Return Flow is included in the outgoing available flow when Routed Return Flow and Return Flow are not linked. If either of these slots is linked, flow goes elsewhere and is not available for downstream elements.

Step Response

This method is available if the user has selected None in the Return Flow Split category. In this method the Return Flow is routed based on the step response method of routing. It sets values at timesteps forward of the dispatching timestep; that is, future timesteps.

Slots Specific to This Method

Number of Coeffs

Type: Scalar Slot

Units: None

Description: Integer number of lag coefficients to be used in the method.

I/O: Required input

Links: Not linkable

Lag Coefficients

Type: Table Slot

Units: None

Description: Impulse response lag coefficients

Information: The same number of coefficients must be input as the value in the Number of Coeffs slot. The input will be in rows.

I/O: Required input

Links: Not linkable

Routed Return Flow

Type: Series Slot

Units: Flow

Description: Routed return flow

Information: The return flows will be set in the Return Flow slot and then routed to this slot.

I/O: Output

Links: Should be linked to the destination object. If this slot is linked the Return Flow slot should not be linked.

Future Routing Timesteps

Type: Scalar

Units: None

Description: The number of timesteps in the future (that is, past the timestep at which the object is dispatching) at which Routed Return Flow is computed and set.

Information: This slot must be input and greater than or equal to 1. If you do not want it to set future timesteps, input a value of 1.

I/O: Required input

Information: Not linkable

Method Details

The calculations for this method are similar to the Impulse Response method, but this method sets values out into the future, as follows:

nFutureTimesteps = Min ( Future Routing Timesteps, Number of Coeffs )

For each timestep k from (t to (t + nFutureTimesteps - 1))

End for

In this equation, ReturnFlowk is either the Return Flow slot or the Total Return Flow, when supplemental diversions are used.

Thus, the method computes and sets Routed Return Flows forward nFutureTimesteps.

In the situation where the method is looking for a Return Flow for a timestep that is actually past the dispatching timestep and this value is not valid, this Return Flow is assumed to be zero. If the Return Flow is not valid for a previous timestep, the calculation will exit the method and post a warning message.

If the Routed Return Flow is input or specified by a rule, that value is used and the routing is not performed.

When part of a sequential Agg Diversion Site, the Routed Return Flow is included in the outgoing available flow when Routed Return Flow and Return Flow are not linked. If either of these slots is linked, flow goes elsewhere and is not available for downstream elements

SW GW Impulse Response

This method is available when either SW GW Fractional Split or SW GW Efficiency Split is selected in the Return Flow Split category.

Slots Specific to This Method

Number of SW GW Coeffs

Type: Table Slot

Units: None

Description: Two-column table slot giving the number of lag coefficients to be used in the routing method

Information: The first column will give the number of coefficients for the surface return flow and the second column will give the number of coefficients for the groundwater return flow.

I/O: Required input

Links: Not linkable

SW GW Lag Coefficients

Type: Table Slot

Units: None

Description: Impulse response lag coefficients for both surface water and groundwater return flows

Information: The first column will contain the lag coefficients for the surface water return flow. There must be the same number of coefficients in this column as the value in the first column of the Number of Coeffs slot. The second column will contain the lag coefficients for the groundwater return flow. There must be the same number of coefficients in this column as the value in the second column of the Number of Coeffs slot.

I/O: Required input

Links: Not linkable

SW Routed Return

Type: Series Slot

Units: Flow

Description: Routed surface water return flow

I/O: This slot is computed by the routing method.

I/O: Output

Links: Should be linked to the destination object. If this slot is linked, the Surface Return Flow slot should not be linked.

GW Routed Return

Type: Series Slot

Units: Flow

Description: Routed groundwater return flow

Information: This slot is computed by the routing method.

I/O: Output

Links: Should be linked to the destination object. If this slot is linked, the GW Return Flow slot should not be linked.

Method Details

The return flows is calculated as follows:

When part of a sequential Agg Diversion Site, the SW Routed Return Flow is included in the outgoing available flow when SW Routed Return Flow and Return Flow are not linked. If either of these slots is linked, flow goes elsewhere and is not available for downstream elements

Multi Split Impulse Response

This method is available when Multi Return Fractional Split method is selected in the Return Flow Split category. Each split return flow is routed (using different parameters) by the impulse response method of routing. This method sets values only at the timestep at which the water user is dispatching.

Slots Specific to This Method

Number of MR Coeffs

Type: Scalar Slot

Units: None

Description: Integer number of lag coefficients to be used in the method.

Information: A column will be added automatically for each of the split return flows. The name of the column is used to match it with the appropriate subslot in the Returned Flows slot. Each column corresponds to the number of lag coefficients to be used for that particular split return flow.

I/O: Required input

Links: Not linkable

Multi Return Lag Coeffs

Type: Table Slot

Units: None

Description: Impulse response lag coefficients

Information: The same number of coefficients must be input in each column as the value in the corresponding column in the Number of MR Coeffs slot. The columns are added and named automatically as a new subslot is added to the Returned Flows slot.

I/O: Required input

Links: Not linkable

PreRouted Return Flows

Type: Agg Series Slot

Units: Flow

Description: Return flows prior to routing

Information: A column will be added automatically for every subslot in the Returned Flows multislot. The name of the column is used to match it with the appropriate subslot in the Returned Flows slot.

I/O: Output (Can be input prior to the Start date to set initial values for impulse response routing).

Links: Not linkable

Method Details

Subslots in the Returned Flows slot are created when a link is made from this slot to the destination object. When a subslot is created, a corresponding column in the Number of MR Coeffs, Multi Return Lag Coeffs and PreRouted Return Flows slots is added automatically. The new columns have the same name as the subslot so you know which column goes with which subslot.

The impulse response calculations are performed for every return flow split; the method is nested in a loop that executes for every column in the Number of MR Coeffs slot. The Returned Flows are calculated as follows:

The first column on the Returned Flows multislot is the multislot itself and is not one of the subslots. It is set as the sum of all the subslot values.

Multi Split Step Response

This method is available when Multi Return Fractional Split method is selected in the Return Flow Split category. Each split return flow is routed (using different parameters) by the step response method of routing. It sets values at timesteps forward of the dispatching timestep; that is, future timesteps.

Slots Specific to This Method

Number of MR Coeffs

Type: Scalar Slot

Units: None

Description: Integer number of lag coefficients to be used in the method.

Information: A column will be added automatically for each of the split return flows. The name of the column is used to match it with the appropriate subslot in the Returned Flows slot. Each column corresponds to the number of lag coefficients to be used for that particular split return flow.

I/O: Required input

Links: Not linkable

Multi Return Lag Coeffs

Type: Table Slot

Units: None

Description: Impulse response lag coefficients

Information: The same number of coefficients must be input in each column as the value in the corresponding column in the Number of MR Coeffs slot. The columns are added and named automatically as a new subslot is added to the Returned Flows slot.

I/O: Required input

Links: Not linkable

PreRouted Return Flows

Type: Agg Series Slot

Units: Flow

Description: Return flows prior to routing

Information: A column will be added automatically for every subslot in the Returned Flows multislot. The name of the column is used to match it with the appropriate subslot in the Returned Flows slot.

I/O: Output or input prior to the Start date to set initial values for step response routing).

Links: Not linkable

Future Routing Timesteps

Type: Scalar

Units: None

Description: The number of timesteps in the future (that is, past the timestep at which the object is dispatching) at which Routed Return Flow is computed and set.

Information: This slot must be an input integer and greater than or equal to 1. If you do not want it to set future timesteps, input a value of 1.

I/O: Required input

Information: Not linkable

Method Details

The first column on the Returned Flows multislot is the multislot itself and is not one of the subslots. It is set as the sum of all the subslot values.

Subslots in the Returned Flows slot are created when a link is made from this slot to the destination object. When a subslot is created, a corresponding column in the Number of MR Coeffs, Multi Return Lag Coeffs and PreRouted Return Flows slots will be added automatically. The new columns will have the same name as the subslot so the user knows which column goes with which subslot.

The step response calculations are performed for every return flow split, the method is nested in a loop that executes for every column (i) in the Number of MR Coeffs slot.

The calculations for this method are similar to the Multi Split Impulse Response method, but this method sets values into the future.

nFutureTimesteps = Min ( Future Routing Timesteps, Number of Coeffs )

For each timestep k from (t to (t + nFutureTimesteps - 1))

End for

Thus, the method computes and sets Routed Return Flows forward nFutureTimesteps.

When the method is looking for a PreRouted Return Flow for a timestep that is past the dispatching timestep and the value is not valid, the PreRouted Return Flow is assumed to be zero. If the PreRouted Return Flow is not valid for a previous timestep, the calculation will exit the method and post a warning message. No Returned Flows will be set.

If the slot linked to the Returned Flows slot is input or set by a rule, the computed Returned Flow is not computed for that timestep as the value is already specified.

Revised: 01/11/2023