# brainpy.dyn.neurons.FractionalFHR#

class brainpy.dyn.neurons.FractionalFHR(size, alpha, num_memory=1000, a=0.7, b=0.8, c=- 0.775, d=1.0, delta=0.08, mu=0.0001, Vth=1.8, V_initializer=OneInit(value=2.5), w_initializer=ZeroInit, y_initializer=ZeroInit, name=None, keep_size=False)[source]#

The fractional-order FH-R model 1.

FitzHugh and Rinzel introduced FH-R model (1976, in an unpublished article), which is the modification of the classical FHN neuron model. The fractional-order FH-R model is described as

$\begin{split}\begin{array}{rcl} \frac{{d}^{\alpha }v}{d{t}^{\alpha }} & = & v-{v}^{3}/3-w+y+I={f}_{1}(v,w,y),\\ \frac{{d}^{\alpha }w}{d{t}^{\alpha }} & = & \delta (a+v-bw)={f}_{2}(v,w,y),\\ \frac{{d}^{\alpha }y}{d{t}^{\alpha }} & = & \mu (c-v-dy)={f}_{3}(v,w,y), \end{array}\end{split}$

where $$v, w$$ and $$y$$ represent the membrane voltage, recovery variable and slow modulation of the current respectively. $$I$$ measures the constant magnitude of external stimulus current, and $$\alpha$$ is the fractional exponent which ranges in the interval $$(0 < \alpha \le 1)$$. $$a, b, c, d, \delta$$ and $$\mu$$ are the system parameters.

The system reduces to the original classical order system when $$\alpha=1$$.

$$\mu$$ indicates a small parameter that determines the pace of the slow system variable $$y$$. The fast subsystem ($$v-w$$) presents a relaxation oscillator in the phase plane where $$\delta$$ is a small parameter. $$v$$ is expressed in mV (millivolt) scale. Time $$t$$ is in ms (millisecond) scale. It exhibits tonic spiking or quiescent state depending on the parameter sets for a fixed value of $$I$$. The parameter $$a$$ in the 2D FHN model corresponds to the parameter $$c$$ of the FH-R neuron model. If we decrease the value of $$a$$, it causes longer intervals between two burstings, however there exists $$a$$ relatively fixed time of bursting duration. With the increasing of $$a$$, the interburst intervals become shorter and periodic bursting changes to tonic spiking.

Examples

Parameters
• size (int, sequence of int) – The size of the neuron group.

• alpha (float, tensor) – The fractional order.

• num_memory (int) – The total number of the short memory.

References

1

Mondal, A., Sharma, S.K., Upadhyay, R.K. et al. Firing activities of a fractional-order FitzHugh-Rinzel bursting neuron model and its coupled dynamics. Sci Rep 9, 15721 (2019). https://doi.org/10.1038/s41598-019-52061-4

__init__(size, alpha, num_memory=1000, a=0.7, b=0.8, c=- 0.775, d=1.0, delta=0.08, mu=0.0001, Vth=1.8, V_initializer=OneInit(value=2.5), w_initializer=ZeroInit, y_initializer=ZeroInit, name=None, keep_size=False)[source]#

Methods

 __init__(size, alpha[, num_memory, a, b, c, ...]) dV(V, t, w, y) dw(w, t, V) dy(y, t, V) get_delay_data(name, delay_step, *indices) Get delay data according to the provided delay steps. 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

 derivative global_delay_targets global_delay_vars name steps