Package hec.rss.model

Class TrapezoidalChannel

java.lang.Object
hec.rss.model.Channel
hec.rss.model.TrapezoidalChannel
All Implemented Interfaces:
AsciiSerializable, FieldAccessor, Serializable

public class TrapezoidalChannel extends Channel
PrismaticChannel is used to compute flow characteristics of uniform rectangular/trapezoidal/triangular channels.
See Also:
  • Constructor Details

    • TrapezoidalChannel

      public TrapezoidalChannel()
  • Method Details

    • getChannelType

      public ChannelType getChannelType()
      Overrides:
      getChannelType in class Channel
    • getBottomWidth

      public double getBottomWidth()
    • getSideSlope

      public double getSideSlope()
    • getManningsN

      public double getManningsN()
    • setBottomWidth

      public void setBottomWidth(double width)
    • setSideSlope

      public void setSideSlope(double z)
    • setManningsN

      public void setManningsN(double n)
    • getBottomWidth

      public void getBottomWidth(hec.data.ParamDouble pd)
    • setBottomWidth

      public void setBottomWidth(hec.data.ParamDouble pd)
    • isValid

      public boolean isValid() throws InvalidStateException
      Checks if parameter values are valid for this channel.
      Overrides:
      isValid in class Channel
      Returns:
      true, if parameters are valid, otherwise false.
      Throws:
      InvalidStateException
    • getArea

      public double getArea(double depth)
    • getTopWidth

      public double getTopWidth(double depth)
      Specified by:
      getTopWidth in class Channel
    • getWetPerimeter

      public double getWetPerimeter(double depth)
    • getVelocity

      public double getVelocity(double depth)
    • getCelerity

      public double getCelerity(double depth)
      Specified by:
      getCelerity in class Channel
    • getDepth

      public double getDepth(double flow)
      Computes depth for given flow rate.
      Specified by:
      getDepth in class Channel
      Parameters:
      flow - Flow rate.
      Returns:
      Depth for given flow rate.
    • getFieldObject

      public Object getFieldObject(Field fld)
      Description copied from interface: FieldAccessor
      This method allows access to java.lang.reflect.Field objects within the implementing class.
      Specified by:
      getFieldObject in interface FieldAccessor
      Overrides:
      getFieldObject in class Channel
      Parameters:
      fld - The field to get.
      Returns:
      The data object that is stored in the given field
    • setFieldObject

      public boolean setFieldObject(Field fld, Object fobj)
      Description copied from interface: FieldAccessor
      This allows access to fields withing the implementing object to set there data.
      Specified by:
      setFieldObject in interface FieldAccessor
      Overrides:
      setFieldObject in class Channel
      Parameters:
      fld - The java field object representing the member field to be set
      fobj - The data to set in that field
      Returns:
      returns true if successful