class brainpy.dyn.ThresholdLinearModel(size, tau_e=0.02, tau_i=0.01, beta_e=0.066, beta_i=0.351, noise_e=0.0, noise_i=0.0, e_initializer=ZeroInit, i_initializer=ZeroInit, seed=None, keep_size=False, name=None, mode=None, input_var=True)[source]#

A threshold linear rate model.

The threshold linear rate model is given by [1]

\[\begin{split}\begin{aligned} &\tau_{E} \frac{d \nu_{E}}{d t}=-\nu_{E}+\beta_{E}\left[I_{E}\right]_{+} \\ &\tau_{I} \frac{d \nu_{I}}{d t}=-\nu_{I}+\beta_{I}\left[I_{I}\right]_{+} \end{aligned}\end{split}\]

where \(\left[I_{E}\right]_{+}=\max \left(I_{E}, 0\right)\). \(v_E\) and \(v_I\) denote the firing rates of the excitatory and inhibitory populations respectively, \(\tau_E\) and \(\tau_I\) are the corresponding intrinsic time constants.



Empty function of clearing inputs.

reset_state(batch_or_mode=None, **kwargs)[source]#

Reset function which resets local states in this model.

Simply speaking, this function should implement the logic of resetting of local variables in this node.

See for details.

update(inp_e=None, inp_i=None)[source]#

The function to specify the updating rule.