Playground¶
The Qseek playground holds worked examples on real seismic data. Each example downloads its waveforms, runs a search and measures the result. Use it to reproduce the quick start with one command per step, to see what a configuration change does to a search, and to check changes to Qseek itself.
| Example | Data | Result |
|---|---|---|
| Campi Flegrei | 1 day, 18 stations of the INGV network, 20 May 2024 | 732 detections; all 45 events of the INGV catalog detected |
| Campi Flegrei, February 2025 | 10 days, 19 stations of the INGV network, 12–22 February 2025 | 6379 detections; 209 of the 211 events of the INGV catalog detected |
| Mount Spurr, December 2024 | 3 days, 10 local AVO stations and 10 regional stations out to 131 km, 27–29 December 2024 | 1758 detections; 228 of the 234 events of the USGS catalog detected |
| Norcia, November 2016 | 3 days, 49 stations of four networks with a cluster of 12 stations at Amatrice, 15–17 November 2016 | 3732 detections; 1013 of the 1071 events of the INGV catalog detected |
Set up the playground¶
You need uv, just, Python 3.12 or newer and about 1 GB of disk space per example. The playground runs Qseek from a source checkout next to it:
git clone https://github.com/pyrocko/qseek.git
git clone https://github.com/pyrocko/qseek-playground.git
cd qseek-playground
just setup
just setup installs the checkout and FDSN Rush 0.2 or newer into ../qseek/.venv and compiles the C extensions of the checkout. Set QSEEK_DIR to use a checkout in another place.
Run an example¶
just download campi-flegrei # waveforms and station metadata, about 1 GB
just search campi-flegrei dev # search into campi-flegrei/runs/dev/
just explore campi-flegrei dev # open the run in the web UI
just search writes the run directory campi-flegrei/runs/dev/ and ends with one line of metrics: the number of detections, how many events of the reference catalog Qseek found and how far its locations are from the catalog. Add --verbose to print all metrics.
Change the configuration and compare¶
Override a field of the configuration for one run with --set, then compare the run with the run dev:
just search campi-flegrei original --set image_function.pretrained=original
just compare campi-flegrei original dev
The comparison pairs the detections of both runs by origin time. It reports the detections lost and added, how far the paired detections moved, and how their picks, residuals and semblance changed. just compare prints only the rows that changed; add --full for all rows. just dashboard shows the same comparison with maps and histograms in the browser.
A run of the same Qseek version on the same machine reproduces an earlier run exactly. The playground runs qseek --non-interactive search, which prints only errors and a few status lines; the full log stays in runs/<run>/qseek.log.
To try several values of a parameter, run just sweep campi-flegrei levels --vary octree.n_levels=3,4. It runs one search per value and lists the runs in one table with their --set overrides.
Relocate with HypoDD¶
just hypodd relocates the detections of a run with HypoDD and compares the locations with those of Qseek. The playground README lists the steps.
Next steps¶
- Set up your own search when you are ready to use your data.
- Tune the detection shows which settings to try with
--set.