STP#
- class brainpy.dyn.STP(size, keep_size=False, sharding=None, method='exp_auto', name=None, mode=None, U=0.15, tau_f=1500.0, tau_d=200.0)[source]#
Synaptic output with short-term plasticity.
This model filters the synaptic currents according to two variables: \(u\) and \(x\).
\[I_{syn}^+(t) = I_{syn}^-(t) * x * u\]where \(I_{syn}^-(t)\) and \(I_{syn}^+(t)\) are the synaptic currents before and after STP filtering, \(x\) denotes the fraction of resources that remain available after neurotransmitter depletion, and \(u\) represents the fraction of available resources ready for use (release probability).
The dynamics of \(u\) and \(x\) are governed by
\[\begin{split} \begin{aligned} \frac{du}{dt} & = & -\frac{u}{\tau_f}+U(1-u^-)\delta(t-t_{sp}), \\ \frac{dx}{dt} & = & \frac{1-x}{\tau_d}-u^+x^-\delta(t-t_{sp}), \\ \tag{1}\end{aligned}\end{split}\]where \(t_{sp}\) denotes the spike time and \(U\) is the increment of \(u\) produced by a spike. \(u^-, x^-\) are the corresponding variables just before the arrival of the spike, and \(u^+\) refers to the moment just after the spike.
- Parameters:
tau_f (
Union
[float
,TypeVar
(ArrayType
,Array
,Variable
,TrainVar
,Array
,ndarray
),Callable
]) – float, ArrayType, Callable. The time constant of short-term facilitation.tau_d (
Union
[float
,TypeVar
(ArrayType
,Array
,Variable
,TrainVar
,Array
,ndarray
),Callable
]) – float, ArrayType, Callable. The time constant of short-term depression.U (
Union
[float
,TypeVar
(ArrayType
,Array
,Variable
,TrainVar
,Array
,ndarray
),Callable
]) – float, ArrayType, Callable. The fraction of resources used per action potential.size (
Union
[int
,Sequence
[int
]]) – int, or sequence of int. The neuronal population size.keep_size (
bool
) – bool. Keep the neuron group size.
- 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 https://brainpy.readthedocs.io/en/latest/tutorial_toolbox/state_resetting.html for details.