The FKMNonlinearRecorder class#
- class pylife.stress.rainflow.recorders.FKMNonlinearRecorder[source]#
Record loops for the FKM nonlinear assessment workflow.
The recorder stores minimum and maximum load, stress, and strain values reported by
FKMNonlinearDetectortogether with flags that distinguish closed hystereses from Memory 3 entries of the FKM nonlinear procedure.- property R#
Return stress ratios
Rof recorded hystereses.- Returns:
Stress ratio
R = S_min / S_max, dimensionless.- Return type:
Notes
For Memory 3 hystereses the FKM nonlinear guideline defines
R = -1. Those rows are indicated byis_zero_mean_stress_and_strain.
- property S_a#
Return stress amplitudes of recorded hystereses.
- Returns:
Stress amplitude in MPa.
- Return type:
- property S_m#
Return mean stresses of recorded hystereses.
- Returns:
Mean stress in MPa.
- Return type:
Notes
Mean stress is usually
(S_min + S_max) / 2. For Memory 3 hystereses the FKM nonlinear guideline definesS_m = 0; those rows are indicated byis_zero_mean_stress_and_strain.
- property S_max#
Return the maximum stresses of recorded hystereses.
- Returns:
Maximum stress values in MPa.
- Return type:
- property S_min#
Return the minimum stresses of recorded hystereses.
- Returns:
Minimum stress values in MPa.
- Return type:
- property collective#
Return the FKM nonlinear collective as a DataFrame.
The load values are given in the columns
loads_min, andloads_maxfor consistency with other recoders. Stress and strain values for the hystereses are given in the columnsS_min,S_max, andepsilon_min,epsilon_max, respectively. The columnis_closed_hysteresisindicates whether the row corresponds to a closed hysteresis or was recorded as a memory 3 hysteresis, which counts only half the damage in the FKM nonlinear procedure. The columnsepsilon_min_LFandepsilon_max_LFdescribe the minimum and maximum seen value of epsilon in the entire load history, up to the current hysteresis. These values may be lower (min) or higher (max) than the min/max values of the previously recorded hysteresis as they also take into account parts of the stress-strain diagram curve that are not part of hystereses.The resulting DataFrame will have a MultiIndex with levels “hysteresis_index” and “assessment_point_index”, both counting from 0 upwards. The nodes of a mesh are, thus, mapped to the index sequence 0,1,…, even if the node_id starts, e.g., with 1.
- Returns:
Recorded FKM nonlinear collective with load, stress, strain, and status columns.
- Return type:
- property epsilon_a#
Return strain amplitudes of recorded hystereses.
- Returns:
Strain amplitude, dimensionless.
- Return type:
- property epsilon_m#
Return mean strains of recorded hystereses.
- Returns:
Mean strain, dimensionless.
- Return type:
Notes
Mean strain is usually
(epsilon_min + epsilon_max) / 2. For Memory 3 hystereses the FKM nonlinear guideline definesepsilon_m = 0; those rows are indicated byis_zero_mean_stress_and_strain.
- property epsilon_max#
Return the maximum strains of recorded hystereses.
- Returns:
Maximum strain values, dimensionless.
- Return type:
- property epsilon_max_LF#
Return the maximum lifetime-history strain values.
- Returns:
Maximum strain values seen in the load history up to each hysteresis, dimensionless.
- Return type:
- property epsilon_min#
Return the minimum strains of recorded hystereses.
- Returns:
Minimum strain values, dimensionless.
- Return type:
- property epsilon_min_LF#
Return the minimum lifetime-history strain values.
- Returns:
Minimum strain values seen in the load history up to each hysteresis, dimensionless.
- Return type:
- property is_closed_hysteresis#
Return whether each row is a closed hysteresis.
- Returns:
Truefor closed hystereses andFalsefor Memory 3 entries, which count only half damage in the FKM nonlinear procedure.- Return type:
list of bool or numpy.ndarray
- property is_zero_mean_stress_and_strain#
Return flags for FKM Memory 3 zero mean values.
- Returns:
Truefor hystereses where the FKM nonlinear procedure defines mean stress and mean strain as zero.- Return type:
list of bool or numpy.ndarray
- property loads_max#
Return the maximum load values of recorded hystereses.
- Returns:
Maximum load values, typically in MPa or the unit of the input load history.
- Return type:
- property loads_min#
Return the minimum load values of recorded hystereses.
- Returns:
Minimum load values, typically in MPa or the unit of the input load history.
- Return type:
- record_values_fkm_nonlinear(results_min, results_max, is_closed_hysteresis, is_zero_mean_stress_and_strain, run_index)[source]#
Record FKM nonlinear loop results.
- Parameters:
results_min (pandas.DataFrame) – Minimum-side results with columns
loads_min,S_min,epsilon_min, andepsilon_min_LF.results_max (pandas.DataFrame) – Maximum-side results with columns
loads_max,S_max,epsilon_max, andepsilon_max_LF.is_closed_hysteresis (list of bool) – Flags indicating closed hystereses.
is_zero_mean_stress_and_strain (list of bool) – Flags indicating Memory 3 hystereses with zero mean stress and strain according to the FKM nonlinear procedure.
run_index (int) – Index of the detector run that produced the results.