10 from __future__
import print_function
23 for x
in range(0, 3)])
27 m, [(ps[i[0]], ps[i[1]])
for i
in [(0, 1), (1, 2)]])
28 print([(m.get_particle_name(p[0]), m.get_particle_name(p[1]))
29 for p
in lpc.get_contents()])
31 r.set_maximum_score(.1)
38 pst.set_particle_states(m.get_particle(p), space)
40 m.set_log_level(IMP.SILENT)
47 print(
"Unable to display graph using 'dot'")
51 ds.set_restraints([r])
52 ds.set_scoring_function([r])
54 ds.set_log_level(IMP.SILENT)
59 def get_assignments(vertex):
60 on = mt.get_out_neighbors(vertex)
63 ret = ds.get_vertex_assignments(vertex)
70 a0 = get_assignments(on[0])
71 a1 = get_assignments(on[1])
72 ret = ds.get_vertex_assignments(vertex, a0, a1)
73 print(mt.get_vertex_name(vertex), [str(r)
for r
in ret])
78 get_assignments(mt.get_vertices()[-1])
84 def schedule_job(vertex):
87 on = mt.get_out_neighbors(vertex)
90 max_child_time = max(schedule_job(n), max_child_time)
91 my_time = max_child_time + 1
92 while len(schedule) < my_time + 1:
95 schedule[my_time].append(vertex)
99 schedule_job(mt.get_vertices()[-1])
100 print(
"The merging can be scheduled as", schedule)
Strings setup_from_argv(const Strings &argv, std::string description, std::string positional_description, int num_positional)
Various classes to hold sets of particles.
Sample best solutions using Domino.
Score distance between two particle centers using a harmonic function.
static XYZ setup_particle(Model *m, ParticleIndex pi)
Class for storing model, its restraints, constraints, and particles.
Store a list of ParticleIndexPairs.
ParticleIndexPairs get_indexes(const ParticlePairsTemp &ps)
Get the indexes from a list of particle pairs.
General purpose algebraic and geometric methods that are expected to be used by a wide variety of IMP...
MergeTree get_merge_tree(const SubsetGraph &junction_tree)
Class to handle individual particles of a Model object.
std::string show_graphviz(Graph g)
Applies a PairScore to each Pair in a list.
Divide-and-conquer inferential optimization in discrete space.