HydPy-SW1D-Q-In (submodel for adding pre-determined discharge to a channel inlet)¶
The HydPy-SW1D model family member sw1d_q_in
is a simple routing submodel,
which allows taking observed or previously simulated discharge series as “longitudinal”
channel inflow.
Please refer to the documentation of the “user model” sw1d_channel
and the
“composite model” sw1d_network
, where we demonstrate and discuss sw1d_q_in
in more
detail (see, for example, :ref:`sw1d_channel_longitudinal_inflow).
- class hydpy.models.sw1d_q_in.Model[source]¶
Bases:
Main_CrossSectionModel_V2
,RoutingModel_V1
HydPy-SW1D-Q-In (submodel for adding pre-determined discharge to a channel inlet).
- The following interface methods are available to main models using the defined model as a submodel:
Perform_Preprocessing_V1
Routing model interface method for preprocessing data that is invariant within each external simulation step.Determine_MaxTimeStep_V2
Interface method for determining the highest possible computation time step at an inflow location.Determine_Discharge_V2
Interface method for determining the discharge at an inflow location.Perform_Postprocessing_V1
Routing model interface method for executing all tasks necessary at the end of each external simulation step.Get_MaxTimeStep_V1
Interface method for querying the highest possible computation time step in s.Get_Discharge_V1
Interface method for querying the discharge in m³/s.Get_PartialDischargeUpstream_V1
Return a partial discharge estimate suitable for a downstream model.Get_DischargeVolume_V1
Interface method for querying the discharge in m³.Set_TimeStep_V1
Interface method for setting the actual computation time step in s.
- The following “additional methods” might be called by one or more of the other methods or are meant to be directly called by the user:
Pick_Inflow_V1
Pick the longitudinal inflow from an arbitrary number of inlet sequences.Calc_WaterLevelDownstream_V1
Query the water level from a downstream submodel that follows theStorageModel_V1
interface.Calc_WaterLevel_V2
Take the water level from the downstream channel segment.Calc_WaterDepth_WettedArea_CrossSectionModel_V2
Let a submodel that follows theCrossSectionModel_V2
submodel interface calculate the water depth and the wetted area based on the current water level.Calc_WaterDepth_WettedArea_V1
Let a submodel that follows theCrossSectionModel_V2
submodel interface calculate the water depth and the wetted area based on the current water level.Calc_MaxTimeStep_V2
Estimate the highest possible computation time step for which we can expect stability for an inflow-providing routing model.Calc_DischargeVolume_V1
Calculate the total discharge volume of a complete external simulation step at once.
- Users can hook submodels into the defined main model if they satisfy one of the following interfaces:
CrossSectionModel_V2
Interface for calculating discharge-related properties at a channel cross-section.RoutingModel_V2
Interface for calculating the discharge between two channel segments.RoutingModel_V3
Interface for calculating the outflow of a channel.StorageModel_V1
Interface for calculating the water amount stored in a single channel segment.
- DOCNAME: DocName = ('SW1D-Q-In', 'submodel for adding pre-determined discharge to a channel inlet')¶
- crosssection: SubmodelProperty[CrossSectionModel_V2]¶
Required submodel that complies with the following interface: CrossSectionModel_V2.
- storagemodeldownstream: modeltools.SubmodelProperty[StorageModel_V1]¶
Required reference to the neighbour storage model downstream.
- storagemodeldownstream_is_mainmodel¶
- storagemodeldownstream_typeid¶
- routingmodelsdownstream: modeltools.SubmodelsProperty[RoutingModel_V2 | RoutingModel_V3]¶
References to the neighbour routing models lying downstream.
- REUSABLE_METHODS: ClassVar[tuple[type[ReusableMethod], ...]] = ()¶
- cymodel: CyModelProtocol | None¶
- parameters: parametertools.Parameters¶
- sequences: sequencetools.Sequences¶
- masks: masktools.Masks¶
- class hydpy.models.sw1d_q_in.ControlParameters(master: Parameters, cls_fastaccess: type[FastAccessParameter] | None = None, cymodel: CyModelProtocol | None = None)¶
Bases:
SubParameters
Control parameters of model sw1d_q_in.
- The following classes are selected:
LengthDownstream()
The downstream channel segment’s length [km].TimeStepFactor()
A factor for reducing the estimated computation time step to increase numerical stability [-].
- class hydpy.models.sw1d_q_in.DerivedParameters(master: Parameters, cls_fastaccess: type[FastAccessParameter] | None = None, cymodel: CyModelProtocol | None = None)¶
Bases:
SubParameters
Derived parameters of model sw1d_q_in.
- The following classes are selected:
Seconds()
The length of the actual simulation step size in seconds [s].
- class hydpy.models.sw1d_q_in.FactorSequences(master: Sequences, cls_fastaccess: type[TypeFastAccess_co] | None = None, cymodel: CyModelProtocol | None = None)¶
Bases:
FactorSequences
Factor sequences of model sw1d_q_in.
- The following classes are selected:
MaxTimeStep()
The highest possible computation time step according to local stability considerations [s].TimeStep()
The actual computation step according to global stability considerations [s].WaterDepth()
Water depth [m].WaterLevel()
Water level [m].WaterLevelDownstream()
The downstream channel segment’s water level [m].WettedArea()
The channel wetted area [m²].
- class hydpy.models.sw1d_q_in.FluxSequences(master: Sequences, cls_fastaccess: type[TypeFastAccess_co] | None = None, cymodel: CyModelProtocol | None = None)¶
Bases:
FluxSequences
Flux sequences of model sw1d_q_in.
- The following classes are selected:
Inflow()
Longitudinal flow into the first channel segment [m³/s].DischargeVolume()
The total amount of discharge of a simulation step [m³/T].
- class hydpy.models.sw1d_q_in.InletSequences(master: Sequences, cls_fastaccess: type[TypeFastAccess_co] | None = None, cymodel: CyModelProtocol | None = None)¶
Bases:
InletSequences
Inlet sequences of model sw1d_q_in.
- The following classes are selected:
LongQ()
The longitudinal inflow into the first channel segment [m³/s].
- class hydpy.models.sw1d_q_in.StateSequences(master: Sequences, cls_fastaccess: type[TypeFastAccess_co] | None = None, cymodel: CyModelProtocol | None = None)¶
Bases:
StateSequences
State sequences of model sw1d_q_in.
- The following classes are selected:
Discharge()
Discharge [m³/s].