def test_modeller_restraints(self): """Check using Modeller restraints in IMP""" e = modeller.environ() e.edat.dynamic_sphere = False e.libs.topology.read("${LIB}/top_heav.lib") e.libs.parameters.read("${LIB}/par.lib") modmodel = modeller.model(e) modmodel.build_sequence("GGCC") feat = modeller.features.distance(modmodel.atoms[0], modmodel.atoms[-1]) r = modeller.forms.gaussian(feature=feat, mean=10.0, stdev=1.0, group=modeller.physical.xy_distance) modmodel.restraints.add(r) m = IMP.kernel.Model() protein = IMP.modeller.ModelLoader(modmodel).load_atoms(m) atoms = IMP.atom.get_by_type(protein, IMP.atom.ATOM_TYPE) m.add_restraint(IMP.modeller.ModellerRestraints(m, modmodel, atoms)) assertSimilarModellerIMPScores(self, modmodel, protein) self.assertAlmostEqual(m.evaluate(False), 5.7837, delta=1e-3)
def test_imp_restraints(self): """Check using IMP restraints in Modeller""" e = modeller.environ() e.edat.dynamic_sphere = False e.libs.topology.read('${LIB}/top_heav.lib') e.libs.parameters.read('${LIB}/par.lib') modmodel = modeller.model(e) modmodel.build_sequence('GGCC') m = IMP.Model() protein = IMP.modeller.ModelLoader(modmodel).load_atoms(m) atoms = IMP.atom.get_by_type(protein, IMP.atom.ATOM_TYPE) r = IMP.core.DistanceRestraint(m, IMP.core.Harmonic(10.0, 1.0), atoms[0], atoms[-1]) sf = IMP.core.RestraintsScoringFunction([r]) t = modmodel.env.edat.energy_terms t.append(IMP.modeller.IMPRestraints(atoms, sf)) assertSimilarModellerIMPScores(self, sf, modmodel, protein) self.assertAlmostEqual(sf.evaluate(False), 9.80, delta=1e-2)
def test_modeller_restraints(self): """Check using Modeller restraints in IMP""" e = modeller.environ() e.edat.dynamic_sphere = False e.libs.topology.read('${LIB}/top_heav.lib') e.libs.parameters.read('${LIB}/par.lib') modmodel = modeller.model(e) modmodel.build_sequence('GGCC') feat = modeller.features.distance(modmodel.atoms[0], modmodel.atoms[-1]) r = modeller.forms.gaussian(feature=feat, mean=10.0, stdev=1.0, group=modeller.physical.xy_distance) modmodel.restraints.add(r) m = IMP.kernel.Model() protein = IMP.modeller.ModelLoader(modmodel).load_atoms(m) atoms = IMP.atom.get_by_type(protein, IMP.atom.ATOM_TYPE) m.add_restraint(IMP.modeller.ModellerRestraints(m, modmodel, atoms)) assertSimilarModellerIMPScores(self, modmodel, protein) self.assertAlmostEqual(m.evaluate(False), 5.7837, delta=1e-3)