Rosetta
|
Multistate design mover used for RECON multistate design Takes in multiple poses, applies residue linking constraints based on sequence of all input poses and runs a design submover that has been specified in the tag Only accessible through recon application. More...
#include <MSDMover.hh>
Public Member Functions | |
MSDMover () | |
empty constructor fills values with the values read in from the commandline More... | |
MSDMover (protocols::moves::MoverOP mover, utility::vector1< std::string > const &resfiles) | |
Constructor takes in the design mover and a list of resfiles that specifies the residues to constrain to one another. More... | |
~MSDMover () override | |
moves::MoverOP | clone () const override |
Return a clone of the Mover object. More... | |
moves::MoverOP | fresh_instance () const override |
Generates a new Mover object freshly created with the default ctor. More... | |
std::string | get_name () const override |
Each derived class must specify its name. The class name. More... | |
void | parse_my_tag (TagCOP, basic::datacache::DataMap &) override |
Read options from RosettaScripts. More... | |
void | apply (Pose &pose) override |
Movers derived from VectorPoseMover must define two apply methods: apply and apply_mpi, depending on whether the protocol is run in MPI or not Running in MPI will distribute each pose to a separate node, so the mover will operate on one pose. More... | |
void | apply_mpi (Pose &pose) override |
Pure virtual method to apply this mover under MPI. More... | |
utility::vector1< core::scoring::constraints::ConstraintCOP > | apply_linked_constraints (Pose &pose, utility::vector1< std::string > other_pose_sequences, utility::vector1< core::Size > my_designable_residues) |
Based on the sequence of the other poses, apply a residue type constraint to encourage poses to adopt same sequence. Returns a COP of the constraints that were applied so they can be removed later. More... | |
void | setup_mover (Pose &pose) |
Initialize mover by checking that input poses were passed correctly, a design mover was specified, and finding the pose given to apply() in the poses_ vector. More... | |
moves::MoverOP | design_mover () |
Getters and setters. More... | |
void | design_mover (moves::MoverOP design_mover) |
utility::vector1< std::string > | resfiles () |
void | resfiles (utility::vector1< std::string > resfiles) |
void | weight (core::Real weight) |
core::Real | weight () |
utility::vector1< utility::vector1< core::Size > > | designable_residues () |
![]() | |
VectorPoseMover () | |
Constructor. More... | |
~VectorPoseMover () override | |
VectorPoseMover (std::string const &name) | |
VectorPoseMover (VectorPoseMover const &other) | |
void | set_poses (utility::vector1< core::pose::PoseOP > const &poses) |
Set the vector of poses for the mover to act upon. 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 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 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... | |
Static Public Member Functions | |
static void | provide_xml_schema (utility::tag::XMLSchemaDefinition &xsd) |
Specify XML schema. More... | |
![]() | |
static std::string | name () |
static void | register_options () |
Overload this static method if you access options within the mover. More... | |
Private Member Functions | |
void | parse_resfiles () |
Populates designable_residues_ with a list of designable residues corresponding to the poses in poses_, corresponding element-wise (designables_residues[0] matches to poses_[0], etc) More... | |
void | update_packer_task () |
The design mover can't be given its task operations on a global level in the RosettaScript, bc each of the input poses can have different designable residues. This function assigns the design mover its tasks based on the designable residues of the current pose. More... | |
void | set_current_pose (core::Size current_pose) |
Assign the index of the pose that will be operated on by the current mover. More... | |
std::string | resfile_at (core::Size index) |
Get the resfile corresponding to the pose at index. If only one resfile is present then it will be returned regardless of the value of index. More... | |
void | run_post_design_mover (core::pose::Pose &pose) |
Runs the post design mover, if present. More... | |
Private Attributes | |
protocols::moves::MoverOP | design_mover_ |
Private class members. More... | |
protocols::moves::MoverOP | post_mover_ |
Mover applied after design. More... | |
utility::vector1< std::string > | resfiles_ |
List of resfile file names, must be either 1 resfile, or same length as poses_. More... | |
core::Real | weight_ |
Weight to give the residue linking constraints. More... | |
core::Size | current_pose_ |
Index of the pose to be designed. More... | |
utility::vector1< utility::vector1< core::Size > > | designable_residues_ |
bool | debug_ |
Output extra debug messages. More... | |
Additional Inherited Members | |
![]() | |
typedef utility::tag::TagCOP | TagCOP |
typedef core::pose::Pose | Pose |
typedef core::pose::PoseCOP | PoseCOP |
typedef std::list< std::string > | Strings |
![]() | |
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... | |
![]() | |
utility::vector1< core::pose::PoseOP > | poses_ |
Vector of all the input poses. More... | |
Multistate design mover used for RECON multistate design Takes in multiple poses, applies residue linking constraints based on sequence of all input poses and runs a design submover that has been specified in the tag Only accessible through recon application.
protocols::recon_design::MSDMover::MSDMover | ( | ) |
empty constructor fills values with the values read in from the commandline
Referenced by clone().
protocols::recon_design::MSDMover::MSDMover | ( | protocols::moves::MoverOP | mover, |
utility::vector1< std::string > const & | resfiles | ||
) |
Constructor takes in the design mover and a list of resfiles that specifies the residues to constrain to one another.
|
override |
|
overridevirtual |
Movers derived from VectorPoseMover must define two apply methods: apply and apply_mpi, depending on whether the protocol is run in MPI or not Running in MPI will distribute each pose to a separate node, so the mover will operate on one pose.
Implements protocols::moves::VectorPoseMover.
References apply_linked_constraints(), core::pose::Pose::constraint_set(), current_pose_, debug_, design_mover_, designable_residues_, core::pose::Pose::energies(), protocols::recon_design::get_designable_sequence(), protocols::moves::VectorPoseMover::poses_, core::pose::Pose::remove_constraints(), core::scoring::res_type_constraint, run_post_design_mover(), setup_mover(), core::scoring::Energies::total_energy(), protocols::recon_design::TR(), and core::scoring::Energies::weights().
utility::vector1< core::scoring::constraints::ConstraintCOP > protocols::recon_design::MSDMover::apply_linked_constraints | ( | Pose & | pose, |
utility::vector1< std::string > | other_pose_sequences, | ||
utility::vector1< core::Size > | my_designable_residues | ||
) |
Based on the sequence of the other poses, apply a residue type constraint to encourage poses to adopt same sequence. Returns a COP of the constraints that were applied so they can be removed later.
Based on the sequence of the other poses, apply a residue type constraint to encourage poses to adopt same sequence. Returns a COP of the constraints that were applied so they can be removed later
References core::pose::Pose::add_constraint(), debug_, protocols::recon_design::get_candidate_AAs(), protocols::recon_design::TR(), and weight_.
Referenced by apply(), and apply_mpi().
|
overridevirtual |
Pure virtual method to apply this mover under MPI.
Implements protocols::moves::VectorPoseMover.
References apply_linked_constraints(), current_pose_, debug_, design_mover_, core::pose::Pose::energies(), protocols::recon_design::get_designable_residues(), protocols::recon_design::get_designable_sequence(), protocols::wum::mpi_rank(), core::pose::Pose::remove_constraints(), core::scoring::res_type_constraint, resfile_at(), run_post_design_mover(), core::scoring::Energies::total_energy(), protocols::recon_design::TR(), update_packer_task(), and core::scoring::Energies::weights().
|
overridevirtual |
Return a clone of the Mover object.
clone is meant to return an OP'ed deep copy of this object. This really should be a pure virtual in the base class, but adding pure virtuals to Mover would massively disrupt the code. This default implementation crashes at runtime instead of compiletime if you try to call it. If this code is causing you problems, your Mover needs to override this function.
Reimplemented from protocols::moves::Mover.
References MSDMover().
moves::MoverOP protocols::recon_design::MSDMover::design_mover | ( | ) |
void protocols::recon_design::MSDMover::design_mover | ( | moves::MoverOP | design_mover | ) |
References design_mover(), and design_mover_.
utility::vector1< utility::vector1< core::Size > > protocols::recon_design::MSDMover::designable_residues | ( | ) |
References designable_residues_.
|
overridevirtual |
Generates a new Mover object freshly created with the default ctor.
fresh_instance is meant to return a new object of this class, created with the default constructor. This really should be a pure virtual in the base class, but adding pure virtuals to Mover would massively disrupt the code. This default implementation crashes at runtime instead of compiletime if you try to call it. If this code is causing you problems, your Mover needs to override this function. This is used by the August 08 job distributor.
Reimplemented from protocols::moves::Mover.
|
overridevirtual |
Each derived class must specify its name. The class name.
Reimplemented from protocols::moves::VectorPoseMover.
References protocols::recon_design::MSDMoverCreator::mover_name().
|
overridevirtual |
Read options from RosettaScripts.
Reimplemented from protocols::moves::Mover.
References debug_, design_mover_, protocols::rosetta_scripts::parse_mover(), post_mover_, resfiles_, and weight_.
|
private |
Populates designable_residues_ with a list of designable residues corresponding to the poses in poses_, corresponding element-wise (designables_residues[0] matches to poses_[0], etc)
Populates designable_residues_ with a list of designable residues corresponding to the poses in poses_, corresponding element-wise (designables_residues[0] matches to poses_[0], etc)
References designable_residues_, protocols::recon_design::get_designable_residues(), protocols::moves::VectorPoseMover::poses_, and resfile_at().
Referenced by setup_mover().
|
static |
Specify XML schema.
References protocols::recon_design::MSDMoverCreator::mover_name(), and protocols::moves::xsd_type_definition_w_attributes().
Referenced by protocols::recon_design::MSDMoverCreator::provide_xml_schema().
|
private |
Get the resfile corresponding to the pose at index. If only one resfile is present then it will be returned regardless of the value of index.
Get the resfile corresponding to the pose at index. If only one resfile is present then it will be returned regardless of the value of index.
References resfiles_.
Referenced by apply_mpi(), parse_resfiles(), and update_packer_task().
utility::vector1< std::string > protocols::recon_design::MSDMover::resfiles | ( | ) |
References resfiles_.
Referenced by resfiles().
void protocols::recon_design::MSDMover::resfiles | ( | utility::vector1< std::string > | resfiles | ) |
References resfiles(), and resfiles_.
|
private |
Runs the post design mover, if present.
References post_mover_, and protocols::recon_design::TR().
Referenced by apply(), and apply_mpi().
|
private |
Assign the index of the pose that will be operated on by the current mover.
References current_pose_.
void protocols::recon_design::MSDMover::setup_mover | ( | Pose & | pose | ) |
Initialize mover by checking that input poses were passed correctly, a design mover was specified, and finding the pose given to apply() in the poses_ vector.
Helper functions.
Initialize mover by checking that input poses were passed correctly, a design mover was specified, and finding the pose given to apply() in the poses_ vector
References current_pose_, design_mover_, protocols::recon_design::find_pose_in_vector(), parse_resfiles(), protocols::moves::VectorPoseMover::poses_, and update_packer_task().
Referenced by apply().
|
private |
The design mover can't be given its task operations on a global level in the RosettaScript, bc each of the input poses can have different designable residues. This function assigns the design mover its tasks based on the designable residues of the current pose.
The design mover can't be given its task operations on a global level in the RosettaScript, bc each of the input poses can have different designable residues. This function assigns the design mover its tasks based on the designable residues of the current pose
References current_pose_, design_mover_, and resfile_at().
Referenced by apply_mpi(), and setup_mover().
core::Real protocols::recon_design::MSDMover::weight | ( | ) |
void protocols::recon_design::MSDMover::weight | ( | core::Real | weight | ) |
|
private |
Index of the pose to be designed.
Referenced by apply(), apply_mpi(), set_current_pose(), setup_mover(), and update_packer_task().
|
private |
Output extra debug messages.
Referenced by apply(), apply_linked_constraints(), apply_mpi(), and parse_my_tag().
|
private |
Private class members.
Mover used for design. Typically a PackRotamersMover but not necessar
Referenced by apply(), apply_mpi(), design_mover(), parse_my_tag(), setup_mover(), and update_packer_task().
|
private |
Vector of designable residues for each pose in poses_. Must be same length as poses_. Also each pose must have same number of designable residues (i.e. designable_residues[1].size() == designable_residues[2].size())
Referenced by apply(), designable_residues(), and parse_resfiles().
|
private |
Mover applied after design.
Referenced by parse_my_tag(), and run_post_design_mover().
|
private |
List of resfile file names, must be either 1 resfile, or same length as poses_.
Referenced by parse_my_tag(), resfile_at(), and resfiles().
|
private |
Weight to give the residue linking constraints.
Referenced by apply_linked_constraints(), parse_my_tag(), and weight().