Esempio n. 1
0
    def __init__(self, n_neurons, machine_time_step, timescale_factor,
                 spikes_per_second, ring_buffer_sigma, constraints=None,
                 label=None, tau_m=default_parameters['tau_m'],
                 cm=default_parameters['cm'],
                 v_rest=default_parameters['v_rest'],
                 v_reset=default_parameters['v_reset'],
                 v_thresh=default_parameters['v_thresh'],
                 tau_syn_E=default_parameters['tau_syn_E'],
                 tau_syn_E2=default_parameters['tau_syn_E2'],
                 tau_syn_I=default_parameters['tau_syn_I'],
                 tau_refrac=default_parameters['tau_refrac'],
                 i_offset=default_parameters['i_offset'],
                 v_init=None):

        # Instantiate the parent classes
        AbstractDualExponentialVertex.__init__(
            self, n_neurons=n_neurons, tau_syn_E=tau_syn_E,
            tau_syn_E2=tau_syn_E2, tau_syn_I=tau_syn_I,
            machine_time_step=machine_time_step)
        AbstractIntegrateAndFireProperties.__init__(
            self, atoms=n_neurons, cm=cm, tau_m=tau_m, i_offset=i_offset,
            v_init=v_init, v_reset=v_reset, v_rest=v_rest, v_thresh=v_thresh,
            tau_refrac=tau_refrac)
        AbstractPopulationVertex.__init__(
            self, n_neurons=n_neurons, n_params=10, n_global_params=0,
            label=label,
            binary="IF_curr_exp_dual.aplx", constraints=constraints,
            max_atoms_per_core=(IFCurrentDualExponentialPopulation
                                ._model_based_max_atoms_per_core),
            machine_time_step=machine_time_step,
            timescale_factor=timescale_factor,
            spikes_per_second=spikes_per_second,
            ring_buffer_sigma=ring_buffer_sigma)
Esempio n. 2
0
    def __init__(self, n_neurons, machine_time_step, timescale_factor,
                 spikes_per_second, ring_buffer_sigma, constraints=None,
                 label=None, tau_m=20.0, cm=1.0, v_rest=-65.0, v_reset=-65.0,
                 v_thresh=-50.0, tau_syn_E=5.0, tau_syn_E2=5.0, tau_syn_I=5.0,
                 tau_refrac=0.1, i_offset=0, v_init=None):

        # Instantiate the parent classes
        AbstractDualExponentialVertex.__init__(
            self, n_neurons=n_neurons, tau_syn_E=tau_syn_E,
            tau_syn_E2=tau_syn_E2, tau_syn_I=tau_syn_I,
            machine_time_step=machine_time_step)
        AbstractIntegrateAndFireProperties.__init__(
            self, atoms=n_neurons, cm=cm, tau_m=tau_m, i_offset=i_offset,
            v_init=v_init, v_reset=v_reset, v_rest=v_rest, v_thresh=v_thresh,
            tau_refrac=tau_refrac)
        AbstractPopulationVertex.__init__(
            self, n_neurons=n_neurons, n_params=10, label=label,
            binary="IF_curr_exp_dual.aplx", constraints=constraints,
            max_atoms_per_core=(IFCurrentDualExponentialPopulation
                                ._model_based_max_atoms_per_core),
            machine_time_step=machine_time_step,
            timescale_factor=timescale_factor,
            spikes_per_second=spikes_per_second,
            ring_buffer_sigma=ring_buffer_sigma)
        self._executable_constant = \
            IFCurrentDualExponentialPopulation.CORE_APP_IDENTIFIER
    def __init__(self, n_neurons, machine_time_step, timescale_factor,
                 spikes_per_second, ring_buffer_sigma, constraints=None,
                 label=None, a=0.02, c=-65.0, b=0.2, d=2.0, i_offset=0,
                 u_init=-14.0, v_init=-70.0, tau_syn_E=5.0, tau_syn_I=5.0,
                 membrane_noise_sd=2.5):

        # Instantiate the parent classes
        AbstractExponentialPopulationVertex.__init__(
            self, n_neurons=n_neurons, tau_syn_E=tau_syn_E,
            tau_syn_I=tau_syn_I, machine_time_step=machine_time_step)
        AbstractIzhikevichVertex.__init__(self, n_neurons, a=a, c=c, b=b, d=d,
                                          i_offset=i_offset, u_init=u_init,
                                          v_init=v_init)
        AbstractPopulationVertex.__init__(
            self, n_neurons=n_neurons, n_params=11, label=label,
            binary="izk_curr_exp_stochastic.aplx", constraints=constraints,
            max_atoms_per_core=IzhikevichCurrentExponentialPopulation.
            _model_based_max_atoms_per_core,
            machine_time_step=machine_time_step,
            timescale_factor=timescale_factor,
            spikes_per_second=spikes_per_second,
            ring_buffer_sigma=ring_buffer_sigma)
        AbstractStochasticVertex.__init__(self, membrane_noise_sd)
        self._executable_constant = \
            IzhikevichCurrentExponentialPopulation.CORE_APP_IDENTIFIER
Esempio n. 4
0
    def __init__(self,
                 n_neurons,
                 machine_time_step,
                 timescale_factor,
                 spikes_per_second,
                 ring_buffer_sigma,
                 constraints=None,
                 label=None):

        # Instantiate the parent classes
        AbstractPopulationVertex.__init__(
            self,
            n_neurons=n_neurons,
            n_params=10,
            label=label,
            binary="IZK_curr_exp.aplx",
            constraints=constraints,
            max_atoms_per_core=IzhikevichCurrentExponentialPopulation.
            _model_based_max_atoms_per_core,
            machine_time_step=machine_time_step,
            timescale_factor=timescale_factor,
            spikes_per_second=spikes_per_second,
            ring_buffer_sigma=ring_buffer_sigma)
        self._executable_constant = \
            IzhikevichCurrentExponentialPopulation.CORE_APP_IDENTIFIER
Esempio n. 5
0
    def __init__(self, n_neurons, machine_time_step, timescale_factor,
                 spikes_per_second, ring_buffer_sigma, constraints=None,
                 label=None, tau_m=20, cm=1.0, e_rev_E=0.0, e_rev_I=-70.0,
                 v_rest=-65.0, v_reset=-65.0, v_thresh=-50.0, tau_syn_E=5.0,
                 tau_syn_I=5.0, tau_refrac=0.1, i_offset=0, v_init=None):

        # Instantiate the parent classes
        AbstractConductanceVertex.__init__(self, n_neurons, e_rev_E=e_rev_E,
                                           e_rev_I=e_rev_I)
        AbstractExponentialPopulationVertex.__init__(
            self, n_neurons=n_neurons, tau_syn_E=tau_syn_E,
            tau_syn_I=tau_syn_I, machine_time_step=machine_time_step)
        AbstractIntegrateAndFireProperties.__init__(
            self, atoms=n_neurons, cm=cm, tau_m=tau_m, i_offset=i_offset,
            v_init=v_init, v_reset=v_reset, v_rest=v_rest, v_thresh=v_thresh,
            tau_refrac=tau_refrac)

        AbstractPopulationVertex.__init__(
            self, n_neurons=n_neurons, n_params=12, label=label,
            max_atoms_per_core=(IFConductanceExponentialPopulation
                                ._model_based_max_atoms_per_core),
            binary="IF_cond_exp.aplx", constraints=constraints,
            machine_time_step=machine_time_step,
            timescale_factor=timescale_factor,
            spikes_per_second=spikes_per_second,
            ring_buffer_sigma=ring_buffer_sigma,
            weight_scale=AbstractConductanceVertex.WEIGHT_SCALE)
Esempio n. 6
0
    def __init__(self,
                 n_neurons,
                 machine_time_step,
                 timescale_factor,
                 spikes_per_second,
                 ring_buffer_sigma,
                 constraints=None,
                 label=None,
                 tau_m=20.0,
                 cm=1.0,
                 v_rest=-65.0,
                 v_reset=-65.0,
                 v_thresh=-50.0,
                 tau_syn_E=5.0,
                 tau_syn_E2=5.0,
                 tau_syn_I=5.0,
                 tau_refrac=0.1,
                 i_offset=0,
                 v_init=None):

        # Instantiate the parent classes
        AbstractDualExponentialVertex.__init__(
            self,
            n_neurons=n_neurons,
            tau_syn_E=tau_syn_E,
            tau_syn_E2=tau_syn_E2,
            tau_syn_I=tau_syn_I,
            machine_time_step=machine_time_step)
        AbstractIntegrateAndFireProperties.__init__(self,
                                                    atoms=n_neurons,
                                                    cm=cm,
                                                    tau_m=tau_m,
                                                    i_offset=i_offset,
                                                    v_init=v_init,
                                                    v_reset=v_reset,
                                                    v_rest=v_rest,
                                                    v_thresh=v_thresh,
                                                    tau_refrac=tau_refrac)
        AbstractPopulationVertex.__init__(
            self,
            n_neurons=n_neurons,
            n_params=10,
            label=label,
            binary="IF_curr_exp_dual.aplx",
            constraints=constraints,
            max_atoms_per_core=(IFCurrentDualExponentialPopulation.
                                _model_based_max_atoms_per_core),
            machine_time_step=machine_time_step,
            timescale_factor=timescale_factor,
            spikes_per_second=spikes_per_second,
            ring_buffer_sigma=ring_buffer_sigma)
Esempio n. 7
0
    def __init__(self,
                 n_neurons,
                 machine_time_step,
                 timescale_factor,
                 spikes_per_second,
                 ring_buffer_sigma,
                 constraints=None,
                 label=None,
                 a=0.02,
                 c=-65.0,
                 b=0.2,
                 d=2.0,
                 i_offset=0,
                 u_init=-14.0,
                 v_init=-70.0,
                 tau_syn_E=5.0,
                 tau_syn_I=5.0):

        # Instantiate the parent classes
        AbstractExponentialPopulationVertex.__init__(
            self,
            n_neurons=n_neurons,
            tau_syn_E=tau_syn_E,
            tau_syn_I=tau_syn_I,
            machine_time_step=machine_time_step)
        AbstractIzhikevichVertex.__init__(self,
                                          n_neurons,
                                          a=a,
                                          c=c,
                                          b=b,
                                          d=d,
                                          i_offset=i_offset,
                                          u_init=u_init,
                                          v_init=v_init)
        AbstractPopulationVertex.__init__(
            self,
            n_neurons=n_neurons,
            n_params=10,
            label=label,
            binary="IZK_curr_exp.aplx",
            constraints=constraints,
            max_atoms_per_core=IzhikevichCurrentExponentialPopulation.
            _model_based_max_atoms_per_core,
            machine_time_step=machine_time_step,
            timescale_factor=timescale_factor,
            spikes_per_second=spikes_per_second,
            ring_buffer_sigma=ring_buffer_sigma)
Esempio n. 8
0
    def __init__(self, n_neurons, machine_time_step, timescale_factor,
                 spikes_per_second, ring_buffer_sigma, constraints=None,
                 label=None, a=0.02, c=-65.0, b=0.2, d=2.0, i_offset=0,
                 u_init=-14.0, v_init=-70.0, tau_syn_E=5.0, tau_syn_I=5.0):

        # Instantiate the parent classes
        AbstractExponentialPopulationVertex.__init__(
            self, n_neurons=n_neurons, tau_syn_E=tau_syn_E,
            tau_syn_I=tau_syn_I, machine_time_step=machine_time_step)
        AbstractIzhikevichVertex.__init__(self, n_neurons, a=a, c=c, b=b, d=d,
                                          i_offset=i_offset, u_init=u_init,
                                          v_init=v_init)
        AbstractPopulationVertex.__init__(
            self, n_neurons=n_neurons, n_params=10, label=label,
            binary="IZK_curr_exp.aplx", constraints=constraints,
            max_atoms_per_core=IzhikevichCurrentExponentialPopulation.
            _model_based_max_atoms_per_core,
            machine_time_step=machine_time_step,
            timescale_factor=timescale_factor,
            spikes_per_second=spikes_per_second,
            ring_buffer_sigma=ring_buffer_sigma)