-
Notifications
You must be signed in to change notification settings - Fork 7
Description
ℹ️ 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,
Mathematical Formulation
$$ \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 | array of floats | Ultimate tensile strength | MPa |
- Stress / Strain values
| Parameter | Symbol | Type | Description | Units | Range |
|---|---|---|---|---|---|
| stress_amp | array of floats | stress amplitude | MPa | ||
| mean_stress | array of floats | mean stress | MPa |
Outputs
| Parameter | Type | Description | Units | Range |
|---|---|---|---|---|
| array of floats | Equivalent stress amplitude by Gerber | - |
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 |
Validation Criteria
- Mathematical accuracy verified against literature
- Edge cases handled appropriately
- Output format matches specification
📚 References & Resources
S. Suresh: Fatigue of Materials, Cambridge University Press, 1998
📝 Technical Notes
Performance Considerations
Edge Cases to Handle
Issue a warning if
An error handling should be implemented for