Skip to content

Conversation

@ChrisRackauckas-Claude
Copy link
Contributor

Summary

This is a rebased version of #738 by @termi-official, which implements the Eisenstat-Walker Newton-Krylov solver.

Changes:

  • Adds EisenstatWalkerForcing2 algorithm implementing Algorithm 2 from Eisenstat & Walker (1996) for adaptive forcing term selection in Newton-Krylov methods
  • Adds forcing verbosity option for Newton-Krylov forcing parameter logging
  • Extends update_tolerances! for LinearSolveJLCache
  • Adds tests for the new solver

Original PR: #738

Rebased onto master to resolve conflicts with the new @verbosity_specifier macro-based verbosity system.

Test plan

  • CI passes
  • Verify Eisenstat-Walker solver works correctly on standard test problems

🤖 Generated with Claude Code

ChrisRackauckas and others added 3 commits December 18, 2025 22:43
- Add Eisenstat & Walker (1996) reference to refs.bib
- Add forcing parameter to General Keyword Arguments section
- Add new Forcing Term Strategies section with EisenstatWalkerForcing2 docs
- Update NewtonRaphson docstring with detailed keyword argument descriptions
- Add mention of Newton-Krylov support in solver recommendations

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@ChrisRackauckas ChrisRackauckas merged commit 3b7864e into SciML:master Dec 19, 2025
101 of 134 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants