HomeStructural Engineering 101Rainflow Counting Approach
Structural Engineering 101

Rainflow Counting Approach

  SDC Verifier  What is Rainflow Counting

Last updated: 26 Mar 2026

Most fatigue problems in real structures do not come from clean, repeating cycles. They come from irregular operating loads that must be reduced to fatigue-relevant cycles before damage can be calculated.

Real structures — cranes, railway vehicles, offshore equipment, mining conveyors, rotating machinery, wind turbines — experience irregular, variable-amplitude loading. Stress levels fluctuate constantly due to operational conditions, environmental forces, and dynamic effects.

To evaluate fatigue life under these conditions, engineers must first convert a complex stress-time history into discrete fatigue cycles.

This is where the rainflow counting approach is used.

Rainflow counting extracts fatigue cycles from irregular stress histories so they can be used in fatigue life calculations such as S–N fatigue assessment and cumulative damage evaluation using the Palmgren–Miner rule.

Today it is the industry-standard cycle counting method and is widely used across fatigue analysis workflows in offshore, heavy lifting, civil, and mechanical engineering.

Why Variable-Amplitude Fatigue Requires Cycle Counting

Fatigue damage depends primarily on three parameters:

  • stress range
  • mean stress
  • number of load cycles

Under constant-amplitude loading, identifying cycles is straightforward. Each loading event produces the same stress range and the same fatigue damage contribution.

Constant-amplitude fatigue cycle in a load-time history before variable-amplitude rainflow counting

Constant-amplitude loading is easy to count because each cycle has the same amplitude. Real operating loads are usually irregular, which is why rainflow counting is needed.

Real engineering loads are rarely this simple.

Typical examples include:

  • railway bogie frames experiencing random track-induced vibrations
  • crane structures subjected to irregular lifting operations
  • offshore structures exposed to stochastic wave loads
  • wind turbine towers under fluctuating wind conditions

A measured or simulated stress signal therefore looks like a non-periodic, irregular history rather than a clean sinusoidal cycle.

Without processing, such signals cannot be used directly in fatigue calculations.

The goal of cycle counting is to convert a complex stress history into an equivalent set of fatigue cycles. Rainflow counting performs exactly this transformation.

What Is Rainflow Counting?

The rainflow counting method converts a variable stress-time history into a set of fatigue cycles, each characterized by:

  • stress range \(\Delta \sigma\)
  • mean stress \(\sigma_m\)
  • number of occurrences

The method was introduced by Tatsuo Endo and M. Matsuishi in 1968 and later formalized in engineering practice through ASTM E1049, which defines accepted cycle-counting methods used in fatigue analysis.

For a broader overview of code and design-code context, see fatigue standards.

Where the Name Comes From

The name comes from a physical analogy. If a stress-time history is rotated 90° clockwise so that time flows downward, the signal resembles the layered, sloping roofs of a Japanese pagoda.

Rotated stress-time history showing peaks and valleys in the rainflow counting method

In the rainflow analogy, the stress history is rotated so time runs downward. Peaks and valleys form a pagoda-like profile from which fatigue half-cycles are identified.

Imaginary rain droplets flow down these roof edges. Each droplet travels from one peak or valley until it meets a blocking condition. The path each droplet travels defines a fatigue half-cycle.

Pagoda-style rainflow counting diagram showing numbered half-cycle flow paths on a rotated stress-time history

A rotated stress history used in the rainflow analogy. Each numbered blue path represents a half-cycle traced from a peak or valley until it reaches the end of the history, meets an earlier path, or is blocked by a larger opposite excursion.

This analogy matches how smaller cycles are embedded within larger ones. Half-cycles of equal range but opposite direction are then paired into complete cycles.

Preprocessing: Preparing the Stress History

Before the rainflow algorithm is applied, the stress signal is usually preprocessed. Three steps are standard.

Peak–Valley Filtering

The stress signal is reduced to turning points—local maxima and minima. Intermediate data points between a peak and the following valley are removed because they do not influence fatigue damage calculations.

The result is a compact turning-point sequence that preserves all damage-relevant information.

Hysteresis Filtering

After peak–valley filtering, small stress ranges may remain. These micro-cycles usually contribute negligible fatigue damage but inflate cycle counts and computation time.

Hysteresis filtering removes cycles smaller than a defined threshold, set either as a percentage of the maximum stress range or as an absolute stress value. If the gate is set to zero, this step is skipped.

Discretization (Binning)

The stress axis is divided into a finite number of discrete bins. Each turning point is mapped to the center of its nearest bin. This simplification enables consistent counting and produces a manageable output matrix.

In software implementations, 64 bins are commonly used as a practical baseline. More bins improve amplitude resolution but increase computation time and matrix size. For steep S–N curves—common in welded structures—using more bins can materially improve fatigue accuracy.

The Rainflow Counting Algorithm

One common implementation is the four-point algorithm.

The algorithm evaluates four consecutive turning points:

\(A – B – C – D\)

A fatigue cycle exists when the inner range is less than or equal to the outer range:

\(|B – C| \le |A – D|\)

When this condition is satisfied:

  • the segment B–C is counted as one fatigue cycle
  • points B and C are removed from the sequence
  • the algorithm continues with the remaining turning points

This repeats until no additional closed cycles can be extracted.

Residual Half-Cycles

Not all cycles close within a single pass through the history. Remaining turning points that do not form closed cycles are called residual half-cycles.

These arise when the loading history starts or ends at arbitrary stress levels and does not return to its initial state. In fatigue calculations, residual half-cycles are typically:

  • counted as 0.5 cycles each
  • paired with other half-cycles of matching range
  • or re-evaluated when the load history repeats

Worked Mini-Example

Consider four consecutive turning points:

  • \(A = -20\,\mathrm{MPa}\)
  • \(B = +60\,\mathrm{MPa}\)
  • \(C = +10\,\mathrm{MPa}\)
  • \(D = +80\,\mathrm{MPa}\)

For the four-point method:

  • Inner range = \(|B – C| = |60 – 10| = 50\,\mathrm{MPa}\)
  • Outer range = \(|A – D| = |-20 – 80| = 100\,\mathrm{MPa}\)

Since:

|B − C| ≤ |A − D|

or:

\(50\,\mathrm{MPa} \le 100\,\mathrm{MPa}\)

the pair B–C is counted as one fatigue cycle.

The extracted cycle is therefore:

  • From: \(+60\,\mathrm{MPa}\)
  • To: \(+10\,\mathrm{MPa}\)
  • Range: \(50\,\mathrm{MPa}\)
  • Mean stress: \((60 + 10)/2 = 35\,\mathrm{MPa}\)
  • Count: 1 full cycle

After this, points B and C are removed and the algorithm continues with the remaining sequence.

This small example shows the core logic: a smaller inner excursion closes within a larger outer excursion and is counted first.

Rainflow Matrix: Reading the Results

The output of the four-point algorithm is often stored as a From–To rainflow matrix—an \(n \times n\) grid where:

  • rows (From) represent the starting stress level of each cycle
  • columns (To) represent the ending stress level of each cycle
  • cell values represent the number of cycles at each From–To combination

From the matrix, the key cycle parameters are derived:

  • Range = \(|To – From|\)
  • Mean = \((From + To)/2\)

How to Read the Matrix

Damage is not distributed uniformly through the matrix.

  • Upper-right and lower-left corners contain large-range cycles. These are usually the most damaging, even if they occur rarely.
  • The main diagonal contains near-zero-range cycles. These are usually far less damaging, even if they are numerous.
  • Off-diagonal clusters often indicate repeating load events with similar amplitudes.

In many fatigue problems, a small number of large-range cycles contributes most of the total fatigue damage.

Using Rainflow Results in Fatigue Analysis

Rainflow counting is one step in a larger fatigue verification workflow.

  1. Obtain stress-time history from measurement or FEA
  2. Apply rainflow counting to extract cycle ranges, means, and counts
  3. Apply fatigue strength data using material or code-defined S–N curves
  4. Calculate cumulative fatigue damage using the Palmgren–Miner rule

To understand how stress amplitude relates to allowable cycles in practice, see fatigue strength calculations.

The Palmgren–Miner Rule

Each cycle contributes a fraction of total fatigue damage:

\(D = \sum \left(\frac{n_i}{N_i}\right)\)

Where:

  • \(n_i\) is the number of counted cycles at a given stress amplitude
  • \(N_i\) is the number of cycles to failure at that amplitude from the S–N curve

When \(D \ge 1\), fatigue failure is predicted.

Simple Damage Example

Stress amplitude (MPa) Counted cycles (n) Cycles to failure (N) Damage (n/N)
200 5 10,000 0.00050
150 50 50,000 0.00100
100 500 500,000 0.00100
50 10,000 0
Total 0.00250

This component survives the given spectrum. In simple linear-damage terms, the same load block would need to repeat roughly 400 times before reaching the predicted failure criterion.

Comparison with Other Cycle Counting Methods

Rainflow counting is not the only cycle counting method, but it is the most widely used for variable-amplitude loading.

Method Preserves mean stress Handles variable amplitude Counts nested cycles Typical use
Rainflow (four-point) Yes Yes Yes Industry standard
Simple-range counting Partial Yes No Limited use
Level-crossing counting No Partial No Legacy
Peak counting Partial Partial No Legacy
Half-cycle (pagoda roof) Yes Yes Yes Standardized variant

Rainflow counting is generally preferred because alternative methods either fail to preserve mean stress, miss nested inner cycles, or both. The rainflow method identifies closed hysteresis-like loops in a way that aligns well with fatigue damage evaluation.

For constant-amplitude loading, direct S–N assessment is usually sufficient and cycle counting is not required.

 

Advantages of the Rainflow Method

Accurately Represents Variable-Amplitude Loading

The method identifies nested cycles that simpler methods miss, producing more realistic damage estimates under irregular loading.

Preserves Fatigue-Relevant Cycle Information

By retaining both stress range and mean stress for each cycle, rainflow counting supports mean-stress corrections such as Goodman, Gerber, or Morrow where required.

Reduces Data Volume Without Losing the Main Damage Picture

A long stress history with thousands or millions of points can be reduced to a manageable matrix of counted cycles.

Works With Measured or Simulated Data

The method can be applied to histories obtained from strain gauge measurements, FEA post-processing, or multibody dynamics simulations.

Limitations

Sequence Effects Are Not Fully Captured

Rainflow counting does not preserve the exact order in which cycles occur. Load sequence can matter, especially in crack-growth analysis.

Sensitivity to Noise

Improper filtering may generate artificial small cycles from measurement or numerical noise.

Binning Introduces Approximation

If the bin resolution is too coarse, stress amplitudes may shift enough to affect fatigue life estimates.

Damage Still Depends on the Chosen Fatigue Model

Rainflow counting extracts cycles. It does not itself calculate life. The final result still depends on the S–N data, mean-stress correction method, and damage accumulation rule used afterward.

Summary

Rainflow counting is the standard method used to convert irregular stress histories into fatigue cycles.

By extracting stress range, mean stress, and cycle counts from complex loading signals, the method enables engineers to perform fatigue verification using S–N curves and cumulative damage models.

Because real engineering structures rarely experience simple cyclic loading, rainflow counting remains a fundamental tool in modern fatigue analysis and structural durability assessment.

The outputs of the method—the cycle list, rainflow matrix, and residual half-cycles—feed directly into fatigue damage calculations and code-specific fatigue checks.

For engineers applying rainflow counting within an FEA workflow, Rainflow Counting Tool in SDC Verifier explains how filtering, binning, and cycle counting are implemented directly inside the post-processing environment, with results feeding into fatigue verification workflows. You can also continue with Fatigue Life: Key Influencing Factors and What Is Fatigue?  In design-code-based workflows, the counted cycles are often used in checks aligned with Eurocode 3 fatigue and similar fatigue standards.

Frequently Asked Questions

What is rainflow counting used for?

It converts a complex, variable-amplitude stress-time history into a set of discrete fatigue cycles—each with a stress range, mean stress, and count—so that cumulative fatigue damage can be calculated.

What is ASTM E1049?

ASTM E1049 is a standard practice covering cycle-counting methods used in fatigue analysis, including rainflow counting and other established approaches. Its full title is Standard Practices for Cycle Counting in Fatigue Analysis. It covers the rainflow method, the three-point method, the four-point method, level-crossing counting, and peak counting, and is the main reference many fatigue software implementations cite for compliance.

What is a rainflow matrix?

A rainflow matrix is a From–To representation of counted cycles—an \(n \times n\) grid showing how many cycles occurred between each pair of stress levels.

What is the residual in rainflow counting?

It is the set of turning points that do not form closed cycles within a single pass of the history. These are treated as half-cycles or re-evaluated when the history repeats.

How many bins should I use?

Sixty-four bins are commonly used as a practical starting point. For welded structures or steep S–N curves, more bins may be needed to reduce amplitude distortion.

Can rainflow counting be applied to multiaxial loading?

Standard rainflow counting is fundamentally a uniaxial method. For multiaxial loading, engineers usually define an equivalent scalar history or use a critical-plane-based procedure before cycle counting.

What is the difference between the half-cycle and four-point methods?

The four-point method identifies closed cycles from four consecutive turning points and produces a matrix plus residual. The half-cycle method traces half-cycles first and pairs them afterward. Both are used in practice.

Is rainflow counting the same as Miner’s rule?

No. Rainflow counting extracts cycles from the load history. Miner’s rule uses those cycles, together with S–N data, to calculate cumulative fatigue damage.

Join our newsletter

    What would you like to know more about SDC Verifier?
    Loading