class reliability.PoF.fracture_mechanics_crack_initiation(P, A, Sy, E, K, n, b, c, sigma_f, epsilon_f, Kt=1.0, q=1.0, mean_stress_correction_method='modified_morrow', print_results=True)

This function uses the material properties, the local cross sectional area, and force applied to the component to determine how many cycles until crack initiation (of a 1mm crack).

Units should always be in MPa (and mm^2 for area). This function may be used for an un-notched or notched component. If the component is un-notched, the parameters q and Kt may be left as their default values of 1.

While there are formulas to find the parameters q and Kt, these formulas have not been included here so that the function is reasonably generic to different materials and geometries. Resources for finding some of these parameters if they are not given to you:

  • q = 1/(1+a/r) Where r is the notch radius of curvature (in mm), and a is 0.025*(2070/Su).

  • Su is the ultimate strength in MPa. This only applies to high strength steels where Su>550MPa.

  • Kt can be calculated using the efatigue website. This website will provide you with the appropriate Kt for your notched geometry.

  • P (float, int) – Force applied on the component [units of MPa].

  • A (float, int) – Cross sectional area of the component (at the point of crack initiation) [units of mm^2].

  • Sy (float, int) – Yield strength of the material [units of MPa].

  • E (float, int) – Elastic modulus (Young’s modulus) [units of MPa]

  • K (float, int) – Strength coefficient of the material

  • n (float, int) – Strain hardening exponent of the material

  • b (float, int) – Elastic strain exponent of the material

  • c (float, int) – Plastic strain exponent of the material

  • sigma_f (float, int) – Fatigue strength coefficient of the material

  • epsilon_f (float, int) – Fatigue strain coefficient of the material

  • q (float, int, optional) – Notch sensitivity factor. Default is 1 for no notch.

  • Kt (float, int, optional) – Stress concentration factor. Default is 1 for no notch.

  • mean_stress_correction_method (str, optional) – Must be either ‘morrow’, ’modified_morrow’, or ‘SWT’. Default is ‘modified_morrow’ as this is the same as the uncorrected Coffin-Manson relationship when mean stress is zero.

  • print_results (bool, optional) – The results will be printed to the console if print_results is True.


  • sigma_max (float) – The maximum stress

  • sigma_min (float) – The minimum stress

  • sigma_mean (float) – The mean stress

  • epsilon_max (float) – The maximum strain

  • epsilon_min (float) – The minimim strain

  • epsilon_mean (float) – The mean strain

  • cycles_to_failure (float) – The number of cycles until failure due to fatigue


Example usage:

from reliability.PoF import fracture_mechanics_crack_initiation
fracture_mechanics_crack_initiation(P=0.15, A=5*80, Kt=2.41, q=0.9857, Sy=690, E=210000, K=1060, n=0.14, b=-0.081, c=-0.65, sigma_f=1160, epsilon_f=1.1,mean_stress_correction_method='SWT')

Results from fracture_mechanics_crack_initiation:
A crack of 1 mm will be formed after: 2919.91 cycles (5839.82 reversals).
Stresses in the component: Min = -506.7291 MPa , Max = 506.7291 MPa , Mean = -5.684341886080802e-14 MPa.
Strains in the component: Min = -0.0075 , Max = 0.0075 , Mean = 8.673617379884035e-19
Mean stress correction method used: SWT