IMP Reference Guide
develop.4f1ba46383,2024/09/07
The Integrative Modeling Platform
|
Fit a molecule inside its density by local or global FFT. More...
#include <IMP/multifit/fft_based_rigid_fitting.h>
Fit a molecule inside its density by local or global FFT.
Definition at line 43 of file fft_based_rigid_fitting.h.
Public Member Functions | |
FFTFittingOutput * | do_global_fitting (em::DensityMap *dmap, double density_threshold, atom::Hierarchy mol2fit, double angle_sampling_interval_rad, int num_fits_to_report, double max_clustering_translation, double max_clustering_angle, bool cluster_fits=true, int num_angle_per_voxel=1, const std::string &angles_filename="") |
Fit a molecule inside its density. More... | |
FFTFittingOutput * | do_local_fitting (em::DensityMap *dmap, double density_threshold, atom::Hierarchy mol2fit, double angle_sampling_interval_rad, double max_angle_sampling_rad, double max_translation, int num_fits_to_report, bool cluster_fits, int num_angle_per_voxel, double max_clustering_translation, double max_clustering_rotation, const std::string &angles_filename="") |
Locally fit a molecule inside its density. 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... | |
![]() | |
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 | |
void | copy_density_data (em::DensityMap *dmap, double *data_array) |
em::DensityMap * | crop_margin (em::DensityMap *in_map) |
FittingSolutionRecords | detect_top_fits (const internal::RotScoresVec &rot_scores, bool cluster_fits, double max_translation, double max_clustering_trans, double max_clustering_rotation) |
Detect the top fits. More... | |
void | fftw_translational_search (const multifit::internal::EulerAngles &rot, int i) |
void | get_unwrapped_index (int wx, int wy, int wz, int &ix, int &iy, int &iz) |
void | pad_resolution_map () |
void | prepare_kernels () |
void | prepare_lowres_map (em::DensityMap *dmap) |
void | prepare_poslist (em::DensityMap *dmap) |
void | prepare_poslist_flipped (em::DensityMap *dmap) |
void | prepare_probe (atom::Hierarchy mol2fit) |
![]() | |
Object (std::string name) | |
Construct an object with the given name. More... | |
virtual void | do_destroy () |
Protected Attributes | |
double | asmb_norm_ |
multifit::FittingSolutionRecords | best_fits_ |
FittingSolutionRecords | best_trans_per_rot_log_ |
algebra::Transformation3D | cen_trans_ |
atom::Hierarchy | copy_mol_ |
int | corr_mode_ |
internal::FFTScores | fft_scores_ |
internal::FFTScores | fft_scores_flipped_ |
internal::FFTWGrid< fftw_complex > | fftw_grid_hi_ |
internal::FFTWGrid< fftw_complex > | fftw_grid_lo_ |
unsigned long | fftw_nvox_c2r_ |
unsigned long | fftw_nvox_r2c_ |
double | fftw_pad_factor_ |
internal::FFTWPlan | fftw_plan_forward_hi_ |
internal::FFTWPlan | fftw_plan_forward_lo_ |
internal::FFTWPlan | fftw_plan_reverse_hi_ |
internal::FFTWGrid< double > | fftw_r_grid_mol_ |
double | fftw_scale_ |
unsigned int | fftw_zero_padding_extent_ [3] |
boost::scoped_array< double > | filtered_kernel_ |
unsigned | filtered_kernel_ext_ |
internal::RotScoresVec | fits_hash_ |
boost::scoped_array< double > | gauss_kernel_ |
unsigned int | gauss_kernel_ext_ |
unsigned long | gauss_kernel_nvox_ |
atom::Hierarchy | high_mol_ |
unsigned int | inside_num_ |
unsigned int | inside_num_flipped_ |
boost::scoped_array< double > | kernel_filter_ |
unsigned int | kernel_filter_ext_ |
double | low_cutoff_ |
Pointer< em::DensityMap > | low_map_ |
internal::FFTWGrid< double > | low_map_data_ |
algebra::Vector3D | map_cen_ |
unsigned | margin_ignored_in_conv_ [3] |
int | num_angle_per_voxel_ |
int | num_fits_reported_ |
unsigned long | nvox_ |
unsigned int | nx_ |
unsigned int | nx_half_ |
unsigned int | ny_ |
unsigned int | ny_half_ |
unsigned int | nz_ |
unsigned int | nz_half_ |
algebra::Vector3D | orig_cen_ |
atom::Hierarchy | orig_mol_ |
atom::Hierarchy | orig_mol_copy_ |
core::RigidBody | orig_rb_ |
double | origx_ |
double | origy_ |
double | origz_ |
double | resolution_ |
internal::FFTWGrid< double > | reversed_fftw_data_ |
multifit::internal::EulerAnglesList | rots_ |
Pointer< em::SampledDensityMap > | sampled_map_ |
internal::FFTWGrid< double > | sampled_map_data_ |
double | sampled_norm_ |
double | spacing_ |
|
protected |
Detect the top fits.
FFTFittingOutput* IMP::multifit::FFTFitting::do_global_fitting | ( | em::DensityMap * | dmap, |
double | density_threshold, | ||
atom::Hierarchy | mol2fit, | ||
double | angle_sampling_interval_rad, | ||
int | num_fits_to_report, | ||
double | max_clustering_translation, | ||
double | max_clustering_angle, | ||
bool | cluster_fits = true , |
||
int | num_angle_per_voxel = 1 , |
||
const std::string & | angles_filename = "" |
||
) |
Fit a molecule inside its density.
[in] | dmap | the density map to fit into |
[in] | density_threshold | voxels below this value will be treated as 0 |
[in] | mol2fit | the molecule to fit. The molecule has to be a rigid body |
[in] | angle_sampling_interval_rad | Sample every internal angles |
[in] | num_fits_to_report | number of top fits to report |
[in] | cluster_fits | if true the fits are clustered. Not recommended for refinement mode |
[in] | num_angle_per_voxel | number of rotations to save per voxel |
[in] | max_clustering_translation | cluster transformations whose translational distance is lower than the parameter |
[in] | max_clustering_angle | cluster transformations whose rotational distance is lower than the parameter |
[in] | angles_filename | a file containing angles to sample. if not specified, all angles are sampled |
FFTFittingOutput* IMP::multifit::FFTFitting::do_local_fitting | ( | em::DensityMap * | dmap, |
double | density_threshold, | ||
atom::Hierarchy | mol2fit, | ||
double | angle_sampling_interval_rad, | ||
double | max_angle_sampling_rad, | ||
double | max_translation, | ||
int | num_fits_to_report, | ||
bool | cluster_fits, | ||
int | num_angle_per_voxel, | ||
double | max_clustering_translation, | ||
double | max_clustering_rotation, | ||
const std::string & | angles_filename = "" |
||
) |
Locally fit a molecule inside its density.
[in] | dmap | the density map to fit into |
[in] | density_threshold | voxels below this value will be treated as 0 |
[in] | mol2fit | the molecule to fit. The molecule has to be a rigid body |
[in] | angle_sampling_interval_rad | sample the mol within the range of +- this angle |
[in] | max_angle_sampling_rad | |
[in] | max_translation | sample the mol within +- this translation is all directions |
[in] | num_fits_to_report | |
[in] | cluster_fits | if true the fits are clustered. Not recommended for refinement mode |
[in] | num_angle_per_voxel | number of rotations to save per voxel |
[in] | max_clustering_translation | cluster transformations whose translational distance is lower than the parameter |
[in] | max_clustering_rotation | cluster transformations whose rotational distance is lower than the parameter |
[in] | angles_filename | a file containing angles to sample. if not specified, all angles are sampled |
|
overridevirtual |
Get information about the module and version of the object.
Reimplemented from IMP::Object.
Definition at line 44 of file fft_based_rigid_fitting.h.