The fkm_nonlinear.parameter_calculations
module
- pylife.strength.fkm_nonlinear.parameter_calculations.calculate_component_woehler_parameters_P_RAJ(assessment_parameters_)[source]
Calculate the component woehler curve from the material woehler curve (Sec. 2.8.6 of FKM nonlinear). This involves multiplying the appropriate factors to the points P_RAJ_Z_WS and P_RAJ_D_WS in the material woehler curve to obtain the points P_RAJ_Z and P_RAJ_D in the component Woehler curve.
If assessment_parameters.beta is set, the safety factor gamma_M for the capacity to withstand stresses of the component (de: Beanspruchbarkeit) is computed from the damage index
beta
. Otherwise, it is derived from the failure probability assessment_parameters.P_AThe calculated values will be set in a copy of the input series. The intended use is as follows:
assessment_parameters = calculate_material_woehler_parameters_P_RAJ(assessment_parameters) assessment_parameters = calculate_nonlocal_parameters(assessment_parameters) assessment_parameters = calculate_roughness_parameter(assessment_parameters) assessment_parameters = calculate_failure_probability_factor_P_RAJ(assessment_parameters) assessment_parameters = calculate_component_woehler_parameters_P_RAJ(assessment_parameters)
- Parameters:
assessment_parameters (pandas Series) –
The named material parameters. This Series has to include at least the following values:
gamma_M_RAJ
: The factor for the standard deviation of the capacity to withstand stresses of the component.n_P
: The factor for nonlocal effects, can be computed bycalculate_nonlocal_parameters
.K_RP
: The roughness factor K_R,P.P_RAJ_Z_WS
: The point at N=1 in the material Woehler curve.P_RAJ_D_WS
: The threshold for infinite life in the material Woehler curve.Either the failure probability,
P_A
, or the damage index,beta
.
- Returns:
A copy of
assessment_parameters
with the following additional items set:f_RAJ
: The factor to map between component and material Woehler curves.P_RAJ_Z
: The first point in the component Woehler curve.P_RAJ_D_0
andP_RAJ_D
: The infinite life threshold of the component Woehler curve.
- Return type:
pandas DataFrame
- pylife.strength.fkm_nonlinear.parameter_calculations.calculate_component_woehler_parameters_P_RAM(assessment_parameters_)[source]
Calculate the component woehler curve from the material woehler curve (Sec. 2.5.6 of FKM nonlinear). This involves multiplying the appropriate factors to the point P_RAM_Z_WS in the material woehler curve to obtain the point P_RAM_Z in the component Woehler curve.
If assessment_parameters.beta is set, the safety factor gamma_M for the capacity to withstand stresses of the component (de: Beanspruchbarkeit) is computed from the damage index
beta
. Otherwise, it is derived from the failure probability assessment_parameters.P_AThe calculated values will be set in a copy of the input series. The intended use is as follows:
assessment_parameters = calculate_material_woehler_parameters_P_RAM(assessment_parameters) assessment_parameters = calculate_nonlocal_parameters(assessment_parameters) assessment_parameters = calculate_roughness_parameter(assessment_parameters) assessment_parameters = calculate_failure_probability_factor_P_RAM(assessment_parameters) assessment_parameters = calculate_component_woehler_parameters_P_RAM(assessment_parameters)
- Parameters:
assessment_parameters (pandas Series) –
The named material parameters. This Series has to include at least the following values:
gamma_M_RAM
: The factor for the standard deviation of the capacity to withstand stresses of the component.n_P
: The factor for nonlocal effects, can be computed bycalculate_nonlocal_parameters
.K_RP
: The roughness factor K_R,P.P_RAM_Z_WS
: The point for N=1e3 in the material Woehler curve.P_RAM_D_WS
: The threshold for infinite life in the material Woehler curve.Either the failure probability,
P_A
, or the damage index,beta
.
- Returns:
A copy of
assessment_parameters
with the following additional items set:f_RAM
: The factor to map between component and material Woehler curves.P_RAM_Z
: The “Zeitfestigkeit” point in the component Woehler curve.P_RAM_D
: The “Dauerfestigkeit” point in the component Woehler curve, i.e., the fatigue strength limit, the P_RAM value below which we have infinite life
- Return type:
pandas DataFrame
- pylife.strength.fkm_nonlinear.parameter_calculations.calculate_cyclic_assessment_parameters(assessment_parameters_)[source]
Calculate the values of \(n', K'\), and \(E\), used to describe the cyclic material behavior (Sec. 2.5.3 of FKM nonlinear).
The calculated values will be set in a copy of the input series. The intended use is as follows:
assessment_parameters = calculate_cyclic_assessment_parameters(assessment_parameters)
- Parameters:
assessment_parameters (pandas Series) –
The named material parameters. This Series has to include at least the following values:
MatGroupFKM
: Which material group, one ofSteel
,SteelCast
,Al_wrought
R_m
: The ultimate tensile strength of the material, \(R_m\).
- Returns:
A copy of
assessment_parameters
with the following additional items set:E
: Young’s modulus, constant estimated according to the material groupn_prime
: parameter for the Ramberg-Osgood material lawK_prime
: parameter for the Ramberg-Osgood material law
- Return type:
pandas DataFrame
- pylife.strength.fkm_nonlinear.parameter_calculations.calculate_failure_probability_factor_P_RAJ(assessment_parameters_)[source]
Calculate the factor for the failure probability of the component, i.e., the factor for the standard deviation of the capacity to withstand stresses of the component. This calculation is for use with the P_RAJ damage parameter.
If assessment_parameters.beta is set, the safety factor gamma_M for the capacity to withstand stresses of the component (de: Beanspruchbarkeit) is computed from the damage index
beta
. Otherwise, it is derived from the failure probability assessment_parameters.P_AThe calculated values will be set in a copy of the input series. The intended use is as follows:
assessment_parameters = calculate_failure_probability_factor_P_RAJ(assessment_parameters)
- Parameters:
assessment_parameters (pandas Series) –
The named material parameters. This Series has to include at least the following values:
Either the failure probability,
P_A
, or the damage index,beta
.
- Returns:
A copy of
assessment_parameters
with the following additional items set:gamma_M_RAJ
: The factor for the standard deviation of the capacity to withstand stresses of the component.
- Return type:
pandas DataFrame
- pylife.strength.fkm_nonlinear.parameter_calculations.calculate_failure_probability_factor_P_RAM(assessment_parameters_)[source]
Calculate the factor for the failure probability of the component, i.e., the factor for the standard deviation of the capacity to withstand stresses of the component. This calculation is for use with the P_RAM damage parameter.
If assessment_parameters.beta is set, the safety factor gamma_M for the capacity to withstand stresses of the component (de: Beanspruchbarkeit) is computed from the damage index
beta
. Otherwise, it is derived from the failure probability assessment_parameters.P_AThe calculated values will be set in a copy of the input series. The intended use is as follows:
assessment_parameters = calculate_failure_probability_factor_P_RAM(assessment_parameters)
- Parameters:
assessment_parameters (pandas Series) –
The named material parameters. This Series has to include at least the following values:
Either the failure probability,
P_A
, or the damage index,beta
.
- Returns:
A copy of
assessment_parameters
with the following additional items set:gamma_M_RAM
: The factor for the standard deviation of the capacity to withstand stresses of the component.
- Return type:
pandas DataFrame
- pylife.strength.fkm_nonlinear.parameter_calculations.calculate_material_woehler_parameters_P_RAJ(assessment_parameters_)[source]
Calculate the parameters of the material damage Woehler curve for the P_RAJ damage parameter (Sec. 2.9.4 of FKM nonlinear).
The calculated values will be set in a copy of the input series. The intended use is as follows:
assessment_parameters = calculate_material_woehler_parameters_P_RAJ(assessment_parameters)
- Parameters:
assessment_parameters (pandas Series) –
The named material parameters. This Series has to include at least the following values:
MatGroupFKM
: Which material group, one ofSteel
,SteelCast
,Al_wrought
R_m
: The ultimate tensile strength of the material, \(R_m\).P_A
: The failure probability
- Returns:
A copy of
assessment_parameters
with the following additional items set:P_RAJ_Z_WS
: First sampling point of the material damage Woehler curve for N=1 (not N=1e3 as for P_RAM!)P_RAJ_D_WS
: Damage threshold for infinite life, the “knee” of the material damage Woehler curved_RAJ
: slope of the material damage Woehler curve
- Return type:
pandas DataFrame
- pylife.strength.fkm_nonlinear.parameter_calculations.calculate_material_woehler_parameters_P_RAM(assessment_parameters_)[source]
Calculate the parameters of the material damage Woehler curve for the P_RAM damage parameter (Sec. 2.5.5 of FKM nonlinear).
The calculated values will be set in a copy of the input series. The intended use is as follows:
assessment_parameters = calculate_material_woehler_parameters_P_RAM(assessment_parameters)
- Parameters:
assessment_parameters (pandas Series) –
The named material parameters. This Series has to include at least the following values:
MatGroupFKM
: Which material group, one ofSteel
,SteelCast
,Al_wrought
R_m
: The ultimate tensile strength of the material, \(R_m\).P_A
: The failure probability
- Returns:
A copy of
assessment_parameters
with the following additional items set:P_RAM_Z_WS
: First sampling point (“knee”) of the material damage Woehler curve at N=1e3P_RAM_D_WS
: Damage threshold for infinite life, the second “knee” of the material damage Woehler curved_1
: first slope of the material damage Woehler curved_2
: second slope of the material damage Woehler curve
- Return type:
pandas DataFrame
- pylife.strength.fkm_nonlinear.parameter_calculations.calculate_nonlocal_parameters(assessment_parameters_)[source]
- Calculate the factors for the nonlocal effects on the component lifetime.
(Sec. 2.5.6.1 of FKM nonlinear). This includes the statistic factor and the fracture mechanics factor.
The calculation procedure is the same for P_RAM and P_RAJ damage parameters. For P_RAJ, the equivalent formulas are presented in chapter 2.8.6.1 of FKM nonlinear.
The calculated values will be set in a copy of the input series. The intended use is as follows:
assessment_parameters = calculate_nonlocal_parameters(assessment_parameters)
- Parameters:
assessment_parameters (pandas Series) –
The named material parameters. This Series has to include at least the following values:
MatGroupFKM
: Which material group, one ofSteel
,SteelCast
,Al_wrought
A_ref
: Reference surface area of the highly loaded area, usually set to 500 [mm^2].A_sigma
: Surface area of the highly loaded area of the component (in [mm^2]).R_m
: The ultimate tensile strength of the material, \(R_m\).G
: Relative stress gradient [mm]
- Returns:
A copy of
assessment_parameters
with the following additional items set:n_st
: The statistic factor (de: Statistische Stützzahl)n_bm
: The fracture mechanic factor (de: bruchmechanische Stützzahl)n_P
: The total material factor as the product ofn_st
andn_bm
(de: werkstoffmechanische Stützzahl)
- Return type:
pandas DataFrame
- pylife.strength.fkm_nonlinear.parameter_calculations.calculate_roughness_component_woehler_parameters_P_RAJ(assessment_parameters_, include_n_P)[source]
Calculate the component woehler curve from the material woehler curve (Sec. 2.8.6 of FKM nonlinear), but with the special roughness consideration described in the extension surface layer & roughness. This involves multiplying the appropriate factors to the points P_RAJ_Z_WS and P_RAJ_D_WS_rau in the material woehler curve to obtain the points P_RAJ_Z and P_RAJ_D in the component Woehler curve.
The “appropriate factors” consist of
gamma_M
which relates to the failure probability and optionallyn_P
, which describes the supporting effect of the notch (fracture mechanical number and statistic number). The roughness has already been incorporated during calculate_roughness_material_woehler_parameters_P_RAJ.The calculated values will be set in a copy of the input series. The intended use is as follows:
assessment_parameters = calculate_roughness_parameter(assessment_parameters) assessment_parameters = calculate_roughness_material_woehler_parameters_P_RAJ(assessment_parameters) assessment_parameters = calculate_nonlocal_parameters(assessment_parameters) # include this line if include_n_P is True assessment_parameters = calculate_failure_probability_factor_P_RAJ(assessment_parameters) assessment_parameters = calculate_roughness_component_woehler_parameters_P_RAJ(assessment_parameters, True)
- Parameters:
assessment_parameters (pandas Series) –
The named material parameters. This Series has to include at least the following values:
gamma_M_RAJ
: The factor for the standard deviation of the capacity to withstand stresses of the component.n_P
: The factor for nonlocal effects, can be computed bycalculate_nonlocal_parameters
.This is only needed if
include_n_P
is True.
P_RAJ_Z_WS
: The point at N=1 in the material Woehler curve (note that for P_RAJ it is not N=1e3 as for P_RAM!)P_RAJ_D_WS_rau
: The threshold for infinite life in the material Woehler curve.
include_n_P (bool) – Whether the supporting effect of the notch should be included, i.e., the factor
n_P
should be used.
- Returns:
A copy of
assessment_parameters
with the following additional items set:P_RAJ_Z
: The first point in the component Woehler curve at N=1 (not N=1e3 as for P_RAM!).P_RAJ_D_0
andP_RAJ_D
: The infinite life threshold of the component Woehler curve.
- Return type:
pandas DataFrame
- pylife.strength.fkm_nonlinear.parameter_calculations.calculate_roughness_component_woehler_parameters_P_RAM(assessment_parameters_, include_n_P)[source]
Calculate the component woehler curve from the material woehler curve (Sec. 2.5.6 of FKM nonlinear), but with the special roughness consideration described in the extension surface layer & roughness. This involves multiplying the appropriate factors to the point P_RAM_Z_WS and P_RAM_D_WS_rau in the material woehler curve to obtain the points P_RAM_Z and P_RAM_D in the component Woehler curve.
The “appropriate factors” consist of
gamma_M
which relates to the failure probability and optionallyn_P
, which describes the supporting effect of the notch (fracture mechanical number and statistic number). The roughness has already been incorporated during calculate_roughness_material_woehler_parameters_P_RAM.The calculated values will be set in a copy of the input series. The intended use is as follows:
assessment_parameters = calculate_roughness_parameter(assessment_parameters) assessment_parameters = calculate_roughness_material_woehler_parameters_P_RAM(assessment_parameters) assessment_parameters = calculate_nonlocal_parameters(assessment_parameters) # include this line if include_n_P is True assessment_parameters = calculate_failure_probability_factor_P_RAM(assessment_parameters) assessment_parameters = calculate_roughness_component_woehler_parameters_P_RAM(assessment_parameters, True)
- Parameters:
assessment_parameters (pandas Series) –
The named material parameters. This Series has to include at least the following values:
gamma_M_RAM
: The factor for the standard deviation of the capacity to withstand stresses of the component.n_P
: The factor for nonlocal effects, can be computed bycalculate_nonlocal_parameters
.This is only needed if
include_n_P
is True.
P_RAM_Z_WS
: The point at N=1e3 in the material Woehler curve.P_RAM_D_WS_rau
: The point in the material Woehler curve.
include_n_P (bool) – Whether the supporting effect of the notch should be included, i.e., the factor
n_P
should be used.
- Returns:
A copy of
assessment_parameters
with the following additional items set:P_RAM_Z
: The “Zeitfestigkeit” point in the component Woehler curve.P_RAM_D
: The “Dauerfestigkeit” point in the component Woehler curve, i.e., the fatigue strength limit, the P_RAM value below which we have infinite life
- Return type:
pandas DataFrame
- pylife.strength.fkm_nonlinear.parameter_calculations.calculate_roughness_material_woehler_parameters_P_RAJ(assessment_parameters_)[source]
For FKM nonlinear roughness & surface layer, calculate the additional parameters in the P_RAJ Woehler curve that model the dependency on the roughness. The resulting woehler curve is still the material woehler curve but with roughness effects. The other assessment factors are yet missing.
The calculated values will be set in a copy of the input series. The intended use is as follows:
assessment_parameters = calculate_roughness_material_woehler_parameters_P_RAJ(assessment_parameters) assessment_parameters = calculate_roughness_component_woehler_parameters_P_RAJ(assessment_parameters)
- Parameters:
assessment_parameters (pandas Series) –
The named material parameters. This Series has to include at least the following values:
P_RAJ_Z_WS
: Point at N=1 of the material damage Woehler curve (not N=1e3 as for P_RAM!)P_RAJ_D_WS
: Damage threshold for infinite life, the second “knee” of the material damage Woehler curved_RAJ
: The slope of the material damage Woehler curve without roughness effectK_RP
: The roughness factor K_R,P
- Returns:
A copy of
assessment_parameters
with the following additional items set:P_RAJ_Z_1e3
: The upper “knee” of the material damage Woehler curve at N=1e3.P_RAJ_D_WS_rau
: Damage threshold for infinite life, the lower “knee” of the material damage Woehler curved_RAJ_2_rau
: The second slope of the material damage Woehler curve adjusted by roughness factor K_R,P
- Return type:
pandas DataFrame
- pylife.strength.fkm_nonlinear.parameter_calculations.calculate_roughness_material_woehler_parameters_P_RAM(assessment_parameters_)[source]
For FKM nonlinear roughness & surface layer, calculate the additional parameters in the P_RAM Woehler curve that model the dependency on the roughness. The resulting woehler curve is still the material woehler curve but with roughness effects. The other assessment factors are yet missing.
The calculated values will be set in a copy of the input series. The intended use is as follows:
assessment_parameters = calculate_roughness_material_woehler_parameters_P_RAM(assessment_parameters) assessment_parameters = calculate_roughness_component_woehler_parameters_P_RAM(assessment_parameters)
- Parameters:
assessment_parameters (pandas Series) –
The named material parameters. This Series has to include at least the following values:
P_RAM_Z_WS
: First sampling point (“knee”) of the material damage Woehler curve at N=1e3P_RAM_D_WS
: Damage threshold for infinite life, the second “knee” of the material damage Woehler curved_2
: The second slope of the material damage Woehler curve without roughness effectK_RP
: The roughness factor K_R,P
- Returns:
A copy of
assessment_parameters
with the following additional items set:P_RAM_D_WS_rau
: Damage threshold for infinite life, the lower “knee” of the material damage Woehler curved2_RAM_rau
: second slope of the material damage Woehler curve, adjusted by roughness factor K_R,P
- Return type:
pandas DataFrame
- pylife.strength.fkm_nonlinear.parameter_calculations.calculate_roughness_parameter(assessment_parameters_)[source]
Calculate the roughness factor K_R,P (Sec. 2.5.6.2 of FKM nonlinear).
If the factor assessment_parameters[“K_RP”] is already set, this function does nothing.
The calculation is the same for P_RAM and P_RAJ damage parameters. For P_RAJ, the equivalent formulas are presented in chapter 2.8.6.2 of FKM nonlinear.
The calculated values will be set in a copy of the input series. The intended use is as follows:
assessment_parameters = calculate_roughness_parameter(assessment_parameters)
- Parameters:
assessment_parameters (pandas Series) –
The named material parameters. This Series has to include at least the following values:
MatGroupFKM
: Which material group, one ofSteel
,SteelCast
,Al_wrought
R_m
: The ultimate tensile strength of the material, \(R_m\).R_z
: Only if K_RP is not yet given: The surface roughness of the component, \(R_z\).
- Returns:
A copy of
assessment_parameters
with the following additional items set:K_RP
: The roughness factor K_R,P.
- Return type:
pandas DataFrame
- pylife.strength.fkm_nonlinear.parameter_calculations.compute_beta(P_A)[source]
Calculates the beta parameter (“damage index”), which is an intermediate value for the lifetime assessment factor gamma_M. Note that the FKM nonlinear guideline does not list the formula for beta, they assume that the beta value is known.