Random Fatigue and cycle counting

Fatigue is the most common failure mode of mechanical components. Any structure subjected to repetitive loading may fail due to fatigue. Today, there are well established numerical method to calculate fatigue life based on damage accumulation.

Main steps of Fatigue Life calculation:

The first input of a fatigue analysis is fluctuating stress response from a previous analysis (FEA most of the time). From that point, it is possible to count the number of cycles per stress amplitude level and mean stress respectively (named commonly Rainflow Matrix). Using this information, we can correct the stress amplitude to take into account the effect of the mean stress on the fatigue life, and above all, accumulate the damage from the different cycles using the material data (SN or EN curve) to get the final the life of the part. The process can be summarized like the chart below:

Fatigue loading:

The nature of the loading causing the fluctuating stress depends on the source where excitation comes from. It can be:

Fatigue analysis in the Time Domain:

When the cyclic loading is simple enough like constant amplitude (simple sine wave for example), the use of Time domain fatigue analysis is obvious. In general, when the loading is deterministic, the fatigue analysis can always be done in the Time domain. The computation cost may increase drastically in case of long variable amplitude loading.

When applied to time domain, the fatigue analysis process looks like below:

Basically, the fluctuating stress here is the Stress Time History from a pseudo static (Static analysis + time dependent scale factors) or a transient FEA analysis. Also, the Rainflow technic is used to count the cycles in the stress time history. Rest the of the process remains unchanged.

Fatigue analysis in the Frequency Domain:

When the variable amplitude loadings are too long and complex, or simply if it is completely a random process, we can transform them into Power Spectral Density (PSD) and perform the fatigue analysis in the Frequency Domain (Random fatigue). This will require an intermediate Random response analysis to get the PSD stress response (see KB0117481 or the online documentation for further details on Random Response analysis).

When applied to frequency domain for PSD, the fatigue analysis process looks like below:

The fluctuating stress is represented by the PSD Stress response. To count the cycles here, we use the PSD moments obtained from PSD Stress response and the probability of getting a certain stress range obtained from the Probability Density Function (PDF). Rest the of the process remains unchanged.

Cycle counting analogy:

As we can see from the damage computation process above, one of the most important step is the counting of stress range cycles. As we are mostly familiar with time series, let’s see how analogous the cycle counting in random fatigue (frequency domain) is with respect to the “equivalent” time domain signal represented by the PSD stresses. As a reminder, a PSD is a representation of the signal’s power distribution over a spectrum of frequency.

A convenient way to know the characteristics of a time domain signal is to determine some typical statistical properties, also known as statistical moments, which tell us about the distribution of the signal.

Given a random process, the spectral moments (PSD moments) are used to measure the statistical properties.

The commonly used moments are:

In random fatigue analysis, number of peaks or number of zero crossing are commonly used for the cycle counting:

The number of peaks per second is defined as:       

The number of zero crossing per second is defined as:   

Using the exposure time , we can deduce the total number of cycles from  or :

Finally, we can calculate the number of cycles for any given stress range using one of the well known Probability Density Fucntion (PDF). The PDF typically defines the probability distribution of the Stress range.

Both HyperLife™, SimSolid™ and OptiStruct™ proposes the the following PDF:


With    ; ; ;

; ;  (irregularity factor); ; S = Stress range


Narrow band:

Steinberg’s THREE band methods (directly provides the probabilities).

The probability is multiplied by the total number of cycles to get the number of cycles for a given stress range Si:

We can then build the cycle counting matrix (number of cycles vs stress range) used in the damage calculation:

The final step of the process consists of calculating the damage using the Material curve (i.e. SN curve) and accumulate the damage using Miner’s rule. The total Life will be calculated as the reciprocal of the total damage. Please refer to our documentation for further details on damage calculation.