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::scoring::aa_composition_energy::AACompositionEnergy Class Reference

AACompositionEnergy, an energy function to penalize stretches of the same residue, derived from base class for EnergyMethods, which are meaningful only on entire structures. These EnergyMethods do all of their work in the "finalize_total_energy" section of score function evaluation. More...

#include <AACompositionEnergy.hh>

Inheritance diagram for core::scoring::aa_composition_energy::AACompositionEnergy:
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

 AACompositionEnergy (core::scoring::methods::EnergyMethodOptions const &options)
 Options constructor. More...
 
 AACompositionEnergy (AACompositionEnergy const &src)
 Copy constructor. More...
 
 ~AACompositionEnergy () 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
 AACompositionEnergy is context-independent and thus indicates that no context graphs need to be maintained by class Energies. More...
 
core::Size version () const override
 AACompositionEnergy is version 1.0 right now. More...
 
void finalize_total_energy (core::pose::Pose &pose, ScoreFunction const &, 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...
 
virtual core::Real calculate_energy (utility::vector1< core::conformation::ResidueCOP > const &resvect, utility::vector1< AACompositionEnergySetupCOP > const &setup_helpers, utility::vector1< core::select::residue_selector::ResidueSubset > const &masks) const
 Calculate the total energy given a vector of const owning pointers to residues, vectors of AACompositionEnergySetup objects, and vectors of masks. 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 packing. More...
 
void clean_up_residuearrayannealableenergy_after_packing (core::pose::Pose &pose) override
 Clear the cached data from the pose after packing. More...
 
void setup_for_minimizing (pose::Pose &pose, ScoreFunction const &sfxn, kinematics::MinimizerMapBase const &minmap) const override
 Disable this energy during minimization. More...
 
void finalize_after_minimizing (pose::Pose &pose) const override
 Re-enable this energy after minimization. More...
 
bool energy_method_provides_citation_info () const override
 Returns true (this method is published). More...
 
utility::vector1
< basic::citation_manager::CitationCollectionCOP > 
provide_citation_info () const override
 Provide the citation (Hosseinzadeh, Bhardwaj, Mulligan et al. Science 2017). 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_is_unpublished () const
 Does this energy method indicate that it is unpublished (and, by extension, that the author should be included in publications resulting from it)? More...
 
virtual utility::vector1
< basic::citation_manager::UnpublishedModuleInfoCOP > 
provide_authorship_info_for_unpublished () const
 Provide a list of authors and their e-mail addresses, as strings. 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 commit_considered_substitution ()
 What to do when a substitution that was considered is accepted. More...
 

Private Member Functions

AACompositionEnergySetupCOP setup_helper_cop (core::Size const index) const
 Get a const-access pointer to a setup helper object. More...
 
core::Size setup_helper_count () const
 Get the number of setup helper objects: More...
 
void get_helpers_from_pose (core::pose::Pose const &pose, utility::vector1< AACompositionEnergySetupCOP > &setup_helpers, utility::vector1< core::select::residue_selector::ResidueSubset > &masks) const
 Given a pose, pull out the AACompositionEnergySetup objects stored in SequenceConstraints in the pose and append them to the setup_helpers_ vector, returning a new vector. This also generates a vector of masks simultaneously. More...
 

Private Attributes

bool disabled_
 Is this energy disabled (e.g. for minimization)? More...
 
utility::vector1
< AACompositionEnergySetupOP
setup_helpers_
 The vector of helper objects that store all of the data for setting up this scoring function. More...
 
utility::vector1
< AACompositionEnergySetupCOP
setup_helpers_for_packing_
 A cache of the AACompositionEnergySetup objects to be used for packing. More...
 
utility::vector1
< core::select::residue_selector::ResidueSubset
setup_helper_masks_for_packing_
 A vector of masks corresponding to the AACompositionEnergySetup objects in setup_helpers_for_packing_. These are generated from ResidueSelectors. 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

AACompositionEnergy, an energy function to penalize stretches of the same residue, derived from base class for EnergyMethods, which are meaningful only on entire structures. These EnergyMethods do all of their work in the "finalize_total_energy" section of score function evaluation.

Member Typedef Documentation

Constructor & Destructor Documentation

core::scoring::aa_composition_energy::AACompositionEnergy::AACompositionEnergy ( core::scoring::methods::EnergyMethodOptions const &  options)

Options constructor.

References report(), and setup_helpers_.

core::scoring::aa_composition_energy::AACompositionEnergy::AACompositionEnergy ( AACompositionEnergy const &  src)

Copy constructor.

Note that there's no deep-copying here.

core::scoring::aa_composition_energy::AACompositionEnergy::~AACompositionEnergy ( )
overridedefault

Default destructor.

Member Function Documentation

core::Real core::scoring::aa_composition_energy::AACompositionEnergy::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 disabled_, setup_helper_masks_for_packing_, and setup_helpers_for_packing_.

Referenced by finalize_total_energy().

core::Real core::scoring::aa_composition_energy::AACompositionEnergy::calculate_energy ( utility::vector1< core::conformation::ResidueCOP > const &  resvect,
utility::vector1< AACompositionEnergySetupCOP > const &  setup_helpers,
utility::vector1< core::select::residue_selector::ResidueSubset > const &  masks 
) const
virtual

Calculate the total energy given a vector of const owning pointers to residues, vectors of AACompositionEnergySetup objects, and vectors of masks.

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

Called by finalize_total_energy() and during packer runs. Requires that setup_residuearrayannealablenergy_for_packing() be called first.

Called by finalize_total_energy() and during packer runs.

References disabled_, and protocols::noesy_assign::round().

void core::scoring::aa_composition_energy::AACompositionEnergy::clean_up_residuearrayannealableenergy_after_packing ( core::pose::Pose pose)
overridevirtual

Clear the cached data from the pose after packing.

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

References setup_helper_masks_for_packing_, and setup_helpers_for_packing_.

core::scoring::methods::EnergyMethodOP core::scoring::aa_composition_energy::AACompositionEnergy::clone ( ) const
overridevirtual

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

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

bool core::scoring::aa_composition_energy::AACompositionEnergy::energy_method_provides_citation_info ( ) const
overridevirtual

Returns true (this method is published).

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::scoring::aa_composition_energy::AACompositionEnergy::finalize_after_minimizing ( pose::Pose pose) const
overridevirtual

Re-enable this energy after minimization.

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

References disabled_.

void core::scoring::aa_composition_energy::AACompositionEnergy::finalize_total_energy ( core::pose::Pose pose,
ScoreFunction const &  ,
EnergyMap totals 
) const
overridevirtual
void core::scoring::aa_composition_energy::AACompositionEnergy::get_helpers_from_pose ( core::pose::Pose const &  pose,
utility::vector1< AACompositionEnergySetupCOP > &  setup_helpers,
utility::vector1< core::select::residue_selector::ResidueSubset > &  masks 
) const
private

Given a pose, pull out the AACompositionEnergySetup objects stored in SequenceConstraints in the pose and append them to the setup_helpers_ vector, returning a new vector. This also generates a vector of masks simultaneously.

Parameters
[in]poseThe pose from which the AACompositionEnergySetupCOPs will be extracted.
[out]setup_helpersThe output vector of AACompositionEnergySetupCOPs that is the concatenation of those stored in setup_helpers_ and those from the pose.
[out]masksThe output vector of ResidueSubsets, which will be equal in size to the helpers vector.

The output vectors are first cleared by this operation.

References core::pose::Pose::constraint_set(), setup_helpers_, and core::pose::Pose::size().

Referenced by finalize_total_energy(), and set_up_residuearrayannealableenergy_for_packing().

void core::scoring::aa_composition_energy::AACompositionEnergy::indicate_required_context_graphs ( utility::vector1< bool > &  context_graphs_required) const
overridevirtual

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

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

utility::vector1< basic::citation_manager::CitationCollectionCOP > core::scoring::aa_composition_energy::AACompositionEnergy::provide_citation_info ( ) const
overridevirtual

Provide the citation (Hosseinzadeh, Bhardwaj, Mulligan et al. Science 2017).

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::scoring::aa_composition_energy::AACompositionEnergy::report ( ) const

Get a summary of all loaded data.

References setup_helper_cop(), and setup_helper_count().

Referenced by AACompositionEnergy().

void core::scoring::aa_composition_energy::AACompositionEnergy::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 packing.

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

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

References disabled_, get_helpers_from_pose(), setup_helper_masks_for_packing_, and setup_helpers_for_packing_.

void core::scoring::aa_composition_energy::AACompositionEnergy::setup_for_minimizing ( pose::Pose pose,
ScoreFunction const &  sfxn,
kinematics::MinimizerMapBase const &  minmap 
) const
overridevirtual

Disable this energy during minimization.

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

References disabled_.

AACompositionEnergySetupCOP core::scoring::aa_composition_energy::AACompositionEnergy::setup_helper_cop ( core::Size const  index) const
inlineprivate

Get a const-access pointer to a setup helper object.

References setup_helpers_.

Referenced by report().

core::Size core::scoring::aa_composition_energy::AACompositionEnergy::setup_helper_count ( ) const
inlineprivate

Get the number of setup helper objects:

References setup_helpers_.

Referenced by report().

core::Size core::scoring::aa_composition_energy::AACompositionEnergy::version ( ) const
overridevirtual

AACompositionEnergy is version 1.0 right now.

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

Member Data Documentation

bool core::scoring::aa_composition_energy::AACompositionEnergy::disabled_
mutableprivate
utility::vector1< core::select::residue_selector::ResidueSubset > core::scoring::aa_composition_energy::AACompositionEnergy::setup_helper_masks_for_packing_
private

A vector of masks corresponding to the AACompositionEnergySetup objects in setup_helpers_for_packing_. These are generated from ResidueSelectors.

Referenced by calculate_energy(), clean_up_residuearrayannealableenergy_after_packing(), and set_up_residuearrayannealableenergy_for_packing().

utility::vector1<AACompositionEnergySetupOP> core::scoring::aa_composition_energy::AACompositionEnergy::setup_helpers_
private

The vector of helper objects that store all of the data for setting up this scoring function.

Initialized on scoreterm initialization.

Referenced by AACompositionEnergy(), get_helpers_from_pose(), setup_helper_cop(), and setup_helper_count().

utility::vector1<AACompositionEnergySetupCOP> core::scoring::aa_composition_energy::AACompositionEnergy::setup_helpers_for_packing_
private

A cache of the AACompositionEnergySetup objects to be used for packing.

This is the list in setup_helpers_ plus all of the AACompositionEnergySetup objects stored in AACompositionConstraint objects in the pose. Initialized by the ResidueArrayAnnealingEvaluator in its initialize() function.

Referenced by calculate_energy(), clean_up_residuearrayannealableenergy_after_packing(), and set_up_residuearrayannealableenergy_for_packing().


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