IMP  2.4.0
The Integrative Modeling Platform
Public Member Functions | List of all members
IMP::core::CentroidOfRefined Class Reference

#include <IMP/core/CentroidOfRefined.h>

+ Inheritance diagram for IMP::core::CentroidOfRefined:

Detailed Description

Set the coordinates (or any float keys) of the particle to be the centroid of the corresponding keys in a set of fine particles. An exception is thrown if there are no refined particles. The weight FloatKey can be used to reweight the centroid computation, or it can be set to FloatKey() and then all the weights will be equal to 1.0.

See Also
CoverRefined
DerivativesToRefined
DerivativesFromRefined

Definition at line 33 of file CentroidOfRefined.h.

Public Member Functions

 CentroidOfRefined (Refiner *r, FloatKey weight=FloatKey(), FloatKeys ks=XYZ::get_xyz_keys())
 Set the keys ks to be the average of the refined particles. More...
 
virtual void apply_index (kernel::Model *m, kernel::ParticleIndex pi) const
 
virtual void apply_indexes (kernel::Model *m, const kernel::ParticleIndexes &o, unsigned int lower_bound, unsigned int upper_bound) const
 
virtual kernel::ModelObjectsTemp do_get_inputs (kernel::Model *m, const kernel::ParticleIndexes &pis) const
 
virtual kernel::ModelObjectsTemp do_get_outputs (kernel::Model *m, const kernel::ParticleIndexes &pis) const
 
virtual std::string get_type_name () const
 
virtual ::IMP::base::VersionInfo get_version_info () const
 Get information about the module and version of the object. More...
 
- Public Member Functions inherited from IMP::kernel::SingletonModifier
 SingletonModifier (std::string name="SingletonModifier %1%")
 
virtual void apply (kernel::Particle *vt) const
 
- Public Member Functions inherited from IMP::kernel::ParticleInputs
virtual ContainersTemp get_input_containers (Particle *p) const
 
virtual ParticlesTemp get_input_particles (Particle *p) const
 
ModelObjectsTemp get_inputs (kernel::Model *m, const ParticleIndexes &pis) const
 
- Public Member Functions inherited from IMP::kernel::ParticleOutputs
virtual ContainersTemp get_output_containers (Particle *p) const
 
virtual ParticlesTemp get_output_particles (Particle *p) const
 
ModelObjectsTemp get_outputs (kernel::Model *m, const ParticleIndexes &pis) const
 
- Public Member Functions inherited from IMP::base::Object
virtual void clear_caches ()
 
CheckLevel get_check_level () const
 
LogLevel get_log_level () const
 
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)
 

Additional Inherited Members

- Public Types inherited from IMP::kernel::SingletonModifier
typedef kernel::ParticleArgument
 
typedef kernel::ParticleIndex IndexArgument
 
- Protected Member Functions inherited from IMP::base::Object
 Object (std::string name)
 Construct an object with the given name. More...
 
virtual void do_destroy ()
 

Constructor & Destructor Documentation

IMP::core::CentroidOfRefined::CentroidOfRefined ( Refiner r,
FloatKey  weight = FloatKey(),
FloatKeys  ks = XYZ::get_xyz_keys() 
)

Set the keys ks to be the average of the refined particles.

Parameters
rrefiner used to retrieve the set of fine particles
weighta key used to reweight the contribution of each fine particle to the centroid (eg, mass). In the centroid, this key will be set by apply_index() to the sum of all weights. A default weight of 1.0 is used if weight equals FloatKey().
ksthe keys over which the centroid is calculated

Member Function Documentation

virtual void IMP::core::CentroidOfRefined::apply_index ( kernel::Model m,
kernel::ParticleIndex  pi 
) const
virtual

Compute the weighted centroid of the keys of refine particles (as passed in the constructor), and store the centroid values in the corresponding keys of particle pi. The sum of all weight of the refined particles are stored in the corresponding weight key of pi (it is assumed that pi has this key).

Parameters
mthe model of pi
pithe centroid particle

Reimplemented from IMP::kernel::SingletonModifier.

virtual void IMP::core::CentroidOfRefined::apply_indexes ( kernel::Model m,
const kernel::ParticleIndexes o,
unsigned int  lower_bound,
unsigned int  upper_bound 
) const
virtual

Apply the function to a collection of kernel::ParticlesTemp If bounds are passed, only apply to ones between the upper and lower bounds.

Reimplemented from IMP::kernel::SingletonModifier.

Definition at line 70 of file CentroidOfRefined.h.

virtual kernel::ModelObjectsTemp IMP::core::CentroidOfRefined::do_get_inputs ( kernel::Model m,
const kernel::ParticleIndexes pis 
) const
virtual

Overload this method to specify the inputs.

Reimplemented from IMP::kernel::ParticleInputs.

virtual kernel::ModelObjectsTemp IMP::core::CentroidOfRefined::do_get_outputs ( kernel::Model m,
const kernel::ParticleIndexes pis 
) const
virtual

Overload this method to specify the outputs.

Reimplemented from IMP::kernel::ParticleOutputs.

virtual ::IMP::base::VersionInfo IMP::core::CentroidOfRefined::get_version_info ( ) const
virtual

Get information about the module and version of the object.

Reimplemented from IMP::base::Object.

Definition at line 72 of file CentroidOfRefined.h.


The documentation for this class was generated from the following file: