8 #ifndef IMPDOMINO_UTILITY_H
9 #define IMPDOMINO_UTILITY_H
11 #include <IMP/domino/domino_config.h>
19 #include <IMP/container/internal/ClosePairContainer.h>
24 #ifdef IMP_DOMINO_USE_IMP_RMF
25 # include <RMF/config.h>
26 # if RMF_HAS_DEPRECATED_BACKENDS
27 # include <RMF/HDF5/Group.h>
31 IMPKERNEL_BEGIN_NAMESPACE
34 IMPKERNEL_END_NAMESPACE
36 IMPDOMINO_BEGIN_NAMESPACE
38 class AssignmentsTable;
39 class AssignmentContainer;
40 class SubsetFilterTable;
51 class ParticleStatesTable;
55 const ParticleStatesTable *pst);
62 const Subset &s,
const ParticleStatesTable *pst,
const DependencyGraph &dg,
79 IMPDOMINOEXPORT
Ints get_index(
const ParticlesTemp &particles,
80 const Subset &subset,
const Subsets &excluded);
98 const ParticlesTemp &ps,
double max_distance,
99 ParticleStatesTable *pst);
104 ParticleStatesTable *pst);
107 IMPDOMINOEXPORT Assignment
109 ParticleStatesTable *pst);
123 "Dimensions of embeddings don't match.");
125 for (
unsigned int i = 0; i < a.size(); ++i) {
127 if (!metrics.empty() && metrics[i]) {
134 cur = (ea - eb).get_squared_magnitude();
137 if (d > square(max)) {
138 IMP_LOG_VERBOSE(
"Returning " << std::sqrt(d) <<
" > " << max <<
" for "
139 << a <<
" and " << b << std::endl);
144 << std::sqrt(d) << std::endl);
148 IMPDOMINO_END_NAMESPACE
A container for Singletons.
Used to hold a set of related restraints.
A Bayesian inference-based sampler.
IMP::Vector< Subset > Subsets
RestraintsTemp get_restraints(const Subset &s, const ParticleStatesTable *pst, const DependencyGraph &dg, RestraintSet *rs)
boost::graph DependencyGraph
Directed graph on the interactions between the various objects in the model.
Storage of a model, its restraints, constraints and particles.
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)
#define IMP_LOG_VERBOSE(expr)
Represent a subset of the particles being optimized.
IMP::Vector< IMP::WeakPointer< Restraint > > RestraintsTemp
A more IMP-like version of the std::vector.
ParticlePairsTemp get_possible_interactions(const ParticlesTemp &ps, double max_distance, ParticleStatesTable *pst)
Ints get_index(const ParticlesTemp &particles, const Subset &subset, const Subsets &excluded)
virtual algebra::VectorKD get_embedding(unsigned int i) const
Return an embedding of the state.
Ints get_partial_index(const 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.
A Bayesian inference-based sampler.
Classes to handle individual model particles. (Note that implementation of inline functions is in int...
Store a configuration of a subset.
IMP::Vector< ParticlePair > ParticlePairsTemp
#define IMP_USAGE_CHECK(expr, message)
A runtime test for incorrect usage of a class or method.
IMP::Vector< Int > Ints
Standard way to pass a bunch of Int values.
void load_particle_states(const Subset &s, const Assignment &ss, const ParticleStatesTable *pst)
Load the appropriate state for each particle in a Subset.
A Bayesian inference-based sampler.
Build dependency graphs on models.
double get_distance(const Line3D &s, const Vector3D &p)
Get closest distance between a line and a point.