spynnaker.pyNN.models.neuron.neuron_models package

Module contents

class spynnaker.pyNN.models.neuron.neuron_models.NeuronModel(structs: List[Struct], units: Dict[str, str])

Bases: AbstractStandardNeuronComponent

A component of a neuron that is the model of the model.

Parameters:
  • structs (list(Struct)) – The structures of the component

  • units (dict) – The units to use for each parameter

class spynnaker.pyNN.models.neuron.neuron_models.NeuronModelIFTrunc(v_init: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]] | None, tau_m: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], cm: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], i_offset: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], v_reset: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], tau_refrac: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]])

Bases: NeuronModel

Integrate and Fire without leak, and with truncation to V_reset should the membrane voltage ever go below it.

Parameters:
  • v_init (float or iterable(float) or RandomDistribution or (mapping) function) – \(V_{init}\)

  • v_rest (float or iterable(float) or RandomDistribution or (mapping) function) – \(V_{rest}\)

  • tau_m (float or iterable(float) or RandomDistribution or (mapping) function) – \(\tau_{m}\)

  • cm (float or iterable(float) or RandomDistribution or (mapping) function) – \(C_m\)

  • i_offset (float or iterable(float) or RandomDistribution or (mapping) function) – \(I_{offset}\)

  • v_reset (float or iterable(float) or RandomDistribution or (mapping) function) – \(V_{reset}\)

  • tau_refrac (float or iterable(float) or RandomDistribution or (mapping) function) – \(\tau_{refrac}\)

add_parameters(parameters: RangeDictionary[float])[source]

Add the initial values of the parameters to the parameter holder.

Parameters:

parameters (RangeDictionary) – A holder of the parameters

add_state_variables(state_variables: RangeDictionary[float])[source]

Add the initial values of the state variables to the state variables holder.

Parameters:

state_variables (RangeDictionary) – A holder of the state variables

property cm: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]]

Settable model parameter: \(C_m\)

Return type:

float

property i_offset: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]]

Settable model parameter: \(I_{offset}\)

Return type:

float

property tau_m: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]]

Settable model parameter: \(\tau_{m}\)

Return type:

float

property tau_refrac: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]]

Settable model parameter: \(\tau_{refrac}\)

Return type:

float

property v_init: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]]

Settable model parameter: \(V_{init}\)

Return type:

float

property v_reset: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]]

Settable model parameter: \(V_{reset}\)

Return type:

float

class spynnaker.pyNN.models.neuron.neuron_models.NeuronModelIzh(a: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], b: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], c: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], d: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], v_init: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], u_init: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], i_offset: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]])

Bases: NeuronModel

Model of neuron due to Eugene M. Izhikevich et al.

Parameters:
  • a (float or iterable(float) or RandomDistribution or (mapping) function) – \(a\)

  • b (float or iterable(float) or RandomDistribution or (mapping) function) – \(b\)

  • c (float or iterable(float) or RandomDistribution or (mapping) function) – \(c\)

  • d (float or iterable(float) or RandomDistribution or (mapping) function) – \(d\)

  • v_init (float or iterable(float) or RandomDistribution or (mapping) function) – \(v_{init}\)

  • u_init (float or iterable(float) or RandomDistribution or (mapping) function) – \(u_{init}\)

  • i_offset (float or iterable(float) or RandomDistribution or (mapping) function) – \(I_{offset}\)

property a: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]]

Settable model parameter: \(a\)

Return type:

float

add_parameters(parameters: RangeDictionary[float])[source]

Add the initial values of the parameters to the parameter holder.

Parameters:

parameters (RangeDictionary) – A holder of the parameters

add_state_variables(state_variables: RangeDictionary[float])[source]

Add the initial values of the state variables to the state variables holder.

Parameters:

state_variables (RangeDictionary) – A holder of the state variables

property b: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]]

Settable model parameter: \(b\)

Return type:

float

property c: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]]

Settable model parameter: \(c\)

Return type:

float

property d: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]]

Settable model parameter: \(d\)

Return type:

float

property i_offset: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]]

Settable model parameter: \(I_{offset}\)

Return type:

float

property u_init: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]]

Settable model parameter: \(u_{init}\)

Return type:

float

property v_init: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]]

Settable model parameter: \(v_{init}\)

Return type:

float

class spynnaker.pyNN.models.neuron.neuron_models.NeuronModelLeakyIntegrateAndFire(v_init: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]] | None, v_rest: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], tau_m: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], cm: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], i_offset: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], v_reset: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], tau_refrac: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]])

Bases: NeuronModel

Classic leaky integrate and fire neuron model.

Parameters:
  • v_init (float or iterable(float) or RandomDistribution or (mapping) function) – \(V_{init}\)

  • v_rest (float or iterable(float) or RandomDistribution or (mapping) function) – \(V_{rest}\)

  • tau_m (float or iterable(float) or RandomDistribution or (mapping) function) – \(\tau_{m}\)

  • cm (float or iterable(float) or RandomDistribution or (mapping) function) – \(C_m\)

  • i_offset (float or iterable(float) or RandomDistribution or (mapping) function) – \(I_{offset}\)

  • v_reset (float or iterable(float) or RandomDistribution or (mapping) function) – \(V_{reset}\)

  • tau_refrac (float or iterable(float) or RandomDistribution or (mapping) function) – \(\tau_{refrac}\)

add_parameters(parameters: RangeDictionary[float])[source]

Add the initial values of the parameters to the parameter holder.

Parameters:

parameters (RangeDictionary) – A holder of the parameters

add_state_variables(state_variables: RangeDictionary[float])[source]

Add the initial values of the state variables to the state variables holder.

Parameters:

state_variables (RangeDictionary) – A holder of the state variables

property cm: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]]

Settable model parameter: \(C_m\)

Return type:

float

property i_offset: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]]

Settable model parameter: \(I_{offset}\)

Return type:

float

property tau_m: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]]

Settable model parameter: \(\tau_{m}\)

Return type:

float

property tau_refrac: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]]

Settable model parameter: \(\tau_{refrac}\)

Return type:

float

property v_init: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]]

Settable model parameter: \(V_{init}\)

Return type:

float

property v_reset: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]]

Settable model parameter: \(V_{reset}\)

Return type:

float

property v_rest: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]]

Settable model parameter: \(V_{rest}\)

Return type:

float