skip to main content
Objects and Methods : Reach : User Methods : Seepage Routing
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
 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.
 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
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
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.
 Routed Seepage
Type: Agg Series Slot
Units: Flow
Description: the seepage after it has been routed
Information:  
I/O: Output Only
 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: 07/09/2023