Rosetta  2020.11
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
core::simple_metrics::metrics::RMSDMetric Class Reference

A metric to calculate the RMSD between two poses. Can set a subset of residues to calculate via ResidueSelector. More...

#include <RMSDMetric.hh>

Inheritance diagram for core::simple_metrics::metrics::RMSDMetric:
Inheritance graph
[legend]

Public Member Functions

 RMSDMetric ()
 Constructors ///. More...
 
 RMSDMetric (core::pose::PoseCOP ref_pose)
 
 RMSDMetric (core::pose::PoseCOP ref_pose, core::select::residue_selector::ResidueSelectorCOP selector)
 
 RMSDMetric (RMSDMetric const &src)
 Copy constructor (not needed unless you need deep copies) More...
 
 ~RMSDMetric () override
 Destructor (important for properly forward-declaring smart-pointer members) More...
 
core::Real calculate (core::pose::Pose const &pose) const override
 Metric Methods ///. More...
 
utility::vector1
< basic::citation_manager::CitationCollectionCOP > 
provide_citation_info () const override
 This simple metric is unpublished, but can provide citation information for the residue selector that it uses. More...
 
bool simple_metric_is_unpublished () const override
 This simple metric is unpublished (returns true). More...
 
utility::vector1
< basic::citation_manager::UnpublishedModuleInfoCOP > 
provide_authorship_info_for_unpublished () const override
 This simple metric is unpublished. It returns Jared Adolf-Bryfogle. More...
 
void set_comparison_pose (core::pose::PoseCOP pose)
 Set a reference pose to calculate rmsd. More...
 
void set_residue_selector (core::select::residue_selector::ResidueSelectorCOP residue_selector)
 Set a residue selector to calculate total energy of a subset of residues. More...
 
void set_residue_selector_reference (core::select::residue_selector::ResidueSelectorCOP residue_selector)
 
void set_residue_selector_super (core::select::residue_selector::ResidueSelectorCOP residue_selector)
 Optional - Set a residue selector specifically for superposition. More...
 
void set_residue_selector_super_reference (core::select::residue_selector::ResidueSelectorCOP residue_selector)
 
void set_residue_mapping (std::map< core::Size, core::Size > const &rmsd_map)
 Set a map to compute the RMSD on input->reference residue numbers. More...
 
void set_run_superimpose (bool super)
 Run a superimpose on the residues selected in the residue selector (or all) default False. More...
 
void set_rmsd_type (scoring::rmsd_atoms rmsd_type)
 Set what we will be calculating the RMSD on. More...
 
void set_corresponding_atoms_robust (bool robust)
 Set whether we are robust to atom mismatches for selected residues. More...
 
std::string name () const override
 Name of the class. More...
 
std::string metric () const override
 Name of the metric. More...
 
void parse_my_tag (utility::tag::TagCOP tag, basic::datacache::DataMap &data) override
 called by parse_my_tag – should not be used directly More...
 
core::simple_metrics::SimpleMetricOP clone () const override
 
- Public Member Functions inherited from core::simple_metrics::RealMetric
 RealMetric ()
 
 ~RealMetric () override
 
 RealMetric (RealMetric const &other)
 
void apply (pose::Pose &pose, std::string prefix="", std::string suffix="", bool override_existing_data=false) const override
 Calculate the metric and add it to the pose as a score. labeled as prefix+metric+suffix. More...
 
core::Real cached_calculate (pose::Pose const &pose, bool use_cache, std::string prefix="", std::string suffix="", bool fail_on_missing_cache=true) const
 Grab the data from the pose if it exists or calculate the metric. More...
 
utility::vector1< std::string > get_metric_names () const override
 Get the metric name(s) that this Metric will calculate. More...
 
- Public Member Functions inherited from core::simple_metrics::SimpleMetric
 SimpleMetric (std::string const &simple_metric_type)
 
 ~SimpleMetric () override
 
 SimpleMetric (SimpleMetric const &other)
 
void set_custom_type (std::string const &custom_type)
 
std::string get_custom_type () const
 Additional setting to prefix/suffix. More...
 
virtual void parse_base_tag (utility::tag::TagCOP tag)
 Parse the base class tag. Keep required interface for parse_my_tag. More...
 
std::string simple_metric_type () const
 
std::string get_final_sm_type () const
 Get the final name of this metric including its simple_metric_type_ name and any set custom type. More...
 
virtual bool simple_metric_provides_citation_info () const
 Does this simple metric provide information about how to cite it? More...
 

Static Public Member Functions

static std::string name_static ()
 Name of the class for creator. More...
 
static void provide_xml_schema (utility::tag::XMLSchemaDefinition &xsd)
 
- Static Public Member Functions inherited from core::simple_metrics::SimpleMetric
static
utility::tag::XMLSchemaComplexTypeGeneratorOP 
complex_type_generator_for_simple_metric (utility::tag::XMLSchemaDefinition &)
 

Private Member Functions

void setup_name_mapping ()
 Setup Str to rmsd_atom map. More...
 

Private Attributes

core::select::residue_selector::ResidueSelectorCOP residue_selector_ = nullptr
 
core::select::residue_selector::ResidueSelectorCOP residue_selector_ref_ = nullptr
 
core::select::residue_selector::ResidueSelectorCOP residue_selector_super_ = nullptr
 
core::select::residue_selector::ResidueSelectorCOP residue_selector_super_ref_ = nullptr
 
std::map< core::Size, core::Sizermsd_map_
 
core::pose::PoseCOP ref_pose_ = nullptr
 
scoring::rmsd_atoms rmsd_type_ = scoring::rmsd_all_heavy
 
utility::vector1< std::string > override_atom_names_
 
bool robust_ = true
 
std::map< std::string,
scoring::rmsd_atoms
name_mapping_
 
bool superimpose_ =false
 

Detailed Description

A metric to calculate the RMSD between two poses. Can set a subset of residues to calculate via ResidueSelector.

Default is all_heavy

We match all corresponding atoms and do not fail if a residue does not match up.

Constructor & Destructor Documentation

core::simple_metrics::metrics::RMSDMetric::RMSDMetric ( )

Constructors ///.

Default constructor

References setup_name_mapping().

core::simple_metrics::metrics::RMSDMetric::RMSDMetric ( core::pose::PoseCOP  ref_pose)
core::simple_metrics::metrics::RMSDMetric::RMSDMetric ( core::pose::PoseCOP  ref_pose,
core::select::residue_selector::ResidueSelectorCOP  selector 
)
core::simple_metrics::metrics::RMSDMetric::RMSDMetric ( RMSDMetric const &  src)

Copy constructor (not needed unless you need deep copies)

Copy constructor.

References ref_pose_, residue_selector_, and residue_selector_ref_.

core::simple_metrics::metrics::RMSDMetric::~RMSDMetric ( )
override

Destructor (important for properly forward-declaring smart-pointer members)

Member Function Documentation

core::Real core::simple_metrics::metrics::RMSDMetric::calculate ( core::pose::Pose const &  pose) const
overridevirtual

Metric Methods ///.

Defined in RealMetric:

Calculate the metric and add it to the pose as a score. labeled as prefix+metric+suffix.

Score is added through setExtraScorePose and is output into the score tables/file at pose output. Calculate the metric. This is the RMSD between the input and the set comparison pose. Deafult is to calculate all_heavy atoms - but this can be set.

Make sure that reference pose and set pose are the same length or set a map to compare specific residues. We match all corresponding atoms for each residue to match.

Implements core::simple_metrics::RealMetric.

References core::pose::symmetry::extract_asymmetric_unit(), core::conformation::symmetry::is_symmetric(), ref_pose_, residue_selector_, residue_selector_ref_, residue_selector_super_, residue_selector_super_ref_, core::scoring::rms, core::scoring::rms_at_corresponding_atoms_no_super(), rmsd_map_, rmsd_type_, robust_, superimpose_, and core::scoring::superimpose_pose().

core::simple_metrics::SimpleMetricOP core::simple_metrics::metrics::RMSDMetric::clone ( ) const
overridevirtual
std::string core::simple_metrics::metrics::RMSDMetric::metric ( ) const
overridevirtual

Name of the metric.

Implements core::simple_metrics::RealMetric.

std::string core::simple_metrics::metrics::RMSDMetric::name ( ) const
overridevirtual

Name of the class.

Implements core::simple_metrics::RealMetric.

References name_static().

Referenced by provide_authorship_info_for_unpublished().

std::string core::simple_metrics::metrics::RMSDMetric::name_static ( )
static
void core::simple_metrics::metrics::RMSDMetric::parse_my_tag ( utility::tag::TagCOP  tag,
basic::datacache::DataMap &  data 
)
overridevirtual
utility::vector1< basic::citation_manager::UnpublishedModuleInfoCOP > core::simple_metrics::metrics::RMSDMetric::provide_authorship_info_for_unpublished ( ) const
overridevirtual

This simple metric is unpublished. It returns Jared Adolf-Bryfogle.

Author
Vikram K. Mulligan (vmull.nosp@m.igan.nosp@m.@flat.nosp@m.iron.nosp@m.insti.nosp@m.tute.nosp@m..org)

Reimplemented from core::simple_metrics::SimpleMetric.

References name(), residue_selector_, residue_selector_ref_, residue_selector_super_, and residue_selector_super_ref_.

utility::vector1< basic::citation_manager::CitationCollectionCOP > core::simple_metrics::metrics::RMSDMetric::provide_citation_info ( ) const
overridevirtual

This simple metric is unpublished, but can provide citation information for the residue selector that it uses.

Author
Vikram K. Mulligan (vmull.nosp@m.igan.nosp@m.@flat.nosp@m.iron.nosp@m.insti.nosp@m.tute.nosp@m..org)

Reimplemented from core::simple_metrics::SimpleMetric.

References residue_selector_, residue_selector_ref_, residue_selector_super_, and residue_selector_super_ref_.

void core::simple_metrics::metrics::RMSDMetric::provide_xml_schema ( utility::tag::XMLSchemaDefinition &  xsd)
static
void core::simple_metrics::metrics::RMSDMetric::set_comparison_pose ( core::pose::PoseCOP  pose)

Set a reference pose to calculate rmsd.

References ref_pose_.

Referenced by RMSDMetric().

void core::simple_metrics::metrics::RMSDMetric::set_corresponding_atoms_robust ( bool  robust)

Set whether we are robust to atom mismatches for selected residues.

Set this to false to fail instead.

References robust_.

Referenced by parse_my_tag().

void core::simple_metrics::metrics::RMSDMetric::set_residue_mapping ( std::map< core::Size, core::Size > const &  rmsd_map)

Set a map to compute the RMSD on input->reference residue numbers.

References rmsd_map_.

void core::simple_metrics::metrics::RMSDMetric::set_residue_selector ( core::select::residue_selector::ResidueSelectorCOP  residue_selector)

Set a residue selector to calculate total energy of a subset of residues.

References residue_selector_.

Referenced by parse_my_tag(), and RMSDMetric().

void core::simple_metrics::metrics::RMSDMetric::set_residue_selector_reference ( core::select::residue_selector::ResidueSelectorCOP  residue_selector)

Set a reference residue selector. Both selectors should return the same number of residues. If not set, will use the main residue selector.

References residue_selector_ref_.

Referenced by parse_my_tag().

void core::simple_metrics::metrics::RMSDMetric::set_residue_selector_super ( core::select::residue_selector::ResidueSelectorCOP  residue_selector)

Optional - Set a residue selector specifically for superposition.

References residue_selector_super_.

Referenced by parse_my_tag().

void core::simple_metrics::metrics::RMSDMetric::set_residue_selector_super_reference ( core::select::residue_selector::ResidueSelectorCOP  residue_selector)

Set a reference residue selector for superposition. Both selectors should return the same number of residues. If not set, but super selector is set, will use that.

References residue_selector_super_ref_.

Referenced by parse_my_tag().

void core::simple_metrics::metrics::RMSDMetric::set_rmsd_type ( scoring::rmsd_atoms  rmsd_type)

Set what we will be calculating the RMSD on.

References rmsd_type_.

Referenced by parse_my_tag().

void core::simple_metrics::metrics::RMSDMetric::set_run_superimpose ( bool  super)

Run a superimpose on the residues selected in the residue selector (or all) default False.

References superimpose_.

Referenced by parse_my_tag().

void core::simple_metrics::metrics::RMSDMetric::setup_name_mapping ( )
private

Setup Str to rmsd_atom map.

References core::scoring::get_rmsd_type_name_map(), and name_mapping_.

Referenced by RMSDMetric().

bool core::simple_metrics::metrics::RMSDMetric::simple_metric_is_unpublished ( ) const
overridevirtual

This simple metric is unpublished (returns true).

Author
Vikram K. Mulligan (vmull.nosp@m.igan.nosp@m.@flat.nosp@m.iron.nosp@m.insti.nosp@m.tute.nosp@m..org)

Reimplemented from core::simple_metrics::SimpleMetric.

Member Data Documentation

std::map< std::string, scoring::rmsd_atoms > core::simple_metrics::metrics::RMSDMetric::name_mapping_
private

Referenced by parse_my_tag(), and setup_name_mapping().

utility::vector1< std::string> core::simple_metrics::metrics::RMSDMetric::override_atom_names_
private
core::pose::PoseCOP core::simple_metrics::metrics::RMSDMetric::ref_pose_ = nullptr
private
core::select::residue_selector::ResidueSelectorCOP core::simple_metrics::metrics::RMSDMetric::residue_selector_ = nullptr
private
core::select::residue_selector::ResidueSelectorCOP core::simple_metrics::metrics::RMSDMetric::residue_selector_ref_ = nullptr
private
core::select::residue_selector::ResidueSelectorCOP core::simple_metrics::metrics::RMSDMetric::residue_selector_super_ = nullptr
private
core::select::residue_selector::ResidueSelectorCOP core::simple_metrics::metrics::RMSDMetric::residue_selector_super_ref_ = nullptr
private
std::map< core::Size, core::Size > core::simple_metrics::metrics::RMSDMetric::rmsd_map_
private

Referenced by calculate(), and set_residue_mapping().

scoring::rmsd_atoms core::simple_metrics::metrics::RMSDMetric::rmsd_type_ = scoring::rmsd_all_heavy
private

Referenced by calculate(), and set_rmsd_type().

bool core::simple_metrics::metrics::RMSDMetric::robust_ = true
private
bool core::simple_metrics::metrics::RMSDMetric::superimpose_ =false
private

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