pyopmspe11.utils.mapproperties module

Utility function for the grid and locations in the geological models.

pyopmspe11.utils.mapproperties.add_pv_fipnum_front_back(cfg: Config, fipnum: ndarray[tuple[Any, ...], dtype[_ScalarT]], fluxnum: ndarray[tuple[Any, ...], dtype[_ScalarT]], porv: list, d_x: ndarray[tuple[Any, ...], dtype[_ScalarT]], d_z: ndarray[tuple[Any, ...], dtype[_ScalarT]], xcent: ndarray[tuple[Any, ...], dtype[_ScalarT]], zcent: ndarray[tuple[Any, ...], dtype[_ScalarT]], lowpoly: Polygon) None

Buffer pore volume and bc labels also on front and back boundaries.

pyopmspe11.utils.mapproperties.boxes(cfg: Config, x_c: float, z_c: float, idx: int, fluxnum: float) int

Find the global indices for the different boxes for the report data

pyopmspe11.utils.mapproperties.check_facie1(fluxnum: float, numa: int, numb: int) int

Handle the overlaping with facie 1

pyopmspe11.utils.mapproperties.corner(cfg: Config, points: list[Point]) tuple[ndarray[tuple[Any, ...], dtype[_ScalarT]], ndarray[tuple[Any, ...], dtype[_ScalarT]], ndarray[tuple[Any, ...], dtype[_ScalarT]], ndarray[tuple[Any, ...], dtype[_ScalarT]], ndarray[tuple[Any, ...], dtype[_ScalarT]], ndarray[tuple[Any, ...], dtype[_ScalarT]], ndarray[tuple[Any, ...], dtype[_ScalarT]], ndarray[tuple[Any, ...], dtype[_ScalarT]]]

Create a SPE11 corner-point grid

pyopmspe11.utils.mapproperties.corner_point_handling_spe11a(cfg: Config, polygons: list[Polygon], facies: list, xc: ndarray[tuple[Any, ...], dtype[_ScalarT]], zc: ndarray[tuple[Any, ...], dtype[_ScalarT]]) tuple[ndarray[tuple[Any, ...], dtype[_ScalarT]], ndarray[tuple[Any, ...], dtype[_ScalarT]]]

Locate the geological positions in the corner-point grid for the spe11a

pyopmspe11.utils.mapproperties.corner_point_handling_spe11bc(cfg: Config, polygons: list[Polygon], facies: list, xc: ndarray[tuple[Any, ...], dtype[_ScalarT]], zc: ndarray[tuple[Any, ...], dtype[_ScalarT]], ymy: ndarray[tuple[Any, ...], dtype[_ScalarT]], ycent: ndarray[tuple[Any, ...], dtype[_ScalarT]], d_x: ndarray[tuple[Any, ...], dtype[_ScalarT]], d_y: ndarray[tuple[Any, ...], dtype[_ScalarT]], d_z: ndarray[tuple[Any, ...], dtype[_ScalarT]]) tuple[ndarray[tuple[Any, ...], dtype[_ScalarT]], ndarray[tuple[Any, ...], dtype[_ScalarT]], list]

Locate the geological positions in the corner-point grid for the spe11b/c

pyopmspe11.utils.mapproperties.generate_files(cfg: Config) None

Handle the deck and input files generation

pyopmspe11.utils.mapproperties.get_lines(cfg: Config, points: list[Point])

Read the points in the z-surface lines

pyopmspe11.utils.mapproperties.get_lower_polygon(cfg: Config) Polygon

Get the polygon for the lower active cells

pyopmspe11.utils.mapproperties.getpolygons(cfg: Config) tuple[list[Polygon], list, list[Point]]

Function to create the polygons from the benchmark geo file

pyopmspe11.utils.mapproperties.locate_wells_sensors_cp_spe11bc(cfg: Config, fipnum: ndarray[tuple[Any, ...], dtype[_ScalarT]], zc: ndarray[tuple[Any, ...], dtype[_ScalarT]], ymy: ndarray[tuple[Any, ...], dtype[_ScalarT]], pop1: int, pop2: int, well1: int, well2: int) None

Find wells/sources and sensors ijk positions in the corner-point spe11bc

pyopmspe11.utils.mapproperties.map_z(cfg: Config, ycent: ndarray[tuple[Any, ...], dtype[_ScalarT]]) ndarray[tuple[Any, ...], dtype[_ScalarT]]

Mapping z for spe11c as funtion of the y coordinate

pyopmspe11.utils.mapproperties.polygon_search_order(z: float, zmidbot: float, ztopbot: float) list

Speed up by giving the polygon order according to the search region

pyopmspe11.utils.mapproperties.prepare_structured_grid(cfg: Config) tuple[ndarray[tuple[Any, ...], dtype[_ScalarT]], ndarray[tuple[Any, ...], dtype[_ScalarT]], ndarray[tuple[Any, ...], dtype[_ScalarT]]]

Set the regular grid parameters

pyopmspe11.utils.mapproperties.refinement_z(xci: ndarray[tuple[Any, ...], dtype[_ScalarT]], zci: ndarray[tuple[Any, ...], dtype[_ScalarT]], ncz: int, znr: list[int]) tuple[ndarray[tuple[Any, ...], dtype[_ScalarT]], ndarray[tuple[Any, ...], dtype[_ScalarT]], int, int]

Refine grid vertically according to znr refinement factors.

pyopmspe11.utils.mapproperties.sensors_structured_spe11abc(cfg: Config, fipnum: ndarray[tuple[Any, ...], dtype[_ScalarT]], xcent: ndarray[tuple[Any, ...], dtype[_ScalarT]], ycent: ndarray[tuple[Any, ...], dtype[_ScalarT]], zcent: ndarray[tuple[Any, ...], dtype[_ScalarT]]) None

Find the i,j,k sensor indices

pyopmspe11.utils.mapproperties.set_back_front_fipnums(cfg: Config, fipnum: ndarray[tuple[Any, ...], dtype[_ScalarT]], fluxnum: ndarray[tuple[Any, ...], dtype[_ScalarT]], ind: int) None

For the front and back boundaries in spe11c:

Box A: Fipnum 13

Facie 1 and Box A: Fipnum 14

Box B: Fipnum 15

Facie 1 and Box B: Fipnum 16

Box C: Fipnum 17

Facie 1 and Box C: Fipnum 18

pyopmspe11.utils.mapproperties.structured_handling_spe11a(cfg: Config, polygons: list, facies: list) tuple[ndarray[tuple[Any, ...], dtype[_ScalarT]], ndarray[tuple[Any, ...], dtype[_ScalarT]], ndarray[tuple[Any, ...], dtype[_ScalarT]], ndarray[tuple[Any, ...], dtype[_ScalarT]]]

Geological positions in the tensor/cartesian grid for spe11a

pyopmspe11.utils.mapproperties.structured_handling_spe11bc(cfg: Config, polygons: list[Polygon], facies: list) tuple[ndarray[tuple[Any, ...], dtype[_ScalarT]], ndarray[tuple[Any, ...], dtype[_ScalarT]], list, ndarray[tuple[Any, ...], dtype[_ScalarT]], ndarray[tuple[Any, ...], dtype[_ScalarT]]]

Geological positions in the tensor/cartesian grid for the spe11b/c

pyopmspe11.utils.mapproperties.vertices_centers(xmx: ndarray[tuple[Any, ...], dtype[_ScalarT]], ymy: ndarray[tuple[Any, ...], dtype[_ScalarT]], zmz: ndarray[tuple[Any, ...], dtype[_ScalarT]]) tuple[ndarray[tuple[Any, ...], dtype[_ScalarT]], ndarray[tuple[Any, ...], dtype[_ScalarT]], ndarray[tuple[Any, ...], dtype[_ScalarT]]]

Get the axis centers and sizes for a regular grid

pyopmspe11.utils.mapproperties.vertices_sizes(xmx: ndarray[tuple[Any, ...], dtype[_ScalarT]], ymy: ndarray[tuple[Any, ...], dtype[_ScalarT]], zmz: ndarray[tuple[Any, ...], dtype[_ScalarT]]) tuple[ndarray[tuple[Any, ...], dtype[_ScalarT]], ndarray[tuple[Any, ...], dtype[_ScalarT]], ndarray[tuple[Any, ...], dtype[_ScalarT]]]

Get the axis centers and sizes for a regular grid

pyopmspe11.utils.mapproperties.wells_structured_spe11abc(cfg: Config, xcent: ndarray[tuple[Any, ...], dtype[_ScalarT]], ycent: ndarray[tuple[Any, ...], dtype[_ScalarT]], zcent: ndarray[tuple[Any, ...], dtype[_ScalarT]]) None

Function to find the wells/sources index