Compute WCT dt/t

Wavelet DTT Computation

This module computes dv/v from the saved WCT (Wavelet Coherence Transform) results using a lineage-based job approach. Each job processes one station pair across all components and moving stacks.

The WCT data is loaded from the upstream wavelet step output and the resulting dv/v, error, and coherence DataFrames are saved under the wavelet_dtt step path:

<output_folder>/<lineage>/<wavelet_dtt_step>/_output/<mov_stack>/<comp>/<sta1>_<sta2>.nc

To run this step:

msnoise cc dtt compute_wct_dtt

Configuration Parameters

  • wavelet_dtt.wct_dtt_freqmin : The lower frequency bound to compute the dv/v from the WCT (default=0.1)

  • wavelet_dtt.wct_dtt_freqmax : The upper frequency bound to compute the dv/v from the WCT (default=1.0)

  • wavelet_dtt.wct_minlag : Minimum lag time (default=5.0)

  • wavelet_dtt.wct_lag : How is the lag window defined for WCT (default=static)

  • wavelet_dtt.wct_v : Velocity parameter used for dynamic lag calculation (default=1.0)

  • wavelet_dtt.wct_sides : Which sides to use (default=both)

  • wavelet_dtt.wct_mincoh : Minimum coherence on dt measurement (default=0.0)

  • wavelet_dtt.wct_maxdt : Maximum dt values (default=1.0)

  • wavelet_dtt.wct_codacycles : Number of cycles of period (default=5)

  • wavelet_dtt.wct_min_nonzero : Percentage of data points with non-zero weighting (default=0.1)

  • stack.mov_stack : A list of two parameters: the time to “roll” over (default 1 day) and the granularity (step) of the resulting stacked CCFs (default 1 day) to stack for the Moving-window stacks. This can be a list of tuples, e.g. ((‘1d’,’1d’),(‘2d’,’1d’)) corresponds to the MSNoise 1.6 “1,2” before. Time deltas can be anything pandas can interpret (“d”, “min”, “sec”, etc). (default=((‘1D’,’1D’)))

  • cc.components_to_compute : List (comma separated) of components to compute between two different stations (default=ZZ)

  • cc.components_to_compute_single_station : List (comma separated) of components within a single station. ZZ would be the autocorrelation of Z component, while ZE or ZN are the cross-components. Defaults to [], no single-station computations are done. (default=)

  • global.hpc : Is MSNoise going to run on an HPC? (default=N)

msnoise.s09_compute_wct_dtt.main(loglevel='INFO')

Main function to compute dv/v from WCT results using a lineage-based approach.

Reads accumulated per-pair WCT data written by the wavelet step and computes dv/v for each (component, mov_stack) combination using the wavelet_dtt configuration parameters merged into the lineage.

Output is stored at:

<output_folder>/<full_lineage>/_output/<mov_stack>/<comp>/<sta1>_<sta2>.nc

See also

Reading these results in Python — use MSNoiseResult:

from msnoise.results import MSNoiseResult
from msnoise.core.db import connect
db = connect()
r = MSNoiseResult.from_ids(db, ...)  # include the steps you need
# then call r.get_wct_dtt(...)

See Reading outputs with MSNoiseResult for the full guide and all available methods.