Skip to content

Require the FiniteDiff release that scales the JVP step - #4583

Merged
ChrisRackauckas merged 1 commit into
SciML:masterfrom
singhharsh1708:differentiation-require-finitediff-jvp-fix
Sep 17, 2026
Merged

ChrisRackauckas merged 1 commit into
SciML:masterfrom
singhharsh1708:differentiation-require-finitediff-jvp-fix

Conversation

@singhharsh1708

Copy link
Copy Markdown
Member

OrdinaryDiffEqDifferentiation now requires FiniteDiff 2.33. Below that the finite difference JVP takes an unscaled step, and RadauIIA3 with KrylovJL_GMRES and AutoFiniteDiff stalls until dt falls below floating point epsilon.
That is what the red downgrade-sublibraries (lib/OrdinaryDiffEqFIRK) lane reports on every PR: firk_krylov_tests.jl fails "RadauIIA3 counts matrix-free Jacobian-vector products" at t = 0.1191619.
Reproduced locally at the versions that lane resolves: FiniteDiff 2.31.1 and 2.32.0 fail 97 of 98, 2.33.0 passes 98 of 98, with LinearSolve 5.15.0, Krylov 0.10.10, SciMLBase 3.53.0, SciMLOperators 1.30.0 and ForwardDiff 1.3.3 held at the lane's versions. Holding each of those old while FiniteDiff is current keeps the suite green, so FiniteDiff is the one that matters.
FiniteDiff 2.33.0 carries a single change, JuliaDiff/FiniteDiff.jl#230, which scales the JVP step by norm(x)/norm(v); JVPCache in this package is what calls it.
This touches the same Project.toml version line as #4582, so whichever lands second needs the bump re-derived.
AI Disclosure: Claude assisted with this change.

@ChrisRackauckas
ChrisRackauckas merged commit 9ed6c04 into SciML:master Sep 17, 2026
176 of 188 checks passed
@singhharsh1708
singhharsh1708 deleted the differentiation-require-finitediff-jvp-fix branch September 23, 2026 12:56
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.

2 participants