geoh5py.groups package

Contents

geoh5py.groups package#

Submodules#

geoh5py.groups.base module#

class geoh5py.groups.base.Group(**kwargs)#

Bases: EntityContainer

Base Group class

copy(parent=None, *, copy_children: bool = True, clear_cache: bool = False, **kwargs)#

Function to copy a group to a different parent entity.

Parameters:
  • parent – Target parent to copy the entity under. Copied to current parent if None.

  • copy_children – (Optional) Create copies of all children entities along with it.

  • clear_cache – Clear array attributes after copy.

  • kwargs – Additional keyword arguments to pass to the copy constructor.

Return entity:

Registered Entity to the workspace.

copy_from_extent(extent: ndarray, parent=None, *, copy_children: bool = True, clear_cache: bool = False, inverse: bool = False, **kwargs) Group | None#

Sub-class extension of copy_from_extent().

property entity_type: GroupType#

Abstract property to get the entity type of the entity.

property extent: ndarray | None#

Geography bounding box of the object.

Returns:

shape(2, 3) Bounding box defined by the bottom South-West and top North-East coordinates.

classmethod find_or_create_type(workspace: Workspace, **kwargs) GroupType#

Find or create a type instance for a given object class.

Parameters:

workspace – Target Workspace.

Returns:

The ObjectType instance for the given object class.

mask_by_extent(extent: ndarray, inverse: bool = False) None#

Sub-class extension of mask_by_extent().

validate_entity_type(entity_type: GroupType | None) GroupType#

Validate the entity type.

geoh5py.groups.container module#

class geoh5py.groups.container.ContainerGroup(**kwargs)#

Bases: Group

The type for the basic Container group.

geoh5py.groups.custom module#

class geoh5py.groups.custom.CustomGroup(**kwargs)#

Bases: Group

A custom group, for an unlisted Group type.

classmethod default_type_uid() UUID | None#

Mock the default type uid for the custom group. It returns a new UUID every time this class is called.

geoh5py.groups.drillhole module#

class geoh5py.groups.drillhole.DrillholeGroup(**kwargs)#

Bases: Group

The type for the group containing drillholes.

class geoh5py.groups.drillhole.IntegratorDrillholeGroup(**kwargs)#

Bases: DrillholeGroup

The type for the group containing drillholes.

geoh5py.groups.giftools module#

class geoh5py.groups.giftools.GiftoolsGroup(**kwargs)#

Bases: Group

The type for a GIFtools group.

geoh5py.groups.group_type module#

class geoh5py.groups.group_type.GroupType(workspace: Workspace, allow_move_content: bool = True, allow_delete_content: bool = True, **kwargs)#

Bases: EntityType

property allow_delete_content: bool#

bool: [True] Allow to delete the group children.

property allow_move_content: bool#

Allow to move the group.

geoh5py.groups.integrator module#

class geoh5py.groups.integrator.AirborneTheme(**kwargs)#

Bases: Group

The type for a INTEGRATOR Airborne Theme.

class geoh5py.groups.integrator.BlastingDataSet(**kwargs)#

Bases: Group

The type for a INTEGRATOR Blasting Data Set.

class geoh5py.groups.integrator.BlastingTheme(**kwargs)#

Bases: Group

The type for a INTEGRATOR Blasting Theme.

class geoh5py.groups.integrator.EarthModelsTheme(**kwargs)#

Bases: Group

The type for a INTEGRATOR Earth Models Theme.

class geoh5py.groups.integrator.GeochemistryMineralogyDataSet(**kwargs)#

Bases: Group

The type for a INTEGRATOR Geochemistry & Mineralogy DataSet.

class geoh5py.groups.integrator.GeochemistryMineralogyTheme(**kwargs)#

Bases: Group

The type for a INTEGRATOR Geochemistry & Mineralogy Theme.

class geoh5py.groups.integrator.GeophysicsTheme(**kwargs)#

Bases: Group

The type for a INTEGRATOR Geophysics Theme.

class geoh5py.groups.integrator.GroundTheme(**kwargs)#

Bases: Group

The type for a INTEGRATOR Ground Theme.

class geoh5py.groups.integrator.IncidentDataSet(**kwargs)#

Bases: Group

The type for a INTEGRATOR Incident Data Set.

class geoh5py.groups.integrator.IncidentsTheme(**kwargs)#

Bases: Group

The type for a INTEGRATOR Incident Theme.

class geoh5py.groups.integrator.IntegratorGroup(**kwargs)#

Bases: Group

The type for a INTEGRATOR group.

class geoh5py.groups.integrator.IntegratorMapFile(**kwargs)#

Bases: Group

The type for a INTEGRATOR Map File Group.

class geoh5py.groups.integrator.IntegratorMaps(**kwargs)#

Bases: Group

The type for a INTEGRATOR Maps Group.

class geoh5py.groups.integrator.IntegratorNeighbourhoods(**kwargs)#

Bases: Group

The type for a INTEGRATOR Neighbourhoods Group.

class geoh5py.groups.integrator.IntegratorProject(**kwargs)#

Bases: Group

The type for a INTEGRATOR group.

class geoh5py.groups.integrator.MineProductionTheme(**kwargs)#

Bases: Group

The type for a INTEGRATOR Mine Production Theme.

class geoh5py.groups.integrator.ObservationPointsTheme(**kwargs)#

Bases: Group

The type for a INTEGRATOR Observation Points Theme.

class geoh5py.groups.integrator.QueryGroup(**kwargs)#

Bases: Group

The type for a INTEGRATOR Query Group.

class geoh5py.groups.integrator.RockPropertiesTheme(**kwargs)#

Bases: Group

The type for a INTEGRATOR Rock Properties Theme.

class geoh5py.groups.integrator.SamplesTheme(**kwargs)#

Bases: Group

The type for a INTEGRATOR Samples Theme.

geoh5py.groups.interpretation_section module#

class geoh5py.groups.interpretation_section.InterpretationSection(can_add_group: bool = False, **kwargs)#

Bases: Group

The type for the basic Container group.

add_interpretation_curve(curves: Curve | tuple[Curve])#

Add an interpretation curve.

Parameters:

curves – The interpretation curve to add.

add_interpretation_section(sections: InterpretationSectionParams | list[InterpretationSectionParams])#

Add an interpretation section.

Parameters:

sections – The interpretation section to add.

property can_add_group: bool#

Get the can add group attribute.

Returns:

The ‘can add group’ attribute.

property interpretation_curves: tuple[Curve]#

Get the interpretation curves.

Returns:

The interpretation curves.

property interpretation_sections: tuple[InterpretationSectionParams] | None#

Get the interpretation sections.

Returns:

The interpretation sections.

remove_interpretation_curve(curves: Curve | tuple[Curve])#

Remove an interpretation curve.

Parameters:

curves – The interpretation curve to remove.

remove_interpretation_section(sections: InterpretationSectionParams | tuple[InterpretationSectionParams])#

Remove an interpretation section.

Parameters:

sections – The interpretation section to remove.

property section_object: Slicer | None#

Get the section object ID.

Returns:

The section object ID.

class geoh5py.groups.interpretation_section.InterpretationSectionParams(*, normal_x: float, normal_y: float, normal_z: float, position_x: float, position_y: float, position_z: float)#

Bases: BaseModel

The class to store the interpretation section.

Parameters:
  • normal_x – The normal x component.

  • normal_y – The normal y component.

  • normal_z – The normal z component.

  • position_x – The position x component.

  • position_y – The position y component.

  • position_z – The position z component.

classmethod create_section(params: dict | InterpretationSectionParams) InterpretationSectionParams#

Verify/Create the interpretation section from a mapper.

Parameters:

params – The parameters to verify.

Returns:

An instance of the class.

model_config: ClassVar[ConfigDict] = {}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

normal_x: float#
normal_y: float#
normal_z: float#
position_x: float#
position_y: float#
position_z: float#

geoh5py.groups.maps module#

class geoh5py.groups.maps.MapsGroup(**kwargs)#

Bases: Group

The type for the basic Container group.

geoh5py.groups.notype module#

class geoh5py.groups.notype.NoTypeGroup(**kwargs)#

Bases: Group

A group with no type.

geoh5py.groups.property_group module#

class geoh5py.groups.property_group.PropertyGroup(parent: ObjectBase, *, association: str | DataAssociationEnum | None = None, allow_delete: bool = True, name: str = 'Property Group', on_file: bool = False, uid: UUID | None = None, property_group_type: GroupTypeEnum | str = GroupTypeEnum.SIMPLE, properties: Sequence[UUID | Data | str] | None = None, **_)#

Bases: object

Property group listing data children of an object. This group is not registered to the workspace and only visible to the parent object.

Parameters:
  • parent – Parent object.

  • association – Association of the data.

  • allow_delete – Allow deleting the group.

  • name – Name of the group.

  • on_file – Property group is on file.

  • uid – Unique identifier.

  • property_group_type – Type of property group.

  • properties – List of data or unique identifiers for the data.

add_properties(data: str | Data | Sequence[str | Data | UUID] | UUID)#

Add data to properties.

Parameters:

data – Data to add to the group. It can be the name, the uuid or the data itself in a list or alone.

property allow_delete: bool#

Allow deleting the group

property association: DataAssociationEnum#

The association of the data.

property attribute_map: dict#

Attribute names mapping between geoh5 and geoh5py

property collect_values: list | None#

The values of the properties in the group.

property name: str#

Name of the group

property on_file#

Property group is on geoh5 file.

property parent: ObjectBase#

The parent of the PropertyGroup.

property properties: list[UUID] | None#

List of unique identifiers for the Data contained in the property group.

property properties_name: list[str] | None#

List of names of the properties`

property property_group_type: GroupTypeEnum#

Type of property group.

remove_properties(data: str | Data | Sequence[str | Data | UUID] | UUID)#

Remove data from the properties.

Parameters:

data – Data to remove from the group. It can be the name, the uuid or the data itself in a list or alone.

property table: PropertyGroupTable#

Create an object to access the data of the property group.

property uid: UUID#

Unique identifier

geoh5py.groups.property_group_table module#

class geoh5py.groups.property_group_table.PropertyGroupTable(property_group: PropertyGroup)#

Bases: ABC

A class to store the information of a property group.

Parameters:

property_group – The property group to extract the data from.

property locations: ndarray#

The locations of the association table.

This function is needed as a data can be both associated to cell or vertex in CellObjects.

locations_keys = ('X', 'Y', 'Z')#
property property_group: PropertyGroup#

The property group to extract the data from.

property size: int#

The size of the properties in the group.

geoh5py.groups.property_group_type module#

class geoh5py.groups.property_group_type.DepthType#

Bases: PropertyGroupType

classmethod verify(children: list[Data])#

Verify that the children are of the correct type for this group type

If unsuccessful, raise a ValueError

Parameters:

children – The children to verify

class geoh5py.groups.property_group_type.DipDirType#

Bases: PropertyGroupType

no_modify: bool = True#
classmethod verify(children: list[Data])#

Verify that the children are of the correct type for this group type

If unsuccessful, raise a ValueError

Parameters:

children – The children to verify

class geoh5py.groups.property_group_type.GroupTypeEnum(value)#

Bases: str, Enum

Supported property group types.

DEPTH = 'Depth table'#
DIPDIR = 'Dip direction & dip'#
INTERVAL = 'Interval table'#
MULTI = 'Multi-element'#
SIMPLE = 'Simple'#
STRIKEDIP = 'Strike & dip'#
VECTOR = '3D vector'#
classmethod find_type(data: list[Data])#

Determine the group type based on the data.

property no_modify: bool#

Get the name of the group type.

verify(data: list[Data])#

Validate the data based on the group type.

class geoh5py.groups.property_group_type.IntervalType#

Bases: PropertyGroupType

classmethod verify(children: list[Data])#

Verify that the children are of the correct type for this group type

If unsuccessful, raise a ValueError

Parameters:

children – The children to verify

class geoh5py.groups.property_group_type.MultiElementType#

Bases: PropertyGroupType

classmethod verify(children: list[Data])#

Verify that the children are of the correct type for this group type

If unsuccessful, raise a ValueError

Parameters:

children – The children to verify

class geoh5py.groups.property_group_type.PropertyGroupType#

Bases: ABC

Class to define the basic structure of a property group type.

no_modify: bool = False#
abstract classmethod verify(children: list[Data])#

Verify that the children are of the correct type for this group type

If unsuccessful, raise a ValueError

Parameters:

children – The children to verify

class geoh5py.groups.property_group_type.SimpleType#

Bases: PropertyGroupType

classmethod verify(children: list[Data])#

Accept any children

class geoh5py.groups.property_group_type.StrikeDipType#

Bases: PropertyGroupType

no_modify: bool = True#
classmethod verify(children: list[Data])#

Verify that the children are of the correct type for this group type

If unsuccessful, raise a ValueError

Parameters:

children – The children to verify

class geoh5py.groups.property_group_type.VectorType#

Bases: PropertyGroupType

no_modify: bool = True#
classmethod verify(children: list[Data])#

Verify that the children are of the correct type for this group type

If unsuccessful, raise a ValueError

Parameters:

children – The children to verify

geoh5py.groups.root module#

class geoh5py.groups.root.RootGroup(allow_move=False, allow_delete=False, allow_rename=False, **kwargs)#

Bases: NoTypeGroup

The Root group of a workspace.

property parent#

Parental entity of root is always None

geoh5py.groups.simpeg module#

class geoh5py.groups.simpeg.SimPEGGroup(options: dict | ndarray | bytes | None = None, **kwargs)#

Bases: UIJsonGroup

Group for SimPEG inversions.

geoh5py.groups.survey module#

class geoh5py.groups.survey.AirborneGeophysics(**kwargs)#

Bases: Group

The type for the basic Container group.

geoh5py.groups.uijson module#

class geoh5py.groups.uijson.UIJsonGroup(options: dict | ndarray | bytes | None = None, **kwargs)#

Bases: Group

Group for SimPEG inversions.

add_ui_json(name: str | None = None)#

Add ui.json file to entity.

Parameters:

name – Name of the file in the workspace.

static format_input_options(options: dict | ndarray | bytes | None) dict#

Format input options to a dictionary.

Parameters:

options – Input options.

Returns:

Formatted options.

property options: dict#

Metadata attached to the entity.

Module contents#