Repository navigation
auto_math_trust_regions_and_optimization_4
github-actions[bot] edited this page Nov 14, 2025
·
1 revision
def diagnose_negative_rho(g, B, Delta, f, x):
"""Check common causes of negative rho."""
# Test gradient accuracy
grad_error = check_gradient(f, x, g)
print(f"Gradient error: {grad_error:.2e}")
# Test Hessian conditioning
eigvals = np.linalg.eigvalsh(B)
cond = eigvals.max() / eigvals.min()
print(f"Hessian condition number: {cond:.2e}")
# Suggest fixes
if grad_error > 1e-6:
print("Fix: Improve gradient computation")
if cond > 1e8:
print("Fix: Add regularization: B + lambda*I")
if Delta > 1.0:
print("Fix: Reduce initial Delta_0")