Package hec.rss.model
Class WaterQualityOpRule
java.lang.Object
java.util.Observable
hec.lang.NamedType
hec.rss.model.RssTSLocationObject
hec.rss.model.OpRule
hec.rss.model.ReleaseFuncOpRule
hec.rss.model.WaterQualityOpRule
- All Implemented Interfaces:
AsciiSerializable,FieldAccessor,TSLocation,DemandRuleInf,AltInputReportInfc,RssModelVariableConstants,RssReturnStatusConstants,RssTSLocation,Serializable,Cloneable,Comparable,Observer,rma.lang.Modifiable
- See Also:
-
Field Summary
FieldsFields inherited from class hec.rss.model.ReleaseFuncOpRule
_limitType, _patternContainer, DAILY, DEMAND, MAX, MIN, NONE, SPECIFIED, WEEKLYFields inherited from class hec.rss.model.OpRule
_avgPeriod, _enableRiseFallCond, _multiplier, _parameterType, _riseFallCondition, _riseFallTolerance, _system, _timeOfDayMultiplier, _useDayOfWeekMultiplier, _usePeriodAverageLimit, _useTimeOfDayMultiplier, FALLING, FALLING_OR_CONST, INFLOW, POOL_ELEVATION, RISING, RISING_OR_CONST, RULETYPE_DEMAND, RULETYPE_FREE, RULETYPE_MAX, RULETYPE_MIN, RULETYPE_SPECFields inherited from class hec.lang.NamedType
_description, _ignoreModifiedEvents, _index, _isValid, _modified, _name, defaultDescription, defaultName, DESCRIPTION_CHANGED, NAME_CHANGED, RENAME_EVENTFields inherited from interface hec.rss.model.RssModelVariableConstants
CUMLOC_OUTPUT_DATA, GRPID_DIVERSION, GRPID_JUNCTION, GRPID_REACH, GRPID_RESERVOIR, HINDCAST_IDS, HOLDOUT_OUTPUT_DATA, INPUT_DATA, OUTPUT_DATA, PULSE_OUTPUT_DATA, UNREG_OUTPUT_DATA, VID_ADJPARAM_FLOW, VID_CAPACITY_FACTOR, VID_CTRLOUT_HINDFLW, VID_CTRLOUT_RELEASE, VID_DAM_LEAK, VID_DAM_RELEASE, VID_DIV_FLOW, VID_DIV_FLOW_ROUTED, VID_DIV_HINDFLW, VID_DIV_RELEASE, VID_DIVOUT_FLOW, VID_DIVOUT_FLOW_ROUTED, VID_ENERGYREQUIRED_TSINPUT, VID_FIRST, VID_FOREBAY_ELEV, VID_FOREBAY_HEADLOSS, VID_GATE_OPENING, VID_GATE_PERCENTOPEN, VID_JUNC_ELEV, VID_JUNC_FLOW_CUMLOC, VID_JUNC_FLOW_DIV, VID_JUNC_FLOW_HOLD, VID_JUNC_FLOW_IN, VID_JUNC_FLOW_LIMIT, VID_JUNC_FLOW_LOCAL, VID_JUNC_FLOW_PULSE, VID_JUNC_FLOW_REG, VID_JUNC_FLOW_UNREG, VID_JUNC_FLOW_VIOL, VID_JUNC_HINDFLOW, VID_JUNC_INFLOW, VID_JUNC_INFLOW_LOCAL_TOTAL, VID_JUNC_STAGE, VID_JUNC_STAGE_LIMIT, VID_JUNC_STAGE_REG, VID_JUNC_STAGE_UNREG, VID_JUNC_STAGE_VIOL, VID_LAST, VID_NODE_FLOW, VID_NODE_HINDFLW, VID_NODE_HINDSTG, VID_NODE_KNOWNFLOW, VID_NODE_STAGE, VID_OPCTRL_CONSTRAINTID, VID_OPCTRL_DECISION, VID_OPCTRL_MAXLIMIT, VID_OPCTRL_MINLIMIT, VID_OPCTRL_RULEID, VID_OPCTRL_ZONEID, VID_OPRULE_FLOW_SPACE, VID_OPRULE_MAX, VID_OPRULE_MAX_STAGE, VID_OPRULE_MIN, VID_OPRULE_MIN_STAGE, VID_OPRULE_PRIORITY, VID_OPRULE_ROUTE_LAG, VID_OPRULE_ROUTE_MAXOFFSET, VID_OPRULE_ROUTE_MINOFFSET, VID_OPRULE_SPEC, VID_OPRULE_STOR_BAL, VID_OPRULE_STOR_BAL_INDEX, VID_OPRULE_VIOL_ELEV, VID_OPRULE_VIOL_FLOW, VID_OPRULE_VIOL_STAGE, VID_OPRULE_VIOL_STOR, VID_OPRULE_WQCD_ELEV, VID_OPRULEFL_CUMLOC, VID_OPRULETS_TSINPUT, VID_OPSET_ACTIVEZONE, VID_OPSET_GC_ELEV, VID_OPSET_GC_STOR, VID_OPSET_KNOWNZONEELEV, VID_OPSET_PROJECTEDELEV, VID_OPSET_ZONEELEV, VID_OPSET_ZONESTOR, VID_OUTGRP_RELEASE, VID_POOL_AREA, VID_POOL_ELEV, VID_POOL_ELEV_EST, VID_POOL_ELEVROC, VID_POOL_EVAP, VID_POOL_FLOWINTOSTOR, VID_POOL_HINDELEV, VID_POOL_HINDSTOR, VID_POOL_HOLDOUT, VID_POOL_INFLOW, VID_POOL_INPUTEVAP, VID_POOL_NETINFLOW, VID_POOL_OUTFLOW, VID_POOL_OUTFLOW_EST, VID_POOL_SEEP, VID_POOL_STOR, VID_PULSE_BACKQ, VID_PULSE_PULSEQ, VID_PUMP_FLOWAVG, VID_PUMP_VOL, VID_PUMPRULE_FLOWAVG, VID_PUMPRULE_FLOWAVG_CAP, VID_PUMPRULE_FLOWINST, VID_PUMPRULE_FLOWINST_CAP, VID_PUMPRULE_HOURS, VID_PUMPRULE_HOURS_CAP, VID_PUMPRULE_NUMPUMP, VID_PUMPRULE_NUMPUMP_CAP, VID_PUMPRULE_UNITHOURS, VID_PUMPRULE_UNITHOURS_CAP, VID_PUMPRULE_VOL, VID_PUMPRULE_VOL_CAP, VID_PWR_CAPABILITY, VID_PWR_EFF, VID_PWR_ENGYGEN, VID_PWR_ENGYPATTERN, VID_PWR_ENGYPERGEN, VID_PWR_ENGYPERREQD, VID_PWR_ENGYREQD, VID_PWR_ENGYVIOL, VID_PWR_FLWPWR, VID_PWR_HDPWR, VID_PWR_HYDLSS, VID_PWR_MAXCAPACITY, VID_PWR_PER_BALGEN, VID_PWR_PER_GCGEN, VID_PWR_PER_MINPUMPGEN, VID_PWR_PER_MINRELGEN, VID_PWR_PER_POWGEN, VID_PWR_PER_PUMPGEN, VID_PWR_PLNTFAC, VID_PWR_PWRCAP, VID_PWR_REQUIRED, VID_PWR_SPILL, VID_PWR_VIOL, VID_RCH_SEEP, VID_REACH_FLOW_CUMLOC, VID_REACH_FLOW_IN, VID_REACH_FLOW_REG, VID_REACH_FLOW_UNREG, VID_RES_GCRELEASE, VID_RES_HOLDOUT, VID_RES_RELEASE, VID_SPILL_FLOW, VID_SPILL_HINDFLOW, VID_STATE_VAR, VID_STATE_VAR_HIND, VID_TAIL_ELEV, VID_UNCTOUT_FLOW, VID_UNCTOUT_HINDFLW, VID_WA_ACCOUNT_DEMAND, VID_WA_ACCOUNT_INFLOW, VID_WA_CHARGES, VID_WA_CREDIT, VID_WA_CURRENT_MAX_VOLUME, VID_WA_CURRENT_VOLUME, VID_WA_HINDSTOR, VID_WA_LOSSES, VID_WA_PUMPBACK, VID_WA_RULE_DEMAND, VID_WA_SURPLUS, VID_WA_TRANSFERS, WQID_OFFSETFields inherited from interface hec.rss.model.RssReturnStatusConstants
RTN_CANCELED, RTN_NOPROBLEM, RTN_OPCHANGE, RTN_PROBLEM -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidevaluateRule(RunTimeStep rts, int iteration) voidevaluateRuleContinuousIntake(RunTimeStep rts, int iteration) voidevaluateRuleGatedIntake(RunTimeStep rts, int iteration) getActiveTSRecordProxies(Vector vec, int iotype) add the time series record proxies associated current computeintreturns the integer _downstreamLocationID, -1 indicates local limit.getFieldObject(Field fld) Called just before ascii serialization.hec.rss.wq.model.WQOpValuebooleanprep for computevoidsetConstituentName(String constituentName) voidsetDownstreamControlLocationID(int id) sets the _downstreamLocationID, -1 indicates local limit.booleansetFieldObject(Field fld, Object fobj) This allows access to fields withing the implementing object to set there data.voidsetReleaseType(WaterQualityOpReleaseType releaseType) voidsetWQControlDeviceElev(double opElev) voidRegenerates the list of all TSProxies required for this location.Methods inherited from class hec.rss.model.ReleaseFuncOpRule
clone, evaluateLimits, evaluateRule, getElementDependencies, getFunctionRelease, getIndependentVariable, getLargestLimitValue, getLimitType, getLimitValue, getOpValue, getPatternContainer, getPeriod, getReferencedStateVariables, getRequiredTSRecordProxies, getRuleLimitType, getSeasonalRecord, getStartingDay, getTargetTSRecordProxy, getTimeInterpolationType, getWaterAccount, isDnstrmRule, isLocalRule, isPerAvgRule, outputReport, setFunctionRelease, setIndependentVariable, setLimitType, setPatternContainer, setPeriod, setSeasonalRecord, setStartingDay, setTimeInterpolationType, setWaterAccount, updateByDemandScaleMethods inherited from class hec.rss.model.OpRule
applyHindcastData, checkRisingFallingCondition, computeStepLimit, evaluateRule, evaluateRule, evaulatePerformance, getAveragingPeriod, getController, getDayOfWeekFactor, getDemandScale, getEnableRiseFallCondition, getGmtOffset, getKeyStringForObject, getLargestDayOfWeekFactor, getLargestTimeOfDayFactor, getMultiplier, getNetwork, getObjectForKeyString, getOperationsElement, getParameterType, getPowerOpValue, getPriority, getReservoirElement, getRiseFallCondition, getRiseFallTolerance, getRssSystem, getSystem, getTimeOfDayFactor, getTimeOfDayMultiplier, getTSProxyName, getUnitSystem, initForPostProcessing, initOperationStep, isActive, resetChildOwnership, restoreFunctionState, restoreHotstartState, riseFallConditionIsValid, saveFunctionState, saveHotstartState, setAveragingPeriod, setController, setDemandScale, setEnableRiseFallCondition, setMultiplier, setParameterType, setPeriodAverageLimit, setPriority, setRiseFallCondition, setRiseFallTolerance, setSystem, setTimeOfDayMultiplier, setUseDayOfWeekMultiplier, setUseDemandScale, setUsePeriodAverageLimit, setUseTimeOfDayMultiplier, toString, useDayOfWeekMultiplier, useDemandScale, usePeriodAverageLimit, useTimeOfDayMultiplierMethods inherited from class hec.rss.model.RssTSLocationObject
addTSRecord, addTSRecordProxy, addTSRecordProxy, addTSRecordProxy, clearTSProxyList, copyInto, getComputedTSRecordProxies, getTSArray, getTSArray, getTSArray, getTSArray, getTSContainer, getTSContainer, getTSDataSet, getTSRecordProxies, getTSRecordProxy, getTSRecordProxy, getTSRecordProxy, getTSRecordProxy, getTSRecordProxy, getTSRecordProxyVec, removeTSRecord, removeTSRecordProxy, removeTSRecordProxyMethods inherited from class hec.lang.NamedType
addModifiableListener, compareTo, fireModifiedStateChanged, getDescription, getDisplayName, getIgnoreModifiedEvents, getIndex, getName, isModified, isValid, readResolve, removeModifiableListener, rename, set, setDescription, setIgnoreModifiedEvents, setIndex, setModified, setName, setValid, update, useRecursiveModifiedTestMethods inherited from class java.util.Observable
addObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChanged
-
Field Details
-
logger
-
-
Constructor Details
-
WaterQualityOpRule
public WaterQualityOpRule() -
WaterQualityOpRule
- Parameters:
name-
-
-
Method Details
-
getDownstreamControlLocationID
public int getDownstreamControlLocationID()returns the integer _downstreamLocationID, -1 indicates local limit. -
setDownstreamControlLocationID
public void setDownstreamControlLocationID(int id) sets the _downstreamLocationID, -1 indicates local limit. -
getConstituentName
-
setConstituentName
-
getReleaseType
-
setReleaseType
-
initializeCompute
public boolean initializeCompute()Description copied from class:ReleaseFuncOpRuleprep for compute- Overrides:
initializeComputein classReleaseFuncOpRule
-
evaluateRule
-
evaluateRuleContinuousIntake
-
evaluateRuleGatedIntake
-
getWQOpValue
public hec.rss.wq.model.WQOpValue getWQOpValue() -
setWQControlDeviceElev
public void setWQControlDeviceElev(double opElev) -
getWaterControlDevice
-
getActiveTSRecordProxies
Description copied from class:ReleaseFuncOpRuleadd the time series record proxies associated current compute- Overrides:
getActiveTSRecordProxiesin classReleaseFuncOpRule
-
updateTSProxyList
public void updateTSProxyList()Description copied from class:ReleaseFuncOpRuleRegenerates the list of all TSProxies required for this location. This list includes all records that are generated by this function even if the records are held in another objects (e.g. RssNode) proxy list- Overrides:
updateTSProxyListin classReleaseFuncOpRule
-
getFieldObject
Description copied from class:ReleaseFuncOpRuleCalled just before ascii serialization. Prepares the paired data values by setting there dss record path names- Specified by:
getFieldObjectin interfaceFieldAccessor- Overrides:
getFieldObjectin classReleaseFuncOpRule- Parameters:
fld- The field to get.- Returns:
- The data object that is stored in the given field
-
setFieldObject
Description copied from interface:FieldAccessorThis allows access to fields withing the implementing object to set there data.- Specified by:
setFieldObjectin interfaceFieldAccessor- Overrides:
setFieldObjectin classReleaseFuncOpRule- Parameters:
fld- The java field object representing the member field to be setfobj- The data to set in that field- Returns:
- returns true if successful
-