|
IMP
2.0.1
The Integrative Modeling Platform
|
Return all unordered pairs of particles taken from the SingletonContainer. More...
#include <IMP/container/AllPairContainer.h>
Inheritance diagram for IMP::container::AllPairContainer:Public Member Functions | |
| AllPairContainer (SingletonContainerAdaptor c, std::string name="AllPairContainer%1%") | |
| Get the individual particles from the passed SingletonContainer. | |
| template<class F > | |
| void | apply_generic (F *f) const |
| IMP_IMPLEMENT_PAIR_CONTAINER (AllPairContainer) | |
Public Member Functions inherited from IMP::kernel::PairContainer | |
| void | apply (const PairModifier *sm) const |
| Apply a SingletonModifier to the contents. | |
| void | apply_generic (const PairModifier *m) const |
| Just use apply() in the base class. | |
| bool | get_contains_particle_pair (ParticlePair v) const |
| This function is very slow and you should think hard about using it. More... | |
| virtual ParticleIndexPairs | get_indexes () const =0 |
| unsigned int | get_number_of_particle_pairs () const |
| ParticlePair | get_particle_pair (unsigned int i) const |
| ParticlePairsTemp | get_particle_pairs () const |
| virtual ParticleIndexPairs | get_range_indexes () const =0 |
Public Member Functions inherited from IMP::kernel::Container | |
| virtual void | do_after_evaluate (DerivativeAccumulator *accpt) |
| Reset changed status. | |
| ModelObjectsTemp | do_get_outputs () const |
| containers don't have outputs | |
| virtual ParticleIndexes | get_all_possible_indexes () const =0 |
| Get contained particles. More... | |
| ParticlesTemp | get_all_possible_particles () const |
| bool | get_is_changed () const |
| virtual bool | get_is_decomposable () const |
Public Member Functions inherited from IMP::kernel::ScoreState | |
| ScoreState (Model *m, std::string name="ScoreState %1%") | |
| void | after_evaluate (DerivativeAccumulator *accpt) |
| Do post evaluation work if needed. | |
| void | before_evaluate () |
| Force update of the structure. | |
| ContainersTemp | get_input_containers () const |
| ParticlesTemp | get_input_particles () const |
| ContainersTemp | get_output_containers () const |
| ParticlesTemp | get_output_particles () const |
Public Member Functions inherited from IMP::kernel::ModelObject | |
| ModelObject (Model *m, std::string name) | |
| ModelObjectsTemp | get_inputs () const |
| ModelObjectsTemps | get_interactions () const |
| Model * | get_model () const |
| ModelObjectsTemp | get_outputs () const |
Public Member Functions inherited from IMP::base::Object | |
| virtual void | clear_caches () |
| virtual IMP::base::VersionInfo | get_version_info () const =0 |
| Get information about the module and version of the object. | |
| void | set_check_level (CheckLevel l) |
| void | set_log_level (LogLevel l) |
| Set the logging level used in this object. More... | |
| void | set_was_used (bool tf) const |
| void | show (std::ostream &out=std::cout) const |
| const std::string & | get_name () const |
| void | set_name (std::string name) |
Related Functions | |
(Note that these are not member functions.) | |
| typedef IMP::base::Vector < IMP::base::WeakPointer < AllPairContainer > > | AllPairContainersTemp |
Related Functions inherited from IMP::kernel::PairContainer | |
| typedef IMP::base::Vector < IMP::base::WeakPointer < PairContainer > > | PairContainersTemp |
Related Functions inherited from IMP::kernel::Container | |
| typedef IMP::base::Vector < IMP::base::WeakPointer < Container > > | ContainersTemp |
Related Functions inherited from IMP::kernel::ScoreState | |
| typedef IMP::base::Vector < IMP::base::WeakPointer < ScoreState > > | ScoreStatesTemp |
Related Functions inherited from IMP::kernel::ModelObject | |
| typedef IMP::base::Vector < IMP::base::WeakPointer < ModelObject > > | ModelObjectsTemp |
Related Functions inherited from IMP::base::Object | |
| typedef IMP::base::Vector < IMP::base::WeakPointer < Object > > | ObjectsTemp |
Additional Inherited Members | |
Public Types inherited from IMP::kernel::PairContainer | |
| typedef ParticleIndexPair | ContainedIndexType |
| typedef ParticleIndexPairs | ContainedIndexTypes |
| typedef ParticlePair | ContainedType |
| typedef ParticlePairsTemp | ContainedTypes |
Protected Member Functions inherited from IMP::kernel::PairContainer | |
| PairContainer (Model *m, std::string name="PairContainer %1%") | |
| virtual void | do_apply (const PairModifier *sm) const =0 |
| virtual bool | do_get_provides_access () const |
Here is an example using this container to restrain all particles in a set to be within a a certain distance of one another.
## \example core/restrain_diameter.py
## An example restraining the diameter of a set of points. That is, the restraint penalizes conformations where there are two point more than a certain distance from one another.
import IMP
import IMP.core
import IMP.container
# This example restraints the diameter of a set of particles to be smaller than 10
diameter=10
m= IMP.Model()
lc= IMP.container.ListSingletonContainer(IMP.core.create_xyzr_particles(m, 50, 1.0))
h=IMP.core.HarmonicUpperBound(0,1)
r=IMP.core.DiameterRestraint(h, lc, diameter)
m.add_restraint(r)
# Set up optimizer
o= IMP.core.ConjugateGradients()
o.set_model(m)
max=0
for p0 in lc.get_particles():
for p1 in lc.get_particles():
d=IMP.core.get_distance(IMP.core.XYZ(p0),
IMP.core.XYZ(p1))
if d > max: max=d
print "The maximim distance is "+str(max)
IMP.base.set_log_level(IMP.base.SILENT)
o.optimize(100)
max=0
for p0 in lc.get_particles():
for p1 in lc.get_particles():
d=IMP.core.get_distance(IMP.core.XYZ(p0),
IMP.core.XYZ(p1))
if d > max: max=d
print "Afterwards, the maximim distance is "+str(max)
Definition at line 34 of file AllPairContainer.h.
|
related |
Pass a set of objects.
Definition at line 56 of file AllPairContainer.h.