Introduction to stress_life
Package stress_life contains methods for damage calculations via stress life fatigue concept. Everything needed is accessible from class SN_Curve of the module SN_curve.
SN curve definition
- It is possible to set two slopes of SN curve (low cycle fatique and high cycle fatigue).
- Two types for meanstress sensitivity handling are implemented (see chapter below).
- You can choose the behaviour of the SN curve after reaching the endurance limit.
-
There are various methods for modifiing the SN curve (shifting, shifting on endurance limit, changing the endurance limit number of cycles, transformation to different R-ratio ...)
Meanstress influence
1) FMK meanstress influence
- FKM-Guideline specifies various mean stress sensitivity factors depending on the R-ratio of the cycle.
- Four different regimes are distinguished.
2) Goodman meanstress influence
- distinguishes between only two sectios.
- For R > 1 (complete compressive cycle) there is no meanstress influence (same as FKM section I).
- Otherwise constant meanstress factor M is considered.
Simplest usage
- Always start with SN curve definition. You can call some modification methods on that SN curve.
- Define a load as numpy array.
- Call some SN_Curve method "compute_D_*(load, ...)" to get the result as pandas DataFrame
import numpy as np
import pandas as pd
from stress_life import SN_curve
# create SN curve
sn = SN_curve.SN_Curve(SD=250, S1=500, k1=9, k=5, ND=2e6, M=0.22, R=0.4, meanCorrType="goodman", miner="haibach")
# create load (e.g. min and max load, number of cycles, shift factor)
load = np.array([[-800, 400, 1, 1.7],
[-800, 200, 1, 1.0],
[-800, 1000, 1, 0.7]])
# get the Damage in DataFrame object
res = sn.compute_D_l1_l2(load)
# returns
# lower_load upper_load mean amp R amp_R=-1 amp_R=R_SN req_cycles shift_factor D
#0 -800.0 400.0 -200.0 600.0 -2.0 556.0 367.400881 1.0 1.7 1.348129e-07
#1 -800.0 200.0 -300.0 500.0 -4.0 434.0 286.784141 1.0 1.0 9.932204e-07
#2 -800.0 1000.0 100.0 900.0 -0.8 922.0 609.251101 1.0 0.7 2.347872e-03