Data Formats
SeisGo uses a small set of structured data objects and file formats throughout its pipeline.
File formats
ASDF (.h5)
The primary on-disk format is ASDF (Adaptable Seismic Data Format), a self-describing HDF5 container that stores waveforms alongside station metadata (StationXML). SeisGo reads and writes ASDF files via pyasdf.
ASDF files are used for:
Raw waveform archives
FFT intermediate products
Cross-correlation output
dv/v monitoring output
Pickle (.pk)
Lightweight serialization for intermediate results and clustering outputs. Useful for quick experimentation but not recommended for long-term archival.
CSV (.csv)
Plain text output for anisotropy measurements (beamforming results, anisotropy parameters)
and cluster map DataFrames.
In-memory data types (seisgo.types)
FFTData
Holds the frequency-domain representation of one station–component time series, ready for cross-correlation.
Key attributes:
Attribute |
Description |
|---|---|
|
2-D complex array |
|
Sampling interval (s) |
|
Per-window standard deviation |
|
Window start times (UTCDateTime) |
|
Frequency vector (Hz) |
|
Analysis window length (s) |
|
Window step / overlap (s) |
|
SEED channel identifiers |
CorrData
Stores a time-lag cross-correlation function (or autocorrelation) between a station pair over multiple time windows.
Key attributes:
Attribute |
Description |
|---|---|
|
2-D array |
|
Sampling interval (s) |
|
Maximum lag (s) |
|
Inter-station distance (km) |
|
Component pair, e.g. |
|
|
|
|
|
Window timestamps |
|
Dictionary of auxiliary metadata |
Useful methods:
corrdata.stack(method="linear") # collapse to a single stack
corrdata.filter(fmin, fmax) # bandpass filter in-place
corrdata.plot() # quick visualization
corrdata.to_asdf(outfile) # save to ASDF
DvvData
Stores dv/v measurements derived from a CorrData object.
Key attributes:
Attribute |
Description |
|---|---|
|
dv/v values array |
|
Measurement error / uncertainty |
|
Cross-correlation coefficient of each measurement |
|
Time vector of measurements |
|
Frequency bands |
|
Method used ( |
|
Component pair |
Useful methods:
dvvdata.plot()
dvvdata.to_asdf(outfile)
Xcorr output structure options
When saving cross-correlations with noise.do_xcorr, the subdirectory layout is controlled by
the output_structure parameter. Available options (from helpers.xcorr_output_structure()):
Option |
Short |
Layout |
|---|---|---|
|
|
By time chunk, all pairs together |
|
|
Subfolder per virtual source |
|
|
Subfolder per station pair |
|
|
Nested source / component folders |
Stacking methods
Available methods (from helpers.stack_methods()):
linear, pws, tf-pws, robust, acf, nroot, selective, cluster
See Stacking API for parameter details.
Cross-correlation methods
Available methods (from helpers.xcorr_methods()):
xcorr, deconv, coherency