def test_get_overlapping_ranges(self):
     for i in [100, 500]:
         for j in [.1, 1, 5, 10]:
             for k in range(0, 10):
                 ar = generate_positions(i, j)
                 idx = CS.computeIndicesDP(ar[:,0], ar[:,1])
                 aArray = hstack((ar, idx))
                 s = random.randint(0, i, 1)
                 e = int(1 + random.exponential(30, 1))
                 x = RQ.getOverlappingRanges(aArray[:,0], aArray[:,1], 
                                             aArray[:,2], aArray[:,3], s, 
                                             s + e + 1)
                 y = brute_force_search(aArray[:,0], aArray[:,1], aArray[:,2], 
                                        aArray[:,3], s, s + e)
                 assert(all(sort(x) == sort(y)))
 def test_get_overlapping_ranges(self):
     for i in [100, 500]:
         for j in [.1, 1, 5, 10]:
             for k in range(0, 10):
                 ar = generate_positions(i, j)
                 idx = CS.computeIndicesDP(ar[:, 0], ar[:, 1])
                 aArray = hstack((ar, idx))
                 s = random.randint(0, i, 1)
                 e = int(1 + random.exponential(30, 1))
                 x = RQ.getOverlappingRanges(aArray[:, 0], aArray[:, 1],
                                             aArray[:, 2], aArray[:, 3], s,
                                             s + e + 1)
                 y = brute_force_search(aArray[:, 0], aArray[:, 1],
                                        aArray[:, 2], aArray[:,
                                                             3], s, s + e)
                 assert (all(sort(x) == sort(y)))
def compare_implementations(size, coverage=1):
    NN = size * coverage
    ar = generate_positions(size, coverage)
    res = CS.computeIndices(ar[:, 0], ar[:, 1])
    resDP = CS.computeIndicesDP(ar[:, 0], ar[:, 1])
    assert (sum(res[:, 0:2] == resDP[:, 0:2]) == NN * 2)
def compare_implementations(size, coverage = 1):
    NN = size * coverage
    ar = generate_positions(size, coverage)
    res = CS.computeIndices(ar[:,0], ar[:,1])
    resDP = CS.computeIndicesDP(ar[:,0], ar[:,1])
    assert(sum(res[:,0:2] == resDP[:,0:2]) == NN*2)