pyRaTS - processing of (RAndom) TimeSeries for vibration fatigue
---------------------------------------------
Providing an object-oriented framework to analyze and process time series with the focus on random vibration fatigue. PyRaTS is capable of handling single- and multi-channel, as well as single- and multi-process time series configurations.
Implementation of the non-stationarity matrix, the Fatigue Damage Spectrum and quasi-stationary signal definitions to deal with the challenges of non-stationary loading.
Installing this package
-----------------------
Use `pip` to install it by:
.. code-block:: console
$ pip install pyRaTS
Simple example
---------------
Here is a simple example for running a basic code. Further examples can be found on:
https://github.com/ArvidTrapp/pyRaTS
.. code-block:: python
import pyRaTS as ts
import numpy as np
# Defining the series by pseudo-random generator...
T = 10
fs = 1024
N = T*fs
x = np.random.randn(N)
# Initialize series and some basic plots...
sig = ts.timeseries(x,name = 'sample timeseries', fs = fs)
sig.plot()
sig.plot_prob()
sig.plot_psd()
# derive response series and some further basic plots...
respsig = sig.der_sdofResponse(fD = 50)
respsig.plot_psd()
respsig.plot_ls()
Some methods for a statistical analysis of random time series / estimation of statistical descriptors
-----------------------------------------
* spectral moments (est_specMoms)
* Dirlik estimator (est_dirlik/est_dirlikD)
* PSD (est_psd)
* load spectra (est_ls)
* Fatigue Damage Spectrum (est_fds) ...accepts list of FLife methods for damage estimation
* non-stationarity matrix (est_nonstat)
Some methods for plotting
-----------------------------------------
* time series (plot)
* PSD (plot_psd)
* absolute of Fourier transform (plot_X)
* load spectra (plot_ls) ...accepts list of FLife methods with PDF definition
* transfer function (plot_tf)
* Fatigue Damage Spectrum (plot_fds)
* non-stationarity matrix (plot_nonstat)
Some methods for processing time series
-----------------------------------------
* statistical response...PSD & Non-stat.-Matrix (der_statResponse(f,H))
* response timeseries of single-degree-of-freedom system (der_sdofResponse(fD, D, func))
* response timeseries for linear transfer function (der_response(f,H))
* quasi-stationary load definition on the basis of the load spectra of the Fatigue Damage Spectrum (der_lsEquivalent())
* load definition on the basis of the inverse Fatigue Damage Spectrum (der_iFDS())
* ideal high pass filtered signal (der_highpass(f))
* ideal low pass filtered signal (der_lowpass(f))
* ideal band pass filtered signal (der_bandpass(f))
Raw data
{
"_id": null,
"home_page": "https://github.com/ArvidTrapp/pyRaTS",
"name": "pyRaTS",
"maintainer": "Arvid Trapp, Peter Wolfsteiner",
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": "arvid.trapp@hm.edu",
"keywords": "vibration fatigue, non-stationarity matrix, structural dynamics,Fatigue Damage Spectrum",
"author": "Arvid Trapp",
"author_email": "arvid.trapp@hm.edu",
"download_url": "https://files.pythonhosted.org/packages/34/1b/51e300050ced32148eee24afad71a4998e93d4a079c15f14910bf686e3a8/pyRaTS-0.21.tar.gz",
"platform": null,
"description": "pyRaTS - processing of (RAndom) TimeSeries for vibration fatigue\r\n---------------------------------------------\r\n\r\nProviding an object-oriented framework to analyze and process time series with the focus on random vibration fatigue. PyRaTS is capable of handling single- and multi-channel, as well as single- and multi-process time series configurations. \r\nImplementation of the non-stationarity matrix, the Fatigue Damage Spectrum and quasi-stationary signal definitions to deal with the challenges of non-stationary loading. \r\n\r\nInstalling this package\r\n-----------------------\r\n\r\nUse `pip` to install it by:\r\n\r\n.. code-block:: console\r\n\r\n $ pip install pyRaTS\r\n\r\nSimple example\r\n---------------\r\n\r\nHere is a simple example for running a basic code. Further examples can be found on: \r\nhttps://github.com/ArvidTrapp/pyRaTS\r\n\r\n.. code-block:: python\r\n\r\n import pyRaTS as ts\r\n import numpy as np\r\n\r\n # Defining the series by pseudo-random generator...\r\n T = 10\r\n fs = 1024\r\n N = T*fs\r\n x = np.random.randn(N)\r\n\r\n # Initialize series and some basic plots...\r\n sig = ts.timeseries(x,name = 'sample timeseries', fs = fs)\r\n sig.plot()\r\n sig.plot_prob()\r\n sig.plot_psd()\r\n\r\n # derive response series and some further basic plots...\r\n respsig = sig.der_sdofResponse(fD = 50)\r\n respsig.plot_psd()\r\n respsig.plot_ls()\r\n\t\r\nSome methods for a statistical analysis of random time series / estimation of statistical descriptors\r\n-----------------------------------------\r\n\r\n\t* spectral moments (est_specMoms)\r\n\t* Dirlik estimator (est_dirlik/est_dirlikD)\r\n\t* PSD (est_psd)\r\n\t* load spectra (est_ls)\r\n\t* Fatigue Damage Spectrum (est_fds) ...accepts list of FLife methods for damage estimation\r\n\t* non-stationarity matrix (est_nonstat)\r\n\r\nSome methods for plotting\r\n-----------------------------------------\r\n\r\n\t* time series (plot)\r\n\t* PSD (plot_psd)\r\n\t* absolute of Fourier transform (plot_X)\r\n\t* load spectra (plot_ls) ...accepts list of FLife methods with PDF definition\r\n\t* transfer function (plot_tf)\r\n\t* Fatigue Damage Spectrum (plot_fds) \r\n\t* non-stationarity matrix (plot_nonstat)\r\n\r\nSome methods for processing time series\r\n-----------------------------------------\r\n\r\n\t* statistical response...PSD & Non-stat.-Matrix (der_statResponse(f,H)) \r\n\t* response timeseries of single-degree-of-freedom system (der_sdofResponse(fD, D, func))\r\n\t* response timeseries for linear transfer function (der_response(f,H))\r\n\t* quasi-stationary load definition on the basis of the load spectra of the Fatigue Damage Spectrum (der_lsEquivalent())\r\n\t* load definition on the basis of the inverse Fatigue Damage Spectrum (der_iFDS())\r\n\t* ideal high pass filtered signal (der_highpass(f))\r\n\t* ideal low pass filtered signal (der_lowpass(f))\r\n\t* ideal band pass filtered signal (der_bandpass(f))\r\n",
"bugtrack_url": null,
"license": "",
"summary": "processing of (RAndom) TimeSeries for vibration fatigue",
"version": "0.21",
"project_urls": {
"Homepage": "https://github.com/ArvidTrapp/pyRaTS"
},
"split_keywords": [
"vibration fatigue",
" non-stationarity matrix",
" structural dynamics",
"fatigue damage spectrum"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "cb039e1dbd3c47de20b5ecf61e1e55b78a2850ed46ceb68b2f71dfb914822798",
"md5": "1f0ac6384049ab79e7ca32f596d6ee84",
"sha256": "12efaa77ce3046af563ab2261fa291e4bc464c3afe922cb9cda4c545fd2f80bc"
},
"downloads": -1,
"filename": "pyRaTS-0.21-py3-none-any.whl",
"has_sig": false,
"md5_digest": "1f0ac6384049ab79e7ca32f596d6ee84",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 23198,
"upload_time": "2023-05-24T14:53:06",
"upload_time_iso_8601": "2023-05-24T14:53:06.487198Z",
"url": "https://files.pythonhosted.org/packages/cb/03/9e1dbd3c47de20b5ecf61e1e55b78a2850ed46ceb68b2f71dfb914822798/pyRaTS-0.21-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "341b51e300050ced32148eee24afad71a4998e93d4a079c15f14910bf686e3a8",
"md5": "85411ee9d09f1d13f96faaba609a600b",
"sha256": "5653f033dd79611fa1b0f1c8dbf2ba211e9bd88358577cd82eb7473f3881764c"
},
"downloads": -1,
"filename": "pyRaTS-0.21.tar.gz",
"has_sig": false,
"md5_digest": "85411ee9d09f1d13f96faaba609a600b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 23235,
"upload_time": "2023-05-24T14:53:08",
"upload_time_iso_8601": "2023-05-24T14:53:08.041473Z",
"url": "https://files.pythonhosted.org/packages/34/1b/51e300050ced32148eee24afad71a4998e93d4a079c15f14910bf686e3a8/pyRaTS-0.21.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-05-24 14:53:08",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "ArvidTrapp",
"github_project": "pyRaTS",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "pyrats"
}