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

#include <LegacyMonteCarloAssemblyMover.hh>

Inheritance diagram for protocols::legacy_sewing::LegacyMonteCarloAssemblyMover:
Inheritance graph
[legend]

Public Member Functions

 LegacyMonteCarloAssemblyMover ()
 
protocols::moves::MoverOP clone () const override
 Return a clone of the Mover object. More...
 
protocols::moves::MoverOP fresh_instance () const override
 Generates a new Mover object freshly created with the default ctor. More...
 
AssemblyOP generate_assembly () override
 
bool add_edge (AssemblyOP const &pre_op_assembly, utility::vector1< AssemblyOP > const &pre_op_assembly_list, AssemblyOP &assembly, utility::vector1< AssemblyOP > &assembly_list) const
 Add a new edge to the Assembly. If this fails for any reason then revert to the pre-operation state and return false. More...
 
void delete_edge (AssemblyOP &assembly, utility::vector1< AssemblyOP > &assembly_list) const
 Remove the most recently added edge from the Assembly return void since this operation can never fail. More...
 
bool switch_edge (AssemblyOP const &pre_op_assembly, utility::vector1< AssemblyOP > const &pre_op_assembly_list, AssemblyOP &assembly, utility::vector1< AssemblyOP > &assembly_list) const
 Replace the most recently added node (try a different edge, or start with a new node). Implemented as a delete followed by an add and returns the result of the add operation. A return of false reverts to the pre-operation state. More...
 
void boltzman (utility::vector1< AssemblyOP > const &pre_op_assembly_list, utility::vector1< AssemblyOP > &assembly_list, AssemblyOP const &pre_op_assembly, AssemblyOP &working_assembly, core::Size cur_cycle, AssemblyOP &best_complete_assembly, core::Real &best_score) const
 
void parse_my_tag (TagCOP tag, basic::datacache::DataMap &data) override
 Called by MoverFactory when constructing new Movers. Takes care of the specific mover's parsing. More...
 
std::string get_name () const override
 Each derived class must specify its name. The class name. More...
 
- Public Member Functions inherited from protocols::legacy_sewing::LegacyAssemblyMover
 LegacyAssemblyMover ()
 
void apply (core::pose::Pose &pose) override
 Main Method. More...
 
virtual void add_starting_model (AssemblyOP assembly) const
 
virtual core::pose::Pose get_fullatom_pose (AssemblyOP assembly) const
 
virtual core::pose::Pose get_centroid_pose (AssemblyOP assembly) const
 
bool follow_random_edge_from_node (AssemblyOP assembly, ModelNode const *reference_node) const
 
virtual core::pose::Pose refine_assembly (AssemblyOP &assembly)
 
bool reinitialize_for_new_input () const override
 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...
 
void append_movie_frame (AssemblyOP assembly, core::Size cycle) const
 
virtual void output_stats (AssemblyOP const &assembly, core::pose::Pose &pose, std::string indicator_whether_from_LegacyMonteCarloAssemblyMover_or_LegacyExhaustiveAssemblyMover)
 add several outputs to the score file Pose can't be const due to scoring. More...
 
virtual void parse_requirements (TagCOP tag, basic::datacache::DataMap &data)
 
virtual void parse_global_requirements (TagCOP tag, basic::datacache::DataMap &data)
 
virtual void parse_intra_segment_requirements (TagCOP tag, basic::datacache::DataMap &data)
 
- 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...
 
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 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 std::string mover_name ()
 
static void provide_xml_schema (utility::tag::XMLSchemaDefinition &xsd)
 
static
utility::tag::XMLSchemaComplexTypeGeneratorOP 
define_mc_assembly_mover_ct_gen (utility::tag::XMLSchemaDefinition &xsd)
 
- Static Public Member Functions inherited from protocols::legacy_sewing::LegacyAssemblyMover
static std::string mover_name ()
 
static void provide_xml_schema (utility::tag::XMLSchemaDefinition &xsd)
 
static
utility::tag::XMLSchemaComplexTypeGeneratorOP 
define_assembly_mover_ct_gen (utility::tag::XMLSchemaDefinition &xsd)
 
static std::string legacy_assembly_mover_ct_namer (std::string const &)
 
- 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 Types

typedef LegacyAssemblyMover parent
 

Private Attributes

core::Size cycles_
 
core::Real max_temperature_
 
core::Real min_temperature_
 
core::Real min_assembly_score_
 
bool use_best_assembly_score_
 
core::Real add_probability_
 
core::Real delete_probability_
 
core::Real switch_probability_
 
bool remove_non_contiguous_assembly_
 

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...
 
- Protected Attributes inherited from protocols::legacy_sewing::LegacyAssemblyMover
scoring::LegacyAssemblyScoreFunctionOP assembly_scorefxn_
 
SewGraphOP graph_
 
std::string edge_file_
 
sampling::requirements::LegacyRequirementSetOP requirement_set_
 
sampling::requirements::LegacyRequirementFactoryrequirement_factory_
 
core::scoring::ScoreFunctionOP cen_scorefxn_
 
core::scoring::ScoreFunctionOP fa_scorefxn_
 
core::Real base_native_bonus_
 
core::Size neighbor_cutoff_
 

Member Typedef Documentation

Constructor & Destructor Documentation

protocols::legacy_sewing::LegacyMonteCarloAssemblyMover::LegacyMonteCarloAssemblyMover ( )

Member Function Documentation

bool protocols::legacy_sewing::LegacyMonteCarloAssemblyMover::add_edge ( AssemblyOP const &  pre_op_assembly,
utility::vector1< AssemblyOP > const &  pre_op_assembly_list,
AssemblyOP assembly,
utility::vector1< AssemblyOP > &  assembly_list 
) const

Add a new edge to the Assembly. If this fails for any reason then revert to the pre-operation state and return false.

If we haven't added an edges yet, pick a random node to start from. Otherwise Pick a random node from the current assembly that has the ability to have edges built from it. This method returns true if an edge was added, false if we couldn't add an edge either due to no edges being in the graph, or no edges satisfying requirements.

References protocols::legacy_sewing::LegacyAssemblyMover::add_starting_model(), protocols::legacy_sewing::LegacyAssemblyMover::edge_file_, protocols::legacy_sewing::LegacyAssemblyMover::graph_, protocols::legacy_sewing::LegacyAssemblyMover::requirement_set_, and protocols::legacy_sewing::TR().

Referenced by generate_assembly(), and switch_edge().

void protocols::legacy_sewing::LegacyMonteCarloAssemblyMover::boltzman ( utility::vector1< AssemblyOP > const &  pre_op_assembly_list,
utility::vector1< AssemblyOP > &  assembly_list,
AssemblyOP const &  pre_op_assembly,
AssemblyOP working_assembly,
core::Size  cur_cycle,
AssemblyOP best_complete_assembly,
core::Real best_score 
) const
protocols::moves::MoverOP protocols::legacy_sewing::LegacyMonteCarloAssemblyMover::clone ( ) const
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.

utility::tag::XMLSchemaComplexTypeGeneratorOP protocols::legacy_sewing::LegacyMonteCarloAssemblyMover::define_mc_assembly_mover_ct_gen ( utility::tag::XMLSchemaDefinition &  xsd)
static
void protocols::legacy_sewing::LegacyMonteCarloAssemblyMover::delete_edge ( AssemblyOP assembly,
utility::vector1< AssemblyOP > &  assembly_list 
) const

Remove the most recently added edge from the Assembly return void since this operation can never fail.

Simply go back to the Assembly before the most recent edge addition

References protocols::legacy_sewing::TR().

Referenced by generate_assembly(), and switch_edge().

protocols::moves::MoverOP protocols::legacy_sewing::LegacyMonteCarloAssemblyMover::fresh_instance ( ) const
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.

AssemblyOP protocols::legacy_sewing::LegacyMonteCarloAssemblyMover::generate_assembly ( )
overridevirtual
std::string protocols::legacy_sewing::LegacyMonteCarloAssemblyMover::get_name ( ) const
overridevirtual

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

Reimplemented from protocols::legacy_sewing::LegacyAssemblyMover.

References mover_name().

std::string protocols::legacy_sewing::LegacyMonteCarloAssemblyMover::mover_name ( )
static
void protocols::legacy_sewing::LegacyMonteCarloAssemblyMover::parse_my_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::legacy_sewing::LegacyAssemblyMover.

References add_probability_, cycles_, delete_probability_, max_temperature_, min_assembly_score_, min_temperature_, protocols::legacy_sewing::LegacyAssemblyMover::parse_my_tag(), remove_non_contiguous_assembly_, switch_probability_, and use_best_assembly_score_.

Referenced by protocols::legacy_sewing::LegacyAppendAssemblyMover::parse_my_tag().

void protocols::legacy_sewing::LegacyMonteCarloAssemblyMover::provide_xml_schema ( utility::tag::XMLSchemaDefinition &  xsd)
static
bool protocols::legacy_sewing::LegacyMonteCarloAssemblyMover::switch_edge ( AssemblyOP const &  pre_op_assembly,
utility::vector1< AssemblyOP > const &  pre_op_assembly_list,
AssemblyOP assembly,
utility::vector1< AssemblyOP > &  assembly_list 
) const

Replace the most recently added node (try a different edge, or start with a new node). Implemented as a delete followed by an add and returns the result of the add operation. A return of false reverts to the pre-operation state.

A switch is just an auto-accepted delete followed by an add, the reason it needs to be its own operation is due to the fact that our scoring doesn't properly weight the value of an empty Assembly, and thus removing the first node will never be accepted. So, if we have only one node, we only allow adding and switching.

References add_edge(), and delete_edge().

Referenced by generate_assembly().

Member Data Documentation

core::Real protocols::legacy_sewing::LegacyMonteCarloAssemblyMover::add_probability_
private

Referenced by generate_assembly(), and parse_my_tag().

core::Size protocols::legacy_sewing::LegacyMonteCarloAssemblyMover::cycles_
private
core::Real protocols::legacy_sewing::LegacyMonteCarloAssemblyMover::delete_probability_
private

Referenced by generate_assembly(), and parse_my_tag().

core::Real protocols::legacy_sewing::LegacyMonteCarloAssemblyMover::max_temperature_
private

Referenced by boltzman(), and parse_my_tag().

core::Real protocols::legacy_sewing::LegacyMonteCarloAssemblyMover::min_assembly_score_
private

Referenced by boltzman(), and parse_my_tag().

core::Real protocols::legacy_sewing::LegacyMonteCarloAssemblyMover::min_temperature_
private

Referenced by boltzman(), and parse_my_tag().

bool protocols::legacy_sewing::LegacyMonteCarloAssemblyMover::remove_non_contiguous_assembly_
private

Referenced by boltzman(), and parse_my_tag().

core::Real protocols::legacy_sewing::LegacyMonteCarloAssemblyMover::switch_probability_
private

Referenced by generate_assembly(), and parse_my_tag().

bool protocols::legacy_sewing::LegacyMonteCarloAssemblyMover::use_best_assembly_score_
private

Referenced by boltzman(), and parse_my_tag().


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