Structural Bioinformatics Library
Template C++ / Python API for developping structural bioinformatics applications.
T_Exploration_algorithm_basins_hopping< ELSampleType, SampleSelector, SampleExtender > Class Template Reference

Model of exploration algorithm for basins hopping. More...

#include <Exploration_algorithm_basins_hopping.hpp>

Public Types

typedef T_Exploration_algorithm_basins_hopping< ELSampleType, SampleSelector, SampleExtender > Self
 
typedef SampleSelector Sample_selector
 
typedef SampleExtender Sample_extender
 
typedef ELSampleType EL_sample_type
 
typedef SBL::Models::T_Conformation_traits< ELSampleType > Conformation_traits
 
typedef Conformation_traits::FT FT
 
typedef std::vector< EL_sample_type * > Samples_container
 
typedef unsigned EL_sample_rep
 

Public Member Functions

 T_Exploration_algorithm_basins_hopping (void)
 
Sample_selectorget_selector (void)
 
EL_sample_typeget_last_generated_sample (void)
 
EL_sample_rep get_selection (void) const
 
void set_selection (EL_sample_rep s)
 
Sample_extenderget_extender (void)
 
unsigned get_number_of_samples (void) const
 
EL_sample_rep get_last_sample (void) const
 
EL_sample_typeget_last_minimum (void)
 
EL_sample_typeget_sample (EL_sample_rep s)
 
unsigned get_number_of_connected_components (void) const
 
template<class ExplorationParameters >
bool insert (ExplorationParameters &parameters, EL_sample_type *s)
 
template<class OutputIterator >
OutputIterator get_samples (OutputIterator out) const
 
template<class OutputIterator >
OutputIterator get_minima (OutputIterator out) const
 

Detailed Description

template<class ELSampleType, class SampleSelector, class SampleExtender>
class T_Exploration_algorithm_basins_hopping< ELSampleType, SampleSelector, SampleExtender >

Model of exploration algorithm for basins hopping.

It implements the basins hopping algorithm as an exploration algorithm. It maintains a database of conformations using a simple vector. When a conformation is about to be inserted, the selector engine first checks if it already exists: if not, it is inserted in the vector. Note that due to the extender engine of basins hopping, all conformations that are inserted are minima.

Template Parameters
ELSampleTypeRepresentation of an elevated conformation (has to define a method get_point returning its representation as a D-dimensional point).
SampleSelectorSelector engine used with the base TRRT algorithm – see T_Sample_selector_for_BH .
SampleExtenderExtender engine used with the base TRRT algorithm – see T_Sample_extender_for_BH .

Member Typedef Documentation

◆ Conformation_traits

◆ EL_sample_rep

typedef unsigned EL_sample_rep

◆ EL_sample_type

typedef ELSampleType EL_sample_type

◆ FT

typedef Conformation_traits::FT FT

◆ Sample_extender

typedef SampleExtender Sample_extender

◆ Sample_selector

typedef SampleSelector Sample_selector

◆ Samples_container

typedef std::vector<EL_sample_type*> Samples_container

◆ Self

typedef T_Exploration_algorithm_basins_hopping<ELSampleType, SampleSelector, SampleExtender> Self

Constructor & Destructor Documentation

◆ T_Exploration_algorithm_basins_hopping()

Member Function Documentation

◆ get_extender()

Sample_extender& get_extender ( void  )
inline

◆ get_last_generated_sample()

EL_sample_type* get_last_generated_sample ( void  )
inline

◆ get_last_minimum()

EL_sample_type* get_last_minimum ( void  )
inline

◆ get_last_sample()

EL_sample_rep get_last_sample ( void  ) const
inline

◆ get_minima()

OutputIterator get_minima ( OutputIterator  out) const
inline

◆ get_number_of_connected_components()

unsigned get_number_of_connected_components ( void  ) const
inline

◆ get_number_of_samples()

unsigned get_number_of_samples ( void  ) const
inline

◆ get_sample()

EL_sample_type* get_sample ( EL_sample_rep  s)
inline

◆ get_samples()

OutputIterator get_samples ( OutputIterator  out) const
inline

◆ get_selection()

EL_sample_rep get_selection ( void  ) const
inline

◆ get_selector()

Sample_selector& get_selector ( void  )
inline

◆ insert()

bool insert ( ExplorationParameters &  parameters,
EL_sample_type s 
)
inline

◆ set_selection()

void set_selection ( EL_sample_rep  s)
inline