evoxels.timesteppers
Classes
|
First order Euler forward scheme. |
|
First‐order IMEX Fourier pseudo‐spectral scheme |
|
Re-implementation of pseudo_spectral_IMEX as diffrax class |
Abstract interface for single‐step timestepping schemes. |
- class evoxels.timesteppers.ForwardEuler(problem: ODE, dt: float)
First order Euler forward scheme.
- dt: float
- property order: int
Temporal order of accuracy.
- step(t: float, u: Any) Any
Take one timestep from t to (t+dt).
- Parameters:
t – Current time
u – Current state
- Returns:
Updated state at t + dt.
- class evoxels.timesteppers.PseudoSpectralIMEX(problem: SemiLinearODE, dt: float)
First‐order IMEX Fourier pseudo‐spectral scheme
aka semi-implicit Fourier spectral method; see [Zhu and Chen 1999, doi:10.1103/PhysRevE.60.3564] for more details.
- __init__(problem: SemiLinearODE, dt: float) None
- dt: float
- property order: int
Temporal order of accuracy.
- problem: SemiLinearODE
- step(t: float, u: Any) Any
Take one timestep from t to (t+dt).
- Parameters:
t – Current time
u – Current state
- Returns:
Updated state at t + dt.
- class evoxels.timesteppers.PseudoSpectralIMEX_dfx(*args: Any, **kwargs: Any)
Re-implementation of pseudo_spectral_IMEX as diffrax class
This is used for the inversion models based on jax and diffrax
- fourier_symbol: float
- func(terms, t0, y0, args)
- init(terms, t0, t1, y0, args)
- order(terms)
- step(terms, t0, t1, y0, args, solver_state, made_jump)
- class evoxels.timesteppers.TimeStepper
Abstract interface for single‐step timestepping schemes.
- abstract property order: int
Temporal order of accuracy.
- abstractmethod step(t: float, u: Any) Any
Take one timestep from t to (t+dt).
- Parameters:
t – Current time
u – Current state
- Returns:
Updated state at t + dt.