The damage_parameter module#

Calculate FKM nonlinear damage parameters for closed hystereses.

The module evaluates the P_RAM and P_RAJ damage parameters from a collective created by the FKM nonlinear rainflow/HCM workflow. The resulting damage-parameter columns are consumed by pylife.strength.woehler_fkm_nonlinear.WoehlerCurvePRAM and pylife.strength.woehler_fkm_nonlinear.WoehlerCurvePRAJ.

Notes

The implemented formulae follow the FKM nonlinear guideline damage-parameter assessment in chapters 2.6 and 2.9.

class pylife.strength.damage_parameter.P_RAJ(collective, assessment_parameters, component_woehler_curve_P_RAJ)[source]#

Calculate the P_RAJ crack-mechanics damage parameter.

P_RAJ describes the effective cyclic J-integral range used by the FKM nonlinear crack-opening assessment. The algorithm accounts for crack opening and closing history over the HCM runs and updates the finite-life contribution with pylife.strength.woehler_fkm_nonlinear.WoehlerCurvePRAJ.

Parameters:
  • collective (pandas.DataFrame) –

    Hysteresis collective from the FKM nonlinear HCM recorder. Each row represents one hysteresis and must contain:

    • S_a: Stress amplitude in MPa.

    • S_m: Mean stress in MPa.

    • S_min: Minimum stress in MPa.

    • S_max: Maximum stress in MPa.

    • R: Stress ratio S_min / S_max, dimensionless.

    • epsilon_a: Strain amplitude, dimensionless.

    • epsilon_min: Minimum strain, dimensionless.

    • epsilon_max: Maximum strain, dimensionless.

    • epsilon_min_LF: Lower reversal strain of the load-following branch, dimensionless.

    • epsilon_max_LF: Upper reversal strain of the load-following branch, dimensionless.

    • is_closed_hysteresis: Flag indicating a closed hysteresis.

    • run_index: HCM run number, either 1 or 2.

  • assessment_parameters (pandas.Series) – Material and assessment parameters. The series must contain R_m in MPa, E in MPa, n_prime as the cyclic strain-hardening exponent, and K_prime as the cyclic strength coefficient in MPa.

  • component_woehler_curve_P_RAJ (WoehlerCurvePRAJ) – Component Wöhler curve for P_RAJ. It is usually created with the .woehler_P_RAJ accessor from P_RAJ_Z, P_RAJ_D_0, and d_RAJ parameters.

See also

pylife.strength.woehler_fkm_nonlinear.WoehlerCurvePRAJ

Evaluate lifetimes and update fatigue limits from P_RAJ values.

Notes

The FKM nonlinear guideline defines P_RAJ in chapter 2.9 from the effective stress and strain ranges as

\[P_{RAJ} = 1.24\,\frac{\Delta\sigma_\mathrm{eff}^2}{E} + \frac{1.02}{\sqrt{n'}} \Delta\sigma_\mathrm{eff} \left(\Delta\epsilon_\mathrm{eff} - \frac{\Delta\sigma_\mathrm{eff}}{E}\right)\]

The implementation computes crack-opening stress, crack-opening strain, effective ranges, cumulative damage, and the updated fatigue limit for each hysteresis.

property collective#

Return the collective with computed P_RAJ and damage columns.

class pylife.strength.damage_parameter.P_RAM(collective, assessment_parameters)[source]#

Calculate the P_RAM damage parameter for a collective.

P_RAM combines stress amplitude, mean stress, strain amplitude, and the material’s mean-stress sensitivity into one scalar damage parameter per hysteresis. Use it for the elastic-plastic fatigue assessment path that is evaluated with pylife.strength.woehler_fkm_nonlinear.WoehlerCurvePRAM.

Parameters:
  • collective (pandas.DataFrame) –

    Hysteresis collective from the FKM nonlinear HCM recorder. Each row represents one closed hysteresis and must contain:

    • S_a: Stress amplitude in MPa.

    • S_m: Mean stress in MPa.

    • epsilon_a: Strain amplitude, dimensionless.

  • assessment_parameters (pandas.Series) – Material and assessment parameters. The series must contain R_m, the ultimate tensile strength in MPa, and E, Young’s modulus in MPa.

See also

pylife.strength.woehler_fkm_nonlinear.WoehlerCurvePRAM

Evaluate lifetimes from P_RAM values.

Notes

The FKM nonlinear guideline defines P_RAM in chapter 2.6 as

\[P_{RAM} = \sqrt{\left(\sigma_a + k\,\sigma_m\right)\epsilon_a E}\]

for non-negative discriminants and as 0 otherwise. The mean-stress factor k is selected from the material-dependent parameter M_sigma.

property collective#

Return the collective with the computed P_RAM column.