def __init__(self, associated_neurons, duration=duration, spiking_rate=spiking_rate): """ Creates a PoissonGroup connected to the associated_neurons one-to-one. associated_neurons should come from the corresponding context. """ self.weight = normalvariate_vec(1, 0.1, len(associated_neurons)) self.duration = duration self.spiking_rate = spiking_rate self.associated_neurons = associated_neurons self.poisson_gen = PoissonGroup(len(associated_neurons), rates=0*Hz) # plastic synapses weight = normalvariate_vec(1, 0.1, len(associated_neurons)) self.poisson_con = Synapses(self.poisson_gen, associated_neurons, \ pre='Gexc_post += w', model='w : 1') self.poisson_con.connect_one_to_one(self.poisson_gen, associated_neurons) self.poisson_con.w[:,:] = weight
def __init__(self, name, associated_neurons, spiking_rate=spiking_rate, weight=None): """ Initialise a context, creating PoissonGroup connected to associated_neurons. Plasticity possible. """ self.name = name self.spiking_rate = spiking_rate self.associated_neurons = associated_neurons self.poisson_gen = PoissonGroup(len(associated_neurons), rates=0*Hz) if weight == None: # plastic synapses weight = normalvariate_vec(1, 0.1, len(associated_neurons)) self.poisson_con = Synapses(self.poisson_gen, associated_neurons, \ pre='Gexc_post += w', model='w : 1') self.poisson_con.connect_one_to_one(self.poisson_gen, associated_neurons) self.poisson_con.w[:,:] = weight else: # static connections self.poisson_con = IdentityConnection(self.poisson_gen, associated_neurons, \ 'Gexc', weight=weight)