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

HBNetEnergy, an EnergyMethod that gives a bonus for hydrogen bond networks, which ramps nonlinearly with the size of the networks. This class is derived from base class WholeStructureEnergy, which is meaningful only on entire structures. These EnergyMethods do all of their work in the "finalize_total_energy" section of scorefunction evaluation. More...

#include <HBNetEnergy.hh>

Inheritance diagram for core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy:
Inheritance graph
[legend]

Public Types

typedef
core::scoring::methods::WholeStructureEnergy 
parent1
 
typedef
core::scoring::annealing::ResidueArrayAnnealableEnergy 
parent2
 
- Public Types inherited from core::scoring::methods::WholeStructureEnergy
typedef EnergyMethod parent
 
- Public Types inherited from core::scoring::methods::EnergyMethod
typedef utility::VirtualBase parent
 

Public Member Functions

 HBNetEnergy (core::scoring::methods::EnergyMethodOptions const &options)
 Options constructor. More...
 
 ~HBNetEnergy () override
 Default destructor. More...
 
core::scoring::methods::EnergyMethodOP clone () const override
 Clone: create a copy of this object, and return an owning pointer to the copy. More...
 
void indicate_required_context_graphs (utility::vector1< bool > &context_graphs_required) const override
 HBNetEnergy is context-independent and thus indicates that no context graphs need to be maintained by class Energies. More...
 
core::Size version () const override
 HBNetEnergy is version 1.0 right now. More...
 
void finalize_total_energy (core::pose::Pose &pose, core::scoring::ScoreFunction const &, core::scoring::EnergyMap &totals) const override
 Actually calculate the total energy. More...
 
core::Real calculate_energy (utility::vector1< core::conformation::ResidueCOP > const &resvect, utility::vector1< core::Size > const &rotamer_ids, core::Size const substitution_position=0) const override
 Calculate the total energy given a vector of const owning pointers to residues. More...
 
void commit_considered_substitution () override
 What to do when a substitution that was considered is accepted. More...
 
void report () const
 Get a summary of all loaded data. More...
 
void set_up_residuearrayannealableenergy_for_packing (core::pose::Pose &pose, core::pack::rotamer_set::RotamerSets const &rotamersets, core::scoring::ScoreFunction const &sfxn) override
 Cache data from the pose in this EnergyMethod in anticipation of scoring. More...
 
void setup_for_minimizing (core::pose::Pose &pose, core::scoring::ScoreFunction const &sfxn, core::kinematics::MinimizerMapBase const &minmap) const override
 Disable this scoreterm during minimization trajectory. More...
 
void finalize_after_minimizing (core::pose::Pose &pose) const override
 Re-enable this scoreterm after a minimization trajectory. More...
 
void set_hbnet_energy_ramping (std::string const &ramping_string)
 Set the way that HBNetEnergy scales with network size, by string. More...
 
void set_hbnet_energy_ramping (HBNetEnergyRamping const ramping_enum)
 Set the way that HBNetEnergy scales with network size, by enum. More...
 
HBNetEnergyRamping hbnet_energy_ramping_enum_from_string (std::string const &ramping_string) const
 Given a string for an HBNetEnergyRamping type, return the corresponding enum. More...
 
std::string hbnet_energy_ramping_string_from_enum (HBNetEnergyRamping const ramping_enum) const
 Given an enum for an HBNetEnergyRamping type, return the corresponding string. More...
 
core::Size max_network_size () const
 Get the maximum network size, beyond which there is no bonus for making a network bigger. More...
 
void max_network_size (core::Size const setting)
 Set the maximum network size, beyond which there is no bonus for making a network bigger. More...
 
bool energy_method_is_unpublished () const override
 This energy method IS unpublished (returns true). More...
 
utility::vector1
< basic::citation_manager::UnpublishedModuleInfoCOP > 
provide_authorship_info_for_unpublished () const override
 Provide a list of authors and their e-mail addresses, as strings. More...
 
- Public Member Functions inherited from core::scoring::methods::WholeStructureEnergy
 WholeStructureEnergy (EnergyMethodCreatorOP)
 Constructor with EnergyMethodCreator to list the ScoreTypes computed by this WholeStructureEnergy. More...
 
 ~WholeStructureEnergy () override
 
EnergyMethodType method_type () const override
 Return one of the 7 kinds of energy methods that exist: e.g. context-dependent-one-body vs whole-structure. More...
 
virtual Distance atomic_interaction_cutoff () const
 how far apart must two heavy atoms be to have a zero interaction energy? More...
 
- Public Member Functions inherited from core::scoring::methods::EnergyMethod
 EnergyMethod (EnergyMethodCreatorOP creator)
 Constructor with EnergyMethodCreator, which lists the score types that this energy method is responsible for. More...
 
virtual void setup_for_packing (pose::Pose &, utility::vector1< bool > const &, utility::vector1< bool > const &) const
 if an energy method needs to cache data in the Energies object, before packing begins, then it does so during this function. The packer must ensure this function is called. The default behavior is to do nothing. More...
 
virtual void setup_for_packing_with_rotsets (pose::Pose &pose, pack_basic::RotamerSetsBaseOP const &rotsets, ScoreFunction const &sfxn) const
 if an energy method needs to cache data in the Energies object, before packing begins and requires access to the RotamerSets object, then it does so during this function. The default behavior is to do nothing. More...
 
virtual void prepare_rotamers_for_packing (pose::Pose const &, conformation::RotamerSetBase &) const
 If an energy method needs to cache data in a packing::RotamerSet object before rotamer energies are calculated, it does so during this function. The packer must ensure this function is called. The default behavior is to do nothing. More...
 
virtual void update_residue_for_packing (pose::Pose &, Size resid) const
 If the pose changes in the middle of a packing (as happens in rotamer trials) and if an energy method needs to cache data in the pose that corresponds to its current state, then the method must update that data when this function is called. The packer must ensure this function gets called. The default behavior is to do nothing. More...
 
virtual void setup_for_scoring (pose::Pose &, ScoreFunction const &) const
 if an energy method needs to cache something in the pose (e.g. in pose.energies()), before scoring begins, it must do so in this method. All long range energy functions must initialize their LREnergyContainers before scoring begins. The default is to do nothing. More...
 
virtual bool requires_a_setup_for_scoring_for_residue_opportunity_during_regular_scoring (pose::Pose const &pose) const
 Does this EnergyMethod require the opportunity to examine the residue before (regular) scoring begins? Not all energy methods would. The ScoreFunction will not ask energy methods to examine residues that are uninterested in doing so. The default implmentation of this function returns false. More...
 
virtual void setup_for_scoring_for_residue (conformation::Residue const &rsd, pose::Pose const &pose, ScoreFunction const &sfxn, basic::datacache::BasicDataCache &residue_data_cache) const
 Do any setup work before scoring, caching any slow-to-compute data that will be used during energy evaluation inside of the input Residue object's data cache. (The Residue on the whole is given as a constant reference, but non-constant access to its data cache is granted.) More...
 
virtual void setup_for_derivatives (pose::Pose &pose, ScoreFunction const &sfxn) const
 Called immediately before atom- and DOF-derivatives are calculated allowing the derived class a chance to prepare for future calls. More...
 
virtual void finalize_after_derivatives (pose::Pose &, ScoreFunction const &) const
 called at the end of derivatives evaluation More...
 
virtual bool minimize_in_whole_structure_context (pose::Pose const &) const
 Should this EnergyMethod have score and derivative evaluation evaluated only in the context of the whole Pose, or can it be included in a decomposed manner for a residue or a set of residue-pairs that are not part of the Pose that's serving as their context? The default method implemented in the base class returns true in order to grandfather in EnergyMethods that have not had their derivatives changed to take advantage of the new derivative-evaluation machinery. Methods that return "true" will not have their residue-energy(-ext) / residue-pair-energy(-ext) methods invoked by the ScoreFunction during its traversal of the MinimizationGraph, and instead will be asked to perform all their work during finalize_total_energies(). Similarly, they will be expected to perform all their work during eval_atom_deriv() instead of during the ScoreFunction's traversal of the MinimizationGraph for derivative evaluation. IMPORTANT: Methods that return "true" cannot be included in RTMin. More...
 
virtual bool defines_high_order_terms (pose::Pose const &) const
 Should this EnergyMethod have score and derivative evaluation evaluated both in the context of the whole Pose and in the context of residue or residue-pairs? This covers scoring terms like env-smooth wherein the CBeta's get derivatives for increasing the neighbor counts for surrounding residues, and terms like constraints, which are definable on arbitrary number of residues (e.g. more than 2); both of these terms could be used in RTMin, and both should use the residue and residue-pair evaluation scheme with the MinimizationGraph for the majority of the work they do. (Now, high-order constraints (3-body or above) will not be properly evaluated within RTMin.). The default implementation returns "false". More...
 
virtual void 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
 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. More...
 
ScoreTypes const & score_types () const
 Returns the score types that this energy method computes. More...
 
virtual void show_additional_info (std::ostream &, pose::Pose &, bool) const
 show additional information of the energy method More...
 
virtual bool energy_method_provides_citation_info () const
 Does this energy method provide information about how to cite it? More...
 
virtual utility::vector1
< basic::citation_manager::CitationCollectionCOP > 
provide_citation_info () const
 Provide the citation. More...
 
- Public Member Functions inherited from core::scoring::annealing::ResidueArrayAnnealableEnergy
 ResidueArrayAnnealableEnergy ()
 Constructor. More...
 
 ResidueArrayAnnealableEnergy (ResidueArrayAnnealableEnergy const &src)
 Copy constructor. More...
 
virtual ~ResidueArrayAnnealableEnergy ()
 Destructor. More...
 
virtual void clean_up_residuearrayannealableenergy_after_packing (core::pose::Pose &pose)
 Allows the ResidueArrayAnnealableEnergy to clean up cached data, either within the EnergyMethod or in the pose, after a packer run. More...
 

Private Member Functions

void initialize_graphs (core::pose::Pose const &pose) const
 Initializes the neighbor_graph_ and hbonds_graph_ objects, given a pose. More...
 
void initialize_bb_hbonds_graph (core::pose::Pose const &pose) const
 Set up the bb_hbonds_graph_ object. More...
 
bool has_hbond (core::conformation::Residue const &res1, core::conformation::Residue const &res2, core::Size const res1_index, core::Size const res2_index) const
 Determines whether a hydrogen bond exists between res1 and res2. More...
 
bool has_bb_hbond_connection (core::pose::Pose const &pose, core::conformation::Residue const &res1, core::conformation::Residue const &res2) const
 Determines whether a pair of residues has a close backbone hydrogen bond connection. More...
 
bool has_bb_hbond (core::conformation::Residue const &res1, core::conformation::Residue const &res2) const
 Determines whether a pair of residues has a direct backbone hydrogen bond connection. More...
 
core::Real bonus_function (core::Size count_in) const
 Given the size of a connected component in a graph, return a value to pass to the bonus function accumulator. More...
 
void drop_all_edges_for_symmetric_nodes (core::Size const asymm_node) const
 Given the index of an asymmetric node in the hbonds_graph_ object, drop all of the edges for all corresponding symmetric nodes. More...
 
void symmetrize_hbonds_graph (core::Size const node1, core::Size const node2, utility::vector1< core::conformation::ResidueCOP > const &resvect) const
 Given residue indices node1 and node2 in the asymmetric unit, add an edge between the corresponding nodes in all symmetric units. More...
 

Private Attributes

bool disabled_
 Is this term disabled? More...
 
core::scoring::TenANeighborGraph neighbour_graph_
 The neighbor graph for the pose being scored, extracted from the pose by the setup_residuearrayannealableenergy_for_packing function and/or by the finalize_total_energy function. More...
 
core::scoring::TenANeighborGraph hbonds_graph_
 A graph object in which nodes are residues and edges indicate that the residues are hydrogen-bonded. More...
 
core::scoring::TenANeighborGraph hbonds_graph_last_accepted_
 A graph object in which nodes are residues and edges indicate that the residues are hydrogen-bonded. More...
 
core::scoring::TenANeighborGraph bb_hbonds_graph_
 A graph object in which nodes are residues and edges indicate close backbone-backbone hydrogen bonding. More...
 
core::conformation::symmetry::SymmetryInfoCOP symm_info_
 Information about the symmetric state of the pose. Will be nullptr if the pose is not symmetric. More...
 
HBNetEnergyRamping ramping_type_
 How does the energy scale with size of network? More...
 
core::Size max_network_size_
 What is the maximum network size, beyond which we no longer get a bonus? More...
 

Additional Inherited Members

- Protected Member Functions inherited from core::scoring::methods::EnergyMethod
void set_score_types (EnergyMethodCreatorOP creator)
 Override the entirety of the score types list if they were initialized incorrectly in a parent's constructor. More...
 

Detailed Description

HBNetEnergy, an EnergyMethod that gives a bonus for hydrogen bond networks, which ramps nonlinearly with the size of the networks. This class is derived from base class WholeStructureEnergy, which is meaningful only on entire structures. These EnergyMethods do all of their work in the "finalize_total_energy" section of scorefunction evaluation.

Member Typedef Documentation

Constructor & Destructor Documentation

core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::HBNetEnergy ( core::scoring::methods::EnergyMethodOptions const &  options)
core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::~HBNetEnergy ( )
overridedefault

Default destructor.

Member Function Documentation

core::Real core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::bonus_function ( core::Size  count_in) const
private

Given the size of a connected component in a graph, return a value to pass to the bonus function accumulator.

The value returned by this function is more POSITIVE for bigger bonuses; it should be SUBTRACTED from the accumulator to yield a score that gets more negative with greater favourability.

References core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergyRampLinear, core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergyRampLogarithmic, core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergyRampQuadratic, core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergyRampSquareRoot, max_network_size_, and ramping_type_.

Referenced by calculate_energy().

core::Real core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::calculate_energy ( utility::vector1< core::conformation::ResidueCOP > const &  resvect,
utility::vector1< core::Size > const &  rotamer_ids,
core::Size const  substitution_position = 0 
) const
overridevirtual

Calculate the total energy given a vector of const owning pointers to residues.

Called directly by the ResidueArrayAnnealingEvaluator during packer runs.

Called directly by the ResidueArrayAnnealingEvaluator during packer runs. Requires that set_up_residuearrayannealablenergy_for_packing() be called first.

Implements core::scoring::annealing::ResidueArrayAnnealableEnergy.

References bonus_function(), disabled_, drop_all_edges_for_symmetric_nodes(), has_hbond(), hbonds_graph_, hbonds_graph_last_accepted_, neighbour_graph_, symm_info_, and symmetrize_hbonds_graph().

Referenced by finalize_total_energy().

core::scoring::methods::EnergyMethodOP core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::clone ( ) const
overridevirtual

Clone: create a copy of this object, and return an owning pointer to the copy.

Implements core::scoring::methods::EnergyMethod.

void core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::commit_considered_substitution ( )
overridevirtual

What to do when a substitution that was considered is accepted.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu).

Reimplemented from core::scoring::annealing::ResidueArrayAnnealableEnergy.

References hbonds_graph_, and hbonds_graph_last_accepted_.

void core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::drop_all_edges_for_symmetric_nodes ( core::Size const  asymm_node) const
private

Given the index of an asymmetric node in the hbonds_graph_ object, drop all of the edges for all corresponding symmetric nodes.

Assumes symm_info_ points to something. Check symm_info != nullptr before calling this function.

References hbonds_graph_, and symm_info_.

Referenced by calculate_energy().

bool core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::energy_method_is_unpublished ( ) const
overridevirtual

This energy method 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::scoring::methods::EnergyMethod.

void core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::finalize_after_minimizing ( core::pose::Pose pose) const
overridevirtual

Re-enable this scoreterm after a minimization trajectory.

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

References disabled_, and core::pack::guidance_scoreterms::hbnet_energy::TR().

void core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::finalize_total_energy ( core::pose::Pose pose,
core::scoring::ScoreFunction const &  ,
core::scoring::EnergyMap totals 
) const
overridevirtual

Actually calculate the total energy.

Called by the scoring machinery. The update_residue_neighbors() function of the pose must be called first.

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

References calculate_energy(), core::pose::Pose::conformation(), disabled_, core::scoring::hbnet, initialize_graphs(), core::conformation::Conformation::residue_cop(), and core::pose::Pose::total_residue().

bool core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::has_bb_hbond ( core::conformation::Residue const &  res1,
core::conformation::Residue const &  res2 
) const
private

Determines whether a pair of residues has a direct backbone hydrogen bond connection.

Returns true if the residues have a bb-bb hbond.

Note
This only considers res1 as donor and res2 as acceptor. Call twice to check two-way hydrogen bonds.

References core::conformation::Residue::atom_base(), core::conformation::Residue::atom_type(), core::conformation::Residue::first_sidechain_atom(), HBNETENERGY_HBOND_DIST_CUTOFF_SQ, core::chemical::AtomType::is_acceptor(), core::chemical::AtomType::is_polar_hydrogen(), core::conformation::Residue::natoms(), and core::conformation::Residue::xyz().

Referenced by has_bb_hbond_connection().

bool core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::has_bb_hbond_connection ( core::pose::Pose const &  pose,
core::conformation::Residue const &  res1,
core::conformation::Residue const &  res2 
) const
private

Determines whether a pair of residues has a close backbone hydrogen bond connection.

Returns true if (a) the residues have a bb-bb hbond, (b) res1 has a bb-bb hbond to a residue that is covalently bonded to res2, (c) res2 has a bb-bb hbond to a residue that is covalently bonded to res1, or (d) if res1 and res2 are directly covalently bonded.

Note
This only considers res1 (and its neighbors) as donor and res2 (and its neighbors) as acceptor. Call twice to check two-way hydrogen bonds.

References core::conformation::Residue::connected_residue_at_lower(), core::conformation::Residue::connected_residue_at_upper(), has_bb_hbond(), core::conformation::Residue::has_lower_connect(), core::conformation::Residue::has_upper_connect(), core::pose::Pose::residue(), and core::conformation::Residue::seqpos().

Referenced by initialize_bb_hbonds_graph().

bool core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::has_hbond ( core::conformation::Residue const &  res1,
core::conformation::Residue const &  res2,
core::Size const  res1_index,
core::Size const  res2_index 
) const
private

Determines whether a hydrogen bond exists between res1 and res2.

Ignores backbone-backbone hydrogen bonds. Also, this is directional: it considers donors in res1 to acceptors in res2. Call twice for bidirectional hbonding.

Note
For now, this is just a distance check between donors and acceptors, but it could be updated to properly call the hbond scoring machinery.

Ignores backbone-backbone hydrogen bonds. Also, this is directional: it considers donors in res1 to acceptors in res2. Call twice for bidirectional hbonding.

References core::conformation::Residue::atom_base(), core::conformation::Residue::atom_type(), bb_hbonds_graph_, core::conformation::Residue::first_sidechain_atom(), HBNETENERGY_HBOND_DIST_CUTOFF_SQ, core::chemical::AtomType::is_acceptor(), core::chemical::AtomType::is_polar_hydrogen(), core::conformation::Residue::natoms(), and core::conformation::Residue::xyz().

Referenced by calculate_energy().

HBNetEnergyRamping core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::hbnet_energy_ramping_enum_from_string ( std::string const &  ramping_string) const

Given a string for an HBNetEnergyRamping type, return the corresponding enum.

Returns HBNetEnergyRampINVALID if the string isn't recognized.

References hbnet_energy_ramping_string_from_enum(), core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergyRamp_end_of_list, and core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergyRampINVALID.

Referenced by set_hbnet_energy_ramping().

std::string core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::hbnet_energy_ramping_string_from_enum ( HBNetEnergyRamping const  ramping_enum) const
void core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::indicate_required_context_graphs ( utility::vector1< bool > &  context_graphs_required) const
overridevirtual

HBNetEnergy is context-independent and thus indicates that no context graphs need to be maintained by class Energies.

Implements core::scoring::methods::EnergyMethod.

void core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::initialize_bb_hbonds_graph ( core::pose::Pose const &  pose) const
private

Set up the bb_hbonds_graph_ object.

If X and Y share an edge, then X is bb-bb hydrogen bonded to Y, or to a residue that is covalently bonded to Y, or a residue covalently bonded to X is bb-bb hydrogen bonded to Y.

References bb_hbonds_graph_, has_bb_hbond_connection(), neighbour_graph_, core::pose::Pose::residue(), and core::pose::Pose::total_residue().

Referenced by initialize_graphs().

void core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::initialize_graphs ( core::pose::Pose const &  pose) const
private
core::Size core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::max_network_size ( ) const
inline

Get the maximum network size, beyond which there is no bonus for making a network bigger.

A value of "0" (the default) means no max.

References max_network_size_.

void core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::max_network_size ( core::Size const  setting)

Set the maximum network size, beyond which there is no bonus for making a network bigger.

A value of "0" (the default) means no max.

References max_network_size_.

utility::vector1< basic::citation_manager::UnpublishedModuleInfoCOP > core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::provide_authorship_info_for_unpublished ( ) const
overridevirtual

Provide a list of authors and their e-mail addresses, as strings.

Returns
A list of pairs of (author, e-mail address).
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::scoring::methods::EnergyMethod.

void core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::report ( ) const

Get a summary of all loaded data.

References core::pack::guidance_scoreterms::hbnet_energy::TR().

void core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::set_hbnet_energy_ramping ( std::string const &  ramping_string)

Set the way that HBNetEnergy scales with network size, by string.

References hbnet_energy_ramping_enum_from_string(), and core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergyRampINVALID.

Referenced by HBNetEnergy().

void core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::set_hbnet_energy_ramping ( HBNetEnergyRamping const  ramping_enum)

Set the way that HBNetEnergy scales with network size, by enum.

References core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergyRampINVALID, and ramping_type_.

void core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::set_up_residuearrayannealableenergy_for_packing ( core::pose::Pose pose,
core::pack::rotamer_set::RotamerSets const &  rotamersets,
core::scoring::ScoreFunction const &  sfxn 
)
overridevirtual

Cache data from the pose in this EnergyMethod in anticipation of scoring.

Reimplemented from core::scoring::annealing::ResidueArrayAnnealableEnergy.

References initialize_graphs().

void core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::setup_for_minimizing ( core::pose::Pose pose,
core::scoring::ScoreFunction const &  sfxn,
core::kinematics::MinimizerMapBase const &  minmap 
) const
overridevirtual

Disable this scoreterm during minimization trajectory.

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

References disabled_, and core::pack::guidance_scoreterms::hbnet_energy::TR().

void core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::symmetrize_hbonds_graph ( core::Size const  node1,
core::Size const  node2,
utility::vector1< core::conformation::ResidueCOP > const &  resvect 
) const
private

Given residue indices node1 and node2 in the asymmetric unit, add an edge between the corresponding nodes in all symmetric units.

Assumes symm_info_ points to something. Check symm_info != nullptr before calling this function.

References hbonds_graph_, symm_info_, and protocols::kinmatch::xyz().

Referenced by calculate_energy().

core::Size core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::version ( ) const
overridevirtual

HBNetEnergy is version 1.0 right now.

Implements core::scoring::methods::EnergyMethod.

Member Data Documentation

core::scoring::TenANeighborGraph core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::bb_hbonds_graph_
mutableprivate

A graph object in which nodes are residues and edges indicate close backbone-backbone hydrogen bonding.

If X and Y share an edge, then X is bb-bb hydrogen bonded to Y, or to a residue that is covalently bonded to Y, or a residue covalently bonded to X is bb-bb hydrogen bonded to Y. (Or X and Y are covalently bonded, in which case they are also given an edge.)

Referenced by has_hbond(), and initialize_bb_hbonds_graph().

bool core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::disabled_
mutableprivate

Is this term disabled?

This term disables itself during minimization trajectories.

Referenced by calculate_energy(), finalize_after_minimizing(), finalize_total_energy(), and setup_for_minimizing().

core::scoring::TenANeighborGraph core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::hbonds_graph_
mutableprivate

A graph object in which nodes are residues and edges indicate that the residues are hydrogen-bonded.

Updated on-the-fly during packing.

Referenced by calculate_energy(), commit_considered_substitution(), drop_all_edges_for_symmetric_nodes(), initialize_graphs(), and symmetrize_hbonds_graph().

core::scoring::TenANeighborGraph core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::hbonds_graph_last_accepted_
mutableprivate

A graph object in which nodes are residues and edges indicate that the residues are hydrogen-bonded.

This one represents the last accepted move in the simulated annealing search.

Referenced by calculate_energy(), and commit_considered_substitution().

core::Size core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::max_network_size_
private

What is the maximum network size, beyond which we no longer get a bonus?

Defaults to 0 (no limit). Values greater than 0 impose a limit.

Referenced by bonus_function(), and max_network_size().

core::scoring::TenANeighborGraph core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::neighbour_graph_
mutableprivate

The neighbor graph for the pose being scored, extracted from the pose by the setup_residuearrayannealableenergy_for_packing function and/or by the finalize_total_energy function.

The update_residue_neighbors() method of the pose must be called first.

Referenced by calculate_energy(), initialize_bb_hbonds_graph(), and initialize_graphs().

HBNetEnergyRamping core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::ramping_type_
private

How does the energy scale with size of network?

Defaults to quadratic. Can be logarithmic, square root, etc.

Referenced by bonus_function(), and set_hbnet_energy_ramping().

core::conformation::symmetry::SymmetryInfoCOP core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::symm_info_
mutableprivate

Information about the symmetric state of the pose. Will be nullptr if the pose is not symmetric.

Referenced by calculate_energy(), drop_all_edges_for_symmetric_nodes(), initialize_graphs(), and symmetrize_hbonds_graph().


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