sprit


Namesprit JSON
Version 1.0.2 PyPI version JSON
download
home_pageNone
SummaryA package for processing and analyzing HVSR (Horizontal to Vertical Spectral Ratio) data
upload_time2024-04-25 20:04:01
maintainerNone
docs_urlNone
authorRiley Balikian, Hongyu Xaio
requires_python>=3.9
licenseMIT License Copyright (c) 2023 RJbalikian Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
keywords hvsr seismic horizontal to vertical spectral ratio obspy geology geophysics geotechnical
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            [![DOI](https://zenodo.org/badge/593014510.svg)](https://zenodo.org/doi/10.5281/zenodo.10899401)

# SPRĪT 
SpRĪT (HVSR): Spectral Ratio Investigation Toolset for basic Horizontal Vertical Spectral Ratio processing, using any data format readable by the Obspy python package.

# Introduction

The Horizontal to Vertical Spectral Ratio (HVSR) technique is a method used to analyze ambient seismic noise to calculate the dominant frequency at a site.

This package will allow ambient seismic data to be read in the most common seismic data formats, and will perform Horizontal Vertical Spectral Ratio (HVSR) analysis on the data. H/V analysis was standardized and popularized by the Site EffectS assessment using AMbient Excitations (SESAME) project, with a comprehensive final report issued in 2003.<sup>[1](#1)</sup> This SESAME project and its J-SESAME pacakge were crucial in the developing of the HVSR technique, and the outputs aided in the development of this software package.

This python package is built in large part off the Incorporated Research Institutions in Seismology (IRIS) Horizontal to Vertical Spectral Ratio (HVSR) processing package.<sup>[2](#2)</sup> Specifically, the computeHVSR.py tools that enable the ability to rank HVSR peaks, calculate data quality and peak quality, and the combining of the horizontal components was adapted directly from that package. Because the SpRĪT package is intended to be used to analyze data from rapid field data acquisitions (less than an hour per site), much of the IRIS package was adapted from daily to HV curve calculations to sub-hourly and even sub-minute HV calculations. Because there is limited data, there is no baseline to compare to, so that element is excluded from this package.

That version is intended to read data from the IRIS Data Management Center (DMC) MUSTANG online service,<sup>[3](#3)</sup> which is a toolbox that provides processes for enabling data quality analysis services to data archived in the DMC. For example, a simple service query can extract power spectral density estimates, noise spectrograms, H/V plots, etc.

For guidelines on acquisition, processing, and interpration of H/V data, see: <http://sesame.geopsy.org/Papers/HV_User_Guidelines.pdf>. 

# Installation
Sprit may be installed from the [pypi repository](https://pypi.org/project/sprit/) using the pip command:

`pip install sprit`

The sprit package is in active development. Add the `--upgrade` argument (`pip install sprit --upgrade`) to ensure you have the latest version. If there are prerelease versions newer than the latest stable version that you would like to try out, use the `--pre` flag, i.e., `pip install sprit --pre`.

This should be done using command line. It is recommended to do this in a virtual environment. For information on creating virtual environments in python, see [this page](https://docs.python.org/3/library/venv.html). For the creation of anaconda environments, see [here](https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html). Note that it is not officially recommended to use pip repositories in anaconda environments, but it often works without any issues.

For troubleshooting issues with installation or usage of the sprit package, see the [Troubleshooting](https://github.com/RJbalikian/SPRIT-HVSR/wiki/Troubleshooting) page of the wiki.
# Documentation
- API Documentation [here](https://rjbalikian.github.io/SPRIT-HVSR/main.html)
- See Wiki for more tips, tutorials, usage guidelines, troubleshooting, and other information [here](https://github.com/RJbalikian/SPRIT-HVSR/wiki)
- Pypi repository [here](https://pypi.org/project/sprit/)
  
# Dependencies 
Aside from the modules in the python standard library, the following package dependencies must be installed in your environment for this package to work

- [Obspy](https://docs.obspy.org/): Python framework for processing seismological data
- [Numpy](https://matplotlib.org/): "The fundamental package for scientific computing with Python"
- [Scipy](https://scipy.org/): "Fundamental algorithms for scientific computing in Python"
- [Pandas](https://pandas.pydata.org): "A fast, powerful, flexible and easy to use open source data analysis and manipulation tool"
- [pyproj](https://pyproj4.github.io/pyproj/stable/): Module for cartographic projections and coordinate transformations, a python interface to [PROJ](https://proj.org/en/9.2/)
- [Matplotlib](https://matplotlib.org/): Comprehensive library for creating static, animated, and interactive visualizations in python
- plotly

## Dependencies specifically for GUIs
- [pyqt5-sip](https://pypi.org/project/PyQt5): Python binding of Qt GUI toolkit (used for window selection in jupyter notebooks)
- ipython
- ipywidgets
- nbformat 

# References
- <a id="1">[1]</a> <http://sesame.geopsy.org/Delivrables/SESAME-Finalreport_april05.pdf>
- <a id="2">[2]</a> <https://github.com/iris-edu/HVSR>
- <a id="3">[3]</a> <http://service.iris.edu/mustang/>

# Considerations
Summary from SESAME Project (from <https://www.iitk.ac.in/nicee/wcee/article/13_2207.pdf>):
In very brief, the main learnings may be summarized as follows: 

- In situ soil / sensor coupling should be handled with care. Concrete and asphalt provide good results, whereas measuring on soft / irregular soils such as mud, grass, ploughed soil, ice, gravel, not compacted snow, etc. should be avoided. Artificial soil / sensor coupling should be avoided unless it is absolutely necessary, for example, to compensate a strong inclination of the soil. In such a case, either a pile of sand, or a trihedron should be used This soil/sensor coupling issue proves to be particularly important under windy conditions.
- It is recommended not to measure above underground structures. Nearby surface structures should be considered with care, particularly under windy conditions. 
- Measurements under wind or strong rain should be avoided. Wind has been found to induce very significant low frequency perturbations. 
- The proximity of some specific noise sources should be considered with care (or avoided using an anti-trigger window selection to remove the transients): nearby walking, high speed car or truck traffic, industrial machinery, etc. 
- Results tend to be stable with time (if other parameters, such as weather conditions, etc. are kept constant). 
- No matter how strongly a parameter influences H/V amplitudes, the value of the frequency peak is usually not or slightly affected, with the noticeable exception of the wind in certain conditions.

# Citation
If you use the sprit package in your research, please use the following citation:

`Riley Balikian, Hongyu Xaio, Alexandra Sanchez. SPRIT HVSR: An open-source software package for processing, analyzing, and visualizing ambient seismic vibrations. Proceedings of the Geological Society of America, 2023. Pittsburgh, PA.`


            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "sprit",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "HVSR, seismic, horizontal to vertical spectral ratio, obspy, geology, geophysics, geotechnical",
    "author": "Riley Balikian, Hongyu Xaio",
    "author_email": "balikian@illinois.edu",
    "download_url": "https://files.pythonhosted.org/packages/6a/0c/750ea9d3f74ac0f0b5b5f433f9aaaf4d0397c798421edaf7ed0603b046b2/sprit-1.0.2.tar.gz",
    "platform": null,
    "description": "[![DOI](https://zenodo.org/badge/593014510.svg)](https://zenodo.org/doi/10.5281/zenodo.10899401)\n\n# SPR\u012aT \nSpR\u012aT (HVSR): Spectral Ratio Investigation Toolset for basic Horizontal Vertical Spectral Ratio processing, using any data format readable by the Obspy python package.\n\n# Introduction\n\nThe Horizontal to Vertical Spectral Ratio (HVSR) technique is a method used to analyze ambient seismic noise to calculate the dominant frequency at a site.\n\nThis package will allow ambient seismic data to be read in the most common seismic data formats, and will perform Horizontal Vertical Spectral Ratio (HVSR) analysis on the data. H/V analysis was standardized and popularized by the Site EffectS assessment using AMbient Excitations (SESAME) project, with a comprehensive final report issued in 2003.<sup>[1](#1)</sup> This SESAME project and its J-SESAME pacakge were crucial in the developing of the HVSR technique, and the outputs aided in the development of this software package.\n\nThis python package is built in large part off the Incorporated Research Institutions in Seismology (IRIS) Horizontal to Vertical Spectral Ratio (HVSR) processing package.<sup>[2](#2)</sup> Specifically, the computeHVSR.py tools that enable the ability to rank HVSR peaks, calculate data quality and peak quality, and the combining of the horizontal components was adapted directly from that package. Because the SpR\u012aT package is intended to be used to analyze data from rapid field data acquisitions (less than an hour per site), much of the IRIS package was adapted from daily to HV curve calculations to sub-hourly and even sub-minute HV calculations. Because there is limited data, there is no baseline to compare to, so that element is excluded from this package.\n\nThat version is intended to read data from the IRIS Data Management Center (DMC) MUSTANG online service,<sup>[3](#3)</sup> which is a toolbox that provides processes for enabling data quality analysis services to data archived in the DMC. For example, a simple service query can extract power spectral density estimates, noise spectrograms, H/V plots, etc.\n\nFor guidelines on acquisition, processing, and interpration of H/V data, see: <http://sesame.geopsy.org/Papers/HV_User_Guidelines.pdf>. \n\n# Installation\nSprit may be installed from the [pypi repository](https://pypi.org/project/sprit/) using the pip command:\n\n`pip install sprit`\n\nThe sprit package is in active development. Add the `--upgrade` argument (`pip install sprit --upgrade`) to ensure you have the latest version. If there are prerelease versions newer than the latest stable version that you would like to try out, use the `--pre` flag, i.e., `pip install sprit --pre`.\n\nThis should be done using command line. It is recommended to do this in a virtual environment. For information on creating virtual environments in python, see [this page](https://docs.python.org/3/library/venv.html). For the creation of anaconda environments, see [here](https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html). Note that it is not officially recommended to use pip repositories in anaconda environments, but it often works without any issues.\n\nFor troubleshooting issues with installation or usage of the sprit package, see the [Troubleshooting](https://github.com/RJbalikian/SPRIT-HVSR/wiki/Troubleshooting) page of the wiki.\n# Documentation\n- API Documentation [here](https://rjbalikian.github.io/SPRIT-HVSR/main.html)\n- See Wiki for more tips, tutorials, usage guidelines, troubleshooting, and other information [here](https://github.com/RJbalikian/SPRIT-HVSR/wiki)\n- Pypi repository [here](https://pypi.org/project/sprit/)\n  \n# Dependencies \nAside from the modules in the python standard library, the following package dependencies must be installed in your environment for this package to work\n\n- [Obspy](https://docs.obspy.org/): Python framework for processing seismological data\n- [Numpy](https://matplotlib.org/): \"The fundamental package for scientific computing with Python\"\n- [Scipy](https://scipy.org/): \"Fundamental algorithms for scientific computing in Python\"\n- [Pandas](https://pandas.pydata.org): \"A fast, powerful, flexible and easy to use open source data analysis and manipulation tool\"\n- [pyproj](https://pyproj4.github.io/pyproj/stable/): Module for cartographic projections and coordinate transformations, a python interface to [PROJ](https://proj.org/en/9.2/)\n- [Matplotlib](https://matplotlib.org/): Comprehensive library for creating static, animated, and interactive visualizations in python\n- plotly\n\n## Dependencies specifically for GUIs\n- [pyqt5-sip](https://pypi.org/project/PyQt5): Python binding of Qt GUI toolkit (used for window selection in jupyter notebooks)\n- ipython\n- ipywidgets\n- nbformat \n\n# References\n- <a id=\"1\">[1]</a> <http://sesame.geopsy.org/Delivrables/SESAME-Finalreport_april05.pdf>\n- <a id=\"2\">[2]</a> <https://github.com/iris-edu/HVSR>\n- <a id=\"3\">[3]</a> <http://service.iris.edu/mustang/>\n\n# Considerations\nSummary from SESAME Project (from <https://www.iitk.ac.in/nicee/wcee/article/13_2207.pdf>):\nIn very brief, the main learnings may be summarized as follows: \n\n- In situ soil / sensor coupling should be handled with care. Concrete and asphalt provide good results, whereas measuring on soft / irregular soils such as mud, grass, ploughed soil, ice, gravel, not compacted snow, etc. should be avoided. Artificial soil / sensor coupling should be avoided unless it is absolutely necessary, for example, to compensate a strong inclination of the soil. In such a case, either a pile of sand, or a trihedron should be used This soil/sensor coupling issue proves to be particularly important under windy conditions.\n- It is recommended not to measure above underground structures. Nearby surface structures should be considered with care, particularly under windy conditions. \n- Measurements under wind or strong rain should be avoided. Wind has been found to induce very significant low frequency perturbations. \n- The proximity of some specific noise sources should be considered with care (or avoided using an anti-trigger window selection to remove the transients): nearby walking, high speed car or truck traffic, industrial machinery, etc. \n- Results tend to be stable with time (if other parameters, such as weather conditions, etc. are kept constant). \n- No matter how strongly a parameter influences H/V amplitudes, the value of the frequency peak is usually not or slightly affected, with the noticeable exception of the wind in certain conditions.\n\n# Citation\nIf you use the sprit package in your research, please use the following citation:\n\n`Riley Balikian, Hongyu Xaio, Alexandra Sanchez. SPRIT HVSR: An open-source software package for processing, analyzing, and visualizing ambient seismic vibrations. Proceedings of the Geological Society of America, 2023. Pittsburgh, PA.`\n\n",
    "bugtrack_url": null,
    "license": "MIT License  Copyright (c) 2023 RJbalikian  Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:  The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ",
    "summary": "A package for processing and analyzing HVSR (Horizontal to Vertical Spectral Ratio) data",
    "version": "1.0.2",
    "project_urls": {
        "API Documentation": "https://rjbalikian.github.io/SPRIT-HVSR/main.html",
        "Homepage": "https://github.com/RJbalikian/SPRIT-HVSR",
        "Tutorials & Wiki": "https://github.com/RJbalikian/SPRIT-HVSR/wiki"
    },
    "split_keywords": [
        "hvsr",
        " seismic",
        " horizontal to vertical spectral ratio",
        " obspy",
        " geology",
        " geophysics",
        " geotechnical"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8e693fc1e1b0c8561ea2fe1eb4658c84c9c7e825d291c3f92599a08be35956c9",
                "md5": "b8c485bf054b6e8e5d0a28eb6ab1203f",
                "sha256": "9afb119aaa240bbbcbee5ca519d61293a36261bf52d9747eb7b6645f11e3a79d"
            },
            "downloads": -1,
            "filename": "sprit-1.0.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "b8c485bf054b6e8e5d0a28eb6ab1203f",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 13935536,
            "upload_time": "2024-04-25T20:03:57",
            "upload_time_iso_8601": "2024-04-25T20:03:57.661481Z",
            "url": "https://files.pythonhosted.org/packages/8e/69/3fc1e1b0c8561ea2fe1eb4658c84c9c7e825d291c3f92599a08be35956c9/sprit-1.0.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6a0c750ea9d3f74ac0f0b5b5f433f9aaaf4d0397c798421edaf7ed0603b046b2",
                "md5": "4f16603ebf897ed1cdb18dad33472e5e",
                "sha256": "ef781624476474d48aa4e5598ed9de2a20080f6ae22cf5483b6cd59a6a112199"
            },
            "downloads": -1,
            "filename": "sprit-1.0.2.tar.gz",
            "has_sig": false,
            "md5_digest": "4f16603ebf897ed1cdb18dad33472e5e",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 13889346,
            "upload_time": "2024-04-25T20:04:01",
            "upload_time_iso_8601": "2024-04-25T20:04:01.423955Z",
            "url": "https://files.pythonhosted.org/packages/6a/0c/750ea9d3f74ac0f0b5b5f433f9aaaf4d0397c798421edaf7ed0603b046b2/sprit-1.0.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-04-25 20:04:01",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "RJbalikian",
    "github_project": "SPRIT-HVSR",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "sprit"
}
        
Elapsed time: 0.27246s