Rosetta Protocols  2014.16.56682
Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Types | Private Attributes | Static Private Attributes | List of all members
protocols::canonical_sampling::SimulatedTempering Class Reference

#include <SimulatedTempering.hh>

Public Member Functions

 SimulatedTempering ()
 
 SimulatedTempering (SimulatedTempering const &)
 
virtual void apply (core::pose::Pose &)
 No-op implemented only to satisfy the Mover interface. More...
 
virtual std::string get_name () const
 Each derived class must specify its name. The class name. More...
 
protocols::moves::MoverOP clone () const
 Return a clone of the Mover object. More...
 
virtual protocols::moves::MoverOP fresh_instance () const
 Generates a new Mover object freshly created with the default ctor. More...
 
virtual void parse_my_tag (utility::tag::TagCOP tag, basic::datacache::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...
 
virtual void initialize_simulation (core::pose::Pose &pose, MetropolisHastingsMover const &metropolis_hastings_mover, core::Size cycle)
 Callback executed before any Monte Carlo trials are attempted. More...
 
core::Real temperature_move (core::pose::Pose &pose, MetropolisHastingsMover &mover, core::Real score)
 Execute a temperature move if necessary. More...
 
virtual void finalize_simulation (core::pose::Pose &pose, MetropolisHastingsMover const &metropolis_hastings_mover)
 Callback executed after all Monte Carlo trials are completed. More...
 
void finalize_simulation (std::string const &output_name)
 
- Public Member Functions inherited from protocols::canonical_sampling::TemperatureController
 TemperatureController ()
 Default constructor. More...
 
 TemperatureController (TemperatureController const &other)
 Default constructor. More...
 
virtual bool reinitialize_for_each_job () const
 Return false. This class does not need to be reinitialized for each job. More...
 
virtual bool reinitialize_for_new_input () const
 Return false. This class does not need to be reinitialized for new input. More...
 
core::Real temperature () const
 Return the temperature of the underlying MonteCarlo object. More...
 
core::Real temperature (core::Size level) const
 Return the temperature of the given level. More...
 
core::Size temperature_level () const
 Return the current temperature level. More...
 
core::Size n_temp_levels () const
 Return the number of temperature levels used by this controller. More...
 
protocols::moves::MonteCarloCOP monte_carlo () const
 Return const access to the MonteCarlo object being controlled. More...
 
void set_monte_carlo (protocols::moves::MonteCarloOP monte_carlo)
 Set the MonteCarlo object to be controlled. 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
 
virtual void show (std::ostream &output=std::cout) const
 Outputs details about the Mover, including current settings. More...
 

Static Public Member Functions

static void register_options ()
 
- Static Public Member Functions inherited from protocols::canonical_sampling::TemperatureController
static void register_options ()
 Register the options used by this mover with the global options system. More...
 
- Static Public Member Functions inherited from protocols::moves::Mover
static std::string name ()
 
static void register_options ()
 Overload this static method if you access options within the mover. More...
 

Protected Member Functions

void set_defaults ()
 handling of options including command-line More...
 
virtual void init_from_options ()
 Assigns user specified values to primitive members using command line options. More...
 
void reweight ()
 update weights based on current counts More...
 
void reset_raw_counter ()
 reset the raw counts per state (not the weighted ones) to 0 More...
 
virtual bool init_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)
 Save temperatures and weights to a file. More...
 
- Protected Member Functions inherited from protocols::canonical_sampling::TemperatureController
protocols::moves::MonteCarloOP monte_carlo ()
 Return non-const access to the MonteCarlo object being controlled. More...
 
void set_defaults ()
 Help the constructor initialize new objects. More...
 
void generate_temp_range (core::Real temp_low, core::Real temp_high, core::Size n_levels, InterpolationType interpolation=linear)
 Explicitly set the temperature levels by interpolating the given parameters. More...
 
void set_temperatures (utility::vector1< core::Real > const &)
 Explicitly set the temperature levels. More...
 
core::Size current_temp ()
 Return the current temperature level. Identical to temperature_level() as far as I can tell. More...
 
void set_current_temp (core::Size new_temp)
 Set the temperature to the given level. More...
 
bool check_temp_consistency ()
 Assert that the current temperature of the MonteCarlo object agrees with the current temperature level of this object. More...
 
void clear ()
 Forget all temperature levels and return to an uninitialized state. More...
 
bool time_for_temp_move ()
 Return true if a temperature move should be made on this iteration. More...
 
bool stats_line_output () const
 Return true if a statistics summary should be written. More...
 
bool stats_silent_output () const
 Return true if a statistics summary should be inserted into a silent file. More...
 
std::string const & stats_file () const
 Return the name of the silent file into which statistics should be recorded. More...
 
- Protected Member Functions inherited from protocols::moves::Mover
void set_last_move_status (MoverStatus status)
 nonvirtual setter for MoverStatus last_status_. Protected means that only the mover itself will be able to change its own status. The job distributor (august 08 vintage) is aware of status set with this function and will do what the MoverStatus says. More...
 

Private Types

typedef TemperatureController Parent
 

Private Attributes

core::Real score_offset_
 ----------—— member variables --------------------—— More...
 
core::Real self_transition_
 
bool temperature_jumps_
 
core::Size reweight_stride_
 
utility::vector1< core::Realweights_
 -— state --— More...
 
utility::vector1< core::Sizecounts_
 
utility::vector1< core::Realweighted_counts_
 
core::Size total_count_
 

Static Private Attributes

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

Additional Inherited Members

- Public Types inherited from protocols::moves::Mover
typedef utility::tag::TagCOP TagCOP
 
typedef core::pose::Pose Pose
 
typedef core::pose::PoseCOP PoseCOP
 
typedef
protocols::filters::Filters_map 
Filters_map
 
typedef std::list< std::stringStrings
 

Detailed Description

The only way to set the temperature range used for simulated annealing is to use the command line. The relevant options are:

-tempering::temp::range <low> <high>
-tempering::temp::low <low> -tempering::temp::high <high>

Member Typedef Documentation

Constructor & Destructor Documentation

protocols::canonical_sampling::SimulatedTempering::SimulatedTempering ( )

Referenced by clone(), and fresh_instance().

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

Member Function Documentation

virtual void protocols::canonical_sampling::SimulatedTempering::apply ( core::pose::Pose )
inlinevirtual

No-op implemented only to satisfy the Mover interface.

Reimplemented from protocols::canonical_sampling::TemperatureController.

protocols::moves::MoverOP protocols::canonical_sampling::SimulatedTempering::clone ( ) const
virtual

Return a clone of the Mover object.

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.

References SimulatedTempering().

void protocols::canonical_sampling::SimulatedTempering::finalize_simulation ( core::pose::Pose pose,
MetropolisHastingsMover const &  mover 
)
virtual
void protocols::canonical_sampling::SimulatedTempering::finalize_simulation ( std::string const &  output_name)
protocols::moves::MoverOP protocols::canonical_sampling::SimulatedTempering::fresh_instance ( ) const
virtual

Generates a new Mover object freshly created with the default ctor.

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

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

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

Implements protocols::moves::Mover.

bool protocols::canonical_sampling::SimulatedTempering::init_from_file ( std::string const &  filename)
protectedvirtual
void protocols::canonical_sampling::SimulatedTempering::init_from_options ( )
protectedvirtual
void protocols::canonical_sampling::SimulatedTempering::initialize_simulation ( core::pose::Pose pose,
MetropolisHastingsMover const &  mover,
core::Size  cycle 
)
virtual

Callback executed before any Monte Carlo trials are attempted.

The cycle parameter gives the number of times that the simulation has been restarted. Since the restart feature is currently commented out, cycle should always be 0.

Reimplemented from protocols::canonical_sampling::TemperatureController.

References protocols::canonical_sampling::TemperatureController::initialize_simulation(), protocols::canonical_sampling::TemperatureController::n_temp_levels(), reset_raw_counter(), total_count_, protocols::canonical_sampling::tr, weighted_counts_, and weights_.

void protocols::canonical_sampling::SimulatedTempering::parse_my_tag ( utility::tag::TagCOP  tag,
basic::datacache::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::TemperatureController.

References protocols::canonical_sampling::TemperatureController::parse_my_tag(), reweight_stride_, score_offset_, and temperature_jumps_.

void protocols::canonical_sampling::SimulatedTempering::register_options ( )
static
void protocols::canonical_sampling::SimulatedTempering::reset_raw_counter ( )
protected

reset the raw counts per state (not the weighted ones) to 0

callback executed before any Monte Carlo trials use to fill count_ with 0

References counts_, and protocols::canonical_sampling::TemperatureController::n_temp_levels().

Referenced by finalize_simulation(), initialize_simulation(), and temperature_move().

void protocols::canonical_sampling::SimulatedTempering::reweight ( )
protected

update weights based on current counts

References counts_, weighted_counts_, and weights_.

Referenced by finalize_simulation(), and temperature_move().

void protocols::canonical_sampling::SimulatedTempering::set_defaults ( )
protected

handling of options including command-line

References score_offset_, and self_transition_.

core::Real protocols::canonical_sampling::SimulatedTempering::temperature_move ( core::pose::Pose pose,
MetropolisHastingsMover mover,
core::Real  score 
)
virtual
void protocols::canonical_sampling::SimulatedTempering::write_to_file ( std::string const &  file_in,
std::string const &  output_name,
utility::vector1< core::Real > const &  wcounts 
)
protectedvirtual

Member Data Documentation

utility::vector1< core::Size > protocols::canonical_sampling::SimulatedTempering::counts_
private
bool protocols::canonical_sampling::SimulatedTempering::options_registered_
staticprivate

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

core::Size protocols::canonical_sampling::SimulatedTempering::reweight_stride_
private
core::Real protocols::canonical_sampling::SimulatedTempering::score_offset_
private

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

— configurables -—

Referenced by init_from_file(), init_from_options(), parse_my_tag(), set_defaults(), SimulatedTempering(), temperature_move(), and write_to_file().

core::Real protocols::canonical_sampling::SimulatedTempering::self_transition_
private
bool protocols::canonical_sampling::SimulatedTempering::temperature_jumps_
private
core::Size protocols::canonical_sampling::SimulatedTempering::total_count_
private
utility::vector1< core::Real > protocols::canonical_sampling::SimulatedTempering::weighted_counts_
private
utility::vector1< core::Real > protocols::canonical_sampling::SimulatedTempering::weights_
private

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