# Webinar 41 – PSD Special Topics

1. Band-Splitting
2. Time-Level Equivalence
3. PSD Synthesis using Sine Series

PowerPoint Slides:  webinar_41_psd_topics.pptx

Audio/Visual File:

NESC Academy PSD Special Topics – Recommend viewing in Firefox with Sliverlight Plugin

* * *

Matlab script: Vibrationdata Signal Analysis Package

* * *

Here is a brief guideline paper from Martin-Marietta:  bandsplit.pdf

* * *

Thank you,
Tom Irvine

# Fatigue Damage for a Stress Response PSD

Here is a paper.

Estimating Fatigue Damage from Stress Power Spectral Density Functions: estimate_fatigue_psd.pdf

Note that the duration for the example in the paper was 600 sec.

* * *

This following Matlab program calculates the cumulative rainflow fatigue damage for an input stress PSD using the following wideband methods:

1. Wirsching & Light
2. Ortiz & Chen
3. Lutes & Larsen, Single-Moment
4. Benasciutti & Tovo, alpha 0.75
5. Dirlik
6. Zhao & Baker

Reference:

The stress PSD and the fatigue strength coefficient must have consistent stress units.

The input PSD must have two columns: freq(Hz) & stress(unit^2/Hz)

* * *

Main scripts:

stress_psd_fatigue.zip

Vibrationdata Signal Analysis Package

* * *

The following values are “For Reference Only.”

m = fatigue exponent
A = fatigue strength coefficient

Aluminum 6061-T6 with zero mean stress

m=9.25
A=9.7724e+17 (ksi^9.25)
A=5.5757e+25 (MPa^9.25)

Butt-welded Steel Joints

m=3.5
A=1.255e+11 (ksi^3.5)
A=1.080e+14 (MPa^3.5)

* * *

Rainflow Fatigue

Mrsnik, Janko Slavic, Boltezar, Frequency-domain methods for a vibration-fatigue-life estimation – Application to real data:  mrsnik_article_vib_fatigue.pdf

Spectral Moments Notes

* * *

– Tom Irvine

# Webinar 16 – Vibration Response Spectrum

PowerPoint File:

Webinar_16_VRS.pptx

Audio/Visual File:

NESC Academy VRS  – Recommend viewing in Firefox with Sliverlight plugin

* * *

Python Version

Webinar_16_VRS_python.pptx

Python script: Python Signal Analysis Package GUI

* * *

PSD Data Files:

webinar_16_data_files.mat

webinar_16_data_files.zip

* * *

Reference Paper:

An Introduction to the Vibration Response Spectrum link

* * *

Matlab script:  Vibrationdata Signal Analysis Package

* * *

* * *

– Tom Irvine

# Webinar 15 – SDOF Response to Base Input in the Frequency Domain

PowerPoint File:

webinar_15_SDOF_frequency_domain.ppt

Audio/Visual File:

NESC Academy SDOF_response_base_input_frequency_domain – Recommend viewing in Firefox with Sliverlight plugin

* * *

PSD Data File:

navmat_spec.psd

* * *

Python

webinar_15_SDOF_frequency_domain_python.pptx

Python script: Python Signal Analysis Package GUI

* * *

Reference Papers:

The Steady-state Response of Single-degree-of-freedom System to a Harmonic Base Excitation link

* * *

Matlab script: Vibrationdata Signal Analysis Package

* * *

* * *

– Tom Irvine

# Fatigue Damage Spectrum, Frequency Domain

There is an occasional need to compare the effects of two different power spectral density (PSD) base input functions for a particular component. This would be the case if the component has already been tested to one PSD but now must be subjected to a new PSD specification.

A comparison can readily be performed using a Vibration Response Spectrum (VRS) if the PSDs have the same duration. This requires estimates of the bounds for both the amplification factor Q and the natural frequency.

The task is more complex if the PSDs have different durations. A Fatigue Damage Spectrum (FDS) comparison can be performed as an extension of the VRS method. This also requires estimates of the fatigue exponent.

The method is demonstrated using an actual case history: psd_fatigue_comparison.pdf

* * *

Here is the source code for a C++ vibration response program which has a fatigue damage spectrum option: vrs.cpp

The calculation can also be performed using:

Matlab script: Vibrationdata Signal Analysis Package

* * *

Rainflow Fatigue Cycle Counting

Dirlik Rainflow Counting Method from Response PSD

SDOF Response to an acceleration PSD Base Input

* * *

– Tom Irvine

# Webinar 14 – Synthesizing a Time History to Satisfy a PSD Specification

PowerPoint File:

Webinar_14_PSD_synthesis.pptx

Audio/Visual File:

NESC Academy PSD_synthesis – Recommend viewing in Firefox with Sliverlight plugin

* * *

PSD Data File:

navmat_spec.psd

* * *

Matlab script: Vibrationdata Signal Analysis Package

* * *

Python Version

Webinar_14_PSD_synthesis_python.pptx

Python script: Python Signal Analysis Package GUI

* * *

* * *

– Tom Irvine

# Webinar 13 – SDOF Response to Power Spectral Density Base Input

PowerPoint File:

Webinar_13_PSD_sdof_response.pptx

Audio/Visual File:

NESC Academy SDOF_Response_to_PSD_Input   – Recommend viewing in Firefox with Sliverlight plugin

* * *

Reference Paper:  Derivation of Miles Equation

* * *

Matlab script: Vibrationdata Signal Analysis Package

* * *

Python Version: Webinar_13_PSD_sdof_response_python.ppt

Python script: Python Signal Analysis Package GUI

* * *

* * *

– Tom Irvine

# Webinar 12 – Power Spectral Density Functions of Measured Data

PowerPoint File:

Webinar_12_PSD_data.pptx

Audio/Visual File:

NESC Academy PSD data – Recommend viewing in Firefox with Sliverlight plugin

Data:

Taurus_auto.dat – Time(sec) & Accel(G)

* * *

Matlab script: Vibrationdata Signal Analysis Package

* * *

Python Version:  Webinar_12_PSD_data_python.pptx

Python script: Python Signal Analysis Package GUI

* * *

* * *

If you would like to be included on the distribution list for the Webinar series, please send an Email to: tom@irvinemail.org

Thank you,

Tom Irvine

# Webinar 11 – Power Spectral Density

PowerPoint File:

Webinar_11_PSD.ppt

The sample PSD specification is taken from:  NAVMAT-P9492

Audio/Visual File:

NESC Academy PSD – Recommend viewing in Firefox with Sliverlight plugin

* * *

Python Version:  Webinar_11_PSD_python.ppt

* * *

Reference Papers:

Integration of the Power Spectral Density Function

Statistical Degrees-of-Freedom

Power Spectral Density Units [ G^2 / Hz ]

* * *

Matlab script: Vibrationdata Signal Analysis Package

Python script: Python Signal Analysis Package GUI

* * *

* * *

– Tom Irvine

# Optimized PSD Envelope for Nonstationary Vibration

There is a need to derive a PSD envelope for nonstationary acceleration time histories, including launch vehicle data, which may be similar to that shown in the above figure.

A PSD can be derived using rainflow fatigue cycle counting along with a Miners-type relative fatigue damage index.  The enveloping is then justified using a comparison of fatigue damage spectra between the candidate PSD and the measured time history.

The derivation process can be performed in a trial-and-error manner in order to obtain the PSD with the least overall GRMS level which still envelops the flight data in terms of fatigue damage spectra.  The Dirlik method can be used to calculate the fatigue damage spectrum of each candidate PSD in the frequency domain, instead of using the longer, time domain synthesis approach.

Furthermore, this can be done for a number of Q and fatigue exponent permutations for the case where these values are unknown.  This adds conservatism to the final PSD envelope.

Again, the goal is to derive the minimum PSD which envelopes the measured data in terms of fatigue.  The PSD’s duration is selected by the user.  It may or may not be the same as that of the measured data.  The method will scale the PSD to compensate for either a shorter or longer duration.

Statistical uncertainty factors or safety margins can then be added as a separate, post-processing step.

* * *

Here is a C++ program for applying this acceleration PSD derivation method for a user-supplied base input time history.

envelope_fds.cpp

envelope_fds.exe

* * *

Here is a similar C++ program for deriving a force PSD for an applied force time history.

envelope_fds_force.cpp

envelope_fds_force.exe

* * *

Here is a similar C++ program for deriving an acoustic SPL for an acoustic pressure time history.  The  applied and derived pressure fields are assumed to be uniform and fully correlated.

envelope_fds_acoustic.cpp

envelope_fds_acoustic.exe

* * *

Here is a Matlab MEX script set for an acceleration PSD: envelope_fds_matlab_mex.zip

Instructions: Go to the Matlab Command Window.

Type:

>>mex -setup

The C++ source code is compiled with Matlab as:

>>mex rainflow_mex.cpp

Then run the script:

>>envelope_fds

* * *

Here is a corresponding paper:  optimize_psd_fds.pdf

* * *

Rainflow Fatigue Cycle Counting

Fatigue Damage Spectrum, Time Domain

Dirlik Rainflow Counting Method from Response PSD

Here is a previous method which performs fatigue comparison calculations strictly in the time domain for a single PSD candidate.  It does not have automatic optimization capabilities, however.

Enveloping Nonstationary Random Vibration Data

* * *

– Tom Irvine