Package hec.rss.model

Class FirmEnergyOpRule

All Implemented Interfaces:
AsciiSerializable, FieldAccessor, TSLocation, DemandRuleInf, PowerGenerationOptions, AltInputReportInfc, RssModelVariableConstants, RssReturnStatusConstants, RssTSLocation, Serializable, Cloneable, Comparable, Observer, rma.lang.Modifiable

public class FirmEnergyOpRule extends ScheduledHydropowerOpRule implements AsciiSerializable, Serializable, Cloneable
See Also:
  • Constructor Details

    • FirmEnergyOpRule

      public FirmEnergyOpRule()
    • FirmEnergyOpRule

      public FirmEnergyOpRule(String name)
  • Method Details

    • updateByDemandScale

      public void updateByDemandScale(double scl)
      Overrides:
      updateByDemandScale in class OpRule
    • initializeCompute

      public boolean initializeCompute()
      prepare transient data for compute
      Overrides:
      initializeCompute in class ScheduledHydropowerOpRule
      Returns:
    • getEnergyReguirement

      protected double getEnergyReguirement(RunTimeStep rts, double poolElevation)
      Get the Firm Energy Requirement for the time step. Is in terms of MWh / hr
      Overrides:
      getEnergyReguirement in class ScheduledHydropowerOpRule
    • getSeasonalPowerRequirement

      public SeasonalRecord getSeasonalPowerRequirement()
    • setSeasonalPowerRequirement

      public void setSeasonalPowerRequirement(SeasonalRecord rec)
    • setUsePlantFactor

      public void setUsePlantFactor(boolean tf)
      Set true if the monthly energy requirements are to be interpreted as Plant Factor. Set false to interpret monthly values as MWh
    • usePlantFactor

      public boolean usePlantFactor()
      Is true if the monthly energy requirements are to be interpreted as Plant Factor. If false, interpret monthly values as MWh
    • setMonthlyEnergyRequirements

      public boolean setMonthlyEnergyRequirements(double[] values)
      Set the monthly energy requirements. These are in terms of MWh or Plant Factor.
    • getMonthlyEnergyRequirements

      public double[] getMonthlyEnergyRequirements()
      get the monthly energy requirements. These are in terms of MWh or Plant Factor.
    • computeMonthlyEnergyReq

      protected double computeMonthlyEnergyReq(RunTimeStep rts)
    • computeSeasonalEnergyReq

      protected double computeSeasonalEnergyReq(RunTimeStep rts)
    • getEnergyReguirementOld

      protected double getEnergyReguirementOld(RunTimeStep rts, double poolElevation)
      Get the Firm Energy Requirement for the time step. Is in terms of MWh / hr
    • clone

      public Object clone()
      Description copied from class: RssTSLocationObject
      clone method
      Overrides:
      clone in class ScheduledHydropowerOpRule
    • 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 ScheduledHydropowerOpRule
      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 ScheduledHydropowerOpRule
      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