|
| LoopBuilder () |
| Default constructor. More...
|
|
| ~LoopBuilder () override |
| Default destructor. More...
|
|
void | parse_my_tag (utility::tag::TagCOP tag, basic::datacache::DataMap &data) override |
| Return the name of this mover. More...
|
|
void | use_fragments (utility::vector1< core::fragment::FragSetCOP > const &frag_libs) |
| Use the given fragment libraries when building the loop. More...
|
|
core::Size | get_max_attempts () const |
| Return the number of times KIC will be invoked before the LoopBuilder gives up. More...
|
|
void | set_max_attempts (core::Size attempts) |
| Specify how many time to invoke KIC before giving up. 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...
|
|
utilities::TrajectoryLoggerOP | get_logger () const |
| Return the object that report on the progress of the protocol. More...
|
|
std::string | get_name () const override |
| Each derived class must specify its name. The class name. More...
|
|
| LoopMover () |
| Default constructor. More...
|
|
void | parse_my_tag (utility::tag::TagCOP tag, basic::datacache::DataMap &data) override |
| Configure from a RosettaScripts tag. More...
|
|
void | apply (Pose &pose) override |
| Sample the pose in the regions specified by get_loops(). More...
|
|
string | get_name () const override |
| Return the name of this mover. 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...
|
|
Build loops from scratch.
- Author
- Kale Kundert
-
Roland A. Pache, PhD
Building a loop from scratch is useful in two scenarios. The first is when there's missing density that needs to be modeled, and the second is when the whole loop modeling algorithm needs to be benchmarked. This mover uses kinematic closure (KIC) to build loops. By default, the loop are built by picking phi and psi values from a Ramachandran distribution and setting all other DOFs to ideal values. Phi and psi values can also be picked using fragment libraries. Loop building succeeds when a model is found that passes a more-lenient-than-usual bump check. If no such model is found after 1000 iterations, the mover gives up and reports failure.
This process can be very slow for long loops, because there's nothing guiding the algorithm towards the right solution. By default, torsions are just being randomly picked, and they often won't fit in the relatively narrow space that's available. The problem is worse for interior loops than it is for surface loops, of course. This algorithm seems to work well enough on 12 residue loops, but beyond that it may be necessary to develop a smarter algorithm that preferentially builds into free space.