brainpy.integrators module#

ODE integrators#

Base ODE Integrator#

ODEIntegrator

Numerical Integrator for Ordinary Differential Equations (ODEs).

Generic ODE Functions#

set_default_odeint

Set the default ODE numerical integrator method for differential equations.

get_default_odeint

Get the default ODE numerical integrator method.

register_ode_integrator

Register a new ODE integrator.

get_supported_methods

Get all supported numerical methods for DDEs.

Explicit Runge-Kutta ODE Integrators#

ExplicitRKIntegrator

Explicit Runge–Kutta methods for ordinary differential equation.

Euler

The Euler method for ODEs.

MidPoint

Explicit midpoint method for ODEs.

Heun2

Heun's method for ODEs.

Ralston2

Ralston's method for ODEs.

RK2

Generic second order Runge-Kutta method for ODEs.

RK3

Classical third-order Runge-Kutta method for ODEs.

Heun3

Heun's third-order method for ODEs.

Ralston3

Ralston's third-order method for ODEs.

SSPRK3

Third-order Strong Stability Preserving Runge-Kutta (SSPRK3).

RK4

Classical fourth-order Runge-Kutta method for ODEs.

Ralston4

Ralston's fourth-order method for ODEs.

RK4Rule38

3/8-rule fourth-order method for ODEs.

Adaptive Runge-Kutta ODE Integrators#

AdaptiveRKIntegrator

Adaptive Runge-Kutta method for ordinary differential equations.

RKF12

The Fehlberg RK1(2) method for ODEs.

RKF45

The Runge–Kutta–Fehlberg method for ODEs.

DormandPrince

The Dormand–Prince method for ODEs.

CashKarp

The Cash–Karp method for ODEs.

BogackiShampine

The Bogacki–Shampine method for ODEs.

HeunEuler

The Heun–Euler method for ODEs.

Exponential ODE Integrators#

ExponentialEuler

Exponential Euler method using automatic differentiation.

SDE integrators#

Base SDE Integrator#

SDEIntegrator

SDE Integrator.

Generic SDE Functions#

set_default_sdeint

Set the default SDE numerical integrator method for differential equations.

get_default_sdeint

Get the default SDE numerical integrator method.

register_sde_integrator

Register a new SDE integrator.

get_supported_methods

Get all supported numerical methods for DDEs.

Normal SDE Integrators#

Euler

Euler method for the Ito and Stratonovich integrals.

Heun

The Euler-Heun method for Stratonovich integral scheme.

Milstein

Milstein method for Ito or Stratonovich integrals.

MilsteinGradFree

Derivative-free Milstein method for Ito or Stratonovich integrals.

ExponentialEuler

First order, explicit exponential Euler method.

SRK methods for scalar Wiener process#

SRK1W1

Order 2.0 weak SRK methods for SDEs with scalar Wiener process.

SRK2W1

Order 1.5 Strong SRK Methods for SDEs with Scalar Noise.

KlPl

FDE integrators#

Base FDE Integrator#

FDEIntegrator

Numerical integrator for fractional differential equations (FEDs).

Generic FDE Functions#

set_default_fdeint

Set the default ODE numerical integrator method for differential equations.

get_default_fdeint

Get the default ODE numerical integrator method.

register_fde_integrator

Register a new ODE integrator.

get_supported_methods

Get all supported numerical methods for DDEs.

Methods for Caputo Fractional Derivative#

CaputoEuler

One-step Euler method for Caputo fractional differential equations.

CaputoL1Schema

The L1 scheme method for the numerical approximation of the Caputo fractional-order derivative equations [3]_.

Methods for Riemann-Liouville Fractional Derivative#

GLShortMemory

Efficient Computation of the Short-Memory Principle in Grünwald-Letnikov Method [1]_.