Skip to content

fix: DynamicQuantities compatibility in core + differentiation paths#3126

Open
MilesCranmerBot wants to merge 6 commits intoSciML:masterfrom
MilesCranmerBot:wave2-odecore
Open

fix: DynamicQuantities compatibility in core + differentiation paths#3126
MilesCranmerBot wants to merge 6 commits intoSciML:masterfrom
MilesCranmerBot:wave2-odecore

Conversation

@MilesCranmerBot
Copy link
Copy Markdown

Wave 2 (post-DynamicQuantities release) for the DynamicQuantities × SciML rollout.
Tracking issue: JuliaPhysics/DynamicQuantities.jl#200

What this changes

OrdinaryDiffEqCore

  • Adds DynamicQuantities + Measurements integration test (lib/OrdinaryDiffEqCore/test/dynamicquantities_measurements.jl)
  • Uses a unitless bottom-eltype path in solver init to avoid zero(::Type{<:Quantity}) on runtime-unit quantity types
  • Includes related unit-safe initialization/caching updates used by this path

OrdinaryDiffEqDifferentiation

  • Makes unitful Jacobian derivative utilities robust for DynamicQuantities value-space factorization/solve
  • Removes silent AD backend fallback behavior

Notes

Local testing

  • julia --project=lib/OrdinaryDiffEqCore -e 'using Pkg; Pkg.test()'
    • current failure before DQ tag: test uses registered DynamicQuantities lacking required runtime-unit fixes (zero(::Type{<:Quantity}) path).

Comment thread lib/OrdinaryDiffEqCore/src/caches/basic_caches.jl Outdated
@ChrisRackauckas
Copy link
Copy Markdown
Member

Rebase and add the lower bound

@MilesCranmer
Copy link
Copy Markdown

@MilesCranmerBot please see comment above^ - can you rebase and add lower bound

@MilesCranmerBot
Copy link
Copy Markdown
Author

Done — rebased onto current master and added a lower bound for DynamicQuantities.

  • Rebased branch: wave2-odecore
  • Lower bound change: DynamicQuantities = "1.8" in lib/OrdinaryDiffEqCore/Project.toml
  • Commit: ffed533

I also ran Pkg.test() for OrdinaryDiffEqCore; it currently errors in the new DynamicQuantities+Measurements test due to eps(::DynamicQuantities.Quantity) during init dt.

@ChrisRackauckas
Copy link
Copy Markdown
Member

There are some CI failures to look at.

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