2.6.1.2. pycsamt.emtf.transfer#

Matrix-oriented electromagnetic transfer-function scientific objects.

Classes

TransferFunction(name, data[, ...])

Represent one matrix-valued electromagnetic transfer function.

class pycsamt.emtf.transfer.TransferFunction(name, data, input_channels=<factory>, output_channels=<factory>, units=None, periods=None, estimates=<factory>, attrs=<factory>)[source]

Bases: MTBase

Represent one matrix-valued electromagnetic transfer function.

The canonical array layout is (n_period, n_output_channels, n_input_channels). The matrix axes retain physical channel meaning, unlike EDI’s disconnected component blocks. No EDI or XML syntax is stored in this object.

Parameters:
name: str
data: Any
input_channels: tuple[str, ...]
output_channels: tuple[str, ...]
units: str | None = None
periods: Any | None = None
estimates: dict[str, StatisticalEstimate]
attrs: dict[str, Any]
validate()[source]

Normalize and validate matrix, channels, periods, and estimates.

Return type:

None

property definition: DataTypeDefinition | None[source]

Return the registry definition associated with this TF.

property n_periods: int[source]

Number of frequency/period samples.

property n_output: int[source]

Number of output matrix rows.

property n_input: int[source]

Number of input matrix columns.

property shape: tuple[int, ...][source]

Return the normalized TF data shape.

property frequency: ndarray | None[source]

Frequency vector in Hz derived from periods.

add_estimate(estimate, *, key=None, replace=False)[source]

Attach a statistical estimate to this transfer function.

Parameters:
Return type:

TransferFunction

get_estimate(key)[source]

Return an attached estimate by key, code, or semantic kind.

Parameters:

key (str)

Return type:

StatisticalEstimate | None

copy()[source]

Return a detached copy of data, periods, estimates, and attrs.

Return type:

TransferFunction