geoh5py.objects.surveys.electromagnetics package

Contents

geoh5py.objects.surveys.electromagnetics package#

Submodules#

geoh5py.objects.surveys.electromagnetics.airborne_fem module#

class geoh5py.objects.surveys.electromagnetics.airborne_fem.AirborneFEMReceivers(**kwargs)#

Bases: AirborneFEMSurvey

Airborne frequency-domain electromagnetic receivers class.

property complement#

Returns the complement object for self.

property type#

Survey element type

class geoh5py.objects.surveys.electromagnetics.airborne_fem.AirborneFEMSurvey(**kwargs)#

Bases: FEMSurvey, AirborneEMSurvey, ABC

property base_receiver_type#
Returns:

Base receiver class

property base_transmitter_type#
Returns:

Base transmitter class

property default_metadata: dict#

Default dictionary of metadata for AirborneFEM entities.

property default_receiver_type#
Returns:

Transmitter class

property default_transmitter_type#
Returns:

Transmitter class

class geoh5py.objects.surveys.electromagnetics.airborne_fem.AirborneFEMTransmitters(**kwargs)#

Bases: AirborneFEMSurvey

Airborne frequency-domain electromagnetic transmitters class.

property complement#

Returns the complement object for self.

property type#

Survey element type

geoh5py.objects.surveys.electromagnetics.airborne_tem module#

class geoh5py.objects.surveys.electromagnetics.airborne_tem.AirborneTEMReceivers(**kwargs)#

Bases: AirborneTEMSurvey

Airborne time-domain electromagnetic receivers class.

property complement#

Returns the complement object for self.

property type#

Survey element type

class geoh5py.objects.surveys.electromagnetics.airborne_tem.AirborneTEMSurvey(**kwargs)#

Bases: TEMSurvey, AirborneEMSurvey

property base_receiver_type#
Returns:

Base receiver class

property base_transmitter_type#
Returns:

Base transmitter class

property default_metadata: dict#

Default dictionary of metadata for AirborneTEM entities.

property default_receiver_type#
Returns:

Receiver class

property default_transmitter_type#
Returns:

Transmitter class

class geoh5py.objects.surveys.electromagnetics.airborne_tem.AirborneTEMTransmitters(**kwargs)#

Bases: AirborneTEMSurvey

Airborne time-domain electromagnetic transmitters class.

property complement#

Returns the complement object for self.

property type#

Survey element type

geoh5py.objects.surveys.electromagnetics.base module#

class geoh5py.objects.surveys.electromagnetics.base.AirborneEMSurvey(**kwargs)#

Bases: BaseEMSurvey, Curve, ABC

property crossline_offset: float | UUID | None#

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

property default_input_types: list[str]#

Choice of survey creation types.

fetch_metadata(key: str) float | UUID | None#

Fetch entry from the metadata.

property inline_offset: float | 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 | 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 | None#

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

set_metadata(key: str, value: float | UUID | None)#
property vertical_offset: float | UUID | None#

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

property yaw: float | UUID | None#

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

class geoh5py.objects.surveys.electromagnetics.base.BaseEMSurvey(**kwargs)#

Bases: BaseSurvey, ABC

A base electromagnetics survey object.

add_components_data(data: dict) list[PropertyGroup]#

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)#

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

property channels#

List of measured channels.

property complement: BaseEMSurvey | None#

Returns the complement object for self.

property complement_reference#

Reference data linking the geometry of complement entity.

property components: dict | None#

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

abstract property default_input_types: list[str] | None#

Input types.

Must be one of ‘Rx’, ‘Tx’, ‘Tx and Rx’, ‘Rx only’, ‘Rx and base stations’.

property default_metadata: dict#

Default metadata structure. Implemented on the child class.

abstract property default_receiver_type: type#
Returns:

Receivers implemented on the child class.

abstract property default_transmitter_type: type#
Returns:

Transmitters implemented on the child class.

abstract property default_units: list[str]#

List of accepted units.

edit_em_metadata(entries: dict[str, Any])#

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 omit_list: tuple#

List of attributes to omit when copying.

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#

The associated TEM transmitters (sources).

property tx_id_property: ReferencedData | IntegerData | None#

Data link between the receiver and transmitter object.

property type_map: dict[str, str]#

Mapping of the electrode types to the associated electrode.

property unit: float | None#

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

validate_em_metadata(values: dict | ndarray | bytes | None) dict#

Validate and format the metadata structure for EM entities.

Parameters:

values – Metadata dictionary.

Returns:

Validated and formatted metadata dictionary.

class geoh5py.objects.surveys.electromagnetics.base.FEMSurvey(**kwargs)#

Bases: BaseEMSurvey, ABC

property default_units: list[str]#

Accepted frequency units.

Must be one of “Hertz (Hz)”, “KiloHertz (kHz)”, “MegaHertz (MHz)”, or “Gigahertz (GHz)”,

Returns:

List of acceptable units for frequency domain channels.

class geoh5py.objects.surveys.electromagnetics.base.LargeLoopGroundEMSurvey(**kwargs)#

Bases: BaseEMSurvey, Curve, ABC

Base class for large loop ground EM surveys defined by wire paths and transmitter ids.

property base_receiver_type#
property base_transmitter_type#
property default_input_types: list[str]#

Choice of survey creation types.

class geoh5py.objects.surveys.electromagnetics.base.MovingLoopGroundEMSurvey(**kwargs)#

Bases: BaseEMSurvey, Curve, ABC

A base class for moving loop ground EM surveys defined by a single transmitter loop radius.

property base_receiver_type#
property base_transmitter_type#
property default_input_types: list[str]#

Choice of survey creation types.

property loop_radius: float | None#

Transmitter loop radius

class geoh5py.objects.surveys.electromagnetics.base.TEMSurvey(**kwargs)#

Bases: BaseEMSurvey, ABC

property default_units: list[str]#

Accepted time units.

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

Returns:

List of acceptable units for time domain channels.

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 waveform: 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 waveform_parameters: dict | None#

Access the waveform parameters stored as a dictionary.

geoh5py.objects.surveys.electromagnetics.ground_fem module#

class geoh5py.objects.surveys.electromagnetics.ground_fem.LargeLoopGroundFEMReceivers(**kwargs)#

Bases: LargeLoopGroundFEMSurvey

Airborne frequency-domain electromagnetic receivers class.

property complement#

Returns the complement object for self.

property default_transmitter_type#
Returns:

Transmitter class

property type#

Survey element type

class geoh5py.objects.surveys.electromagnetics.ground_fem.LargeLoopGroundFEMSurvey(**kwargs)#

Bases: FEMSurvey, LargeLoopGroundEMSurvey

property default_metadata: dict#

Default dictionary of metadata for AirborneFEM entities.

property default_receiver_type#
Returns:

Transmitter class

property default_transmitter_type#
Returns:

Transmitter class

class geoh5py.objects.surveys.electromagnetics.ground_fem.LargeLoopGroundFEMTransmitters(**kwargs)#

Bases: LargeLoopGroundFEMSurvey

Airborne frequency-domain electromagnetic transmitters class.

property complement#

Returns the complement object for self.

property default_receiver_type#
Returns:

Transmitter class

property type#

Survey element type

class geoh5py.objects.surveys.electromagnetics.ground_fem.MovingLoopGroundFEMReceivers(**kwargs)#

Bases: MovingLoopGroundFEMSurvey

Airborne frequency-domain electromagnetic receivers class.

property complement#

Returns the complement object for self.

property default_transmitter_type#
Returns:

Transmitter class

property type#

Survey element type

class geoh5py.objects.surveys.electromagnetics.ground_fem.MovingLoopGroundFEMSurvey(**kwargs)#

Bases: FEMSurvey, MovingLoopGroundEMSurvey

property default_input_types: list[str]#

Choice of survey creation types.

property default_metadata: dict#

Default dictionary of metadata for MovingLoopGroundFEMSurvey entities.

property default_receiver_type#
Returns:

Transmitter class

property default_transmitter_type#
Returns:

Transmitter class

class geoh5py.objects.surveys.electromagnetics.ground_fem.MovingLoopGroundFEMTransmitters(**kwargs)#

Bases: MovingLoopGroundFEMSurvey

Airborne frequency-domain electromagnetic transmitters class.

property complement#

Returns the complement object for self.

property default_receiver_type#
Returns:

Transmitter class

property type#

Survey element type

geoh5py.objects.surveys.electromagnetics.ground_tem module#

class geoh5py.objects.surveys.electromagnetics.ground_tem.LargeLoopGroundTEMReceivers(**kwargs)#

Bases: LargeLoopGroundTEMSurvey

Ground time-domain electromagnetic receivers class.

property complement#

Returns the complement object for self.

property default_transmitter_type#
Returns:

Transmitter class

property type#

Survey element type

class geoh5py.objects.surveys.electromagnetics.ground_tem.LargeLoopGroundTEMSurvey(**kwargs)#

Bases: TEMSurvey, LargeLoopGroundEMSurvey

property default_metadata: dict#

Default dictionary of metadata for AirborneTEM entities.

property default_receiver_type#
Returns:

Transmitter class

property default_transmitter_type#
Returns:

Transmitter class

class geoh5py.objects.surveys.electromagnetics.ground_tem.LargeLoopGroundTEMTransmitters(**kwargs)#

Bases: LargeLoopGroundTEMSurvey

Ground time-domain electromagnetic transmitters class.

property complement#

Returns the complement object for self.

property default_receiver_type#
Returns:

Transmitter class

property type#

Survey element type

class geoh5py.objects.surveys.electromagnetics.ground_tem.MovingLoopGroundTEMReceivers(**kwargs)#

Bases: MovingLoopGroundTEMSurvey

Airborne time-domain electromagnetic receivers class.

property complement#

Returns the complement object for self.

property default_transmitter_type#
Returns:

Transmitter class

property type#

Survey element type

class geoh5py.objects.surveys.electromagnetics.ground_tem.MovingLoopGroundTEMSurvey(**kwargs)#

Bases: TEMSurvey, MovingLoopGroundEMSurvey

property default_metadata: dict#

Default dictionary of metadata for AirborneTEM entities.

property default_receiver_type#
Returns:

Transmitter class

property default_transmitter_type#
Returns:

Transmitter class

class geoh5py.objects.surveys.electromagnetics.ground_tem.MovingLoopGroundTEMTransmitters(**kwargs)#

Bases: MovingLoopGroundTEMSurvey

Airborne frequency-domain electromagnetic transmitters class.

property complement#

Returns the complement object for self.

property default_receiver_type#
Returns:

Transmitter class

property type#

Survey element type

geoh5py.objects.surveys.electromagnetics.magnetotellurics module#

class geoh5py.objects.surveys.electromagnetics.magnetotellurics.MTReceivers(**kwargs)#

Bases: FEMSurvey, Points

A magnetotellurics survey object.

property base_receiver_type#
property base_transmitter_type#
property default_input_types: list[str]#

Choice of survey creation types.

property default_metadata: dict#
Returns:

Default unique identifier

property default_receiver_type#
Returns:

Transmitter class

property default_transmitter_type#
Returns:

Transmitter class

property tx_id_property: ReferencedData | IntegerData | None#

Data link between the receiver and transmitter object.

property type#

Survey element type

geoh5py.objects.surveys.electromagnetics.tipper module#

class geoh5py.objects.surveys.electromagnetics.tipper.TipperBaseStations(base_stations: TipperBaseStations | None = None, **kwargs)#

Bases: TipperSurvey, Points

A z-tipper EM survey object.

property complement#

Returns the complement object for self.

property type#

Survey element type

class geoh5py.objects.surveys.electromagnetics.tipper.TipperReceivers(base_stations: TipperBaseStations | None = None, **kwargs)#

Bases: TipperSurvey, Curve

A z-tipper EM survey object.

property complement#

Returns the complement object for self.

property type#

Survey element type

class geoh5py.objects.surveys.electromagnetics.tipper.TipperSurvey(base_stations: TipperBaseStations | None = None, **kwargs)#

Bases: FEMSurvey

Base tipper survey class.

property base_receiver_type#
property base_stations: TipperBaseStations | None#

The base station entity

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

Sub-class extension of copy_from_extent().

property default_input_types: list[str]#

Choice of survey creation types.

property default_metadata: dict#
Returns:

Default unique identifier

property default_receiver_type#
Returns:

Transmitter class

property default_transmitter_type#
Returns:

Transmitter class

property default_units: list[str]#

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

Module contents#