Source code for python_models8.neuron.builds.my_if_curr_exp_sEMD

from spynnaker.pyNN.models.defaults import default_initial_values
from spynnaker.pyNN.models.neuron.neuron_models import (
    NeuronModelLeakyIntegrateAndFire)
from spynnaker.pyNN.models.neuron import AbstractPyNNNeuronModelStandard
from spynnaker.pyNN.models.neuron.implementations import ModelParameter
from spynnaker.pyNN.models.neuron.synapse_types import SynapseTypeExponential
from python_models8.neuron.input_types.my_input_type_semd import (
    MyInputTypeCurrentSEMD)
from spynnaker.pyNN.models.neuron.threshold_types import ThresholdTypeStatic


[docs] class MyIFCurrExpSEMD(AbstractPyNNNeuronModelStandard): """ 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) Note: this is an older version of the sEMD model in sPyNNaker that required a new implementation C file in order to make it work. """ @default_initial_values({"v", "isyn_exc", "isyn_inh", "my_inh_input_previous"}) def __init__( self, tau_m: ModelParameter = 20.0, cm: ModelParameter = 1.0, v_rest: ModelParameter = -65.0, v_reset: ModelParameter = -65.0, v_thresh: ModelParameter = -50.0, tau_syn_E: ModelParameter = 5.0, tau_syn_I: ModelParameter = 5.0, tau_refrac: ModelParameter = 0.1, i_offset: ModelParameter = 0.0, v: ModelParameter = -65.0, isyn_exc: ModelParameter = 0.0, isyn_inh: ModelParameter = 0.0, my_multiplicator: ModelParameter = 0.0, my_inh_input_previous: ModelParameter = 0.0): neuron_model = NeuronModelLeakyIntegrateAndFire( v, v_rest, tau_m, cm, i_offset, v_reset, tau_refrac) synapse_type = SynapseTypeExponential( tau_syn_E, tau_syn_I, isyn_exc, isyn_inh) input_type = MyInputTypeCurrentSEMD( my_multiplicator, my_inh_input_previous) threshold_type = ThresholdTypeStatic(v_thresh) super().__init__( model_name="my_if_curr_exp_sEMD", binary="my_if_curr_exp_sEMD.aplx", neuron_model=neuron_model, input_type=input_type, synapse_type=synapse_type, threshold_type=threshold_type)