QIF#

class brainpy.dyn.QIF(size, keep_size=False, tau=1.0, eta=-5.0, delta=1.0, J=15.0, 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=[3949182063 2081860855]), y_initializer=Uniform(min_val=0, max_val=0.05, rng=[3949182063 2081860855]), method='exp_auto', name=None, input_var=True, mode=None)[source]#

A mean-field model of a quadratic integrate-and-fire neuron population.

Model Descriptions

The QIF population mean-field model, which has been derived from a population of all-to-all coupled QIF neurons in [5]. The model equations are given by:

\[\begin{split}\begin{aligned} \tau \dot{r} &=\frac{\Delta}{\pi \tau}+2 r v \\ \tau \dot{v} &=v^{2}+\bar{\eta}+I(t)+J r \tau-(\pi r \tau)^{2} \end{aligned}\end{split}\]

where \(r\) is the average firing rate and \(v\) is the average membrane potential of the QIF population [5].

This mean-field model is an exact representation of the macroscopic firing rate and membrane potential dynamics of a spiking neural network consisting of QIF neurons with Lorentzian distributed background excitability. While the mean-field derivation is mathematically only valid for all-to-all coupled populations of infinite size, it has been shown that there is a close correspondence between the mean-field model and neural populations with sparse coupling and population sizes of a few thousand neurons [6].

Model Parameters

Parameter

Init Value

Unit

Explanation

tau

1

ms

the population time constant

eta

-5.

the mean of a Lorenzian distribution over the neural excitability in the population

delta

1.0

the half-width at half maximum of the Lorenzian distribution over the neural excitability

J

15

the strength of the recurrent coupling inside the population

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

clear_input()[source]#

Empty function of clearing inputs.

update(inp_x=None, inp_y=None)[source]#

The function to specify the updating rule.