7. Numerical Stability¶
This chapter covers NLSQ’s numerical stability features and how to handle ill-conditioned problems.
7.1. Chapter Overview¶
- Numerical Guards (10 min)
NumericalStabilityGuard for detecting and fixing issues.
- SVD Fallback (10 min)
Fallback strategies when standard methods fail.
- Condition Monitoring (5 min)
Tracking condition numbers during optimization.
- Recovery (10 min)
Automatic recovery from optimization failures.
7.2. Stability Features¶
NLSQ includes multiple stability layers:
Input Validation: Check for NaN, inf, invalid shapes
Condition Monitoring: Track Jacobian condition number
SVD Fallback: Switch to stable SVD when needed
Auto-Recovery: Retry with different strategies
from nlsq import fit
# Enable stability features
popt, pcov = fit(
model,
x,
y,
p0=[...],
stability="auto", # Auto-detect issues
fallback=True, # Enable fallbacks
rescale_data=True,
) # Normalize data