BALL  1.4.79
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Classes | Public Types | Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
BALL::GeometricFit Class Reference

#include <BALL/DOCKING/geometricFit.h>

Inheritance diagram for BALL::GeometricFit:
BALL::DockingAlgorithm

Classes

struct  Default
 
struct  Option
 
class  Peak_
 
class  RotationAngles_
 

Public Types

enum  ProteinIndex { PROTEIN_A = 1, PROTEIN_B = 2 }
 
enum  SurfaceType { CONNOLLY = 1, VAN_DER_WAALS = 2, FTDOCK = 3 }
 
- Public Types inherited from BALL::DockingAlgorithm
enum  DISPLAYMODE { NO_DISPLAY = 0, BEST_INTERMEDIATE_POSES = 1, ALL_INTERMEDIATE_POSES = 2, NO_INTERMEDIATE_POSES = 3 }
 

Public Member Functions

 GeometricFit ()
 
 GeometricFit (System &system1, System &system2)
 
 GeometricFit (Options &new_options)
 
 GeometricFit (System &system1, System &system2, Options &new_options)
 
 GeometricFit (const GeometricFit &geo_fit)
 
 ~GeometricFit ()
 
virtual void setup (System &system1, System &system2, Options &new_options)
 
virtual void setup (System &system1, System &system2)
 
void start ()
 
float getProgress () const
 
bool hasFinished () const
 
Vector3 getTranslation (Index con_num) const
 
Vector3 getOrientation (Index con_num) const
 
ConformationSet getConformationSet (Index total_number=0)
 
- Public Member Functions inherited from BALL::DockingAlgorithm
 DockingAlgorithm ()
 
 DockingAlgorithm (System &receptor, System &ligand, Options &new_options)
 
 DockingAlgorithm (System &receptor, System &ligand)
 
virtual ~DockingAlgorithm ()
 
virtual double dockLigand (AtomContainer &ligand, bool verbose=0)
 
ScoringFunctiongetScoringFunction ()
 
void setScoringFunction (ScoringFunction *scoring)
 
void processMultiMoleculeFile (string input_filename, string output_filename, double score_cutoff, vector< double > *min_atoms_in_ref_areas=0, String toolinfo="", String timestamp="")
 
void setLigand (AtomContainer *ligand)
 
const AtomContainergetLigand ()
 
const AtomContainergetReferenceLigand ()
 
const StringgetName ()
 
virtual void pause ()
 
virtual void proceed ()
 
virtual void abort ()
 
virtual void finish ()
 
virtual void reset ()
 
virtual bool wasAborted () const
 
virtual bool wasPaused () const
 
double calculateRMSD (const AtomContainer &S1, const AtomContainer &S2, int *no_matched_atoms=NULL)
 
const AtomContainergetVisualizationPose ()
 
void setVisualizationPose (const double &score)
 
double getVisualizationPoseScore ()
 
DISPLAYMODE getDisplayMode ()
 
void setDisplayMode (DISPLAYMODE display_mode)
 
void setMaxFps (int no)
 

Public Attributes

Options options
 
- Public Attributes inherited from BALL::DockingAlgorithm
Options options
 
bool new_pose_to_be_visualized
 

Protected Member Functions

void destroy_ ()
 
void findInsidePoints_ (System &system, ProteinIndex pro_idx)
 
void findConnollySurfacePoints_ (System &system, ProteinIndex pro_idx)
 
void findVanDerWaalsSurfacePoints_ (System &system, ProteinIndex pro_idx)
 
void findFTDockInsidePoints_ (System &system, ProteinIndex pro_idx)
 
void findFTDockSurfacePoints_ (System &system, ProteinIndex pro_idx)
 
Vector3 getMassCenter_ (System &system)
 
float getRadius_ (System &system)
 
void doPreTranslation_ (ProteinIndex pro_idx)
 
void initGridSizes_ ()
 
int optimizeGridSize_ (int raw_size)
 
void initFFTGrid_ (ProteinIndex pro_idx)
 
void makeFFTGrid_ (ProteinIndex pro_idx)
 
void getGlobalPeak_ (Peak_ *peak_list)
 
void changeProteinOrientation_ (System &system, Vector3 euler_ang)
 
void calcConjugate_ (ProteinIndex pro_idx)
 
void FFTGridMulti_ ()
 
Vector3 getTranslation_ (const Vector3 &mat_pos)
 
Vector3 getSeparation_ (const Vector3 &mat_pos)
 
- Protected Member Functions inherited from BALL::DockingAlgorithm
void mapLigandOntoReferenceLigand ()
 

Protected Attributes

FFT3DFFT_grid_a_
 
FFT3DFFT_grid_b_
 
float radius_a_
 
float radius_b_
 
Vector3 FFT_grid_lower_index_
 
Vector3 FFT_grid_upper_index_
 
Vector3 FFT_grid_lower_coord_
 
Vector3 FFT_grid_upper_coord_
 
Vector3 FFT_grid_size_index_
 
Vector3 pre_translation_a_
 
Vector3 pre_translation_b_
 
Vector3 FFT_grid_origin_
 
int current_round_
 
int total_round_
 
std::multiset< Peak_peak_set_
 
System system_backup_a_
 
System system_backup_b_
 
vector< Vector3translations_
 
vector< Vector3orientations_
 
- Protected Attributes inherited from BALL::DockingAlgorithm
Systemsystem1_
 
Systemsystem2_
 
bool pause_
 
bool abort_
 
bool finished_
 
AtomContainerreference_ligand_
 
String name_
 
AtomContainerreceptor_
 
AtomContainerligand_
 
ScoringFunctionscoring_function_
 
String parameter_filename_
 
String scoring_type_
 
DISPLAYMODE display_mode_
 
AtomContainer visualization_pose_
 
double visualization_pose_score_
 
double min_sec_between_visualizations_
 
Timer visualization_timer_
 

Additional Inherited Members

- Static Public Member Functions inherited from BALL::DockingAlgorithm
static void readOptionFile (String filename, Options &output_options, list< Constraint * > &output_constraints, const AtomContainer *ref_ligand=0)
 
static void writeOptionFile (String filename, Options &input_options, list< Constraint * > &input_constraints)
 
static Matrix4x4 mapCompounds (const AtomContainer &S1, const AtomContainer &S2, Size &no_matched_heavy_atoms, double &rmsd, double upper_bound, double lower_bound, double tolerance)
 
- Static Public Attributes inherited from BALL::DockingAlgorithm
static const String OPTION_FILE_PARAMETER_NAME
 
- Static Protected Member Functions inherited from BALL::DockingAlgorithm
static void writeSubcategories_ (Options &category, std::ostream &out)
 

Detailed Description

GeometricFit This class is derived from class DockingAlgorithm. Protein docking algorithm via geometric fit invented by Katchalski-Katzir, et al. (1992) is implemented in this class.

Definition at line 36 of file geometricFit.h.

Member Enumeration Documentation

Enumerator
PROTEIN_A 
PROTEIN_B 

Definition at line 258 of file geometricFit.h.

Enumerator
CONNOLLY 
VAN_DER_WAALS 
FTDOCK 

Definition at line 261 of file geometricFit.h.

Constructor & Destructor Documentation

BALL::GeometricFit::GeometricFit ( )

Default constructor Creates an empty GeometricFit object

BALL::GeometricFit::GeometricFit ( System system1,
System system2 
)

Constructor. Creates an instance of Geometric Fit and calls setup(system1, system2). The options used are the default options.

BALL::GeometricFit::GeometricFit ( Options new_options)

Constructor. Creates an instance of Geometric Fit and assigns the given options to the Geometric Fit object's options.

BALL::GeometricFit::GeometricFit ( System system1,
System system2,
Options new_options 
)

Constructor. Creates an instance of FDPB and calls setup(system1, system2, new_options)

BALL::GeometricFit::GeometricFit ( const GeometricFit geo_fit)

Copy Constructor.

BALL::GeometricFit::~GeometricFit ( )

Member Function Documentation

void BALL::GeometricFit::calcConjugate_ ( ProteinIndex  pro_idx)
protected
void BALL::GeometricFit::changeProteinOrientation_ ( System system,
Vector3  euler_ang 
)
protected
void BALL::GeometricFit::destroy_ ( )
protected
void BALL::GeometricFit::doPreTranslation_ ( ProteinIndex  pro_idx)
protected
void BALL::GeometricFit::FFTGridMulti_ ( )
protected
void BALL::GeometricFit::findConnollySurfacePoints_ ( System system,
ProteinIndex  pro_idx 
)
protected
void BALL::GeometricFit::findFTDockInsidePoints_ ( System system,
ProteinIndex  pro_idx 
)
protected
void BALL::GeometricFit::findFTDockSurfacePoints_ ( System system,
ProteinIndex  pro_idx 
)
protected
void BALL::GeometricFit::findInsidePoints_ ( System system,
ProteinIndex  pro_idx 
)
protected
void BALL::GeometricFit::findVanDerWaalsSurfacePoints_ ( System system,
ProteinIndex  pro_idx 
)
protected
ConformationSet BALL::GeometricFit::getConformationSet ( Index  total_number = 0)
virtual

Return the ranked conformations.

Reimplemented from BALL::DockingAlgorithm.

void BALL::GeometricFit::getGlobalPeak_ ( Peak_ peak_list)
protected
Vector3 BALL::GeometricFit::getMassCenter_ ( System system)
protected

Compute the center of mass of system

Vector3 BALL::GeometricFit::getOrientation ( Index  con_num) const

Return the orientation corresponding to conformation con_num.

float BALL::GeometricFit::getProgress ( ) const
virtual

Reimplemented from BALL::DockingAlgorithm.

float BALL::GeometricFit::getRadius_ ( System system)
protected

Compute the radius of the circumsphere of all atoms in system.

Vector3 BALL::GeometricFit::getSeparation_ ( const Vector3 mat_pos)
protected
Vector3 BALL::GeometricFit::getTranslation ( Index  con_num) const

Return the translation corresponding to conformation con_num.

Vector3 BALL::GeometricFit::getTranslation_ ( const Vector3 mat_pos)
protected
bool BALL::GeometricFit::hasFinished ( ) const
virtual

Reimplemented from BALL::DockingAlgorithm.

void BALL::GeometricFit::initFFTGrid_ ( ProteinIndex  pro_idx)
protected

Initialize the grid.

void BALL::GeometricFit::initGridSizes_ ( )
protected
void BALL::GeometricFit::makeFFTGrid_ ( ProteinIndex  pro_idx)
protected
int BALL::GeometricFit::optimizeGridSize_ ( int  raw_size)
protected

Optimize grid size for the FFTW. Certain combinations of certain powers are optimal for the fft algorithm, and this function tries to determine the smallest optimal combination large enough to accomodate the original data.

virtual void BALL::GeometricFit::setup ( System system1,
System system2,
Options new_options 
)
virtual

The setup routines.

Reimplemented from BALL::DockingAlgorithm.

virtual void BALL::GeometricFit::setup ( System receptor,
System ligand 
)
virtual

Alternative setup. Assigns systems 1 and two without changing the options for this DockingAlgorithm.

Reimplemented from BALL::DockingAlgorithm.

void BALL::GeometricFit::start ( )
virtual

Start the main loop of the algorithm.

Reimplemented from BALL::DockingAlgorithm.

Member Data Documentation

int BALL::GeometricFit::current_round_
protected

Definition at line 428 of file geometricFit.h.

FFT3D* BALL::GeometricFit::FFT_grid_a_
protected

Definition at line 405 of file geometricFit.h.

FFT3D* BALL::GeometricFit::FFT_grid_b_
protected

Definition at line 408 of file geometricFit.h.

Vector3 BALL::GeometricFit::FFT_grid_lower_coord_
protected

Definition at line 415 of file geometricFit.h.

Vector3 BALL::GeometricFit::FFT_grid_lower_index_
protected

Definition at line 413 of file geometricFit.h.

Vector3 BALL::GeometricFit::FFT_grid_origin_
protected

Definition at line 425 of file geometricFit.h.

Vector3 BALL::GeometricFit::FFT_grid_size_index_
protected

Definition at line 418 of file geometricFit.h.

Vector3 BALL::GeometricFit::FFT_grid_upper_coord_
protected

Definition at line 416 of file geometricFit.h.

Vector3 BALL::GeometricFit::FFT_grid_upper_index_
protected

Definition at line 414 of file geometricFit.h.

Options BALL::GeometricFit::options

The options for the algorithm.

Definition at line 334 of file geometricFit.h.

vector<Vector3> BALL::GeometricFit::orientations_
protected

Definition at line 442 of file geometricFit.h.

std::multiset<Peak_> BALL::GeometricFit::peak_set_
protected

Definition at line 434 of file geometricFit.h.

Vector3 BALL::GeometricFit::pre_translation_a_
protected

Definition at line 422 of file geometricFit.h.

Vector3 BALL::GeometricFit::pre_translation_b_
protected

Definition at line 423 of file geometricFit.h.

float BALL::GeometricFit::radius_a_
protected

Definition at line 410 of file geometricFit.h.

float BALL::GeometricFit::radius_b_
protected

Definition at line 411 of file geometricFit.h.

System BALL::GeometricFit::system_backup_a_
protected

Definition at line 437 of file geometricFit.h.

System BALL::GeometricFit::system_backup_b_
protected

Definition at line 438 of file geometricFit.h.

int BALL::GeometricFit::total_round_
protected

Definition at line 431 of file geometricFit.h.

vector<Vector3> BALL::GeometricFit::translations_
protected

Definition at line 441 of file geometricFit.h.