def test_create_with_slice_selector(self, sim=sim):
     p = sim.Population(11, sim.HH_cond_exp())
     mask1 = slice(0, 9, 1)
     pv1 = sim.PopulationView(parent=p, selector=mask1)
     assert_array_equal(pv1.all_cells, p.all_cells[0:9])
     mask2 = slice(3, 9, 2)
     pv2 = sim.PopulationView(parent=pv1, selector=mask2)
     self.assertEqual(pv2.parent, pv1)  # or would it be better to resolve the parent chain up to an actual Population?
     assert_array_equal(pv2.all_cells, numpy.array([p.all_cells[3], p.all_cells[5], p.all_cells[7]]))
 def test_create_with_index_array_selector(self, sim=sim):
     p = sim.Population(11, sim.IF_cond_alpha())
     mask = numpy.array([3, 5, 7])
     pv = sim.PopulationView(parent=p, selector=mask)
     assert_array_equal(pv.all_cells, numpy.array(
         [p.all_cells[3], p.all_cells[5], p.all_cells[7]]))
     assert_array_equal(pv.mask, mask)
Exemple #3
0
 def test_create_with_boolean_array_selector(self, sim=sim):
     p = sim.Population(11, sim.IF_cond_exp())
     mask = numpy.array([0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0], dtype=bool)
     pv = sim.PopulationView(parent=p, selector=mask)
     assert_array_equal(
         pv.all_cells,
         numpy.array([p.all_cells[3], p.all_cells[5], p.all_cells[7]]))
Exemple #4
0
 def test_get_positions(self, sim=sim):
     p = sim.Population(11, sim.IF_curr_exp())
     ppos = numpy.random.uniform(size=(3, 11))
     p._positions = ppos
     pv = sim.PopulationView(parent=p, selector=slice(3, 9, 2))
     assert_array_equal(pv.positions,
                        numpy.array([ppos[:, 3], ppos[:, 5], ppos[:, 7]]).T)
 def test_create_with_slice_selector(self, sim=sim):
     p = sim.Population(11, sim.IF_cond_exp())
     mask = slice(3, 9, 2)
     pv = sim.PopulationView(parent=p, selector=mask)
     self.assertEqual(pv.parent, p)
     self.assertEqual(pv.size, 3)
     self.assertEqual(pv.mask, mask)
     assert_array_equal(pv.all_cells, numpy.array([p.all_cells[3], p.all_cells[5], p.all_cells[7]]))
     #assert_array_equal(pv.local_cells, numpy.array([p.all_cells[3]]))
     #assert_array_equal(pv._mask_local, numpy.array([1,0,0], dtype=bool))
     self.assertEqual(pv.celltype, p.celltype)
     self.assertEqual(pv.first_id, p.all_cells[3])
     self.assertEqual(pv.last_id, p.all_cells[7])
 def test_structure_property(self, sim=sim):
     p = sim.Population(11, sim.SpikeSourcePoisson())
     mask = slice(3, 9, 2)
     pv = sim.PopulationView(parent=p, selector=mask)
     self.assertEqual(pv.structure, p.structure)