Skip to main content

A python library for performing horizontal-to-vertical spectral ratio (HVSR) processing

Project description

hvsrprocpy

A python library that performs Horizontal-to-Vertical Spectral Ratio (HVSR) processing.

DOI Pages pypi - version Codacy Badge GitHub License codecov Report Issues! Open Source? Yes!

Authors

Francisco Javier G. Ornelas1, Pengfei Wang2, Scott J. Brandenberg1, Jonathan P. Stewart1

1 University of California, Los Angeles (UCLA)
2 Old Dominion University

Table of Contents

Introduction


A python library that can perform Horizontal-to-Vertical Spectral Ratio (HVSR) processing from recordings of microtremors or earthquakes from 3-component seismometers. This library was developed by Francisco Javier G. Ornelas under the supervision of Dr. Jonathan P. Stewart and Dr. Scott J. Brandenberg at the University of California, Los Angeles (UCLA). Other contributions came from Dr. Pengfei Wang a professor at Old Dominion University, who wrote hvsrProc a rstudio package, which this python library is based on. That work can be found here:

Wang, P. wltcwpf/hvsrProc: First release (Version v1.0.0). Zenodo. http://doi.org/10.5281/zenodo.4724141

Background


HVSR is derived from ratios of the horizontal and vertical components of a Fourier Amplitude Spectrum (FAS) from a 3-component recording of microtremors or earthquakes. This is done by recording ground vibrations either from temporarily-deployed or permanently-installed seismometers, for a relatively short period of time (~1-2 hrs) or a longer period of time.

This method or technique was first proposed by Nogoshi and Igarashi (1971) [ABSTRACT] and later popularized by Nakamura (1989) [ABSTRACT]. The method works by assuming that the horizontal wavefield is amplified as seismic waves propagate through the soil deposits compared to the vertical wavefield.

HVSR can be useful in site characterization since it can identify resonant frequencies at sites, through peaks in an HVSR spectrum. Studies have also found that the lowest peak in HVSR spectra can be associated with the fundamental frequency of a site (e.g., [ABSTRACT]).

Getting started


Installation

hvsrprocpy is available using pip and can be installed with:

  • Jupyter Notebook pip install hvsrprocpy
  • PyPI py -m pip install hvsrprocpy

Usage

hvsrprocpy is a library that performs hvsr related processing. The library contains various features, such as:

  • Manual selection of windows in the time domain and the frequency domain.
  • Rotated HVSR to see the azimuthal variability of HVSR.
  • Different distibutions such as normal or log-normal.
  • Different smoothing functions such as Konno and Ohmachi and Parzen smoothing.
  • Different type of horizontal combinations, such as geometric mean, squared average, and RotD50.
  • Various outputs such as mean FAS and HVSR, selected HVSR and ts, and rotated HVSR.

Examples of these can be found under the examples folder in the Github repository [GIT]

Example of manual window selection on time series

Example of manual window selection on HVSR

Example of azimuthal plots

Example of Mean Curve plot with Metadata

Example comparisons of Konno and Ohmachi (left) and Parzen smoothing (right) on FAS

Citation


If you use hvsrprocpy (directly or as a dependency of another package) for work resulting in an academic publication or other instances, we would appreciate if you cite the following:

Ornelas, F. J. G., Wang, P., Brandenberg, S. J., & Stewart, J. P. (2024). fjornelas/hvsrprocpy: hvsrprocpy (v1.1.0). Zenodo. https://doi.org/10.5281/zenodo.12672550

Issues


Please report any issues or leave comments on the Issues page.

License

This project has been licensed under The GNU General Public License v3.0 more information about the license can be found here [LICENSE].

Acknowledgements

We would also like to thank the many others who aided in the development of this python library, these are:

  • John Stapleton
  • Chukwuma Okonkwo
  • Chukwuebuka C. Nweke
  • Tristan Buckreis
  • Christopher de la Torre

for their support in helping develop this python library.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hvsrprocpy-1.1.0.tar.gz (60.3 kB view details)

Uploaded Source

Built Distribution

hvsrprocpy-1.1.0-py3-none-any.whl (58.3 kB view details)

Uploaded Python 3

File details

Details for the file hvsrprocpy-1.1.0.tar.gz.

File metadata

  • Download URL: hvsrprocpy-1.1.0.tar.gz
  • Upload date:
  • Size: 60.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.9.13

File hashes

Hashes for hvsrprocpy-1.1.0.tar.gz
Algorithm Hash digest
SHA256 2eeb7d36c23e2a374ccc1080bf7360e6d30380429bef004f2a5d920acf7e980f
MD5 a253a84495750299b2e255455ec4a6d4
BLAKE2b-256 bde66124b8ad43b4254a666cc113f534906f5189e14be0959c0a17aa4a3a895c

See more details on using hashes here.

File details

Details for the file hvsrprocpy-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: hvsrprocpy-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 58.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.9.13

File hashes

Hashes for hvsrprocpy-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7b612b045b0fab68405e6a9daaeb91a3f328b4256f6015b4882d2c4e8dcce5ae
MD5 c5e4fa78e0e271b1333d816d14fe72a0
BLAKE2b-256 7fc995ae8f3b2c5fa4a0a043d77fedfd4b4eff991f638a52985fdaf053d01247

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page