HydPy-SW1D-Storage (submodel for calculating a single channel segment's water balance)

The HydPy-SW1D model family member sw1d_storage is a storage submodel for keeping track of the water amount stored in a channel segment and calculating the water level.

Please refer to the documentation of the “user model” sw1d_channel and the “composite model” sw1d_network, where we demonstrate and discuss sw1d_storage in detail.

class hydpy.models.sw1d_storage.Model[source]

Bases: Main_CrossSectionModel_V2, StorageModel_V1

HydPy-SW1D-Storage (submodel for calculating a single channel segment’s water balance).

The following “inlet update methods” are called in the given sequence at the beginning of each simulation step:
The following “sender update methods” are called in the given sequence after performing a simulation step:
  • Pass_WaterLevel_V1 Pass the calculated water level to an arbitrary number of sender sequences.

The following interface methods are available to main models using the defined model as a submodel:
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:
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_V1 Interface for calculating the inflow into a channel.

  • 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-Storage', "submodel for calculating a single channel segment's water balance")
crosssection: SubmodelProperty[CrossSectionModel_V2]

Required submodel that complies with the following interface: CrossSectionModel_V2.

routingmodelsupstream: modeltools.SubmodelsProperty[RoutingModel_V1 | RoutingModel_V2 | RoutingModel_V3]

Optional reference to the neighbour routing model upstream.

routingmodelsdownstream: modeltools.SubmodelsProperty[RoutingModel_V1 | RoutingModel_V2 | RoutingModel_V3]

Optional reference to the neighbour routing model downstream.

REUSABLE_METHODS: ClassVar[tuple[type[ReusableMethod], ...]] = ()
cymodel: CyModelProtocol | None
parameters: parametertools.Parameters
sequences: sequencetools.Sequences
masks: masktools.Masks
class hydpy.models.sw1d_storage.ControlParameters(master: Parameters, cls_fastaccess: type[FastAccessParameter] | None = None, cymodel: CyModelProtocol | None = None)

Bases: SubParameters

Control parameters of model sw1d_storage.

The following classes are selected:
  • Length() The length of a single channel segment [km].

class hydpy.models.sw1d_storage.FactorSequences(master: Sequences, cls_fastaccess: type[TypeFastAccess_co] | None = None, cymodel: CyModelProtocol | None = None)

Bases: FactorSequences

Factor sequences of model sw1d_storage.

The following classes are selected:
class hydpy.models.sw1d_storage.FluxSequences(master: Sequences, cls_fastaccess: type[TypeFastAccess_co] | None = None, cymodel: CyModelProtocol | None = None)

Bases: FluxSequences

Flux sequences of model sw1d_storage.

The following classes are selected:
  • LateralFlow() Lateral flow into the first channel segment [m³/s].

  • NetInflow() The net inflow into a channel segment [m³/T].

class hydpy.models.sw1d_storage.InletSequences(master: Sequences, cls_fastaccess: type[TypeFastAccess_co] | None = None, cymodel: CyModelProtocol | None = None)

Bases: InletSequences

Inlet sequences of model sw1d_storage.

The following classes are selected:
  • LatQ() The lateral inflow into the first channel segment [m³/s].

class hydpy.models.sw1d_storage.SenderSequences(master: Sequences, cls_fastaccess: type[TypeFastAccess_co] | None = None, cymodel: CyModelProtocol | None = None)

Bases: SenderSequences

Sender sequences of model sw1d_storage.

The following classes are selected:
  • WaterLevel() The water level within the first channel segment [m].

class hydpy.models.sw1d_storage.StateSequences(master: Sequences, cls_fastaccess: type[TypeFastAccess_co] | None = None, cymodel: CyModelProtocol | None = None)

Bases: StateSequences

State sequences of model sw1d_storage.

The following classes are selected: