|
| | LoopProtocol () |
| | Default constructor. More...
|
| |
| | ~LoopProtocol () override |
| | Default destructor. More...
|
| |
| void | parse_my_tag (utility::tag::TagCOP tag, basic::datacache::DataMap &data) override |
| | Configure from a RosettaScripts tag. More...
|
| |
| void | add_mover (LoopMoverOP mover) |
| | Add a LoopMover to the simulation. More...
|
| |
| void | add_refiner (LoopMoverOP refiner) |
| | Add a LoopMover to the simulation as a refiner. More...
|
| |
| void | add_filter (protocols::filters::FilterOP filter) |
| | Add a Filter to the simulation. More...
|
| |
| void | add_acceptance_check (string name="loop_move") |
| | Add an acceptance check to the simulation. More...
|
| |
| void | clear_movers () |
| | Remove all movers from the protocol. More...
|
| |
| void | clear_refiners () |
| | Remove all refiners from the protocol. More...
|
| |
| void | clear_movers_and_refiners () |
| | Remove all movers and refiners from the protocol. More...
|
| |
| void | mark_as_default () |
| | Indicate that every mover that is currently part of the protocol should be removed the next time a mover is added. More...
|
| |
| core::scoring::ScoreFunctionOP | get_score_function () const |
| | Get the score function to be used on the next call to apply(). More...
|
| |
| void | set_score_function (core::scoring::ScoreFunctionOP score_function) |
| | Set the score function to be used on the next call to apply(). More...
|
| |
| void | set_sfxn_cycles (core::Size x) |
| | Set the number of iterations the loop that ramps the score function should make. More...
|
| |
| core::Size | get_sfxn_cycles () const |
| | Get the number of iterations the loop that ramps the score function will make. More...
|
| |
| void | set_temp_cycles (core::Size x, bool times_loop_length=false) |
| | Set the number of iterations the loop that ramps the temperature should make. More...
|
| |
| core::Size | get_temp_cycles () const |
| | Get the number of iterations the loop that ramps the temperature should make. More...
|
| |
| void | set_mover_cycles (core::Size x) |
| | Specify how many times the loops movers should be invoked after the score function and temperature have been updated. More...
|
| |
| core::Size | get_mover_cycles () const |
| | Return how many times the loops movers will be invoked after the score function and temperature have been updated. More...
|
| |
| void | mark_as_test_run () |
| | Indicate that this protocol is being used for a test run. More...
|
| |
| void | set_repulsive_term_ramping (bool value) |
| | Enable or disable ramping the repulsive term of the score function. More...
|
| |
| void | set_rama_term_ramping (bool value) |
| | Enable or disable ramping the repulsive term of the score function. More...
|
| |
| void | set_cst_term_ramping (bool value) |
| | Enable or disable ramping of constraints terms of the score funciton. More...
|
| |
| void | set_temperature_ramping (bool value) |
| | Enable or disable temperature ramping in this simulation. More...
|
| |
| void | set_temperature_schedule (Real start, Real stop) |
| | Set the initial and final temperatures for the simulation. More...
|
| |
| utilities::TrajectoryLoggerOP | get_logger () const |
| | Return the object that report on the progress of the protocol. More...
|
| |
| std::string | get_name () const override |
| | Return the name of this mover. More...
|
| |
| | LoopMover () |
| | Default constructor. More...
|
| |
| void | apply (Pose &pose) override |
| | Sample the pose in the regions specified by get_loops(). More...
|
| |
| virtual void | get_children_names (utility::vector1< std::string > &names, std::string indent="") const |
| | Add the names of all the algorithms invoked by this loop mover to the given list. Indentation is used to represent hierarchy. More...
|
| |
| bool | was_successful () const |
| | Return true if the previous move was successful. More...
|
| |
| void | was_successful (bool value) |
| | Set the success status of a loop mover. More...
|
| |
| LoopsOP | get_loops () |
| | Return the loops to be sampled on the next call to apply(). More...
|
| |
| LoopsCOP | get_loops () const |
| | Return the loops to be sampled on the next call to apply(). More...
|
| |
| Loop const & | get_loop (core::Size index) const |
| | Return the specified loop. More...
|
| |
| void | set_loops (LoopsOP loops) |
| | Set the loops to be sampled on the next call to apply(). More...
|
| |
| void | set_loops (Loops const &loops) |
| | Set the loops to be sampled on the next call to apply(). More...
|
| |
| void | set_loop (Loop const &loop) |
| | Set the loop to be sampled on the next call to apply(). More...
|
| |
| template<typename ToolTypeOP > |
| ToolTypeOP | get_tool (std::string key) const |
| | Request a tool from this mover or any of its parents. More...
|
| |
| template<typename ToolTypeOP > |
| ToolTypeOP | get_tool (std::string key, ToolTypeOP fallback) const |
| | Request a tool from this mover or any of its parents. More...
|
| |
| template<typename ToolTypeOP > |
| ToolTypeOP | set_tool (std::string key, ToolTypeOP value) |
| | Provide a tool for this mover or any of its children to use. More...
|
| |
| virtual FoldTreeRequest | request_fold_tree () const |
| | Return an enum representing the kind of fold tree that is compatible with this mover. More...
|
| |
| void | trust_fold_tree () |
| | Promise that the calling code will setup a fold tree compatible with request_fold_tree(). If this method is not called, this mover will setup a fold tree on its own every time apply() is called. More...
|
| |
| | 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 MoverOP | clone () const |
| | Return a clone of the Mover object. 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 |
| |
| 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...
|
| |
Monte Carlo search for low energy loop conformations.
This class provides an easy way to run a Monte Carlo simulation searching for the lowest energy conformations for a set of loops. This simulation is organized into three nested loops. On each iteration of the outermost loop, the lowest scoring pose is recovered and the repulsive terms in the score function may be ramped (although this ramping is disabled by default). On each iteration of the intermediate loop, the temperature may be ramped (this ramping is enabled by default). And on each iteration of the innermost loop, a new conformation is sampled and either accepted or rejected according to the Metropolis criterion. The intermediate loop usually goes through more than 100 iterations, while the innermost and outermost loops only go through less than 5.
Like any mover, all the work is done by the apply() method. The rest of the methods of this class are just getters and setters that can be used to control various aspects of the simulation. The add_mover(), add_filter(), and add_acceptance_check() methods are worth drawing some attention to. These methods are used to build up the group of LoopMover objects that samples new loop conformations in the innermost loop. The movers are guaranteed to be applied in the order they are added to the protocol.
| void protocols::loop_modeling::LoopProtocol::add_refiner |
( |
LoopMoverOP |
refiner | ) |
|
Add a LoopMover to the simulation as a refiner.
This method is very similar to add_mover(). Both methods add a new LoopMover to the simulation. This difference is subtle, but relevant when a LoopProtocol is being filled with a default set of movers that might be modified later.
This situation arises when a LoopModeler object is being constructed, or when a <LoopModeler> tag is being parsed by rosetta scripts. In both of these cases, centroid and fullatom LoopProtocols are created right away and filled with default movers. This avoids the necessity of specifying all the usual movers every time loop modeling is invoked. But the default movers may be subsequently overridden. In this case, there is a difference between LoopMovers added via add_mover() (i.e. movers) and add_refiner() (i.e. refiners).
The difference is that movers can be marked as "default" and then be implicitly overridden. Consider the following sequence of calls:
protocol->add_mover(new CcdMover);
protocol->mark_as_default();
protocol->add_mover(new KicMover);
This will result in a LoopProtocol containing only a KicMover. When mark_as_default() is called, all movers within the protocol are set to be replaced the next time add_mover() is called. You can think of those movers as being part of a default configuration that should be replaced when a new configuration is given.
Refiners are not affected by mark_as_default(). Calling add_refiner() will always add a refiner and will never remove old ones, although old refiners can be explicitly removed with clear_refiners(). Refiners are also applied after movers, regardless of the order in which add_mover() and add_refiner() were called. The purpose of all this is to make it easy to replace the parts of a LoopProtocol that are more variable without having to also replace those that are more static.
The variable part of a LoopProtocol is typically the sampling algorithm: KIC or CCD, often with myriad options. The static part is typically the refinement algorithm: minimization, rotamer trials, and repacking, all with carefully tuned parameters. Using add_mover(), mark_as_default(), and add_refiner() makes it easy to change the sampling algorithm without having to worry about the refinement algorithm.
- See also
- add_mover()
-
mark_as_default()