Skip to content

check_teleseism

Science

Do these picks fit the arrival pattern of a distant large earthquake already in the session's frozen bulletin snapshot? The tool takes USGS/EMSC events above magnitude 5, predicts IASP91 arrivals at the picked stations (TauP), and scores the fraction of picks that fall within 15 s of a predicted time inside a 2700 s search window.

matched_fraction is n_matched / n_scored, where n_scored is the number of picks that have an IASP91 arrival at all. passes_threshold is true when that fraction is at least 0.6. Live bulletin queries are not this tool; the snapshot is pinned to the session.

A non-match does not prove the event is local. It proves the picks are not explained by a catalogued M ≥ 5 event in this snapshot. Smaller or later-catalogued teleseisms are outside the screen.

References

  • Kennett, B. L. N. and Engdahl, E. R. (1991). Traveltimes for global earthquake location and phase identification. Geophysical Journal International. doi:10.1111/j.1365-246X.1991.tb06724.x
  • Crotwell, H. P., Owens, T. J. and Ritsema, J. (1999). The TauP Toolkit. Seismological Research Letters. doi:10.1785/gssrl.70.2.154

Contract

Generated from the live registry (ToolSpec). Field names, types and defaults come from the input and payload models; they are not hand-typed.

Group external
Class 3
Tool version 1.0.0
Highest declared tier F
Timeout 15 s
Budget key none
readOnlyHint true
idempotentHint true

Input

Field Type Required Notes
picks object yes The phase set a solution tool works on.
picks.base object (kind catalog | none | solution) yes discriminated on kind
picks.phase_set string ∈ {all, p_only} yes
picks.exclude_pick_ids array[integer] no
picks.add_picks array[object] no
picks.add_picks[].tool_call_id string yes
picks.add_picks[].pick_index integer yes

Payload

Field Type Required Notes
candidates array[object] yes
candidates[].bulletin_event_id string yes
candidates[].source string yes
candidates[].origin_time_utc string yes
candidates[].latitude_deg number yes
candidates[].longitude_deg number yes
candidates[].depth_km number | null yes
candidates[].magnitude number | null yes
candidates[].magnitude_type string | null yes
candidates[].region_name string | null yes
candidates[].matched_fraction number yes
candidates[].n_matched integer yes
candidates[].n_picks integer yes
candidates[].n_scored integer | null no default null
candidates[].matched_picks array[object] yes
candidates[].matched_picks[].pick_ref object yes
candidates[].matched_picks[].phase_name string yes
candidates[].matched_picks[].predicted_time_utc string yes
candidates[].matched_picks[].residual_s number yes
best object | null yes
best.bulletin_event_id string yes
best.matched_fraction number yes
best.passes_threshold boolean yes
thresholds object yes
thresholds.min_magnitude number yes
thresholds.search_window_s number yes
thresholds.resid_tol_s number yes
thresholds.min_fraction number yes
snapshot_id string yes

Example request

{
  "picks": {
    "base": {
      "kind": "catalog",
      "event_id": 1001
    },
    "phase_set": "all"
  }
}

Example payload

{
  "candidates": [
    {
      "bulletin_event_id": "us7000abcd",
      "source": "usgs",
      "origin_time_utc": "2024-06-15T07:55:12.000Z",
      "latitude_deg": -6.1,
      "longitude_deg": 130.2,
      "depth_km": 110.0,
      "magnitude": 6.4,
      "magnitude_type": "mww",
      "region_name": "Banda Sea",
      "matched_fraction": 0.78,
      "n_matched": 7,
      "n_scored": 9,
      "n_picks": 9,
      "matched_picks": [
        {
          "pick_ref": {
            "kind": "catalog",
            "pick_id": 20001
          },
          "phase_name": "P",
          "predicted_time_utc": "2024-06-15T08:12:14.930Z",
          "residual_s": 4.2
        }
      ]
    }
  ],
  "best": {
    "bulletin_event_id": "us7000abcd",
    "matched_fraction": 0.78,
    "passes_threshold": true
  },
  "thresholds": {
    "min_magnitude": 5.0,
    "search_window_s": 2700.0,
    "resid_tol_s": 15.0,
    "min_fraction": 0.6
  },
  "snapshot_id": "usgs-emsc-2024-06-01"
}

What this tool does not tell you

What this tool does not tell you: that a non-match proves the event is local. It proves the picks are not explainable by a catalogued M ≥ 5 event in the snapshot. Smaller or later-catalogued teleseisms are not covered.