pyRotd
======
|PyPi Cheese Shop| |Documentation| |Build Status| |Code Quality| |Test Coverage| |License| |DOI|
Acceleration response spectrum calculations implemented in Python.
Introduction
------------
Simple Python functions for calculating psuedo-spectral acceleration and
rotated psuedo-spectral acceleration. The response of the
single-degree-of-freedom oscillator is computed in the frequency domain along
with frequency-domain interpolation to accurately capture the high-frequency
characteristics.
The calculation of the response spectrum is performed using frequency domain
transfer functions, as well as frequency domain interpolation methods to insure
that the time step of the motions is greater than 10 times the natural
frequency of the oscillator frequency. Two perpendicular ground motions can be
rotated to compute the response at various percentiles. For example, the
minimum, median, and maximum could be computed using percentiles of 0, 50,
and 100. The orientation of both the minimum and maximum percentile are
provided, but not orientation is provided for other percentiles because the
rotate spectral acceleration is not monotonically increasing.
Installation
------------
``pyrotd`` is available from the Python Cheese Shop::
pip install pyrotd
Example
-------
Spectral accelerations may be computed for a single time series::
osc_damping = 0.05
osc_freqs = np.logspace(-1, 2, 91)
spec_accels = pyrotd.calc_spec_accels(
time_step, accels, osc_freqs, osc_damping)
Rotated spectral accelerations may be computed for a pair of time series::
rot_osc_resps = pyrotd.calc_rotated_spec_accels(
time_step, accels_a, accels_b, osc_freqs, osc_damping)
A more detailed example is in `this`_ Jupyter Notebook.
.. _this: https://github.com/arkottke/pyrotd/blob/master/examples/example-2.ipynb
Citation
--------
Please cite this software using the DOI_.
.. _DOI: https://zenodo.org/badge/latestdoi/2800441
.. |PyPi Cheese Shop| image:: https://img.shields.io/pypi/v/pyrotd.svg
:target: https://img.shields.io/pypi/v/pyrotd.svg
.. |Documentation| image:: https://readthedocs.org/projects/pyrotd/badge/?version=latest
:target: https://pyrotd.readthedocs.io/?badge=latest
.. |Build Status| image:: https://travis-ci.org/arkottke/pyrotd.svg?branch=master
:target: https://travis-ci.org/arkottke/pyrotd
.. |Code Quality| image:: https://api.codacy.com/project/badge/Grade/d449720a4b92474da6b18e040d6729f5
:target: https://www.codacy.com/manual/arkottke/pyrotd
.. |Test Coverage| image:: https://api.codacy.com/project/badge/Coverage/d449720a4b92474da6b18e040d6729f5
:target: https://www.codacy.com/manual/arkottke/pyrotd
.. |License| image:: https://img.shields.io/badge/license-MIT-blue.svg
.. |DOI| image:: https://zenodo.org/badge/2800441.svg
:target: https://zenodo.org/badge/latestdoi/2800441
History
=======
0.6.1 (2023-06-30)
------------------
- Tests np.version to accommodate change in keywords of np.percentile
0.6.0 (2023-06-19)
------------------
- Added optimization based on Stewart et al. (2017) algorithm
- Added support for computing rotated PGA, PGV, and PGD
0.5.4 (2018-07-27)
------------------
- Added MANIFEST.in
0.5.3 (2018-07-27)
------------------
- Fix packaging issues
0.5.2 (2018-03-26)
------------------
- Bump version for PyPi conflict
0.5.1 (2018-03-23)
------------------
- Added tests/ directory
- Added support for computing: SA, PSV, SV, and SD.
0.5.0 (2017-06-15)
------------------
- Added support for Python 2.7
- Added support for multiprocessing
- Changed from using setup.cfg for metadata.
0.4.6 (2017-04-19)
------------------
- Changed to use setup.cfg
- Incremented version several times due to issues releasing.
0.4.1 (2017-04-11)
------------------
- Fix release via Travis.
0.4.0 (2017-04-06)
------------------
- Changed to return numpy.recarrays
0.3.0 (2017-04-05)
------------------
- Added example
- Added support for typing
0.2.0 (2017-02-20)
------------------
- Changed from camelCase to underscores
- Added PEER NGA West2 test cases
- Fixed: numpy.array creation
0.1.0 (2016-03-04)
------------------
- First release on PyPI.
Raw data
{
"_id": null,
"home_page": "http://github.com/arkottke/pyrotd",
"name": "pyRotd",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "response spectrum,earthquake ground motion",
"author": "Albert Kottke",
"author_email": "albert.kottke@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/74/f3/40c7d6c408af2fd45d758a6729e2794272327d0c62eea3e3c0794fcbf80b/pyRotd-0.6.1.tar.gz",
"platform": null,
"description": "pyRotd\n======\n\n|PyPi Cheese Shop| |Documentation| |Build Status| |Code Quality| |Test Coverage| |License| |DOI|\n\nAcceleration response spectrum calculations implemented in Python.\n\nIntroduction\n------------\n\nSimple Python functions for calculating psuedo-spectral acceleration and\nrotated psuedo-spectral acceleration. The response of the\nsingle-degree-of-freedom oscillator is computed in the frequency domain along\nwith frequency-domain interpolation to accurately capture the high-frequency\ncharacteristics.\n\nThe calculation of the response spectrum is performed using frequency domain\ntransfer functions, as well as frequency domain interpolation methods to insure\nthat the time step of the motions is greater than 10 times the natural\nfrequency of the oscillator frequency. Two perpendicular ground motions can be\nrotated to compute the response at various percentiles. For example, the\nminimum, median, and maximum could be computed using percentiles of 0, 50,\nand 100. The orientation of both the minimum and maximum percentile are\nprovided, but not orientation is provided for other percentiles because the\nrotate spectral acceleration is not monotonically increasing.\n\nInstallation\n------------\n\n``pyrotd`` is available from the Python Cheese Shop::\n\n pip install pyrotd\n\nExample\n-------\n\nSpectral accelerations may be computed for a single time series::\n\n osc_damping = 0.05\n osc_freqs = np.logspace(-1, 2, 91)\n spec_accels = pyrotd.calc_spec_accels(\n time_step, accels, osc_freqs, osc_damping)\n\nRotated spectral accelerations may be computed for a pair of time series::\n\n rot_osc_resps = pyrotd.calc_rotated_spec_accels(\n time_step, accels_a, accels_b, osc_freqs, osc_damping)\n\nA more detailed example is in `this`_ Jupyter Notebook.\n\n.. _this: https://github.com/arkottke/pyrotd/blob/master/examples/example-2.ipynb\n\nCitation\n--------\n\nPlease cite this software using the DOI_.\n\n.. _DOI: https://zenodo.org/badge/latestdoi/2800441\n\n.. |PyPi Cheese Shop| image:: https://img.shields.io/pypi/v/pyrotd.svg\n :target: https://img.shields.io/pypi/v/pyrotd.svg\n.. |Documentation| image:: https://readthedocs.org/projects/pyrotd/badge/?version=latest\n :target: https://pyrotd.readthedocs.io/?badge=latest\n.. |Build Status| image:: https://travis-ci.org/arkottke/pyrotd.svg?branch=master\n :target: https://travis-ci.org/arkottke/pyrotd\n.. |Code Quality| image:: https://api.codacy.com/project/badge/Grade/d449720a4b92474da6b18e040d6729f5 \n :target: https://www.codacy.com/manual/arkottke/pyrotd\n.. |Test Coverage| image:: https://api.codacy.com/project/badge/Coverage/d449720a4b92474da6b18e040d6729f5 \n :target: https://www.codacy.com/manual/arkottke/pyrotd\n.. |License| image:: https://img.shields.io/badge/license-MIT-blue.svg\n.. |DOI| image:: https://zenodo.org/badge/2800441.svg\n :target: https://zenodo.org/badge/latestdoi/2800441\n\n\n\nHistory\n=======\n\n0.6.1 (2023-06-30)\n------------------\n- Tests np.version to accommodate change in keywords of np.percentile\n\n0.6.0 (2023-06-19)\n------------------\n- Added optimization based on Stewart et al. (2017) algorithm\n- Added support for computing rotated PGA, PGV, and PGD\n\n0.5.4 (2018-07-27)\n------------------\n- Added MANIFEST.in\n\n0.5.3 (2018-07-27)\n------------------\n- Fix packaging issues\n\n0.5.2 (2018-03-26)\n------------------\n- Bump version for PyPi conflict\n\n0.5.1 (2018-03-23)\n------------------\n- Added tests/ directory\n- Added support for computing: SA, PSV, SV, and SD.\n\n0.5.0 (2017-06-15)\n------------------\n- Added support for Python 2.7\n- Added support for multiprocessing\n- Changed from using setup.cfg for metadata.\n\n0.4.6 (2017-04-19)\n------------------\n- Changed to use setup.cfg\n- Incremented version several times due to issues releasing.\n\n0.4.1 (2017-04-11)\n------------------\n- Fix release via Travis.\n\n0.4.0 (2017-04-06)\n------------------\n- Changed to return numpy.recarrays\n\n0.3.0 (2017-04-05)\n------------------\n- Added example\n- Added support for typing\n\n0.2.0 (2017-02-20)\n------------------\n- Changed from camelCase to underscores\n- Added PEER NGA West2 test cases\n- Fixed: numpy.array creation\n\n0.1.0 (2016-03-04)\n------------------\n- First release on PyPI.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Rotated response spectrum calculation implemented in Python.",
"version": "0.6.1",
"project_urls": {
"Homepage": "http://github.com/arkottke/pyrotd"
},
"split_keywords": [
"response spectrum",
"earthquake ground motion"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "1fd6a4865634bd63cf5192db4969883ab0b5a99176a540c0369515f7ed44c0e4",
"md5": "a9cc2c00074bc6e38a39028bc85efba6",
"sha256": "203b9617ec9a3497d1050030ec4b150a8ee710babe2e99f513767889e45ecdc0"
},
"downloads": -1,
"filename": "pyRotd-0.6.1-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "a9cc2c00074bc6e38a39028bc85efba6",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 10744,
"upload_time": "2023-06-30T16:31:44",
"upload_time_iso_8601": "2023-06-30T16:31:44.525990Z",
"url": "https://files.pythonhosted.org/packages/1f/d6/a4865634bd63cf5192db4969883ab0b5a99176a540c0369515f7ed44c0e4/pyRotd-0.6.1-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "74f340c7d6c408af2fd45d758a6729e2794272327d0c62eea3e3c0794fcbf80b",
"md5": "34055245d04f7900e0cc95605a7ccb10",
"sha256": "8093d8f777ecc5b1d1d038e5e9036c63a8ff88cc89bb2b5c6d6410d0d747e90d"
},
"downloads": -1,
"filename": "pyRotd-0.6.1.tar.gz",
"has_sig": false,
"md5_digest": "34055245d04f7900e0cc95605a7ccb10",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 9766,
"upload_time": "2023-06-30T16:31:46",
"upload_time_iso_8601": "2023-06-30T16:31:46.369402Z",
"url": "https://files.pythonhosted.org/packages/74/f3/40c7d6c408af2fd45d758a6729e2794272327d0c62eea3e3c0794fcbf80b/pyRotd-0.6.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-06-30 16:31:46",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "arkottke",
"github_project": "pyrotd",
"travis_ci": true,
"coveralls": true,
"github_actions": true,
"requirements": [],
"lcname": "pyrotd"
}