![]() |
Rosetta Protocols
2014.35
|
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... | |
virtual void | apply (core::pose::Pose &pose)=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... | |
virtual std::string | get_name () const |
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 | ~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... | |
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 protocols::filters::Filters_map | Filters_map |
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
|
pure 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 numeric::conversions::radians(), rotation, sa, numeric::xyzMatrix< class >::xx(), numeric::xyzMatrix< class >::xy(), numeric::xyzMatrix< class >::xz(), numeric::xyzMatrix< class >::yx(), numeric::xyzMatrix< class >::yy(), numeric::xyzMatrix< class >::yz(), numeric::xyzMatrix< class >::zx(), numeric::xyzMatrix< class >::zy(), and numeric::xyzMatrix< class >::zz().
void protocols::rbsegment_relax::RBSegmentMover::applyRotation | ( | core::pose::Pose & | pose, |
numeric::xyzMatrix< core::Real > | rotation | ||
) |
Apply an arbitrary rotation specified by a rotation matrix.
References core::pose::Pose::batch_set_xyz(), end, numeric::inverse(), core::conformation::Residue::natoms(), core::pose::Pose::residue(), protocols::loops::start, core::pose::Pose::total_residue(), and core::pose::Pose::xyz().
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.
References numeric::conversions::radians(), rotation, and numeric::rotation_matrix().
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(), end, numeric::inverse(), core::conformation::Residue::natoms(), core::pose::Pose::residue(), protocols::loops::start, core::pose::Pose::total_residue(), 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(), end, core::conformation::Residue::natoms(), core::pose::Pose::residue(), protocols::loops::start, core::pose::Pose::total_residue(), 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 numeric::xyzMatrix< class >::col_x(), numeric::xyzMatrix< class >::col_y(), numeric::xyzMatrix< class >::col_z(), numeric::xyzVector< class >::cross(), numeric::xyzVector< class >::normalize(), numeric::xyzVector< class >::project_normal(), and trans().
|
virtual |
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 end, N, core::pose::Pose::residue(), protocols::loops::start, core::pose::Pose::total_residue(), 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.
References numeric::xyzMatrix< class >::clear(), numeric::xyzMatrix< class >::xx(), numeric::xyzMatrix< class >::yy(), and numeric::xyzMatrix< class >::zz().
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::StrandTwistingMover, protocols::rbsegment_relax::GaussianRBSegmentMover, protocols::rbsegment_relax::SequenceShiftMover, 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().
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().