Show
Ignore:
Timestamp:
02/17/10 22:45:18 (2 years ago)
Author:
apdavison
Message:

Moved standard model (cells and synapses) machinery out of the common module into its own module

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • trunk/src/brian/simulator.py

    r711 r713  
    3232from itertools import izip 
    3333import scipy.sparse 
    34 from pyNN import common, cells, errors 
     34from pyNN import common, cells, errors, standardmodels, core 
    3535 
    3636mV = brian.mV 
     
    143143        return self._threshold.spiketimes 
    144144    def _set_spiketimes(self, spiketimes): 
    145         assert common.is_listlike(spiketimes) 
    146         if len(spiketimes) == 0 or common.is_number(spiketimes[0]): 
     145        assert core.is_listlike(spiketimes) 
     146        if len(spiketimes) == 0 or numpy.isscalar(spiketimes[0]): 
    147147            spiketimes = [spiketimes for i in xrange(len(self))] 
    148148        assert len(spiketimes) == len(self), "spiketimes (length %d) must contain as many iterables as there are cells in the group (%d)." % (len(spiketimes), len(self)) 
     
    279279                                        max_delay=state.max_delay) 
    280280        cell_parameters = cellparams or {} 
    281     elif isinstance(cellclass, type) and issubclass(cellclass, common.StandardCellType): 
     281    elif isinstance(cellclass, type) and issubclass(cellclass, standardmodels.StandardCellType): 
    282282        celltype = cellclass(cellparams) 
    283283        cell_parameters = celltype.parameters 
     
    469469        """ 
    470470        #print "connecting", source, "to", targets, "with weights", weights, "and delays", delays 
    471         if not common.is_listlike(targets): 
     471        if not core.is_listlike(targets): 
    472472            targets = [targets] 
    473473        if isinstance(weights, float): 
     
    585585        else: 
    586586            raise Exception("Setting parameters other than weight and delay not yet supported.") 
    587         if common.is_number(value): 
     587        if numpy.isscalar(value): 
    588588            for row in M.data: 
    589589                for i in range(len(row)): 
     
    593593            for (i,j) in address_gen: 
    594594                M[i,j] = value[i,j]*units 
    595         elif common.is_listlike(value): 
     595        elif core.is_listlike(value): 
    596596            assert len(value) == M.getnnz() 
    597597            address_gen = ((i,j) for i,row in enumerate(bc.W.rows) for j in row)