Skip to main content

Excitation signals as used in structural dynamics and vibration fatigue.

Project description

DOI Build Status Docs Status

pyExSi - Excitation signals as used in structural dynamics and vibration fatigue

Supported excitation signals are:

  • pulse (e.g. half-sine)

  • random:

    • uniform random distribution

    • normal random distribution

    • pseudorandom distribution

  • random, defined by power spectral density (PSD):

    • stationary Gaussian

    • stationary non-Gaussian

    • non-stationary non-Gaussian random process

  • burst random

  • sine sweep

Simple example

A simple example on how to generate random signals on PSD basis:

import pyExSi as es
import numpy as np


N = 2**16 # number of data points of time signal
fs = 1024 # sampling frequency [Hz]
t = np.arange(0,N)/fs # time vector

# define frequency vector and one-sided flat-shaped PSD
M = N//2 + 1 # number of data points of frequency vector
freq = np.arange(0, M, 1) * fs / N # frequency vector
freq_lower = 50 # PSD lower frequency limit  [Hz]
freq_upper = 100 # PSD upper frequency limit [Hz]
PSD = es.get_psd(freq, freq_lower, freq_upper) # one-sided flat-shaped PSD

#get gaussian stationary signal
gausian_signal = es.random_gaussian((N, PSD, fs)

#get non-gaussian non-stationary signal, with kurtosis k_u=10
#amplitude modulation, modulating signal defined by PSD
PSD_modulating = es.get_psd(freq, freq_lower=1, freq_upper=10)
#define array of parameters delta_m and p
delta_m_list = np.arange(.1,2.1,.5)
p_list = np.arange(.1,2.1,.5)
#get signal
nongaussian_nonstationary_signal = es.nonstationary_signal(N,PSD,fs,k_u=5,modulating_signal=('PSD', PSD_modulating),param1_list=p_list,param2_list=delta_m_list)

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

pyexsi-0.43.2.tar.gz (4.3 MB view details)

Uploaded Source

Built Distribution

pyexsi-0.43.2-py3-none-any.whl (10.2 kB view details)

Uploaded Python 3

File details

Details for the file pyexsi-0.43.2.tar.gz.

File metadata

  • Download URL: pyexsi-0.43.2.tar.gz
  • Upload date:
  • Size: 4.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.18

File hashes

Hashes for pyexsi-0.43.2.tar.gz
Algorithm Hash digest
SHA256 a1ffc636c5283fc642bf474c124ef70461ae9ce3de3dbe2c549cff83aa9b2ebd
MD5 714aebe605b36d04c11a59e58fc35354
BLAKE2b-256 5cce67931e757a20d885bdcd13de6574c234eb967972c42b9ecbf7f050d45a91

See more details on using hashes here.

File details

Details for the file pyexsi-0.43.2-py3-none-any.whl.

File metadata

  • Download URL: pyexsi-0.43.2-py3-none-any.whl
  • Upload date:
  • Size: 10.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.18

File hashes

Hashes for pyexsi-0.43.2-py3-none-any.whl
Algorithm Hash digest
SHA256 2a30ac24a12ca3a4a5437c06bc838af6ad544ee432e32f64c13813d513452c8d
MD5 8c81aa017c699404865620a653691590
BLAKE2b-256 48ffd1f89a3bdd249637c3469345e20f2b63d8504af13ab7d4108c0f946444d4

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