Developer’s corner

Tools for computer programmers including FDSNWS

FDSN Web Services

Use FDSNWS to access station metadata in FDSN StationXML, StationXML and SC3XML formats; time series data in miniSEED format; and event parameters in QuakeML and SC3XML formats. For full details visit: http://www.fdsn.org/webservices/ and https://www.seiscomp3.org/doc/jakarta/current/apps/fdsnws.html.

IP to use for fdsnws queries: https://fdsnws.raspberryshakedata.com/fdsnws/

Examples:

fdsnws-dataselect:

$ wget --no-check-certificate "https://fdsnws.raspberryshakedata.com/fdsnws/dataselect/1/query?net=AM&sta=R5661&loc=00&cha=SHZ&start=2017-06-20T20:00:00&end=2017-06-20T20:05:00" -O waveform.mseed

fdsnws-station:

$ wget --no-check-certificate "https://fdsnws.raspberryshakedata.com/fdsnws/station/1/query?net=AM&level=sta" -O sta.xml

fdsnws-event is not activated.

The RASPISHAKE data center has been included in the IRIS Federator system. See also: IRIS FDSN Stats.

Scripting language tool-boxes (MATLAB and Python)

These MATLAB and Python toolboxes are useful for programmers who want to create their own data visualization or processing routines.

MATLAB: GISMO

Python: Obspy

Contributed software

sl2influxdb

sl2influxdb by Marc Grunberg on GitHub

Description: Dump seedlink (seismological) time series into InfluxDB. Use Grafana to plot waveforms, real time latency delay, etc. Maps uses the grafana worldmap-panel plugin.

_images/grafanashake.png

seisplotjs

seisplotjs by Phillip Crotwell on GitHub

Description: Javascript modules for parsing, manipulating and plotting seismic data.

Phillip says,

“Also included in this (and available separately) is seisplotjs-filter for basic waveform filtering, and seisplotjs-traveltime that queries the IRIS traveltime web service (which internally uses my java travel time calculator, TauP) as well as seisplotjs-distaz which will do the spherical distance calculations without a web call and seisplotjs-fdsnevent that queries a web service for event parameters. There are others as well, so anything in my github that starts with “seisplotjs-” is (or will be) part of this. Here are a bunch of links for your clicking pleasure...

seisplotjs-waveformplot

seisplotjs-filter

seisplotjs-traveltime

seisplotjs-distaz

seisplotjs-fdsnevent

Also some of the examples that may be useful are here. This should be the same as the corresponding github code, just with the dependencies and so runnable.

All free for reuse, but under active development so expect missing documentation, wrong examples and probably lots of changes as I improve it, :) but I hope it will be useful. The goal is to eventually be able to do basic seismic data processing in the browser without relying on any server-side coding.”