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

A metric for calculating each sidechains neighbors based on cones. This metric uses the same core code as the LayerSelector. It can be combined with the SimpleMetricSelector to select any set of residues based on burial. More...

#include <SidechainNeighborCountMetric.hh>

Inheritance diagram for core::simple_metrics::per_residue_metrics::SidechainNeighborCountMetric:
Inheritance graph
[legend]

Public Member Functions

 SidechainNeighborCountMetric ()
 Constructors ///. More...
 
 SidechainNeighborCountMetric (SidechainNeighborCountMetric const &src)
 Copy constructor (not needed unless you need deep copies) More...
 
 ~SidechainNeighborCountMetric () override
 Destructor (important for properly forward-declaring smart-pointer members) More...
 
std::map< core::Size, core::Realcalculate (core::pose::Pose const &pose) const override
 Metric Methods ///. More...
 
void set_angle_exponent (core::Real angle_exponent)
 Set the exponent for the angle term, which affects how close other atoms have to be to the CA-CB line to be counted fully. More...
 
void set_angle_shift_factor (core::Real angle_shift_factor)
 Set the shift factor for the angle term. More...
 
void set_dist_exponent (core::Real dist_exponent)
 Set the exponent for the distance term, which affects how sharp the falloff is with distance. More...
 
void set_dist_midpoint (core::Real dist_midpoint)
 Midpoint of the distance falloff sigmoid. More...
 
void set_res_denominator (core::Real res_denom)
 Factor by which number of residue neighbors is divided. 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::PerResidueRealMetric
 PerResidueRealMetric ()
 
 ~PerResidueRealMetric () override
 
 PerResidueRealMetric (PerResidueRealMetric const &other)
 
PerResidueRealMetricoperator= (PerResidueRealMetric const &)
 
void apply (std::string const &out_label, pose::Pose &pose, bool override_existing_data=false) const override
 Calculate the metric and add it to the pose as a score. labeled as out_label. More...
 
void set_residue_selector (select::residue_selector::ResidueSelectorCOP selector)
 Set a ResidueSelector for which we will calculate values over. More...
 
void set_output_as_pdb_nums (bool output_as_pdb_nums)
 Set to output in PDB numbering instead of Rosetta during the Apply function, which adds the data to pose as extra scores. More...
 
std::map< core::Size, core::Realcached_calculate (pose::Pose const &pose, bool use_cache, std::string prefix="", std::string suffix="", bool fail_on_missing_cache=true, bool use_ref_pose_for_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 submetric names that this Metric will calculate. More...
 
select::residue_selector::ResidueSelectorCOP get_selector () const
 Get the set residue selector of this class. More...
 
virtual void parse_per_residue_tag (utility::tag::TagCOP tag, basic::datacache::DataMap &data)
 Parse the base class tag. Keep required interface for parse_my_tag. More...
 
- Public Member Functions inherited from core::simple_metrics::SimpleMetric
 SimpleMetric (std::string const &simple_metric_type)
 
 ~SimpleMetric () override
 
 SimpleMetric (SimpleMetric const &other)
 
SimpleMetricoperator= (SimpleMetric const &)
 
void apply (pose::Pose &pose, std::string const &prefix="", std::string const &suffix="", bool override_existing_data=false) const
 Calculate the metric and add it to the Score, which is output into a scorefile - labeled as prefix+metric+suffix. More...
 
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 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 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::PerResidueRealMetric
static void add_schema (utility::tag::XMLSchemaComplexTypeGeneratorOP complex_schema)
 Add options to the schema from this base class. More...
 
- Static Public Member Functions inherited from core::simple_metrics::SimpleMetric
static
utility::tag::XMLSchemaComplexTypeGeneratorOP 
complex_type_generator_for_simple_metric (utility::tag::XMLSchemaDefinition &)
 

Private Attributes

core::Real angle_exponent_ = 2.0
 
core::Real angle_shift_factor_ = 0.5
 
core::Real dist_exponent_ = 1.0
 
core::Real dist_midpoint_ = 9.0
 
core::Real res_denominator_ = 1.0
 

Detailed Description

A metric for calculating each sidechains neighbors based on cones. This metric uses the same core code as the LayerSelector. It can be combined with the SimpleMetricSelector to select any set of residues based on burial.

Constructor & Destructor Documentation

core::simple_metrics::per_residue_metrics::SidechainNeighborCountMetric::SidechainNeighborCountMetric ( )

Constructors ///.

Default constructor

core::simple_metrics::per_residue_metrics::SidechainNeighborCountMetric::SidechainNeighborCountMetric ( SidechainNeighborCountMetric const &  src)
default

Copy constructor (not needed unless you need deep copies)

Copy constructor.

core::simple_metrics::per_residue_metrics::SidechainNeighborCountMetric::~SidechainNeighborCountMetric ( )
override

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

Member Function Documentation

std::map< core::Size, core::Real > core::simple_metrics::per_residue_metrics::SidechainNeighborCountMetric::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. Defined in PerResidueRealMetric Calculate the metric. This map is Rosetta Resnum->value and includes only those residues selected.

Return by value as this function can not STORE the result, it only calculates. Store the result in the pose by using the apply method, which calls this method and stores the result in the pose as ExtraScoreValues.

Implements core::simple_metrics::PerResidueRealMetric.

References angle_exponent_, angle_shift_factor_, core::simple_metrics::PerResidueRealMetric::apply(), core::select::util::calc_sc_neighbors(), dist_exponent_, dist_midpoint_, core::select::get_residues_from_subset(), core::simple_metrics::PerResidueRealMetric::get_selector(), res_denominator_, and core::pose::Pose::size().

core::simple_metrics::SimpleMetricOP core::simple_metrics::per_residue_metrics::SidechainNeighborCountMetric::clone ( ) const
overridevirtual
std::string core::simple_metrics::per_residue_metrics::SidechainNeighborCountMetric::metric ( ) const
overridevirtual

Name of the metric.

Implements core::simple_metrics::PerResidueRealMetric.

std::string core::simple_metrics::per_residue_metrics::SidechainNeighborCountMetric::name ( ) const
overridevirtual

Name of the class.

Implements core::simple_metrics::PerResidueRealMetric.

References name_static().

std::string core::simple_metrics::per_residue_metrics::SidechainNeighborCountMetric::name_static ( )
static
void core::simple_metrics::per_residue_metrics::SidechainNeighborCountMetric::parse_my_tag ( utility::tag::TagCOP  tag,
basic::datacache::DataMap &  data 
)
overridevirtual
void core::simple_metrics::per_residue_metrics::SidechainNeighborCountMetric::provide_xml_schema ( utility::tag::XMLSchemaDefinition &  xsd)
static
void core::simple_metrics::per_residue_metrics::SidechainNeighborCountMetric::set_angle_exponent ( core::Real  angle_exponent)

Set the exponent for the angle term, which affects how close other atoms have to be to the CA-CB line to be counted fully.

Residues in the cone are counted and the count is multiplied by the cosine of the angle between the CA-CB vector and the CA-other atom vector. The shift factor is then added, and the resulting value is raised to the angle_exponent (default 2.0) and multiplied by the distance factor.

References angle_exponent_.

Referenced by parse_my_tag().

void core::simple_metrics::per_residue_metrics::SidechainNeighborCountMetric::set_angle_shift_factor ( core::Real  angle_shift_factor)

Set the shift factor for the angle term.

Residues in the cone are counted and the count is multiplied by the cosine of the angle between the CA-CB vector and the CA-other atom vector. The shift factor (default 0.5) is then added, and the resulting value is raised to the angle_exponent and multiplied by the distance factor.

References angle_shift_factor_.

Referenced by parse_my_tag().

void core::simple_metrics::per_residue_metrics::SidechainNeighborCountMetric::set_dist_exponent ( core::Real  dist_exponent)

Set the exponent for the distance term, which affects how sharp the falloff is with distance.

The distance term is: 1/(1+exp(n*(d - m))), where d is the distance, n is the exponent set by this term, and m is the midpoint of the falloff. The n value sets the sharpness. Defaults to 1.0.

References dist_exponent_.

Referenced by parse_my_tag().

void core::simple_metrics::per_residue_metrics::SidechainNeighborCountMetric::set_dist_midpoint ( core::Real  dist_midpoint)

Midpoint of the distance falloff sigmoid.

Defaults to 9.0. Only used by the sidchain_neighbors code.

References dist_midpoint_.

Referenced by parse_my_tag().

void core::simple_metrics::per_residue_metrics::SidechainNeighborCountMetric::set_res_denominator ( core::Real  res_denom)

Factor by which number of residue neighbors is divided.

Defaults to 1.0.

References res_denominator_.

Referenced by parse_my_tag().

Member Data Documentation

core::Real core::simple_metrics::per_residue_metrics::SidechainNeighborCountMetric::angle_exponent_ = 2.0
private
core::Real core::simple_metrics::per_residue_metrics::SidechainNeighborCountMetric::angle_shift_factor_ = 0.5
private
core::Real core::simple_metrics::per_residue_metrics::SidechainNeighborCountMetric::dist_exponent_ = 1.0
private
core::Real core::simple_metrics::per_residue_metrics::SidechainNeighborCountMetric::dist_midpoint_ = 9.0
private
core::Real core::simple_metrics::per_residue_metrics::SidechainNeighborCountMetric::res_denominator_ = 1.0
private

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