A workflow to create a global database for Ps and Sp receiver function imaging of crustal and upper mantle discontinuties
PyGLImER automates receiver function (RF) processing from download of raw waveform data to common conversion point (CCP) imaging with a minimum amount of user interference.
The implementation includes:
- Functions to download raw waveform data from FDSN providers
- Functions to feed in local waveform data
- An adaptable preprocessing scheme, including various rotational algorithms
- A variety of deconvolution algorithms (user-defined algorithms possible)
- An implementation of the iasp91 and GyPSum velocity models for depth migration (user-defined models are accepted)
- A new, particularly efficient Common Conversion Point Stacking algorithm
- A variety of plotting tools to explore datasets and to create prublication ready figures
- Efficient and fast processing and data management, support multi-processing, MPI, and HDF5
As developers, we are particularly concerned to create an automated, adaptable, efficient, and, yet, easy-to-use toolkit.
The project is largely based on the ObsPy project and can be seen as a more powerful and user-friendly successor of the GLImER project.
Installation of this package
Installation from PyPi
PyGLImER is now deployed on PyPi and can simply be installed using:
pip install pyglimer
Installation from source code
To obtain the latest updates, you can install PyGLImER from the source code, available on GitHub.
dev
branch
# Download via wget or web-browser
wget https://github.com/PyGLImER/PyGLImER/archive/refs/heads/master.zip
# For developers
wget https://github.com/PyGLImER/PyGLImER/archive/refs/heads/dev.zip
# unzip the package
unzip master.zip # or dev.zip, depending on branch
# Change directory to the same directory that this repo is in (i.e., same directory as setup.py)
cd PyGLImER-master # That's the standard name the folder should have
# Create the conda environment and install dependencies
conda env create -f environment.yml
# Activate the conda environment
conda activate pyglimer
# Install your package
pip install -e .
Optionally, you can test the package by running
pytest -p no:logging tests
Getting started
Access PyGLImER's documentation here.
PyGLImER comes with a few tutorials (Jupyter notebooks). You can find those in the examples/
directory.
What it looks like
With PyGLImER, we facilitate processing extremely large amounts of teleseismic data. This enables us to create large scale CCP sections as shown for P-to-S and S-to-P receiver function data in the plot below:
PyGLImER also comes with a toolset to create publication ready figures:
FIG: Single station stack and receiver functions sorted by epicentral distance from P receiver function for station GE.DAG. |
FIG: Distribution of back-azimuth and rayparameter for the P receiver functions from GE.DAG as shown above. |
Reporting Bugs / Contact the developers
This version is an early release. If you encounter any issues or unexpected behaviour, please open an issue here on GitHub or contact the developers.
Citing PyGLImER
If you use PyGLImER to produce content for your publication, please consider citing us. For the time being, please cite our AGU abstract.
Latest
We are happy to announced that PyGLImER has been awarded an ORFEUS software development grant and are looking forward to further develop this project.