eml_urban_hydro_model package¶
Subpackages¶
- eml_urban_hydro_model.type_models package
- Submodules
- eml_urban_hydro_model.type_models.area_parameters module
- eml_urban_hydro_model.type_models.model_input module
- eml_urban_hydro_model.type_models.model_output module
- eml_urban_hydro_model.type_models.model_parameters module
- eml_urban_hydro_model.type_models.preprocessing_parameters module
- eml_urban_hydro_model.type_models.rho_parameters module
- eml_urban_hydro_model.type_models.soil_parameters module
- eml_urban_hydro_model.type_models.vegetation_parameters module
- Module contents
- Submodules
Submodules¶
Module contents¶
- class eml_urban_hydro_model.AreaParameters(*, omegaSoil: Annotated[float, Gt(gt=0)], omegaRoad: Annotated[float, Ge(ge=0)], omegaRoof: Annotated[float, Ge(ge=0)], runoff_coeff_soil: Annotated[float, Ge(ge=0), Le(le=1)] = 0.5, runoff_coeff_roads: Annotated[float, Ge(ge=0), Le(le=1)] = 0.9, runoff_coeff_roofs: Annotated[float, Ge(ge=0), Le(le=1)] = 0.95)[source]¶
Bases:
BaseModel
Container for area parameters.
- _abc_impl = <_abc._abc_data object>¶
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- omegaRoad: float¶
- omegaRoof: float¶
- omegaSoil: float¶
- runoff_coeff_roads: float¶
- runoff_coeff_roofs: float¶
- runoff_coeff_soil: float¶
- class eml_urban_hydro_model.ModelInput(*args, **kwargs)[source]¶
Bases:
DataFrameModel
DataFrame model for the model’s input data.
- precp: Series[float] = 'precp'¶
- time: Series[Timestamp] = 'time'¶
- class eml_urban_hydro_model.ModelOutput(*args, **kwargs)[source]¶
Bases:
DataFrameModel
DataFrame model for the model’s output data.
- Qirr: Series[float] = 'Qirr'¶
- Qout: Series[float] = 'Qout'¶
- Qroad: Series[float] = 'Qroad'¶
- Qroof: Series[float] = 'Qroof'¶
- Qsoil: Series[float] = 'Qsoil'¶
- Qtank: Series[float] = 'Qtank'¶
- Vflush: Series[float] = 'Vflush'¶
- soil_mois: Series[float] = 'soil_mois'¶
- time: Series[Timestamp] = 'time'¶
- v_tank: Series[float] = 'v_tank'¶
- class eml_urban_hydro_model.ModelParameters(*, k: float = 84, frac_rt2s: float = 0.5, frac_rt2tk: float = 0.5, vegetation_params: VegetationParameters = VegetationParameters(Z_root=140.0), E_max: float = 0.5, E_w: float = 0.0625, heavy: float = 9.166666666666667e-05, soil_params: SoilParameters = SoilParameters(Ks=100.0, n=0.42, beta=12.7, sh=0.08, sw=0.11, ss=0.31, sfc=0.52), area_params: AreaParameters, Vmax: float = 10, lag: int = 0, resolution: int = 5, Qirr: float | None = None, flushing_frequency: float = 2)[source]¶
Bases:
BaseModel
Container for model’s parameters.
- E_max: float¶
- E_w: float¶
- Qirr: float | None¶
- Vmax: float¶
- _abc_impl = <_abc._abc_data object>¶
- area_params: AreaParameters¶
- flushing_frequency: float¶
- frac_rt2s: float¶
- frac_rt2tk: float¶
- heavy: float¶
- k: float¶
- lag: int¶
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- resolution: int¶
- soil_params: SoilParameters¶
- vegetation_params: VegetationParameters¶
- class eml_urban_hydro_model.PreprocessingParameters(*, ic: float = 0.2, T: int = 50, resolution: int = 5)[source]¶
Bases:
BaseModel
Container for preprocess function parameters.
- T: int¶
- _abc_impl = <_abc._abc_data object>¶
- ic: float¶
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- resolution: int¶
- class eml_urban_hydro_model.SoilParameters(*, Ks: float, n: float, beta: float, sh: float, sw: float, ss: float, sfc: float)[source]¶
Bases:
BaseModel
Container for soil parameters.
- Ks: float¶
- _abc_impl = <_abc._abc_data object>¶
- beta: float¶
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- n: float¶
- sfc: float¶
- sh: float¶
- ss: float¶
- sw: float¶
- class eml_urban_hydro_model.VegetationParameters(*, Z_root: float)[source]¶
Bases:
BaseModel
Container for vegetation parameters.
- Z_root: float¶
- _abc_impl = <_abc._abc_data object>¶
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- eml_urban_hydro_model.get_percent_paved(params: AreaParameters) float [source]¶
Calculates the percentage of paved area based on the area parameters.
- Parameters:
params (AreaParameters) – The area parameters containing omega values.
- Returns:
The percentage of paved area (0-100).
- Return type:
float
- eml_urban_hydro_model.model_st(df: DataFrame[ModelInput], params: ModelParameters) DataFrame[ModelOutput] [source]¶
- eml_urban_hydro_model.preprocess(original_rainfall: DataFrame[ModelInput], params: PreprocessingParameters = PreprocessingParameters(ic=0.2, T=50, resolution=5)) DataFrame[ModelInput] [source]¶
Modify rainfall intensity using a memory term with heavyside equation.
- eml_urban_hydro_model.set_percent_paved(params: AreaParameters, percent_paved: float) AreaParameters [source]¶
Adjusts the omega* parameters based on the percent_paved value.
- Parameters:
params (AreaParameters) – The original area parameters.
percent_paved (float) – The desired percentage of paved area (0-100).
- Returns:
Updated area parameters with adjusted omega values.
- Return type: