Rosetta
Public Types | Public Member Functions | Protected Member Functions | Static Protected Attributes | Private Member Functions | Private Attributes | List of all members
core::pack::annealer::SimAnnealerBase Class Referenceabstract

#include <SimAnnealerBase.hh>

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

Public Types

typedef pack_basic::RotamerSetsBaseCOP RotamerSetsBaseCOP
 

Public Member Functions

 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)
 
AnnealerObserverOP get_annealer_observer ()
 
AnnealerObserverCOP get_annealer_observer () const
 
void set_annealer_observer (AnnealerObserverOP obs)
 

Protected Member Functions

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

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
 

Private Member Functions

 SimAnnealerBase (const SimAnnealerBase &rhs)
 

Private Attributes

Size num_rots_to_pack_
 
ObjexxFCL::FArray1D_int & bestrotamer_at_seqpos_
 
core::PackerEnergybestenergy_
 
bool start_with_current_
 
ObjexxFCL::FArray1_int & current_rot_index_
 
bool calc_rot_freq_
 
ObjexxFCL::FArray1D< core::PackerEnergy > & rot_freq_
 
int outeriterations_
 
int inneriterations_
 
bool quench_
 
core::PackerEnergy hightemp_
 
core::PackerEnergy lowtemp_
 
core::PackerEnergy temperature_
 
int jump_
 
core::PackerEnergy outeriterations_scaling_
 
core::PackerEnergy inneriterations_scaling_
 
bool const low_temp_annealing_
 
bool disallow_quench_
 
AnnealerObserverOP observer_ = nullptr
 

Member Typedef Documentation

◆ RotamerSetsBaseCOP

Constructor & Destructor Documentation

◆ SimAnnealerBase() [1/2]

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

core::pack::annealer::SimAnnealerBase::~SimAnnealerBase ( )
overridedefault

virtual destructor

Global Read:
Global Write:
Remarks
References:
Author

◆ SimAnnealerBase() [2/2]

core::pack::annealer::SimAnnealerBase::SimAnnealerBase ( const SimAnnealerBase rhs)
private

Member Function Documentation

◆ bestenergy()

core::PackerEnergy & core::pack::annealer::SimAnnealerBase::bestenergy ( )
protected

◆ bestrotamer_at_seqpos() [1/2]

FArray1D_int & core::pack::annealer::SimAnnealerBase::bestrotamer_at_seqpos ( )
protected

◆ bestrotamer_at_seqpos() [2/2]

FArray1D_int const & core::pack::annealer::SimAnnealerBase::bestrotamer_at_seqpos ( ) const
protected

◆ calc_rot_freq()

bool core::pack::annealer::SimAnnealerBase::calc_rot_freq ( ) const
protected

◆ clear()

void core::pack::annealer::SimAnnealerBase::clear ( )
protected

◆ current_rot_index() [1/2]

FArray1_int & core::pack::annealer::SimAnnealerBase::current_rot_index ( )
protected

◆ current_rot_index() [2/2]

FArray1_int const & core::pack::annealer::SimAnnealerBase::current_rot_index ( ) const
protected

◆ get_annealer_observer() [1/2]

AnnealerObserverOP core::pack::annealer::SimAnnealerBase::get_annealer_observer ( )
inline

References observer_.

◆ get_annealer_observer() [2/2]

AnnealerObserverCOP core::pack::annealer::SimAnnealerBase::get_annealer_observer ( ) const
inline

References observer_.

◆ get_calc_rot_freq()

bool core::pack::annealer::SimAnnealerBase::get_calc_rot_freq ( ) const

◆ get_hightemp()

core::PackerEnergy core::pack::annealer::SimAnnealerBase::get_hightemp ( ) const
inlineprotected

References hightemp_.

◆ get_inneriterations()

int core::pack::annealer::SimAnnealerBase::get_inneriterations ( ) const
Global Read:
Global Write:
Remarks
References:
Author

Referenced by protocols::flexpack::annealer::FlexbbSimAnnealer::run().

◆ get_lowtemp()

core::PackerEnergy core::pack::annealer::SimAnnealerBase::get_lowtemp ( ) const
inlineprotected

References lowtemp_.

◆ get_outeriterations()

int core::pack::annealer::SimAnnealerBase::get_outeriterations ( ) const

get the iterations number for simulation

Global Read:
Global Write:
Remarks
References:
Author

Referenced by protocols::flexpack::annealer::FlexbbSimAnnealer::run().

◆ get_start_with_current()

bool core::pack::annealer::SimAnnealerBase::get_start_with_current ( ) const

◆ get_temperature()

core::PackerEnergy core::pack::annealer::SimAnnealerBase::get_temperature ( ) const

◆ num_rots_to_pack() [1/2]

Size core::pack::annealer::SimAnnealerBase::num_rots_to_pack ( ) const
inlineprotected

◆ num_rots_to_pack() [2/2]

void core::pack::annealer::SimAnnealerBase::num_rots_to_pack ( Size  setting)
protected

◆ pass_metropolis() [1/2]

bool core::pack::annealer::SimAnnealerBase::pass_metropolis ( core::PackerEnergy  delta_energy) const

accept or reject movement based on Metropolis criterion if this is the first movement, accept by default.

Global Read:
Global Write:
Remarks
References:
Author

References core::pack::pass_metropolis().

Referenced by protocols::flexpack::annealer::FlexbbSimAnnealer::pass_metropolis_multiple_nodes_changing(), and protocols::flexpack::annealer::FlexbbSimAnnealer::run().

◆ pass_metropolis() [2/2]

bool core::pack::annealer::SimAnnealerBase::pass_metropolis ( core::PackerEnergy  previous_energy,
core::PackerEnergy  delta_energy 
) const

◆ quench()

bool core::pack::annealer::SimAnnealerBase::quench ( ) const

◆ rot_freq() [1/2]

FArray1D< core::PackerEnergy > & core::pack::annealer::SimAnnealerBase::rot_freq ( )
protected

◆ rot_freq() [2/2]

FArray1D< core::PackerEnergy > const & core::pack::annealer::SimAnnealerBase::rot_freq ( ) const
protected

◆ run()

virtual void core::pack::annealer::SimAnnealerBase::run ( )
pure virtual

◆ scale_inneriterations()

void core::pack::annealer::SimAnnealerBase::scale_inneriterations ( core::PackerEnergy const  si)
inline

◆ scale_outeriterations()

void core::pack::annealer::SimAnnealerBase::scale_outeriterations ( core::PackerEnergy const  so)
inline

◆ set_annealer_observer()

void core::pack::annealer::SimAnnealerBase::set_annealer_observer ( AnnealerObserverOP  obs)
inline

References observer_.

◆ set_disallow_quench()

void core::pack::annealer::SimAnnealerBase::set_disallow_quench ( bool const &  setting)

◆ set_hightemp()

void core::pack::annealer::SimAnnealerBase::set_hightemp ( core::PackerEnergy  high)

◆ set_lowtemp()

void core::pack::annealer::SimAnnealerBase::set_lowtemp ( core::PackerEnergy  low)

◆ set_not_to_quench()

void core::pack::annealer::SimAnnealerBase::set_not_to_quench ( )

◆ set_temperature()

void core::pack::annealer::SimAnnealerBase::set_temperature ( core::PackerEnergy  new_temperature)

◆ set_to_quench()

void core::pack::annealer::SimAnnealerBase::set_to_quench ( )

◆ setup_iterations() [1/2]

void core::pack::annealer::SimAnnealerBase::setup_iterations ( )
Global Read:
Global Write:
Remarks
References:
Author

Referenced by core::pack::annealer::DebuggingAnnealer::run(), and protocols::flexpack::annealer::FlexbbSimAnnealer::run().

◆ setup_iterations() [2/2]

void core::pack::annealer::SimAnnealerBase::setup_iterations ( const int &  num_of_state_changes)

◆ setup_temperature() [1/2]

void core::pack::annealer::SimAnnealerBase::setup_temperature ( const int &  nn)

◆ setup_temperature() [2/2]

void core::pack::annealer::SimAnnealerBase::setup_temperature ( const ObjexxFCL::FArray1D< core::PackerEnergy > &  loopenergy,
int  nn 
)

◆ start_with_current()

bool core::pack::annealer::SimAnnealerBase::start_with_current ( ) const
protected

Member Data Documentation

◆ bestenergy_

core::PackerEnergy& core::pack::annealer::SimAnnealerBase::bestenergy_
private

◆ bestrotamer_at_seqpos_

ObjexxFCL::FArray1D_int& core::pack::annealer::SimAnnealerBase::bestrotamer_at_seqpos_
private

◆ calc_freq_temp

const core::PackerEnergy core::pack::annealer::SimAnnealerBase::calc_freq_temp = 1.0
staticprotected

◆ calc_rot_freq_

bool core::pack::annealer::SimAnnealerBase::calc_rot_freq_
private

◆ current_rot_index_

ObjexxFCL::FArray1_int& core::pack::annealer::SimAnnealerBase::current_rot_index_
private

◆ disallow_quench_

bool core::pack::annealer::SimAnnealerBase::disallow_quench_
private

◆ hightemp

const core::PackerEnergy core::pack::annealer::SimAnnealerBase::hightemp = 100.0
staticprotected

◆ hightemp_

core::PackerEnergy core::pack::annealer::SimAnnealerBase::hightemp_
private

Referenced by get_hightemp().

◆ inneriterations_

int core::pack::annealer::SimAnnealerBase::inneriterations_
private

◆ inneriterations_scaling_

core::PackerEnergy core::pack::annealer::SimAnnealerBase::inneriterations_scaling_
private

Referenced by scale_inneriterations().

◆ jump_

int core::pack::annealer::SimAnnealerBase::jump_
private

◆ low_temp_annealing_

bool const core::pack::annealer::SimAnnealerBase::low_temp_annealing_
private

◆ lowtemp

const core::PackerEnergy core::pack::annealer::SimAnnealerBase::lowtemp = 0.3
staticprotected

◆ lowtemp_

core::PackerEnergy core::pack::annealer::SimAnnealerBase::lowtemp_
private

Referenced by get_lowtemp().

◆ maxouteriterations

const int core::pack::annealer::SimAnnealerBase::maxouteriterations = 500
staticprotected

◆ num_rots_to_pack_

Size core::pack::annealer::SimAnnealerBase::num_rots_to_pack_
private

Referenced by num_rots_to_pack().

◆ observer_

AnnealerObserverOP core::pack::annealer::SimAnnealerBase::observer_ = nullptr
private

◆ outeriterations_

int core::pack::annealer::SimAnnealerBase::outeriterations_
private

◆ outeriterations_scaling_

core::PackerEnergy core::pack::annealer::SimAnnealerBase::outeriterations_scaling_
private

Referenced by scale_outeriterations().

◆ quench_

bool core::pack::annealer::SimAnnealerBase::quench_
private

◆ rot_freq_

ObjexxFCL::FArray1D< core::PackerEnergy >& core::pack::annealer::SimAnnealerBase::rot_freq_
private

◆ start_with_current_

bool core::pack::annealer::SimAnnealerBase::start_with_current_
private

◆ temperature_

core::PackerEnergy core::pack::annealer::SimAnnealerBase::temperature_
private

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