SurfaceAttribute#
- class cegalprizm.pythontool.SurfaceAttribute(petrel_object_link: SurfacePropertyGrpc)#
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.
all
()Creates a
cegalprizm.pythontool.Chunk
with the values for the attributechunk
([irange, jrange])Creates a
cegalprizm.pythontool.Chunk
with the values for the attributeclone
(name_of_clone[, copy_values])Creates a clone of the Petrel object.
has_same_parent
(other)Tests whether the surface attribute has the same parent surface
ijks_to_positions
(indices)Converts a list with i and j indices to xyz.
is_undef_value
(value)Whether the value is the 'undefined value' for the attribute
positions_to_ijks
(positions)Converts a list of xyzs to ijk
The Petrel history for the object.
Retrieves a dictionary summarizing the statistics for the object
Properties
The affine transform of the object.
The comments on the PetrelObject.
The PROJCS well known text representation of the object CRS.
The Petrel Droid (object id or guid) for the object
'parent_surface' has been removed.
The path of this object in Petrel.
Returns the name of this object in Petrel
The read-only status of this object
The parent surface of the attribute
Returns the Petrel template for the object as a string.
The 'undefined value' for this attribute
The symbol for the unit which the values are measured in
- 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
- all() cegalprizm.pythontool.chunk.Chunk #
Creates a
cegalprizm.pythontool.Chunk
with the values for the attribute- Returns
A Slice containing the values for the attribute
- Return type
- chunk(irange: Optional[Tuple[int, int]] = None, jrange: Optional[Tuple[int, int]] = None) cegalprizm.pythontool.chunk.Chunk #
Creates a
cegalprizm.pythontool.Chunk
with the values for the attribute- Parameters
i – A tuple(i1,i2) where i1 is the start index and i2 is the end index. The start and end value in this range is inclusive. If None include all i values.
j – A tuple(j1,j2) where j1 is the start index and j2 is the end index. The start and end value in this range is inclusive. If None include all j values.
- Returns
A Slice containing the values for the attribute
- Return type
- clone(name_of_clone: str, copy_values: bool = False) cegalprizm.pythontool.surface.Surface #
Creates a clone of the Petrel object.
The clone is placed in the same collection as the source object. A clone cannot be created with the same name as an existing Petrel object in the same collection.
This is a Python Tool Pro function and is not available when running scripts in the editor integrated in Python Tool or in a workflow.
- Parameters
path_of_clone – Petrel name of the clone
copy_values – Set to True if values shall be copied into the clone. Defaults to False.
- Returns
The clone
- Return type
- Raises
Exception – If there already exists a Petrel object with the same name
ValueError – If name_of_clone is empty or contains slashes
- has_same_parent(other: cegalprizm.pythontool.surface.SurfaceAttribute) bool #
Tests whether the surface attribute has the same parent surface
- Parameters
other – the other surface attribute
- Returns
True
if theother
object has the same parent surface- Return type
bool
- Raises
ValueError – if
other
is not a SurfaceAttribute
- ijks_to_positions(indices: Tuple[List[float], List[float]]) Tuple[List[float], List[float], List[float]] #
Converts a list with i and j indices to xyz.
- Parameters
indices – A tuple([i],[j]) where [i] is a list of i indices and [j] is a list of j indices.
- Returns
- A tuple([x],[y],[z]) where [x] is a list of x coordinates,
[y] is a list of y coordinates and [z] is a list of z coordinates.
- is_undef_value(value: Union[int, float]) bool #
Whether the value is the ‘undefined value’ for the attribute
Petrel represents some undefined values by
MAX_INT
, others byNaN
. A comparison withNaN
will always returnFalse
(e.g.float.nan != float.nan
) so it is preferable to always use this method to test for undefined values.- Parameters
value – the value to test
- Returns
True if value is ‘undefined’ for this surface attribute
- Return type
bool
- positions_to_ijks(positions: Union[Tuple[List[float], List[float]], Tuple[List[float], List[float], List[float]]]) Tuple[List[float], List[float]] #
Converts a list of xyzs to ijk
- Parameters
positions – A tuple([x],[y]) where [x] is a list of x coordinates and [y] is a list of y coordinates.
- Returns
- A tuple([i],[j]) where [i] is a list of i indices
and [j] is a list of j indices.
- 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 affine_transform#
The affine transform of the object.
- Returns
An array with 6 coefficients of the affine transformation matrix. If array is represented as [a, b, c, d, e, f] then this corresponds to a affine transformation matrix of form: | a b e | | c d f | | 0 0 1 |
- Return type
1d array
- property comments#
The comments on the PetrelObject.
- Returns
The comments on the PetrelObject as a string.
- Return type
string
- property crs_wkt#
The PROJCS well known text representation of the object CRS.
- Returns
PROJCS well known text representation of the CRS.
- Return type
string
- 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 parent_surface: None#
‘parent_surface’ has been removed. Use ‘surface’ instead
- Type
DeprecationWarning
- 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 surface: cegalprizm.pythontool.surface.Surface#
The parent surface of the attribute
- Returns
The parent surface of the attribute
- Return type
- property template: str#
Returns the Petrel template for the object as a string. If no template available, will return an empty string.
- property undef_value: float#
The ‘undefined value’ for this attribute
Use this value when setting a slice’s value to ‘undefined’. Do not attempt to test for undefinedness by comparing with this value, use
is_undef_value()
instead.- Returns
The ‘undefined value’ for this attribute
- property unit_symbol: Optional[str]#
The symbol for the unit which the values are measured in
- Returns
The symbol for the unit, or None if no unit is used
- Return type
string