The miner
module
Implementation of the miner rule for fatigue analysis
Currently, the following implementations are part of this module:
Miner Elementary
Miner Haibach
References
M. Wächter, C. Müller and A. Esderts, “Angewandter Festigkeitsnachweis nach {FKM}-Richtlinie” Springer Fachmedien Wiesbaden 2017, https://doi.org/10.1007/978-3-658-17459-0
Haibach, “Betriebsfestigkeit”, Springer-Verlag 2006, https://doi.org/10.1007/3-540-29364-7
- class pylife.strength.miner.MinerBase(pandas_obj)[source]
Basic functions related to miner-rule (original).
Uses the constructor of
WoehlerCurve
.- effective_damage_sum(collective)[source]
Compute effective damage sum D_m.
Refers to the formula given in Waechter2017, p. 99
- Parameters:
collective (a load collective) – the multiple of the lifetime
- Returns:
effective_damage_sum – The effective damage sums for the collective
- Return type:
float or
pandas.Series
- finite_life_factor(N)[source]
Calculate finite life factor according to Waechter2017 (p. 96).
- Parameters:
N (float) – Collective range (sum of cycle numbers) of load collective
- gassner_cycles(collective)[source]
Compute the cycles of the Gassner line for a certain load collective.
- Parameters:
collective (
LoadCollective
or similar) – The load collective- Returns:
The cycles for the collective
- Return type:
cycles
Note
The absolute load levels of the collective are important.
- abstract lifetime_multiple(collective)[source]
Compute the lifetime multiple according to the corresponding Miner rule.
Needs to be implemented in the class implementing the Miner rule.
- Parameters:
collective (
LoadCollective
or similar) – The load collective- Returns:
lifetime_multiple – lifetime multiple
- Return type:
float > 0
- class pylife.strength.miner.MinerElementary(pandas_obj)[source]
Implementation of Miner Elementary according to Waechter2017.
- gassner(collective)[source]
Calculate the Gaßner shift according to Miner Elementary.
- Parameters:
collective (
LoadCollective
or similar) – The load collective- Returns:
gassner – The Gaßner shifted fatigue strength object.
- Return type:
Fatigue
- lifetime_multiple(collective)[source]
Compute the lifetime multiple according to Miner Elementary.
Described in Waechter2017 as “Lebensdauervielfaches, A_ele”.
- Parameters:
collective (
LoadCollective
or similar) – The load collective- Returns:
lifetime_multiple – lifetime multiple
- Return type:
float > 0
- class pylife.strength.miner.MinerHaibach(pandas_obj)[source]
Miner-modified according to Haibach (2006).
Warning
Contrary to Miner Elementary, the lifetime multiple is not constant but dependent on the evaluated load level! That is why there is no method for the Gaßner shift.
- lifetime_multiple(collective)[source]
Compute the lifetime multiple for Miner-modified according to Haibach.
Refer to Haibach (2006), p. 291 (3.21-61). The lifetime multiple can be expressed in respect to the maximum amplitude so that N_lifetime = N_Smax * A
- Parameters:
collective (
LoadCollective
or similar) – The load collective- Returns:
lifetime_multiple – lifetime multiple return value is ‘inf’ if maximum collective amplitude < SD
- Return type:
float > 0