IMP logo
IMP Reference Guide  develop.8b7eb21230,2024/06/24
The Integrative Modeling Platform
IMP::em2d::CollisionCrossSection Class Reference

Determine the collision cross section for some projections of particles. More...

#include <IMP/em2d/CollisionCrossSection.h>

+ Inheritance diagram for IMP::em2d::CollisionCrossSection:

Detailed Description

Determine the collision cross section for some projections of particles.

Definition at line 21 of file CollisionCrossSection.h.

Public Member Functions

 CollisionCrossSection (unsigned int n_projections, double resolution, double pixel_size, double projection_image_size)
 
double get_ccs () const
 Returns the collision cross section. More...
 
virtual std::string get_type_name () const override
 
virtual ::IMP::VersionInfo get_version_info () const override
 Get information about the module and version of the object. More...
 
void set_model_particles (const ParticlesTemp &ps)
 
void show (std::ostream &out) const
 Shows information about the class. More...
 
- Public Member Functions inherited from IMP::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)
 

Protected Member Functions

double get_projected_area (const cv::Mat &m) const
 Gets the sum of the values in the pixels with value > 0. More...
 
- Protected Member Functions inherited from IMP::Object
 Object (std::string name)
 Construct an object with the given name. More...
 
virtual void do_destroy ()
 

Protected Attributes

cv::Mat average_projection_
 
double collision_cross_section_
 
unsigned int img_size_
 
em2d::MasksManagerPtr masks_manager_
 
unsigned int n_projections_
 
bool particles_set_
 
double pixel_size_
 
em2d::RegistrationResults regs_
 
double resolution_
 

Constructor & Destructor Documentation

IMP::em2d::CollisionCrossSection::CollisionCrossSection ( unsigned int  n_projections,
double  resolution,
double  pixel_size,
double  projection_image_size 
)
Parameters
[in]n_projectionsNumber of projections to use for obtaining the CCS
[in]resolution"Resolution" to use to generate the projections.
[in]pixel_sizesize in A/pix to use when generating the projections
[in]projection_image_sizeThe size of the projections to generate; for this value you should request a size so that pixel_size * projection_image_size >= Max distance between two particles.

Member Function Documentation

double IMP::em2d::CollisionCrossSection::get_ccs ( ) const

Returns the collision cross section.

Before using this function you need to set the particles with set_model_particles()

Returns
The collision cross section
double IMP::em2d::CollisionCrossSection::get_projected_area ( const cv::Mat &  m) const
protected

Gets the sum of the values in the pixels with value > 0.

Parameters
[in]mThe projected area is computed for this matrix
Returns
Values of the area
virtual ::IMP::VersionInfo IMP::em2d::CollisionCrossSection::get_version_info ( ) const
overridevirtual

Get information about the module and version of the object.

Reimplemented from IMP::Object.

Definition at line 54 of file CollisionCrossSection.h.

void IMP::em2d::CollisionCrossSection::set_model_particles ( const ParticlesTemp ps)

Particles used to calculate their collision cross section

Parameters
psThe particles
void IMP::em2d::CollisionCrossSection::show ( std::ostream &  out) const

Shows information about the class.

Parameters
outStream used to show the information

Definition at line 51 of file CollisionCrossSection.h.


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