Пример #1
0
class SaturationVapourPressureInz(lland_sequences.Flux1DSequence):
    """Sättigungsdampdruck unmittelbar oberhalb der Oberfläche des interzepierten
    Schnees (saturation vapour pressure directly above the surface of the intercepted
    snow) [hPa]."""

    NDIM, NUMERIC = 1, False
    mask = lland_masks.Forest()
Пример #2
0
class SBesInz(lland_sequences.Flux1DSequence):
    """Gefrorener Bestandsniederschlag, der den Schneeinterzeptionsspeicher erreicht
    (frozen amount of stand precipitation reaching the snow interception storage)
    [mm/T]."""

    NDIM, NUMERIC = 1, False
    mask = lland_masks.Forest()
Пример #3
0
class STInz(lland_sequences.State1DSequence):
    """Wasseräquivalent Trockenschnee im Interzeptionsspeicher (total water equivalent
    of the intercepted snow) [mm]."""

    NDIM, NUMERIC, SPAN = 1, False, (0.0, None)
    mask = lland_masks.Forest()

    def trim(self, lower=None, upper=None):
        r"""Trim values in accordance with :math:`SInz \leq PWMax \cdot STInz`,
        or at least in accordance with if :math:`STInz \geq 0`.

        >>> from hydpy.models.lland import *
        >>> parameterstep()
        >>> nhru(7)
        >>> pwmax(2.0)
        >>> states.sinz = -1.0, 0.0, 1.0, -1.0, 5.0, 10.0, 20.0
        >>> states.stinz(-1.0, 0.0, 0.0, 5.0, 5.0, 5.0, 5.0)
        >>> states.stinz
        stinz(0.0, 0.0, 0.5, 5.0, 5.0, 5.0, 10.0)
        """
        pwmax = self.subseqs.seqs.model.parameters.control.pwmax
        sinz = self.subseqs.sinz
        if lower is None:
            lower = numpy.clip(sinz / pwmax, 0.0, numpy.inf)
            lower[numpy.isnan(lower)] = 0.0
        super().trim(lower, upper)
Пример #4
0
class ASInz(lland_sequences.State1DSequence):
    """Dimensionsloses Alter des interzipierten Schnees (dimensionless age of the
    intercepted snow layer) [-].

    If there is no intercepted snow, the value of |ASInz| is |numpy.nan|.
    """

    NDIM, NUMERIC, SPAN = 1, False, (0.0, None)
    mask = lland_masks.Forest()
Пример #5
0
class NetRadiationInz(lland_sequences.Flux1DSequence):
    """Nettostrahlung des interzepierten Schnees (total net radiation of the
    intercepted snow [W/m²].

    With positive values, the soil gains heat from radiation.
    """

    NDIM, NUMERIC = 1, False
    mask = lland_masks.Forest()
Пример #6
0
class WSurfInz(lland_sequences.Flux1DSequence):
    """Wärmestrom vom Körper des interzepierten Schnees bis zu dessen Schneeoberfläche
    (heat flux from the body of the intercepted snow to its surface) [W/m²].

    With positive values, the snow-layer looses heat to the atmosphere.
    """

    NDIM, NUMERIC = 1, False
    mask = lland_masks.Forest()
Пример #7
0
class WNiedInz(lland_sequences.Flux1DSequence):
    """Niederschlagsbedingter Wärmestrom in den Schneeinterzeptionsspeicher (heat flux
    into the snow interception storage due to precipitation) [W/m²].

    With positive values, the snow layer gains heat from precipitation.
    """

    NDIM, NUMERIC = 1, False
    mask = lland_masks.Forest()
Пример #8
0
class ActualAlbedoInz(lland_sequences.Flux1DSequence):
    """Aktuelle Albedo der Oberfläche des interzeptierten Schnees (the current albedo
    of the surface of the intercepted snow) [-].

    If there is no intercepted snow, the value of |ActualAlbedoInz| is |numpy.nan|.
    """

    NDIM, NUMERIC = 1, False
    mask = lland_masks.Forest()
Пример #9
0
class WLatInz(lland_sequences.Flux1DSequence):
    """Latente Wärmestrom interzepierter Schnee/Atmosphäre (latent heat flux between
    the intercepted snow and the atmosphere) [MJ/m²].

    With positive values, the snow-layer looses heat to the atmosphere.
    """

    NDIM, NUMERIC = 1, False
    mask = lland_masks.Forest()
Пример #10
0
class WSensInz(lland_sequences.Flux1DSequence):
    """Fühlbare Wärmestrom interzipierter Schnee/Atmosphäre (sensible heat flux
    between the intercepted snow and the atmosphere) [W/m²].

    With positive values, the snow-layer looses heat to the atmosphere.
    """

    NDIM, NUMERIC = 1, False
    mask = lland_masks.Forest()
Пример #11
0
class NetLongwaveRadiationInz(lland_sequences.Flux1DSequence):
    """Langwellige Nettostrahlung des interzepierten Schnees (net longwave radiation
    of the intercepted snow [W/m²].

    With positive values, the snow-layer gains heat from radiation.
    """

    NDIM, NUMERIC = 1, False
    mask = lland_masks.Forest()
Пример #12
0
class NetShortwaveRadiationInz(lland_sequences.Flux1DSequence):
    """Kurzwellige Netto-Strahlungsbilanz für den interzipierten Schnee (net shortwave
    radiation for intercepted snow) [W/m²].

    With positive values, the soil gains heat from radiation.  Without intercepted
    snow, |NetShortwaveRadiationInz| is |numpy.nan|.
    """

    NDIM, NUMERIC = 1, False
    mask = lland_masks.Forest()
Пример #13
0
class SInz(lland_sequences.State1DSequence):
    """Wasseräquivalent Gesamtschnee im Interzeptionsspeicher (frozen water equivalent
    of the intercepted snow) [mm]."""

    NDIM, NUMERIC, SPAN = 1, False, (0.0, None)
    mask = lland_masks.Forest()

    def trim(self, lower=None, upper=None):
        r"""Trim values in accordance with :math:`0 \leq SInz \leq PWMax \cdot STInz`.

        >>> from hydpy.models.lland import *
        >>> parameterstep("1d")
        >>> nhru(7)
        >>> pwmax(2.0)
        >>> states.stinz = 0.0, 0.0, 0.0, 5.0, 5.0, 5.0, 5.0
        >>> states.sinz(-1.0, 0.0, 1.0, -1.0, 5.0, 10.0, 20.0)
        >>> states.sinz
        sinz(0.0, 0.0, 0.0, 0.0, 5.0, 10.0, 10.0)
        """
        pwmax = self.subseqs.seqs.model.parameters.control.pwmax
        stinz = self.subseqs.stinz
        if upper is None:
            upper = pwmax * stinz
        super().trim(lower, upper)
Пример #14
0
class GefrPotInz(lland_sequences.Flux1DSequence):
    """Potentielles Wiedergefrieren des interzipierten Schnees (potential amount
    of water refreezing within the snow interception storage) [mm/T]."""

    NDIM, NUMERIC = 1, False
    mask = lland_masks.Forest()
Пример #15
0
class SchmInz(lland_sequences.Flux1DSequence):
    """Tatsächliche Schmelze des interzepierten Schnees (actual amount of snow
    melting within the snow cover) [mm/T]."""

    NDIM, NUMERIC = 1, False
    mask = lland_masks.Forest()
Пример #16
0
class SchmPotInz(lland_sequences.Flux1DSequence):
    """Potentielle Schmelze des interzepierten Schnees (potential amount of snow
    melting within the snow interception storage) [mm/T]."""

    NDIM, NUMERIC = 1, False
    mask = lland_masks.Forest()
Пример #17
0
class WaDaInz(lland_sequences.Flux1DSequence):
    """Wasserdargebot des Schneeinterzeptionsspeichers (water leaving the snow
    interception storage) [mm/T]."""

    NDIM, NUMERIC = 1, False
    mask = lland_masks.Forest()
Пример #18
0
class GefrInz(lland_sequences.Flux1DSequence):
    """Tatsächliche Wiedergefrieren des interzipierten Schnees (actual amount of
    water refreezing within the snow interception storage) [mm/T]."""

    NDIM, NUMERIC = 1, False
    mask = lland_masks.Forest()
Пример #19
0
class ESnowInz(lland_sequences.State1DSequence):
    """Kälteinhalt der Schneedecke des Interzeptionsspeichers [WT/m²]."""

    NDIM, NUMERIC, SPAN = 1, False, (None, None)
    mask = lland_masks.Forest()
Пример #20
0
class EvSInz(lland_sequences.Flux1DSequence):
    """Tatsächliche Verdunstung des interzepierten Schnees (actual evaporation of
    the intercepted snow) [mm/T]."""

    NDIM, NUMERIC = 1, False
    mask = lland_masks.Forest()
Пример #21
0
class SnowIntMax(lland_sequences.Flux1DSequence):
    """Schneeinterzeptionsspeicherkapazität (capacity of the snow interception
    storage) [mm]."""

    NDIM, NUMERIC = 1, False
    mask = lland_masks.Forest()
Пример #22
0
class SnowIntRate(lland_sequences.Flux1DSequence):
    """Anteil des im Schneeinterzeptionsspeicher zurückgehaltenen Niederschlags
    (ratio between the snow interception rate and precipitation) [-]."""

    NDIM, NUMERIC = 1, False
    mask = lland_masks.Forest()
Пример #23
0
class NBesInz(lland_sequences.Flux1DSequence):
    """Gesamter Bestandsniederschlag, der den Schneeinterzeptionsspeicher erreicht
    (total stand precipitation reaching the snow interception storage) [mm]."""

    NDIM, NUMERIC = 1, False
    mask = lland_masks.Forest()