pycsamt.tdem.log#

Readers for Zonge TEMAVG processing .LOG files.

Functions

is_tem_log_file(path)

Return True when path looks like a TEMAVG log.

Classes

TEMLog(path[, metadata, records, version, ...])

Parsed TEMAVG processing log.

TEMLogRecord(station, frequency, loop, ...)

One acquisition-summary row from a TEMAVG log.

class pycsamt.tdem.log.TEMLog(path, metadata=<factory>, records=<factory>, version=None, processed=None, raw_modes=<factory>, verbose=0, logger=None)[source]#

Bases: PyCSAMTObject

Parsed TEMAVG processing log.

TEMLog stores processing provenance emitted by the Zonge TEMAVG program. It captures the stable ASCII metadata and acquisition-summary table while preserving the raw processing-mode text for later inspection.

Parameters:
  • path (pathlib.Path) – Source .LOG file.

  • metadata (dict) – Parsed metadata such as source field file, clock type, clock resolution, output AVG file, data-set count, and close status.

  • records (list of TEMLogRecord) – Parsed acquisition-summary rows.

  • version (str, optional) – TEMAVG program version.

  • processed (str, optional) – Processing date string.

  • raw_modes (list of str) – Lines from the TEMAVG global and processing-mode sections. The original table uses legacy box-drawing characters, so it is preserved as text.

  • verbose (int)

  • logger (object | None)

path: Path#
metadata: dict[str, Any]#
records: list[TEMLogRecord]#
version: str | None = None#
processed: str | None = None#
raw_modes: list[str]#
verbose: int = 0#
logger: object | None = None#
classmethod read(path, *, verbose=0, logger=None)[source]#

Read a TEMAVG .LOG processing file.

Parameters:
  • path (path-like) – TEMAVG log file produced while averaging and writing .AVG and .Z outputs.

  • verbose (int)

  • logger (object | None)

Returns:

Parsed processing log.

Return type:

TEMLog

property n_records: int[source]#

Number of acquisition-summary rows.

property stations: list[float][source]#

Sorted station values represented in the log.

to_records()[source]#

Return acquisition rows as dictionaries.

Return type:

list[dict[str, Any]]

to_dataframe()[source]#

Return the acquisition-summary table as a DataFrame.

class pycsamt.tdem.log.TEMLogRecord(station, frequency, loop, component, duty, first_window, rx_moment, time_base)[source]#

Bases: object

One acquisition-summary row from a TEMAVG log.

Parameters:
  • station (float) – Station coordinate or station number.

  • frequency (float) – Repetition frequency in hertz.

  • loop (str) – Loop geometry or acquisition code, for example "INL" for in-loop data.

  • component (str) – Measured component label.

  • duty (str) – Duty-cycle string written by TEMAVG, for example "50%".

  • first_window (float) – First gate centre time in microseconds, parsed from the Window1 column.

  • rx_moment (float) – Receiver moment or area value from the RxMoment column.

  • time_base (str) – Time-base or clock sample label from the Ts column.

station: float#
frequency: float#
loop: str#
component: str#
duty: str#
first_window: float#
rx_moment: float#
time_base: str#
pycsamt.tdem.log.is_tem_log_file(path)[source]#

Return True when path looks like a TEMAVG log.

Parameters:

path (str | Path)

Return type:

bool