pnkraemer / probdiffeq

Probabilistic solvers for differential equations in JAX. Adaptive ODE solvers with calibration, state-space model factorisations, and custom information operators. Compatible with the broader JAX scientific computing ecosystem.
https://pnkraemer.github.io/probdiffeq/
MIT License
30 stars 2 forks source link

Move all content of `probdiffeq.control` to `probdiffeq.adaptive` #745

Closed pnkraemer closed 2 months ago

pnkraemer commented 2 months ago

Context: probdiffeq.control and probdiffeq.adaptive are always used together, yet they currently live in two different modules.

What: This PR moves all content of probdiffeq.control to probdiffeq.adaptive and renames the controller from <old-name> to control_<old-name>. For example, what was previously probdiffeq.control.integral() is now probdiffeq.adaptive.control_integral().

Implications: Two results: (i) the user experience improves because there are fewer modules to import; (ii) the internal code becomes more clear because adaptive and controls were tightly coupled anyway.

This change breaks the current API, so the next version will be v0.4.0. However, we wait with the release because there might be similar PRs coming very soon.