![]() |
Rosetta Protocols
2014.35
|
Apply rama and bump checks to quickly filter out bad solutions. More...
#include <FilteredSolutions.hh>
Public Member Functions | |
FilteredSolutions (bool check_rama=true, bool check_overlap=true, bool be_lenient=false) | |
Constructor which can enable or disable any of the filters used by this algorithm. More... | |
bool | pick_and_apply (Pose &pose, SolutionList const &solutions) |
Pick a solution from the given list, and if apply it to the given pose. If no solution is satisfactory, don't do anything. More... | |
void | check_rama () |
Enable the rama check. More... | |
void | check_overlap () |
Enable the bump check. More... | |
void | be_lenient () |
Make the bump check more lenient. More... | |
void | dont_check_rama () |
Disable the rama check. More... | |
void | dont_check_overlap () |
Disable the bump check. More... | |
void | dont_be_lenient () |
Make the bump check more lenient. More... | |
Private Attributes | |
bool | check_rama_ |
bool | check_overlap_ |
bool | be_lenient_ |
Apply rama and bump checks to quickly filter out bad solutions.
The rama check only considers the pivot torsions, since it is assumed that the non-pivot torsions were set as desired. This check employs a Monte Carlo acceptance step, which means that the pivot torsions will really be sampled from a rama distribution (ignoring the inherent geometric biases in the closure algorithm) when this check is enabled. However, note that the rama distribution will be double-counted if the score function also contains a rama term, which it usually does.
The bump check checks for clashes between the N, CA, C, O, and CB atoms of every residue in the loop versus every other residue in the protein. This filter is O(n^2) and is much slower than the constant time rama check. The rama check is also very selective; it usually filters out more than 90% of proposed solutions. For these reasons, it is important that the rama check be run before the bump check. You can disable the rama check, but this would probably lead to a noticeable drop in performance.
protocols::kinematic_closure::solution_pickers::FilteredSolutions::FilteredSolutions | ( | bool | check_rama = true , |
bool | check_overlap = true , |
||
bool | be_lenient = false |
||
) |
Constructor which can enable or disable any of the filters used by this algorithm.
|
inline |
Make the bump check more lenient.
References be_lenient_.
|
inline |
Enable the bump check.
References check_overlap_.
|
inline |
Enable the rama check.
References check_rama_.
|
inline |
Make the bump check more lenient.
References be_lenient_.
|
inline |
Disable the bump check.
References check_overlap_.
|
inline |
Disable the rama check.
References check_rama_.
|
virtual |
Pick a solution from the given list, and if apply it to the given pose. If no solution is satisfactory, don't do anything.
Implements protocols::kinematic_closure::solution_pickers::SolutionPicker.
|
private |
Referenced by be_lenient(), and dont_be_lenient().
|
private |
Referenced by check_overlap(), and dont_check_overlap().
|
private |
Referenced by check_rama(), and dont_check_rama().