IMP logo

IMP::em::SampledDensityMap Class Reference


Detailed Description

Class for sampling a density map from particles.
Inheritance diagram for IMP::em::SampledDensityMap:

Inheritance graph
[legend]

Public Member Functions

void calc_sampling_bounding_box (const emreal &x, const emreal &y, const emreal &z, const emreal &kdist, int &iminx, int &iminy, int &iminz, int &imaxx, int &imaxy, int &imaxz) const
KernelParametersget_kernel_params ()
FloatKey get_radius_key () const
const Particlesget_sampled_particles () const
FloatKey get_weight_key () const
const core::XYZRsget_xyzr_particles () const
virtual void resample ()
 Resampling beads on an EM grid.
 SampledDensityMap (const Particles &ps, emreal resolution, emreal voxel_size, IMP::FloatKey radius_key=IMP::core::XYZR::get_default_radius_key(), IMP::FloatKey mass_key=IMP::atom::Mass::get_mass_key(), int sig_cuttoff=3)
 Generatea a sampled density map from the particles.
 SampledDensityMap (const DensityHeader &header)
 The size of the map is determined by the header and the data is allocated.
 SampledDensityMap ()
 Creates a new density map for sampled map.
void set_particles (IMP::Particles &ps, IMP::FloatKey radius_key=IMP::core::XYZR::get_default_radius_key(), IMP::FloatKey mass_key=IMP::atom::Mass::get_mass_key())
 setting particles in case they were not set by the constructor

Protected Member Functions

IMP::algebra::BoundingBoxD< 3 > calculate_particles_bounding_box (const Particles &ps)
 Calculate the parameters of the particles bounding box.
int lower_voxel_shift (const emreal &loc, const emreal &kdist, const emreal &orig, int ndim) const
void set_header (const algebra::VectorD< 3 > &lower_bound, const algebra::VectorD< 3 > &upper_bound, emreal maxradius, emreal resolution, emreal voxel_size, int sig_offset)
int upper_voxel_shift (const emreal &loc, const emreal &kdist, const emreal &orig, int ndim) const

Protected Attributes

KernelParameters kernel_params_
 kernel handling
Particles ps_
FloatKey radius_key_
FloatKey weight_key_
FloatKey x_key_
core::XYZRs xyzr_
FloatKey y_key_
FloatKey z_key_

Friends

template<class T >
void IMP::internal::unref (T *)

Related Functions

(Note that these are not member functions.)

SampledDensityMapparticles2density (Particles &ps, Float resolution, Float apix, int sig_cutoff=3, const FloatKey &rad_key=IMP::core::XYZR::get_default_radius_key(), const FloatKey &weight_key=IMP::atom::Mass::get_mass_key())
 Resample a set of particles into a density grid.

Constructor & Destructor Documentation

IMP::em::SampledDensityMap::SampledDensityMap (  ) 

Creates a new density map for sampled map.

The header of the map is not determined and no data is being allocated

IMP::em::SampledDensityMap::SampledDensityMap ( const Particles ps,
emreal  resolution,
emreal  voxel_size,
IMP::FloatKey  radius_key = IMP::core::XYZR::get_default_radius_key(),
IMP::FloatKey  mass_key = IMP::atom::Mass::get_mass_key(),
int  sig_cuttoff = 3 
)

Generatea a sampled density map from the particles.

/param[in] ps particles with XYZ, radius and weight attributes /param[in] resolution half width the Gaussian /param[in] voxel_size /param[in] sig_cutoff Choose what should be the sigma cutoff for accurate sampling. It is used in two functions; (i) to determine the size of the grid dimensions (ii) to determine the voxels around the coords participating in the sampling procedure.


Member Function Documentation

IMP::algebra::BoundingBoxD<3> IMP::em::SampledDensityMap::calculate_particles_bounding_box ( const Particles ps  )  [protected]

Calculate the parameters of the particles bounding box.

Parameters:
[in] ps particles with XYZ, radius and weight attributes
Returns:
the particles bounding box

virtual void IMP::em::SampledDensityMap::resample (  )  [virtual]

Resampling beads on an EM grid.

Note:
The density of a particle p centered at pl at position gl is: $\frac{{Z}e^{\frac{{-0.5}({p_l}-{g_l})}{\sigma}}}{\sqrt{{2}{\pi}\sigma}}$ , such that ${Z}$ is the weight of the particle and ${\sigma}$ is defined to be ${0.425}$ times the resolution, to follow the 'full width at half maxima' criterion. For more details please refer to Topf et al, Structure, 2008.

Reimplemented in IMP::em::SurfaceShellDensityMap.


Friends And Related Function Documentation

SampledDensityMap * particles2density ( Particles ps,
Float  resolution,
Float  apix,
int  sig_cutoff = 3,
const FloatKey rad_key = IMP::core::XYZR::get_default_radius_key(),
const FloatKey weight_key = IMP::atom::Mass::get_mass_key() 
) [related]

Resample a set of particles into a density grid.

Each such particle should be have xyz radius and weight attributes

Parameters:
[in] ps the particles to sample
[in] resolution the resolution of the new sampled map
[in] apix the voxel size of the sampled map
[in] sig_cutoff sigma cutoff used in sampling
[in] rad_key the radius attribute key of the particles
[in] weight_key the weight attribute key of the particles
Returns:
the sampled density grid


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

Generated on Mon Mar 8 23:09:01 2010 for IMP by doxygen 1.5.8