The meanstress module

Meanstress routines

Mean stress transformation methods

  • FKM Goodman
  • Five Segment Correction
class pylife.strength.meanstress.FKMGoodman(pandas_obj)[source]
pylife.strength.meanstress.FKM_goodman(Sa, Sm, M, M2, R_goal)[source]

Performs a mean stress transformation to R_goal according to the FKM-Goodman model

Parameters:
  • Sa – the stress amplitude
  • Sm – the mean stress
  • M – the mean stress sensitivity between R=-inf and R=0
  • M2 – the mean stress sensitivity beyond R=0
  • R_goal – the R-value to transform to
Returns:

the transformed stress range

class pylife.strength.meanstress.FiveSegment(pandas_obj)[source]
class pylife.strength.meanstress.MeanstressHist(df)[source]
FKM_goodman(haigh, R_goal)[source]
five_segment(haigh, R_goal)[source]
class pylife.strength.meanstress.MeanstressMesh(pandas_obj)[source]
FKM_goodman(haigh, R_goal)[source]
five_segment(haigh, R_goal)[source]
pylife.strength.meanstress.experimental_mean_stress_sensitivity(sn_curve_R0, sn_curve_Rn1, N_c=inf)[source]

Estimate the mean stress sensitivity from two FiniteLifeCurve objects for the same amount of cycles N_c.

The formula for calculation is taken from: “Betriebsfestigkeit”, Haibach, 3. Auflage 2006

Formula (2.1-24):

\[M_{\sigma} = {S_a}^{R=-1}(N_c) / {S_a}^{R=0}(N_c) - 1\]

Alternatively the mean stress sensitivity is calculated based on both SD_50 values (if N_c is not given).

Parameters:
  • sn_curve_R0 (pylife.strength.sn_curve.FiniteLifeCurve) – Instance of FiniteLifeCurve for R == 0
  • sn_curve_Rn1 (pylife.strength.sn_curve.FiniteLifeCurve) – Instance of FiniteLifeCurve for R == -1
  • N_c (float, (default=np.inf)) – Amount of cycles where the amplitudes should be compared. If N_c is higher than a fatigue transition point (ND_50) for the SN-Curves, SD_50 is taken. If N_c is None, SD_50 values are taken as stress amplitudes instead.
Returns:

Mean stress sensitivity M_sigma

Return type:

float

Raises:

ValueError – If the resulting M_sigma doesn’t lie in the range from 0 to 1 a ValueError is raised, as this value would suggest higher strength with additional loads.

pylife.strength.meanstress.five_segment_correction(Sa, Sm, M0, M1, M2, M3, M4, R12, R23, R_goal)[source]
Performs a mean stress transformation to R_goal according to the
Five Segment Mean Stress Correction
Parameters:
  • Sa – the stress amplitude
  • Sm – the mean stress
  • Rgoal – the R-value to transform to
  • M – the mean stress sensitivity between R=-inf and R=0
  • M1 – the mean stress sensitivity between R=0 and R=R12
  • M2 – the mean stress sensitivity betwenn R=R12 and R=R23
  • M3 – the mean stress sensitivity between R=R23 and R=1
  • M4 – the mean stress sensitivity beyond R=1
  • R12 – R-value between M1 and M2
  • R23 – R-value between M2 and M3
Returns:

the transformed stress range