Analyst rules and Smart-locate

This document describes how an analyst decides to refine an origin from the distribution of picks around the theoretical travel-time curves and their tolerance bands on the Travel-time plot, and how Smart-locate implements those decisions. P and S are weighted equally throughout.

Part 1 is the analyst’s procedure. Part 2 describes what Smart-locate does, including the steps it adds before and after the rules.

Part 1 — Analyst rules

What the analyst reads off the plot

  • In-band count: how many picks fall inside the P and S tolerance bands (curve ± association tolerance).

  • Associated fraction: how many of the in-band picks are already arrivals of the origin, and how many are still unassociated (blue).

  • Residual symmetry: whether the picks scatter evenly above and below the curve (mean residual near zero), sit on one side of it as an offset block, or show no trend at all.

Rules

Rule 1 — many associated, symmetric around the curve

  • Condition: many picks are already associated and are balanced above and below the P and S curves.

  • Action: Relocate, then the usual workflow (deassociate, associate, relocate).

Rule 2 — few associated, but many in the band and symmetric

  • Condition: only a few picks are associated, but many unassociated (blue) picks lie inside the bands and scatter evenly around the curve.

  • Action: Associate, Relocate, then the usual workflow.

Rule 3 — parallel block with a time offset

  • Condition: a coherent block of picks runs parallel to the model curve (same slope and shape) but is shifted by a roughly constant time across distance. This points to an origin-time error, not to a bad pick set.

  • Action: Box-select the block on the Travel-time plot, which associates it, and Relocate. The relocation corrects the origin time so the block falls onto the curve. Then the usual workflow. Do not associate the whole field first; isolate the shifted block.

Rule 4 — too few picks in the bands

  • Condition: not enough picks near the curves to work with.

  • Action: Associate again with a wider tolerance, but never more than 3 s. If enough picks come in, continue with Rule 1 or 2.

Rule 5 — scattered, no coherent trend

  • Condition: the picks near the curves form no line: no symmetric spread and no offset block.

  • Action: Leave the origin as it is. Do not force a solution.

Summary

If there is a coherent pattern, symmetric around the curve or a parallel offset block, work it: associate or box-select, then relocate. Widen the association tolerance only when there are too few picks, and only up to 3 s. Leave noisy origins alone.

Part 2 — Smart-locate

Smart-locate carries out these rules automatically. With origins selected, the button reads “Smart-locate N” and processes those. With nothing selected, it reads “Smart-locate all (M)” and processes all visible origins. Batches run in parallel.

  • One origin: the result is shown as a candidate. Review it and press Accept origin to keep it.

  • Several origins (batch): each origin that is located successfully is accepted automatically and stamped in the Updated column. Origins that are incoherent or cannot be located are left unchanged.

Smart-locate never rejects an origin. Rejecting is left to the analyst and the QC rules.

For each origin, Smart-locate runs these steps in order.

Step 0 — origins that cannot be solved

An origin with too few observations to solve for latitude, longitude, depth and time (for example a single array pick) is left exactly as it is.

Step 1 — clean-up

  1. Moveout filter. Arrivals that are off the coherent P/S moveout trend are removed, so the following steps work on one event and not a mixture. The tolerance is the association tolerance, at least 1 s.

  2. Distance-outlier trim. An arrival can sit on the curve and still be wrong, for example a misassociated pick from a distant station. Each arrival is left out in turn, and one is removed only if that brings the mismatch score right down. A real far-field event, with many distant stations, is not affected.

  3. Mismatch check. If the mismatch is above the mismatch > value of the QC panel, Smart-locate checks whether the P and S trends are parallel. If they are, the origin is treated as a far-field event. A high mismatch is never a reason to reject: a far-field event has a high mismatch by nature, because the nearby stations cannot see it.

Step 2 — measuring the band

Smart-locate looks at every pick, associated or not, that

  • is within 400 km of the origin, and

  • has a residual (observed − predicted travel time) within ±10 s.

The window is much wider than the association tolerance so that an offset block, for example 4 s off the curve, can still be seen. A pick without a phase hint is treated as P.

From these picks it computes:

Value

Meaning

n

number of picks in the ±10 s window

mean

mean signed residual: the offset from the curve

scatter

standard deviation of the residuals about the mean: the coherence

nInBand

picks with |residual| ≤ association tolerance

nInBandAssoc

of those, picks that are already arrivals of the origin

Step 3 — choosing the rule

The rules are checked in this order, and the first one that matches is used. The thresholds below are for an association tolerance of up to 2 s. For a larger tolerance, every time value (the ±10 s window and the 1.5 s, 0.5 s, 4 s and 3 s thresholds) is multiplied by tolerance / 2, so the rules mean the same for infrasound at 60 s as for seismic picks at 2 s. With infrasound picks in the data, the band also uses the infrasound celerity for its time window, and its distance limit follows Max distance (1500 km if that is 0) instead of 400 km.

Order

Rule

Condition

Action

1

R4 sparse

n < 6

Associate with the tolerance set to 3 s, then relocate

2

R3 parallel offset

|mean| > 1.5 s and scatter < 1.2 × |mean|

Associate the block, then relocate

3

R2 symmetric, under-associated

|mean| ≤ 0.5 s and fewer than half of the in-band picks are associated

Associate, then relocate

4

R1 symmetric, well-associated

|mean| ≤ 0.5 s, otherwise

Relocate

5

R5 incoherent

scatter > 4 s and |mean| < 0.75 × scatter

Relocate with the full recovery ladder

6

Default

none of the above

Relocate

Details:

  • R4 counts all picks in the band window, not only those in the band. It sets the tolerance to the larger of the current tolerance and the (scaled) 3 s for this one association, then restores the original value. It never narrows the tolerance.

  • R3 associates the picks whose residual is within max(0.75 s, 2 × scatter) of the mean offset. That is the block itself, not the picks near the curve. Picks without a phase hint are added as P.

  • R2 versus R1: the origin counts as under-associated when fewer than half of the in-band picks (rounded up) are already arrivals.

  • R5 differs from the analyst rule. An analyst leaves an incoherent origin alone. Smart-locate still relocates it with the full recovery ladder, including the Monte Carlo rescue, because a clean subset can hide inside a noisy set. It only skips the association step.

The rule chosen for each origin appears in the status line and the log, for example R3 parallel offset block.

Step 4 — relocation with recovery

If the first relocation fails, Smart-locate tries the following steps in order. Each one gives up more than the one before, and the first that gives a valid solution is used:

  1. Relocate directly.

  2. Deassociate (remove arrivals outside the tolerance), then relocate.

  3. Associate, then relocate.

  4. S activation: add S arrivals on the stations between the 50th and 95th percentile of the origin’s station distances, with a tolerance of twice the association tolerance (at least 2 s), then relocate. S−P constrains the distance directly, which pins down one-sided or offshore solutions.

  5. Monte Carlo reseed: relocate random subsets of the picks (MC draws subsets of at least min set picks), take the consensus hypocentre as the new start, then relocate.

  6. P only: remove all non-P arrivals, then relocate. This is skipped for origins without P, such as S-only or infrasound origins.

  7. P only with a fixed depth: the same with the depth fixed at the Fix depth value.

  8. Far-field fallback: if a solution converged earlier but was held back because of its high mismatch, keep it.

Before every relocation, a station with two picks of the same phase keeps only one, so the locator never sees both. A solution counts as valid only if it converges with a good RMS and is consistent with the network (low mismatch). Once the Monte Carlo reseed has been tried, any converged solution is accepted.

Step 5 — refine loop

After the opening move, Smart-locate repeats deassociate, associate and relocate, up to 8 rounds. It stops early when the set of picks no longer changes, the hypocentre moves less than 0.1 km and the origin time moves less than 0.05 s.

Step 6 — minimum number of phases

The result needs at least 4 phases when the depth is free, or 3 when the depth is fixed. If minPhases in catalyst.cfg is higher, that value applies. A result with fewer phases is reported as <rule> (rejected: <N phases) and is not used.

Settings that affect Smart-locate

Setting

Where

Used for

Assoc. tol [s]

REFINE → Association

band count, moveout filter, associate and deassociate, S activation

Interface, Profile

REFINE → Relocate

locator

TTT, TTT model

REFINE → Association

predicted travel times for the band

Fix depth

REFINE → Relocate

relocation; also changes the minimum number of phases

MC draws, min set

REFINE → Relocate

Monte Carlo reseed

mismatch >

REFINE → QC

far-field check in step 1

minPhases

catalyst.cfg

step 6

Two options in the Relocate group change how Smart-locate works:

  • Fast smart-locate (accept first fit): accept the first converged solution with a good RMS instead of climbing the recovery ladder to lower the mismatch. Much faster on catalogues with many one-sided or offshore events, where the ladder usually ends with the same first solution anyway. Turn it off for the most thorough refinement.

  • Consider virtual picks: each virtual pick from aggregation is expanded when locating: its source picks are added as arrivals with weight 0, so they are visible but do not pull the fit.

The base values of the band window (±10 s), the distance limit (400 km) and the rule thresholds are set in the code (BandConfig and RuleThresholds in apps/catalyst/core/analysis.h).