spynnaker.pyNN.extra_models package

Module contents

class spynnaker.pyNN.extra_models.IFCondExpStoc(**kwargs)

Bases: AbstractPyNNNeuronModelStandard

Leaky integrate and fire neuron with a stochastic threshold.

Habenschuss S, Jonke Z, Maass W. Stochastic computations in cortical microcircuit models. PLoS Computational Biology. 2013;9(11):e1003311. doi:10.1371/journal.pcbi.1003311

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

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

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

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

  • v_thresh (float, iterable(float), RandomDistribution or (mapping) function) – \(V_{thresh}\)

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

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

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

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

  • e_rev_E (float, iterable(float), RandomDistribution or (mapping) function) – \(E^{rev}_e\)

  • e_rev_I (float, iterable(float), RandomDistribution or (mapping) function) – \(E^{rev}_i\)

  • du_th (float, iterable(float), RandomDistribution or (mapping) function) – \(du_{thresh}\)

  • tau_th (float, iterable(float), RandomDistribution or (mapping) function) – \(\tau_{thresh}\)

  • v (Float, float, iterable(float), RandomDistribution or (mapping) function) – \(V_{init}\)

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

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

  • model_name (str) – Name of the model.

  • binary (str) – Name of the implementation executable.

  • neuron_model (AbstractPyNNNeuronModel) – The model of the neuron soma

  • input_type (AbstractInputType) – The model of synaptic input types

  • synapse_type (AbstractSynapseType) – The model of the synapses’ dynamics

  • threshold_type (AbstractThresholdType) – The model of the firing threshold

  • additional_input_type (AbstractAdditionalInput or None) – The model (if any) of additional environmental inputs

spynnaker.pyNN.extra_models.IFCurDelta

alias of IFCurrDelta

class spynnaker.pyNN.extra_models.IFCurrDeltaCa2Adaptive(**kwargs)

Bases: AbstractPyNNNeuronModelStandard

Leaky integrate and fire neuron with an instantaneous current input.

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

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

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

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

  • v_thresh (float, iterable(float), RandomDistribution or (mapping) function) – \(V_{thresh}\)

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

  • tau_ca2 (float, iterable(float), RandomDistribution or (mapping) function) – \(\tau_{\mathrm{Ca}^{+2}}\)

  • i_ca2 (float, iterable(float), RandomDistribution or (mapping) function) – \(I_{\mathrm{Ca}^{+2}}\)

  • i_alpha (float, iterable(float), RandomDistribution or (mapping) function) – \(\tau_\alpha\)

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

  • v (float, iterable(float), RandomDistribution or (mapping) function) – \(V_{init}\)

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

  • isyn_inh\(I^{syn}_i\)

  • model_name (str) – Name of the model.

  • binary (str) – Name of the implementation executable.

  • neuron_model (AbstractPyNNNeuronModel) – The model of the neuron soma

  • input_type (AbstractInputType) – The model of synaptic input types

  • synapse_type (AbstractSynapseType) – The model of the synapses’ dynamics

  • threshold_type (AbstractThresholdType) – The model of the firing threshold

  • additional_input_type (AbstractAdditionalInput or None) – The model (if any) of additional environmental inputs

Type:

isyn_inh: float, iterable(float), RandomDistribution or (mapping) function

class spynnaker.pyNN.extra_models.IFCurrExpCa2Adaptive(**kwargs)

Bases: AbstractPyNNNeuronModelStandard

Model from Liu, Y. H., & Wang, X. J. (2001). Spike-frequency adaptation of a generalized leaky integrate-and-fire model neuron. Journal of Computational Neuroscience, 10(1), 25-45. doi:10.1023/A:1008916026143

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

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

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

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

  • v_thresh (float, iterable(float), RandomDistribution or (mapping) function) – \(V_{thresh}\)

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

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

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

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

  • tau_ca2 (float, iterable(float), RandomDistribution or (mapping) function) – \(\tau_{\mathrm{Ca}^{+2}}\)

  • i_ca2 (float, iterable(float), RandomDistribution or (mapping) function) – \(I_{\mathrm{Ca}^{+2}}\)

  • i_alpha (float, iterable(float), RandomDistribution or (mapping) function) – \(\tau_\alpha\)

  • v (float, iterable(float), RandomDistribution or (mapping) function) – \(V_{init}\)

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

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

  • model_name (str) – Name of the model.

  • binary (str) – Name of the implementation executable.

  • neuron_model (AbstractPyNNNeuronModel) – The model of the neuron soma

  • input_type (AbstractInputType) – The model of synaptic input types

  • synapse_type (AbstractSynapseType) – The model of the synapses’ dynamics

  • threshold_type (AbstractThresholdType) – The model of the firing threshold

  • additional_input_type (AbstractAdditionalInput or None) – The model (if any) of additional environmental inputs

spynnaker.pyNN.extra_models.IF_curr_dual_exp

alias of IFCurrDualExpBase

spynnaker.pyNN.extra_models.IF_curr_exp_sEMD

alias of IFCurrExpSEMDBase

spynnaker.pyNN.extra_models.Izhikevich_cond

alias of IzkCondExpBase

spynnaker.pyNN.extra_models.Izhikevich_cond_dual

alias of IzkCondDualExpBase

spynnaker.pyNN.extra_models.Neuromodulation

alias of SynapseDynamicsNeuromodulation

spynnaker.pyNN.extra_models.PfisterSpikeTriplet

alias of TimingDependencePfisterSpikeTriplet

spynnaker.pyNN.extra_models.RecurrentRule

alias of TimingDependenceRecurrent

spynnaker.pyNN.extra_models.SpikeNearestPairRule

alias of TimingDependenceSpikeNearestPair

class spynnaker.pyNN.extra_models.SpikeSourcePoissonVariable(rates, starts, durations=None)

Bases: AbstractPyNNModel

absolute_max_atoms_per_core = 500
create_vertex(n_neurons, label, seed, splitter)[source]

Create a vertex for a population of the model.

Parameters:
  • n_neurons (int) – The number of neurons in the population

  • label (str) – The label to give to the vertex

  • seed (float) –

  • splitter (AbstractSplitterCommon or None) –

Returns:

An application vertex for the population

Return type:

PopulationApplicationVertex

default_population_parameters = {'seed': None, 'splitter': None}
spynnaker.pyNN.extra_models.Vogels2011Rule

alias of TimingDependenceVogels2011

class spynnaker.pyNN.extra_models.WeightDependenceAdditiveTriplet(w_min=0.0, w_max=1.0, A3_plus=0.01, A3_minus=0.01)

Bases: AbstractHasAPlusAMinus, AbstractWeightDependence

An triplet-based additive weight dependence STDP rule.

Parameters:
  • w_min (float) – \(w^{min}\)

  • w_max (float) – \(w^{max}\)

  • A3_plus (float) – \(A_3^+\)

  • A3_minus (float) – \(A_3^-\)

property A3_minus

\(A_3^-\)

Return type:

float

property A3_plus

\(A_3^+\)

Return type:

float

default_parameters = {'A3_minus': 0.01, 'A3_plus': 0.01, 'w_max': 1.0, 'w_min': 0.0}
get_parameter_names()[source]

Returns the parameter names.

Return type:

iterable(str)

get_parameters_sdram_usage_in_bytes(n_synapse_types, n_weight_terms)[source]

Get the amount of SDRAM used by the parameters of this rule.

Parameters:
  • n_synapse_types (int) –

  • n_weight_terms (int) –

Return type:

int

is_same_as(weight_dependence)[source]

Determine if this weight dependence is the same as another.

Parameters:

weight_dependence (AbstractWeightDependence) –

Return type:

bool

property vertex_executable_suffix

The suffix to be appended to the vertex executable for this rule.

Return type:

str

property w_max

\(w^{max}\)

Return type:

float

property w_min

\(w^{min}\)

Return type:

float

property weight_maximum

The maximum weight that will ever be set in a synapse as a result of this rule.

Return type:

float

write_parameters(spec, global_weight_scale, synapse_weight_scales, n_weight_terms)[source]

Write the parameters of the rule to the spec.

Parameters:
  • spec (DataSpecificationGenerator) – The specification to write to

  • global_weight_scale (float) – The weight scale applied globally

  • synapse_weight_scales (list(float)) – The total weight scale applied to each synapse including the global weight scale

  • n_weight_terms (int) – The number of terms used by the synapse rule