Rosetta
Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
protocols::cyclic_peptide::CrankshaftFlipMover Class Reference

This mover performs a cyclic-aware crankshaft flip at a residue position. More...

#include <CrankshaftFlipMover.hh>

Inheritance diagram for protocols::cyclic_peptide::CrankshaftFlipMover:
Inheritance graph
[legend]

Public Member Functions

 CrankshaftFlipMover ()
 Constructors ///. More...
 
 CrankshaftFlipMover (core::select::residue_selector::ResidueSelectorCOP selector_in, bool allow_peptoid_flip_in, bool allow_peptide_flip_in, bool allow_pre_gly_flip_in, core::Real tolerance_in)
 Constructor. More...
 
 CrankshaftFlipMover (CrankshaftFlipMover const &src)
 Copy Constructor. More...
 
 ~CrankshaftFlipMover () override
 Destructor (important for properly forward-declaring smart-pointer members) More...
 
void apply (core::pose::Pose &pose) override
 Mover Methods ///. More...
 
void show (std::ostream &output=std::cout) const override
 Show the contents of the Mover. More...
 
bool try_peptoid_flip (core::pose::Pose &pose, core::Size res1_index, core::Size res2_index)
 Check if peptoid flip can be done at position, if it can flip poistion and return true else return false. More...
 
bool try_peptide_flip (core::pose::Pose &pose, core::Size res1_index, core::Size res2_index)
 Check if peptide flip can be done at position, if it can flip poistion and return true else return false. More...
 
bool try_pre_gly_flip (core::pose::Pose &pose, core::Size res1_index, core::Size res2_index)
 Check if pre-gly flip can be done at position, if it can flip poistion and return true else return false. More...
 
void allow_peptoid_flips (bool af)
 Setters and Getters. More...
 
void allow_peptide_flips (bool af)
 
void allow_pre_gly_flips (bool af)
 
bool allow_peptoid_flips ()
 
bool allow_peptide_flips ()
 
bool allow_pre_gly_flips ()
 
bool angle_degrees_in_range (core::Real angle, core::Real target)
 returns true if the angle is close to the target withing some tolerance More...
 
void selector (core::select::residue_selector::ResidueSelectorCOP selector)
 Setter for selector. More...
 
core::select::residue_selector::ResidueSelectorCOP selector ()
 
core::Real tolerance () const
 
void tolerance (core::Real tolerance)
 
void parse_my_tag (utility::tag::TagCOP tag, basic::datacache::DataMap &data) override
 Rosetta Scripts Support ///. More...
 
CrankshaftFlipMoveroperator= (CrankshaftFlipMover const &src)
 Mover Methods ///. More...
 
protocols::moves::MoverOP fresh_instance () const override
 required in the context of the parser/scripting scheme More...
 
protocols::moves::MoverOP clone () const override
 required in the context of the parser/scripting scheme More...
 
std::string get_name () const override
 Each derived class must specify its name. The class name. More...
 
void provide_citation_info (basic::citation_manager::CitationCollectionList &citations) const override
 Sets up the citation info. More...
 
- Public Member Functions inherited from protocols::moves::Mover
 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 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...
 
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
 
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 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 Stringsinfo ()
 non-const accessor More...
 
virtual Strings const & info () const
 const accessor More...
 

Static Public Member Functions

static std::string mover_name ()
 
static void provide_xml_schema (utility::tag::XMLSchemaDefinition &xsd)
 
- Static Public Member Functions inherited from protocols::moves::Mover
static std::string name ()
 
static void register_options ()
 Overload this static method if you access options within the mover. More...
 

Private Attributes

bool allow_peptoid_flips_
 
bool allow_peptide_flips_
 
bool allow_pre_gly_flips_
 
core::Real tolerance_
 
core::select::residue_selector::ResidueSelectorCOP selector_
 

Additional Inherited Members

- Public Types inherited from protocols::moves::Mover
typedef utility::tag::TagCOP TagCOP
 
typedef core::pose::Pose Pose
 
typedef core::pose::PoseCOP PoseCOP
 
typedef std::list< std::string > Strings
 
- Protected Member Functions inherited from protocols::moves::Mover
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...
 

Detailed Description

This mover performs a cyclic-aware crankshaft flip at a residue position.

In lattice-based polymer simulations, crankshaft flips are moves that involve two adjacent monomers in a loop moving together (http://aip.scitation.org/doi/abs/10.1063/1.431297). In peptides, the equivalent is two backbone atoms, C_i and N_(i+1) moving by correlated rotations in psi_i, phi_(i+1). This move has been observed in several experimental contexts, including in crystal structures of antibody loops(http://doi.org/10.1016/j.jmb.2010.10.030) and in simulations of cyclic peptides (https://pubs.acs.org/doi/10.1021/acs.jctc.6b00193) and in simulations of cyclic peptoids (https://pubs.acs.org/doi/full/10.1021/acs.jpcb.2c01669). It should be useful in loop modeling and cyclic-peptides/peptoids/hybrids. Depending on the residue type different rules are uswed to flip the backbone, outlined in the table below. This mover is designed to be general and compatible with both homo- and hetero-polymers of the following type: peptides (not Gly or Pro), peptoids, glycine, proline, and N-methylated amino acids. The purtubations that are allowed for different combinations at the i and i+1 positions and compatible conformations are described in the table below.

| i | i+1 | Action | Nickname | |-----------—+---------------------—+-----------------------------------------------------------------------------------—+--------—| | Peptoid, Gly | Peptoid, Pro, N-Methyl | phi_i negate, psi_i negate, omg_i flip by 180 | "Peptoid" | | Any(?) | Gly | psi_i 0<->(-30,180), phi_i+1 180<->(-90,+-60) | "Pre-Gly" | | Peptide | Peptide (not P) | if psi_i/phi_i+1 near -120/-60 or 120/60: psi_i negate, omg_i negate, phi_i+1 negate | "Peptide" |

Constructor & Destructor Documentation

◆ CrankshaftFlipMover() [1/3]

protocols::cyclic_peptide::CrankshaftFlipMover::CrankshaftFlipMover ( )

Constructors ///.

Default constructor

References allow_peptide_flips_, allow_peptoid_flips_, allow_pre_gly_flips_, and tolerance_.

◆ CrankshaftFlipMover() [2/3]

protocols::cyclic_peptide::CrankshaftFlipMover::CrankshaftFlipMover ( core::select::residue_selector::ResidueSelectorCOP  selector_in,
bool  allow_peptoid_flip_in = true,
bool  allow_peptide_flip_in = true,
bool  allow_pre_gly_flip_in = true,
core::Real  tolerance_in = 20.0 
)

Constructor.

References selector_.

◆ CrankshaftFlipMover() [3/3]

protocols::cyclic_peptide::CrankshaftFlipMover::CrankshaftFlipMover ( CrankshaftFlipMover const &  src)

Copy Constructor.

Copy constructor.

References selector_.

◆ ~CrankshaftFlipMover()

protocols::cyclic_peptide::CrankshaftFlipMover::~CrankshaftFlipMover ( )
override

Destructor (important for properly forward-declaring smart-pointer members)

Member Function Documentation

◆ allow_peptide_flips() [1/2]

bool protocols::cyclic_peptide::CrankshaftFlipMover::allow_peptide_flips ( )
inline

References allow_peptide_flips_.

◆ allow_peptide_flips() [2/2]

void protocols::cyclic_peptide::CrankshaftFlipMover::allow_peptide_flips ( bool  af)
inline

References allow_peptide_flips_.

◆ allow_peptoid_flips() [1/2]

bool protocols::cyclic_peptide::CrankshaftFlipMover::allow_peptoid_flips ( )
inline

References allow_peptoid_flips_.

◆ allow_peptoid_flips() [2/2]

void protocols::cyclic_peptide::CrankshaftFlipMover::allow_peptoid_flips ( bool  af)
inline

Setters and Getters.

References allow_peptoid_flips_.

◆ allow_pre_gly_flips() [1/2]

bool protocols::cyclic_peptide::CrankshaftFlipMover::allow_pre_gly_flips ( )
inline

References allow_pre_gly_flips_.

◆ allow_pre_gly_flips() [2/2]

void protocols::cyclic_peptide::CrankshaftFlipMover::allow_pre_gly_flips ( bool  af)
inline

References allow_pre_gly_flips_.

◆ angle_degrees_in_range()

bool protocols::cyclic_peptide::CrankshaftFlipMover::angle_degrees_in_range ( core::Real  angle,
core::Real  target 
)

returns true if the angle is close to the target withing some tolerance

References tolerance_.

Referenced by try_peptide_flip(), and try_pre_gly_flip().

◆ apply()

void protocols::cyclic_peptide::CrankshaftFlipMover::apply ( core::pose::Pose pose)
overridevirtual

◆ clone()

protocols::moves::MoverOP protocols::cyclic_peptide::CrankshaftFlipMover::clone ( ) const
overridevirtual

required in the context of the parser/scripting scheme

Reimplemented from protocols::moves::Mover.

◆ fresh_instance()

protocols::moves::MoverOP protocols::cyclic_peptide::CrankshaftFlipMover::fresh_instance ( ) const
overridevirtual

required in the context of the parser/scripting scheme

Reimplemented from protocols::moves::Mover.

◆ get_name()

std::string protocols::cyclic_peptide::CrankshaftFlipMover::get_name ( ) const
overridevirtual

Each derived class must specify its name. The class name.

Implements protocols::moves::Mover.

References mover_name().

◆ mover_name()

std::string protocols::cyclic_peptide::CrankshaftFlipMover::mover_name ( )
static

◆ operator=()

CrankshaftFlipMover & protocols::cyclic_peptide::CrankshaftFlipMover::operator= ( CrankshaftFlipMover const &  src)

Mover Methods ///.

copy assignment operator

References allow_peptide_flips_, allow_peptoid_flips_, allow_pre_gly_flips_, selector_, and tolerance_.

◆ parse_my_tag()

void protocols::cyclic_peptide::CrankshaftFlipMover::parse_my_tag ( utility::tag::TagCOP  tag,
basic::datacache::DataMap data 
)
overridevirtual

Rosetta Scripts Support ///.

parse XML tag (to use this Mover in Rosetta Scripts)

Reimplemented from protocols::moves::Mover.

References allow_peptide_flips_, allow_peptoid_flips_, allow_pre_gly_flips_, core::select::residue_selector::parse_residue_selector(), selector_, and tolerance_.

◆ provide_citation_info()

void protocols::cyclic_peptide::CrankshaftFlipMover::provide_citation_info ( basic::citation_manager::CitationCollectionList &  citations) const
overridevirtual

Sets up the citation info.

This mover is unpublished. It returns P. Douglas Renfrew as its author.

Reimplemented from protocols::moves::Mover.

References mover_name().

◆ provide_xml_schema()

void protocols::cyclic_peptide::CrankshaftFlipMover::provide_xml_schema ( utility::tag::XMLSchemaDefinition &  xsd)
static

◆ selector() [1/2]

core::select::residue_selector::ResidueSelectorCOP protocols::cyclic_peptide::CrankshaftFlipMover::selector ( )
inline

References selector_.

Referenced by selector().

◆ selector() [2/2]

void protocols::cyclic_peptide::CrankshaftFlipMover::selector ( core::select::residue_selector::ResidueSelectorCOP  selector)

Setter for selector.

References selector(), and selector_.

◆ show()

void protocols::cyclic_peptide::CrankshaftFlipMover::show ( std::ostream &  output = std::cout) const
overridevirtual

Show the contents of the Mover.

Reimplemented from protocols::moves::Mover.

References protocols::moves::Mover::show().

Referenced by protocols::cyclic_peptide::operator<<().

◆ tolerance() [1/2]

core::Real protocols::cyclic_peptide::CrankshaftFlipMover::tolerance ( ) const
inline

References tolerance_.

◆ tolerance() [2/2]

void protocols::cyclic_peptide::CrankshaftFlipMover::tolerance ( core::Real  tolerance)
inline

References tolerance(), and tolerance_.

Referenced by tolerance().

◆ try_peptide_flip()

bool protocols::cyclic_peptide::CrankshaftFlipMover::try_peptide_flip ( core::pose::Pose pose,
core::Size  res1_index,
core::Size  res2_index 
)

◆ try_peptoid_flip()

bool protocols::cyclic_peptide::CrankshaftFlipMover::try_peptoid_flip ( core::pose::Pose pose,
core::Size  res1_index,
core::Size  res2_index 
)

◆ try_pre_gly_flip()

bool protocols::cyclic_peptide::CrankshaftFlipMover::try_pre_gly_flip ( core::pose::Pose pose,
core::Size  res1_index,
core::Size  res2_index 
)

Member Data Documentation

◆ allow_peptide_flips_

bool protocols::cyclic_peptide::CrankshaftFlipMover::allow_peptide_flips_
private

◆ allow_peptoid_flips_

bool protocols::cyclic_peptide::CrankshaftFlipMover::allow_peptoid_flips_
private

◆ allow_pre_gly_flips_

bool protocols::cyclic_peptide::CrankshaftFlipMover::allow_pre_gly_flips_
private

◆ selector_

core::select::residue_selector::ResidueSelectorCOP protocols::cyclic_peptide::CrankshaftFlipMover::selector_
private

◆ tolerance_

core::Real protocols::cyclic_peptide::CrankshaftFlipMover::tolerance_
private

The documentation for this class was generated from the following files: