Package hec.rss.model
Class Storage
- All Implemented Interfaces:
AsciiSerializable,FieldAccessor,TSLocation,AltInputReportInfc,RssModelVariableConstants,RssReturnStatusConstants,RssTSLocation,Serializable,Cloneable,Comparable,Observer,rma.lang.Modifiable
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic doublestatic doublestatic doublestatic final int[]static doublestatic final doublestatic final doublestatic final intstatic final intstatic final intstatic doublestatic doublestatic doublestatic final intstatic final intLookback Condition: Elevation is calculated from Inflow and Outflow except on the first time step is set to the Specified Constantstatic final intLookback Condition: Elevation is calculated from Inflow and Outflow except on the first time step is set to the Specified Time Series Valuestatic final intLookback Condition: Specified Constant Elevationstatic final intLookback Condition: Specified Elevation Time Seriesstatic final intLookback Condition: Storage and Elevation are calculated from Inflow and Outflow except on the first time step they are set to the Guide Curve Valuestatic final intLookback Condition: Storage and Elevation set to Guide Curvestatic final intLookback Condition: Storage is calculated from Inflow and Outflow except on the first time step is set to the Specified Constantstatic final intLookback Condition: Storage is calculated from Inflow and Outflow except on the first time step is set to the Specified Time Series Valuestatic final intLookback Condition: Specified Constant Storagestatic final intLookback Condition: Specified Storage Time Seriesstatic final intstatic final intstatic final intstatic final intFields 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 TypeMethodDescriptionvoidvoidapplies specific hindcast data for computedoubledoublecalcEvapFlow(RunTimeStep runtime) calc evaporation flow in cfs or cms based on averaged elevation over time stepdoublecalcEvapFlow(RunTimeStep runtime, double elev0, double elev1, boolean saveTS) calculate evaporation in cfs/cms for specified start and end elevationdoubledoublecalcSeepageFlow(RunTimeStep runtime) calc seepage flow in cfs or cms based on averaged elevation over time stepdoublecalcSeepageFlow(RunTimeStep runtime, double prevElev, double elev, boolean saveTS) voidvoidclone()clone methodintcomputeForecastStep(RunTimeStep runtime) intcomputeHindcastStep(RunTimeStep runtime) booleancomputeInflow(RunTimeStep runtime) compute the total and net inflow for the given time-step call prior to operation decision makingbooleanbooleandoublecomputeSubStepFlow(RunTimeStep rts, double xt, double et) Compute the evaporation and seepage from for a substepdoubleelevationToArea(double elev) doubleelevationToStorage(double elev) voidgetActiveTSProxies(Vector vec, int iotype) returns a vector of required input, or generated output TSRecordProxies used in the current alternative default implementation function, assume all records are activereturns a vector of computed ts record proxies assuming the downstream flow is computed overrides method in Function classElevation-area curve for conic interpolation storagestatic double[]getConicStorageArray(PairedValues elevArea, double firstStorageValue, double firstConicDepth) Compute storage array once and for all given elevation and area valuesstatic doublegetConicStorageForElevation(double elevation, PairedValues elevArea, double[] storage, double firstStorageValue, double firstConicDepth) Static function for performing conic interpolation for plotting and editing tables.static doublegetConicStorageForElevation(double elevation, PairedValues elevArea, double firstStorageValue, double firstConicDepth) doublevoidgetConstSeepage(hec.data.ParamDouble pd) doublegetElevation(RunTimeStep time) returns the elevation value at the given time (assumes that elevation has already been computed)double[]returns the elevation time series arraydoubleget the most recent elevation value relative to the given time step.doubleget the most recent elevation estimate for the given time step Must be called after initForecast(), never call with a null argument for rts!doubledouble[]returns the evaporation time series array, may return nulldoublereturn the total local flow volume for the given time stepintgetFieldObject(Field fld) This method allows access to java.lang.reflect.Field objects within the implementing class.doublevoidgetFirstStorageValue(hec.data.ParamDouble pd) doublegetFlowForRateOfRise(double rateOfRise, double elev, double deltaTSeconds) Convert a rate of rise to a net reservoir inflow,outflowintvoidgetHindcastDataList(Vector hvec) Default implementation of getHindcastDataList does not add any records to the list.doublegetHindcastStorage(RunTimeStep runtime) doublegetInflow(RunTimeStep rts) return the total reservoir inflow for the given time stepdoublereturn the total reservoir inflow volume for the given time step assuming that the inflow has already been calculateddoublevoidgetInitialConicDepth(hec.data.ParamDouble pd) doubledoubledoubledoublereturns the full storage valuedoubledoublereturns the empty storage valuedouble[]doublegetNetInflow(RunTimeStep rts) double[]returns the net inflow time series arraydoublereturn the total reservoir inflow volume for the given time step assuming that the inflow has already been calculateddoublegetOutflow(RunTimeStep rts) double[]doubledoublereturn the total reservoir inflow volume for the given time step assuming that the inflow has already been calculateddoubledoubledoubledoubledoubledoubledoubleintdouble[]returns the seepage time series arraydouble[]doublegetStorage(RunTimeStep time) returns the storage value at the given time (assumes that storage has already been computed)override Function method to only return elevation or storage proxies as requiredbooleanhasEvap()booleandoubleincrementPumpVolume(RunTimeStep rts, double vol) increment the reservoir storage by given amount and update elevation, returns the actual change in storagevoidincrementPumpVolumeCap(RunTimeStep rts, double cap) voidFill elevation storage and elevation area transient PairedValues data from conic storage or CapacityVectorbooleaninitForecast(int step) booleaninitialize prior to a computeprotected voidinitTSVals(int istep) set estimated values for un-initialized time series variables at the given time step.booleanutility to see if computations are based on instantaneous flows or period average flowsbooleanisNodeComputed(int iorder, RssNode node, Integer idir) returns true if node is computed by the function, the storage function does not compute the flow at any node so it is always falsevoidoutputReport(AlternativeInputReport report, org.jdom.Element elem) Alternative Input Report Interface for data.voidsetCapacityValues(PairedValues stor, PairedValues area) voidsetComputesEvaporation(boolean b) voidsetComputesSeepage(boolean b) voidvoidsetConstSeepage(double s) voidsetConstSeepage(hec.data.ParamDouble pd) booleansetEvapType(int cond) booleansetFieldObject(Field fld, Object fobj) This allows access to fields withing the implementing object to set there data.voidsetFirstStorageValue(double val) voidsetFirstStorageValue(hec.data.ParamDouble pd) storage below first elevation for conic interpolationbooleansetHindcastCondition(int cond) voidsetInitialConicDepth(double val) voidsetInitialConicDepth(hec.data.ParamDouble pd) initial conic depth for below first elevation for conic interpolation.voidsetInitialElevation(double e) voidsetInitialStorage(double s) booleansetMonthlyEvap(double[] e) voidsetPumpVol(RunTimeStep rts, double pumpvol, double pumpvolcap) booleansetSeepageType(int cond) voidvoidCalled just before ascii serialization.voidsetUseConicInterpolation(boolean b) doublestorageToElevation(double stor) voidupdateSystemState(RunTimeStep timestep, int numRteSteps) Update time series variables managed by the pool other than storagevoidregenerates 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.booleanMethods inherited from class hec.rss.model.Function
computeForecastStep, copyInto, findAdjParam, getAdjustableParameter, getComputedTSRecordProxies, getDisplayName, getElement, getFlowVolume, getFlowVolume, getForecastEquation, getFullName, getHindcastEquation, getKeyStringForObject, getObjectForKeyString, getOutputBPart, getSystem, getUnitSystem, hasDefaultParameters, initForecastLoop, initForPostProcessing, initHindcastLoop, printErrorMessage, printErrorMessage, readData, resetParent, restoreFunctionState, restoreHotstartState, saveFunctionState, saveHotstartState, setElement, updateWQTSProxyList, writeDataMethods inherited from class hec.rss.model.RssTSLocationObject
addTSRecord, addTSRecordProxy, addTSRecordProxy, addTSRecordProxy, clearTSProxyList, copyInto, getActiveTSRecordProxies, getTSArray, getTSArray, getTSArray, getTSArray, getTSContainer, getTSContainer, getTSDataSet, getTSRecordProxy, getTSRecordProxy, getTSRecordProxy, getTSRecordProxy, getTSRecordProxy, getTSRecordProxyVec, removeTSRecord, removeTSRecordProxy, removeTSRecordProxyMethods inherited from class hec.lang.NamedType
addModifiableListener, compareTo, fireModifiedStateChanged, getDescription, getIgnoreModifiedEvents, getIndex, getName, isModified, isValid, readResolve, removeModifiableListener, rename, set, setDescription, setIgnoreModifiedEvents, setIndex, setModified, setName, setValid, toString, update, useRecursiveModifiedTestMethods inherited from class java.util.Observable
addObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChangedMethods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface hec.rss.model.RssTSLocation
getTSRecordProxyMethods inherited from interface hec.model.TSLocation
getTSDataSet
-
Field Details
-
KNOWN_STORAGE_CONST
public static final int KNOWN_STORAGE_CONSTLookback Condition: Specified Constant Storage- See Also:
-
KNOWN_STORAGE_TS
public static final int KNOWN_STORAGE_TSLookback Condition: Specified Storage Time Series- See Also:
-
KNOWN_ELEVATION_CONST
public static final int KNOWN_ELEVATION_CONSTLookback Condition: Specified Constant Elevation- See Also:
-
KNOWN_ELEVATION_TS
public static final int KNOWN_ELEVATION_TSLookback Condition: Specified Elevation Time Series- See Also:
-
KNOWN_GUIDECURVE
public static final int KNOWN_GUIDECURVELookback Condition: Storage and Elevation set to Guide Curve- See Also:
-
KNOWN_ELEV_FREL_CON
public static final int KNOWN_ELEV_FREL_CONLookback Condition: Elevation is calculated from Inflow and Outflow except on the first time step is set to the Specified Constant- See Also:
-
KNOWN_ELEV_FREL_TS
public static final int KNOWN_ELEV_FREL_TSLookback Condition: Elevation is calculated from Inflow and Outflow except on the first time step is set to the Specified Time Series Value- See Also:
-
KNOWN_STOR_FREL_CON
public static final int KNOWN_STOR_FREL_CONLookback Condition: Storage is calculated from Inflow and Outflow except on the first time step is set to the Specified Constant- See Also:
-
KNOWN_STOR_FREL_TS
public static final int KNOWN_STOR_FREL_TSLookback Condition: Storage is calculated from Inflow and Outflow except on the first time step is set to the Specified Time Series Value- See Also:
-
KNOWN_FREL_GC
public static final int KNOWN_FREL_GCLookback Condition: Storage and Elevation are calculated from Inflow and Outflow except on the first time step they are set to the Guide Curve Value- See Also:
-
FIRST_HINDCAST_COND
public static final int FIRST_HINDCAST_COND- See Also:
-
LAST_HINDCAST_COND
public static final int LAST_HINDCAST_COND- See Also:
-
SEEPAGE_NONE
public static final int SEEPAGE_NONE- See Also:
-
SEEPAGE_CONST
public static final int SEEPAGE_CONST- See Also:
-
SEEPAGE_FUNC
public static final int SEEPAGE_FUNC- See Also:
-
EVAP_NONE
public static final int EVAP_NONE- See Also:
-
EVAP_MONTHLY
public static final int EVAP_MONTHLY- See Also:
-
EVAP_TS
public static final int EVAP_TS- See Also:
-
DAYS_PER_MONTH
public static final int[] DAYS_PER_MONTH -
DSDT_TO_Q_ENGLISH
public static final double DSDT_TO_Q_ENGLISH- See Also:
-
DSDT_TO_Q_SI
public static final double DSDT_TO_Q_SI- See Also:
-
DSDT_TO_Q
public static double DSDT_TO_Q -
AREA_CONV_ENGLISH
public static double AREA_CONV_ENGLISH -
AREA_CONV_SI
public static double AREA_CONV_SI -
AREA_CONV
public static double AREA_CONV -
EVAPLEN_CONV_ENGLISH
public static double EVAPLEN_CONV_ENGLISH -
EVAPLEN_CONV_SI
public static double EVAPLEN_CONV_SI -
EVAPLEN_CONV
public static double EVAPLEN_CONV
-
-
Constructor Details
-
Storage
public Storage() -
Storage
-
-
Method Details
-
initTSVals
protected void initTSVals(int istep) set estimated values for un-initialized time series variables at the given time step. Must be called from within RssSystem.compute after initialization of forecast.- Overrides:
initTSValsin classFunction- Parameters:
istep-
-
getPreviousElevationEst33
-
getElevationEst33
-
getPreviousOutflowEst33
-
getOutflowEst33
-
getEvapSeepVol
return the total local flow volume for the given time step- Parameters:
rts-- Returns:
-
getElevationEst
get the most recent elevation estimate for the given time step Must be called after initForecast(), never call with a null argument for rts!- Parameters:
rts-- Returns:
- elevation in ft or m
-
setPumpVol
-
incrementPumpVolume
increment the reservoir storage by given amount and update elevation, returns the actual change in storage- Parameters:
rts-vol-- Returns:
-
incrementPumpVolumeCap
-
isNodeComputed
returns true if node is computed by the function, the storage function does not compute the flow at any node so it is always false- Overrides:
isNodeComputedin classFunction- Parameters:
iorder- index of node in element vectornode- node objectidir- integer indicating whether node is inflow or outflow- Returns:
- true if computed, else false
-
cleanupFromDeSerialization
public void cleanupFromDeSerialization()- Overrides:
cleanupFromDeSerializationin classFunction
-
setupForSerialization
public void setupForSerialization()Called just before ascii serialization. Prepares the paired data values by setting there dss record path names- Overrides:
setupForSerializationin classFunction
-
getHindcastDataList
Description copied from class:FunctionDefault implementation of getHindcastDataList does not add any records to the list. This method is overriden in specific functions that require hindcast data.- Overrides:
getHindcastDataListin classFunction
-
computesEvaporation
public boolean computesEvaporation() -
setComputesEvaporation
public void setComputesEvaporation(boolean b) -
computesSeepage
public boolean computesSeepage() -
setComputesSeepage
public void setComputesSeepage(boolean b) -
useConicInterpolation
public boolean useConicInterpolation() -
setUseConicInterpolation
public void setUseConicInterpolation(boolean b) -
setInitialConicDepth
public void setInitialConicDepth(hec.data.ParamDouble pd) initial conic depth for below first elevation for conic interpolation. This value is not necessarily required for conic interpolation -
setInitialConicDepth
public void setInitialConicDepth(double val) -
getInitialConicDepth
public void getInitialConicDepth(hec.data.ParamDouble pd) -
getInitialConicDepth
public double getInitialConicDepth() -
setFirstStorageValue
public void setFirstStorageValue(hec.data.ParamDouble pd) storage below first elevation for conic interpolation -
setFirstStorageValue
public void setFirstStorageValue(double val) -
getFirstStorageValue
public void getFirstStorageValue(hec.data.ParamDouble pd) -
getFirstStorageValue
public double getFirstStorageValue() -
clone
Description copied from class:Functionclone method -
isInstantaneousInput
public boolean isInstantaneousInput()utility to see if computations are based on instantaneous flows or period average flows -
initElevStorAndElevAreaPV
public void initElevStorAndElevAreaPV()Fill elevation storage and elevation area transient PairedValues data from conic storage or CapacityVector -
applyHindcastData
applies specific hindcast data for compute- Overrides:
applyHindcastDatain classFunction
-
getActiveTSProxies
returns a vector of required input, or generated output TSRecordProxies used in the current alternative default implementation function, assume all records are active- Overrides:
getActiveTSProxiesin classFunction
-
updateTSProxyList
public void updateTSProxyList()regenerates 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 classFunction
-
getTSRecordProxies
override Function method to only return elevation or storage proxies as required- Overrides:
getTSRecordProxiesin classRssTSLocationObject
-
getComputedTSRecordProxies
returns a vector of computed ts record proxies assuming the downstream flow is computed overrides method in Function class- Overrides:
getComputedTSRecordProxiesin classFunction
-
getElevationArray
public double[] getElevationArray()returns the elevation time series array -
getElevation
returns the elevation value at the given time (assumes that elevation has already been computed) -
getStorage
returns the storage value at the given time (assumes that storage has already been computed) -
getMaxStorage
public double getMaxStorage()returns the full storage value -
getMinStorage
public double getMinStorage()returns the empty storage value -
calcEvapFlow
calc evaporation flow in cfs or cms based on averaged elevation over time step -
calcEvapFlow
calculate evaporation in cfs/cms for specified start and end elevation -
hasEvap
public boolean hasEvap() -
getMonthlyEvap
public double[] getMonthlyEvap() -
setMonthlyEvap
public boolean setMonthlyEvap(double[] e) -
getEvapType
public int getEvapType() -
setEvapType
public boolean setEvapType(int cond) -
getEvapArray
public double[] getEvapArray()returns the evaporation time series array, may return null -
getSeepArray
public double[] getSeepArray()returns the seepage time series array -
getSpillArray
public double[] getSpillArray() -
calcSeepageFlow
calc seepage flow in cfs or cms based on averaged elevation over time step -
calcSeepageFlow
-
hasSeepage
public boolean hasSeepage() -
getConstSeepage
public void getConstSeepage(hec.data.ParamDouble pd) -
setConstSeepage
public void setConstSeepage(hec.data.ParamDouble pd) -
getConstSeepage
public double getConstSeepage() -
setConstSeepage
public void setConstSeepage(double s) -
getSeepageValues
-
setSeepageValues
-
getElevationStorageValues
-
getElevationAreaValues
-
setCapacityValues
-
getSeepageType
public int getSeepageType() -
setSeepageType
public boolean setSeepageType(int cond) -
getInitialStorage
public double getInitialStorage() -
setInitialStorage
public void setInitialStorage(double s) -
getInitialElevation
public double getInitialElevation() -
setInitialElevation
public void setInitialElevation(double e) -
getHindcastCondition
public int getHindcastCondition() -
setHindcastCondition
public boolean setHindcastCondition(int cond) -
getPreviousStorage
-
getPreviousElevation
-
getInflowVolume
return the total reservoir inflow volume for the given time step assuming that the inflow has already been calculated- Parameters:
rts-- Returns:
-
getNetInflowVolume
return the total reservoir inflow volume for the given time step assuming that the inflow has already been calculated- Parameters:
rts-- Returns:
-
getOutflowVolume
return the total reservoir inflow volume for the given time step assuming that the inflow has already been calculated- Parameters:
rts-- Returns:
-
getInflow
return the total reservoir inflow for the given time step- Parameters:
rts-- Returns:
-
getNetInflow
-
getPreviousNetInflow
-
getPreviousOutflow
-
getOutflow
-
getPumpbackFlow
-
getNetInflowArray
public double[] getNetInflowArray()returns the net inflow time series array -
getOutflowArray
public double[] getOutflowArray() -
getCapacityVector
-
addCapacityRecord
-
emptyCapacityVector
public void emptyCapacityVector() -
setConicElevationAreaValues
-
clearConicElevationAreaValues
public void clearConicElevationAreaValues() -
getConicElevationAreaValues
Elevation-area curve for conic interpolation storage -
storageToElevation
public double storageToElevation(double stor) -
elevationToStorage
public double elevationToStorage(double elev) -
elevationToArea
public double elevationToArea(double elev) -
getFlowForRateOfRise
public double getFlowForRateOfRise(double rateOfRise, double elev, double deltaTSeconds) Convert a rate of rise to a net reservoir inflow,outflow- Parameters:
rateOfRise- rate of reservoir rise per hourelev- elevation for computationdeltaTSeconds- time interval for computing rise- Returns:
- flow equivalent to the rateOfRise at elev
-
initialize
public boolean initialize()initialize prior to a compute- Overrides:
initializein classFunction
-
initForecast
public boolean initForecast(int step) -
computeHindcastStep
- Overrides:
computeHindcastStepin classFunction
-
getHindcastStorage
-
computeInflow
compute the total and net inflow for the given time-step call prior to operation decision making -
computeForecastStep
- Overrides:
computeForecastStepin classFunction
-
computeSubStepFlow
Compute the evaporation and seepage from for a substep- Overrides:
computeSubStepFlowin classFunction- Parameters:
rts- current RunTimeStepxt- timeet- elevation- Returns:
- evaporation plus seepage flow
-
getMaxElevation
public double getMaxElevation() -
getMinElevation
public double getMinElevation() -
getConicStorageForElevation
public static double getConicStorageForElevation(double elevation, PairedValues elevArea, double[] storage, double firstStorageValue, double firstConicDepth) Static function for performing conic interpolation for plotting and editing tables.- Parameters:
elevation-elevationfor conic interpolationelevArea- PairedValues set for elevation - areastorage- previously computed storage values for elevations in elevAreafirstStorageValue- storage value a first elevationfirstConicDepth- initial conic depth, if undefined will compute- Returns:
- storage value for
elevation
-
getConicStorageForElevation
public static double getConicStorageForElevation(double elevation, PairedValues elevArea, double firstStorageValue, double firstConicDepth) -
getConicStorageArray
public static double[] getConicStorageArray(PairedValues elevArea, double firstStorageValue, double firstConicDepth) Compute storage array once and for all given elevation and area values -
calcInitialConicDepth
public double calcInitialConicDepth() -
calcConicBottomArea
public double calcConicBottomArea() -
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 classContinuity- 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 classContinuity- 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
-
outputReport
Description copied from interface:AltInputReportInfcAlternative Input Report Interface for data.- Specified by:
outputReportin interfaceAltInputReportInfc
-
updateSystemState
Update time series variables managed by the pool other than storage- Parameters:
timestep-numRteSteps-
-
getElevationBounded
get the most recent elevation value relative to the given time step.- Parameters:
rts-- Returns:
- most recent elevation value
-