wolfhece.hydrology.RetentionBasin
Author: HECE - University of Liege, Pierre Archambeau, Christophe Dessers Date: 2024
Copyright (c) 2024 University of Liege. All rights reserved.
This script and its content are protected by copyright law. Unauthorized copying or distribution of this file, via any medium, is strictly prohibited.
Module Contents
- class wolfhece.hydrology.RetentionBasin.RetentionBasin(_dateBegin=None, _dateEnd=None, _deltaT: int = None, _time=None, _id='J1', _name='Default name', _type='', _dictRB={}, _directDictRB={}, _tz=0, _outletNames=[], withRBDict=True, _workingDir='')[source]
- property relative_filledVolume[source]
The relative_fillevolume is computed on the basis of filledvolume and initial volume
- add_downstreamObj(toPoint, name='DEFAULT', deltaTime=0.0, tolerance=0)[source]
This procedure link the downstream element to the object tolerance indicates if the downstream objet should already exist (=0) to continue => to implement
- add_directFluxObj(toPoint, name='DEFAULT')[source]
This procedure link the direct inlet elements to the object
- compute_hydro(givenDirectFluxIn=[], givenInlet=[])[source]
This function computes the raw and real hydrographs.
The volume filled and then the water height in the RB at time $t$ will be evaluated will depend of the flows at time $t-1$ exept if the
- Internal variables modifiedself.inlets, self.inletsRaw,
self.directFluxInRB, self.directFluxInRB_Raw, self._outFlowRaw, self._outFlow, self.filledVolume
- CAUTION: - Discussion about the ceil or the floor for the timeDelay indice!!!
UPDATE 2023.1 now the outFlow are not delayed anymore !!!! -> IMPORTANT UPDATE
- compute_one_step_hydro(i, givenDirectFluxIn: float = None, givenInlet: float = None)[source]
This function computes the raw and real hydrographs for one time step.
The volume filled and then the water height in the RB at time $t$ will be evaluated will depend of the flows at time $t-1$ exept if the
- Internal variables modifiedself.inlets, self.inletsRaw,
self.directFluxInRB, self.directFluxInRB_Raw, self._outFlowRaw, self._outFlow, self.filledVolume
- CAUTION: - Discussion about the ceil or the floor for the timeDelay indice!!!
UPDATE 2023.1 now the outFlow are not delayed anymore !!!! -> IMPORTANT UPDATE
- init_all_inlets()[source]
This function initializes the inlets and directFluxInRB of the RB Internal variables modified: self.inlets, self.inletsRaw, self.directFluxInRB, self.directFluxInRB_Raw
- sum_inlets(givenInlet=[])[source]
This procedure sum all the inlets of the RB Caution: inlets variable is different from directFluxIn !!
Internal variables modified: self.inlets, self.inletsRaw
- sum_directFluxInRB(givenDirectFluxIn=[])[source]
This procedure computes the flux going directly inside the RB
Internal variables modified: self.directFluxInRB, self.directFluxInRB_Raw
- sum_one_step_directFluxInRB(i, givenDirectFluxIn: float = None)[source]
This procedure computes the flux going directly inside the RB
Internal variables modified: self.directFluxInRB, self.directFluxInRB_Raw
- plot(workingDir, plotRaw=True, axis='Hours', rangeData=[], deltaMajorTicks=24.0 * 3600.0, deltaMinorTicks=3600.0, tzPlot=0, unitReservoir='[m^3]')[source]
This procedure plots: - the inlets: in color chosen randomly by matplotlib - DirectIn : in color chosen randomly by matplotlib and in ‘-.’ lines - the outlet: in black solid line - the raw outlet: in black dashed line
- plot_outlet(Measures=None, rangeData=[], yrangeRain=[], yrangeData=[], ylabel=[], addData=[], dt_addData=[], beginDates_addData=[], endDates_addData=[], label_addData=[], color_addData=[], factor=1.5, graph_title='', withEvap=False, writeFile='', withDelay=True, deltaMajorTicks=-1, deltaMinorTicks=-1, tzPlot=0, figure=None)[source]
- add_rain(workingDir, tzDelta=datetime.timedelta(hours=0))[source]
This function returns the a time array and a array containing the sum of all the rain in the inlets Value changed : self.rain
- get_outFlow_noDelay(whichOutFlow='', unit='m3/s')[source]
This function returns the total outlet of the basin and considers t0=0 at the outlet of the subbasin without considering timeDelay (the time of the real outlet of the whole potential catchment)
- get_outFlowRaw_noDelay(whichOutFlow='', unit='m3/s')[source]
This function returns the total raw outlet of the basin and considers t0=0 at the outlet of the subbasin without considering timeDelay (the time of the real outlet of the whole potential catchment)
- get_inlets_noDelay(unit='m3/s') wolfhece.hydrology.Outlet.np.ndarray [source]
This function returns the total inlets of the basin and considers t0=0 at the outlet of the subbasin without considering timeDelay (the time of the real outlet of the whole potential catchment)
- get_direct_insideRB_inlets(unit: str = 'm3/s', lag: float = 0.0) wolfhece.hydrology.Outlet.np.ndarray [source]
- compute_Q_from_V(givenDirectFluxIn=[], givenInlet=[], average_steps=1)[source]
This function computes the raw and real hydrographs.
The volume filled and then the water height in the RB at time $t$ will be evaluated will depend of the flows at time $t-1$ exept if the
- Internal variables modifiedself.inlets, self.inletsRaw,
self.directFluxInRB, self.directFluxInRB_Raw, self.outFlowRaw, self.outFlow, self.filledVolume
- construct_surfaceDrainedHydro()[source]
Calculates the total surface drained hydrology by summing up the surface drained hydrology values from the directFluxObj and intletsObj modules. Cautions: when there are several outflows in a module, the surfaceDrainedHydro is added only once, towards the natural outlet of the module (by convention the first outflow).
- Returns:
None
- activate(effSubs: list = [], effSubsSort: list = [], mask: list = [], onlyItself: bool = False)[source]
- get_outFlow_global(whichOutFlow='', typeOutFlow='Net')[source]
The outFlow global property. Returns the outFlow in the global time, i.e. the hydrograph to which the timeDelay is applied.
- set_volume(volume: wolfhece.hydrology.Outlet.np.ndarray, time: wolfhece.hydrology.Outlet.np.ndarray = None)[source]