![]() |
Rosetta Protocols
2014.35
|
#include <AsyncMPITemperingBase.hh>
Classes | |
class | ExchangeRequest |
Public Member Functions | |
AsyncMPITemperingBase () | |
AsyncMPITemperingBase (AsyncMPITemperingBase const &) | |
AsyncMPITemperingBase & | operator= (AsyncMPITemperingBase const &) |
virtual | ~AsyncMPITemperingBase () |
virtual void | apply (core::pose::Pose &) |
No-op implemented only to satisfy the Mover interface. 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 | initialize_simulation (core::pose::Pose &pose, protocols::canonical_sampling::MetropolisHastingsMover const &metropolis_hastings_mover, core::Size level, core::Real temperature, core::Size cycle) |
virtual void | finalize_simulation (core::pose::Pose &pose, protocols::canonical_sampling::MetropolisHastingsMover const &metropolis_hastings_mover) |
callback executed after all Monte Carlo trials More... | |
virtual bool | finished_simulation (core::Size trials, core::Size ntrials) |
Return true if the simulation has been completed. More... | |
![]() | |
TemperingBase () | |
Default constructor. More... | |
TemperingBase (TemperingBase const &) | |
Copy constructor. More... | |
virtual std::string | get_name () const |
Return the name of this class. 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 | observe_after_metropolis (protocols::canonical_sampling::MetropolisHastingsMover const &metropolis_hastings_mover) |
Callback executed after the Metropolis criterion is evaluated. 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... | |
![]() | |
TemperatureController () | |
Default constructor. More... | |
TemperatureController (TemperatureController const &) | |
Copy 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... | |
virtual core::Real | temperature_move (core::Real score)=0 |
Execute the temperature move. More... | |
virtual core::Real | temperature_move (core::pose::Pose &pose) |
Execute a temperature move which depends on the current pose. More... | |
virtual GridCoord | level_2_grid_coord (core::Size level) const |
virtual core::Size | exchange_grid_dim () const |
virtual core::Size | nlevels_per_dim (core::Size) const |
protocols::moves::MonteCarloCOP | monte_carlo () const |
Return const access to the MonteCarlo object being controlled. More... | |
virtual void | set_monte_carlo (protocols::moves::MonteCarloOP monte_carlo) |
Set the MonteCarlo object to be controlled. More... | |
![]() | |
ThermodynamicObserver () | |
Default constructor. More... | |
virtual | ~ThermodynamicObserver () |
Destructor. More... | |
virtual bool | restart_simulation (core::pose::Pose &, MetropolisHastingsMover &, core::Size &, core::Size &, core::Real &) |
Attempt to restart the last simulation that was recorded by this observer. More... | |
virtual bool | requires_pose () |
Return false if this observer does not require a valid pose. TrialCounterObserver is an example of such an observer. More... | |
![]() | |
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) | |
Mover & | operator= (Mover const &other) |
assignment operator More... | |
virtual core::Real | last_proposal_density_ratio () |
std::string const & | type () const |
void | set_type (std::string const &setting) |
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) |
virtual MoverOP | clone () const |
Return a clone of the Mover object. More... | |
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 Strings & | info () |
non-const accessor More... | |
virtual Strings const & | info () const |
const accessor More... | |
virtual MoverOP | fresh_instance () const |
Generates a new Mover object freshly created with the default ctor. 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... | |
Protected Member Functions | |
virtual bool | time_for_temp_move () |
Return true if a temperature move should be made on this iteration. More... | |
int | rank () |
virtual core::Size | next_exchange_level () const =0 |
void | find_exchange_partner (int &partner, bool &is_master) |
![]() | |
void | set_defaults () |
Help the constructor initialize the object. More... | |
virtual void | init_from_options () |
Assign user-specified command-line values to data members. More... | |
virtual bool | initialize_from_file (std::string const &filename) |
Initialize temperatures and weights from a file. 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... | |
bool | check_temp_consistency () |
Assert that the current temperature of the MonteCarlo object agrees with the current temperature level of this object. More... | |
void | reset_temp_counter () |
core::Size | current_temp () const |
Return the current temperature level. Identical to temperature_level() as far as I can tell. More... | |
void | clear () |
Forget all temperature levels and return to an uninitialized state. More... | |
void | set_temperatures (utility::vector1< core::Real > const &) |
Explicitly set the temperature levels. More... | |
virtual void | set_current_temp (core::Size new_temp) |
Set the temperature to the given level. 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... | |
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... | |
MultiTemperatureTrialCounter & | trial_counter () |
![]() | |
protocols::moves::MonteCarloOP | monte_carlo () |
Return non-const access to the MonteCarlo object being controlled. More... | |
![]() | |
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 TemperingBase | Parent |
typedef std::map< core::Size, ExchangeRequest > | ExchangeRequestMap |
typedef utility::vector1 < std::pair< ExchangeRequest, ExchangeRequest > > | MatchList |
Private Member Functions | |
void | process_match_list (MatchList const &list) |
void | send_swap_invites (ExchangeRequest const &request1, ExchangeRequest const &request2) |
void | process_matching_exchange_requests () |
bool | receive_exchange_requests () |
void | remove_cycles_from_request_list () |
void | start_listening () |
void | listen_for_rank (int other_rank) |
void | allocate_buffers () |
void | deallocate_buffers () |
Friends | |
std::ostream & | operator<< (std::ostream &os, AsyncMPITemperingBase::ExchangeRequest const &er) |
Additional Inherited Members | |
![]() | |
typedef utility::vector1 < core::Size > | GridCoord |
![]() | |
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::string > | Strings |
![]() | |
static void | register_options () |
Register the options used by this mover with the global options system. More... | |
![]() | |
static std::string | name () |
static void | register_options () |
Overload this static method if you access options within the mover. More... | |
![]() | |
utility::vector1< core::Real > | temperatures_ |
Temperature levels. More... | |
core::Size | temperature_stride_ |
Frequency for attempting temperature moves (e.g. once every io_stride_ steps). More... | |
core::Size | io_stride_ |
Frequency with which statistics should be written (e.g. once every io_stride_ steps). More... | |
bool | trust_current_temp_ |
If false, look for current temperature in monte_carlo_ before each move. Set to true by default. More... | |
bool | stats_line_output_ |
If true, a statistics summary will be written. More... | |
bool | stats_silent_output_ |
If true, the statistics summary will be inserted in a silent file. More... | |
std::string | stats_file_ |
Name of the silent file used for writing statistics. More... | |
protocols::jd2::JobOP | job_ |
Job object to report on temperatures. More... | |
bool | instance_initialized_ |
If false, init_from_options() will be called before the simulation starts. More... | |
core::Size | current_temp_ |
Current temperature level. Not the current temperature! More... | |
core::Size | temp_trial_count_ |
Number of times time_for_temp_move() has been called. This method is meant to be called every time temperature_move() is called. More... | |
MultiTemperatureTrialCounter | trial_counter_ |
|
private |
|
private |
protocols::canonical_sampling::AsyncMPITemperingBase::AsyncMPITemperingBase | ( | ) |
References allocate_buffers(), and utility_exit_with_message.
protocols::canonical_sampling::AsyncMPITemperingBase::AsyncMPITemperingBase | ( | AsyncMPITemperingBase const & | other | ) |
References allocate_buffers(), and utility_exit_with_message.
|
virtual |
References deallocate_buffers().
|
private |
References comm_size_, finished_recv_buffer_, finished_send_buffer_, protocols::canonical_sampling::mpi_size_FINISHED, protocols::canonical_sampling::mpi_size_SWAP_INVITE, protocols::canonical_sampling::mpi_size_XCHANGE_READY, rank(), recv_level_buffer_, send_level_buffer_, swap_invite_recv_buffer_, and swap_invite_send_buffer_.
Referenced by AsyncMPITemperingBase(), initialize_simulation(), and operator=().
|
inlinevirtual |
No-op implemented only to satisfy the Mover interface.
Reimplemented from protocols::canonical_sampling::TemperingBase.
Reimplemented in protocols::canonical_sampling::HamiltonianExchange.
|
private |
References finished_recv_buffer_, finished_send_buffer_, recv_level_buffer_, send_level_buffer_, swap_invite_recv_buffer_, and swap_invite_send_buffer_.
Referenced by finalize_simulation(), and ~AsyncMPITemperingBase().
|
virtual |
callback executed after all Monte Carlo trials
Reimplemented from protocols::canonical_sampling::TemperingBase.
References deallocate_buffers(), and protocols::canonical_sampling::TemperingBase::finalize_simulation().
|
protected |
References rank(), and swap_invite_recv_buffer_.
|
virtual |
Return true if the simulation has been completed.
Reimplemented from protocols::canonical_sampling::TemperatureController.
References comm_size_, finished_, finished_send_buffer_, protocols::canonical_sampling::TemperatureController::finished_simulation(), protocols::canonical_sampling::mpi_FINISHED, protocols::canonical_sampling::mpi_FINISHED_ACK, protocols::canonical_sampling::mpi_size_FINISHED, rank(), and runtime_assert.
|
virtual |
callback executed before any Monte Carlo trials
Reimplemented from protocols::canonical_sampling::TemperingBase.
Reimplemented in protocols::canonical_sampling::HamiltonianExchange.
References allocate_buffers(), protocols::canonical_sampling::TemperingBase::initialize_simulation(), and start_listening().
Referenced by protocols::canonical_sampling::HamiltonianExchange::initialize_simulation().
|
virtual |
Reimplemented from protocols::canonical_sampling::TemperingBase.
Reimplemented in protocols::canonical_sampling::HamiltonianExchange.
References allocate_buffers(), protocols::canonical_sampling::TemperingBase::initialize_simulation(), and start_listening().
|
private |
|
protectedpure virtual |
Implemented in protocols::canonical_sampling::HamiltonianExchange.
Referenced by time_for_temp_move().
AsyncMPITemperingBase & protocols::canonical_sampling::AsyncMPITemperingBase::operator= | ( | AsyncMPITemperingBase const & | other | ) |
References allocate_buffers(), comm_size_, finished_, finished_recv_buffer_, finished_send_buffer_, protocols::moves::Mover::operator=(), rank_, ready_for_exchange_, recv_level_buffer_, send_level_buffer_, swap_invite_recv_buffer_, and swap_invite_send_buffer_.
Referenced by protocols::canonical_sampling::HamiltonianExchange::operator=().
|
private |
References exchange_requests_, and send_swap_invites().
Referenced by process_matching_exchange_requests(), and remove_cycles_from_request_list().
|
private |
References exchange_requests_, level, process_match_list(), rank(), remove_cycles_from_request_list(), runtime_assert, and protocols::canonical_sampling::tr.
Referenced by time_for_temp_move().
|
inlineprotected |
References rank_.
Referenced by allocate_buffers(), find_exchange_partner(), finished_simulation(), protocols::canonical_sampling::HamiltonianExchange::initialize_simulation(), listen_for_rank(), process_matching_exchange_requests(), receive_exchange_requests(), send_swap_invites(), start_listening(), and time_for_temp_move().
|
private |
|
private |
|
private |
References protocols::canonical_sampling::mpi_size_SWAP_INVITE, protocols::canonical_sampling::mpi_SWAP_INVITE, rank(), protocols::canonical_sampling::AsyncMPITemperingBase::ExchangeRequest::rank_, runtime_assert, swap_invite_send_buffer_, and protocols::canonical_sampling::tr.
Referenced by process_match_list().
|
private |
|
protectedvirtual |
Return true if a temperature move should be made on this iteration.
Reimplemented from protocols::canonical_sampling::TemperingBase.
References comm_size_, protocols::canonical_sampling::mpi_size_SWAP_INVITE, protocols::canonical_sampling::mpi_size_XCHANGE_READY, protocols::canonical_sampling::mpi_SWAP_INVITE, protocols::canonical_sampling::mpi_XCHANGE_READY, next_exchange_level(), process_matching_exchange_requests(), rank(), ready_for_exchange_, receive_exchange_requests(), protocols::canonical_sampling::TemperingBase::reset_temp_counter(), runtime_assert, send_level_buffer_, swap_invite_recv_buffer_, protocols::canonical_sampling::TemperingBase::temperature_level(), protocols::canonical_sampling::TemperingBase::time_for_temp_move(), and protocols::canonical_sampling::tr.
|
friend |
|
private |
Referenced by allocate_buffers(), finished_simulation(), operator=(), receive_exchange_requests(), start_listening(), and time_for_temp_move().
|
private |
|
private |
Referenced by finished_simulation(), and operator=().
|
private |
Referenced by allocate_buffers(), deallocate_buffers(), operator=(), and start_listening().
|
private |
Referenced by allocate_buffers(), deallocate_buffers(), finished_simulation(), and operator=().
|
private |
Referenced by operator=(), and rank().
|
private |
Referenced by operator=(), and time_for_temp_move().
|
private |
Referenced by allocate_buffers(), deallocate_buffers(), listen_for_rank(), operator=(), and receive_exchange_requests().
|
private |
Referenced by allocate_buffers(), deallocate_buffers(), operator=(), and time_for_temp_move().
|
private |
Referenced by allocate_buffers(), deallocate_buffers(), find_exchange_partner(), operator=(), and time_for_temp_move().
|
private |
Referenced by allocate_buffers(), deallocate_buffers(), operator=(), and send_swap_invites().