Rosetta
|
Performs a rigid-body movement on a segment of a protein Derived classes must implement 'getCoordinateTransform' and 'apply'. More...
#include <RBSegmentMover.hh>
Public Member Functions | |
RBSegmentMover () | |
constructor More... | |
RBSegmentMover (RBSegment const &seg) | |
constructor More... | |
void | apply (core::pose::Pose &pose) override=0 |
Apply the rigid-body fragment mover to a pose. Must be defined by derived classes. More... | |
virtual void | set_segment (RBSegment const &seg) |
Set the segment this mover is working on. More... | |
std::string | get_name () const override |
Each derived class must specify its name. The class name. More... | |
virtual void | getCoordinateTransformation (core::pose::Pose const &, numeric::xyzVector< core::Real > &rotationCenter, numeric::xyzMatrix< core::Real > &coordinateTransform) |
Returns: (a) the matrix that rotates global coordinates into local fragment coordinates and (b) the center of rotation of the fragment. Default implementation sets them to global coords. More... | |
virtual void | set_movement (core::Real p1=0.0, core::Real p2=0.0, core::Real p3=0.0, core::Real p4=0.0) |
Set mover-specific movement parameters. Do nothing by default. More... | |
virtual void | set_movement (RBSegment const &rb) |
steal movement params from a segment definition More... | |
void | applyRotation (core::pose::Pose &pose, core::Real alpha, core::Real beta, core::Real gamma) |
Apply an arbitrary rotation specified by Euler angles (in degrees!) More... | |
void | applyRotation (core::pose::Pose &pose, numeric::xyzMatrix< core::Real > rotation) |
Apply an arbitrary rotation specified by a rotation matrix. More... | |
void | applyTranslation (core::pose::Pose &pose, numeric::xyzVector< core::Real > translation) |
Apply an arbitrary translation. More... | |
void | applyTransformation (core::pose::Pose &pose, numeric::xyzMatrix< core::Real > rotation, numeric::xyzVector< core::Real > translation) |
Apply a rotation followed by a translation (does not recompute coordinate transformation between the two!) More... | |
void | applySpin (core::pose::Pose &pose, numeric::xyzVector< core::Real > rotationAxis, core::Real degrees) |
Apply a spin of the specified angle (in degrees) about arbitrary axis. More... | |
void | setResidueRange (RBSegment const &seg) |
(re)set the starting and ending residues of this transform More... | |
RBSegment const & | getResidueRange () |
Get the the starting and ending residues of transform. More... | |
void | print () |
Print debugging info. 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 |
virtual void | parse_my_tag (TagCOP tag, basic::datacache::DataMap &data) |
Called by MoverFactory when constructing new Movers. Takes care of the specific mover's parsing. More... | |
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... | |
Protected Member Functions | |
numeric::xyzVector< core::Real > | getCoM (core::pose::Pose const &pose) |
Helper function computes center of mass of the segment in the pose. More... | |
![]() | |
void | set_last_move_status (MoverStatus status) |
nonvirtual setter for MoverStatus last_status_. Protected means that only the mover itself will be able to change its own status. The job distributor (august 08 vintage) is aware of status set with this function and will do what the MoverStatus says. More... | |
Static Protected Member Functions | |
static numeric::xyzMatrix< core::Real > | coordTransformFromThreePoints (numeric::xyzVector< core::Real > ori, numeric::xyzVector< core::Real > zAxis, numeric::xyzVector< core::Real > xzPlane) |
Helper function to get a coordinate transformation from 3 points: the origin, a point specifying the +z axis, and a point specifying the x-z plane. More... | |
Protected Attributes | |
RBSegment | segment_ |
Additional Inherited Members | |
![]() | |
typedef utility::tag::TagCOP | TagCOP |
typedef core::pose::Pose | Pose |
typedef core::pose::PoseCOP | PoseCOP |
typedef std::list< std::string > | Strings |
![]() | |
static std::string | name () |
static void | register_options () |
Overload this static method if you access options within the mover. More... | |
Performs a rigid-body movement on a segment of a protein Derived classes must implement 'getCoordinateTransform' and 'apply'.
|
inline |
constructor
|
inline |
constructor
|
overridepure virtual |
Apply the rigid-body fragment mover to a pose. Must be defined by derived classes.
Implements protocols::moves::Mover.
Implemented in protocols::rbsegment_relax::StrandTwistingMover, protocols::rbsegment_relax::GaussianRBSegmentMover, protocols::rbsegment_relax::SequenceShiftMover, and protocols::rbsegment_relax::HelicalGaussianMover.
|
inline |
Apply an arbitrary rotation specified by Euler angles (in degrees!)
References core::scoring::sa.
void protocols::rbsegment_relax::RBSegmentMover::applyRotation | ( | core::pose::Pose & | pose, |
numeric::xyzMatrix< core::Real > | rotation | ||
) |
Apply an arbitrary rotation specified by a rotation matrix.
void protocols::rbsegment_relax::RBSegmentMover::applySpin | ( | core::pose::Pose & | pose, |
numeric::xyzVector< core::Real > | rotationAxis, | ||
core::Real | degrees | ||
) |
Apply a spin of the specified angle (in degrees) about arbitrary axis.
void protocols::rbsegment_relax::RBSegmentMover::applyTransformation | ( | core::pose::Pose & | pose, |
numeric::xyzMatrix< core::Real > | rotation, | ||
numeric::xyzVector< core::Real > | translation | ||
) |
Apply a rotation followed by a translation (does not recompute coordinate transformation between the two!)
References core::pose::Pose::batch_set_xyz(), core::sequence::end, protocols::mean_field::max(), protocols::mean_field::min(), core::pose::Pose::residue(), core::pose::Pose::size(), protocols::loops::start, and core::pose::Pose::xyz().
void protocols::rbsegment_relax::RBSegmentMover::applyTranslation | ( | core::pose::Pose & | pose, |
numeric::xyzVector< core::Real > | translation | ||
) |
Apply an arbitrary translation.
References core::pose::Pose::batch_set_xyz(), core::sequence::end, protocols::mean_field::max(), protocols::mean_field::min(), core::pose::Pose::residue(), core::pose::Pose::size(), protocols::loops::start, and core::pose::Pose::xyz().
|
staticprotected |
Helper function to get a coordinate transformation from 3 points: the origin, a point specifying the +z axis, and a point specifying the x-z plane.
References trans().
|
overridevirtual |
Each derived class must specify its name. The class name.
Implements protocols::moves::Mover.
Reimplemented in protocols::rbsegment_relax::StrandTwistingMover, protocols::rbsegment_relax::GaussianRBSegmentMover, protocols::rbsegment_relax::SequenceShiftMover, and protocols::rbsegment_relax::HelicalGaussianMover.
|
inlineprotected |
Helper function computes center of mass of the segment in the pose.
References core::sequence::end, protocols::mean_field::max(), protocols::mean_field::min(), core::chemical::element::N, core::pose::Pose::residue(), core::pose::Pose::size(), protocols::loops::start, and core::conformation::Residue::xyz().
|
inlinevirtual |
Returns: (a) the matrix that rotates global coordinates into local fragment coordinates and (b) the center of rotation of the fragment. Default implementation sets them to global coords.
Reimplemented in protocols::rbsegment_relax::StrandTwistingMover, protocols::rbsegment_relax::GaussianRBSegmentMover, and protocols::rbsegment_relax::HelicalGaussianMover.
RBSegment const & protocols::rbsegment_relax::RBSegmentMover::getResidueRange | ( | ) |
Get the the starting and ending residues of transform.
|
inline |
Print debugging info.
References protocols::rbsegment_relax::RBSegment::nContinuousSegments(), and segment_.
|
virtual |
Set mover-specific movement parameters. Do nothing by default.
Reimplemented in protocols::rbsegment_relax::SequenceShiftMover, protocols::rbsegment_relax::StrandTwistingMover, protocols::rbsegment_relax::GaussianRBSegmentMover, and protocols::rbsegment_relax::HelicalGaussianMover.
Referenced by set_movement().
|
inlinevirtual |
steal movement params from a segment definition
References protocols::rbsegment_relax::RBSegment::get_movement(), and set_movement().
|
inlinevirtual |
Set the segment this mover is working on.
References segment_.
Referenced by protocols::rbsegment_relax::OptimizeThreadingMover::apply(), and protocols::rbsegment_relax::ConfChangeMover::stage1().
void protocols::rbsegment_relax::RBSegmentMover::setResidueRange | ( | RBSegment const & | seg | ) |
(re)set the starting and ending residues of this transform
|
protected |
Referenced by print(), and set_segment().