Package hec.rss.model

Class DownstreamOpRuleBackRoute

java.lang.Object
hec.rss.model.DownstreamOpRuleBackRoute

public class DownstreamOpRuleBackRoute extends Object
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    computeBackroute(RunTimeStep rts, double[] dnstrmTS, double[] routedPrevRel, double[] upstrmTS, int lag, int offset, double[] routeCoef, int ruleType)
    Object of the method is to determine flow required at upstream end of reach to match the requested downstream flow after linear routing.
    boolean
    computeSysBackroute(RunTimeStep rts, double[] dnstrmTS, Object[] routedPrevRel, Object[] upstrmTS, int minoffset, Object[] resPulseRespArray, int ruleType, boolean[] resActive)
    Object of the method is to determine flow required releases from all upstream reservoirs to match the requested downstream flow after linear routing.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • DownstreamOpRuleBackRoute

      public DownstreamOpRuleBackRoute()
  • Method Details

    • computeSysBackroute

      public boolean computeSysBackroute(RunTimeStep rts, double[] dnstrmTS, Object[] routedPrevRel, Object[] upstrmTS, int minoffset, Object[] resPulseRespArray, int ruleType, boolean[] resActive)
      Object of the method is to determine flow required releases from all upstream reservoirs to match the requested downstream flow after linear routing. The upstream and downstream flow arrays are provided. The upstream array is changed through this method (the upstream flow is the output from this method). Both arrays are the length of the routing window. The downstream array is offset in time from the upstream array by minoffset steps.
      Parameters:
      rts - the current RunTimeStep for the release decision
      dnstrmTS - array containing the target for the total routed release
      routedPrevRel - contribution to downstream flow from all previous upstream releases
      upstrmTS - array containing the all reservoir releases
      minoffset - minimum offset integer shift between upstream and downstream routing for any of the releases
      resPulseRespArray - pulse response for all releases
      ruleType - flag indicating max (1), spec (0), or min (-1) rule
      step - the time step at which the downstream flow is expected to match the required flow ???
      Returns:
      true if successful
    • computeBackroute

      public boolean computeBackroute(RunTimeStep rts, double[] dnstrmTS, double[] routedPrevRel, double[] upstrmTS, int lag, int offset, double[] routeCoef, int ruleType)
      Object of the method is to determine flow required at upstream end of reach to match the requested downstream flow after linear routing. The upstream and downstream flow arrays are provided. The upstream array is changed through this method (the upstream flow is the output from this method). Both arrays are the length of the routing window. The downstream array is offset in time from the upstream array by minoffset steps.
      Parameters:
      rts - the current RunTimeStep for the release decision
      dnstrmTS - array containing the routed release
      routedPrevRel - contribution to downstream flow from previous upstream releases
      upstrmTS - array containing the reservoir release
      lag - approximate integer lag of routing
      offset - integer shift between upstream and downstream routing
      routeCoef - array of linear routing coefficients
      step - the time step at which the downstream flow is expected to match the required flow ???
      Returns:
      true if successful