31#include <utility/LexicographicalIterator.hh>//not OPable; needs full header
32#include <utility/vector1.hh>
33#include <utility/pointer/ReferenceCount.hh>
34
35// C++ Headers
36#include <string>
37#include <map>
38
39namespace protocols {
40namespace loops {
41namespace loop_closure {
42namespace kinematic_closure {
43
44 /// @brief pure virtual base class for KinematicPerturber. KinematicPerturbers determine HOW loops should be perturbed. The base class contains a provision for determining WHERE they should be perturbed: MoveMap sensitivity.
137 ///@brief varies torsions always and bond angles sometimes. Currently torsion varying will respect a movemap if present; angles do NOT look for a movemap.
185 ///@brief varies torsions always and bond angles sometimes. Currently torsion varying will respect a movemap if present; angles do NOT look for a movemap. -- note that the analytic closure and pivot selection currently do not respect movemaps though
224 /// @brief WARNING WARNING UNTESTED!!!! used to work in other implementation
225 /// @brief probably works now, but to make sure you shoud doublecheck
226// @brief if you plan to use
227 ///@details Here's some commentary on why the TorsionSweepingKinematicPerturber is Fun and Awesome to use! Basically, you take the loop as given and search for solutions nearby. Its purpose is not to produce large changes, but instead to produce small perturbations to find the bottom of the current energy well. It's not meant to be used for the original KIC protocol, in which the pivots are changed regularly: you can't sweep through nonpivot torsion space if the pivots don't stay the same.
373 /// @brief Taboo-sampling kinematic perturber (still samples randomly, but only within a specific torsion bin, and the Taboo sampler ensures that this torsion bin is varied in each iteration)
441 /// @brief Neighbor-dependent Taboo-sampling kinematic perturber (still samples randomly, but only within a given torsion bin; the Taboo sampler ensures that this torsion bin is varied in each iteration) that uses neighbor-dependent Ramachandran distributions (rama2b)