|
| KicMover () |
| Default constructor. More...
|
|
| ~KicMover () |
| Default destructor. More...
|
|
std::string | get_name () const |
| Return the name of this mover. More...
|
|
pivot_pickers::PivotPickerOP | get_pivot_picker () |
| Return the PivotPicker being used by this mover. More...
|
|
solution_pickers::SolutionPickerOP | get_solution_picker () |
| Return the SolutionPicker being used by this mover. More...
|
|
void | add_perturber (perturbers::PerturberOP perturber) |
| Specify how the non-pivot torsions should be sampled. More...
|
|
void | clear_perturbers () |
| Forget any perturbers that had been previously added. More...
|
|
void | set_pivot_picker (pivot_pickers::PivotPickerOP picker) |
| Specify how the pivot residues should be chosen. More...
|
|
void | set_solution_picker (solution_pickers::SolutionPickerOP picker) |
| Specify how a solution should be chosen. More...
|
|
protocols::loop_modeling::FoldTreeRequest | request_fold_tree () const |
|
| LoopMover () |
| Default constructor. More...
|
|
| ~LoopMover () |
| Default destructor. More...
|
|
void | apply (Pose &pose) |
| Sample the pose in the regions specified by get_loops(). More...
|
|
bool | was_successful () const |
| Return true if the previous move was successful. More...
|
|
Loops | get_loops () const |
| Return the loops to be sampled on the next call to apply(). More...
|
|
core::scoring::ScoreFunctionCOP | get_score_function () const |
| Return the score function to be used on the next call to apply(). More...
|
|
core::scoring::ScoreFunctionOP | get_score_function () |
| Return the score function to be used on the next call to apply() (non-const access). More...
|
|
void | set_loop (Loop const &loop) |
| Set the loop 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_score_function (core::scoring::ScoreFunctionOP sfxn) |
| Set the score function to be used on the next call to apply(). 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, most movers will setup a fold tree on their own the first time apply() is called. 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...
|
|
virtual void | parse_my_tag (TagCOP tag, basic::datacache::DataMap &data, Filters_map const &filters, Movers_map const &movers, Pose const &pose) |
| Called by MoverFactory when constructing new Movers. Takes care of the specific mover's parsing. 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 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...
|
|
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...
|
|
Find a new backbone conformation for some region of a protein.
The first step in the kinematic closure algorithm is to pick a loop and three pivot residues. Any residues in the loop that are not pivots are called non-pivots. The non-pivot backbone torsions are used to make new conformations, while the pivot torsions are used to ensure that the backbone stays closed. Use set_loops() to specify loops to sample. Use set_pivot_picker() to specify how the pivots should be chosen. Use add_perturber() to specify how the non-pivots should be sampled. By default, the algorithm will pick pivots randomly within the region being sampled and will sample the non-pivot torsions from a rama distribution.
Given a set of pivot residues and nonpivot torsion angles, the algorithm will find up to 16 possible solutions. The set_solution_picker() method allows you to control which solution, if any, is picked. By default, the first solution found which passes both a rama and a bump check is used.
- Note
- The default kinematic closure algorithm samples both pivot and nonpivot torsions from a rama distribution. Because this algorithm is often used in situations where the score function also contains a rama term, the rama bias is usually double-counted. This is bad, because it means that backbone torsions are normally sampled too narrowly. There are two proper ways to deal with this, but they both have drawbacks. The first would be to sample from a uniform distribution and to let the score function take care of preferring angles that fit the rama distribution. Unfortunately, this would be much less efficient than the current approach, primarily because the rama check is fast and filters out a lot of bad solutions. The second approach would be to sample from a rama distribution and to remove the rama term from the score function. This would be even more efficient than the current approach, but it would be prone to bugs because other parts of the code wouldn't expect the score function to be changing on every invocation of KIC.
Once the algorithm has been setup using the helper methods described above, apply() can be called to actually sample a new backbone conformation.