Code Monkey home page Code Monkey logo

splitpy's Introduction

Software for teleseismic shear-wave splitting analysis

Seismic anisotropy refers to the property of seismic waves to propagate at different wavespeeds depending on the direction of propagation. This property can be related to the coherent alignment of rock-forming minerals, which is thought to reflect the current dynamics or fossilized structure of Earth materials due to tectonic deformation. In the upper mantle, seismic anisotropy is most easily determined using the distortion of teleseismic body waves with a known initial polarity, typically core-refracted shear-waves (SKS, SKKS).

SplitPy is a teleseismic shear-wave Splitting Toolbox based on the Matlab Tool SplitLab, but with modifications from Wustefeld et al (2008). Additional error surface implementation has been added, however these error surfaces have not been fully tested. The code produces output identical to those in Audet et al. (2016)

DOI Build Status

Installation, Usage, API documentation and tutorials are described at https://paudetseis.github.io/SplitPy/.

Authors: Pascal Audet (Developer and Maintainer) & Andrew Schaeffer (Contributor)

Citing

If you use SplitPy in your work, please cite the Zenodo DOI.

Contributing

All constructive contributions are welcome, e.g. bug reports, discussions or suggestions for new features. You can either open an issue on GitHub or make a pull request with your proposed changes. Before making a pull request, check if there is a corresponding issue opened and reference it in the pull request. If there isn't one, it is recommended to open one with your rationale for the change. New functionality or significant changes to the code that alter its behavior should come with corresponding tests and documentation. If you are new to contributing, you can open a work-in-progress pull request and have it iteratively reviewed.

Examples of straightforward contributions include notebooks that describe published examples of teleseismic shear-wave splitting. Suggestions for improvements (speed, accuracy, etc.) are also welcome.

References

  • Audet, P., Sole, C., and Schaeffer, A.J. (2016). Control of lithospheric inheritance on neotectonic activity in northwestern Canada? Geology, 44, 807-810, https://doi.org/10.1130/G38118.1

  • Wustefeld, A., and Bokelmann, G. (2007). Null detection in shear-wave splitting measurements. Bulletin of the Seismological Society of America, 97, 1204-1211, https://doi.org/10.1785/0120060190

  • Wustefeld, A., Bokelmann, G., Zeroli, C., and Barruol, G. (2008). SplitLab: A shear-wave splitting environment in Matlab. Computers & Geoscience, 34, 515-528, https://doi.org/10.1016/j.cageo.2007.08.002

Use Cases

  • Esteve, C., Audet, P., Schaeffer, A.J., Schutt, D.L., Aster, R.A., and Cubley, J. (2020). Seismic evidence for craton chiseling and displacement of lithospheric mantle by the Tintina Fault in the Northern Canadian Cordilleras, Geology, in press.

splitpy's People

Contributors

paudetseis avatar schaefferaj avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

splitpy's Issues

Question on location codes

Hello, I am trying to run this on two different location codes at a single station. However, when I make the database using query_fdsn_stdb.py I only get one location code.

e.g.,

   Station: ANMO
     Lon, Lat, Elev: -106.4572,  34.9459,   1.820
     Start Date: 2008-06-30 20:00:00
     End Date:   2020-07-24 16:07:27
     Status:     open
     Selected Channel: BH
     Locations:        --
    Warning: IU.ANMO already exists...Skip

However, ANMO currently doesn't have a -- location code sensor. It has a 00 and 10.

Thanks for your help.

how to use splitPy

Hi,
so Iv'e been trying to use the program and cannot even figure out how to activate it.
Iv'e installed everything as suggested by the documentation, but the tutorial isn't for a python script, so how do I run the program?
Also, I have my own traces which I want to analyze. Is It possible to use splitPy for that?

thanks!

Program enhancements

Another to-do list for program enhancements

  • Accept either StDb or obspy.inventory object (or seamlessly switch between them using StDb tools)

  • Perform automated processing as a first step

  • Add program to re-calculate splits manually (interactively) and discard bad estimates

  • Include multi-frequency, multi-window approach (MFAST)

  • Write more clever post-processing using, e.g., cluster analysis

Pickling order dependency

Due to how pickle files are dumped in the original code, if users want to unpickle the resulting files they must load SC_res first then RC_res. Otherwise, RC results are labeled as SC and vice versa. Is there a way to make this not order-dependent, or provide an unpickling script for users taking this into account?

Station/Network Typos in Tutorial

In the documentation, TA is frequently listed as network name for TGTN, although the correct network name is NY. Using the correct network name is necessary to query FDSN (as in remainder tutorials).

pickle object to text file

Hi,
I'm trying the use of your SplitPy software and I'm finding some very interesting characteristics as the use of open platform (python) or the the automatization of the process that take into account the downloading of the data. I tested your example of TGTN station without error so everything seem to be installed properly.
Anyway, since I'm not a very proficient user of python, I'm finding some difficulties to "read humanly" the results saved because the pickle object resulted at the end of the analysis is not easily manageable (at least for me). Are there any scripts to convert the pickle object of the results into a csv ot txt file? If not, do you plan to write down some in the next future? Or to provide example in your website?
Thanks in advance,
Simone

To-do for SplitPy

  • Implement Continuous Integration using Travis
  • Deploy documentation using Travis in gh-pages branch
  • Write tests for code coverage
  • Write better examples for code usage outside of scripts

About figure plot

I use the average function to calculate the result, but there are no plot with the terminal shows
截图_选择区域_20231214175416

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.