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

#include <MinimizationGraph.hh>

Inheritance diagram for core::scoring::MinimizationEdge:
Inheritance graph
[legend]

Public Types

typedef utility::graph::Edge parent
 
typedef utility::vector1
< TwoBodyEnergyCOP > 
TwoBodyEnergies
 
typedef
TwoBodyEnergies::const_iterator 
TwoBodyEnergiesIterator
 
typedef conformation::Residue Residue
 
typedef pose::Pose Pose
 

Public Member Functions

 MinimizationEdge (MinimizationGraph *owner, Size n1, Size n2)
 Minimization edge ctor. More...
 
 MinimizationEdge (MinimizationGraph *owner, MinimizationEdge const &example_edge)
 
 ~MinimizationEdge () override
 virtual dstor; The MinimizationEdge must free the array pool element it holds before it disappears. More...
 
void copy_from (parent const *source) override
 Copy the data held on the example edge, source. The source edge must be castable to class MinimizationEdge. More...
 
ResPairMinimizationData const & res_pair_min_data () const
 
ResPairMinimizationDatares_pair_min_data ()
 
Size count_static_memory () const override
 virtual call to determine the static size of an Edge object dynamic memory use is counted through the recursive count_dynamic_memory() calling path More...
 
Size count_dynamic_memory () const override
 virtual call to determine the amount of dynamic memory allocated by an edge; this function must recurse to the parent class to determine how much memory the parent class is responsible for. Do not account for the size of the ArrayPool array here; instead, that is accounted for in the MinimizationGraph::count_dynamic_memory method. More...
 
bool add_twobody_enmeth (TwoBodyEnergyCOP enmeth, Residue const &rsd1, Residue const &rsd2, Pose const &pose, bool residues_mwrt_eachother)
 Include a particular energy method as part of this edge. It may not show up in the active energy methods should this energy method not define an energy for the residues. More...
 
bool any_active_enmeths () const
 It may be possible to determine that an edge does not need to belong to the minimization graph if there are no active two-body energy methods; this is a convenience function that answers quickly if active_2benmths_.begin() == active_2benmeths_.end(). More...
 
void setup_for_minimizing (Residue const &rsd1, Residue const &rsd2, pose::Pose const &pose, ScoreFunction const &sfxn, kinematics::MinimizerMapBase const &min_map)
 
void setup_for_scoring (Residue const &rsd1, Residue const &rsd2, Pose const &pose, ScoreFunction const &sfxn)
 Initialize the active energy methods for score function evaluation. More...
 
void setup_for_derivatives (Residue const &rsd1, Residue const &rsd2, Pose const &pose, ScoreFunction const &sfxn)
 Initialize the active energy methods for derivative evaluation. More...
 
void reinitialize_active_energy_methods (Residue const &rsd1, Residue const &rsd2, Pose const &pose, bool res_moving_wrt_eachother)
 Setup the active and inactive energy methods. More...
 
TwoBodyEnergiesIterator active_2benmeths_begin () const
 
TwoBodyEnergiesIterator active_2benmeths_end () const
 
TwoBodyEnergiesIterator active_2benmeths_std_begin () const
 
TwoBodyEnergiesIterator active_2benmeths_std_end () const
 
TwoBodyEnergiesIterator active_2benmeths_ext_begin () const
 
TwoBodyEnergiesIterator active_2benmeths_ext_end () const
 
TwoBodyEnergiesIterator sfs_req_2benmeths_begin () const
 
TwoBodyEnergiesIterator sfs_req_2benmeths_end () const
 
TwoBodyEnergiesIterator sfd_req_2benmeths_begin () const
 
TwoBodyEnergiesIterator sfd_req_2benmeths_end () const
 
Real weight () const
 The minimization graph will allow the storage of edge weights, should that prove useful for any application (e.g. symmetric minimization) More...
 
void weight (Real setting)
 Set the weight for an edge. More...
 
Real dweight () const
 
void dweight (Real setting)
 

Public Attributes

 __pad0__:TwoBodyEnergyCOP TwoBodyEnergyCOP
 

Protected Member Functions

MinimizationGraph const * get_minimization_owner () const
 Downcasts. More...
 
MinimizationGraphget_minimization_owner ()
 
MinimizationNodeget_minimization_node (Size index)
 
MinimizationNode const * get_minimization_node (Size index) const
 

Private Member Functions

void add_active_enmeth_std (TwoBodyEnergyCOP enmeth)
 
void add_active_enmeth_ext (TwoBodyEnergyCOP enmeth)
 
void add_sfs_enmeth (TwoBodyEnergyCOP enmeth)
 
void add_sfd_enmeth (TwoBodyEnergyCOP enmeth)
 
bool classify_twobody_enmeth (TwoBodyEnergyCOP enmeth, Residue const &rsd1, Residue const &rsd2, Pose const &pose, bool res_moving_wrt_eachother)
 

Private Attributes

ResPairMinimizationData res_pair_min_data_
 
TwoBodyEnergies twobody_enmeths_
 
TwoBodyEnergies active_2benmeths_
 
TwoBodyEnergies active_2benmeths_std_
 
TwoBodyEnergies active_2benmeths_ext_
 
TwoBodyEnergies sfs_req_2benmeths_
 
TwoBodyEnergies sfd_req_2benmeths_
 
Real weight_
 
Real dweight_
 

Detailed Description

Class MinimizationEdge holds ResPairMinimizationData for a certain pair of interacting residues; this data might be a neighborlist for this residue pair, for example. The data held in this edge will be used in both scoring the residue-pair energies and evaluating atom derivatives during minimization.

Member Typedef Documentation

typedef utility::graph::Edge core::scoring::MinimizationEdge::parent
typedef utility::vector1< TwoBodyEnergyCOP > core::scoring::MinimizationEdge::TwoBodyEnergies
typedef TwoBodyEnergies::const_iterator core::scoring::MinimizationEdge::TwoBodyEnergiesIterator

Constructor & Destructor Documentation

core::scoring::MinimizationEdge::MinimizationEdge ( MinimizationGraph owner,
Size  n1,
Size  n2 
)

Minimization edge ctor.

Referenced by count_static_memory().

core::scoring::MinimizationEdge::MinimizationEdge ( MinimizationGraph owner,
MinimizationEdge const &  example_edge 
)

References copy_from().

core::scoring::MinimizationEdge::~MinimizationEdge ( )
overridedefault

virtual dstor; The MinimizationEdge must free the array pool element it holds before it disappears.

Member Function Documentation

MinimizationEdge::TwoBodyEnergiesIterator core::scoring::MinimizationEdge::active_2benmeths_begin ( ) const
MinimizationEdge::TwoBodyEnergiesIterator core::scoring::MinimizationEdge::active_2benmeths_end ( ) const
MinimizationEdge::TwoBodyEnergiesIterator core::scoring::MinimizationEdge::active_2benmeths_ext_begin ( ) const
MinimizationEdge::TwoBodyEnergiesIterator core::scoring::MinimizationEdge::active_2benmeths_ext_end ( ) const
MinimizationEdge::TwoBodyEnergiesIterator core::scoring::MinimizationEdge::active_2benmeths_std_begin ( ) const
MinimizationEdge::TwoBodyEnergiesIterator core::scoring::MinimizationEdge::active_2benmeths_std_end ( ) const
void core::scoring::MinimizationEdge::add_active_enmeth_ext ( TwoBodyEnergyCOP  enmeth)
private
void core::scoring::MinimizationEdge::add_active_enmeth_std ( TwoBodyEnergyCOP  enmeth)
private
void core::scoring::MinimizationEdge::add_sfd_enmeth ( TwoBodyEnergyCOP  enmeth)
private

References sfd_req_2benmeths_.

Referenced by classify_twobody_enmeth().

void core::scoring::MinimizationEdge::add_sfs_enmeth ( TwoBodyEnergyCOP  enmeth)
private

References sfs_req_2benmeths_.

Referenced by classify_twobody_enmeth().

bool core::scoring::MinimizationEdge::add_twobody_enmeth ( TwoBodyEnergyCOP  enmeth,
Residue const &  rsd1,
Residue const &  rsd2,
pose::Pose const &  pose,
bool  residues_mwrt_eachother 
)

Include a particular energy method as part of this edge. It may not show up in the active energy methods should this energy method not define an energy for the residues.

References classify_twobody_enmeth(), and twobody_enmeths_.

Referenced by core::scoring::ScoreFunction::setup_for_lr2benmeth_minimization_for_respair(), and core::scoring::ScoreFunction::setup_for_minimizing_sr2b_enmeths_for_minedge().

bool core::scoring::MinimizationEdge::any_active_enmeths ( ) const
inline

It may be possible to determine that an edge does not need to belong to the minimization graph if there are no active two-body energy methods; this is a convenience function that answers quickly if active_2benmths_.begin() == active_2benmeths_.end().

References active_2benmeths_.

bool core::scoring::MinimizationEdge::classify_twobody_enmeth ( TwoBodyEnergyCOP  enmeth,
Residue const &  rsd1,
Residue const &  rsd2,
pose::Pose const &  pose,
bool  res_moving_wrt_eachother 
)
private
void core::scoring::MinimizationEdge::copy_from ( parent const *  source)
override

Copy the data held on the example edge, source. The source edge must be castable to class MinimizationEdge.

copies data from MinimizationEdge const * source;

called from the copy ctor and operator= methods defined in the Graph base class

References active_2benmeths_, active_2benmeths_ext_, active_2benmeths_std_, dweight_, res_pair_min_data_, sfd_req_2benmeths_, sfs_req_2benmeths_, twobody_enmeths_, and weight_.

Referenced by MinimizationEdge().

Size core::scoring::MinimizationEdge::count_dynamic_memory ( ) const
override

virtual call to determine the amount of dynamic memory allocated by an edge; this function must recurse to the parent class to determine how much memory the parent class is responsible for. Do not account for the size of the ArrayPool array here; instead, that is accounted for in the MinimizationGraph::count_dynamic_memory method.

Size core::scoring::MinimizationEdge::count_static_memory ( ) const
override

virtual call to determine the static size of an Edge object dynamic memory use is counted through the recursive count_dynamic_memory() calling path

References MinimizationEdge().

Real core::scoring::MinimizationEdge::dweight ( ) const
inline
void core::scoring::MinimizationEdge::dweight ( Real  setting)
inline

References dweight_.

MinimizationNode* core::scoring::MinimizationEdge::get_minimization_node ( Size  index)
inlineprotected
MinimizationNode const* core::scoring::MinimizationEdge::get_minimization_node ( Size  index) const
inlineprotected
MinimizationGraph const * core::scoring::MinimizationEdge::get_minimization_owner ( ) const
inlineprotected

Downcasts.

MinimizationGraph * core::scoring::MinimizationEdge::get_minimization_owner ( )
inlineprotected
void core::scoring::MinimizationEdge::reinitialize_active_energy_methods ( Residue const &  rsd1,
Residue const &  rsd2,
Pose const &  pose,
bool  res_moving_wrt_eachother 
)
ResPairMinimizationData const& core::scoring::MinimizationEdge::res_pair_min_data ( ) const
inline
ResPairMinimizationData& core::scoring::MinimizationEdge::res_pair_min_data ( )
inline

References res_pair_min_data_.

void core::scoring::MinimizationEdge::setup_for_derivatives ( Residue const &  rsd1,
Residue const &  rsd2,
Pose const &  pose,
ScoreFunction const &  sfxn 
)
void core::scoring::MinimizationEdge::setup_for_minimizing ( Residue const &  rsd1,
Residue const &  rsd2,
pose::Pose const &  pose,
ScoreFunction const &  sfxn,
kinematics::MinimizerMapBase const &  min_map 
)
void core::scoring::MinimizationEdge::setup_for_scoring ( Residue const &  rsd1,
Residue const &  rsd2,
Pose const &  pose,
ScoreFunction const &  sfxn 
)
MinimizationEdge::TwoBodyEnergiesIterator core::scoring::MinimizationEdge::sfd_req_2benmeths_begin ( ) const

References sfd_req_2benmeths_.

Referenced by setup_for_derivatives().

MinimizationEdge::TwoBodyEnergiesIterator core::scoring::MinimizationEdge::sfd_req_2benmeths_end ( ) const

References sfd_req_2benmeths_.

Referenced by setup_for_derivatives().

MinimizationEdge::TwoBodyEnergiesIterator core::scoring::MinimizationEdge::sfs_req_2benmeths_begin ( ) const

References sfs_req_2benmeths_.

Referenced by setup_for_scoring().

MinimizationEdge::TwoBodyEnergiesIterator core::scoring::MinimizationEdge::sfs_req_2benmeths_end ( ) const

References sfs_req_2benmeths_.

Referenced by setup_for_scoring().

Real core::scoring::MinimizationEdge::weight ( ) const
inline

The minimization graph will allow the storage of edge weights, should that prove useful for any application (e.g. symmetric minimization)

References weight_.

Referenced by core::scoring::eval_weighted_res_pair_energy_for_minedge().

void core::scoring::MinimizationEdge::weight ( Real  setting)
inline

Set the weight for an edge.

References weight_.

Member Data Documentation

core::scoring::MinimizationEdge::__pad0__
TwoBodyEnergies core::scoring::MinimizationEdge::active_2benmeths_
private
TwoBodyEnergies core::scoring::MinimizationEdge::active_2benmeths_ext_
private
TwoBodyEnergies core::scoring::MinimizationEdge::active_2benmeths_std_
private
Real core::scoring::MinimizationEdge::dweight_
private

Referenced by copy_from(), and dweight().

ResPairMinimizationData core::scoring::MinimizationEdge::res_pair_min_data_
private
TwoBodyEnergies core::scoring::MinimizationEdge::sfd_req_2benmeths_
private
TwoBodyEnergies core::scoring::MinimizationEdge::sfs_req_2benmeths_
private
TwoBodyEnergies core::scoring::MinimizationEdge::twobody_enmeths_
private
Real core::scoring::MinimizationEdge::weight_
private

Referenced by copy_from(), and weight().


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