Package hec.rss.model

Class PowerGuideCurveOpRule

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

public class PowerGuideCurveOpRule extends ScheduledHydropowerOpRule implements AsciiSerializable, Serializable, Cloneable
Store data and compute required energy for scheduled hydropower using power guide curve
See Also:
  • Constructor Details

    • PowerGuideCurveOpRule

      public PowerGuideCurveOpRule()
    • PowerGuideCurveOpRule

      public PowerGuideCurveOpRule(String name)
  • Method Details

    • initializeCompute

      public boolean initializeCompute()
      prep for compute
      Overrides:
      initializeCompute in class ScheduledHydropowerOpRule
    • getPowerGuideCurve

      public PairedValues getPowerGuideCurve()
    • setPowerGuideCurve

      public void setPowerGuideCurve(PairedValues pv)
    • setTopPowerPoolStorageZoneId

      public void setTopPowerPoolStorageZoneId(int topStorageZoneId)
    • getTopPowerPoolStorageZoneId

      public int getTopPowerPoolStorageZoneId()
    • setBottomPowerPoolStorageZoneId

      public void setBottomPowerPoolStorageZoneId(int bottomStorageZoneId)
    • getBottomPowerPoolStorageZoneId

      public int getBottomPowerPoolStorageZoneId()
    • setGeneratePowerBelowPowerPool

      public void setGeneratePowerBelowPowerPool(boolean tf)
    • generatePowerBelowPowerPool

      public boolean generatePowerBelowPowerPool()
    • getSeasonalMultiplier

      public SeasonalRecord getSeasonalMultiplier()
      Returns a SeasonalRecord object holding the seasonal multipliers
    • setSeasonalMultiplier

      public void setSeasonalMultiplier(SeasonalRecord mult)
      Sets the SeasonalRecord object holding the seasonal multipliers
    • useSeasonalMultiplier

      public boolean useSeasonalMultiplier()
    • setUseSeasonalMultiplier

      public void setUseSeasonalMultiplier(boolean tf)
      Set flag for Seasonal Multiplier
    • canCompute

      protected boolean canCompute()
      Check that there is all the available data
    • getEnergyReguirement

      protected double getEnergyReguirement(RunTimeStep rts, double poolElevation)
      Get the Energy Requirement for the time step. Is in terms of MWH
      Overrides:
      getEnergyReguirement in class ScheduledHydropowerOpRule
    • getEnergyReguirement2

      @Deprecated protected double getEnergyReguirement2(RunTimeStep rts, double poolElevation)
      Deprecated.
      Get the Energy Requirement for the time step. Is in terms of MWH This is the code for the old getEnergyReguirement
    • 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
    • outputReport

      public void outputReport(AlternativeInputReport report, org.jdom.Element elem)
      Description copied from interface: AltInputReportInfc
      Alternative Input Report Interface for data.
      Specified by:
      outputReport in interface AltInputReportInfc
      Overrides:
      outputReport in class ScheduledHydropowerOpRule