Well#

class cegalprizm.pythontool.Well(petrel_object_link: BoreholeGrpc)#

A class holding information about a well.

Trajectory information can be derived via a cegalprizm.pythontool.LogSamples - no direct trajectory information is maintained here.

Functions

__init__(petrel_object_link)

add_comment(new_comment[, overwrite])

Add a comment to the already existing comments on the PetrelObject, or overwrite the existing comments.

clone(name_of_clone[, copy_values])

logs_dataframe(global_well_logs[, ...])

Log data for the passed well logs or global well logs as a Pandas dataframe.

md_to_xydepth(md)

Converts a list of MD values to X, Y and Z (depth)

md_to_xytime(md)

Converts a list of MD values to X, Y and Z (time)

retrieve_history()

The Petrel history for the object.

retrieve_stats()

Retrieves a dictionary summarizing the statistics for the object

Properties

comments

The comments on the PetrelObject.

completions_set

EXPERIMENTAL METHOD!

crs_wkt

droid

The Petrel Droid (object id or guid) for the object

logs

A readonly iterable collection of the logs for the well

observed_data_sets

A readonly iterable collection of the observed data sets for the well

path

The path of this object in Petrel.

petrel_name

Returns the name of this object in Petrel

readonly

The read-only status of this object

surveys

A readonly iterable collection of the well surveys for the well

template

Returns the Petrel template for the object as a string.

add_comment(new_comment: str, overwrite: bool = False) None#

Add a comment to the already existing comments on the PetrelObject, or overwrite the existing comments.

Input:

new_comment: The new comment to add to the PetrelObject. overwrite: Boolean flag to overwrite all existing comments with the new comment. Default is False.

Raises

PythonToolException – if object is read-only

logs_dataframe(global_well_logs: Union[cegalprizm.pythontool.welllog.WellLog, cegalprizm.pythontool.welllog.DiscreteWellLog, cegalprizm.pythontool.welllog.GlobalWellLog, cegalprizm.pythontool.petrellink.DiscreteGlobalWellLogs, cegalprizm.pythontool.petrellink.GlobalWellLogs, Iterable[Union[cegalprizm.pythontool.welllog.WellLog, cegalprizm.pythontool.welllog.DiscreteWellLog, cegalprizm.pythontool.welllog.GlobalWellLog, cegalprizm.pythontool.petrellink.DiscreteGlobalWellLogs, cegalprizm.pythontool.petrellink.GlobalWellLogs]]], discrete_data_as: Union[str, int] = 'string') pandas.core.frame.DataFrame#

Log data for the passed well logs or global well logs as a Pandas dataframe.

Returns the log data for the passed global well logs resampled onto consistent MDs. You can pass a single well log or global well log or many as a list.

This method is only available in CPython.

Parameters
  • global_well_logs – a single WellLog, DiscreteWellLog, GlobalWellLog, or DiscreteGlobalWellLogs or a list of either of them

  • discrete_data_as – A flag to change how discrete data is displayed. ‘string’ will cause discrete data tag to be returned as name or ‘value’ will cause discrete data tag to be returned as int. Defaults to ‘string’

Returns

a dataframe of the resampled continuous logs

Return type

pandas.DataFrame

Raises

ValueError – if the supplied objects are not WellLog, DiscreteWellLog, GlobalWellLog, or DiscreteGlobalWellLog

md_to_xydepth(md: List[float]) Tuple[List[float], List[float], List[float]]#

Converts a list of MD values to X, Y and Z (depth)

Parameters

md – List with MD values

Returns

Returns a tuple([x], [y], [z]), where x is a list of x positions,

y is a list of y positions and z is a list of z (depth) positions of the md values.

md_to_xytime(md: List[float]) Tuple[List[float], List[float], List[float]]#

Converts a list of MD values to X, Y and Z (time)

Parameters

md – List with MD values

Returns

Returns a tuple([x], [y], [z]), where x is a list of x positions,

y is a list of y positions and z is a list of z (time) positions. Wells without time will return NaN values.

retrieve_history() pandas.core.frame.DataFrame#

The Petrel history for the object.

Returns the Petrel history for the object as Pandas dataframe.

Returns

The history of the object as reported by Petrel

Return type

DataFrame

retrieve_stats() Dict[str, str]#

Retrieves a dictionary summarizing the statistics for the object

The statistics are a snapshot of the information in the Statistics page of the Settings panel of the object in the Petrel tree. Both the dict key and value are strings, and may contain punctuation, English phrases or just filler information. Any changes to the dict returned will not be saved or affect anything.

Note: this operation may be slow, since the statistics are ‘live’ - they represent the most up to date information.

Returns

The statistics of the object as reported by Petrel

Return type

dict

property comments#

The comments on the PetrelObject.

Returns

The comments on the PetrelObject as a string.

Return type

string

property completions_set#

EXPERIMENTAL METHOD!

property droid: str#

The Petrel Droid (object id or guid) for the object

Returns the Petrel Droid or object id or guid for the object. If not available, will throw a PythonToolException.

This property is planned to be deprecated in favour of a similar but more general id schema in future releases.

Returns

The Petrel Droid of the object

Return type

str

property logs: cegalprizm.pythontool.welllog.Logs#

A readonly iterable collection of the logs for the well

Returns

the logs for the well

Return type

cegalprizm.pythontool.Logs

property observed_data_sets: cegalprizm.pythontool.observeddata.ObservedDataSets#

A readonly iterable collection of the observed data sets for the well

Returns

the observed data sets for the well

Return type

cegalprizm.pythontool.ObservedDataSets

property path: str#

The path of this object in Petrel. Neither the Petrel name nor the path is guaranteed to be unique.

Returns

The path of the Petrel object

Return type

str

property petrel_name: str#

Returns the name of this object in Petrel

property readonly: bool#

The read-only status of this object

Returns

True if the object is read-only

Return type

bool

property surveys: cegalprizm.pythontool.wellsurvey.WellSurveys#

A readonly iterable collection of the well surveys for the well

Returns

the well surveys for the well

Return type

cegalprizm.pythontool.WellSurveys

property template: str#

Returns the Petrel template for the object as a string. If no template available, will return an empty string.