Rosetta
|
Central mover of stepwise Monte Carlo protocols, handing work off to special move types. More...
#include <StepWiseMasterMover.hh>
Public Member Functions | |
StepWiseMasterMover (core::scoring::ScoreFunctionCOP scorefxn, protocols::stepwise::monte_carlo::options::StepWiseMonteCarloOptionsCOP options) | |
~StepWiseMasterMover () override | |
void | apply (Pose &) override |
Main Method. More... | |
std::string | get_name () const override |
Each derived class must specify its name. The class name. More... | |
StepWiseMasterMover (StepWiseMasterMover const &src) | |
protocols::moves::MoverOP | clone () const override |
Return a clone of the Mover object. More... | |
void | apply (core::pose::Pose &pose, StepWiseMove const &stepwise_move, bool const figure_out_all_possible_moves=true) |
void | do_the_move (StepWiseMove const &move, core::pose::Pose &pose) |
bool | apply_legacy (Pose &) |
void | initialize (core::scoring::ScoreFunctionCOP scorefxn, protocols::stepwise::monte_carlo::options::StepWiseMonteCarloOptionsCOP options) |
void | initialize_pose_if_empty (core::pose::Pose &pose) |
void | set_minimize_single_res (bool const minimize_single_res) |
bool | do_test_move (StepWiseMove const &move, core::pose::Pose &pose) |
void | preminimize_pose (core::pose::Pose &pose) |
void | set_options (protocols::stepwise::monte_carlo::options::StepWiseMonteCarloOptionsCOP options) |
void | set_scorefxn (core::scoring::ScoreFunctionCOP scorefxn) |
std::string | move_type_string () const |
bool | success () const |
core::Real const & | proposal_density_ratio () const |
void | resample_full_model (core::pose::Pose const &start_pose, core::pose::Pose &output_pose, bool const checkpointing_breadcrumbs) |
void | resample_full_model (core::pose::Pose const &start_pose, core::pose::Pose &output_pose, bool const checkpointing_breadcrumbs, utility::vector1< core::Size > const &residues_to_resample, core::Size const resample_round, core::Size const nstruct) |
void | build_full_model (core::pose::Pose const &start_pose, core::pose::Pose &full_model_pose, bool const &choose_random=false) |
void | set_submotif_library (monte_carlo::submotif::SubMotifLibraryCOP setting) |
StepWiseMoveSelectorCOP | stepwise_move_selector () const |
![]() | |
Mover () | |
virtual MoverOP | create () |
MoverCOP | get_self_ptr () const |
MoverOP | get_self_ptr () |
MoverCAP | get_self_weak_ptr () const |
MoverAP | get_self_weak_ptr () |
Mover (std::string const &type_name) | |
sets the type for a mover; name_ has been removed (2010/05/14) More... | |
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... | |
virtual bool | reinitialize_for_each_job () const |
Inform 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 |
Inform 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 MoverOP | fresh_instance () const |
Generates a new Mover object freshly created with the default ctor. More... | |
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... | |
void | set_type (std::string const &setting) |
Set the 'type' string. More... | |
std::string | get_type () const |
void | type (const std::string &type_in) |
Set the 'type' string. More... | |
std::string const & | type () const |
Get the set 'type' string. More... | |
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 | parse_my_tag (TagCOP tag, basic::datacache::DataMap &data) |
Called by MoverFactory when constructing new Movers. Takes care of the specific mover's parsing. More... | |
void | set_current_job (protocols::jobdist::BasicJobCOP job) |
jobdist::BasicJobCOP | get_current_job () const |
virtual void | set_current_tag (std::string const &new_tag) |
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... | |
virtual void | show (std::ostream &output=std::cout) const |
Outputs details about the Mover, including current settings. More... | |
virtual core::Real | last_proposal_density_ratio () |
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 void | provide_citation_info (basic::citation_manager::CitationCollectionList &) const |
Provide citations to the passed CitationCollectionList Subclasses should add the info for themselves and any other classes they use. More... | |
Private Member Functions | |
void | initialize () |
bool | test_all_moves (core::pose::Pose &pose) |
void | test_all_moves_recursively (core::pose::Pose &pose) |
utility::vector1< StepWiseMove > | moves_for_pose (core::pose::Pose const &start_pose, utility::vector1< core::Size > const &residues_to_rebuild) |
Additional Inherited Members | |
![]() | |
typedef utility::tag::TagCOP | TagCOP |
typedef core::pose::Pose | Pose |
typedef core::pose::PoseCOP | PoseCOP |
typedef std::list< std::string > | Strings |
![]() | |
static std::string | name () |
static void | register_options () |
Overload this static method if you access options within the mover. 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... | |
Central mover of stepwise Monte Carlo protocols, handing work off to special move types.
It's worth noting that one function that for historical reasons is a method of this class is capable of spawning threads. Notably, that method is not called by this Mover's apply function (rather, it calls this Mover's apply function!) and so you don't have to worry. If you are studying this class as an archetypical example of a Mover, for one thing, don't do that because it isn't; for another thing, don't multithread your apply function as a misguided inference from how this Mover has a multithreaded function that's not apply.
protocols::stepwise::monte_carlo::mover::StepWiseMasterMover::StepWiseMasterMover | ( | core::scoring::ScoreFunctionCOP | scorefxn, |
protocols::stepwise::monte_carlo::options::StepWiseMonteCarloOptionsCOP | options | ||
) |
References initialize().
|
overridedefault |
protocols::stepwise::monte_carlo::mover::StepWiseMasterMover::StepWiseMasterMover | ( | StepWiseMasterMover const & | src | ) |
References initialize(), options_, and scorefxn_.
void protocols::stepwise::monte_carlo::mover::StepWiseMasterMover::apply | ( | core::pose::Pose & | pose, |
StepWiseMove const & | stepwise_move, | ||
bool const | figure_out_all_possible_moves = true |
||
) |
References protocols::stepwise::monte_carlo::mover::ADD, protocols::stepwise::monte_carlo::mover::ADD_LOOP_RES, protocols::stepwise::monte_carlo::mover::StepWiseMove::attachments(), core::pose::full_model_info::const_full_model_info(), protocols::stepwise::monte_carlo::mover::DELETE_LOOP_RES, do_the_move(), protocols::stepwise::monte_carlo::get_move_type_string(), protocols::stepwise::monte_carlo::mover::StepWiseMove::move_type(), move_type_string_, options_, proposal_density_ratio_, scorefxn_, stepwise_move_selector_, protocols::stepwise::modeler::switch_focus_to_other_pose(), and protocols::TR().
|
overridevirtual |
Main Method.
Implements protocols::moves::Mover.
References apply_legacy(), move_type_string_, options_, proposal_density_ratio_, stepwise_move_selector_, and success_.
Referenced by resample_full_model(), and test_all_moves_recursively().
bool protocols::stepwise::monte_carlo::mover::StepWiseMasterMover::apply_legacy | ( | pose::Pose & | pose | ) |
void protocols::stepwise::monte_carlo::mover::StepWiseMasterMover::build_full_model | ( | core::pose::Pose const & | start_pose, |
core::pose::Pose & | full_model_pose, | ||
bool const & | choose_random = false |
||
) |
References add_mover_, add_or_delete_mover_, core::pose::full_model_info::const_full_model_info(), initialize(), move_type_string(), options_, core::pose::full_model_info::FullModelInfo::res_list(), core::pose::full_model_info::FullModelInfo::rna_bulge_res(), core::pose::stepwise_addable_residue(), protocols::TR(), and core::pose::full_model_info::FullModelInfo::working_res().
Referenced by protocols::stepwise::monte_carlo::build_full_model().
|
overridevirtual |
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.
bool protocols::stepwise::monte_carlo::mover::StepWiseMasterMover::do_test_move | ( | StepWiseMove const & | move, |
core::pose::Pose & | pose | ||
) |
void protocols::stepwise::monte_carlo::mover::StepWiseMasterMover::do_the_move | ( | StepWiseMove const & | move, |
core::pose::Pose & | pose | ||
) |
References protocols::stepwise::monte_carlo::mover::ADD, protocols::stepwise::monte_carlo::mover::ADD_LOOP_RES, add_or_delete_mover_, protocols::stepwise::monte_carlo::mover::ADD_SUBMOTIF, protocols::stepwise::monte_carlo::mover::DELETE, protocols::stepwise::monte_carlo::mover::DELETE_LOOP_RES, protocols::stepwise::monte_carlo::mover::FROM_SCRATCH, protocols::stepwise::monte_carlo::mover::StepWiseMove::move_type(), move_type_string_, protocols::stepwise::monte_carlo::mover::RESAMPLE, protocols::stepwise::monte_carlo::mover::RESAMPLE_INTERNAL_LOCAL, resample_mover_, and vary_loop_length_mover_.
Referenced by apply(), and do_test_move().
|
inlineoverridevirtual |
Each derived class must specify its name. The class name.
Implements protocols::moves::Mover.
|
private |
References add_mover_, add_or_delete_mover_, delete_mover_, from_scratch_mover_, protocols::moves::Mover::get_native_pose(), options_, resample_mover_, scorefxn_, protocols::stepwise::monte_carlo::mover::setup_unified_stepwise_modeler(), stepwise_modeler_, stepwise_move_selector_, submotif_library_, and vary_loop_length_mover_.
Referenced by build_full_model(), initialize(), resample_full_model(), set_options(), and StepWiseMasterMover().
void protocols::stepwise::monte_carlo::mover::StepWiseMasterMover::initialize | ( | core::scoring::ScoreFunctionCOP | scorefxn, |
protocols::stepwise::monte_carlo::options::StepWiseMonteCarloOptionsCOP | options | ||
) |
References initialize(), options_, and scorefxn_.
void protocols::stepwise::monte_carlo::mover::StepWiseMasterMover::initialize_pose_if_empty | ( | core::pose::Pose & | pose | ) |
References add_or_delete_mover_, options_, and core::pose::Pose::size().
|
inline |
References move_type_string_.
Referenced by build_full_model().
|
private |
References protocols::stepwise::monte_carlo::mover::BOND_TO_NEXT, protocols::stepwise::monte_carlo::mover::BOND_TO_PREVIOUS, core::conformation::Residue::connection_incomplete(), core::pose::Pose::fold_tree(), core::kinematics::FoldTree::get_parent_residue(), core::conformation::Residue::has_lower_connect(), core::conformation::Residue::has_upper_connect(), core::conformation::Residue::has_variant_type(), core::conformation::Residue::is_polymer(), core::conformation::Residue::is_virtual_residue(), protocols::stepwise::monte_carlo::mover::JUMP_DOCK, core::chemical::ResidueType::lower_connect_id(), core::chemical::LOWER_TERMINUS_VARIANT, core::conformation::Residue::name(), protocols::stepwise::monte_carlo::mover::RESAMPLE, protocols::stepwise::monte_carlo::mover::RESAMPLE_INTERNAL_LOCAL, core::pose::Pose::residue(), core::pose::Pose::size(), protocols::TR(), core::conformation::Residue::type(), core::chemical::ResidueType::upper_connect_id(), and core::chemical::UPPER_TERMINUS_VARIANT.
Referenced by resample_full_model().
void protocols::stepwise::monte_carlo::mover::StepWiseMasterMover::preminimize_pose | ( | core::pose::Pose & | pose | ) |
References core::pose::fix_up_residue_type_variants(), protocols::stepwise::modeler::get_all_residues(), core::pose::full_model_info::get_moving_res_from_full_model_info(), core::pose::full_model_info::nonconst_full_model_info(), core::pose::full_model_info::FullModelInfo::other_pose_list(), and stepwise_modeler_.
Referenced by do_test_move().
|
inline |
References proposal_density_ratio_.
void protocols::stepwise::monte_carlo::mover::StepWiseMasterMover::resample_full_model | ( | core::pose::Pose const & | start_pose, |
core::pose::Pose & | output_pose, | ||
bool const | checkpointing_breadcrumbs | ||
) |
References core::pose::Pose::size().
Referenced by protocols::rna::movers::ERRASER2Protocol::resample_full_model().
void protocols::stepwise::monte_carlo::mover::StepWiseMasterMover::resample_full_model | ( | core::pose::Pose const & | start_pose, |
core::pose::Pose & | output_pose, | ||
bool const | checkpointing_breadcrumbs, | ||
utility::vector1< core::Size > const & | residues_to_resample, | ||
core::Size const | resample_round, | ||
core::Size const | nstruct | ||
) |
References core::pose::addVirtualResAsRoot(), apply(), core::pose::Pose::dump_pdb(), protocols::stepwise::monte_carlo::mover::ensure_appropriate_foldtree_for_move(), core::chemical::FA_STANDARD, core::import_pose::pose_stream::PDBPoseInputStream::fill_pose(), core::pose::Pose::fold_tree(), initialize(), moves_for_pose(), core::pose::full_model_info::nonconst_full_model_info(), protocols::stepwise::monte_carlo::mover::read_checkpoint_log(), protocols::stepwise::monte_carlo::mover::residue_rebuild_checkpoint_namer(), protocols::stepwise::monte_carlo::mover::residue_rebuild_log_namer(), core::pose::full_model_info::SAMPLE, scorefxn_, protocols::stepwise::monte_carlo::mover::set_up_params_for_move(), stepwise_move_selector_, protocols::TR(), and protocols::stepwise::monte_carlo::mover::write_checkpoint().
void protocols::stepwise::monte_carlo::mover::StepWiseMasterMover::set_minimize_single_res | ( | bool const | minimize_single_res | ) |
References add_or_delete_mover_, minimize_single_res_, and resample_mover_.
Referenced by apply_legacy().
void protocols::stepwise::monte_carlo::mover::StepWiseMasterMover::set_options | ( | protocols::stepwise::monte_carlo::options::StepWiseMonteCarloOptionsCOP | options | ) |
References initialize(), and options_.
|
inline |
References scorefxn_.
|
inline |
References submotif_library_.
|
inline |
References stepwise_move_selector_.
|
inline |
References success_.
|
private |
References num_tested_moves_, and test_all_moves_recursively().
Referenced by do_test_move().
|
private |
References protocols::stepwise::monte_carlo::mover::ADD, add_mover_, apply(), protocols::stepwise::monte_carlo::get_all_res_list(), protocols::stepwise::monte_carlo::mover::StepWiseMove::move_type(), num_tested_moves_, options_, stepwise_move_selector_, success_, and protocols::TR().
Referenced by test_all_moves().
|
private |
Referenced by build_full_model(), initialize(), and test_all_moves_recursively().
|
private |
Referenced by apply_legacy(), build_full_model(), do_the_move(), initialize(), initialize_pose_if_empty(), and set_minimize_single_res().
|
private |
Referenced by initialize().
|
private |
Referenced by initialize().
|
private |
Referenced by apply_legacy(), and set_minimize_single_res().
|
private |
Referenced by apply(), apply_legacy(), do_the_move(), and move_type_string().
|
private |
Referenced by test_all_moves(), and test_all_moves_recursively().
|
private |
|
private |
Referenced by apply(), apply_legacy(), and proposal_density_ratio().
|
private |
Referenced by apply_legacy(), do_the_move(), initialize(), and set_minimize_single_res().
|
private |
Referenced by apply(), initialize(), resample_full_model(), set_scorefxn(), and StepWiseMasterMover().
|
private |
Referenced by initialize(), and preminimize_pose().
|
private |
Referenced by apply(), initialize(), resample_full_model(), stepwise_move_selector(), and test_all_moves_recursively().
|
private |
Referenced by initialize(), and set_submotif_library().
|
private |
Referenced by apply(), apply_legacy(), success(), and test_all_moves_recursively().
|
private |
Referenced by do_the_move(), and initialize().