IMP logo
IMP Reference Guide  2.16.0
The Integrative Modeling Platform
complex_assembly.h
Go to the documentation of this file.
1 /**
2  * \file IMP/example/complex_assembly.h
3  * \brief A simple unary function.
4  *
5  * Copyright 2007-2021 IMP Inventors. All rights reserved.
6  *
7  */
8 
9 #ifndef IMPEXAMPLE_COMPLEX_ASSEMBLY_H
10 #define IMPEXAMPLE_COMPLEX_ASSEMBLY_H
11 
12 #include <IMP/example/example_config.h>
13 #include <IMP/base_types.h>
15 
16 IMPEXAMPLE_BEGIN_NAMESPACE
17 
18 /** Provide an example of a more involved protocol for assembly a complex. The
19  protocol adds the particles one at a time based on how well connected they
20  are to the already added particles (in the interaction graph). After each
21  addition, the assembly is optimized. The protocol seems to work at
22  assembling the residues of a protein from a truncated distance matrix.
23 */
24 IMPEXAMPLEEXPORT void optimize_assembly(
25  Model *m, const ParticleIndexes &components,
26  const RestraintsTemp &interactions,
27  const RestraintsTemp &other_restraints,
28  const algebra::BoundingBox3D &bb, PairScore *ev, double cutoff,
29  const PairPredicates &excluded = PairPredicates());
30 
31 IMPEXAMPLE_END_NAMESPACE
32 
33 #endif /* IMPEXAMPLE_COMPLEX_ASSEMBLY_H */
Basic types used by IMP.
IMP::Vector< IMP::Pointer< PairPredicate > > PairPredicates
Definition: base_types.h:128
BoundingBoxD< 3 > BoundingBox3D
Typedef for Python.
Definition: BoundingBoxD.h:176
IMP::Vector< IMP::WeakPointer< Restraint > > RestraintsTemp
Definition: base_types.h:87
A bounding box in D dimensions.
void optimize_assembly(Model *m, const ParticleIndexes &components, const RestraintsTemp &interactions, const RestraintsTemp &other_restraints, const algebra::BoundingBox3D &bb, PairScore *ev, double cutoff, const PairPredicates &excluded=PairPredicates())