8 #ifndef IMPDOMINO_UTILITY_H
9 #define IMPDOMINO_UTILITY_H
11 #include <IMP/domino/domino_config.h>
19 #include <IMP/core/internal/CoreClosePairContainer.h>
24 #ifdef IMP_DOMINO_USE_IMP_RMF
25 #include <RMF/HDF5/Group.h>
28 IMPKERNEL_BEGIN_NAMESPACE
31 IMPKERNEL_END_NAMESPACE
33 IMPDOMINO_BEGIN_NAMESPACE
35 class AssignmentsTable;
36 class AssignmentContainer;
37 class SubsetFilterTable;
48 class ParticleStatesTable;
52 const ParticleStatesTable *pst);
59 const Subset &s,
const ParticleStatesTable *pst,
const DependencyGraph &dg,
76 IMPDOMINOEXPORT
Ints get_index(
const kernel::ParticlesTemp &particles,
77 const Subset &subset,
const Subsets &excluded);
94 const kernel::ParticlesTemp &ps,
double max_distance,
95 ParticleStatesTable *pst);
100 ParticleStatesTable *pst);
103 IMPDOMINOEXPORT Assignment
105 ParticleStatesTable *pst);
119 "Dimensions of embeddings don't match.");
121 for (
unsigned int i = 0; i < a.size(); ++i) {
123 if (!metrics.empty() && metrics[i]) {
130 cur = (ea - eb).get_squared_magnitude();
133 if (d > square(max)) {
134 IMP_LOG_VERBOSE(
"Returning " << std::sqrt(d) <<
" > " << max <<
" for "
135 << a <<
" and " << b << std::endl);
140 << std::sqrt(d) << std::endl);
144 IMPDOMINO_END_NAMESPACE
IMP::base::Vector< Subset > Subsets
boost::graph DependencyGraph
A directed graph on the interactions between the various objects in the model.
Ints get_index(const kernel::ParticlesTemp &particles, const Subset &subset, const Subsets &excluded)
Import IMP/kernel/SingletonContainer.h in the namespace.
Import IMP/kernel/RestraintSet.h in the namespace.
A Bayesian inference-based sampler.
IMP::base::Vector< IMP::base::WeakPointer< Restraint > > RestraintsTemp
Assignment get_nearest_assignment(const Subset &s, const algebra::VectorKD &embedding, ParticleStatesTable *pst)
Return the nearest assignment from an embedding.
double get_distance_if_smaller_than(const Subset &s, const Assignment &a, const Assignment &b, ParticleStatesTable *pst, const statistics::Metrics &metrics, double max)
kernel::RestraintsTemp get_restraints(const Subset &s, const ParticleStatesTable *pst, const DependencyGraph &dg, kernel::RestraintSet *rs)
#define IMP_LOG_VERBOSE(expr)
Represent a subset of the particles being optimized.
double get_distance(const Plane3D &pln, const Vector3D &p)
Return the distance between a plane and a point in 3D.
kernel::ParticlePairsTemp get_possible_interactions(const kernel::ParticlesTemp &ps, double max_distance, ParticleStatesTable *pst)
virtual algebra::VectorKD get_embedding(unsigned int i) const
Return an embedding of the state.
Ints get_partial_index(const kernel::ParticlesTemp &particles, const Subset &subset, const Subsets &excluded)
Base class for writing geometry to a file.
algebra::VectorKD get_embedding(const Subset &s, const Assignment &a, ParticleStatesTable *pst)
Return an embedding for an assignment.
IMP::base::Vector< ParticlePair > ParticlePairsTemp
Storage of a model, its restraints, constraints and particles.
Classes to handle individual model particles. (Note that implementation of inline functions in in int...
A Bayesian inference-based sampler.
Store a configuration of a subset.
IMP::kernel::Particle Particle
#define IMP_USAGE_CHECK(expr, message)
A runtime test for incorrect usage of a class or method.
void load_particle_states(const Subset &s, const Assignment &ss, const ParticleStatesTable *pst)
IMP::kernel::RestraintSet RestraintSet
A Bayesian inference-based sampler.
Import IMP/kernel/dependency_graph.h in the namespace.
IMP::base::Vector< Int > Ints
Standard way to pass a bunch of Int values.