Skip to content

Neuber Correction 💥

A Python tool that does the heavy lifting for Neuber correction calculations. No more manual iterations or Excel spreadsheets - just plug in your material properties and get accurate stress corrections.

What's the Deal?

When your elastic FEA gives you stresses above the yield strength, those values are unrealistic because they don't account for plastic yielding. Neuber correction fixes that by finding the intersection between the Neuber hyperbola and your material's actual stress-strain curve.

Key Feature: The intersection is calculated regardless of yield strength for numerical stability, ensuring continuous solutions across elastic and plastic regions. Overcorrection around/below yield is flagged but acceptable for FEA analysis.

Quick Start

from neuber_correction import NeuberCorrection, MaterialForNeuberCorrection

# Set up your material (Aluminum 6061-T6 example)
material = MaterialForNeuberCorrection(
    yield_strength=240,      # MPa
    sigma_u=290,    # MPa  
    elastic_mod=68900, # MPa (69 GPa)
    eps_u=0.10     # 10%
)

neuber = NeuberCorrection(material)

# Get your corrected stress
elastic_stress = 500  # MPa
corrected_stress = neuber.correct_stress_values([elastic_stress])[0]
print(f"Elastic: {elastic_stress} MPa → Corrected: {corrected_stress:.1f} MPa")

What You Get

Accurate stress corrections - No more overestimating elastic stresses
Material-specific calculations - Uses Ramberg-Osgood model
Visual analysis - Plot the curves and see what's happening
Batch processing - Handle multiple stress values at once
Robust convergence - Newton-Raphson with fallback methods
Performance optimized - Caching and memoization for repeated calculations
Numerical stability - Continuous solutions across all stress ranges

Perfect For

  • FEA result correction when stresses exceed yield
  • Fatigue analysis with plastic yielding
  • Material testing data analysis
  • Design validation and optimization

Installation

pip install neuber-correction

Or if you're using uv (recommended):

uv add neuber-correction

Limitations

Note: Designed for monotonic loading only. Assumes proportional loading and requires accurate material properties. May overcorrect around/below yield for numerical stability.

Need More?