Rosetta  2021.16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
core::pack::annealer::MultiCoolAnnealer Class Reference

#include <MultiCoolAnnealer.hh>

Inheritance diagram for core::pack::annealer::MultiCoolAnnealer:
Inheritance graph
[legend]

Public Member Functions

 MultiCoolAnnealer (task::PackerTaskCOP task, utility::vector0< int > &rot_to_pack, ObjexxFCL::FArray1D_int &bestrotamer_at_seqpos, core::PackerEnergy &bestenergy, bool start_with_current, interaction_graph::AnnealableGraphBaseOP ig, FixbbRotamerSetsCOP rotamer_sets, ObjexxFCL::FArray1_int &current_rot_index, bool calc_rot_freq, ObjexxFCL::FArray1D< core::PackerEnergy > &rot_freq)
 
 MultiCoolAnnealer (task::PackerTaskCOP task, ObjexxFCL::FArray1D_int &bestrotamer_at_seqpos, core::PackerEnergy &bestenergy, bool start_with_current, interaction_graph::AnnealableGraphBaseOP ig, FixbbRotamerSetsCOP rotamer_sets, ObjexxFCL::FArray1_int &current_rot_index, bool calc_rot_freq, ObjexxFCL::FArray1D< core::PackerEnergy > &rot_freq)
 
 ~MultiCoolAnnealer () override
 virtual destructor More...
 
void run () override
 sim_annealing for fixed backbone design mode More...
 
- Public Member Functions inherited from core::pack::annealer::RotamerAssigningAnnealer
 RotamerAssigningAnnealer (int num_of_rot_to_pack, ObjexxFCL::FArray1D_int &bestrotamer_at_seqpos, core::PackerEnergy &bestenergy, bool start_with_current, FixbbRotamerSetsCOP p_rotamer_set, ObjexxFCL::FArray1_int &current_rot_index, bool calc_rot_freq, ObjexxFCL::FArray1D< core::PackerEnergy > &rot_freq)
 
 RotamerAssigningAnnealer (utility::vector0< int > &rot_to_pack, int num_of_rot_to_pack, ObjexxFCL::FArray1D_int &bestrotamer_at_seqpos, core::PackerEnergy &bestenergy, bool start_with_current, FixbbRotamerSetsCOP p_rotamer_set, ObjexxFCL::FArray1_int &current_rot_index, bool calc_rot_freq, ObjexxFCL::FArray1D< core::PackerEnergy > &rot_freq)
 
 ~RotamerAssigningAnnealer () override
 
int pick_a_rotamer (int cycle)
 pick a rotamer from a list More...
 
int pick_a_rotamer_for_node (int node) const
 
void set_assign_state_to_all_nodes_immediately (bool setting)
 
- Public Member Functions inherited from core::pack::annealer::SimAnnealerBase
 SimAnnealerBase (int num_rots_to_pack, ObjexxFCL::FArray1D_int &bestrotamer_at_seqpos, core::PackerEnergy &bestenergy, bool start_with_current, ObjexxFCL::FArray1_int &current_rot_index, bool calc_rot_freq, ObjexxFCL::FArray1D< core::PackerEnergy > &rot_freq)
 
 ~SimAnnealerBase () override
 virtual destructor More...
 
bool pass_metropolis (core::PackerEnergy delta_energy) const
 accept or reject movement based on Metropolis criterion if this is the first movement, accept by default. More...
 
bool pass_metropolis (core::PackerEnergy previous_energy, core::PackerEnergy delta_energy) const
 
void setup_iterations ()
 
void setup_iterations (const int &num_of_state_changes)
 
int get_outeriterations () const
 get the iterations number for simulation More...
 
int get_inneriterations () const
 
void setup_temperature (const int &nn)
 
void setup_temperature (const ObjexxFCL::FArray1D< core::PackerEnergy > &loopenergy, int nn)
 
void set_temperature (core::PackerEnergy new_temperature)
 
core::PackerEnergy get_temperature () const
 
void set_to_quench ()
 
void set_not_to_quench ()
 
bool quench () const
 
bool get_start_with_current () const
 
bool get_calc_rot_freq () const
 
void set_disallow_quench (bool const &setting)
 
void set_hightemp (core::PackerEnergy)
 
void set_lowtemp (core::PackerEnergy)
 
void scale_outeriterations (core::PackerEnergy const so)
 
void scale_inneriterations (core::PackerEnergy const si)
 
AnnealerObserverOP get_annealer_observer ()
 
AnnealerObserverCOP get_annealer_observer () const
 
void set_annealer_observer (AnnealerObserverOP obs)
 

Private Member Functions

void cool ()
 
void run_quench (ObjexxFCL::FArray1D_int &state_on_node, ObjexxFCL::FArray1D_int &best_state_on_node, core::PackerEnergy &best_energy, int num_cycles)
 
void run_constant_temp_rotamer_substitutions (ObjexxFCL::FArray1D_int &state_on_node, ObjexxFCL::FArray1D_int &best_state_on_node, core::PackerEnergy &best_energy, int num_cycles)
 
void store_top_energy (ObjexxFCL::FArray1D_int const &state_on_node, core::PackerEnergy energy)
 
 MultiCoolAnnealer (MultiCoolAnnealer const &rhs)
 unimplemented, private copy ctor – uncopyable More...
 
MultiCoolAnnealer const & operator= (MultiCoolAnnealer const &rhs)
 unimplemented, private assignment operator – uncopyable More...
 

Private Attributes

interaction_graph::AnnealableGraphBaseOP ig_
 
ObjexxFCL::FArray1D_int nsteps_for_rot_
 
int nsteps_
 
Size top_to_keep
 
ObjexxFCL::FArray2D_int top_netstates_
 
ObjexxFCL::FArray1D
< core::PackerEnergy
energy_top_
 
core::PackerEnergy worst_top_energy_
 
int which_netstate_worst_top_
 
int num_top_kept_
 

Static Private Attributes

static core::PackerEnergy const uninitialized_energy
 

Additional Inherited Members

- Public Types inherited from core::pack::annealer::RotamerAssigningAnnealer
typedef
rotamer_set::FixbbRotamerSetsCOP 
FixbbRotamerSetsCOP
 
- Public Types inherited from core::pack::annealer::SimAnnealerBase
typedef
pack_basic::RotamerSetsBaseCOP 
RotamerSetsBaseCOP
 
- Protected Member Functions inherited from core::pack::annealer::RotamerAssigningAnnealer
FixbbRotamerSetsCOP rotamer_sets () const
 
utility::vector0< int > const & rot_to_pack () const
 
- Protected Member Functions inherited from core::pack::annealer::SimAnnealerBase
Size num_rots_to_pack () const
 
void num_rots_to_pack (Size setting)
 
ObjexxFCL::FArray1D_int & bestrotamer_at_seqpos ()
 
ObjexxFCL::FArray1D_int const & bestrotamer_at_seqpos () const
 
core::PackerEnergybestenergy ()
 
bool start_with_current () const
 
ObjexxFCL::FArray1_int & current_rot_index ()
 
ObjexxFCL::FArray1_int const & current_rot_index () const
 
bool calc_rot_freq () const
 
ObjexxFCL::FArray1D
< core::PackerEnergy > & 
rot_freq ()
 
ObjexxFCL::FArray1D
< core::PackerEnergy > const & 
rot_freq () const
 
core::PackerEnergy get_hightemp () const
 
core::PackerEnergy get_lowtemp () const
 
void clear ()
 
- Static Protected Attributes inherited from core::pack::annealer::SimAnnealerBase
static const core::PackerEnergy hightemp = 100.0
 
static const core::PackerEnergy lowtemp = 0.3
 
static const int maxouteriterations = 500
 
static const core::PackerEnergy calc_freq_temp = 1.0
 

Constructor & Destructor Documentation

core::pack::annealer::MultiCoolAnnealer::MultiCoolAnnealer ( task::PackerTaskCOP  task,
utility::vector0< int > &  rot_to_pack,
ObjexxFCL::FArray1D_int &  bestrotamer_at_seqpos,
core::PackerEnergy bestenergy,
bool  start_with_current,
interaction_graph::AnnealableGraphBaseOP  ig,
FixbbRotamerSetsCOP  rotamer_sets,
ObjexxFCL::FArray1_int &  current_rot_index,
bool  calc_rot_freq,
ObjexxFCL::FArray1D< core::PackerEnergy > &  rot_freq 
)
core::pack::annealer::MultiCoolAnnealer::MultiCoolAnnealer ( task::PackerTaskCOP  task,
ObjexxFCL::FArray1D_int &  bestrotamer_at_seqpos,
core::PackerEnergy bestenergy,
bool  start_with_current,
interaction_graph::AnnealableGraphBaseOP  ig,
FixbbRotamerSetsCOP  rotamer_sets,
ObjexxFCL::FArray1_int &  current_rot_index,
bool  calc_rot_freq,
ObjexxFCL::FArray1D< core::PackerEnergy > &  rot_freq 
)
core::pack::annealer::MultiCoolAnnealer::~MultiCoolAnnealer ( )
overridedefault

virtual destructor

core::pack::annealer::MultiCoolAnnealer::MultiCoolAnnealer ( MultiCoolAnnealer const &  rhs)
private

unimplemented, private copy ctor – uncopyable

Member Function Documentation

void core::pack::annealer::MultiCoolAnnealer::cool ( )
private
MultiCoolAnnealer const& core::pack::annealer::MultiCoolAnnealer::operator= ( MultiCoolAnnealer const &  rhs)
private

unimplemented, private assignment operator – uncopyable

void core::pack::annealer::MultiCoolAnnealer::run ( )
overridevirtual
void core::pack::annealer::MultiCoolAnnealer::run_constant_temp_rotamer_substitutions ( ObjexxFCL::FArray1D_int &  state_on_node,
ObjexxFCL::FArray1D_int &  best_state_on_node,
core::PackerEnergy best_energy,
int  num_cycles 
)
private
void core::pack::annealer::MultiCoolAnnealer::run_quench ( ObjexxFCL::FArray1D_int &  state_on_node,
ObjexxFCL::FArray1D_int &  best_state_on_node,
core::PackerEnergy best_energy,
int  num_cycles 
)
private

Referenced by run().

void core::pack::annealer::MultiCoolAnnealer::store_top_energy ( ObjexxFCL::FArray1D_int const &  state_on_node,
core::PackerEnergy  energy 
)
private

Member Data Documentation

ObjexxFCL::FArray1D< core::PackerEnergy > core::pack::annealer::MultiCoolAnnealer::energy_top_
private

Referenced by run(), and store_top_energy().

interaction_graph::AnnealableGraphBaseOP core::pack::annealer::MultiCoolAnnealer::ig_
private
int core::pack::annealer::MultiCoolAnnealer::nsteps_
private
ObjexxFCL::FArray1D_int core::pack::annealer::MultiCoolAnnealer::nsteps_for_rot_
private
int core::pack::annealer::MultiCoolAnnealer::num_top_kept_
private

Referenced by run(), and store_top_energy().

ObjexxFCL::FArray2D_int core::pack::annealer::MultiCoolAnnealer::top_netstates_
private

Referenced by run(), and store_top_energy().

Size core::pack::annealer::MultiCoolAnnealer::top_to_keep
private

Referenced by run(), and store_top_energy().

core::PackerEnergy const core::pack::annealer::MultiCoolAnnealer::uninitialized_energy
staticprivate

Referenced by run(), and store_top_energy().

int core::pack::annealer::MultiCoolAnnealer::which_netstate_worst_top_
private

Referenced by store_top_energy().

core::PackerEnergy core::pack::annealer::MultiCoolAnnealer::worst_top_energy_
private

Referenced by store_top_energy().


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