Пример #1
0
 def test_rops2(self):
     """Checking k-close pairs pair score"""
     IMP.set_log_level(IMP.VERBOSE)
     m = IMP.Model()
     threshold = 5.0
     r0 = self._random_hierarchy(m)
     r1 = self._random_hierarchy(m)
     ls0 = IMP.core.get_leaves(r0)
     ls1 = IMP.core.get_leaves(r1)
     print(ls0)
     print(ls1)
     cpr = IMP.core.LeavesRefiner(r0.get_traits())
     lps = IMP._LogPairScore()
     k = 1
     cpps = IMP.core.KClosePairsPairScore(lps, cpr, k)
     cpps.evaluate_index(m, (r0, r1), None)
     print(str(len(lps.get_particle_pairs())) + " pairs", "in", k)
     for pp in lps.get_particle_pairs():
         print(pp[0].get_name(), pp[1].get_name())
     apd = [(IMP.core.get_distance(IMP.core.XYZR(p0),
                                   IMP.core.XYZR(p1)), (p0, p1))
            for p0 in ls0 for p1 in ls1]
     apd.sort(key=lambda a: a[0])
     # print apd
     for p in lps.get_particle_pairs():
         print(IMP.core.get_distance(IMP.core.XYZR(p[0]), IMP.core.XYZR(p[1])),\
             p[0].get_name(), p[1].get_name())
     for i in range(0, k):
         print("looking for", apd[i][0], apd[i][1][0].get_name(),
               apd[i][1][1].get_name())
         self.assertTrue(lps.get_contains(apd[i][1]))
     for i in range(k, len(apd)):
         print("not looking for", apd[i][0], apd[i][1][0].get_name(),
               apd[i][1][1].get_name())
         self.assertFalse(lps.get_contains(apd[i][1]))
Пример #2
0
 def test_rops2(self):
     """Checking k-close pairs pair score"""
     IMP.set_log_level(IMP.VERBOSE)
     m = IMP.Model()
     threshold = 5.0
     r0 = self._random_hierarchy(m)
     r1 = self._random_hierarchy(m)
     ls0 = IMP.core.get_leaves(r0)
     ls1 = IMP.core.get_leaves(r1)
     print(ls0)
     print(ls1)
     cpr = IMP.core.LeavesRefiner(r0.get_traits())
     lps = IMP._LogPairScore()
     k = 1
     cpps = IMP.core.KClosePairsPairScore(lps, cpr, k)
     cpps.evaluate_index(m, (r0, r1), None)
     print(str(len(lps.get_particle_pairs())) + " pairs", "in", k)
     for pp in lps.get_particle_pairs():
         print(pp[0].get_name(), pp[1].get_name())
     apd = [(IMP.core.get_distance(IMP.core.XYZR(p0),
                                   IMP.core.XYZR(p1)),
            (p0, p1)) for p0 in ls0 for p1 in ls1]
     apd.sort(key=lambda a: a[0])
     # print apd
     for p in lps.get_particle_pairs():
         print(IMP.core.get_distance(IMP.core.XYZR(p[0]), IMP.core.XYZR(p[1])),\
             p[0].get_name(), p[1].get_name())
     for i in range(0, k):
         print("looking for", apd[i][0], apd[i][1][0].get_name(), apd[i][1][1].get_name())
         self.assertTrue(lps.get_contains(apd[i][1]))
     for i in range(k, len(apd)):
         print("not looking for", apd[i][0], apd[i][1][0].get_name(), apd[i][1][1].get_name())
         self.assertFalse(lps.get_contains(apd[i][1]))
Пример #3
0
 def test_rops(self):
     """Checking close pairs pair score"""
     IMP.set_log_level(IMP.VERBOSE)
     m = IMP.Model()
     threshold = 5.0
     r0 = self._random_hierarchy(m)
     r1 = self._random_hierarchy(m)
     ls0 = IMP.core.get_leaves(r0)
     ls1 = IMP.core.get_leaves(r1)
     print(ls0)
     print(ls1)
     cpr = IMP.core.LeavesRefiner(r0.get_traits())
     lps = IMP._LogPairScore()
     cpps = IMP.core.ClosePairsPairScore(lps, cpr, threshold)
     cpps.evaluate_index(m, (r0, r1), None)
     print(str(len(lps.get_particle_pairs())) + " pairs", "in", threshold)
     for pp in lps.get_particle_pairs():
         print(pp[0].get_name(), pp[1].get_name())
     for l0 in ls0:
         for l1 in ls1:
             d0 = IMP.core.XYZR(l0.get_particle())
             d1 = IMP.core.XYZR(l1.get_particle())
             if (IMP.core.get_distance(d0, d1) < .95 * threshold):
                 print("looking for", l0.get_particle().get_name() + " " \
                     + \
                     l1.get_particle().get_name(), IMP.core.get_distance(
                         d0, d1))
                 self.assertTrue(
                     lps.get_contains(
                         (l0.get_particle(), l1.get_particle())))
             else:
                 self.assertFalse(
                     lps.get_contains(
                         (l0.get_particle(), l1.get_particle())))
Пример #4
0
 def test_rops(self):
     """Checking close pairs pair score"""
     IMP.set_log_level(IMP.VERBOSE)
     m = IMP.Model()
     threshold = 5.0
     r0 = self._random_hierarchy(m)
     r1 = self._random_hierarchy(m)
     ls0 = IMP.core.get_leaves(r0)
     ls1 = IMP.core.get_leaves(r1)
     print(ls0)
     print(ls1)
     cpr = IMP.core.LeavesRefiner(r0.get_traits())
     lps = IMP._LogPairScore()
     cpps = IMP.core.ClosePairsPairScore(lps, cpr, threshold)
     cpps.evaluate_index(m, (r0, r1), None)
     print(str(len(lps.get_particle_pairs())) + " pairs", "in", threshold)
     for pp in lps.get_particle_pairs():
         print(pp[0].get_name(), pp[1].get_name())
     for l0 in ls0:
         for l1 in ls1:
             d0 = IMP.core.XYZR(l0.get_particle())
             d1 = IMP.core.XYZR(l1.get_particle())
             if (IMP.core.get_distance(d0, d1) < .95 * threshold):
                 print("looking for", l0.get_particle().get_name() + " " \
                     + \
                     l1.get_particle().get_name(), IMP.core.get_distance(
                         d0, d1))
                 self.assertTrue(lps.get_contains((l0.get_particle(),
                                                   l1.get_particle())))
             else:
                 self.assertFalse(lps.get_contains((l0.get_particle(),
                                                    l1.get_particle())))