ℹ️ General Information
Component Name: Gerber
Component Location: core/stress_life/damage_params/uniaxial_stress_eq_amp/
Suggested Python Name: calc_stress_eq_amp_gerber
FABER WG Relation: 4.1
Brief Description: Uniaxial equivalent stress amplitude based on Gerber parabola
Priority: 2
Technical Complexity: 2
Estimated Effort: 2
Dependencies: -
Implementation Details
📋 Specification
Using the Gerber mean stress correction, compute the value of equivalent stress amplitude, $\sigma_{aeq}$, in MPa for given stress values $\sigma_a$ and $\sigma_m$ representing a single load cycle.
Mathematical Formulation
$$ \displaystyle\sigma_{aeq}=\frac{\sigma_a}{1-\left(\frac{\sigma_m}{\sigma_{UTS}}\right)^2 } $$
$$ \displaystyle\sigma_{aeq}=\frac{\sigma_a}{1-\left(\frac{\sigma_m}{\sigma_{UTS}}\right)^2 } $$
Inputs
- Static tensile parameters
| Parameter |
Symbol |
Type |
Description |
Units |
Constraints |
| ult_stress |
$\sigma_{UTS}$ |
array of floats |
Ultimate tensile strength |
MPa |
$>0$ |
- Stress / Strain values
| Parameter |
Symbol |
Type |
Description |
Units |
Range |
| stress_amp |
$\sigma_a$ |
array of floats |
stress amplitude |
MPa |
$(0; \infty)$ |
| mean_stress |
$\sigma_m$ |
array of floats |
mean stress |
MPa |
$(-\infty;\infty)$ |
Outputs
| Parameter |
Type |
Description |
Units |
Range |
| $\sigma_{aeq}$ |
array of floats |
Equivalent stress amplitude by Gerber |
- |
$(-\infty;\infty)$ |
Expected Behavior
🔧 Implementation Guidelines
Function Signature
# Suggested function signature
def calc_stress_eq_amp_gerber(
stress_amp: ArrayLike,
mean_stress: ArrayLike,
ult_stress: ArrayLike,
) -> NDArray[np.float64]:
Code Structure
Error Handling
✅ Validation & Testing
Test Cases
| Test Case |
Inputs |
Expected Outputs |
Notes |
| Example 1 |
$\sigma_{UTS} = 700 MPa; \sigma_a = 180 MPa, \sigma_m = 100 MPa$ |
$\sigma_{aeq} = 183.8 MPa$ |
|
Validation Criteria
📚 References & Resources
S. Suresh: Fatigue of Materials, Cambridge University Press, 1998
📝 Technical Notes
Performance Considerations
Edge Cases to Handle
Issue a warning if $\left| \sigma_m \right| > \sigma_{UTS}$
An error handling should be implemented for $\left| \sigma_m \right| = \sigma_{UTS}$
Special Requirements
ℹ️ General Information
Component Name: Gerber
Component Location: core/stress_life/damage_params/uniaxial_stress_eq_amp/
Suggested Python Name:
calc_stress_eq_amp_gerberFABER WG Relation: 4.1
Brief Description: Uniaxial equivalent stress amplitude based on Gerber parabola
Priority: 2
Technical Complexity: 2
Estimated Effort: 2
Dependencies: -
Implementation Details
📋 Specification
Using the Gerber mean stress correction, compute the value of equivalent stress amplitude,$\sigma_{aeq}$ , in MPa for given stress values $\sigma_a$ and $\sigma_m$ representing a single load cycle.
Mathematical Formulation
Inputs
Outputs
Expected Behavior
🔧 Implementation Guidelines
Function Signature
Code Structure
Error Handling
✅ Validation & Testing
Test Cases
Validation Criteria
📚 References & Resources
S. Suresh: Fatigue of Materials, Cambridge University Press, 1998
📝 Technical Notes
Performance Considerations
Edge Cases to Handle
Issue a warning if$\left| \sigma_m \right| > \sigma_{UTS}$ $\left| \sigma_m \right| = \sigma_{UTS}$
An error handling should be implemented for
Special Requirements