Rosetta  2020.37
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes | List of all members
protocols::simple_moves::BackboneMover Class Referenceabstract

BackboneMover class has elements of the MC temperature to do repetitions of bb moves (small, shear, wobble, etc.). More...

#include <BackboneMover.hh>

Inheritance diagram for protocols::simple_moves::BackboneMover:
Inheritance graph
[legend]

Public Types

typedef core::Real Real
 
- 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
 

Public Member Functions

 BackboneMover ()
 
 BackboneMover (core::kinematics::MoveMapOP movemap_in, core::Real temperature_in, core::Size nmoves_in)
 
 BackboneMover (BackboneMover const &src)
 Copy constructor. More...
 
 ~BackboneMover () override
 
void apply (core::pose::Pose &) override
 Main Method. More...
 
std::string get_name () const override
 Each derived class must specify its name. The class name. More...
 
void show (std::ostream &output=std::cout) const override
 Outputs details about the Mover, including current settings. More...
 
virtual void setup_list (core::pose::Pose &)=0
 
virtual void set_angles (core::Real)=0
 
bool make_move (core::pose::Pose &)
 
virtual bool move_with_scorefxn (core::pose::Pose &pose)=0
 
virtual bool move_with_rama (core::pose::Pose &pose)=0
 
void test_move (core::pose::Pose &) override
 : Unit test support function. Apply one move to a given pose. Allows extra test specific functions to be called before applying More...
 
void clear ()
 
bool check_rama ()
 
void temperature (core::Real const temperature_in)
 
core::Real temperature () const
 
void nmoves (core::Size const nmoves_in)
 
core::Size nmoves () const
 
void movemap (core::kinematics::MoveMapOP new_movemap)
 
void movemap_factory (core::select::movemap::MoveMapFactoryCOP new_movemap_factory)
 
core::kinematics::MoveMapCOP movemap (core::pose::Pose const &pose)
 Get the movemap for this pose. More...
 
core::select::residue_selector::ResidueSelectorCOP selector () const
 Return the residue selector that can be used to dynamically select residues to perturb at runtime. More...
 
void selector (core::select::residue_selector::ResidueSelectorCOP selector)
 
core::scoring::ScoreFunctionOP scorefxn () const
 If set, this scorefunction will be used instead of the original rama method (default = not set). More...
 
void scorefxn (core::scoring::ScoreFunctionOP sfxn)
 
void angle_max (core::Real const angle)
 Set the maximum angle of perturbation, independent of secondary structure. new_angle = old_angle +/- ( angle_max/2 ) More...
 
void angle_max (char const type, core::Real const angle)
 Sets the max angle of perturbation for residues with <type> secondary structure. (<type> must be 'H', 'E', or 'L'.) new_angle = old_angle +/- ( angle_max/2 ) More...
 
void angle_max (std::map< char, core::Real > angle_max_in)
 Sets the max angle of perturbation, for secondary structures 'H', 'E', and 'L'. new_angle = old_angle +/- ( angle_max/2 ) More...
 
core::Real get_angle_max (char const type) const
 Gets the max angle of perturbation for residues with <type> secondary structure. (<type> must be 'H', 'E', or 'L'.) More...
 
void set_residue_selector (core::select::residue_selector::ResidueSelectorCOP selector)
 Set the ResidueSelector that this mover will use. More...
 
void parse_my_tag (utility::tag::TagCOP tag, basic::datacache::DataMap &data) override
 Called by MoverFactory when constructing new Movers. Takes care of the specific mover's parsing. More...
 
bool preserve_detailed_balance () const override
 get whether detailed balance is preserved (i.e. no Ramachandran biasing) More...
 
void set_preserve_detailed_balance (bool preserve_detailed_balance) override
 set whether detailed balance is preserved (i.e. no Ramachandran biasing) More...
 
utility::vector1
< core::id::DOF_ID_Range
dof_id_ranges (core::pose::Pose &pose) override=0
 get the DOF_IDs perturbed by the mover during moves, along with their ranges More...
 
- Public Member Functions inherited from protocols::canonical_sampling::ThermodynamicMover
 ThermodynamicMover ()
 Default constructor. More...
 
 ~ThermodynamicMover () override
 Default destructor. More...
 
virtual void initialize_simulation (core::pose::Pose &pose, protocols::canonical_sampling::MetropolisHastingsMover const &metropolis_hastings_mover, core::Size cycle)
 Callback executed before any Monte Carlo trials are attempted. More...
 
virtual void observe_after_metropolis (protocols::canonical_sampling::MetropolisHastingsMover const &metropolis_hastings_mover)
 Callback executed after the Metropolis criterion is evaluated. More...
 
core::Real last_proposal_density_ratio () override
 Return the proposal density ratio for last apply method. More...
 
virtual void finalize_simulation (core::pose::Pose &pose, protocols::canonical_sampling::MetropolisHastingsMover const &metropolis_hastings_mover)
 Callback executed after all Monte Carlo trials are completed. More...
 
virtual bool is_multi_trial ()
 Return true if the move performs multiple trials on each apply. More...
 
virtual core::Real last_inner_score_delta_over_temperature ()
 If this is a multi-trial move, return the change in internal score/temperature caused by the last call to apply(). More...
 
virtual
protocols::canonical_sampling::MetropolisHastingsMoverAP 
metropolis_hastings_mover ()
 If this is a multi-trial move, return the MetropolisHastingsMover being used internally. More...
 
virtual void set_metropolis_hastings_mover (protocols::canonical_sampling::MetropolisHastingsMoverAP metropolis_hastings_mover)
 If this is a multi-trial move, set the MetropolisHastingsMover to be used internally. More...
 
virtual utility::vector1
< core::id::TorsionID_Range
torsion_id_ranges (core::pose::Pose &pose)=0
 Return a list specifying which torsions may be perturbed by apply(), and the in what range each perturbation may be. 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 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
 
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 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...
 
virtual bool mover_provides_citation_info () const
 Does this mover provide information about how to cite it? More...
 
virtual utility::vector1
< basic::citation_manager::CitationCollectionCOP > 
provide_citation_info () const
 Provide the citation. More...
 
virtual bool mover_is_unpublished () const
 Does this mover indicate that it is unpublished (and, by extension, that the author should be included in publications resulting from it)? More...
 
virtual utility::vector1
< basic::citation_manager::UnpublishedModuleInfoCOP > 
provide_authorship_info_for_unpublished () const
 Provide a list of authors and their e-mail addresses, as strings. More...
 

Static Public Member Functions

static
utility::tag::XMLSchemaComplexTypeGeneratorOP 
complex_type_generator_for_backbone_mover (utility::tag::XMLSchemaDefinition &xsd)
 
static std::string backbone_mover_complex_type_namer (std::string tag_name)
 
- 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...
 

Protected Member Functions

core::select::residue_selector::ResidueSubset compute_selected_residues (core::pose::Pose const &pose) const
 Set the ResidueSelector that this mover will use. More...
 
utility::vector1
< core::id::TorsionID
get_mainchain_TorsionIDs (core::conformation::Conformation const &conf, core::uint const seqpos) const
 Return a list of TorsionIDs for the standard main-chain torsions of this residue. More...
 
bool are_torsions_allowed (utility::vector1< core::id::TorsionID > torsions, core::kinematics::MoveMapCOP mm) const
 Is this set of torsions allowed to move by the MoveMap? More...
 
- 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...
 

Protected Attributes

std::map< char, core::Realangle_max_
 
core::uint resnum_
 
core::Real big_angle_
 
core::Real small_angle_
 
utility::vector1
< core::id::TorsionID
moving_torsions_
 
utility::vector1< std::tuple
< core::uint, utility::vector1
< core::id::TorsionID >
, core::Real > > 
move_pos_list_
 
core::Real old_rama_score_
 
core::Real new_rama_score_
 

Private Attributes

core::select::movemap::MoveMapFactoryCOP movemap_factory_
 
core::kinematics::MoveMapOP movemap_
 
core::scoring::ScoreFunctionOP scorefxn_
 
core::Real temperature_
 
core::Size nmoves_
 
bool preserve_detailed_balance_
 
core::select::residue_selector::ResidueSelectorCOP selector_
 

Detailed Description

BackboneMover class has elements of the MC temperature to do repetitions of bb moves (small, shear, wobble, etc.).

Member Typedef Documentation

Constructor & Destructor Documentation

protocols::simple_moves::BackboneMover::BackboneMover ( )
protocols::simple_moves::BackboneMover::BackboneMover ( core::kinematics::MoveMapOP  movemap_in,
core::Real  temperature_in,
core::Size  nmoves_in 
)
protocols::simple_moves::BackboneMover::BackboneMover ( BackboneMover const &  src)

Copy constructor.

References scorefxn_, and selector_.

protocols::simple_moves::BackboneMover::~BackboneMover ( )
overridedefault

Member Function Documentation

void protocols::simple_moves::BackboneMover::angle_max ( core::Real const  angle)

Set the maximum angle of perturbation, independent of secondary structure. new_angle = old_angle +/- ( angle_max/2 )

Example: bbmover.angle_max(25) See also: ShearMover SmallMover

Referenced by BackboneMover(), parse_my_tag(), protocols::grafting::perturb_backbone_for_test(), and protocols::mpi_refinement::WorkUnit_RamaPerturber::run().

void protocols::simple_moves::BackboneMover::angle_max ( char const  type,
core::Real const  angle 
)

Sets the max angle of perturbation for residues with <type> secondary structure. (<type> must be 'H', 'E', or 'L'.) new_angle = old_angle +/- ( angle_max/2 )

Example: bbmover.angle_max('H', 25)

See also: ShearMover SmallMover

References angle_max_, and protocols::moves::Mover::type().

void protocols::simple_moves::BackboneMover::angle_max ( std::map< char, core::Real angle_max_in)

Sets the max angle of perturbation, for secondary structures 'H', 'E', and 'L'. new_angle = old_angle +/- ( angle_max/2 )

References angle_max_.

void protocols::simple_moves::BackboneMover::apply ( core::pose::Pose )
overridevirtual
bool protocols::simple_moves::BackboneMover::are_torsions_allowed ( utility::vector1< core::id::TorsionID torsions,
core::kinematics::MoveMapCOP  mm 
) const
protected

Is this set of torsions allowed to move by the MoveMap?

Returns false if any of the torsions in the passed list are disallowed OR if the list is empty.

Author
Labonte JWLab.nosp@m.onte.nosp@m.@jhu..nosp@m.edu

Referenced by protocols::simple_moves::SmallMover::setup_list(), and protocols::simple_moves::ShearMover::setup_list().

std::string protocols::simple_moves::BackboneMover::backbone_mover_complex_type_namer ( std::string  tag_name)
static
bool protocols::simple_moves::BackboneMover::check_rama ( )
void protocols::simple_moves::BackboneMover::clear ( )
utility::tag::XMLSchemaComplexTypeGeneratorOP protocols::simple_moves::BackboneMover::complex_type_generator_for_backbone_mover ( utility::tag::XMLSchemaDefinition &  xsd)
static
core::select::residue_selector::ResidueSubset protocols::simple_moves::BackboneMover::compute_selected_residues ( core::pose::Pose const &  pose) const
protected

Set the ResidueSelector that this mover will use.

References selector_, and core::pose::Pose::size().

Referenced by protocols::simple_moves::SmallMover::setup_list(), and protocols::simple_moves::ShearMover::setup_list().

utility::vector1<core::id::DOF_ID_Range> protocols::simple_moves::BackboneMover::dof_id_ranges ( core::pose::Pose pose)
overridepure virtual

get the DOF_IDs perturbed by the mover during moves, along with their ranges

Reimplemented from protocols::canonical_sampling::ThermodynamicMover.

Implemented in protocols::simple_moves::ShearMover, and protocols::simple_moves::SmallMover.

core::Real protocols::simple_moves::BackboneMover::get_angle_max ( char const  type) const

Gets the max angle of perturbation for residues with <type> secondary structure. (<type> must be 'H', 'E', or 'L'.)

Example: bbmover.angle_max('H')

See also: ShearMover SmallMover

References angle_max_.

Referenced by show().

utility::vector1< core::id::TorsionID > protocols::simple_moves::BackboneMover::get_mainchain_TorsionIDs ( core::conformation::Conformation const &  conf,
core::uint const  seqpos 
) const
protected

Return a list of TorsionIDs for the standard main-chain torsions of this residue.

Every residue family has its own set of standard (usually named) main-chain torsions, which have a variety of TorsionIDs "under the hood". This function gets these IDs from the residue.

Remarks
Ultimately, I plan to finish a project to store each of these IDs in ResidueType. When and if that happens, this helper function can be replaced by a direct call to ResidueType::get_mainchain_TorsionIDs() instead. ~Labonte
Note
The Conformation is only needed for the carbohydrate case, as its main-chain torsions are not even a part of the Residue being queried from Rosetta's point of view.
Author
Labonte JWLab.nosp@m.onte.nosp@m.@jhu..nosp@m.edu

References core::id::BB, core::conformation::carbohydrates::get_glycosidic_TorsionIDs(), core::id::phi_torsion(), core::id::phi_torsion_oligourea(), core::id::psi_torsion(), core::id::psi_torsion_oligourea(), core::conformation::Conformation::residue(), and core::id::theta_torsion_oligourea().

Referenced by protocols::simple_moves::SmallMover::setup_list(), and protocols::simple_moves::ShearMover::setup_list().

std::string protocols::simple_moves::BackboneMover::get_name ( ) const
overridevirtual

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

Implements protocols::moves::Mover.

Reimplemented in protocols::simple_moves::ShearMover, and protocols::simple_moves::SmallMover.

bool protocols::simple_moves::BackboneMover::make_move ( core::pose::Pose pose)

References move_with_rama(), move_with_scorefxn(), and scorefxn().

Referenced by apply().

virtual bool protocols::simple_moves::BackboneMover::move_with_rama ( core::pose::Pose pose)
pure virtual
virtual bool protocols::simple_moves::BackboneMover::move_with_scorefxn ( core::pose::Pose pose)
pure virtual
void protocols::simple_moves::BackboneMover::movemap ( core::kinematics::MoveMapOP  new_movemap)
inline
core::kinematics::MoveMapCOP protocols::simple_moves::BackboneMover::movemap ( core::pose::Pose const &  pose)

Get the movemap for this pose.

References movemap(), movemap_, and movemap_factory_.

void protocols::simple_moves::BackboneMover::movemap_factory ( core::select::movemap::MoveMapFactoryCOP  new_movemap_factory)
inline

References movemap_factory_.

Referenced by parse_my_tag().

void protocols::simple_moves::BackboneMover::nmoves ( core::Size const  nmoves_in)
inline
core::Size protocols::simple_moves::BackboneMover::nmoves ( ) const
inline

References nmoves_.

Referenced by parse_my_tag(), and show().

void protocols::simple_moves::BackboneMover::parse_my_tag ( utility::tag::TagCOP  tag,
basic::datacache::DataMap &  data 
)
overridevirtual

Called by MoverFactory when constructing new Movers. Takes care of the specific mover's parsing.

Some movers need not be parsed, so we shouldn't force people to reimplement this method. However, we should be chatty about the fact that someone is using a RosettaScripts interface to a mover which didn't define parse_my_tag()

Reimplemented from protocols::moves::Mover.

References angle_max(), movemap_factory(), nmoves(), nmoves_, protocols::rosetta_scripts::parse_movemap_factory_legacy(), core::select::residue_selector::parse_residue_selector(), core::scoring::parse_score_function(), preserve_detailed_balance_, scorefxn(), selector(), set_preserve_detailed_balance(), temperature(), and temperature_.

bool protocols::simple_moves::BackboneMover::preserve_detailed_balance ( ) const
inlineoverridevirtual

get whether detailed balance is preserved (i.e. no Ramachandran biasing)

Implements protocols::canonical_sampling::ThermodynamicMover.

References preserve_detailed_balance_.

Referenced by set_preserve_detailed_balance().

core::scoring::ScoreFunctionOP protocols::simple_moves::BackboneMover::scorefxn ( ) const
inline

If set, this scorefunction will be used instead of the original rama method (default = not set).

References scorefxn_.

Referenced by make_move(), protocols::simple_moves::SmallMover::move_with_scorefxn(), protocols::simple_moves::ShearMover::move_with_scorefxn(), and parse_my_tag().

void protocols::simple_moves::BackboneMover::scorefxn ( core::scoring::ScoreFunctionOP  sfxn)
inline

References scorefxn_.

core::select::residue_selector::ResidueSelectorCOP protocols::simple_moves::BackboneMover::selector ( ) const
inline

Return the residue selector that can be used to dynamically select residues to perturb at runtime.

References selector_.

Referenced by parse_my_tag().

void protocols::simple_moves::BackboneMover::selector ( core::select::residue_selector::ResidueSelectorCOP  selector)
inline

References selector(), and selector_.

Referenced by selector().

virtual void protocols::simple_moves::BackboneMover::set_angles ( core::Real  )
pure virtual
void protocols::simple_moves::BackboneMover::set_preserve_detailed_balance ( bool  preserve_detailed_balance)
inlineoverridevirtual

set whether detailed balance is preserved (i.e. no Ramachandran biasing)

Implements protocols::canonical_sampling::ThermodynamicMover.

References preserve_detailed_balance(), and preserve_detailed_balance_.

Referenced by parse_my_tag().

void protocols::simple_moves::BackboneMover::set_residue_selector ( core::select::residue_selector::ResidueSelectorCOP  selector)

Set the ResidueSelector that this mover will use.

Clones the input.

References selector_.

Referenced by protocols::carbohydrates::GlycanTreeModeler::apply().

virtual void protocols::simple_moves::BackboneMover::setup_list ( core::pose::Pose )
pure virtual
void protocols::simple_moves::BackboneMover::show ( std::ostream &  output = std::cout) const
overridevirtual

Outputs details about the Mover, including current settings.

Ideally, a child Mover should call Mover.show() and add additional information particular to that Mover.

Reimplemented from protocols::moves::Mover.

References get_angle_max(), nmoves(), protocols::moves::Mover::show(), and temperature().

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

void protocols::simple_moves::BackboneMover::temperature ( core::Real const  temperature_in)
inline

References temperature_.

core::Real protocols::simple_moves::BackboneMover::temperature ( ) const
inline
void protocols::simple_moves::BackboneMover::test_move ( core::pose::Pose pose)
overridevirtual

: Unit test support function. Apply one move to a given pose. Allows extra test specific functions to be called before applying

Reimplemented from protocols::moves::Mover.

References apply(), and movemap().

Member Data Documentation

std::map< char, core::Real > protocols::simple_moves::BackboneMover::angle_max_
protected
core::Real protocols::simple_moves::BackboneMover::big_angle_
protected
utility::vector1< std::tuple< core::uint, utility::vector1< core::id::TorsionID >, core::Real > > protocols::simple_moves::BackboneMover::move_pos_list_
protected
core::kinematics::MoveMapOP protocols::simple_moves::BackboneMover::movemap_
private

Referenced by movemap().

core::select::movemap::MoveMapFactoryCOP protocols::simple_moves::BackboneMover::movemap_factory_
private

Referenced by movemap(), and movemap_factory().

utility::vector1< core::id::TorsionID > protocols::simple_moves::BackboneMover::moving_torsions_
protected
core::Real protocols::simple_moves::BackboneMover::new_rama_score_
protected
core::Size protocols::simple_moves::BackboneMover::nmoves_
private

Referenced by apply(), nmoves(), and parse_my_tag().

core::Real protocols::simple_moves::BackboneMover::old_rama_score_
protected
bool protocols::simple_moves::BackboneMover::preserve_detailed_balance_
private
core::uint protocols::simple_moves::BackboneMover::resnum_
protected
core::scoring::ScoreFunctionOP protocols::simple_moves::BackboneMover::scorefxn_
private

Referenced by BackboneMover(), and scorefxn().

core::select::residue_selector::ResidueSelectorCOP protocols::simple_moves::BackboneMover::selector_
private
core::Real protocols::simple_moves::BackboneMover::small_angle_
protected
core::Real protocols::simple_moves::BackboneMover::temperature_
private

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