FeedbackFHN#
- class brainpy.dyn.FeedbackFHN(size, keep_size=False, a=0.7, b=0.8, delay=10.0, tau=12.5, mu=1.6886, v0=-1, x_ou_mean=0.0, x_ou_sigma=0.0, x_ou_tau=5.0, y_ou_mean=0.0, y_ou_sigma=0.0, y_ou_tau=5.0, x_initializer=Uniform(min_val=0, max_val=0.05, rng=[ 479025946 4206239744]), y_initializer=Uniform(min_val=0, max_val=0.05, rng=[ 479025946 4206239744]), method='exp_auto', name=None, mode=None, input_var=True)[source]#
FitzHugh-Nagumo model with recurrent neural feedback.
The equation of the feedback FitzHugh-Nagumo model [4] is given by
\[\begin{split}\begin{aligned} \frac{dx}{dt} &= x(t) - \frac{x^3(t)}{3} - y(t) + \mu[x(t-\mathrm{delay}) - x_0] \\ \frac{dy}{dt} &= [x(t) + a - b y(t)] / \tau \end{aligned}\end{split}\]Model Examples
>>> import brainpy as bp >>> fhn = bp.rates.FeedbackFHN(1, delay=10.) >>> runner = bp.DSRunner(fhn, inputs=('input', 1.), monitors=['x', 'y']) >>> runner.run(100.) >>> bp.visualize.line_plot(runner.mon.ts, runner.mon.y, legend='y') >>> bp.visualize.line_plot(runner.mon.ts, runner.mon.x, legend='x', show=True)
Model Parameters
Parameter
Init Value
Unit
Explanation
a
1
Positive constant
b
1
Positive constant
tau
12.5
ms
Membrane time constant.
delay
10
ms
Synaptic delay time constant.
V_th
1.8
mV
Threshold potential of spike.
v0
-1
mV
Resting potential.
mu
1.8
The feedback strength. When positive, it is a excitatory feedback; when negative, it is a inhibitory feedback.
- Parameters:
x_ou_mean (Parameter) – The noise mean of the \(x\) variable, [mV/ms]
y_ou_mean (Parameter) – The noise mean of the \(y\) variable, [mV/ms].
x_ou_sigma (Parameter) – The noise intensity of the \(x\) variable, [mV/ms/sqrt(ms)].
y_ou_sigma (Parameter) – The noise intensity of the \(y\) variable, [mV/ms/sqrt(ms)].
x_ou_tau (Parameter) – The timescale of the Ornstein-Uhlenbeck noise process of \(x\) variable, [ms].
y_ou_tau (Parameter) – The timescale of the Ornstein-Uhlenbeck noise process of \(y\) variable, [ms].
References
- 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.