{"id":29543947,"url":"https://github.com/paudetseis/telewavesim","last_synced_at":"2025-07-17T14:09:16.304Z","repository":{"id":46724696,"uuid":"204565459","full_name":"paudetseis/Telewavesim","owner":"paudetseis","description":"Teleseismic body wave modeling through stacks of (submarine/anisotropic) layers","archived":false,"fork":false,"pushed_at":"2025-05-13T21:43:31.000Z","size":8120,"stargazers_count":75,"open_issues_count":3,"forks_count":19,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-07-15T09:43:01.294Z","etag":null,"topics":["anisotropy","fortran","geophysics","modeling","obs","plane-waves","python","receiver-functions","seismology","sks"],"latest_commit_sha":null,"homepage":"https://paudetseis.github.io/Telewavesim/","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/paudetseis.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-08-26T21:33:34.000Z","updated_at":"2025-05-13T21:41:53.000Z","dependencies_parsed_at":"2025-04-07T04:21:49.914Z","dependency_job_id":"de948f2c-0821-489c-89a9-09df33631e9a","html_url":"https://github.com/paudetseis/Telewavesim","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/paudetseis/Telewavesim","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paudetseis%2FTelewavesim","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paudetseis%2FTelewavesim/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paudetseis%2FTelewavesim/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paudetseis%2FTelewavesim/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/paudetseis","download_url":"https://codeload.github.com/paudetseis/Telewavesim/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paudetseis%2FTelewavesim/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265614371,"owners_count":23798431,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["anisotropy","fortran","geophysics","modeling","obs","plane-waves","python","receiver-functions","seismology","sks"],"created_at":"2025-07-17T14:09:15.275Z","updated_at":"2025-07-17T14:09:16.295Z","avatar_url":"https://github.com/paudetseis.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"![](./telewavesim/examples/picture/tws_logo.png)\n\n## Software for teleseismic body wave modeling through stacks of anisotropic layers\n\nThe structure of the Earth's crust and upper mantle gives useful information on the\ninternal composition and dynamics of our planet. Some of the most widely used techniques\nto infer these properties are based on examining the effect of teleseismic body wave\n(i.e., P and S waves that originate from distant earthquakes and arrive as plane waves)\npropagation (e.g., transmission and scattering) through stratified media. Modeling the\nseismic response from stacks of subsurface layers is therefore an essential tool in\ncharacterizing their effect on observed seismograms.\n\nThis package contains `python` and `fortran` modules to synthesize teleseismic\nbody-wave propagation through stacks of generally anisotropic and strictly horizontal\nlayers using the matrix propagator approach of [Kennett (1983)](#references), as implemented\nin [Thomson (1997)](#references).\nThe software also properly models reverberations from an overlying column of water using the R/T\nmatrix expressions of [Bostock and Trehu (2012)](#references),\neffectively simulating ocean-bottom seismic (OBS) station recordings. The software\nwill be useful in a variety of teleseismic receiver-based studies, such as P or S\nreceiver functions, long-period P-wave polarization, shear-wave splitting from\ncore-refracted shear waves (i.e., SKS, SKKS), etc. It may also be the starting point\nfor stochastic inverse methods (e.g., Monte Carlo sampling). The main part of the\ncode is written in `fortran` with `python` wrappers. Common computational\nworkflows are covered in the Jupyter notebooks bundled with this package.\n\n[![JOSS paper](https://joss.theoj.org/papers/10.21105/joss.01818/status.svg)](https://doi.org/10.21105/joss.01818)\n[![DOI](https://zenodo.org/badge/204565459.svg)](https://zenodo.org/badge/latestdoi/204565459)\n[![PyPI version](https://badge.fury.io/py/telewavesim.svg)](https://badge.fury.io/py/telewavesim)\n\u003c!-- [![tests](https://github.com/paudetseis/Telewavesim/actions/workflows/tests.yml/badge.svg)](https://github.com/paudetseis/Telewavesim/actions/workflows/tests.yml)\n[![codecov](https://codecov.io/gh/paudetseis/telewavesim/branch/master/graph/badge.svg)](https://codecov.io/gh/paudetseis/telewavesim)\n --\u003e\n\nInstallation, Usage, API documentation and Jupyter Notebooks are described at https://paudetseis.github.io/Telewavesim/\n\n#### Citing\n\nIf you use `Telewavesim` in your work, please cite the [Zenodo DOI](https://zenodo.org/badge/latestdoi/204565459)\nand the following paper:\n\n- Audet, P., Thomson, C.J., Bostock, M.G., and Eulenfeld, T. (2019). Telewavesim:\nPython software for teleseismic body wave modeling. Journal of Open Source Software,\n4(44), 1818, https://doi.org/10.21105/joss.01818\n\n#### Contributing\n\nAll constructive contributions are welcome, e.g. bug reports, discussions or suggestions for new features. You can either [open an issue on GitHub](https://github.com/paudetseis/Telewavesim/issues) 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.\n\nExamples of straightforward contributions include adding more elastic constants or notebooks that describe published examples of teleseismic body-wave modeling. Suggestions for improvements (speed, accuracy, etc.) are also welcome.\n\n#### References\n\n- Bostock, M.G., and Trehu, A.M. (2012). Wave-field decomposition of ocean-bottom seismograms. Bulletin of the Seismological Society of America, 102, 1681-1692. https://doi.org/10.1785/0120110162\n\n- Kennett, B.L.N. (1983). Seismic wave propagation in stratified media. Cambridge University Press, 342pp. https://www.oapen.org/search?identifier=459524\n\n- Thomson, C.J. (1997). Modelling surface waves in anisotropic structures: I. Theory. Physics of the Earth and Planetary interiors, 103, 195-206. https://doi.org/10.1016/S0031-9201(97)00033-2\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpaudetseis%2Ftelewavesim","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpaudetseis%2Ftelewavesim","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpaudetseis%2Ftelewavesim/lists"}