imod.prepare.assign_wells#

imod.prepare.assign_wells(wells: DataFrame, top: DataArray | UgridDataArray, bottom: DataArray | UgridDataArray, k: DataArray | UgridDataArray | None = None, minimum_thickness: float | None = 0.05, minimum_k: float | None = 1.0, validate: bool = True) DataFrame[source]#

Distribute well pumping rate according to filter length when k=None, or to transmissivity of the sediments surrounding the filter. Minimum thickness and minimum k should be set to avoid placing wells in clay layers.

Wells where well screen_top equals screen_bottom are assigned to the layer they are located in, without any subdivision. Wells located outside of the grid are removed.

Parameters:
  • wells (pandas.DataFrame) – Should contain columns x, y, id, top, bottom, rate.

  • top (xarray.DataArray or xugrid.UgridDataArray) – Top of the model layers.

  • bottom (xarray.DataArray or xugrid.UgridDataArray) – Bottom of the model layers.

  • k (xarray.DataArray or xugrid.UgridDataArray, optional) – Horizontal conductivity of the model layers.

  • minimum_thickness (float, optional, default: 0.01)

  • minimum_k (float, optional, default: 1.0) – Minimum conductivity

  • validate (bool) – raise an excpetion if one of the wells is not in the domain

Returns:

placed_wells – Wells with rate subdivided per layer. Contains the original columns of wells, as well as layer, overlap, transmissivity.

Return type:

pd.DataFrame