geoh5py.objects.surveys.electromagnetics

geoh5py.objects.surveys.electromagnetics.airborne_tem

class geoh5py.objects.surveys.electromagnetics.airborne_tem.AirborneTEMReceivers(object_type: ObjectType, **kwargs)[source]

Bases: BaseAirborneTEM

Airborne time-domain electromagnetic receivers class.

property default_transmitter_type
Returns

Transmitter class

classmethod default_type_uid() UUID[source]
Returns

Default unique identifier

property type

Survey element type

class geoh5py.objects.surveys.electromagnetics.airborne_tem.AirborneTEMTransmitters(object_type: ObjectType, **kwargs)[source]

Bases: BaseAirborneTEM

Airborne time-domain electromagnetic transmitters class.

property default_receiver_type
Returns

Transmitter class

classmethod default_type_uid() UUID[source]
Returns

Default unique identifier

property type

Survey element type

class geoh5py.objects.surveys.electromagnetics.airborne_tem.BaseAirborneTEM(object_type: ObjectType, **kwargs)[source]

Bases: BaseEMSurvey, Curve

property crossline_offset: float | uuid.UUID | None

Numeric value or property UUID for the crossline offset between receiver and transmitter.

property default_input_types: list[str]

Input types. Must be one of ‘Rx’, ‘Tx’, ‘Tx and Rx’.

property default_metadata: dict

Default dictionary of metadata for AirborneTEM entities.

property default_units: list[str]

Accepted time units. Must be one of “Seconds (s)”, “Milliseconds (ms)”, “Microseconds (us)” or “Nanoseconds (ns)”

fetch_metadata(key: str) float | uuid.UUID | None[source]

Fetch entry from the metadata.

property inline_offset: float | uuid.UUID | None

Numeric value or property UUID for the inline offset between receiver and transmitter.

property loop_radius: float | None

Transmitter loop radius

property pitch: float | uuid.UUID | None

Numeric value or property UUID for the pitch angle of the transmitter loop.

property relative_to_bearing: bool | None

Data relative_to_bearing

property roll: float | uuid.UUID | None

Numeric value or property UUID for the roll angle of the transmitter loop.

set_metadata(key: str, value: float | uuid.UUID | None)[source]
property timing_mark: float | None

Timing mark from the beginning of the discrete waveform. Generally used as the reference (time=0.0) for the provided (-) on-time an (+) off-time channels.

property vertical_offset: float | uuid.UUID | None

Numeric value or property UUID for the vertical offset between receiver and transmitter.

property waveform: np.ndarray | None

Discrete waveform of the TEM source provided as numpy.array of type float, shape(n, 2)

waveform = [
    [time_1, current_1],
    [time_2, current_2],
    ...
]
property yaw: float | uuid.UUID | None

Numeric value or property UUID for the yaw angle of the transmitter loop.

geoh5py.objects.surveys.electromagnetics.base

class geoh5py.objects.surveys.electromagnetics.base.BaseEMSurvey(object_type: ObjectType, **kwargs)[source]

Bases: ObjectBase

A base electromagnetics survey object.

add_components_data(data: dict) list[PropertyGroup][source]

Add lists of data components to an EM survey. The name of each component is appended to the metadata ‘Property groups’.

Data channels must be provided for every frequency or time in order specified by channels. The data channels can be supplied as either a list of geoh5py.data.float_data.FloatData entities or uuid.UUID

data = {
    "Component A": [
        data_entity_1,
        data_entity_2,
    ],
    "Component B": [...],
},

or a nested dictionary of arguments defining new Data entities as defined by the add_data() method.

data = {
    "Component A": {
        time_1: {
            'values': [v_11, v_12, ...],
            "entity_type": entity_type_A,
            ...,
        },
        time_2: {...},
        ...,
    },
    "Component B": {...},
}
Parameters

data – Dictionary of data components to be added to the survey.

Returns

List of property groups for all components added.

add_validate_component_data(name: str, data_block: list | dict)[source]

Append a property group to the entity and its metadata after validations.

property channels

List of measured channels.

property components: dict | None

Rapid access to the list of data entities for all components.

copy(parent=None, copy_children: bool = True) BaseEMSurvey[source]

Function to copy a AirborneTEMReceivers to a different parent entity.

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

  • copy_children – Create copies of AirborneTEMReceivers along with it.

Return entity

Registered AirborneTEMReceivers to the workspace.

property default_input_types: list[str] | None

Input types. Must be one of ‘Rx’, ‘Tx’, ‘Tx and Rx’.

property default_metadata

Default metadata structure. Implemented on the child class.

property default_receiver_type: type
Returns

Receivers implemented on the child class.

property default_transmitter_type: type
Returns

Transmitters implemented on the child class.

classmethod default_type_uid() UUID[source]

Default unique identifier. Implemented on the child class.

property default_units: list[str] | None

Accepted sampling units.

edit_metadata(entries: dict[str, Any])[source]

Utility function to edit or add metadata fields and trigger an update on the receiver and transmitter entities.

Parameters

entries – Metadata key value pairs.

property input_type: str | None

Data input type. Must be one of ‘Rx’, ‘Tx’ or ‘Tx and Rx’

property metadata

Metadata attached to the entity.

property receivers: BaseEMSurvey | None

The associated TEM receivers.

property survey_type: str | None

Data input type. Must be one of ‘Rx’, ‘Tx’ or ‘Tx and Rx’

property transmitters: BaseEMSurvey | None

The associated TEM transmitters (sources).

property type

Survey element type

property unit: float | None

Default channel units for time or frequency defined on the child class.

geoh5py.objects.surveys.electromagnetics.magnetotellurics

class geoh5py.objects.surveys.electromagnetics.magnetotellurics.MTReceivers(object_type: ObjectType, **kwargs)[source]

Bases: BaseEMSurvey, Points

A magnetotellurics survey object.

property default_input_types: list[str]

Input types. Must be ‘Rx only’

property default_metadata: dict
Returns

Default unique identifier

classmethod default_type_uid() UUID[source]
Returns

Default unique identifier

property default_units: list[str]

Accepted time units. Must be one of “Seconds (s)”, “Milliseconds (ms)”, “Microseconds (us)” or “Nanoseconds (ns)”

property type

Survey element type

geoh5py.objects.surveys.electromagnetics.tipper

class geoh5py.objects.surveys.electromagnetics.tipper.BaseTipper(object_type: ObjectType, base_stations: TipperBaseStations | None = None, **kwargs)[source]

Bases: BaseEMSurvey

Base tipper survey class.

property base_stations: TipperBaseStations | None

The base station entity

property default_input_types: list[str]

Input types. Must be ‘Rx and base stations’

property default_metadata: dict
Returns

Default unique identifier

property default_units: list[str]

Accepted time units. Must be one of “Seconds (s)”, “Milliseconds (ms)”, “Microseconds (us)” or “Nanoseconds (ns)”

class geoh5py.objects.surveys.electromagnetics.tipper.TipperBaseStations(object_type: ObjectType, **kwargs)[source]

Bases: BaseTipper, Points

A z-tipper EM survey object.

property default_receiver_type
Returns

Receiver class

classmethod default_type_uid() UUID[source]
Returns

Default unique identifier

property type

Survey element type

class geoh5py.objects.surveys.electromagnetics.tipper.TipperReceivers(object_type: ObjectType, **kwargs)[source]

Bases: BaseTipper, Curve

A z-tipper EM survey object.

classmethod default_type_uid() UUID[source]
Returns

Default unique identifier

property type

Survey element type