Rosetta  2020.37
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Private Attributes | List of all members
core::scoring::constraints::ResidueCouplingConstraint Class Reference

This class favors a particular residue identity at two particular positions by adding the scaled tensor value to the energy map. More...

#include <ResidueCouplingConstraint.hh>

Inheritance diagram for core::scoring::constraints::ResidueCouplingConstraint:
Inheritance graph
[legend]

Public Types

typedef core::Real Real
 
- Public Types inherited from core::scoring::constraints::Constraint
typedef id::AtomID AtomID
 

Public Member Functions

 ResidueCouplingConstraint ()
 
 ResidueCouplingConstraint (pose::Pose const &pose, Size const &seqpos1, Size const &seqpos2, Size const &tensor_index1, Size const &tensor_index2, CouplingTensorCOP const &tensor_const, Real const &strength, std::string const &alphabet)
 
 ~ResidueCouplingConstraint () override
 
Size natoms () const override
 Returns the number of atoms involved in defining this constraint. If the constraint doesn't depend on particular atoms (e.g. a residue type constraint) this function can return zero. More...
 
AtomID const & atom (Size const ) const override
 Returns the AtomID referred to by index. More...
 
utility::vector1< core::Sizeresidues () const override
 Returns the pose numbers of the residues involved in this constraint, in no particular order. More...
 
void set_alphabet (std::string const &alphabet)
 
std::string get_alphabet () const
 
void show (std::ostream &out) const override
 This method is intended to show the value of the Constraint function evaluated over some reasonable range of values. For example, a constraint between pairs of atoms might show the values of the Constraint function between 4 and 12 angstroms. More...
 
bool operator== (Constraint const &other) const override
 and not just pointers More...
 
bool same_type_as_me (Constraint const &) const override
 Determine if the calling class has the same type as the input class, using dynamic casts. This is important in ensuring that two constraints are equal: both this and other must check that the other is the same as it. This is not an optional method and every class should implement it, regaurdless of whether a parent class implements it. More...
 
void score (func::XYZ_Func const &xyz_func, EnergyMap const &weights, EnergyMap &emap) const override
 Calculates a score for this constraint using XYZ_Func, and puts the UNWEIGHTED score into emap. Although the current set of weights currently is provided, Constraint objects should put unweighted scores into emap because the ScoreFunction will do the weighting itself. More...
 
core::Real dist (core::scoring::func::XYZ_Func const &xyz) const override
 
void fill_f1_f2 (AtomID const &atom, func::XYZ_Func const &xyz, Vector &F1, Vector &F2, EnergyMap const &weights) const override
 Fill the f1 and f2 vectors, necessary for considering the derivative this constraint during minimization. (someone please reference Bill Wedermeyer's paper here, as I'm in an airport and can't fill it in myself!) More...
 
ConstraintOP clone () const override
 Copies the data from this Constraint into a new object and returns an OP to the new object. Intended to be implemented by derived classes and used by pose.add_constraint. This function must return a deep copy of itself – meaning that if this Constraint holds pointers to other Constraints that it must invoke clone on those Constraints as well. If the Constraint holds a FuncOP, then the Func should also be cloned. More...
 
- Public Member Functions inherited from core::scoring::constraints::Constraint
 Constraint (ScoreType const &t)
 Constructor for Constraint class. More...
 
 ~Constraint () override
 Virtual destructor. More...
 
virtual ConstraintOP clone (func::FuncOP) const
 Clone the constraint, but where a new Func object is to be used instead. More...
 
virtual ConstraintOP remapped_clone (pose::Pose const &, pose::Pose const &, id::SequenceMappingCOP map) const
 Copies the data from this Constraint into a new object and returns an OP atoms are mapped to atoms with the same name in dest pose ( e.g. for switch from centroid to fullatom ) if a sequence_mapping is present it is used to map residue numbers .. NULL = identity mapping to the new object. Intended to be implemented by derived classes. More...
 
virtual void read_constraint (std::istream &, core::pose::Pose const &)
 This method is totally redundant with read_def YAY DON'T USE THIS ONE.. Most Constraint classes have not overloaded this one, but read_def ! OL. More...
 
ScoreType const & score_type () const
 Returns the ScoreType that this Constraint object will use. More...
 
virtual void read_data (std::istream &)
 initialize this Constraint from the given std::istream. It's amazing that there are three functions for doing this inside of Constraint.hh. SO WHAT IS THIS SUPPOSED TO DO ? not overloaded by e.g., AtomPairConstraint or CoordinateConstraint, More...
 
virtual ConstraintOP remap_resid (core::id::SequenceMapping const &) const
 apply a resid remapping to this constraint, returns the remapped constraint Does this return an owning pointer to this constraint or a copy? Documentation would be nice. More...
 
virtual Real score (pose::Pose const &pose) const
 Returns the unweighted score of this constraint computed over the given pose. More...
 
virtual Real score (pose::Pose const &pose, EnergyMap const &weights) const
 Returns the weighted score of this constraint computed over the given pose. More...
 
virtual Real dist (core::pose::Pose const &) const
 return the raw "distance" before that distance is handed to the FUNC object More...
 
virtual std::string type () const
 Returns a unique string identified for this constraint. Used in several places, including the ConstraintIO class. More...
 
virtual void setup_for_scoring (core::scoring::func::XYZ_Func const &, ScoreFunction const &) const
 
virtual void setup_for_derivatives (core::scoring::func::XYZ_Func const &, ScoreFunction const &) const
 
virtual void show_def (std::ostream &, pose::Pose const &) const
 Prints the definition of a Constraint to the given std::ostream, using the given Pose, and the given func::FuncFactory. This method is intended to be overridden by derived classes if they'd like to use the ConstraintIO machinery. It's also not clear why this method takes a Pose, other than to be symmetric with read_def. More...
 
virtual void read_def (std::istream &, pose::Pose const &, core::scoring::func::FuncFactory const &)
 Reads the definition of a Constraint from the given std::istream, using the given Pose, and the given func::FuncFactory. This method is intended to be overridden by derived classes if they'd like to use the ConstraintIO machinery. More...
 
virtual void steal_def (pose::Pose const &)
 take coordinates, distances, angles, etc from given pose More...
 
std::string to_string () const
 Convenience function, returns the results of show() as a string. Not to be overriden by derived classes. More...
 
virtual Size show_violations (std::ostream &out, pose::Pose const &, Size, Real threshold=1) const
 Prints the violations of this constraint to the given std::ostream. What are violations? It's not defined, and it depends on the constraint and the function! also - wtf is threshold? it was defined as a Size in CoordinateConstraint, I don't know which definition is the right one. Documentation would be nice ... More...
 
virtual
core::scoring::func::Func
const & 
get_func () const
 Returns the func::Func object associated with this Constraint object. More...
 
bool operator!= (Constraint const &other) const
 Inequality operator to test whether two constraints are not functionally identical. More...
 
virtual core::Size choose_effective_sequence_separation (core::kinematics::ShortestPathInFoldTree const &sp, numeric::random::RandomGenerator &)
 
virtual core::Size effective_sequence_separation (core::kinematics::ShortestPathInFoldTree const &) const
 

Private Attributes

Size seqpos1_
 
Size seqpos2_
 
Size tensor_index1_
 
Size tensor_index2_
 
CouplingTensorCOP tensor_const_
 
Real strength_
 
std::string alphabet_
 
std::map< char, long unsigned int > amino_acids_
 

Detailed Description

This class favors a particular residue identity at two particular positions by adding the scaled tensor value to the energy map.

Member Typedef Documentation

Constructor & Destructor Documentation

core::scoring::constraints::ResidueCouplingConstraint::ResidueCouplingConstraint ( )
core::scoring::constraints::ResidueCouplingConstraint::ResidueCouplingConstraint ( pose::Pose const &  pose,
Size const &  seqpos1,
Size const &  seqpos2,
Size const &  tensor_index1,
Size const &  tensor_index2,
CouplingTensorCOP const &  tensor_const,
Real const &  strength,
std::string const &  alphabet 
)
core::scoring::constraints::ResidueCouplingConstraint::~ResidueCouplingConstraint ( )
overridedefault

Member Function Documentation

id::AtomID const & core::scoring::constraints::ResidueCouplingConstraint::atom ( Size  index) const
overridevirtual

Returns the AtomID referred to by index.

Note that this function isn't actually used by the constraint scoring machenery. If you're calling it on a generic Constraint (as opposed to specifically on a derived class) you're probably doing something wrong.

Implements core::scoring::constraints::Constraint.

References core::id::GLOBAL_BOGUS_ATOM_ID.

ConstraintOP core::scoring::constraints::ResidueCouplingConstraint::clone ( ) const
overridevirtual

Copies the data from this Constraint into a new object and returns an OP to the new object. Intended to be implemented by derived classes and used by pose.add_constraint. This function must return a deep copy of itself – meaning that if this Constraint holds pointers to other Constraints that it must invoke clone on those Constraints as well. If the Constraint holds a FuncOP, then the Func should also be cloned.

Implements core::scoring::constraints::Constraint.

core::Real core::scoring::constraints::ResidueCouplingConstraint::dist ( core::scoring::func::XYZ_Func const &  xyz) const
overridevirtual

Return 1.0 if constraint will get a bonus/penalty, 0.0 if not

Implements core::scoring::constraints::Constraint.

References core::conformation::Residue::aa(), core::scoring::func::XYZ_Func::residue(), seqpos1_, and seqpos2_.

void core::scoring::constraints::ResidueCouplingConstraint::fill_f1_f2 ( AtomID const &  atom,
func::XYZ_Func const &  xyz_func,
Vector F1,
Vector F2,
EnergyMap const &  weights 
) const
overridevirtual

Fill the f1 and f2 vectors, necessary for considering the derivative this constraint during minimization. (someone please reference Bill Wedermeyer's paper here, as I'm in an airport and can't fill it in myself!)

Implements core::scoring::constraints::Constraint.

std::string core::scoring::constraints::ResidueCouplingConstraint::get_alphabet ( ) const

References alphabet_.

Referenced by ResidueCouplingConstraint().

Size core::scoring::constraints::ResidueCouplingConstraint::natoms ( ) const
overridevirtual

Returns the number of atoms involved in defining this constraint. If the constraint doesn't depend on particular atoms (e.g. a residue type constraint) this function can return zero.

Note that this function isn't actually used by the constraint scoring machenery. If you're calling it on a generic Constraint (as opposed to specifically on a derived class) you're probably doing something wrong.

Implements core::scoring::constraints::Constraint.

bool core::scoring::constraints::ResidueCouplingConstraint::operator== ( Constraint const &  other) const
overridevirtual
utility::vector1< core::Size > core::scoring::constraints::ResidueCouplingConstraint::residues ( ) const
overridevirtual

Returns the pose numbers of the residues involved in this constraint, in no particular order.

Used in determining one-body/two-body/multi-body status. For historical reasons, the default uses a simple protocol based on natoms()/atom() - feel free to reimplement more efficiently.

Reimplemented from core::scoring::constraints::Constraint.

References seqpos1_, and seqpos2_.

bool core::scoring::constraints::ResidueCouplingConstraint::same_type_as_me ( Constraint const &  other) const
overridevirtual

Determine if the calling class has the same type as the input class, using dynamic casts. This is important in ensuring that two constraints are equal: both this and other must check that the other is the same as it. This is not an optional method and every class should implement it, regaurdless of whether a parent class implements it.

Implements core::scoring::constraints::Constraint.

Referenced by operator==().

void core::scoring::constraints::ResidueCouplingConstraint::score ( func::XYZ_Func const &  xyz_func,
EnergyMap const &  weights,
EnergyMap emap 
) const
overridevirtual

Calculates a score for this constraint using XYZ_Func, and puts the UNWEIGHTED score into emap. Although the current set of weights currently is provided, Constraint objects should put unweighted scores into emap because the ScoreFunction will do the weighting itself.

Implements core::scoring::constraints::Constraint.

References amino_acids_, core::scoring::func::XYZ_Func::residue(), core::scoring::constraints::Constraint::score_type(), seqpos1_, seqpos2_, strength_, tensor_const_, tensor_index1_, and tensor_index2_.

void core::scoring::constraints::ResidueCouplingConstraint::set_alphabet ( std::string const &  alphabet)

References alphabet_.

void core::scoring::constraints::ResidueCouplingConstraint::show ( std::ostream &  ) const
overridevirtual

This method is intended to show the value of the Constraint function evaluated over some reasonable range of values. For example, a constraint between pairs of atoms might show the values of the Constraint function between 4 and 12 angstroms.

Reimplemented from core::scoring::constraints::Constraint.

References seqpos1_, and seqpos2_.

Member Data Documentation

std::string core::scoring::constraints::ResidueCouplingConstraint::alphabet_
private

Referenced by get_alphabet(), and set_alphabet().

std::map< char, long unsigned int > core::scoring::constraints::ResidueCouplingConstraint::amino_acids_
private

Referenced by ResidueCouplingConstraint(), and score().

Size core::scoring::constraints::ResidueCouplingConstraint::seqpos1_
private

Referenced by dist(), operator==(), residues(), score(), and show().

Size core::scoring::constraints::ResidueCouplingConstraint::seqpos2_
private

Referenced by dist(), operator==(), residues(), score(), and show().

Real core::scoring::constraints::ResidueCouplingConstraint::strength_
private

Referenced by score().

CouplingTensorCOP core::scoring::constraints::ResidueCouplingConstraint::tensor_const_
private

Referenced by score().

Size core::scoring::constraints::ResidueCouplingConstraint::tensor_index1_
private

Referenced by score().

Size core::scoring::constraints::ResidueCouplingConstraint::tensor_index2_
private

Referenced by score().


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