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

#include <RotamerAssigningAnnealer.hh>

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

Public Types

typedef
rotamer_set::FixbbRotamerSetsCOP 
FixbbRotamerSetsCOP
 
- Public Types inherited from core::pack::annealer::SimAnnealerBase
typedef
pack_basic::RotamerSetsBaseCOP 
RotamerSetsBaseCOP
 

Public Member Functions

 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...
 
virtual void run ()=0
 
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)
 

Protected Member Functions

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 ()
 

Private Member Functions

void setup_rots_for_node (FixbbRotamerSetsCOP rotamer_sets)
 

Private Attributes

FixbbRotamerSetsCOP rotamer_sets_
 
utility::vector0< int > rot_to_pack_
 
utility::vector1
< utility::vector1< int > > 
rots_for_nodes_
 
int current_to_pick_
 
int n_assigned_at_start_
 
bool assign_state_to_all_nodes_immediately_
 

Additional Inherited Members

- 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
 

Member Typedef Documentation

Constructor & Destructor Documentation

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 
)
core::pack::annealer::RotamerAssigningAnnealer::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 
)
core::pack::annealer::RotamerAssigningAnnealer::~RotamerAssigningAnnealer ( )
overridedefault

Member Function Documentation

int core::pack::annealer::RotamerAssigningAnnealer::pick_a_rotamer ( int  cycle)
int core::pack::annealer::RotamerAssigningAnnealer::pick_a_rotamer_for_node ( int  node) const
utility::vector0< int > const & core::pack::annealer::RotamerAssigningAnnealer::rot_to_pack ( ) const
protected
RotamerAssigningAnnealer::FixbbRotamerSetsCOP core::pack::annealer::RotamerAssigningAnnealer::rotamer_sets ( ) const
protected
void core::pack::annealer::RotamerAssigningAnnealer::set_assign_state_to_all_nodes_immediately ( bool  setting)
void core::pack::annealer::RotamerAssigningAnnealer::setup_rots_for_node ( FixbbRotamerSetsCOP  rotamer_sets)
private

if you want to make a single rotamer substitution for a single node then you'll want to grab a random rotamer for that node – this function creates a mapping from moltenres id to the set of accessible rotamers for that moltenres. It also makes sure that the user has provided a valid set of rotamers: each molten residue must have at least one pickable rotamer, or the final rotamer assignment will have some molten residues in an unassigned state. Bad user input is most common when the annealer is constructed using the rot_to_pack vector.

References rot_to_pack_, and rots_for_nodes_.

Member Data Documentation

bool core::pack::annealer::RotamerAssigningAnnealer::assign_state_to_all_nodes_immediately_
private
int core::pack::annealer::RotamerAssigningAnnealer::current_to_pick_
private

Referenced by pick_a_rotamer().

int core::pack::annealer::RotamerAssigningAnnealer::n_assigned_at_start_
private

Referenced by pick_a_rotamer().

utility::vector0< int > core::pack::annealer::RotamerAssigningAnnealer::rot_to_pack_
private
FixbbRotamerSetsCOP core::pack::annealer::RotamerAssigningAnnealer::rotamer_sets_
private

Referenced by rotamer_sets().

utility::vector1< utility::vector1< int > > core::pack::annealer::RotamerAssigningAnnealer::rots_for_nodes_
private

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