fmu.tools.qcforward package

Submodules

fmu.tools.qcforward.qcforward module

The qcforward methods module

This is a function based approach, but in many cases it may be better if the user make an explicit instance in the calling script, in particular if the job is about to be read numerous times with the reuse option

I.e:

from fmu.tools import qcforward

# .. define data

qcforward.wellzonation_vs_grid(data)

# vs

qcjob = qcforward.WellZonationVsGrid()
qcjob.run(data)
fmu.tools.qcforward.qcforward.wellzonation_vs_grid(data, project=None)[source]

Check well zonation or perforations vs 3D grid.

Parameters:

data (dict) – This is dictonary telling where data comes from

fmu.tools.qcforward.qcforward.grid_statistics(data, project=None)[source]

Check statistics in 3D grid against user input.

Parameters:

data (dict or str) – The input data either as a Python dictionary or a path to a YAML file

fmu.tools.qcforward.qcforward.blockedwells_vs_gridproperties(data, project=None)[source]

Check blocked wells vs vs grid props.

Parameters:

data (dict or str) – The input data either as a Python dictionary or a path to a YAML file

fmu.tools.qcforward.qcforward.grid_quality(data, project=None)[source]

Check grid quality in 3D grid against user input.

Parameters:

data (dict) – The input data either as a Python dictionary or a path to a YAML file

Module contents

fmu.tools.qcforward.wellzonation_vs_grid(data, project=None)[source]

Check well zonation or perforations vs 3D grid.

Parameters:

data (dict) – This is dictonary telling where data comes from

class fmu.tools.qcforward.WellZonationVsGrid[source]

Bases: QCForward

run(data, reuse=False, project=None)[source]

Main routine for evaulating well zonation match in 3D grids.

The routine depends on existing XTGeo functions for this purpose

Parameters:
  • data (dict or str) – The input data either as a Python dictionary or a path to a YAML file

  • reuse (bool or list) – Reusing some “timeconsuming to read” data in the instance. If True, then grid and gridprops will be reused as default. Alternatively it can be a list for more fine grained control, e.g. [“grid”, “gridprops”, “wells”]

  • project (Union[object, str]) – For usage inside RMS

fmu.tools.qcforward.grid_statistics(data, project=None)[source]

Check statistics in 3D grid against user input.

Parameters:

data (dict or str) – The input data either as a Python dictionary or a path to a YAML file

class fmu.tools.qcforward.GridStatistics[source]

Bases: QCForward

run(data, project=None)[source]

Main routine for evaulating if statistics from 3D grids is within user specified thresholds.

The routine depends on existing fmu.tools functionality for extracting property statistics from 3D grids.

Parameters:
  • data (dict or str) – The input data either as a Python dictionary or a path to a YAML file

  • project (Union[object, str]) – For usage inside RMS

Return type:

None

check_gridstatistics(project, data)[source]

Extract statistics per action and check if property value is within user specified limits.

Returns a dataframe with results

fmu.tools.qcforward.grid_quality(data, project=None)[source]

Check grid quality in 3D grid against user input.

Parameters:

data (dict) – The input data either as a Python dictionary or a path to a YAML file

class fmu.tools.qcforward.GridQuality[source]

Bases: QCForward

run(data, reuse=False, project=None)[source]

Main routine for evaluating grid quality and stop/warn if too bad

The routine depends on existing XTGeo functions for this purpose.

Parameters:
  • data (dict or str) – The input data either as a Python dictionary or a path to a YAML file

  • reuse (bool or list) – Reusing some “timeconsuming to read” data in the instance. If True, then grid and gridprops will be reused as default. Alternatively it can be a list for more fine grained control, e.g. [“grid”, “gridprops”, “wells”]

  • project (Union[object, str]) – For usage inside RMS, None if running files

check_gridquality()[source]

Given data, do check of gridquality via XTGeo

Final result will be a table like this:

                      WARNRULE       WARN%  STOPRULE      STOP%  STATUS...
GRIDQUALITY
minangle_top_base[0]  all>10%ifx<60  13.44  all>0%ifx<40  2.32   WARN
collapsed[0]          all>15%        12.25  allcells>30%  0.0    OK
class fmu.tools.qcforward.BlockedWellsVsGridProperties[source]

Bases: QCForward

run(data, reuse=False, project=None)[source]

Main routine for evaluating blockedwells vs gridproperties

The routine depends on existing XTGeo functions for this purpose.

Parameters:
  • data (dict or str) – The input data either as a Python dictionary or a path to a YAML file

  • reuse (bool or list) – Reusing some “timeconsuming to read” data in the instance. If True, then grid and gridprops will be reused as default. Alternatively it can be a list for more fine grained control, e.g. [“grid”, “gridprops”, “bwells”]

  • project (Union[object, str]) – For usage inside RMS, None if running files

compare_bw_props()[source]

Given data, do a comparison of blcked wells cells vs props, via XTGeo.

Return type:

DataFrame

fmu.tools.qcforward.blockedwells_vs_gridproperties(data, project=None)[source]

Check blocked wells vs vs grid props.

Parameters:

data (dict or str) – The input data either as a Python dictionary or a path to a YAML file