Skip to content

Commutator-Free Lie Group integrators - #3806

Open
luke-a-thompson wants to merge 3 commits into
SciML:masterfrom
luke-a-thompson:master
Open

luke-a-thompson wants to merge 3 commits into
SciML:masterfrom
luke-a-thompson:master

Conversation

@luke-a-thompson

@luke-a-thompson luke-a-thompson commented Jun 30, 2026

Copy link
Copy Markdown

Background

Commutator-free Lie group integrators generalize Crouch-Grossman methods and can use fewer exponentials to achieve the same order.

The existing LieRK4() implementation was already the fourth-order commutator-free method from Celledoni, Marthinsen, and Owren, "Commutator-free Lie group methods" for autonomous ODEs. The Lie group integrator context is also discussed in Celledoni, Marthinsen, and Owren, "An introduction to Lie group integrators".

Changes

This PR adds one new commutator-free method and corrects an existing method.

  • Added CFLie3(), the third-order commutator-free scheme of Celledoni, Marthinsen, and Owren, with stage evaluations at the explicit non-autonomous time points.
  • Corrected LieRK4() stage evaluations for non-autonomous problems by using the RK4 abscissae 0, 1/2, 1/2, and 1.
  • Added CFLie4() as the explicit commutator-free name for the corrected fourth-order LieRK4() implementation.
  • Added order tests for state- and time-dependent operators A(u, t).
  • Updated the in-repository documentation and OrdinaryDiffEqLinear README.

The non-autonomous staging follows the standard explicit Runge-Kutta stage times and is consistent with the formulation used by Bazavov, "Commutator-free Lie group methods with minimum storage requirements and reuse of exponentials", section 2.1.

Updates to the published documentation page at https://docs.sciml.ai/DiffEqDocs/stable/solvers/nonautonomous_linear_ode/ may also be required.

Checklist

  • Appropriate tests were added.
  • Code changes were done in a way that does not break public API.
  • In-repository documentation related to the code changes was updated.
  • The new code follows the
    contributor guidelines,
    in particular the SciML Style Guide
    and ColPrac.
  • New documentation only uses public API.

Additional Context

This supports ongoing work to enable homogeneous-space-valued CDE and RODE
integration.

image

Fix LieRK4 stage evaluations to use the RK4 abscissae for nonautonomous operators. Add CFLie3 and CFLie4, with CFLie4 sharing the corrected LieRK4 implementation, and cover the methods with A(u,t) convergence tests.
Fix LieRK4 stage evaluations to use the RK4 abscissae for nonautonomous operators. Add CFLie3 and CFLie4, with CFLie4 sharing the corrected LieRK4 implementation, and cover the methods with A(u,t) convergence tests.
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.

1 participant