Palmgren-miner damage model

Palmgren-Miner damage model is one of the famous fatigue damage models for fatigue estimation. The model is defined in a simple and intuitive way and it is very popular now.

Reference: Miner, M.A., 1945. Cumulative damage in fatigue.

ffpack.fdm.minerModel.minerDamageModelClassic(lccData, snData, fatigueLimit)

Classical Palmgren-miner damage model calculates the damage results based on the SN curve.

Parameters
  • lccData (2d array) – Load cycle counting results in a 2D matrix, e.g., [ [ value, count ], … ]

  • snData (2d array) – Experimental SN data in 2D matrix, e.g., [ [ N1, S1 ], [ N2, S2 ], …, [ Ni, Si ] ]

  • fatigueLimit (scalar) – Fatigue limit indicating the minimum S that can cause fatigue.

Returns

rst – Fatigue damage calculated based on the Palmgren-miner model.

Return type

scalar

Raises

ValueError – If the lccData dimension is not 2. If the lccData length is less than 1.

Examples

>>> from ffpack.fdr import minerDamageModelClassic
>>> lccData = [ [ 1, 100 ], [ 2, 10 ] ]
>>> snData = [ [ 10, 3 ], [ 1000, 1 ] ]
>>> fatigueLimit = 0.5
>>> rst = minerDamageModelClassic( lccData, snData, fatigueLimit )
ffpack.fdm.minerModel.minerDamageModelNaive(fatigueData)

Naive Palmgren-miner damage model directly calcuates the damage results.

Parameters

fatigueData (2d array) – Paired counting and experimental data under each load condition, e.g., [ [ C1, F1 ], [ C2, F2 ], …, [ Ci, Fi ] ] where Ci and Fi represent the counting cycles and failure cycles under the same load condition.

Returns

rst – Fatigue damage calculated based on the Palmgren-miner model

Return type

scalar

Raises

ValueError – If fatigueData length is less than 1. If counting cycles is less than 0. If number of failure cycles is less than or equal 0. If number of counting cycles is large than failure cycles.

Examples

>>> from ffpack.fdm import minerDamageModelNaive
>>> fatigueData = [ [ 10, 100 ], [ 200, 2000 ] ]
>>> rst = minerDamageModelNaive( fatigueData )