4.5.1 pde.solvers.adams_bashforth module

Defines an explicit Adams-Bashforth solver.

class AdamsBashforthSolver(pde: PDEBase, *, backend: pde.backends.base.BackendBase | str = 'auto')[source]

Bases: SolverBase

Explicit Adams-Bashforth multi-step solver.

Parameters:
  • pde (PDEBase) – The partial differential equation that should be solved

  • backend (str or BackendBase) – The backend used for numerical operations

property backend: BackendBase

The backend for this solver.

Type:

BackendBase

property backend_name: str

The name of the backend used for this solver.

Type:

str

classmethod from_name(name: str, pde: PDEBase, **kwargs) → SolverBase

Create a solver object from its registered name.

Solver classes are automatically registered when they inherit from SolverBase. Note that this also requires that the respective python module containing the solver has been loaded before it is attempted to be used.

Parameters:
  • name (str) – The name of the solver to construct

  • pde (PDEBase) – The partial differential equation that should be solved

  • **kwargs – Additional arguments for the constructor of the solver

Returns:

An instance of a subclass of SolverBase

make_stepper(state: TField, dt: float | None = None) → StepperType

Create the executable stepping function produced by this solver.

Parameters:
  • state (FieldBase) – An example for the state from which the grid and other information can be extracted

  • dt (float) – Initial time step used (Uses SolverBase.dt_default if None)

Returns:

Function that can be called to advance the state from time t_start to time t_end. The function call signature is (state: numpy.ndarray, t_start: float, t_end: float)