Jiang, D., "A Sequence Retainable Iterative Algorithm for Rainflow Cycle Counting," SAE Int. J. Mater. Manf. 7(1):108-114, 2014, doi:10.4271/2013-01-9091.
To get a sequence retainable rainflow cycle counting algorithm for fatigue analysis, an alternate equivalent explanation to rainflow cycle counting is introduced, based on which an iterative rainflow counting algorithm is proposed. The algorithm decomposes any given load-time history with more than one crest into three sub-histories by two troughs; each sub-history with more than one crest is iteratively decomposed into three shorter sub-histories, till each sub-history obtained contains only one single or no crest. Every sub-history that contains a single crest corresponds to a local closed (full) cycle. The mean load and alternate load component of the local cycle are calculated in parallel with the iterative procedure. After a local cycle is counted and its constituent crest and trough are removed from the analyzed load-time history, history reconstruction from remnants of the original load-time history is not needed before successive iterative counting, which is a preferable property different from other rainflow cycle counting algorithms. The algorithm can count local cycles in the analyzed load-time history in their chronological order. The first extracted cycle can also be easily managed to be the major cycle. The disadvantages of the algorithm are that it is not suitable for rigorous real-time applications and it requires larger stack capacity than non-iterative algorithms when applied.