brainpy.dyn.base.ConNeuGroup#

class brainpy.dyn.base.ConNeuGroup(size, C=1.0, A=0.001, V_th=0.0, V_initializer=Uniform(min_val=- 70, max_val=- 60.0, seed=None), method='exp_auto', name=None, **channels)[source]#

Base class to model conductance-based neuron group.

The standard formulation for a conductance-based model is given as

\[C_m {dV \over dt} = \sum_jg_j(E - V) + I_{ext}\]

where \(g_j=ar{g}_{j} M^x N^y\) is the channel conductance, \(E\) is the reversal potential, \(M\) is the activation variable, and \(N\) is the inactivation variable.

\(M\) and \(N\) have the dynamics of

\[{dx \over dt} = \phi_x {x_\infty (V) - x \over au_x(V)}\]

where \(x \in [M, N]\), \(\phi_x\) is a temperature-dependent factor, \(x_\infty\) is the steady state, and :math:` au_x` is the time constant. Equivalently, the above equation can be written as:

\[\]

rac{d x}{d t}=phi_{x}left(lpha_{x}(1-x)-eta_{x} x ight)

where \(lpha_{x}\) and \(eta_{x}\) are rate constants.

New in version 2.1.9.

sizeint, sequence of int

The network size of this neuron group.

method: str

The numerical integration method.

nameoptional, str

The neuron group name.

__init__(size, C=1.0, A=0.001, V_th=0.0, V_initializer=Uniform(min_val=- 70, max_val=- 60.0, seed=None), method='exp_auto', name=None, **channels)[source]#

Methods

__init__(size[, C, A, V_th, V_initializer, ...])

derivative(V, t)

get_delay_data(name, delay_step, *indices)

Get delay data according to the provided delay steps.

has(**children_cls)

The aggressive operation to gather master and children classes.

ints([method])

Collect all integrators in this node and the children nodes.

load_states(filename[, verbose])

Load the model states.

nodes([method, level, include_self])

Collect all children nodes.

register_delay(name, delay_step, delay_target)

Register delay variable.

register_implicit_nodes(nodes)

register_implicit_vars(variables)

reset()

Reset function which reset the whole variables in the model.

save_states(filename[, variables])

Save the model states.

train_vars([method, level, include_self])

The shortcut for retrieving all trainable variables.

unique_name([name, type_])

Get the unique name for this object.

update(t, dt)

The function to specify the updating rule.

vars([method, level, include_self])

Collect all variables in this node and the children nodes.

Attributes

global_delay_targets

global_delay_vars

name

steps