Settings#

class hydromodpy.watershed.settings.Settings[source]#

Bases: object

Class with some update functions for groundwater model parameters.

update_bc_sides(bc_left, bc_right)[source]#

Apply boundary conditions on the side of the groundwater flow model.

Parameters#

bc_leftfloat

Value of head-constant boundary condition on the left side (column) of 2D matrix.

bc_rightTYPE

Value of head-constant boundary condition on the right side (column) of 2D matrix.

update_box_model(box)[source]#

Define the extend of the groundwater flow model simulation.

Parameters#

boxbool

True of False. If True, the model is run at the maximal box scale of the buffered model domain. If False, the model is run at the buffered model domain scale.

update_check_model(plot_cross=True, check_grid=True, cross_ylim=[])[source]#

Activate of not the cross-section plot of the aquifer model.

Parameters#

plot_crossbool, optional

The default is True.

update_dis_perlen(dis_perlen=False)[source]#

Activate the split discretization of recharge with time length.

Parameters#

dis_perlenbool, optional

The default is False.

update_input_particles(zone_partic, cell_div=1, zloc_div=False, bore_depth=None, track_dir='forward', sel_random=None, sel_slice=None)[source]#

Select the zones and configurations to inject particles.

Parameters#

zone_particstr, optional

Path of the raster used to inject particles: where value > 0. The default is ‘domain’, so the particles are injected where the model domain area > 0m.

track_dir: str

Choice ‘forward’ or ‘backward’ particle tracking method. The default is ‘forward’.

bore_depth: list

[Not stable, currently in development] If not None, inject a particle in the z direction (vertical), at the center position of each lays.

cell_div: int

Fix the number of particles injected uniformly distributed for each cell. If 3 is set, 9 particles will be inejcted (3x*3y) The dault is 1.

zloc_div: bool

If True, ‘cell_div’ is also applied vetically for the cells. If cell_div is 3 and zloc_div is True, 18 particles will be injected (3x*3y*3z). The default is False.

sel_random: int

Select randomly where inject a total number of particles.

sel_random: int

Select with slicing value where particles.

update_model_name(model_name)[source]#

Update the model name of the simulation.

Parameters#

model_namestr

Name of simulation.

update_simulation_state(sim_state)[source]#

Define the type of simulation.

Parameters#

sim_statestr

Two options with ‘steady’ and ‘transient’. If ‘steady’, input forcing is only one value.

update_sink_fill(sink_fill)[source]#
update_well_pumping(well_coords=[], well_fluxes=[])[source]#

Add wells and associated fluxes across the model domain area.

wells_coordlist

Inform the outlet coordinates of wells [lay,row,col]. Example for 2 wells: [ [1,20,30], [1,15,15] ]

wells_fluxeslist

Inform the fluxes [L3/T] for each stress-periods, for different wells. Example for 2 wells and 5 stress-periods: [ [-100,0,-100,0,-100], [-100,0,-100,0,-100] ]