Rosetta 3.4
Public Types | Public Member Functions
core::scoring::hackelec::HackElecEnergyAroAro Class Reference

#include <HackElecEnergyAroAro.hh>

Inheritance diagram for core::scoring::hackelec::HackElecEnergyAroAro:
Inheritance graph
[legend]
Collaboration diagram for core::scoring::hackelec::HackElecEnergyAroAro:
Collaboration graph
[legend]

List of all members.

Public Types

typedef HackElecEnergy parent
typedef
ContextIndependentTwoBodyEnergy 
grandparent

Public Member Functions

 HackElecEnergyAroAro (methods::EnergyMethodOptions const &options)
 HackElecEnergyAroAro (HackElecEnergyAroAro const &src)
virtual methods::EnergyMethodOP clone () const
 clone
virtual void setup_for_derivatives (pose::Pose &pose, ScoreFunction const &) const
 Called immediately before atom- and DOF-derivatives are calculated allowing the derived class a chance to prepare for future calls.
virtual void setup_for_scoring (pose::Pose &pose, ScoreFunction const &) const
virtual void setup_for_packing (pose::Pose &pose, utility::vector1< bool > const &, utility::vector1< bool > const &) const
virtual void prepare_rotamers_for_packing (pose::Pose const &pose, conformation::RotamerSetBase &set) const
 overrides parent class implementation which would have created several tries
virtual void update_residue_for_packing (pose::Pose &pose, Size resid) const
 overrides parent class implementation which would have updated a trie
virtual void residue_pair_energy (conformation::Residue const &rsd1, conformation::Residue const &rsd2, pose::Pose const &pose, ScoreFunction const &, EnergyMap &emap) const
 Evaluate the interaction between a given residue pair accumulating the unweighted energies in an EnergyMap.
bool minimize_in_whole_structure_context (pose::Pose const &) const
 Returns "true" because this energy method has not been updated to use the new derivative evaluation machinery. Note that this class requires the definition of this method because it's parent class, HackElecEnergy, HAS been updated to use the new derivative evaluation machinery, and, if this class did not return "true", it would be asked to evaluate derivatives in ways it cannot yet evaluate them in.
virtual void eval_intrares_energy (conformation::Residue const &, pose::Pose const &, ScoreFunction const &, EnergyMap &) const
 Evaluate the intra-residue energy for a given residue.
virtual void evaluate_rotamer_pair_energies (conformation::RotamerSetBase const &set1, conformation::RotamerSetBase const &set2, pose::Pose const &pose, ScoreFunction const &sfxn, EnergyMap const &weights, ObjexxFCL::FArray2D< core::PackerEnergy > &energy_table) const
 Batch computation of rotamer pair energies. Need not be overriden in derived class -- by default, iterates over all pairs of rotamers, and calls derived class's residue_pair_energy method. Since short range rotamer pairs may not need calculation, the default method looks at blocks of residue type pairs and only calls the residue_pair_energy method if the rotamer pairs are within range.
virtual void evaluate_rotamer_background_energies (conformation::RotamerSetBase const &set, conformation::Residue const &residue, pose::Pose const &pose, ScoreFunction const &sfxn, EnergyMap const &weights, utility::vector1< core::PackerEnergy > &energy_vector) const
 Batch computation of rotamer/background energies. Need not be overriden in derived class -- by default, iterates over all rotamers in the set, and calls derived class's residue_pair_energy method for each one against the background rotamer Since short range rotamer pairs may not need calculation, the default method looks at blocks of residue type pairs and only calls the residue_pair_energy method if the rotamer pairs are within range.
virtual void eval_atom_derivative (id::AtomID const &atom_id, pose::Pose const &pose, kinematics::DomainMap const &domain_map, ScoreFunction const &, EnergyMap const &weights, Vector &F1, Vector &F2) const
 Evaluate the XYZ derivative for an atom in the pose. Called during the atomtree derivative calculation, atom_tree_minimize.cc, through the ScoreFunction::eval_atom_derivative intermediary. F1 and F2 should not zeroed, rather, this class should accumulate its contribution from this atom's XYZ derivative.
virtual bool defines_intrares_energy (EnergyMap const &) const
 Two body energies are able to define intra-residue energies, and to do so only in the presence of certain non-zero weights. The ScoreFunction will hand over its weight set as it asks whether the energy method defines an intraresidue energy or not.
virtual void indicate_required_context_graphs (utility::vector1< bool > &context_graphs_required) const
 HackElecEnergyAroAro is context independent; no context graphs required.
Real residue_pair_energy_aro_aro (conformation::Residue const &rsd1, conformation::Residue const &rsd2, EnergyMap &emap) const
void eval_atom_derivative_aro_aro (conformation::Residue const &rsd1, Size const &i, conformation::Residue const &rsd2, EnergyMap const &weights, Vector &F1, Vector &F2) const
virtual core::Size version () const
 Return the version of the energy method.

Member Typedef Documentation


Constructor & Destructor Documentation

core::scoring::hackelec::HackElecEnergyAroAro::HackElecEnergyAroAro ( methods::EnergyMethodOptions const &  options)
core::scoring::hackelec::HackElecEnergyAroAro::HackElecEnergyAroAro ( HackElecEnergyAroAro const &  src)

Member Function Documentation

methods::EnergyMethodOP core::scoring::hackelec::HackElecEnergyAroAro::clone ( ) const [virtual]

clone

Reimplemented from core::scoring::hackelec::HackElecEnergy.

References HackElecEnergyAroAro().

virtual bool core::scoring::hackelec::HackElecEnergyAroAro::defines_intrares_energy ( EnergyMap const &  weights) const [inline, virtual]

Two body energies are able to define intra-residue energies, and to do so only in the presence of certain non-zero weights. The ScoreFunction will hand over its weight set as it asks whether the energy method defines an intraresidue energy or not.

For example, the Etable method defines intra-residue energies only when one or more of the fa_intra_{atr,rep,sol} weights are non-zero.

Reimplemented from core::scoring::hackelec::HackElecEnergy.

void core::scoring::hackelec::HackElecEnergyAroAro::eval_atom_derivative ( id::AtomID const &  id,
pose::Pose const &  pose,
kinematics::DomainMap const &  domain_map,
ScoreFunction const &  sfxn,
EnergyMap const &  emap,
Vector F1,
Vector F2 
) const [virtual]

Evaluate the XYZ derivative for an atom in the pose. Called during the atomtree derivative calculation, atom_tree_minimize.cc, through the ScoreFunction::eval_atom_derivative intermediary. F1 and F2 should not zeroed, rather, this class should accumulate its contribution from this atom's XYZ derivative.

The derivative scheme is based on that of Abe, Braun, Noguti and Go (1984) "Rapid Calculation of First and Second Derivatives of Conformational Energy with Respect to Dihedral Angles for Proteins. General Recurrent Equations" Computers & Chemistry 8(4) pp. 239-247. F1 and F2 correspond roughly to Fa and Ga, respectively, of equations 7a & 7b in that paper.

default implementation does not alter either the F1 or F2 vectors.

Reimplemented from core::scoring::methods::EnergyMethod.

References core::id::AtomID::atomno(), core::pose::Pose::energies(), eval_atom_derivative_aro_aro(), core::pose::Pose::residue(), and core::id::AtomID::rsd().

void core::scoring::hackelec::HackElecEnergyAroAro::eval_atom_derivative_aro_aro ( conformation::Residue const &  rsd1,
Size const &  i,
conformation::Residue const &  rsd2,
EnergyMap const &  weights,
Vector F1,
Vector F2 
) const
virtual void core::scoring::hackelec::HackElecEnergyAroAro::eval_intrares_energy ( conformation::Residue const &  rsd,
pose::Pose const &  pose,
ScoreFunction const &  sfxn,
EnergyMap emap 
) const [inline, virtual]

Evaluate the intra-residue energy for a given residue.

Reimplemented from core::scoring::hackelec::HackElecEnergy.

void core::scoring::hackelec::HackElecEnergyAroAro::evaluate_rotamer_background_energies ( conformation::RotamerSetBase const &  set,
conformation::Residue const &  residue,
pose::Pose const &  pose,
ScoreFunction const &  sfxn,
EnergyMap const &  weights,
utility::vector1< core::PackerEnergy > &  energy_vector 
) const [virtual]

Batch computation of rotamer/background energies. Need not be overriden in derived class -- by default, iterates over all rotamers in the set, and calls derived class's residue_pair_energy method for each one against the background rotamer Since short range rotamer pairs may not need calculation, the default method looks at blocks of residue type pairs and only calls the residue_pair_energy method if the rotamer pairs are within range.

Reimplemented from core::scoring::hackelec::HackElecEnergy.

References core::scoring::methods::ShortRangeTwoBodyEnergy::evaluate_rotamer_background_energies(), core::conformation::Residue::is_aromatic(), and core::scoring::constraints::is_aromatic().

void core::scoring::hackelec::HackElecEnergyAroAro::evaluate_rotamer_pair_energies ( conformation::RotamerSetBase const &  set1,
conformation::RotamerSetBase const &  set2,
pose::Pose const &  pose,
ScoreFunction const &  sfxn,
EnergyMap const &  weights,
ObjexxFCL::FArray2D< core::PackerEnergy > &  energy_table 
) const [virtual]

Batch computation of rotamer pair energies. Need not be overriden in derived class -- by default, iterates over all pairs of rotamers, and calls derived class's residue_pair_energy method. Since short range rotamer pairs may not need calculation, the default method looks at blocks of residue type pairs and only calls the residue_pair_energy method if the rotamer pairs are within range.

Reimplemented from core::scoring::hackelec::HackElecEnergy.

References core::scoring::methods::ShortRangeTwoBodyEnergy::evaluate_rotamer_pair_energies(), core::conformation::RotamerSetBase::num_rotamers(), and core::conformation::RotamerSetBase::rotamer().

void core::scoring::hackelec::HackElecEnergyAroAro::indicate_required_context_graphs ( utility::vector1< bool > &  context_graphs_required) const [virtual]

HackElecEnergyAroAro is context independent; no context graphs required.

Reimplemented from core::scoring::hackelec::HackElecEnergy.

bool core::scoring::hackelec::HackElecEnergyAroAro::minimize_in_whole_structure_context ( pose::Pose const &  ) const [inline, virtual]

Returns "true" because this energy method has not been updated to use the new derivative evaluation machinery. Note that this class requires the definition of this method because it's parent class, HackElecEnergy, HAS been updated to use the new derivative evaluation machinery, and, if this class did not return "true", it would be asked to evaluate derivatives in ways it cannot yet evaluate them in.

Reimplemented from core::scoring::hackelec::HackElecEnergy.

void core::scoring::hackelec::HackElecEnergyAroAro::prepare_rotamers_for_packing ( pose::Pose const &  pose,
conformation::RotamerSetBase set 
) const [virtual]

overrides parent class implementation which would have created several tries

Reimplemented from core::scoring::hackelec::HackElecEnergy.

void core::scoring::hackelec::HackElecEnergyAroAro::residue_pair_energy ( conformation::Residue const &  rsd1,
conformation::Residue const &  rsd2,
pose::Pose const &  pose,
ScoreFunction const &  sfxn,
EnergyMap emap 
) const [virtual]

Evaluate the interaction between a given residue pair accumulating the unweighted energies in an EnergyMap.

Reimplemented from core::scoring::hackelec::HackElecEnergy.

References core::conformation::Residue::is_aromatic(), and residue_pair_energy_aro_aro().

Real core::scoring::hackelec::HackElecEnergyAroAro::residue_pair_energy_aro_aro ( conformation::Residue const &  rsd1,
conformation::Residue const &  rsd2,
EnergyMap emap 
) const
void core::scoring::hackelec::HackElecEnergyAroAro::setup_for_derivatives ( pose::Pose pose,
ScoreFunction const &  sfxn 
) const [virtual]

Called immediately before atom- and DOF-derivatives are calculated allowing the derived class a chance to prepare for future calls.

default implementation noop

Reimplemented from core::scoring::hackelec::HackElecEnergy.

References core::pose::Pose::update_residue_neighbors().

void core::scoring::hackelec::HackElecEnergyAroAro::setup_for_packing ( pose::Pose ,
utility::vector1< bool > const &  ,
utility::vector1< bool > const &   
) const [virtual]

default implementation noop

Reimplemented from core::scoring::hackelec::HackElecEnergy.

void core::scoring::hackelec::HackElecEnergyAroAro::setup_for_scoring ( pose::Pose pose,
ScoreFunction const &   
) const [virtual]
void core::scoring::hackelec::HackElecEnergyAroAro::update_residue_for_packing ( pose::Pose pose,
Size  resid 
) const [virtual]

overrides parent class implementation which would have updated a trie

Reimplemented from core::scoring::hackelec::HackElecEnergy.

core::Size core::scoring::hackelec::HackElecEnergyAroAro::version ( ) const [virtual]

Return the version of the energy method.

Reimplemented from core::scoring::hackelec::HackElecEnergy.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines