spynnaker.pyNN.models.neuron.synapse_types package

Module contents

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

Bases: AbstractStandardNeuronComponent

Represents the synapse types supported.

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

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

abstract get_n_synapse_types() int[source]

Get the number of synapse types supported.

Returns:

The number of synapse types supported

Return type:

int

abstract get_synapse_id_by_target(target: str) int | None[source]

Get the ID of a synapse given the name.

Returns:

The ID of the synapse

Return type:

int

abstract get_synapse_targets() Sequence[str][source]

Get the target names of the synapse type.

Returns:

an array of strings (usually a list or tuple)

Return type:

iterable(str)

class spynnaker.pyNN.models.neuron.synapse_types.SynapseTypeAlpha(exc_response: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], exc_exp_response: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], tau_syn_E: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], inh_response: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], inh_exp_response: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], tau_syn_I: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]])

Bases: AbstractSynapseType

Alpha Type Synapse

Parameters:
  • exc_response (float or iterable(float) or RandomDistribution or (mapping) function) – \(response^\mathrm{linear}_e\)

  • exc_exp_response (float or iterable(float) or RandomDistribution or (mapping) function) – \(response^\mathrm{exponential}_e\)

  • tau_syn_E (float or iterable(float) or RandomDistribution or (mapping) function) – \(\tau^{syn}_e\)

  • inh_response (float or iterable(float) or RandomDistribution or (mapping) function) – \(response^\mathrm{linear}_i\)

  • inh_exp_response (float or iterable(float) or RandomDistribution or (mapping) function) – \(response^\mathrm{exponential}_i\)

  • tau_syn_I (float or iterable(float) or RandomDistribution or (mapping) function) – \(\tau^{syn}_i\)

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 exc_response: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]]

Value as passed into the init.

Return type:

ModelParameter

get_n_synapse_types() int[source]

Get the number of synapse types supported.

Returns:

The number of synapse types supported

Return type:

int

get_synapse_id_by_target(target: str) int | None[source]

Get the ID of a synapse given the name.

Returns:

The ID of the synapse

Return type:

int

get_synapse_targets() Tuple[str, ...][source]

Get the target names of the synapse type.

Returns:

an array of strings (usually a list or tuple)

Return type:

iterable(str)

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

Value as passed into the init.

Return type:

ModelParameter

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

Value as passed into the init.

Return type:

ModelParameter

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

Value as passed into the init.

Return type:

ModelParameter

class spynnaker.pyNN.models.neuron.synapse_types.SynapseTypeDelta(isyn_exc: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], isyn_inh: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]])

Bases: AbstractSynapseType

This represents a synapse type with two delta synapses.

Parameters:
  • isyn_exc (float or iterable(float) or RandomDistribution or (mapping) function) – \(I^{syn}_e\)

  • isyn_inh (float or iterable(float) or RandomDistribution or (mapping) function) – \(I^{syn}_i\)

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

get_n_synapse_types() int[source]

Get the number of synapse types supported.

Returns:

The number of synapse types supported

Return type:

int

get_synapse_id_by_target(target: str) int | None[source]

Get the ID of a synapse given the name.

Returns:

The ID of the synapse

Return type:

int

get_synapse_targets() Tuple[str, ...][source]

Get the target names of the synapse type.

Returns:

an array of strings (usually a list or tuple)

Return type:

iterable(str)

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

Value as passed into the init.

Return type:

ModelParameter

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

Value as passed into the init.

Return type:

ModelParameter

class spynnaker.pyNN.models.neuron.synapse_types.SynapseTypeDualExponential(tau_syn_E: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], tau_syn_E2: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], tau_syn_I: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], isyn_exc: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], isyn_exc2: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], isyn_inh: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]])

Bases: AbstractSynapseType

A synapse with 2 excitatory values.

Parameters:
  • tau_syn_E (float or iterable(float) or RandomDistribution or (mapping) function) – \(\tau^{syn}_{e_1}\)

  • tau_syn_E2 (float or iterable(float) or RandomDistribution or (mapping) function) – \(\tau^{syn}_{e_2}\)

  • tau_syn_I (float or iterable(float) or RandomDistribution or (mapping) function) – \(\tau^{syn}_i\)

  • isyn_exc (float or iterable(float) or RandomDistribution or (mapping) function) – \(I^{syn}_{e_1}\)

  • isyn_exc2 (float or iterable(float) or RandomDistribution or (mapping) function) – \(I^{syn}_{e_2}\)

  • isyn_inh (float or iterable(float) or RandomDistribution or (mapping) function) – \(I^{syn}_i\)

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

get_n_synapse_types() int[source]

Get the number of synapse types supported.

Returns:

The number of synapse types supported

Return type:

int

get_synapse_id_by_target(target: str) int | None[source]

Get the ID of a synapse given the name.

Returns:

The ID of the synapse

Return type:

int

get_synapse_targets() Tuple[str, ...][source]

Get the target names of the synapse type.

Returns:

an array of strings (usually a list or tuple)

Return type:

iterable(str)

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

Value as passed into the init.

Return type:

ModelParameter

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

Value as passed into the init.

Return type:

ModelParameter

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

Value as passed into the init.

Return type:

ModelParameter

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

Value as passed into the init.

Return type:

ModelParameter

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

Value as passed into the init.

Return type:

ModelParameter

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

Value as passed into the init.

Return type:

ModelParameter

class spynnaker.pyNN.models.neuron.synapse_types.SynapseTypeExponential(tau_syn_E: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], tau_syn_I: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], isyn_exc: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], isyn_inh: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]])

Bases: AbstractSynapseType

A simple exponential synapse.

Parameters:
  • tau_syn_E (float or iterable(float) or RandomDistribution or (mapping) function) – \(\tau^{syn}_e\)

  • tau_syn_I (float or iterable(float) or RandomDistribution or (mapping) function) – \(\tau^{syn}_i\)

  • isyn_exc (float or iterable(float) or RandomDistribution or (mapping) function) – \(I^{syn}_e\)

  • isyn_inh (float or iterable(float) or RandomDistribution or (mapping) function) – \(I^{syn}_i\)

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

get_n_synapse_types() int[source]

Get the number of synapse types supported.

Returns:

The number of synapse types supported

Return type:

int

get_synapse_id_by_target(target: str) int | None[source]

Get the ID of a synapse given the name.

Returns:

The ID of the synapse

Return type:

int

get_synapse_targets() Tuple[str, ...][source]

Get the target names of the synapse type.

Returns:

an array of strings (usually a list or tuple)

Return type:

iterable(str)

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

Value as passed into the init.

Return type:

ModelParameter

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

Value as passed into the init.

Return type:

ModelParameter

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

Value as passed into the init.

Return type:

ModelParameter

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

Value as passed into the init.

Return type:

ModelParameter

class spynnaker.pyNN.models.neuron.synapse_types.SynapseTypeSEMD(tau_syn_E: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], tau_syn_E2: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], tau_syn_I: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], isyn_exc: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], isyn_exc2: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], isyn_inh: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], multiplicator: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], exc2_old: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]], scaling_factor: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]])

Bases: AbstractSynapseType

Synapse for a Leaky integrate and fire neuron with an exponentially decaying current input, where the excitatory input depends upon the inhibitory input (see https://www.cit-ec.de/en/nbs/spiking-insect-vision)

Parameters:
  • tau_syn_E (float or iterable(float) or RandomDistribution or (mapping) function) – \(\tau^{syn}_{e_1}\)

  • tau_syn_E2 (float or iterable(float) or RandomDistribution or (mapping) function) – \(\tau^{syn}_{e_2}\)

  • tau_syn_I (float or iterable(float) or RandomDistribution or (mapping) function) – \(\tau^{syn}_i\)

  • isyn_exc (float or iterable(float) or RandomDistribution or (mapping) function) – \(I^{syn}_{e_1}\)

  • isyn_exc2 (float or iterable(float) or RandomDistribution or (mapping) function) – \(I^{syn}_{e_2}\)

  • isyn_inh (float or iterable(float) or RandomDistribution or (mapping) function) – \(I^{syn}_i\)

  • multiplicator (float or iterable(float) or RandomDistribution or (mapping) function)

  • exc2_old (float or iterable(float) or RandomDistribution or (mapping) function)

  • scaling_factor (float or iterable(float) or RandomDistribution or (mapping) function)

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 exc2_old: float | Iterable[float] | RandomDistribution | ndarray[Any, dtype[floating]]

Value as passed into the init.

Return type:

ModelParameter

get_n_synapse_types() int[source]

Get the number of synapse types supported.

Returns:

The number of synapse types supported

Return type:

int

get_synapse_id_by_target(target: str) int | None[source]

Get the ID of a synapse given the name.

Returns:

The ID of the synapse

Return type:

int

get_synapse_targets() Tuple[str, ...][source]

Get the target names of the synapse type.

Returns:

an array of strings (usually a list or tuple)

Return type:

iterable(str)

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

Value as passed into the init.

Return type:

ModelParameter

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

Value as passed into the init.

Return type:

ModelParameter

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

Value as passed into the init.

Return type:

ModelParameter

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

Value as passed into the init.

Return type:

ModelParameter

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

Value as passed into the init.

Return type:

ModelParameter

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

Value as passed into the init.

Return type:

ModelParameter

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

Value as passed into the init.

Return type:

ModelParameter

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

Value as passed into the init.

Return type:

ModelParameter