Shock Response Spectrum

From Python Wiki

Revision as of 19:44, 2 January 2012 by Tomirvine (Talk | contribs)
Jump to: navigation, search


Mechanical shock pulses are often analyzed in terms of shock response spectra (SRS). The shock response spectrum assumes that the shock pulse is applied as a common base input to an array of independent single-degree-of-freedom systems. The shock response spectrum gives the peak response of each system with respect to the natural frequency. Damping is typically fixed at a constant value, such as 5%, which is equivalent to an amplification factor of Q=10.

The following tutorial gives further information: srs_intr.pdf


The scripts on this page require the utility module

Arbitrary Base Input - SRS Calculation

The SRS for an an arbitrary base input can be calculated via a digital recursive filtering relationship, which models the convolution integral.

The filtering relationship can be implemented in Python by importing the lfilter function from scipy.

from scipy.signal import lfilter

A script for doing this is given at:

A version for calculating and plotting the SRS in tripartite format is given at:

A script for calculating the SRS via a convolution integral is given at:

Arbitrary Base Input - Time Domain Response for a given SDOF System

Digital recursive filtering relationship method:

Runge-Kutta fourth order method method:

Half-sine Pulse

The response of an SDOF system to a half-sine base input can be calculated via a Laplace transform which yields a closed-form solution, as shown in sbase.pdf

A script is given at:

Note that the peak response may occur either during or after the half-sine pulse depending on the pulse duration, natural frequency, and damping ratio.

Terminal Sawtooth Pulse

The response of an SDOF system to a terminal sawtooth base input can also be calculated via a Laplace transform. terminal_sawtooth.pdf

A script is given at:


An SRS program is given at: QSRS.F

External References

Vibrationdata SRS Page

Return to: Main Page | Vibrationdata Python Scripts

Personal tools