[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[IMP-dev] performance of Connectivity restraint



hi all,

I am writing a test case for adding hierarchy support in DOMINO, and it seems that the connectivity restraint works incredibly sssllllooowww between two proteins each of ~100 residues.

i=0
ub = IMP.core.HarmonicUpperBound(1.0, 0.1)
ss= IMP.core.DistancePairScore(ub)
r= IMP.core.ConnectivityRestraint(ss)
ps = IMP.Particles()
ps_refined=[]
for j in xrange(2):
ps_refined.append(IMP.core.hierarchy_get_leaves(self.h_particles[i+j]))
     ps.append(self.particles[i+j])
 for e in ps_refined:
      r.add_particles(e)

beg  = time.time()
r.evaluate(None)
end = time.time()
dt    = end - beg
print 'connectivity restraint calculation took %9.6f Seconds' % (dt)

The evaluate function takes ~20 seconds.

am I missing something here? is there a faster implementation using some external library ?

thanks,
Keren.