Package hec.rss.model
Class ReservoirOutletElement
java.lang.Object
java.util.Observable
hec.lang.NamedType
hec.rss.model.Element
hec.rss.model.ReservoirOutletElement
- All Implemented Interfaces:
AsciiSerializable,FieldAccessor,TSLocation,PlotVariableConstants,RssModelVariableConstants,RssReturnStatusConstants,RssTSLocation,hec.watershed.res.model.PlottableObject,Serializable,Cloneable,Comparable,Observer,rma.lang.Modifiable
- Direct Known Subclasses:
DivertedOutletElement,ReservoirDamElement
Element that connects a reservoir storage element to a downstream junction.
Base class for Dam and Diverted outlets
- See Also:
-
Field Summary
Fields inherited from class hec.rss.model.Element
DIVERSION_ELEMENT_ID, DIVERTEDOUTLET_ELEMENT_ID, INFLOW, JUNCTION_ELEMENT_ID, OUTFLOW, REACH_ELEMENT_ID, RESERVIOR_ELEMENT_IDFields 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.PlotVariableConstants
PV_ELEVATION, PV_REGULATED_FLOW, PV_REGULATED_STAGE, PV_STORAGE, PV_TOTAL_RELEASE, PV_UNREGULATED_FLOW, PV_UNREGULATED_STAGEFields 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
ConstructorsConstructorDescriptionConstructor for the ReservoirOutletElement objectReservoirOutletElement(RssSystem sys, int idx) ReservoirOutletElement(RssSystem sys, int idx, ReservoirElement p) -
Method Summary
Modifier and TypeMethodDescriptiongetFieldObject(Field fld) This method allows access to java.lang.reflect.Field objects within the implementing class.Returns a list of power plants attached to this reservoir element.doubleBase flow value for computing pulse routing.voidgetPulseFlow(hec.data.ParamDouble pd) Returns a List of RuleConnectivityRef objects identifying all rule references to other objects in the network.booleanReturns true if the RssSystem default pulse flow is to be used for the Pulse Routing compuation.booleansetFieldObject(Field fld, Object fobj) This allows access to fields withing the implementing object to set there data.voidsetpulseFlow(double pulseFlow) voidsetPulseFlow(hec.data.ParamDouble pd) voidsetUseDefaultPulseFlow(boolean tf) Set true to use the RssSystem default pulse flow.Methods inherited from class hec.rss.model.Element
addChildElement, addChildElementAt, addNode, addNode, applyHindcastData, calcSeepageFlow, children, cleanupFromDeSerialization, cleanVectors, clearTSProxyList, clone, computeForecast, computeForecastStep, computeForecastStep, computeHindcast, computeHindcastStep, computeSubStepFlow, copyInto, createHotstartState, dispose, dispose, downStreamFrom, findAdjParam, findAdjParam, findElement, getActiveStateVariables, getActiveTSProxies, getChildElementAt, getChildElementCount, getComputedTSRecordProxies, getComputedTSRecordProxies_old, getDefaultModelVariables, getDisplayName, getDownstreamElements, getDownstreamNode, getDownstreamNodes, getEffectiveElev, getElement, getElementByName, getElementsByClass, getElementType, getElementTypeId, getElementVector, getFlowContolTSRecordProxies, getForebayHeadLoss, getForecastEquation, getFullName, getFunction, getHindcastDataList, getHindcastEquation, getKeyStringForObject, getLinkedElementList, getModelVariables, getNode, getNodeCount, getNodeDir, getNodeDirVector, getNodeVector, getObjectForKeyString, getObjectTypeId, getObsDataVector, getOutletElementList, getOutletElementList, getOutputBPart, getParent, getPlotTypeDirectory, getPlotTypeFile, getPlotTypeNames, getPlotTypes, getPrevEffectiveElev, getReferencePt, getReleaseElements, getRequiredTSRecordProxies, getSystem, getTailwaterElevationObjects, getTopParent, getTopParentName, getTSDataSet, getTSRecordProxies, getTSRecordProxy, getTSRecordProxy, getTSRecords, getTSRecords, getUnitSystem, getUpstreamNode, getUpstreamNodes, getWaterControlDevice, hasElementsOfClass, hasForebayHeadLoss, hasWaterControlDevice, importObservedData, initForecastLoop, initForPostProcessing, initHindcastLoop, initialize, initTSVals, isActive, isDirty, isDisposed, isNodeComputed, readData, removeAllChildElements, removeChild, removeNode, resetParentElement, restoreElementState, restoreHotstartState, saveElementState, saveHotstartState, setActive, setActive, setDirty, setFunction, setHasForebayHeadLoss, setName, setObsDataVector, setParentElement, setupForSerialization, setWaterControlDevice, toString, updateTSProxyList, updateWQTSProxyList, writeDataMethods inherited from class hec.lang.NamedType
addModifiableListener, compareTo, fireModifiedStateChanged, getDescription, getIgnoreModifiedEvents, getIndex, getName, isModified, isValid, readResolve, removeModifiableListener, rename, set, setDescription, setIgnoreModifiedEvents, setIndex, setModified, setValid, update, useRecursiveModifiedTestMethods inherited from class java.util.Observable
addObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChanged
-
Constructor Details
-
ReservoirOutletElement
public ReservoirOutletElement()Constructor for the ReservoirOutletElement object -
ReservoirOutletElement
-
ReservoirOutletElement
-
-
Method Details
-
getPowerPlants
Returns a list of power plants attached to this reservoir element. The list is guaranteed to be non null and of size 0 if there are no power plants on this reservoir.- Returns:
- an array of PowerPlant objects.
-
getPulseFlow
public double getPulseFlow()Base flow value for computing pulse routing.- Returns:
-
getPulseFlow
public void getPulseFlow(hec.data.ParamDouble pd) -
setpulseFlow
public void setpulseFlow(double pulseFlow) -
setPulseFlow
public void setPulseFlow(hec.data.ParamDouble pd) -
setUseDefaultPulseFlow
public void setUseDefaultPulseFlow(boolean tf) Set true to use the RssSystem default pulse flow. Otherwise set false to use the pulse flow value specified for this element- Parameters:
tf-
-
getUseDefaultPulseFlow
public boolean getUseDefaultPulseFlow()Returns true if the RssSystem default pulse flow is to be used for the Pulse Routing compuation. Returns false to use the pulse flow value specified for this element- Returns:
- true if the RssSystem default pulse flow is to be used for the Pulse Routing compuation. false to use the pulse flow value specified for this element
-
getRuleConnectivityRefs
Returns a List of RuleConnectivityRef objects identifying all rule references to other objects in the network.- Overrides:
getRuleConnectivityRefsin classElement- Returns:
- ArrayList RuleConnectivityRef objects
-
getFieldObject
Description copied from interface:FieldAccessorThis method allows access to java.lang.reflect.Field objects within the implementing class.- Specified by:
getFieldObjectin interfaceFieldAccessor- Overrides:
getFieldObjectin classElement- 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 classElement- 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
-