Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Types | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
protocols::canonical_sampling::ParallelTempering Class Reference

#include <ParallelTempering.hh>

Inheritance diagram for protocols::canonical_sampling::ParallelTempering:
Inheritance graph
[legend]
Collaboration diagram for protocols::canonical_sampling::ParallelTempering:
Collaboration graph
[legend]

Public Member Functions

 ParallelTempering ()
 
 ~ParallelTempering ()
 
 ParallelTempering (ParallelTempering const &)
 
ParallelTemperingoperator= (ParallelTempering const &)
 
virtual void apply (core::pose::Pose &)
 
virtual std::string get_name () const
 Each derived class must specify its name. The class name. More...
 
protocols::moves::MoverOP clone () const
 clone has to be overridden only if clone invocation is expected. More...
 
virtual protocols::moves::MoverOP fresh_instance () const
 this is like clone(), except it generates a new mover object freshly created with the default ctor. This function should be pure virtual but that would disrupt the code base; MAKE SURE YOU DEFINE IT if you want to have your mover be a protocol handed to the job distributor (august 08 vintage). More...
 
virtual void parse_my_tag (utility::tag::TagPtr const tag, protocols::moves::DataMap &data, protocols::filters::Filters_map const &filters, protocols::moves::Movers_map const &movers, core::pose::Pose const &pose)
 Called by MoverFactory when constructing new Movers. Takes care of the specific mover's parsing. More...
 
core::Real temperature_move (core::Real score)
 execute the temperatur move ( called by observer_after_metropolis ) returns the current temperatur in kT. More...
 
virtual void initialize_simulation (core::pose::Pose &pose, protocols::canonical_sampling::MetropolisHastingsMover const &metropolis_hastings_mover, core::Size cycle)
 callback executed before any Monte Carlo trials More...
 
virtual void finalize_simulation (core::pose::Pose &pose, protocols::canonical_sampling::MetropolisHastingsMover const &metropolis_hastings_mover)
 callback executed after all Monte Carlo trials More...
 
- Public Member Functions inherited from protocols::canonical_sampling::TemperingBase
 TemperingBase ()
 
 TemperingBase (TemperingBase const &)
 
virtual void initialize_simulation (core::pose::Pose &pose, protocols::canonical_sampling::MetropolisHastingsMover const &metropolis_hastings_mover, core::Size level, core::Real temperature, core::Size cycle)
 
core::Real temperature () const
 return current_temperature (in monte-carlo object) More...
 
core::Real temperature (core::Size level) const
 return temperature of a certain level More...
 
core::Size temperature_level () const
 
core::Size n_temp_levels () const
 callback executed after all Monte Carlo trials More...
 
- Public Member Functions inherited from protocols::canonical_sampling::TemperatureController
 TemperatureController ()
 
 TemperatureController (TemperatureController const &)
 
virtual bool reinitialize_for_each_job () const
 this function informs the job distributor (august 08 vintage) whether this object needs to be freshly regenerated on each use. More...
 
virtual bool reinitialize_for_new_input () const
 this function informs the job distributor (august 08 vintage) whether this object needs to be regenerated when the input pose is about to change (for example, if the mover has special code on the first apply() that is only valid for that one input pose). More...
 
virtual void observe_after_metropolis (protocols::canonical_sampling::MetropolisHastingsMover const &metropolis_hastings_mover)
 make a move in temperature space depending on the current score More...
 
virtual core::Real temperature_move (core::pose::Pose &pose, core::Real score)
 second interface for temperature_move - standard implementation calls the pose-less temperature move. hamiltonian exchange needs to evaluate the alternative Hamiltonian though... More...
 
protocols::moves::MonteCarloCOP monte_carlo () const
 
void set_monte_carlo (protocols::moves::MonteCarloOP monte_carlo)
 
- Public Member Functions inherited from protocols::canonical_sampling::ThermodynamicObserver
 ThermodynamicObserver ()
 
virtual ~ThermodynamicObserver ()
 
virtual bool restart_simulation (core::pose::Pose &, protocols::canonical_sampling::MetropolisHastingsMover &, core::Size &, core::Size &, core::Real &)
 callback executed before any Monte Carlo trials More...
 
virtual bool requires_pose ()
 return false here if a valid pose is not required for "observe" i.e. a trialcounter More...
 
- Public Member Functions inherited from protocols::moves::Mover
 Mover ()
 
virtual ~Mover ()
 
virtual MoverSP create ()
 
virtual void apply (core::io::serialization::PipeMap &pmap)
 
virtual void parse_state (SerializableState const &state)
 
virtual void parse_def (utility::lua::LuaObject const &def, utility::lua::LuaObject const &score_fxns, utility::lua::LuaObject const &tasks, MoverCacheSP cache)
 
virtual void save_state (SerializableState &state)
 
 Mover (std::string const &type_name)
 sets the type for a mover; name_ has been removed (2010/05/14) More...
 
 Mover (Mover const &other)
 
Moveroperator= (Mover const &other)
 assignment operator More...
 
virtual core::Real last_proposal_density_ratio ()
 
std::string const & type () const
 
std::string get_current_tag () const
 A tag is a unique identifier used to identify structures produced by this Mover. get_current_tag() returns the tag, and set_current_tag( std::string tag ) sets the tag. This functionality is not intended for use with the 2008 job distributor. More...
 
void set_current_tag (std::string const &new_tag)
 
virtual void set_input_pose (PoseCOP pose)
 setter for poses contained for rms More...
 
virtual void set_native_pose (PoseCOP pose)
 setter for native poses contained for rms -— we should get rid of this method? it is widely used, but a bit unsafe More...
 
PoseCOP get_input_pose () const
 
PoseCOP get_native_pose () const
 
virtual void test_move (Pose &pose)
 : Unit test support function. Apply one move to a given pose. Allows extra test specific functions to be called before applying More...
 
void type (const std::string &type_in)
 
std::string get_type () const
 
MoverStatus get_last_move_status () const
 end parser interface, start Job Distributor interface///////////// More...
 
void reset_status ()
 resets status to SUCCESS, meant to be used before an apply(). The job distributor (august 08 vintage) uses this to ensure non-accumulation of status across apply()s. More...
 
virtual core::pose::PoseOP get_additional_output ()
 Mechanism by which a mover may return multiple output poses from a single input pose. More...
 
virtual void clear_info ()
 Strings container can be used to return miscellaneous info (as std::string) from a mover, such as notes about the results of apply(). The job distributor (Apr 09 vintage) will check this function to see if your protocol wants to add string info to the Job that ran this mover. One way this can be useful is that later, a JobOutputter may include/append this info to an output file. More...
 
virtual Stringsinfo ()
 non-const accessor More...
 
virtual Strings const & info () const
 const accessor More...
 
void set_current_job (protocols::jobdist::BasicJobCOP job)
 
jobdist::BasicJobCOP get_current_job () const
 

Static Public Member Functions

static void register_options ()
 
- Static Public Member Functions inherited from protocols::canonical_sampling::TemperingBase
static void register_options ()
 

Protected Member Functions

void set_defaults ()
 handling of options including command-line More...
 
void init_from_options ()
 Assigns user specified values to primitive members using command line options. More...
 
int rank ()
 
- Protected Member Functions inherited from protocols::canonical_sampling::TemperingBase
void set_defaults ()
 handling of options including command-line More...
 
virtual bool initialize_from_file (std::string const &filename)
 initialize temperatures and weights from file, return false if IO error occurrs More...
 
virtual void write_to_file (std::string const &file_in, std::string const &output_name, utility::vector1< core::Real > const &wcounts)
 
bool check_temp_consistency ()
 
bool time_for_temp_move ()
 
core::Size current_temp ()
 
void clear ()
 
void set_temperatures (utility::vector1< core::Real > const &)
 
void set_current_temp (core::Size new_temp)
 
bool stats_line_output () const
 
bool stats_silent_output () const
 
std::string const & stats_file () const
 
void generate_temp_range (core::Real temp_low, core::Real temp_high, core::Size n_levels, InterpolationType interpolation=linear)
 
- Protected Member Functions inherited from protocols::canonical_sampling::TemperatureController
protocols::moves::MonteCarloOP monte_carlo ()
 

Private Types

typedef TemperingBase Parent
 
typedef utility::vector1
< std::pair< int, int > > 
ExchangeSchedule
 

Private Member Functions

void deallocate_buffers ()
 
void allocate_buffers (core::Size)
 
void setup_exchange_schedule (Size nlevels)
 
void shuffle_temperatures (double *energies)
 

Private Attributes

int rank_
 -------------— member variables -----------------------— More...
 
utility::vector0
< ExchangeSchedule
exchange_schedules_
 
core::Size last_exchange_schedule_
 
double * last_energies_
 
intrank2tlevel_
 
inttlevel2rank_
 
std::map< std::pair< int, int >
, core::Size
exchange_attempts_
 
std::map< std::pair< int, int >
, core::Size
exchange_accepts_
 
clock_t start_time_
 
clock_t total_mpi_wait_time_
 

Static Private Attributes

static bool options_registered_
 ---------------— register cmdline options ------------------------— More...
 

Additional Inherited Members

- Public Types inherited from protocols::moves::Mover
typedef utility::tag::TagPtr TagPtr
 
typedef core::pose::Pose Pose
 
typedef core::pose::PoseCOP PoseCOP
 
typedef
protocols::filters::Filters_map 
Filters_map
 
typedef std::list< std::string > Strings
 

Member Typedef Documentation

Constructor & Destructor Documentation

protocols::canonical_sampling::ParallelTempering::ParallelTempering ( )

References set_defaults().

Referenced by fresh_instance().

protocols::canonical_sampling::ParallelTempering::~ParallelTempering ( )

References deallocate_buffers().

protocols::canonical_sampling::ParallelTempering::ParallelTempering ( ParallelTempering const &  other)

Member Function Documentation

void protocols::canonical_sampling::ParallelTempering::allocate_buffers ( core::Size  nlevels)
private
virtual void protocols::canonical_sampling::ParallelTempering::apply ( core::pose::Pose )
inlinevirtual
protocols::moves::MoverOP protocols::canonical_sampling::ParallelTempering::clone ( ) const
virtual

clone has to be overridden only if clone invocation is expected.

clone is meant to return an OP'ed deep copy of this object. This really should be a pure virtual in the base class, but adding pure virtuals to Mover would massively disrupt the code. This default implementation crashes at runtime instead of compiletime if you try to call it. If this code is causing you problems, your Mover needs to override this function.

Reimplemented from protocols::moves::Mover.

void protocols::canonical_sampling::ParallelTempering::deallocate_buffers ( )
private
void protocols::canonical_sampling::ParallelTempering::finalize_simulation ( core::pose::Pose pose,
protocols::canonical_sampling::MetropolisHastingsMover const &  metropolis_hastings_mover 
)
virtual
protocols::moves::MoverOP protocols::canonical_sampling::ParallelTempering::fresh_instance ( ) const
virtual

this is like clone(), except it generates a new mover object freshly created with the default ctor. This function should be pure virtual but that would disrupt the code base; MAKE SURE YOU DEFINE IT if you want to have your mover be a protocol handed to the job distributor (august 08 vintage).

fresh_instance is meant to return a new object of this class, created with the default constructor. This really should be a pure virtual in the base class, but adding pure virtuals to Mover would massively disrupt the code. This default implementation crashes at runtime instead of compiletime if you try to call it. If this code is causing you problems, your Mover needs to override this function. This is used by the August 08 job distributor.

Reimplemented from protocols::moves::Mover.

References ParallelTempering().

std::string protocols::canonical_sampling::ParallelTempering::get_name ( ) const
virtual

Each derived class must specify its name. The class name.

Reimplemented from protocols::canonical_sampling::TemperingBase.

void protocols::canonical_sampling::ParallelTempering::init_from_options ( )
protectedvirtual

Assigns user specified values to primitive members using command line options.

Reimplemented from protocols::canonical_sampling::TemperingBase.

References protocols::canonical_sampling::TemperingBase::init_from_options().

void protocols::canonical_sampling::ParallelTempering::initialize_simulation ( core::pose::Pose pose,
protocols::canonical_sampling::MetropolisHastingsMover const &  metropolis_hastings_mover,
core::Size  cycle 
)
virtual
ParallelTempering & protocols::canonical_sampling::ParallelTempering::operator= ( ParallelTempering const &  other)
void protocols::canonical_sampling::ParallelTempering::parse_my_tag ( utility::tag::TagPtr const  tag,
protocols::moves::DataMap data,
protocols::filters::Filters_map const &  filters,
protocols::moves::Movers_map const &  movers,
core::pose::Pose const &  pose 
)
virtual

Called by MoverFactory when constructing new Movers. Takes care of the specific mover's parsing.

Some movers need not be parsed, so we shouldn't stop executions. This, however, calls attention to the lack of this method, which could be due to something as silly as a wrong parameters definition.

Reimplemented from protocols::canonical_sampling::TemperingBase.

References protocols::canonical_sampling::TemperingBase::parse_my_tag().

int protocols::canonical_sampling::ParallelTempering::rank ( )
inlineprotected
void protocols::canonical_sampling::ParallelTempering::register_options ( )
static
void protocols::canonical_sampling::ParallelTempering::set_defaults ( )
protected

handling of options including command-line

Referenced by ParallelTempering().

void protocols::canonical_sampling::ParallelTempering::setup_exchange_schedule ( Size  nlevels)
private
void protocols::canonical_sampling::ParallelTempering::shuffle_temperatures ( double *  energies)
private
core::Real protocols::canonical_sampling::ParallelTempering::temperature_move ( core::Real  score)
virtual

Member Data Documentation

std::map<std::pair<int, int>, core::Size> protocols::canonical_sampling::ParallelTempering::exchange_accepts_
private
std::map<std::pair<int, int>, core::Size> protocols::canonical_sampling::ParallelTempering::exchange_attempts_
private
utility::vector0< ExchangeSchedule > protocols::canonical_sampling::ParallelTempering::exchange_schedules_
private
double* protocols::canonical_sampling::ParallelTempering::last_energies_
private
core::Size protocols::canonical_sampling::ParallelTempering::last_exchange_schedule_
private
bool protocols::canonical_sampling::ParallelTempering::options_registered_
staticprivate

---------------— register cmdline options ------------------------—

Referenced by register_options().

int* protocols::canonical_sampling::ParallelTempering::rank2tlevel_
private
int protocols::canonical_sampling::ParallelTempering::rank_
private

-------------— member variables -----------------------—

Referenced by initialize_simulation(), and rank().

clock_t protocols::canonical_sampling::ParallelTempering::start_time_
private
int* protocols::canonical_sampling::ParallelTempering::tlevel2rank_
private
clock_t protocols::canonical_sampling::ParallelTempering::total_mpi_wait_time_
private

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