Seepage Routing

The option to route seepage becomes visible after a method to calculate seepage is chosen.

No Routing

This method, which is the default, does not route seepage. The values for seepage are calculated depending on the user method chosen for seepage calculation. These values are contained in the Seepage slot.

Impulse Response

This method calculates the routed seepage based on the impulse response method of routing. This routing method makes visible a PreRouted seepage slot. This slot contains the values for seepage that have not been routed. The routed values are contained in the Seepage slot. If a link exists that links seepage to another object and a seepage routing method is chosen, the link will propagate the values of the routed seepage.

Note: This method computes the Seepage as a function of current and previous PreRouted Seepage. Because it uses previous timestep information, the computed Seepage may be more than the Inflow (or Outflow) and could lead to a negative Outflow (or Inflow). As always, Outflow = Inflow - Seepage + Sources - Sinks

Slots Specific to This Method

Number of Coefficients

Type: Table

Units: NONE

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

I/O: Required input

Links: Not linkable

Lag Coefficients

Type: Table

Units: NONE

Description: The impulse response lag coefficients

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

I/O: Required input.

Links: Not linkable.

PreRouted Seepage

Type: Series

Units: FLOW

Description: The seepage values before routing.

Information: This slot contains the values of seepage that have not been routed. The routed values will be contained in the Seepage slot.

I/O: Output

Links: Can be linked, but slot containing routed values is Seepage. If routed values are to be linked, then this slot should not be linked.

Method Details

The Seepage (routed) will be calculated as follows:

where C is a lag coefficient and ncoeff is the number of lag coefficients.

One Timestep Seepage Lag

This method will apply the computed seepage to the next timestep.

Slots Specific to This Method

Seepage from Previous Timestep Conditions

Type: Series

Units: Flow

Description: The seepage computed from the previous timestep’s conditions

Information:

I/O: Output Only

Links: Not linkable

Method Details

Seepage is computed at each timestep, but the value is set at the next timestep, as follows.

When this method is selected, the timing of the seepage calculation is modified. For the Solve given Outflow, No Routing and Solve given Inflow, No Routing dispatch methods, the Seepage Routing method is called once near the beginning of the dispatch method. This call makes sure that there is a valid seepage that was computed at the previous timestep.

Note: If it is the first timestep in the run and there is no valid seepage, the method will use the current estimate of seepage and post a warning. (If you do not want to see this warning, input a seepage value for the first timestep.) When the Stage Table Lookup and Head Based Seepage are used, this estimate is the seepage based solely on the Inflow (for Solve given Inflow, No Routing) or Outflow (for Solve given Outflow, No Routing) to the reach.

When used with the Head Based Seepage method and Solve given Inflow, No Routing, a positive seepage is limited to be less than or equal to the inflow to the reach. The slot Seepage from Previous Timestep Conditions holds the lagged seepage. If the reach redispatches with a larger inflow, the seepage is reset to this value. This reverts the seepage to its original value instead of using the seepage constrained by a smaller inflow.

The selected Reach Seepage method is called near the end of the dispatch method after inflow and outflow are known. For the Stage Table Lookup and Head Based Seepage, this execution allows the seepage to be correctly computed based on both the inflow and outflow. The seepage is then set at the NEXT timestep.

Note: Seepage is a dispatch slot, so the reach may redispatch at the next timestep, depending on knowns and unknowns.

For the Solve given Inflow, Outflow, No Routing dispatch method, the seepage calculation is only called once near the beginning of the dispatch method as both inflow and outflow are known. Again, on the first timestep, if a valid seepage is not known, the estimate based on current values will be used.

Step Response

This method calculates the routed seepage based on the step response method of routing. The Seepage slot contains the values for seepage that have not been routed. The routed values are contained in the Routed Seepage slot. Typically, the Routed Seepage slot will be linked.

Note: This method removes the Seepage from the reach and then routes the Seepage. The routed seepage is stored in the Routed Seepage slot for the current and n future timesteps. As always, Outflow = Inflow - Seepage + Sources - Sinks

This seepage routing method is available for all seepage methods except Head Based Seepage.

Slots Specific to This Method

Lag Coefficients

Type: Table

Units: NONE

Description: The step response lag coefficients

Information: The input will be in rows.

I/O: Required input.

Links: Not linkable.

Routed Seepage

Type: Agg Series Slot

Units: Flow

Description: the seepage after it has been routed

Information:

I/O: Output Only

Links: Linkable

Future Seepage 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 Seepage will be 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

This method sets values into the future as follows.

nCoeff = Number of rows in the Lag Coefficients table

nFutureTimesteps = Min (Future Seepage Timesteps, nCoeff)

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

End for

Thus, the method computes and sets Routed Seepage forward nFutureTimesteps.

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

Revised: 01/11/2023