Hydraulic#
- class hydromodpy.watershed.hydraulic.Hydraulic(box_dem: str, nrow: int, ncol: int, nlay_init: int = 1, cond_drain_init: float = 864000, hk_init: float = 8.64, sy_init: float = 0.1, ss_init: float = 1e-05, thick_init: float = 50.0, bottom_init: float = None, hk_decay_init: float = 0.0, sy_decay_init: float = 0.0, ss_decay_init: float = 0.0, lay_decay_init: float = 1.0, verti_hk_init=None, verti_sy_init=None, verti_ss_init=None, vka_init: float = 1.0, exdp_init: float = 1.0)[source]#
Bases:
objectUpdate hydraulic properties of the groundwater flow model.
Parameters#
- box_demstr
Path raster of maximal buffer extent of the model domain generated from geographic.
- nrowint
Number of rows of the model domain obtained from raster in geographic.
- ncolint
Number of columns of the model domain obtained from raster in geographic.
- nlay_initint, optional
Initial value. Vertical layer of the mesh. The default is 1.
- cond_drain_initfloat, optional
Initial value. Conductance value for the drain package applied on top. Considering a cell resolution of 100*100m, The default is 864000 [m3/day].
- hk_initfloat, optional
Initial value. Hydraulic conductivity of the aaquifer. The default is 8.64 in [m/d].
- sy_initfloat, optional
Initial value. Specific yield of the aquifer. The default is 0.1 [-], so 10%.
- ss_initfloat, optional
Initial value. Specifc storage of the aquifer. The default is 1e-5 (1/day).
- thick_initfloat, optional
Initial value. Constant aquifer thickness activated if bottom_init is None. The default is 50 m.
- bottom_initfloat, optional
Initial value. Apply a flat bottom at the aquifer from a elevation value. The default is None.
- hk_decay_initfloat, optional
Initial value. Alpha decay to modify the hydraulic conductivity exponentially decreasing whit depth (e.g. 1/30m). The default is 0.
- sy_decay_initfloat, optional
Initial value. Alpha decay to modify the specific yield exponentially decreasing whit depth (e.g. 1/60m). The default is 0.
- ss_decay_initfloat, optional
Initial value. Alpha decay to modify the specific storage exponentially decreasing whit depth (e.g. 1/120m). The default is 0.
- lay_decay_initfloat, optional
Initial value. Modify vertical layer thickness exponentially decreasing whith depth. The default is 1 (no change).
- verti_hk_initlist, optional
Initial value. Apply hydraulic conductivity values between different thickness. The default is None.
- verti_sy_initlist, optional
Initial value. Apply specific yield values between different thickness. The default is None.
- verti_ss_initlist, optional
Initial value. Apply specific storage values between different thickness. The default is None.
- vka_initlist, optional
Initial value. Ratio of horizontal to vertical hydraulic conductivity. The default is 1.
- update_bottom(bottom_value: float)[source]#
Parameters#
- bottom_valuefloat
Flat bottom elevation of the aquifer model.
- update_calib_zones(zones: ndarray)[source]#
Updates the
calib_zoneszone number withzone. The array values must beintand start at 1. :param zones: localisation of the calibration zones in the DEM.
- update_calib_zones_from_shp(shp_path, default_zone=1)[source]#
Shapefile must be with different features. Field must be âCALIB_ZONEâ = 1,2,3,4
- update_cond_drain(cond_drain_value: float)[source]#
Parameters#
- cond_drain_valuefloat
Drain conductance value at the surface of the aquifer model.
- update_exdp(exdp_value: float)[source]#
Parameters#
- exdpfloat
Extinction depth from the surface of the evapotranspiration.
- update_hk(hk_value: float)[source]#
Parameters#
- hyd_cond_valuefloat
Hydraulic conductivity of the aquifer model.
- update_hk_decay(hk_decay_value: float = 0, min_value: float = None, log_transf: bool = False, grad_elev: list = [])[source]#
Parameters#
- hk_decay_valuefloat
Exponential decay ratio of hydraulic conductivity K. For z=50m, if hk_decay_value=1/50, Kmax (or K0) divide by 2.7 at 50m. K(z) = Kmax*np.exp(-hk_decay_value*z)
- min_valuefloat
If not None, the exponential decay stop until this minimal value Kmin. K(z) = Kmin-(Kmax-Kmin)*np.exp(-hk_decay_value*z)
- log_transfbool
If True, the log transform is applied to the formulation. log(K(z)) = log(Kmin)-(log(Kmax)-log(Kmin))*np.exp(-hk_decay_value*z)
- update_hk_from_calib_zones(num_zone: int, hk_value: float)[source]#
Updates
hk_valuewith a valuehk_valueat the location of thenum_zonein thecalib_zones:param num_zone: the zone number :param hk_value: hydraulic conductivy of the aquifer.
- update_hk_vertical(verti_hk_value: list)[source]#
Parameters#
- verti_hk_valuelist
List of hydraulic conductivity values with associated vertical depth. For example: [ [1, [0, 20]], [0.5, [20,80]] ] 1 m/d between 0 and 20 m depth, and 0.5 m/d between 20 and 80 m depth.
- update_hk_with_geology(geology_code, geology_array, hk_values)[source]#
Updates
hk_valuewith values inhk_valuesat the location of thegeology_codein thegeology_array:param geology_code: list of geology entities. :type geology_code:list of int:param geology_array: localisation of the geology entities in the DEM. :type geology_array:numpy.ndarray(int):param hk_values: hydraulic conductivity values for each geology code. Must be the same lenght ofgeology_code. :type hk_values:list of float
- update_lay_decay(lay_decay_value: float | int)[source]#
Parameters#
- thick_exp_valuefloat
Exponential decay ratio of vertical layer mesh thickness increasing with depath. The default value without decay is 1.
- update_nlay(nlay_value: int)[source]#
Parameters#
- nlay_valueint
Number of vertical layer of the aquifer model mesh.
- update_ss_decay(ss_decay_value: float = 0, min_value: float = None, log_transf: bool = False, grad_elev: list = [])[source]#
Parameters#
- ss_decay_valuefloat
Idem por specific stotage. See âupdate_hk_decayâ.
- update_ss_vertical(verti_ss_value: list)[source]#
Parameters#
- verti_ss_valuelist
Idem for specific storage. See âupdate_hk_verticalâ.
- update_sy_decay(sy_decay_value: float = 0, min_value: float = None, log_transf: bool = False, grad_elev: list = [])[source]#
Parameters#
- sy_decay_valuefloat
Idem por specific yield. See âupdate_hk_decayâ.
- update_sy_from_calib_zones(num_zone: int, sy_value: float)[source]#
Updates
sy_valuewith a valuesy_valueat the location of thenum_zonein thecalib_zones:param num_zone: the zone number :param sy_value: porosity of the aquifer.
- update_sy_vertical(verti_sy_value: list)[source]#
Parameters#
- verti_sy_valuelist
Idem for specific yield. See âupdate_hk_verticalâ.
- update_sy_with_geology(geology_code, geology_array, sy_values)[source]#
Updates
sy_valuewith values insy_valuesat the location of thegeology_codein thegeology_array:param geology_code: list of geology entities. :type geology_code:list of int:param geology_array: localisation of the geology entities in the DEM. :type geology_array:numpy.ndarray(int):param sy_values: specific yields values for each geology code. Must be the same lenght ofgeology_code. :type sy_values:list of float
- update_thick(thick_value: float)[source]#
Parameters#
- thick_valuefloat
Constant thickness of the aquifer model.