SAUL is the SeismoAcoustic Utilities Library. It's my take on the collection of tools that I imagine exist, in some form, on every seismoacoustican's computer — utilities for gathering waveform data, plotting waveforms in the time and frequency domain, visualizing key metadata such as station locations, et cetera. The goal of SAUL is to make these fundamental data exploration tools as easy-to-use as possible. Thus, priority is placed upon straightforward (e.g., easily memorized) commands and time-saving helper functions — while attempting to leverage existing dependencies as much as possible to avoid duplicated effort.
🚧 Disclaimer 🚧
As a workhorse "everyday tools" repository, SAUL is currently (perpetually?) under rapid development. Expect to encounter breaking changes after agit pull
update!
Both of these options assume that you've already installed the
mamba
package manager (don't bother with
conda
), and that you've cloned this repository and
have navigated to the root directory.
Option 1: Create a new environment named saul
.
mamba env create
Option 2: Install SAUL into an existing environment of your choosing.
mamba env update --name <existing_environment>
Be sure that the environment you've installed SAUL into is activated. Here's a simple usage example which highlights SAUL's object-oriented interface:
from saul import PSD, Stream
st = Stream.from_earthscope('AK', 'HOM', 'BDF', (2023, 9, 1, 0, 5), (2023, 9, 1, 0, 15))
st.detrend().taper(0.05).remove_response() # SAUL Stream objects behave like ObsPy's
PSD(st, method='multitaper').plot(show_noise_models=True)
For detailed usage information, see the API documentation.
To install the development packages for SAUL, run the following command from the root directory of this repository, with your environment containing SAUL (see Installing) activated.
pip install --requirement requirements.txt