imex_ars222_step

Contents

imex_ars222_step#

class braintools.quad.imex_ars222_step(f_exp, f_imp, y, t, *args, max_iter=2, **kwargs)#

ARS(2,2,2) IMEX Runge–Kutta step (Ascher–Ruuth–Spiteri).

Two-stage, second‑order IMEX RK with explicit and implicit tableaus:

Explicit A^E, b^E

c_E = [0, 1] A^E = [[0, 0],

[1, 0]]

b^E = [1 - γ, γ]

Implicit A^I, b^I

c_I = [γ, 1] A^I = [[γ, 0],

[1-γ, γ]]

b^I = [1 - γ, γ]

with γ = 1 - 1/sqrt(2).

Implementation solves stage equations by fixed‑point iteration.

Parameters:
  • f_exp (Callable[[PyTree, Array | ndarray | bool | number | bool | int | float | complex | Quantity, Any], PyTree]) – As usual.

  • f_imp (Callable[[PyTree, Array | ndarray | bool | number | bool | int | float | complex | Quantity, Any], PyTree]) – As usual.

  • y (PyTree) – As usual.

  • t (Array | ndarray | bool | number | bool | int | float | complex | Quantity) – As usual.

  • *args – As usual.

  • max_iter (int) – Fixed‑point iterations for the implicit stage solves.

Returns:

The updated state y_{n+1}.

Return type:

PyTree