|
Rosetta
|
This mover performs a cyclic-aware crankshaft flip at a residue position. More...
#include <CrankshaftFlipMover.hh>

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... | |
| CrankshaftFlipMover & | operator= (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 Strings & | info () |
| 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... | |
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" |
| protocols::cyclic_peptide::CrankshaftFlipMover::CrankshaftFlipMover | ( | ) |
Constructors ///.
Default constructor
References allow_peptide_flips_, allow_peptoid_flips_, allow_pre_gly_flips_, and tolerance_.
| 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_.
| protocols::cyclic_peptide::CrankshaftFlipMover::CrankshaftFlipMover | ( | CrankshaftFlipMover const & | src | ) |
|
override |
Destructor (important for properly forward-declaring smart-pointer members)
|
inline |
References allow_peptide_flips_.
|
inline |
References allow_peptide_flips_.
|
inline |
References allow_peptoid_flips_.
|
inline |
Setters and Getters.
References allow_peptoid_flips_.
|
inline |
References allow_pre_gly_flips_.
|
inline |
References allow_pre_gly_flips_.
| 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().
|
overridevirtual |
Mover Methods ///.
Apply the mover.
Apply the mover
Implements protocols::moves::Mover.
References allow_peptide_flips_, allow_peptoid_flips_, allow_pre_gly_flips_, core::conformation::Residue::connected_residue_at_resconn(), core::conformation::Residue::has_upper_connect(), core::pose::Pose::residue(), selector_, core::pose::Pose::size(), protocols::cyclic_peptide::TR(), try_peptide_flip(), try_peptoid_flip(), try_pre_gly_flip(), core::conformation::Residue::type(), and core::chemical::ResidueType::upper_connect_id().
|
overridevirtual |
required in the context of the parser/scripting scheme
Reimplemented from protocols::moves::Mover.
|
overridevirtual |
required in the context of the parser/scripting scheme
Reimplemented from protocols::moves::Mover.
|
overridevirtual |
Each derived class must specify its name. The class name.
Implements protocols::moves::Mover.
References mover_name().
|
static |
| 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_.
|
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_.
|
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().
|
static |
|
inline |
References selector_.
Referenced by selector().
| void protocols::cyclic_peptide::CrankshaftFlipMover::selector | ( | core::select::residue_selector::ResidueSelectorCOP | selector | ) |
Setter for selector.
References selector(), and selector_.
|
overridevirtual |
Show the contents of the Mover.
Reimplemented from protocols::moves::Mover.
References protocols::moves::Mover::show().
Referenced by protocols::cyclic_peptide::operator<<().
|
inline |
References tolerance_.
|
inline |
References tolerance(), and tolerance_.
Referenced by tolerance().
| bool protocols::cyclic_peptide::CrankshaftFlipMover::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.
returns true if res1 is Peptide and res2 is Peptide (not P) and both positions have correct dihedrals
References core::chemical::ResidueTypeBase::aa(), core::chemical::aa_pro, angle_degrees_in_range(), core::chemical::ResidueTypeBase::is_protein(), core::chemical::ResidueTypeBase::name(), core::pose::Pose::omega(), core::pose::Pose::phi(), core::pose::Pose::psi(), core::pose::Pose::residue(), core::pose::Pose::set_omega(), core::pose::Pose::set_phi(), core::pose::Pose::set_psi(), protocols::cyclic_peptide::TR(), and core::conformation::Residue::type().
Referenced by apply().
| bool protocols::cyclic_peptide::CrankshaftFlipMover::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.
returns true if res1 is Peptoid or Gly and res2 is Peptoid, Pro, or N-Methyl
References core::chemical::ResidueTypeBase::aa(), core::chemical::aa_gly, core::chemical::aa_pro, core::chemical::ResidueType::is_N_substituted(), core::chemical::ResidueTypeBase::is_peptoid(), core::pose::Pose::omega(), core::pose::Pose::phi(), core::pose::Pose::psi(), core::pose::Pose::residue(), core::pose::Pose::set_omega(), core::pose::Pose::set_phi(), core::pose::Pose::set_psi(), and core::conformation::Residue::type().
Referenced by apply().
| bool protocols::cyclic_peptide::CrankshaftFlipMover::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.
returns true if res1 is Peptoid or Peptide and res2 is Gly and both positions have correct dihedrals
References core::chemical::ResidueTypeBase::aa(), core::chemical::aa_gly, angle_degrees_in_range(), core::chemical::ResidueTypeBase::is_peptoid(), core::chemical::ResidueTypeBase::is_protein(), core::chemical::ResidueTypeBase::name(), core::pose::Pose::phi(), core::pose::Pose::psi(), core::pose::Pose::residue(), core::pose::Pose::set_phi(), core::pose::Pose::set_psi(), protocols::cyclic_peptide::TR(), and core::conformation::Residue::type().
Referenced by apply().
|
private |
Referenced by allow_peptide_flips(), apply(), CrankshaftFlipMover(), operator=(), and parse_my_tag().
|
private |
Referenced by allow_peptoid_flips(), apply(), CrankshaftFlipMover(), operator=(), and parse_my_tag().
|
private |
Referenced by allow_pre_gly_flips(), apply(), CrankshaftFlipMover(), operator=(), and parse_my_tag().
|
private |
Referenced by apply(), CrankshaftFlipMover(), operator=(), parse_my_tag(), and selector().
|
private |
Referenced by angle_degrees_in_range(), CrankshaftFlipMover(), operator=(), parse_my_tag(), and tolerance().