8 #ifndef IMPPMI_UTILITIES_H 
    9 #define IMPPMI_UTILITIES_H 
   11 #include <IMP/pmi/pmi_config.h> 
   19 #include <IMP/core/internal/dihedral_helpers.h> 
   21 #include <boost/lexical_cast.hpp> 
   23 IMPPMI_BEGIN_NAMESPACE
 
   31   for (
int n1=0;n1<nps;n1++){
 
   32     for (
int n2=n1+1;n2<nps;n2++){
 
   35       if (dist<dist_cutoff){
 
   40         rs->add_restraint(rx);
 
   51   return core::internal::dihedral(p1,p2,p3,p4,
nullptr,
nullptr,
nullptr,
nullptr);
 
   57   double mindist = -1.0 ;
 
   59   for (
unsigned int k1 = 0; k1 < m1.size(); ++k1) {
 
   60     for (
unsigned int k2 = 0; k2 < m2.size(); ++k2) {
 
   62        if (mindist < 0.0){mindist=dist;}
 
   63        if (mindist > dist){mindist=dist;}
 
   66   if (mindist < 0 ){mindist = 0;}
 
   71 inline Floats get_list_of_bipartite_minimum_sphere_distance(
const ParticlesTemps & pss) {
 
   73   for (
unsigned int k1 = 0; k1 < pss.size()-1; ++k1) {
 
   74     for (
unsigned int k2 = k1+1; k2 < pss.size(); ++k2) {
 
   77        double dist = IMP::pmi::get_bipartite_minimum_sphere_distance(xyzrs1,xyzrs2);
 
   78        mindistances.push_back(dist);
 
Restraint * create_restraint(Score *s, const typename Score::Argument &t, std::string name=std::string())
 
Distance restraint between two particles. 
 
IMP::Vector< Float > Floats
Standard way to pass a bunch of Float values. 
 
Score distance between two particle centers using a harmonic function. 
 
A decorator for Molecules. 
 
A smart pointer to a reference counted object. 
 
Object used to hold a set of restraints. 
 
#define IMP_NEW(Typename, varname, args)
Declare a ref counted pointer to a new object. 
 
Decorator for helping deal with a hierarchy of molecules. 
 
std::string get_molecule_name_and_copy(atom::Hierarchy h)
Walk up a PMI2 hierarchy/representations and get the "molname.copynum". 
 
The standard decorator for manipulating molecular structures. 
 
RestraintSet * create_elastic_network(const Particles &ps, Float dist_cutoff, Float strength)
Create an elastic network restraint set. 
 
A decorator for a particle representing an atom. 
 
A decorator for a particle with x,y,z coordinates. 
 
A class for storing lists of IMP items. 
 
A Score on the distance between a pair of particles. 
 
std::string get_molecule_name(Hierarchy h)
 
Array< 2, WeakPointer< Particle >, Particle * > ParticlePair
 
double Float
Basic floating-point value (could be float, double...) 
 
A decorator for keeping track of copies of a molecule. 
 
int get_copy_index(Hierarchy h)
Walk up the hierarchy to find the current copy index. 
 
Decorator for a sphere-like particle. 
 
double get_distance(const Surface &s, const XYZR &d)
Get distance from sphere to surface. 
 
Select a subset of a hierarchy. 
 
double get_distance(const Line3D &s, const Vector3D &p)
Get closest distance between a line and a point.