stateupdaters package

Module for transforming model equations into “abstract code” that can be then be further translated into executable code by the codegen module.

base module

This module defines the StateUpdateMethod class that acts as a base class for all stateupdaters and allows to register stateupdaters so that it is able to return a suitable stateupdater object for a given set of equations. This is used for example in NeuronGroup when no state updater is given explicitly.

Exported members: StateUpdateMethod

Classes

StateUpdateMethod

Attributes

UnsupportedEquationsException

exact module

Exact integration for linear equations.

Exported members: linear, independent

Classes

IndependentStateUpdater A state update for equations that do not depend on other state variables, i.e.
LinearStateUpdater A state updater for linear equations.

Functions

get_linear_system(eqs, variables) Convert equations into a linear system using sympy.

Objects

independent A state update for equations that do not depend on other state variables, i.e.
linear A state updater for linear equations.

explicit module

Numerical integration functions.

Exported members: milstein, heun, euler, rk2, rk4, ExplicitStateUpdater

Classes

ExplicitStateUpdater(description[, ...]) An object that can be used for defining state updaters via a simple description (see below).

Functions

diagonal_noise(equations, variables) Checks whether we deal with diagonal noise, i.e.
split_expression(expr) Split an expression into a part containing the function f and another one containing the function g.

Objects

euler Forward Euler state updater
heun Stochastic Heun method (for multiplicative Stratonovic SDEs with non-diagonal
milstein Derivative-free Milstein method
rk2 Second order Runge-Kutta method (midpoint method)
rk4 Classical Runge-Kutta method (RK4)

exponential_euler module

Exported members: exponential_euler

Classes

ExponentialEulerStateUpdater A state updater for conditionally linear equations, i.e.

Functions

get_conditionally_linear_system(eqs[, variables]) Convert equations into a linear system using sympy.

Objects

exponential_euler A state updater for conditionally linear equations, i.e.