readISEE: Read a Micromate ISEE blasting record.

View source: R/readISEE.R

readISEER Documentation

Read a Micromate ISEE blasting record.

Description

Parses the TXT output of an ISEE-compliant blasting seismograph (Micromate, Vibra-Tech, GeoSonics). The format is the International Society of Explosives Engineers (ISEE) Performance Specifications for Blasting Seismographs and is declared in the header line ⁠Version : V 10-90 Micromate ISEE⁠.

Usage

readISEE(file)

Arguments

file

Path to the ISEE TXT.

Details

Two firmware variants are supported transparently:

  • v10 / .TXT: header lines "<key> : <value>" (space-colon-space), body tab-separated ⁠Tran Vert Long MicL⁠.

  • v11 / .CSV: header lines ⁠"<key>","<value>"⁠ (CSV pair), body comma-separated quoted ⁠"Tran","Vert","Long"⁠ (no MicL present in the body).

Variant is auto-detected from the file content – the dispatch is not by extension. Sample rate is read from a line matching ⁠Sample\\s*Rate\\s*[: ,"]+<Fs>\\s*sps⁠, which captures both header styles. The body header is located by the regex ⁠Tran[^A-Za-z]+Vert[^A-Za-z]+Long⁠, also style-agnostic.

Column-to-OCID mapping (ISEE convention):

  • Tran (transverse) -> T

  • Vert (vertical) -> V

  • Long (longitudinal, radial blast-to-station) -> L

  • MicL (microphone, dB(L)) -> dropped when present (only in v10).

Velocity is in mm/s; dt = 1 / Fs is derived from the header. No metadata other than Fs is read here – per-event scalars (charge, distance to centroid, location) live in the blast flatfile, not in the parser's contract.

To process an ISEE record end-to-end:

DT <- readISEE("UM12780_23_10_2025_15_22_8.TXT")
# DT now has columns (t, OCID, s) with OCIDs T/V/L; s in mm/s

From parseRecord() (the canonical entry point), the dispatch happens via .OWNER_FORMAT["ISEE"] = "ISEE". To get a sidecar record (⁠raw/VT.<RID>.csv⁠ + JSON), call extractRecord(.x, path) – the provider-string parser (.parseUnits / .parseKind) accepts "mm/s" on the master row and derives KIND = "VT" automatically, or pass kind = "VT" explicitly to bypass derivation.

Value

LONG data.table(t, OCID, s) with OCID in T/V/L and s in mm/s. Three rows per sample, 3 * NP rows total where NP is the per-channel sample count.

See Also

parseRecord(), extractRecord(), readAT2(), readV2(), readAC().

Examples

file <- tempfile(fileext = ".TXT")
writeLines(c(
  "Version : V 10-90 Micromate ISEE",
  "Sample Rate : 100 sps",
  "Tran\tVert\tLong\tMicL",
  "1\t2\t3\t90",
  "4\t5\t6\t91"
), file)
readISEE(file)


gmsp documentation built on July 18, 2026, 5:07 p.m.