Exemplo n.º 1
0
 def test_distance(self, qty=10):
     #sdm.initialize()
     for i in range(qty):
         a = Bitstring()
         d1 = sdm.distance(a)
         d2 = sdm.thread_distance(a)
         self.assertEqual(d1, d2)
Exemplo n.º 2
0
def sample_radius(rounds=1, verbose=0):
    if verbose > 0:
        print 'Initializing SDM'
    sdm.initialize()
    dimension = sdm.get_dimension()
    v = []
    for i in xrange(rounds):
        if verbose > 0:
            print 'Round #%d' % (i+1)
        addr = Bitstring()
        
        dist = sdm.distance(addr)

        if verbose > 0:
            print '  Processing results'
        w = [0]*(dimension+1)
        for d in dist:
            w[d] += 1
        u = [0]*(dimension+1)
        for d, n in enumerate(w):
            for j in range(d, dimension+1):
                u[j] += n
        v.append(u)
    sdm.free()
    return v
Exemplo n.º 3
0
 def test_mean_distance(self, qty=10):
     #sdm.initialize()
     for i in range(qty):
         a = Bitstring()
         arr = array(sdm.distance(a))
         value = abs(arr.mean()-sdm.get_dimension()/2.)/arr.std()
         self.assertTrue(value <= 1.5)
Exemplo n.º 4
0
def sample_radius(rounds=1, verbose=0):
    if verbose > 0:
        print 'Initializing SDM'
    sdm.initialize()
    dimension = sdm.get_dimension()
    v = []
    for i in xrange(rounds):
        if verbose > 0:
            print 'Round #%d' % (i + 1)
        addr = Bitstring()

        dist = sdm.distance(addr)

        if verbose > 0:
            print '  Processing results'
        w = [0] * (dimension + 1)
        for d in dist:
            w[d] += 1
        u = [0] * (dimension + 1)
        for d, n in enumerate(w):
            for j in range(d, dimension + 1):
                u[j] += n
        v.append(u)
    sdm.free()
    return v
Exemplo n.º 5
0
def sample():
    print 'Initializing SDM'
    sdm.initialize()
    dimension = sdm.get_dimension()
    addr = Bitstring()
    dist = sdm.distance(addr)
    sdm.free()
    return dist
Exemplo n.º 6
0
def sample():
    print 'Initializing SDM'
    sdm.initialize()
    dimension = sdm.get_dimension()
    addr = Bitstring()
    dist = sdm.distance(addr)
    sdm.free()
    return dist
Exemplo n.º 7
0
            sdm.free()
        m1 = self._memused()
        self.assertTrue(m1 < 40000)
<<<<<<< HEAD
>>>>>>> FETCH_HEAD
=======
>>>>>>> FETCH_HEAD

    def test_mean_distance(self, qty=10):
        sdm.initialize()
        for i in range(qty):
            a = Bitstring()
<<<<<<< HEAD
            arr = array(sdm.thread_distance(a))
=======
            arr = array(sdm.distance(a))
<<<<<<< HEAD
>>>>>>> FETCH_HEAD
=======
>>>>>>> FETCH_HEAD
            self.assertTrue(abs(arr.mean()-500) <= 1.5)
        sdm.free()

    def test_writeread(self, qty=10):
        sdm.initialize()
        for i in range(qty):
            a = Bitstring()
            sdm.thread_write(a, a)
            b = sdm.thread_read(a)
            self.assertEqual(a.distance_to(b), 0)
        sdm.free()