Theseus.jl

Theseus.jl provides implicit and implicit-explicit (IMEX) time integration methods that use Ariadne.jl's Newton–Krylov solver internally. All methods implement the DifferentialEquations.jl integrator interface and can be used with ODEProblem (and SplitODEProblem for IMEX).

Nonlinear Implicit Methods

These single-step methods solve one nonlinear system per stage via Newton–Krylov. They accept an ODEProblem and the keyword argument dt (fixed time step).

Theseus.ImplicitEulerType
ImplicitEuler()

The backward (implicit) Euler method: a first-order, single-stage, A-stable, and L-stable nonlinear implicit Runge-Kutta method.

The stage equation is

\[u^{n+1} = u^n + \Delta t \, f(u^{n+1},\, t^{n+1}).\]

Each time step requires solving one nonlinear system via Newton-Krylov.

source
Theseus.ImplicitMidpointType
ImplicitMidpoint()

The implicit midpoint method: a second-order, single-stage, A-stable nonlinear implicit Runge-Kutta method.

The stage equation evaluates $f$ at the midpoint $(u^n + u^{n+1})/2$:

\[u^{n+1} = u^n + \Delta t \, f\!\left(\frac{u^n + u^{n+1}}{2},\; t + \frac{\Delta t}{2}\right).\]

Each time step requires solving one nonlinear system via Newton-Krylov.

source
Theseus.ImplicitTrapezoidType
ImplicitTrapezoid()

The implicit trapezoidal rule (Crank–Nicolson): a second-order, single-stage, A-stable (but not L-stable) nonlinear implicit method.

The update averages the RHS at both endpoints:

\[u^{n+1} = u^n + \frac{\Delta t}{2}\left[f(u^n, t) + f(u^{n+1}, t + \Delta t)\right].\]

Each time step requires solving one nonlinear system via Newton-Krylov.

source
Theseus.TRBDF2Type
TRBDF2

TR-BDF2 based solver after [1]. Using the formula given in [2] eq (1). See [3] for how it relates to implicit RK methods

source

Diagonally Implicit Runge–Kutta (DIRK) Methods

DIRK methods use a lower-triangular Butcher tableau. Each implicit stage requires one Newton–Krylov solve. They accept an ODEProblem.

Theseus.LobattoIIIA2Type
LobattoIIIA2()

A second-order, two-stage, A-stable DIRK method from the general class of Lobatto IIIA methods.

References

See Table (213) on p. 69 for the Butcher tableau.

  • Christopher A. Kennedy and Mark H. Carpenter (2016) Diagonally Implicit Runge–Kutta Methods for Ordinary Differential Equations: A Review. NASA Technical Memorandum NASA/TM-2016-219173, Langley Research Center, Hampton, VA, United States.
source
Theseus.Crouzeix32Type
Crouzeix32()

A third-order, two-stage, A- and L-stable diagonally implicit Runge-Kutta (DIRK) method developed by Nørsett (1974) and Crouzeix (1975). The nodes and weights are the ones of the two-point Gauss–Legendre quadrature. Thus, this method has order four when applied to quadrature problems.

References

See Table 7.2 on p. 207 for the Butcher tableau.

  • Ernst Hairer, Syvert P. Nørsett, and Gerhard Wanner (1993) Solving Ordinary Differential Equations I: Nonstiff Problems. Springer Series in Computational Mathematics, 2nd edition. DOI: 10.1007/978-3-540-78862-1
source
Theseus.DIRK43Type
DIRK43()

A fourth-order, three-stage, A-stable DIRK method.

References

  • D. Fränken and Karlheinz Ochs (2003) Passive Runge–Kutta Methods—Properties, Parametric Representation, and Order Conditions. BIT Numerical Mathematics 43(2):339–361. DOI: 10.1023/A:1026039820006
source

Implicit–Explicit (IMEX) Runge–Kutta Methods

IMEX methods split the right-hand side into a stiff part $f_1$ and a non-stiff part $f_2$. They accept a SplitODEProblem(f1!, f2!, u0, tspan).

Type I methods (Pareschi–Russo)

Theseus.SP111Type
SP111()

The symplectic Euler method, a first-order, one-stage type I IMEX method combining an explicit and an implicit Euler method.

References

  • Sebastiano Boscarino and Giovanni Russo (2024) Asymptotic preserving methods for quasilinear hyperbolic systems with stiff relaxation: a review. DOI: 10.1007/s40324-024-00351-x
source
Theseus.H222Type
H222()

A second-order, two-stage type I IMEX method. The explicit part is strong stability preserving (SSP), the implicit part is A-stable but not L-stable.

References

  • Sebastiano Boscarino, Lorenzo Pareschi, and Giovanni Russo (2025) Implicit-explicit methods for evolutionary partial differential equations. DOI: 10.1137/1.9781611978209
source
Theseus.SSP2222Type
SSP2222()

A second-order, two-stage type I IMEX method developed by Pareschi and Russo (2005). The explicit part is strong stability preserving (SSP), the implicit part is L-stable.

References

  • Lorenzo Pareschi and Giovanni Russo (2005) Implicit–Explicit Runge–Kutta schemes and applications to hyperbolic systems with relaxation. Journal of Computational Physics 203(2):469–491. DOI: 10.1007/s10915-004-4636-4
  • Sebastiano Boscarino and Giovanni Russo (2024) Asymptotic preserving methods for quasilinear hyperbolic systems with stiff relaxation: a review. DOI: 10.1007/s40324-024-00351-x
source
Theseus.SSP2322Type
SSP2322()

A second-order, three-stage type I IMEX method developed by Pareschi and Russo (2005). The explicit part is strong stability preserving (SSP), the implicit part is stiffly accurate (SA) and thus L-stable.

References

  • Lorenzo Pareschi and Giovanni Russo (2005) Implicit–Explicit Runge–Kutta schemes and applications to hyperbolic systems with relaxation. Journal of Computational Physics 203(2):469–491. DOI: 10.1007/s10915-004-4636-4
source
Theseus.SSP2332Type
SSP2332()

A second-order, three-stage type I IMEX method developed by Pareschi and Russo (2005). The explicit part is strong stability preserving (SSP), the implicit part is stiffly accurate (SA) and thus L-stable.

References

  • Lorenzo Pareschi and Giovanni Russo (2005) Implicit–Explicit Runge–Kutta schemes and applications to hyperbolic systems with relaxation. Journal of Computational Physics 203(2):469–491. DOI: 10.1007/s10915-004-4636-4
  • Sebastiano Boscarino and Giovanni Russo (2024) Asymptotic preserving methods for quasilinear hyperbolic systems with stiff relaxation: a review. DOI: 10.1007/s40324-024-00351-x
source
Theseus.SSP3332Type
SSP3332()

A second-order, three-stage type I IMEX method developed by Pareschi and Russo (2005). The explicit part is strong stability preserving (SSP) and third-order accurate, the implicit part is L-stable.

References

  • Lorenzo Pareschi and Giovanni Russo (2005) Implicit–Explicit Runge–Kutta schemes and applications to hyperbolic systems with relaxation. Journal of Computational Physics 203(2):469–491. DOI: 10.1007/s10915-004-4636-4
source
Theseus.SSP3433Type
SSP3433()

A third-order, four-stage type I IMEX method developed by Pareschi and Russo (2005). The explicit part is strong stability preserving (SSP) and third-order accurate, the implicit part is L-stable.

References

  • Lorenzo Pareschi and Giovanni Russo (2005) Implicit–Explicit Runge–Kutta schemes and applications to hyperbolic systems with relaxation. Journal of Computational Physics 203(2):469–491. DOI: 10.1007/s10915-004-4636-4
  • Sebastiano Boscarino and Giovanni Russo (2024) Asymptotic preserving methods for quasilinear hyperbolic systems with stiff relaxation: a review. DOI: 10.1007/s40324-024-00351-x
source

Type II methods (Ascher–Ruuth–Spiteri)

Theseus.HT222Type
HT222()

A second-order, two-stage type II IMEX method. The explicit part is strong stability preserving (SSP), the implicit part is A-stable but not L-stable.

References

  • Sebastiano Boscarino, Lorenzo Pareschi, and Giovanni Russo (2025) Implicit-explicit methods for evolutionary partial differential equations. DOI: 10.1137/1.9781611978209
source
Theseus.ARS111Type
ARS111()

A first-order, effectively one-stage, globally stiffly accurate (GSA) type II IMEX method developed by Ascher, Ruuth, and Spiteri (1997).

References

  • Uri M. Ascher, Steven J. Ruuth, and Raymond J Spiteri (1997) Implicit-explicit Runge-Kutta methods for time-dependent partial differential equations. DOI: 10.1016/S0168-9274(97)00056-1
  • Sebastiano Boscarino and Giovanni Russo (2024) Asymptotic preserving methods for quasilinear hyperbolic systems with stiff relaxation: a review. DOI: 10.1007/s40324-024-00351-x
  • Sebastiano Boscarino, Lorenzo Pareschi, and Giovanni Russo (2025) Implicit-explicit methods for evolutionary partial differential equations. DOI: 10.1137/1.9781611978209
source
Theseus.ARS222Type
ARS222()

A second-order, effectively two-stage, globally stiffly accurate (GSA) type II IMEX method developed by Ascher, Ruuth, and Spiteri (1997).

References

  • Uri M. Ascher, Steven J. Ruuth, and Raymond J Spiteri (1997) Implicit-explicit Runge-Kutta methods for time-dependent partial differential equations. DOI: 10.1016/S0168-9274(97)00056-1
  • Sebastiano Boscarino and Giovanni Russo (2024) Asymptotic preserving methods for quasilinear hyperbolic systems with stiff relaxation: a review. DOI: 10.1007/s40324-024-00351-x
  • Sebastiano Boscarino, Lorenzo Pareschi, and Giovanni Russo (2025) Implicit-explicit methods for evolutionary partial differential equations. DOI: 10.1137/1.9781611978209
source
Theseus.ARS233Type
ARS233()

A third-order, effectively three-stage type II IMEX method developed by Ascher, Ruuth, and Spiteri (1997). The implicit part is A-stable but not L-stable.

References

  • Uri M. Ascher, Steven J. Ruuth, and Raymond J Spiteri (1997) Implicit-explicit Runge-Kutta methods for time-dependent partial differential equations. DOI: 10.1016/S0168-9274(97)00056-1
  • Sebastiano Boscarino, Lorenzo Pareschi, and Giovanni Russo (2025) Implicit-explicit methods for evolutionary partial differential equations. DOI: 10.1137/1.9781611978209
source
Theseus.ARS443Type
ARS443()

A third-order, effectively four-stage, globally stiffly accurate (GSA) type II IMEX method developed by Ascher, Ruuth, and Spiteri (1997).

References

  • Uri M. Ascher, Steven J. Ruuth, and Raymond J Spiteri (1997) Implicit-explicit Runge-Kutta methods for time-dependent partial differential equations. DOI: 10.1016/S0168-9274(97)00056-1
  • Sebastiano Boscarino and Giovanni Russo (2024) Asymptotic preserving methods for quasilinear hyperbolic systems with stiff relaxation: a review. DOI: 10.1007/s40324-024-00351-x
  • Sebastiano Boscarino, Lorenzo Pareschi, and Giovanni Russo (2025) Implicit-explicit methods for evolutionary partial differential equations. DOI: 10.1137/1.9781611978209
source

Rosenbrock-W Methods

Rosenbrock-W methods linearise the implicit system and solve one linear system (via a Krylov method) per stage instead of a full Newton solve. The Jacobian approximation makes them W methods: the exact Jacobian is not required. They accept an ODEProblem.

Theseus.SSPKnothType
SSPKnoth()

A three-stage, second-order strong-stability preserving (SSP) Rosenbrock-W method by Knoth and Wolke.

References

  • O. Knoth and R. Wolke (1998) Implicit-explicit coupled multirate methods for reactive flow with stiff chemistry. Atmospheric Environment, 32(3):507–519.
source
Theseus.ROS2Type
ROS2()

A two-stage, second-order Rosenbrock-W method with diagonal parameter $\gamma = (1 + 1/\sqrt{3})/2$.

References

  • Ernst Hairer and Gerhard Wanner (1996) Solving Ordinary Differential Equations II: Stiff and Differential-Algebraic Problems. Springer Series in Computational Mathematics, 2nd edition. DOI: 10.1007/978-3-642-05221-7
source