The woehler_fkm_nonlinear module

class pylife.strength.woehler_fkm_nonlinear.WoehlerCurvePRAJ(pandas_obj)[source]

This class represents the type of (component) Wöhler curve that is used in the FKM nonlinear fatigue assessment with damage parameter P_RAJ.

The Wöhler Curve (aka SN-curve) determines after how many load cycles at a certain load amplitude the component is expected to fail.

This Wöhler curve is defined piecewise with two sections for finite and infinite life: The sloped section with slope \(d\) and the horizontal section at the endurance limit (cf. Sec. 2.8.6 of the FKM nonlinear document).

The signal has the following mandatory keys:

  • d_RAJ : The slope of the Wöhler Curve in the finite life section.

  • P_RAJ_Z : The load limit at N = 1

  • P_RAJ_D_0 : The initial load level of the endurance limit

property P_RAJ_D

The fatigue strength for multiple assessment points.

property P_RAJ_Z

The P_RAJ value for N=1.

calc_N(P_RAJ, P_RAJ_D=None)[source]

Evaluate the woehler curve at the given damage paramater value, P_RAJ.

Parameters:
  • P_RAJ (float) – The damage parameter value where to evaluate the woehler curve.

  • P_RAJ_D (float) – (optional) A different fatigue strength limit P_RAJ_D, if not set, the normal fatigue strength limit is used.

Returns:

N – The number of cycles for the given P_RAJ value.

Return type:

float

calc_P_RAJ(N)[source]

Evaluate the woehler curve at the specified number of cycles.

Parameters:

N (array-like) – Number of cycles where to evaluate the woehler curve.

Returns:

The P_RAJ values that correspond to the given N values.

Return type:

array-like

property d

The slope of the Wöhler Curve in the first section

property fatigue_life_limit

The fatigue strength limit N_D of the component, i.e., the number of cycles at the fatigue strength limit.

property fatigue_life_limit_final

The fatigue strength limit N_D of the component, i.e., the number of cycles at the fatigue strength limit, after the FKM algorithm.

property fatigue_strength_limit

The fatigue strength limit of the component.

property fatigue_strength_limit_final

The fatigue strength limit of the component, after the FKM algorithm.

get_woehler_curve_minimum_lifetime()[source]

If this woehler curve is vectorized, i.e., holds values for multiple assessment points at once, get a version of this woehler curve for the assessment point with the minimum lifetime. This function is usually needed after an FKM nonlinear assessment for multiple points (e.g, o whole mesh at once), if the woehler curve should be plotted afterwards. Plotting is only possible for a specific woehler curve of a single point.

If the woehler curve was for a single assessment point before, nothing is changed.

Returns:

woehler_curve_minimum_lifetime – A deep copy of the current woehler curve object, but with scalar values. The resulting values are the minimum of the stored vectorized values.

Return type:

WoehlerCurvePRAJ

update_P_RAJ_D(P_RAJ_D)[source]

This method is used to update the fatigue strength P_RAJ_D, which is stored in this woehler curve.

Parameters:

P_RAJ_D (pandas Series) – The new fatigue strength values that will be set for the woehler curve for multiple assessment points.

class pylife.strength.woehler_fkm_nonlinear.WoehlerCurvePRAM(pandas_obj)[source]

This class represents the type of (component) Wöhler curve that is used in the FKM nonlinear fatigue assessment with damage parameter P_RAM.

The Wöhler Curve (aka SN-curve) determines after how many load cycles at a certain load amplitude the component is expected to fail.

This Wöhler curve is defined piecewise with three sections: Two sections with slopes \(d_1\), \(d_2\) and then a horizontal section at the endurance limit (cf. Sec. 2.5.6 of the FKM nonlinear document).

The signal has the following mandatory keys:

  • d_1 : The slope of the Wöhler Curve in the first section, for N < 1e3

  • d_2 : The slope of the Wöhler Curve in the second section, for N >= 1e3

  • P_RAM_Z : The damage parameter value that separates the first and second section, corresponding to N = 1e3

  • P_RAM_D : The damage parameter value of the endurance limit of the component, computed as P_RAM_D_WS / f_RAM (FKM nonlinear, eq. 2.6-89)

property P_RAM_D

The damage parameter value of the endurance limit

property P_RAM_Z

The damage parameter value that separates the first and second section, corresponding to N = 1e3

calc_N(P_RAM)[source]

Evaluate the woehler curve at the given damage paramater value, P_RAM.

Parameters:

P_RAM (float) – The damage parameter value where to evaluate the woehler curve.

Returns:

N – The number of cycles for the given P_RAM value.

Return type:

float

calc_P_RAM(N)[source]

Evaluate the woehler curve at the specified number of cycles.

Parameters:

N (array-like) – Number of cycles where to evaluate the woehler curve.

Returns:

The P_RAM values that correspond to the given N values.

Return type:

array-like

property d_1

The slope of the Wöhler Curve in the first section, for N < 1e3

property d_2

The slope of the Wöhler Curve in the second section, for N >= 1e3

property fatigue_life_limit

The fatigue life limit N_D of the component, i.e., the number of cycles at the fatigue strength limit P_RAM_D.

property fatigue_strength_limit

The fatigue strength limit of the component, i.e., the P_RAM value below which we have infinite life.

get_woehler_curve_minimum_lifetime()[source]

If this woehler curve is vectorized, i.e., holds values for multiple assessment points at once, get a version of this woehler curve for the assessment point with the minimum lifetime. This function is usually needed after an FKM nonlinear assessment for multiple points (e.g, o whole mesh at once), if the woehler curve should be plotted afterwards. Plotting is only possible for a specific woehler curve of a single point.

If the woehler curve was for a single assessment point before, nothing is changed.

Returns:

woehler_curve_minimum_lifetime – A deep copy of the current woehler curve object, but with scalar values. The resulting values are the minimum of the stored vectorized values.

Return type:

WoehlerCurvePRAJ