Rosetta  2020.50
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Attributes | Friends | List of all members
protocols::loop_modeler::LoopModeler Class Reference

Attempt to find the native structure for one or more loops. More...

#include <LoopModeler.hh>

Inheritance diagram for protocols::loop_modeler::LoopModeler:
Inheritance graph
[legend]

Public Member Functions

 LoopModeler ()
 Default constructor. More...
 
 ~LoopModeler () override
 Default destructor. More...
 
moves::MoverOP clone () const override
 
void parse_my_tag (utility::tag::TagCOP tag, basic::datacache::DataMap &data) override
 
void setup_empty_config ()
 Setup the LoopModeler using a minimal configuration. More...
 
void setup_kic_config ()
 Setup the LoopModeler using the "next-gen KIC" configuration. More...
 
void setup_kic_with_fragments_config ()
 Setup the LoopModeler using the "KIC with fragments" configuration. More...
 
void setup_loophash_kic_config (bool perturb_sequence, std::string seqposes_no_mutate_str)
 Setup the LoopModeler using the LoopHashKIC configuration. More...
 
loop_modeling::LoopBuilderOP build_stage ()
 Return a pointer to the build stage mover. More...
 
loop_modeling::LoopProtocolOP centroid_stage ()
 Return a pointer to the centroid stage mover. More...
 
loop_modeling::LoopProtocolOP fullatom_stage ()
 Return a pointer to the fullatom stage mover. More...
 
void enable_build_stage ()
 Enable the build stage. More...
 
void disable_build_stage ()
 Disable the build stage. More...
 
void enable_centroid_stage ()
 Enable the centroid stage. More...
 
void disable_centroid_stage ()
 Disable the centroid stage. More...
 
void enable_fullatom_stage ()
 Enable the fullatom stage. More...
 
void disable_fullatom_stage ()
 Disable the fullatom stage. More...
 
core::pack::task::TaskFactoryOP get_task_factory ()
 Get the task factory to be used on the next call to apply(). More...
 
core::pack::task::TaskFactoryOP get_task_factory (core::pack::task::TaskFactoryOP fallback)
 Get the task factory to be used on the next call to apply(). More...
 
void set_task_factory (core::pack::task::TaskFactoryOP task_factory)
 Set the task factory to be used on the next call to apply(). More...
 
core::pack::task::TaskFactoryOP get_default_task_factory (core::pose::Pose &pose)
 Return a default task factory. More...
 
void set_fa_scorefxn (core::scoring::ScoreFunctionOP scorefxn)
 Set the score function to be used for the fullatom stage. More...
 
void set_cen_scorefxn (core::scoring::ScoreFunctionOP scorefxn)
 Set the score function to be used for the centroid stage. More...
 
std::string get_name () const override
 Each derived class must specify its name. The class name. More...
 
- Public Member Functions inherited from protocols::loop_modeling::LoopMover
 LoopMover ()
 Default constructor. More...
 
void parse_my_tag (utility::tag::TagCOP tag, basic::datacache::DataMap &data) override
 Configure from a RosettaScripts tag. More...
 
void apply (Pose &pose) override
 Sample the pose in the regions specified by get_loops(). More...
 
string get_name () const override
 Return the name of this mover. More...
 
virtual void get_children_names (utility::vector1< std::string > &names, std::string indent="") const
 Add the names of all the algorithms invoked by this loop mover to the given list. Indentation is used to represent hierarchy. More...
 
bool was_successful () const
 Return true if the previous move was successful. More...
 
void was_successful (bool value)
 Set the success status of a loop mover. More...
 
LoopsOP get_loops ()
 Return the loops to be sampled on the next call to apply(). More...
 
LoopsCOP get_loops () const
 Return the loops to be sampled on the next call to apply(). More...
 
Loop const & get_loop (core::Size index) const
 Return the specified loop. More...
 
void set_loops (LoopsOP loops)
 Set the loops to be sampled on the next call to apply(). More...
 
void set_loops (Loops const &loops)
 Set the loops to be sampled on the next call to apply(). More...
 
void set_loop (Loop const &loop)
 Set the loop to be sampled on the next call to apply(). More...
 
template<typename ToolTypeOP >
ToolTypeOP get_tool (std::string key) const
 Request a tool from this mover or any of its parents. More...
 
template<typename ToolTypeOP >
ToolTypeOP get_tool (std::string key, ToolTypeOP fallback) const
 Request a tool from this mover or any of its parents. More...
 
template<typename ToolTypeOP >
ToolTypeOP set_tool (std::string key, ToolTypeOP value)
 Provide a tool for this mover or any of its children to use. More...
 
virtual FoldTreeRequest request_fold_tree () const
 Return an enum representing the kind of fold tree that is compatible with this mover. More...
 
void trust_fold_tree ()
 Promise that the calling code will setup a fold tree compatible with request_fold_tree(). If this method is not called, this mover will setup a fold tree on its own every time apply() is called. 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...
 
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 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 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 std::string mover_name ()
 
static void provide_xml_schema (utility::tag::XMLSchemaDefinition &xsd)
 
- Static Public Member Functions inherited from protocols::loop_modeling::LoopMover
static void setup_fold_tree (Pose &pose, LoopsCOP loops, FoldTreeRequest request)
 Setup the given pose with a fold tree that is compatible with the given loops and requests. More...
 
static void define_composition_schema (utility::tag::XMLSchemaDefinition &xsd, utility::tag::XMLSchemaComplexTypeGenerator &ct_gen, utility::tag::XMLSchemaSimpleSubelementList &subelements)
 
- 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

bool do_apply (Pose &pose) override
 Search for the optimal conformation of the given loops. More...
 
- Protected Member Functions inherited from protocols::loop_modeling::LoopMover
virtual bool do_apply (Pose &pose, Loop const &loop)
 Perform the loop sampling move. This method can be overwritten in child classes. More...
 
template<typename ChildSubclassOP >
ChildSubclassOP add_child (ChildSubclassOP child)
 Add a child to this mover. More...
 
void remove_child (LoopMoverOP child)
 Remove a child from this mover. More...
 
void clear_children ()
 Remove all children from this mover. More...
 
LoopMoverOPs get_children () const
 Return all of this mover's children. More...
 
core::Size count_children () const
 Return the number of children this mover has. 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...
 

Private Attributes

loop_modeling::LoopBuilderOP build_stage_
 
loop_modeling::LoopProtocolOP centroid_stage_
 
loop_modeling::LoopProtocolOP fullatom_stage_
 
loop_modeling::utilities::PrepareForCentroidOP prepare_for_centroid_
 
loop_modeling::utilities::PrepareForFullatomOP prepare_for_fullatom_
 
bool use_default_task_factory_
 
bool is_build_stage_enabled_
 
bool is_centroid_stage_enabled_
 
bool is_fullatom_stage_enabled_
 

Friends

class ::LoopModelerTests
 

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
 

Detailed Description

Attempt to find the native structure for one or more loops.

The typical loop modeling simulation in rosetta has three steps: loop building, centroid refinement, and fullatom refinement. LoopModeler carries out all three of these steps and allows each to to be enabled, disabled, and otherwise configured. By default, nothing needs to be specified and a standard loop modeling simulation will be performed.

Note that this class is a fairly thin wrapper around other LoopMovers. LoopBuilder and LoopProtocol in particular do all the heavy lifting. The main role of this class is actually to provide a reasonable set of default values, some nice tracer output, and a sophisticated parse_my_tag() method for use with rosetta scripts.

Note that LoopModeler doesn't implement a proper copy constructor. (In fact, no LoopMover does.) This means that if a simulation breaks and nstruct > 1, the remaining simulations will probably break for weird reasons.

Constructor & Destructor Documentation

protocols::loop_modeler::LoopModeler::LoopModeler ( )
protocols::loop_modeler::LoopModeler::~LoopModeler ( )
overridedefault

Default destructor.

Member Function Documentation

loop_modeling::LoopBuilderOP protocols::loop_modeler::LoopModeler::build_stage ( )

Return a pointer to the build stage mover.

loop_modeling::LoopProtocolOP protocols::loop_modeler::LoopModeler::centroid_stage ( )

Return a pointer to the centroid stage mover.

MoverOP protocols::loop_modeler::LoopModeler::clone ( ) const
overridevirtual

Return a shallow copy of this object.

Reimplemented from protocols::moves::Mover.

void protocols::loop_modeler::LoopModeler::disable_build_stage ( )

Disable the build stage.

void protocols::loop_modeler::LoopModeler::disable_centroid_stage ( )

Disable the centroid stage.

void protocols::loop_modeler::LoopModeler::disable_fullatom_stage ( )

Disable the fullatom stage.

bool protocols::loop_modeler::LoopModeler::do_apply ( Pose pose)
overrideprotectedvirtual

Search for the optimal conformation of the given loops.

Reimplemented from protocols::loop_modeling::LoopMover.

void protocols::loop_modeler::LoopModeler::enable_build_stage ( )

Enable the build stage.

void protocols::loop_modeler::LoopModeler::enable_centroid_stage ( )

Enable the centroid stage.

void protocols::loop_modeler::LoopModeler::enable_fullatom_stage ( )

Enable the fullatom stage.

loop_modeling::LoopProtocolOP protocols::loop_modeler::LoopModeler::fullatom_stage ( )

Return a pointer to the fullatom stage mover.

core::pack::task::TaskFactoryOP protocols::loop_modeler::LoopModeler::get_default_task_factory ( core::pose::Pose pose)
std::string protocols::loop_modeler::LoopModeler::get_name ( ) const
overridevirtual

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

Implements protocols::moves::Mover.

TaskFactoryOP protocols::loop_modeler::LoopModeler::get_task_factory ( )

Get the task factory to be used on the next call to apply().

If no task factory has been set, this will raise an exception.

core::pack::task::TaskFactoryOP protocols::loop_modeler::LoopModeler::get_task_factory ( core::pack::task::TaskFactoryOP  fallback)

Get the task factory to be used on the next call to apply().

If no task factory has been set, the fallback will be returned.

std::string protocols::loop_modeler::LoopModeler::mover_name ( )
static
void protocols::loop_modeler::LoopModeler::parse_my_tag ( utility::tag::TagCOP  tag,
basic::datacache::DataMap &  data 
)
overridevirtual
void protocols::loop_modeler::LoopModeler::provide_xml_schema ( utility::tag::XMLSchemaDefinition &  xsd)
static
void protocols::loop_modeler::LoopModeler::set_cen_scorefxn ( core::scoring::ScoreFunctionOP  scorefxn)

Set the score function to be used for the centroid stage.

void protocols::loop_modeler::LoopModeler::set_fa_scorefxn ( core::scoring::ScoreFunctionOP  scorefxn)

Set the score function to be used for the fullatom stage.

void protocols::loop_modeler::LoopModeler::set_task_factory ( core::pack::task::TaskFactoryOP  task_factory)

Set the task factory to be used on the next call to apply().

void protocols::loop_modeler::LoopModeler::setup_empty_config ( )

Setup the LoopModeler using a minimal configuration.

void protocols::loop_modeler::LoopModeler::setup_kic_config ( )

Setup the LoopModeler using the "next-gen KIC" configuration.

void protocols::loop_modeler::LoopModeler::setup_kic_with_fragments_config ( )

Setup the LoopModeler using the "KIC with fragments" configuration.

References protocols::loops::read_loop_fragments().

void protocols::loop_modeler::LoopModeler::setup_loophash_kic_config ( bool  perturb_sequence,
std::string  seqposes_no_mutate_str 
)

Setup the LoopModeler using the LoopHashKIC configuration.

Friends And Related Function Documentation

friend class ::LoopModelerTests
friend

Member Data Documentation

loop_modeling::LoopBuilderOP protocols::loop_modeler::LoopModeler::build_stage_
private
loop_modeling::LoopProtocolOP protocols::loop_modeler::LoopModeler::centroid_stage_
private
loop_modeling::LoopProtocolOP protocols::loop_modeler::LoopModeler::fullatom_stage_
private
bool protocols::loop_modeler::LoopModeler::is_build_stage_enabled_
private
bool protocols::loop_modeler::LoopModeler::is_centroid_stage_enabled_
private
bool protocols::loop_modeler::LoopModeler::is_fullatom_stage_enabled_
private
loop_modeling::utilities::PrepareForCentroidOP protocols::loop_modeler::LoopModeler::prepare_for_centroid_
private
loop_modeling::utilities::PrepareForFullatomOP protocols::loop_modeler::LoopModeler::prepare_for_fullatom_
private
bool protocols::loop_modeler::LoopModeler::use_default_task_factory_
private

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