Skip to content

Conversation

@ChrisRackauckas-Claude
Copy link
Contributor

Summary

  • Adds DiffEqBaseFlexUnitsExt extension module that enables FlexUnits.jl quantities to work with DiffEqBase's adaptive ODE solvers
  • Mirrors the existing DiffEqBaseUnitfulExt pattern, providing value/unitfulvalue, ODE_DEFAULT_NORM, UNITLESS_ABS2, and _rate_prototype methods for FlexUnits.Quantity types
  • Replaces the temporary workaround documented in FlexUnits.jl
  • Adds downstream test with ODE solve using FlexUnits quantities

Test plan

  • Extension precompiles successfully
  • ODE solve with FlexUnits quantities (ODEProblem + Tsit5 + step!) works
  • SciMLBase.unitfulvalue and SciMLBase.value dispatch correctly for FlexUnits types
  • CI downstream tests pass

🤖 Generated with Claude Code

Add DiffEqBaseFlexUnitsExt extension module that enables FlexUnits.jl
quantities to work with DiffEqBase's adaptive ODE solvers. This mirrors
the existing DiffEqBaseUnitfulExt pattern, providing:

- value/unitfulvalue methods for FlexUnits.Quantity types
- ODE_DEFAULT_NORM for scalar and array Quantity types
- UNITLESS_ABS2 for unit-stripped squared absolute values
- _rate_prototype for computing du/dt prototypes with time units

Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@ChrisRackauckas ChrisRackauckas merged commit 4332e6d into SciML:master Feb 10, 2026
38 of 46 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