Skip to content

Conversation

@drreynolds
Copy link
Collaborator

@drreynolds drreynolds commented Jan 17, 2026

This PR standardizes ARKODE calls to the user-supplied right-hand-side functions so that wherever possible, these RHS calls are provided the user-supplied solution vector that was passed to ARKodeEvolve.

The notable exceptions to this rule are:

  1. the Hermite temporal interpolation module,
  2. the provided preconditioners ARKBANDPRE and ARKBBDPRE,
  3. banded or dense linear solvers with automatically-approximated Jacobian matrices,
  4. iterative linear solvers with automatically-approximated Jacobian-times-vector products,
  5. temporal root-finding,
  6. discrete adjoint modules in ARKStep or ERKStep,
  7. the SPRKStep stepper, and
  8. LSRKStep's use of the automated dominant eigenvalue estimation module.

However, for most ARKODE integrators is it now possible for users to consistently receive back their own state vector for RHS calls, allowing them to leverage auxiliary data stored therein (e.g., derived quantities or MPI communication buffers).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants