Waveform picking and writing to header


I was wondering if you had any ideas about the question above?

I have an earthquake directory with three component SAC waveforms from different broadband seismic stations.
What I want to do is :
to plot them all in one screen and pick P and S arrivals, write them in to the SAC header, then locate the event. Is is possible with ObsPy and if it is which modules I should use?

Thanks & Regards,

Hi there,

you could have a look at ObsPyck
(https://github.com/megies/obspyck/wiki) which can be used to set picks
among other things. It mainly interacts with a SeisHub server, but
modifying it to output a QuakeML-like event file to disk is easy.
The ObsPyck documentation is a bit fragmentary, have a look at the wiki
page for the general overview and usage (see screenshots and their text).

To write picks to the SAC header you would have to use the obspy.sac
module directly (through obspy.sac.sacio.SacIO see for example

In any case, the location algorithm binaries and model files have to be
set up separately (e.g. for NonLinLoc).

hope it helps,