def testFreeRefineTrapezoidBoundaries(self):
     """Tests surplus based refine for Hash-Storage"""
     from pysgpp import GridStorage, HashGenerator
     from pysgpp import SurplusRefinementFunctor, HashRefinementBoundaries, DataVector
     
     s = GridStorage(2)
     g = HashGenerator()
     
     g.regularWithBoundaries(s, 1, True)
     
     d = DataVector(9)
     d[0] = 0.0
     d[1] = 0.0
     d[2] = 0.0
     d[3] = 0.0
     d[4] = 0.0
     d[5] = 0.0
     d[6] = 0.0
     d[7] = 0.0
     d[8] = 1.0
     
     f = SurplusRefinementFunctor(d)
     r = HashRefinementBoundaries()
     
     r.free_refine(s, f)
     
     self.failUnlessEqual(s.size(), 21)     
Example #2
0
    def testFreeRefineTrapezoidBoundaries(self):
        """Tests surplus based refine for Hash-Storage"""
        from pysgpp import GridStorage, HashGenerator
        from pysgpp import SurplusRefinementFunctor, HashRefinementBoundaries, DataVector

        s = GridStorage(2)
        g = HashGenerator()

        g.regularWithBoundaries(s, 1, True)

        d = DataVector(9)
        d[0] = 0.0
        d[1] = 0.0
        d[2] = 0.0
        d[3] = 0.0
        d[4] = 0.0
        d[5] = 0.0
        d[6] = 0.0
        d[7] = 0.0
        d[8] = 1.0

        f = SurplusRefinementFunctor(d)
        r = HashRefinementBoundaries()

        r.free_refine(s, f)

        self.failUnlessEqual(s.size(), 21)
    def testRegular2D(self):
        """Tests 2D grid generation"""
        from pysgpp import GridStorage, HashGenerator
        
        s = GridStorage(2)
        g = HashGenerator()
        
        g.regular(s, 2)
        
        self.failUnlessEqual(s.size(), 5)

        s = GridStorage(2)
        g.regular(s, 3)
        self.failUnlessEqual(s.size(), 17)
        
        from pysgpp import GridIndex
        
        i = GridIndex(2)
        i.set(0,1,1)
        i.set(1,1,1)
        
        self.failUnless(s.has_key(i))
        
        i.set(1,2,1)
        self.failUnless(s.has_key(i))
        
        i.set(0,2,3)
        self.failUnless(s.has_key(i))
        
        i.set(0,3,5)
        self.failIf(s.has_key(i))
        
        i.set(1,1,1)
        self.failUnless(s.has_key(i))
 def testRegular3D(self):
     """Tests 3D grid generation"""
     from pysgpp import GridStorage, HashGenerator
     
     s = GridStorage(3)
     g = HashGenerator()
     
     g.regular(s, 2)
     
     self.failUnlessEqual(s.size(), 7)
Example #5
0
    def testRegularTrapezoidBoundaries3D(self):
        """Tests 3D grid generation"""
        from pysgpp import GridStorage, HashGenerator

        s = GridStorage(3)
        g = HashGenerator()

        g.regularWithBoundaries(s, 2, True)

        self.failUnlessEqual(s.size(), 81)
 def testRegularTrapezoidBoundaries3D(self):
     """Tests 3D grid generation"""
     from pysgpp import GridStorage, HashGenerator
     
     s = GridStorage(3)
     g = HashGenerator()
     
     g.regularWithBoundaries(s, 2, True)
     
     self.failUnlessEqual(s.size(), 81)        
Example #7
0
    def testRegular3D(self):
        """Tests 3D grid generation"""
        from pysgpp import GridStorage, HashGenerator

        s = GridStorage(3)
        g = HashGenerator()

        g.regular(s, 2)

        self.failUnlessEqual(s.size(), 7)
Example #8
0
    def testSerialize(self):
        """Tests serialization"""
        from pysgpp import GridStorage, HashGenerator

        s = GridStorage(2)
        g = HashGenerator()

        g.regular(s, 2)

        str = s.serialize()

        self.failIfEqual(len(str), 0)

        s2 = GridStorage(str)

        self.failUnlessEqual(s.size(), s2.size())
    def testTop(self):
        """Tests top construction. Now superseded by GridIterator"""
        from pysgpp import GridIndex, GridStorage, HashGenerator
        s = GridStorage(1)
        g = HashGenerator()
        
        g.regular(s, 2)
        
        i = GridIndex(1)
        
        i.set(0,1,1)
        s.left_child(i, 0)

        s.top(i, 0)
        
        self.failUnlessEqual(i.get(0), [1,1])
Example #10
0
    def testTop(self):
        """Tests top construction. Now superseded by GridIterator"""
        from pysgpp import GridIndex, GridStorage, HashGenerator
        s = GridStorage(1)
        g = HashGenerator()

        g.regular(s, 2)

        i = GridIndex(1)

        i.set(0, 1, 1)
        s.left_child(i, 0)

        s.top(i, 0)

        self.failUnlessEqual(i.get(0), [1, 1])
 def testSerialize(self):
     """Tests serialization"""
     from pysgpp import GridStorage, HashGenerator
     
     s = GridStorage(2)
     g = HashGenerator()
     
     g.regular(s, 2)        
     
     str = s.serialize()
     
     self.failIfEqual(len(str), 0)
     
     s2 = GridStorage(str)
     
     self.failUnlessEqual(s.size(), s2.size())
    def testLevelZero(self):
        """Tests child construction. Superseded by GridIterator"""
        from pysgpp import GridIndex, GridStorage, HashGenerator

        s = GridStorage(1)
        g = HashGenerator()
        
        g.regular(s, 2)
        
        i = GridIndex(1)
        
        i.set(0,1,1)
        s.left_levelzero(i, 0)
        self.failUnlessEqual(i.get(0), [0,0])
        
        i.set(0,1,1)
        s.right_levelzero(i, 0)
        self.failUnlessEqual(i.get(0), [0,1])        
Example #13
0
    def testLevelZero(self):
        """Tests child construction. Superseded by GridIterator"""
        from pysgpp import GridIndex, GridStorage, HashGenerator

        s = GridStorage(1)
        g = HashGenerator()

        g.regular(s, 2)

        i = GridIndex(1)

        i.set(0, 1, 1)
        s.left_levelzero(i, 0)
        self.failUnlessEqual(i.get(0), [0, 0])

        i.set(0, 1, 1)
        s.right_levelzero(i, 0)
        self.failUnlessEqual(i.get(0), [0, 1])
 def testFreeRefine(self):
     """Tests surplus based refine for Hash-Storage"""
     from pysgpp import GridStorage, HashGenerator
     from pysgpp import SurplusRefinementFunctor, HashRefinement, DataVector
     
     s = GridStorage(2)
     g = HashGenerator()
     
     g.regular(s, 1)
     
     d = DataVector(1)
     d[0] = 1.0
     
     f = SurplusRefinementFunctor(d)
     r = HashRefinement()
     
     r.free_refine(s, f)
     
     self.failUnlessEqual(s.size(), 5)
Example #15
0
    def testFreeRefine(self):
        """Tests surplus based refine for Hash-Storage"""
        from pysgpp import GridStorage, HashGenerator
        from pysgpp import SurplusRefinementFunctor, HashRefinement, DataVector

        s = GridStorage(2)
        g = HashGenerator()

        g.regular(s, 1)

        d = DataVector(1)
        d[0] = 1.0

        f = SurplusRefinementFunctor(d)
        r = HashRefinement()

        r.free_refine(s, f)

        self.failUnlessEqual(s.size(), 5)
    def testSeq(self):
        """Tests sequence numbers"""
        from pysgpp import GridIndex, GridStorage, HashGenerator
        s = GridStorage(1)
        g = HashGenerator()
        
        g.regular(s, 2)
        
        i = GridIndex(1)
        
        i.set(0,1,1)
        s.left_child(i, 0)

        seq = s.seq(i)
        self.failIf(s.end(seq))

        s.left_child(i, 0)

        seq = s.seq(i)
        self.failUnless(s.end(seq))
Example #17
0
    def testSeq(self):
        """Tests sequence numbers"""
        from pysgpp import GridIndex, GridStorage, HashGenerator
        s = GridStorage(1)
        g = HashGenerator()

        g.regular(s, 2)

        i = GridIndex(1)

        i.set(0, 1, 1)
        s.left_child(i, 0)

        seq = s.seq(i)
        self.failIf(s.end(seq))

        s.left_child(i, 0)

        seq = s.seq(i)
        self.failUnless(s.end(seq))
Example #18
0
    def testRegular2D(self):
        """Tests 2D grid generation"""
        from pysgpp import GridStorage, HashGenerator

        s = GridStorage(2)
        g = HashGenerator()

        g.regular(s, 2)

        self.failUnlessEqual(s.size(), 5)

        s = GridStorage(2)
        g.regular(s, 3)
        self.failUnlessEqual(s.size(), 17)

        from pysgpp import GridIndex

        i = GridIndex(2)
        i.set(0, 1, 1)
        i.set(1, 1, 1)

        self.failUnless(s.has_key(i))

        i.set(1, 2, 1)
        self.failUnless(s.has_key(i))

        i.set(0, 2, 3)
        self.failUnless(s.has_key(i))

        i.set(0, 3, 5)
        self.failIf(s.has_key(i))

        i.set(1, 1, 1)
        self.failUnless(s.has_key(i))
    def testRegularTrapezoidBoundaries2D(self):
        """Tests 2D grid generation"""
        from pysgpp import GridStorage, HashGenerator
        
        s = GridStorage(2)
        g = HashGenerator()
        
        g.regularWithBoundaries(s, 2, True)
        
        self.failUnlessEqual(s.size(), 21)

        s = GridStorage(2)
        g.regularWithBoundaries(s, 3, True)
        self.failUnlessEqual(s.size(), 49)
        
        from pysgpp import GridIndex
        
        i = GridIndex(2)
        i.set(0,1,1)
        i.set(1,1,1)
        
        self.failUnless(s.has_key(i))
        
        i.set(1,2,1)
        self.failUnless(s.has_key(i))
        
        i.set(0,2,3)
        self.failUnless(s.has_key(i))
        
        i.set(0,3,5)
        self.failIf(s.has_key(i))
        
        i.set(1,1,1)
        self.failUnless(s.has_key(i))
        
        i.set(1,0,0)
        self.failUnless(s.has_key(i))
        
        i.set(0,0,0)
        self.failUnless(s.has_key(i))
    def testSerializeWithLeaf(self):
        """Tests serialization with Leaf"""
        from pysgpp import GridStorage, HashGenerator
        
        srcLeaf = []
        s = GridStorage(2)
        g = HashGenerator()
        
        g.regular(s, 2)
        
        for i in xrange(s.size()):
            srcLeaf.append(s.get(i).isLeaf())
        
        str = s.serialize()
        
        self.failIfEqual(len(str), 0)
        
        s2 = GridStorage(str)

        self.failUnlessEqual(s.size(), s2.size())
        
        for i in xrange(s.size()):
            self.failUnlessEqual(s2.get(i).isLeaf(), srcLeaf[i])        
    def testFreeRefineTrapezoidBoundaries(self):
        """Tests surplus based refine for Hash-Storage"""
        from pysgpp import GridStorage, HashGenerator
        from pysgpp import SurplusRefinementFunctor, HashRefinementBoundaries, DataVector
        
        s = GridStorage(2)
        g = HashGenerator()
        
        g.regularWithBoundaries(s, 2, False)
        
        d = DataVector(17)

        for i in xrange(len(d)):
            d[i] = 0.0
            
        d[12] = 1.0
        
        f = SurplusRefinementFunctor(d)
        r = HashRefinementBoundaries()
        
        r.free_refine(s, f)
        
        self.failUnlessEqual(s.size(), 21)          
Example #22
0
    def testFreeRefineTrapezoidBoundaries(self):
        """Tests surplus based refine for Hash-Storage"""
        from pysgpp import GridStorage, HashGenerator
        from pysgpp import SurplusRefinementFunctor, HashRefinementBoundaries, DataVector

        s = GridStorage(2)
        g = HashGenerator()

        g.regularWithBoundaries(s, 2, False)

        d = DataVector(17)

        for i in xrange(len(d)):
            d[i] = 0.0

        d[12] = 1.0

        f = SurplusRefinementFunctor(d)
        r = HashRefinementBoundaries()

        r.free_refine(s, f)

        self.failUnlessEqual(s.size(), 21)
Example #23
0
    def testSerializeWithLeaf(self):
        """Tests serialization with Leaf"""
        from pysgpp import GridStorage, HashGenerator

        srcLeaf = []
        s = GridStorage(2)
        g = HashGenerator()

        g.regular(s, 2)

        for i in xrange(s.size()):
            srcLeaf.append(s.get(i).isLeaf())

        str = s.serialize()

        self.failIfEqual(len(str), 0)

        s2 = GridStorage(str)

        self.failUnlessEqual(s.size(), s2.size())

        for i in xrange(s.size()):
            self.failUnlessEqual(s2.get(i).isLeaf(), srcLeaf[i])
Example #24
0
    def testRegularTrapezoidBoundaries2D(self):
        """Tests 2D grid generation"""
        from pysgpp import GridStorage, HashGenerator

        s = GridStorage(2)
        g = HashGenerator()

        g.regularWithBoundaries(s, 2, True)

        self.failUnlessEqual(s.size(), 21)

        s = GridStorage(2)
        g.regularWithBoundaries(s, 3, True)
        self.failUnlessEqual(s.size(), 49)

        from pysgpp import GridIndex

        i = GridIndex(2)
        i.set(0, 1, 1)
        i.set(1, 1, 1)

        self.failUnless(s.has_key(i))

        i.set(1, 2, 1)
        self.failUnless(s.has_key(i))

        i.set(0, 2, 3)
        self.failUnless(s.has_key(i))

        i.set(0, 3, 5)
        self.failIf(s.has_key(i))

        i.set(1, 1, 1)
        self.failUnless(s.has_key(i))

        i.set(1, 0, 0)
        self.failUnless(s.has_key(i))

        i.set(0, 0, 0)
        self.failUnless(s.has_key(i))