def testAllSampleFilesLoadable(self):
        filenames = [
             ("CablesIncluded.xml", {}),
             ("L23PyrFRB.morph.xml",  { 'dendrite_group': 'dendrite', 'soma_group':'soma' }),
             ("Simple.morph.xml", {}),
             ("SimpleNeuroML.xml", {}),
            ]


        for f, regions in filenames:
            full = os.path.join(TestMorphMLLoading.dir, f)
            m6 = MorphologyLoader.fromMorphML(open(full), regions=regions)
Beispiel #2
0
    def testAllSampleFilesLoadable(self):
        filenames = [
            ("CablesIncluded.xml", {}),
            ("L23PyrFRB.morph.xml", {
                'dendrite_group': 'dendrite',
                'soma_group': 'soma'
            }),
            ("Simple.morph.xml", {}),
            ("SimpleNeuroML.xml", {}),
        ]

        for f, regions in filenames:
            full = os.path.join(TestMorphMLLoading.dir, f)
            m6 = MorphologyLoader.fromMorphML(open(full), regions=regions)
Beispiel #3
0
    def testBasicLoad(self):

        f = StringIO.StringIO(TestSWC.swcSample)
        m = MorphologyLoader.fromSWC(src=f, morphname=None, regionNames=None)
        print m

        self.assertEqual(len(m), 6)
        self.assertEqual(len(m.get_regions()), 2)

        root = m.get_root_section()
        self.assertAlmostEqual(root.p_x,  1591.43)
        self.assertAlmostEqual(root.p_y,  53.87  )
        self.assertAlmostEqual(root.p_z,  20.48  )
        self.assertAlmostEqual(root.p_r,  0.15   )

        self.assertAlmostEqual(root.d_x,  1590.78)
        self.assertAlmostEqual(root.d_y,  50.61  )
        self.assertAlmostEqual(root.d_z,  20.48  )
        self.assertAlmostEqual(root.d_r,  5.80   )
Beispiel #4
0
    def testBasicLoad(self):

        f = StringIO.StringIO(TestSWC.swcSample)
        m = MorphologyLoader.fromSWC(src=f, morphname=None, regionNames=None)
        print m

        self.assertEqual(len(m), 6)
        self.assertEqual(len(m.get_regions()), 2)

        root = m.get_root_section()
        self.assertAlmostEqual(root.p_x, 1591.43)
        self.assertAlmostEqual(root.p_y, 53.87)
        self.assertAlmostEqual(root.p_z, 20.48)
        self.assertAlmostEqual(root.p_r, 0.15)

        self.assertAlmostEqual(root.d_x, 1590.78)
        self.assertAlmostEqual(root.d_y, 50.61)
        self.assertAlmostEqual(root.d_z, 20.48)
        self.assertAlmostEqual(root.d_r, 5.80)
Beispiel #5
0
    def testCablesIncluded(self):
        #print 'Testing MorphML'
        full = os.path.join(TestMorphMLLoading.dir, "CablesIncluded.xml")
        m = MorphologyLoader.fromMorphML(open(full))

        # The morphology has 6 segments and 2 regions:
        self.assertEqual(len(m), 6)
        self.assertEqual(len(m.get_regions()), 2)
        self.assertEqual(set([r.name for r in m.get_regions()]),
                         set(['somagroup', 'dendritegroup']))

        s = list(m)
        self.assertTrue(s[0].is_a_root_section())
        self.assertFalse(s[1].is_a_root_section())
        self.assertFalse(s[2].is_a_root_section())
        self.assertFalse(s[3].is_a_root_section())
        self.assertFalse(s[4].is_a_root_section())
        self.assertFalse(s[5].is_a_root_section())

        # Sections::
        # SECTION ID=0
        self.assertListAlmostEqual([s[0].p_x, s[0].p_y, s[0].p_z, s[0].p_r],
                                   [0.0, 0.0, 0.0, 5.0])
        self.assertListAlmostEqual([s[0].d_x, s[0].d_y, s[0].d_z, s[0].d_r],
                                   [10.0, 0.0, 0.0, 5.0])
        self.assertEqual(m.get_region('somagroup'), s[0].region)
        self.assertEqual(s[0].idtag, 'SomaSeg')
        root = s[0]

        # SECTION ID=1
        s1 = m.get_section(idtag='DendSeg1')
        self.assertEqual(s1.parent, root)
        self.assertEqual(m.get_region('dendritegroup'), s1.region)
        self.assertListAlmostEqual([s1.d_x, s1.d_y, s1.d_z, s1.d_r],
                                   [5.0, 10.0, 0.0, 2.5])

        # SECTION ID=2
        s2 = m.get_section(idtag='DendSeg2')
        self.assertEqual(s2.parent, s1)
        self.assertEqual(m.get_region('dendritegroup'), s2.region)
        self.assertListAlmostEqual([s2.d_x, s2.d_y, s2.d_z, s2.d_r],
                                   [5.0, 20.0, 0.0, 2.5])

        # SECTION ID=3
        s3 = m.get_section(idtag='DendSeg3')
        self.assertEqual(s3.parent, s2)
        self.assertEqual(m.get_region('dendritegroup'), s3.region)
        self.assertListAlmostEqual([s3.d_x, s3.d_y, s3.d_z, s3.d_r],
                                   [5.0, 30.0, 0.0, 2.5])

        # SECTION ID=4
        s4 = m.get_section(idtag='DendSeg4')
        self.assertEqual(s4.parent, root)
        self.assertEqual(m.get_region('dendritegroup'), s4.region)
        self.assertListAlmostEqual([s4.d_x, s4.d_y, s4.d_z, s4.d_r],
                                   [10.0, 0.0, 10.0, 1.5])

        # SECTION ID=5
        s5 = m.get_section(idtag='DendSeg5')
        self.assertEqual(s5.parent, s4)
        self.assertEqual(m.get_region('dendritegroup'), s5.region)
        self.assertListAlmostEqual([s5.d_x, s5.d_y, s5.d_z, s5.d_r],
                                   [10.0, 0.0, 20.0, 1.5])
    def testCablesIncluded(self):
        #print 'Testing MorphML'
        full = os.path.join(TestMorphMLLoading.dir, "CablesIncluded.xml")
        m = MorphologyLoader.fromMorphML(open(full))

        # The morphology has 6 segments and 2 regions:
        self.assertEqual(len(m), 6)
        self.assertEqual(len(m.get_regions()), 2)
        self.assertEqual(set([r.name for r in m.get_regions()]), set(['somagroup', 'dendritegroup']))


        s = list(m)
        self.assertTrue( s[0].is_a_root_section())
        self.assertFalse(s[1].is_a_root_section())
        self.assertFalse(s[2].is_a_root_section())
        self.assertFalse(s[3].is_a_root_section())
        self.assertFalse(s[4].is_a_root_section())
        self.assertFalse(s[5].is_a_root_section())

        # Sections::
        # SECTION ID=0
        self.assertListAlmostEqual(
                              [s[0].p_x, s[0].p_y, s[0].p_z, s[0].p_r],
                              [0.0, 0.0, 0.0, 5.0])
        self.assertListAlmostEqual(
                              [s[0].d_x, s[0].d_y, s[0].d_z, s[0].d_r],
                              [10.0, 0.0, 0.0, 5.0])
        self.assertEqual(m.get_region('somagroup'), s[0].region)
        self.assertEqual(s[0].idtag, 'SomaSeg')
        root =  s[0]


        # SECTION ID=1
        s1 = m.get_section(idtag = 'DendSeg1')
        self.assertEqual(s1.parent, root)
        self.assertEqual(m.get_region('dendritegroup'), s1.region)
        self.assertListAlmostEqual(
                              [s1.d_x, s1.d_y, s1.d_z, s1.d_r],
                              [5.0, 10.0, 0.0, 2.5])

        # SECTION ID=2
        s2 = m.get_section(idtag = 'DendSeg2')
        self.assertEqual(s2.parent, s1)
        self.assertEqual(m.get_region('dendritegroup'), s2.region)
        self.assertListAlmostEqual(
                              [s2.d_x, s2.d_y, s2.d_z, s2.d_r],
                              [5.0, 20.0, 0.0, 2.5])


        # SECTION ID=3
        s3 = m.get_section(idtag = 'DendSeg3')
        self.assertEqual(s3.parent, s2)
        self.assertEqual(m.get_region('dendritegroup'), s3.region)
        self.assertListAlmostEqual(
                              [s3.d_x, s3.d_y, s3.d_z, s3.d_r],
                              [5.0, 30.0, 0.0, 2.5])


        # SECTION ID=4
        s4 = m.get_section(idtag = 'DendSeg4')
        self.assertEqual(s4.parent, root)
        self.assertEqual(m.get_region('dendritegroup'), s4.region)
        self.assertListAlmostEqual(
                              [s4.d_x, s4.d_y, s4.d_z, s4.d_r],
                              [10.0, 0.0, 10.0, 1.5])

        # SECTION ID=5
        s5 = m.get_section(idtag = 'DendSeg5')
        self.assertEqual(s5.parent, s4)
        self.assertEqual(m.get_region('dendritegroup'), s5.region)
        self.assertListAlmostEqual(
                              [s5.d_x, s5.d_y, s5.d_z, s5.d_r],
                              [10.0, 0.0, 20.0, 1.5])