![]() |
Rosetta Core
2014.35
|
#include <FA_ElecEnergy.hh>
Public Member Functions | |
FA_ElecEnergy (methods::EnergyMethodOptions const &options) | |
FA_ElecEnergy (FA_ElecEnergy const &src) | |
void | initialize () |
Initilize constants. More... | |
virtual methods::EnergyMethodOP | clone () const |
clone More... | |
virtual void | setup_for_minimizing (pose::Pose &pose, ScoreFunction const &sfxn, kinematics::MinimizerMapBase const &min_map) const |
stashes nblist if use_nblist is true More... | |
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. More... | |
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 |
virtual void | update_residue_for_packing (pose::Pose &pose, Size resid) const |
ensure this function gets called. The default behavior is to do nothing. More... | |
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. More... | |
virtual bool | minimize_in_whole_structure_context (pose::Pose const &pose) const |
Returns true if we're using neighborlist-autoupdate. More... | |
virtual bool | defines_score_for_residue_pair (conformation::Residue const &res1, conformation::Residue const &res2, bool res_moving_wrt_eachother) const |
During minimization, energy methods are allowed to decide that they say nothing about a particular residue pair (e.g. no non-zero energy) and as a result they will not be queried for a derivative or an energy. The default implementation returns "true" for all residue pairs. Context-dependent two-body energies have the option of behaving as if they are context-independent by returning "false" for residue pairs that do no move wrt each other. More... | |
virtual bool | use_extended_residue_pair_energy_interface () const |
Rely on the extended version of the residue_pair_energy function during score-function evaluation in minimization? The extended version (below) takes a ResPairMinimizationData in which the derived base class has (or should have) cached a piece of data that will make residue-pair energy evaluation faster than its absense (e.g. a neighbor list). Derived energy methods should return 'true' from this function to use the extended interface. The default method implemented in this class returns 'false'. More... | |
virtual void | residue_pair_energy_ext (conformation::Residue const &rsd1, conformation::Residue const &rsd2, ResPairMinimizationData const &min_data, pose::Pose const &pose, ScoreFunction const &sfxn, EnergyMap &emap) const |
Evaluate the two-body energies for a particular residue, in the context of a given Pose, and with the help of a piece of cached data for minimization, increment those two body energies into the input EnergyMap. The calling function must guarantee that this EnergyMethod has had the opportunity to update the input ResPairMinimizationData object for the given residues in a call to setup_for_minimizing_for_residue_pair before this function is invoked. This function should not be called unless the use_extended_residue_pair_energy_interface() method returns "true". Default implementation provided by this base class calls utility::exit(). More... | |
void | setup_for_minimizing_for_residue_pair (conformation::Residue const &rsd1, conformation::Residue const &rsd2, pose::Pose const &pose, ScoreFunction const &sfxn, kinematics::MinimizerMapBase const &minmap, ResSingleMinimizationData const &res1_data_cache, ResSingleMinimizationData const &res2_data_cache, ResPairMinimizationData &data_cache) const |
Called at the beginning of minimization, allowing this energy method to cache data pertinent for a single residue in the the ResPairMinimizationData that is used for a particular residue in the context of a particular Pose. This base class provides a noop implementation for this function if there is nothing that the derived class needs to perform in this setup phase. More... | |
virtual void | eval_residue_pair_derivatives (conformation::Residue const &rsd1, conformation::Residue const &rsd2, ResSingleMinimizationData const &, ResSingleMinimizationData const &, ResPairMinimizationData const &min_data, pose::Pose const &pose, EnergyMap const &weights, utility::vector1< DerivVectorPair > &r1_atom_derivs, utility::vector1< DerivVectorPair > &r2_atom_derivs) const |
Evaluate the atom derivative f1/f2 vectors for all atoms on rsd1 in response to the atoms on rsd2, and all the atoms on rsd2 as they in response to the atoms on rsd1. This method is used with the MinimizationGraph and when nblist_autoupdate is not in use. More... | |
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 derivative vectors for a particular atom in a given (asymmetric) pose when nblist_autoupdate is being used. nblist_autoupdate cannot be used with symmetric poses, in rtmin, or in minpack. More... | |
virtual void | backbone_backbone_energy (conformation::Residue const &rsd1, conformation::Residue const &rsd2, pose::Pose const &pose, ScoreFunction const &sfxn, EnergyMap &emap) const |
Evaluate the interaction between the backbone of rsd1 and the backbone of rsd2 and accumulate the unweighted energies. The sum bb_bb(r1,r2) + bb_sc(r1,r2) + bb_sc(r2,r1) + sc_sc( r1,r2) must equal the weighted result of a call to residue_pair_energy. By default, bb_bb & bb_sc return 0 and sc_sc returns residue pair energy. More... | |
virtual void | backbone_sidechain_energy (conformation::Residue const &rsd1, conformation::Residue const &rsd2, pose::Pose const &pose, ScoreFunction const &sfxn, EnergyMap &emap) const |
Evaluate the interaction between the backbone of rsd1 and the sidechain of rsd2 and accumulate the unweighted energies. The sum bb_bb(r1,r2) + bb_sc(r1,r2) + bb_sc(r2,r1) + sc_sc( r1,r2) must equal the unweighted result of a call to residue_pair_energy. By default, bb_bb & bb_sc return 0 and sc_sc returns residue pair energy. More... | |
virtual void | sidechain_sidechain_energy (conformation::Residue const &rsd1, conformation::Residue const &rsd2, pose::Pose const &pose, ScoreFunction const &sfxn, EnergyMap &emap) const |
Evaluate the interaction between the sidechain of rsd1 and the sidechain of rsd2 and accumulate the unweighted energies. The sum bb_bb(r1,r2) + bb_sc(r1,r2) + bb_sc(r2,r1) + sc_sc( r1,r2) must equal the unweighted result of a call to residue_pair_energy. By default, bb_bb & bb_sc return 0 and sc_sc returns residue pair energy. More... | |
void | finalize_total_energy (pose::Pose &pose, ScoreFunction const &, EnergyMap &totals) const |
called by the ScoreFunction at the end of energy evaluation. The derived class has the opportunity to accumulate a score into the pose's total_energy EnergyMap. WholeStructure energies operate within this method; any method using a NeighborList during minimization would also operate within this function call. More... | |
virtual void | eval_intrares_energy (conformation::Residue const &, pose::Pose const &, ScoreFunction const &, EnergyMap &) const |
Evaluate the intra-residue energy for a given residue. More... | |
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. More... | |
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. More... | |
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. More... | |
etable::count_pair::CountPairFunctionCOP | get_intrares_countpair (conformation::Residue const &, pose::Pose const &, ScoreFunction const &) const |
Interface function for class NeighborList. More... | |
etable::count_pair::CountPairFunctionCOP | get_count_pair_function (Size const, Size const, pose::Pose const &, ScoreFunction const &) const |
Interface function for class NeighborList. More... | |
etable::count_pair::CountPairFunctionCOP | get_count_pair_function (conformation::Residue const &rsd1, conformation::Residue const &rsd2) const |
virtual Distance | atomic_interaction_cutoff () const |
FA_ElecEnergy distance cutoff. More... | |
virtual bool | divides_backbone_and_sidechain_energetics () const |
A derived class should return true for this function if it implements its own versions of the backbone_backbone_energy, backbone_sidechain_energy and sidechain_sidechain_energy functions. The default sidechain_sidechain_energy implemented by the TwoBodyEnergy base class calls residue_pair_energy. If the derived class implements its own versions of these functions, then calling code may avoid calling it on pairs of residues that are "provably distant" based on a pair of bounding spheres for a sidechains and backbones and this method's atomic_interaction_cutoff energy method. More... | |
virtual void | indicate_required_context_graphs (utility::vector1< bool > &context_graphs_required) const |
FA_ElecEnergy. More... | |
Real | hydrogen_interaction_cutoff2 () const |
How close two heavy atoms have to be such that their hydrogen atoms might interact, squared. More... | |
Real | hydrogen_interaction_cutoff () const |
How close two heavy atoms have to be such that their hydrogen atoms might interact. More... | |
Energy | heavyatom_heavyatom_energy (ElecAtom const &at1, ElecAtom const &at2, DistanceSquared &d2, Size &) const |
Energy | heavyatom_hydrogenatom_energy (ElecAtom const &at1, ElecAtom const &at2, Size &) const |
Energy | hydrogenatom_heavyatom_energy (ElecAtom const &at1, ElecAtom const &at2, Size &) const |
Energy | hydrogenatom_hydrogenatom_energy (ElecAtom const &at1, ElecAtom const &at2, Size &) const |
Real | elec_weight (bool at1isbb, bool at2isbb) const |
This has to go. More... | |
Real | elec_weight (bool at1isbb, bool at2isbb, weight_triple const &wts) const |
![]() | |
ContextIndependentTwoBodyEnergy (EnergyMethodCreatorOP) | |
Constructor with an EnergyMethodCreator to inform the ancestor EnergyMethod class which ScoreTypes this EnergyMethod is responsible for computing. More... | |
virtual | ~ContextIndependentTwoBodyEnergy () |
EnergyMethodType | method_type () const |
Return one of the 7 kinds of energy methods that exist: e.g. context-dependent-one-body vs whole-structure. More... | |
![]() | |
ShortRangeTwoBodyEnergy (EnergyMethodCreatorOP) | |
Constructor with EnergyMethodCreator to provide to the EnergyMethod grandparent the list of the ScoreTypes this EnergyMethod is responsible for computing. More... | |
virtual | ~ShortRangeTwoBodyEnergy () |
virtual void | evaluate_rotamer_background_energy_maps (conformation::RotamerSetBase const &set, conformation::Residue const &residue, pose::Pose const &pose, ScoreFunction const &sfxn, EnergyMap const &weights, utility::vector1< EnergyMap > &emaps) 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. More... | |
![]() | |
TwoBodyEnergy (EnergyMethodCreatorOP) | |
Constructor, requiring an EnergyMethodCreator. No default constructor provided to force EnergyMethod writers to provide an energy-method-creator at construction time. More... | |
virtual | ~TwoBodyEnergy () |
virtual void | setup_for_minimizing_for_residue (conformation::Residue const &rsd, pose::Pose const &pose, ScoreFunction const &sfxn, kinematics::MinimizerMapBase const &minmap, ResSingleMinimizationData &res_data_cache) const |
Called at the beginning of minimization, allowing this energy method to cache data pertinent for a single residue in the the ResPairMinimizationData that is used for a particular residue in the context of a particular Pose. This base class provides a noop implementation for this function if there is nothing that the derived class needs to perform in this setup phase. More... | |
virtual bool | requires_a_setup_for_scoring_for_residue_opportunity (pose::Pose const &pose) const |
Does this EnergyMethod require the opportunity to examine the residue before scoring begins? Not all energy methods would. The ScoreFunction will not ask energy methods to examine residues that are uninterested in doing so. More... | |
virtual void | setup_for_scoring_for_residue (conformation::Residue const &rsd, pose::Pose const &pose, ScoreFunction const &sfxn, ResSingleMinimizationData &min_data) const |
Do any setup work should the coordinates of this residue (who is still guaranteed to be of the same residue type as when setup_for_minimizing_for_residue was called) have changed so dramatically as to possibly require some amount of setup work before scoring should proceed. This function is used for both intra-residue setup and pre-inter-residue setup. More... | |
virtual bool | requires_a_setup_for_derivatives_for_residue_opportunity (pose::Pose const &pose) const |
Does this EnergyMethod require the opportunity to examine each residue before derivative evaluation begins? Not all energy methods would. The ScoreFunction will not ask energy methods to examine residue pairs that are uninterested in doing so. More... | |
virtual void | setup_for_derivatives_for_residue (conformation::Residue const &rsd, pose::Pose const &pose, ScoreFunction const &sfxn, ResSingleMinimizationData &min_data) const |
Do any setup work necessary before evaluating the derivatives for this residue. More... | |
virtual bool | requires_a_setup_for_scoring_for_residue_pair_opportunity (pose::Pose const &pose) const |
Does this EnergyMethod require the opportunity to examine each residue pair before scoring begins? Not all energy methods would. The ScoreFunction will not ask energy methods to examine residue pairs that are uninterested in doing so. More... | |
virtual void | setup_for_scoring_for_residue_pair (conformation::Residue const &rsd1, conformation::Residue const &rsd2, ResSingleMinimizationData const &minsingle_data1, ResSingleMinimizationData const &minsingle_data2, pose::Pose const &pose, ScoreFunction const &sfxn, ResPairMinimizationData &data_cache) const |
Do any setup work should the coordinates of a pair of residues, who are still guaranteed to be of the same residue type as when setup_for_minimizing_for_residue was called, have changed so dramatically as to possibly require some amount of setup work before scoring should proceed. More... | |
virtual bool | requires_a_setup_for_derivatives_for_residue_pair_opportunity (pose::Pose const &pose) const |
Does this EnergyMethod require the opportunity to examine each residue pair before derivative evaluation begins? Not all energy methods would. The ScoreFunction will not ask energy methods to examine residue pairs that are uninterested in doing so. More... | |
virtual void | setup_for_derivatives_for_residue_pair (conformation::Residue const &rsd1, conformation::Residue const &rsd2, ResSingleMinimizationData const &minsingle_data1, ResSingleMinimizationData const &minsingle_data2, pose::Pose const &pose, ScoreFunction const &sfxn, ResPairMinimizationData &data_cache) const |
Do any setup work necessary before evaluating the derivatives for this residue pair. More... | |
virtual bool | defines_intrares_energy_for_residue (conformation::Residue const &res) const |
If a score function defines no intra-residue scores for a particular residue, then it may opt-out of being asked during minimization to evaluate the score for this residue. More... | |
virtual bool | use_extended_intrares_energy_interface () const |
Derived classes wishing to invoke the alternate, extended interface for eval_intrares_energy during minimization routines should return "true" when this function is invoked on them. This class provides a default "return false" implementation so that classes not desiring to take advantage of this alternate interface need to do nothing. More... | |
virtual void | eval_intrares_energy_ext (conformation::Residue const &rsd, ResSingleMinimizationData const &data_cache, pose::Pose const &pose, ScoreFunction const &sfxn, EnergyMap &emap) const |
Evaluate the intra-residue energy for a given residue using the data held within the ResSingleMinimizationData object. This function should be invoked only on derived instances of this class if they return "true" in a call to their use_extended_intrares_energy_interface method. This base class provides a noop implementation for classes that do not implement this interface, or that do not define intrares energies. More... | |
virtual void | eval_intrares_derivatives (conformation::Residue const &rsd, ResSingleMinimizationData const &min_data, pose::Pose const &pose, EnergyMap const &weights, utility::vector1< DerivVectorPair > &atom_derivs) const |
Evaluate the derivative for the intra-residue component of this energy method for all the atoms in a residue in the context of a particular pose, and increment the F1 and F2 vectors held in the atom_derivs vector1. This base class provides a default noop implementation of this function. The calling function must guarantee that this EnergyMethod has had the opportunity to update the input ResSingleMinimizationData object for the given residue in a call to prepare_for_minimization before this function is invoked. The calling function must also guarantee that there are at least as many entries in the atom_derivs vector1 as there are atoms in the input rsd. More... | |
virtual bool | defines_intrares_dof_derivatives (pose::Pose const &p) const |
Use the dof_derivative interface for this energy method when calculating derivatives? It is possible to define both dof_derivatives and atom-derivatives; they are not mutually exclusive. More... | |
virtual Real | eval_intraresidue_dof_derivative (conformation::Residue const &rsd, ResSingleMinimizationData const &min_data, id::DOF_ID const &dof_id, id::TorsionID const &torsion_id, pose::Pose const &pose, ScoreFunction const &sfxn, EnergyMap const &weights) const |
Evaluate the DOF derivative for a particular residue. The Pose merely serves as context, and the input residue is not required to be a member of the Pose. More... | |
virtual void | bump_energy_full (conformation::Residue const &, conformation::Residue const &, pose::Pose const &, ScoreFunction const &, EnergyMap &) const |
virtual void | bump_energy_backbone (conformation::Residue const &, conformation::Residue const &, pose::Pose const &, ScoreFunction const &, EnergyMap &) const |
virtual void | evaluate_rotamer_intrares_energies (conformation::RotamerSetBase const &set, pose::Pose const &pose, ScoreFunction const &sfxn, utility::vector1< core::PackerEnergy > &energies) const |
Batch computation of rotamer intrares energies. Need not be overriden in derived class – by default, iterates over all rotamers, and calls derived class's intrares _energy method. More... | |
virtual void | evaluate_rotamer_intrares_energy_maps (conformation::RotamerSetBase const &set, pose::Pose const &pose, ScoreFunction const &sfxn, utility::vector1< EnergyMap > &emaps) const |
Batch computation of rotamer intrares energy map. Need not be overriden in derived class – by default, iterates over all rotamers, and calls derived class's intrares _energy method. More... | |
![]() | |
EnergyMethod (EnergyMethodCreatorOP creator) | |
Constructor with EnergyMethodCreator, which lists the score types that this energy method is responsible for. More... | |
EnergyMethod (EnergyMethod const &src) | |
Copy constructor copies over the score types of the source. More... | |
virtual | ~EnergyMethod () |
virtual void | finalize_after_derivatives (pose::Pose &, ScoreFunction const &) const |
called at the end of derivatives evaluation 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... | |
Public Attributes | |
__pad0__:ContextIndependentTwoBodyEnergy parent | |
Protected Member Functions | |
etable::coulomb::Coulomb const & | coulomb () const |
![]() | |
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... | |
Private Member Functions | |
void | setup_weight_triple (EnergyMap const &weights, weight_triple &wttrip) const |
Private methods. More... | |
trie::RotamerTrieBaseOP | create_rotamer_trie (conformation::RotamerSetBase const &rotset, pose::Pose const &pose) const |
create a rotamer trie for a particular set, deciding upon the kind of count pair data that needs to be contained by the trie. More... | |
trie::RotamerTrieBaseOP | create_rotamer_trie (conformation::Residue const &res, pose::Pose const &) const |
trie::TrieCountPairBaseOP | get_count_pair_function_trie (conformation::RotamerSetBase const &set1, conformation::RotamerSetBase const &set2, pose::Pose const &pose, ScoreFunction const &sfxn) const |
figure out the trie count pair function to use Need to refactor this so that the decision "what kind of count pair behavior should I use" can be decoupled from class instantiation, and therefore shared between the creation of the trie count pair classes and the regular count pair classes More... | |
trie::TrieCountPairBaseOP | get_count_pair_function_trie (conformation::Residue const &res1, conformation::Residue const &res2, trie::RotamerTrieBaseCOP trie1, trie::RotamerTrieBaseCOP trie2, pose::Pose const &pose, ScoreFunction const &sfxn) const |
Real | score_atom_pair (conformation::Residue const &res1, conformation::Residue const &res2, Size const at1, Size const at2, EnergyMap &emap, Real const cpweight, Real &d2) const |
void | set_nres_mono (core::pose::Pose const &pose) const |
bool | monomer_test (Size irsd, Size jrsd) const |
virtual core::Size | version () const |
Return the version of the energy method. More... | |
Private Attributes | |
etable::coulomb::Coulomb | coulomb_ |
bool | exclude_protein_protein_ |
bool | exclude_monomer_ |
bool | exclude_DNA_DNA_ |
Real | wbb_bb_ |
Real | wbb_sc_ |
Real | wsc_sc_ |
Size | nres_monomer_ |
Additional Inherited Members | |
![]() | |
typedef ShortRangeTwoBodyEnergy | parent |
![]() | |
typedef TwoBodyEnergy | parent |
![]() | |
typedef EnergyMethod | parent |
![]() | |
typedef utility::pointer::ReferenceCount | parent |
core::scoring::elec::FA_ElecEnergy::FA_ElecEnergy | ( | methods::EnergyMethodOptions const & | options | ) |
References coulomb_, and core::scoring::etable::coulomb::Coulomb::initialize().
Referenced by clone().
core::scoring::elec::FA_ElecEnergy::FA_ElecEnergy | ( | FA_ElecEnergy const & | src | ) |
References coulomb_, and core::scoring::etable::coulomb::Coulomb::initialize().
|
virtual |
FA_ElecEnergy distance cutoff.
Reports the maximum heavy atom/heavy atom distance at which two residues have a non-zero fa_elec interaction energy.
Implements core::scoring::methods::ShortRangeTwoBodyEnergy.
References hydrogen_interaction_cutoff().
Referenced by create_rotamer_trie().
|
virtual |
Evaluate the interaction between the backbone of rsd1 and the backbone of rsd2 and accumulate the unweighted energies. The sum bb_bb(r1,r2) + bb_sc(r1,r2) + bb_sc(r2,r1) + sc_sc( r1,r2) must equal the weighted result of a call to residue_pair_energy. By default, bb_bb & bb_sc return 0 and sc_sc returns residue pair energy.
Reimplemented from core::scoring::methods::TwoBodyEnergy.
Reimplemented in core::scoring::elec::RNA_FA_ElecEnergy.
References core::chemical::ResidueType::all_bb_atoms(), core::conformation::Residue::atomic_charge(), chemical, coulomb(), core::scoring::etable::count_pair::CP_CROSSOVER_4, defines_score_for_residue_pair(), core::scoring::etable::coulomb::Coulomb::eval_atom_atom_fa_elecE(), core::scoring::fa_elec, core::scoring::fa_elec_bb_bb, core::conformation::Residue::is_bonded(), core::conformation::Residue::is_pseudo_bonded(), score, core::conformation::Residue::type(), weight, and core::conformation::Residue::xyz().
|
virtual |
Evaluate the interaction between the backbone of rsd1 and the sidechain of rsd2 and accumulate the unweighted energies. The sum bb_bb(r1,r2) + bb_sc(r1,r2) + bb_sc(r2,r1) + sc_sc( r1,r2) must equal the unweighted result of a call to residue_pair_energy. By default, bb_bb & bb_sc return 0 and sc_sc returns residue pair energy.
Reimplemented from core::scoring::methods::TwoBodyEnergy.
References core::chemical::ResidueType::all_bb_atoms(), core::chemical::ResidueType::all_sc_atoms(), core::conformation::Residue::atomic_charge(), chemical, coulomb(), core::scoring::etable::count_pair::CP_CROSSOVER_4, defines_score_for_residue_pair(), core::scoring::etable::coulomb::Coulomb::eval_atom_atom_fa_elecE(), core::scoring::fa_elec, core::scoring::fa_elec_bb_sc, core::conformation::Residue::is_bonded(), core::conformation::Residue::is_pseudo_bonded(), score, core::conformation::Residue::type(), weight, and core::conformation::Residue::xyz().
|
virtual |
clone
Implements core::scoring::methods::EnergyMethod.
Reimplemented in core::scoring::elec::RNA_FA_ElecEnergy, core::scoring::elec::FA_ElecEnergyAroAll, and core::scoring::elec::FA_ElecEnergyAroAro.
References FA_ElecEnergy().
|
inlineprotected |
References coulomb_.
Referenced by backbone_backbone_energy(), backbone_sidechain_energy(), eval_atom_derivative(), core::scoring::elec::FA_ElecEnergyAroAll::eval_atom_derivative_aro_aro(), core::scoring::elec::FA_ElecEnergyAroAro::eval_atom_derivative_aro_aro(), core::scoring::elec::RNA_FA_ElecEnergy::eval_atom_derivative_RNA(), eval_residue_pair_derivatives(), finalize_total_energy(), heavyatom_heavyatom_energy(), heavyatom_hydrogenatom_energy(), hydrogen_interaction_cutoff(), hydrogenatom_heavyatom_energy(), hydrogenatom_hydrogenatom_energy(), core::scoring::elec::FA_ElecEnergyAroAll::residue_pair_energy_aro_aro(), core::scoring::elec::FA_ElecEnergyAroAro::residue_pair_energy_aro_aro(), core::scoring::elec::RNA_FA_ElecEnergy::rna_fa_elec_one_way(), score_atom_pair(), setup_for_minimizing(), setup_for_minimizing_for_residue_pair(), and sidechain_sidechain_energy().
|
private |
create a rotamer trie for a particular set, deciding upon the kind of count pair data that needs to be contained by the trie.
References core::io::serialization::at(), atomic_interaction_cutoff(), core::scoring::trie::create_cpdata_correspondence_for_rotamerset(), core::scoring::trie::create_trie(), hydrogen_interaction_cutoff(), and utility_exit.
Referenced by prepare_rotamers_for_packing(), setup_for_packing(), and update_residue_for_packing().
|
private |
Create a one-residue rotamer trie
References core::io::serialization::at(), atomic_interaction_cutoff(), core::scoring::trie::create_cpdata_correspondence_for_rotamer(), core::scoring::trie::create_trie(), hydrogen_interaction_cutoff(), and utility_exit.
|
inlinevirtual |
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.
Implements core::scoring::methods::TwoBodyEnergy.
Reimplemented in core::scoring::elec::RNA_FA_ElecEnergy, core::scoring::elec::FA_ElecEnergyAroAll, and core::scoring::elec::FA_ElecEnergyAroAro.
|
virtual |
During minimization, energy methods are allowed to decide that they say nothing about a particular residue pair (e.g. no non-zero energy) and as a result they will not be queried for a derivative or an energy. The default implementation returns "true" for all residue pairs. Context-dependent two-body energies have the option of behaving as if they are context-independent by returning "false" for residue pairs that do no move wrt each other.
Reimplemented from core::scoring::methods::TwoBodyEnergy.
References exclude_DNA_DNA_, exclude_monomer_, exclude_protein_protein_, core::conformation::Residue::is_DNA(), core::conformation::Residue::is_protein(), monomer_test(), and core::conformation::Residue::seqpos().
Referenced by backbone_backbone_energy(), backbone_sidechain_energy(), evaluate_rotamer_background_energies(), evaluate_rotamer_pair_energies(), get_count_pair_function(), get_count_pair_function_trie(), residue_pair_energy(), and sidechain_sidechain_energy().
|
inlinevirtual |
A derived class should return true for this function if it implements its own versions of the backbone_backbone_energy, backbone_sidechain_energy and sidechain_sidechain_energy functions. The default sidechain_sidechain_energy implemented by the TwoBodyEnergy base class calls residue_pair_energy. If the derived class implements its own versions of these functions, then calling code may avoid calling it on pairs of residues that are "provably distant" based on a pair of bounding spheres for a sidechains and backbones and this method's atomic_interaction_cutoff energy method.
Reimplemented from core::scoring::methods::ShortRangeTwoBodyEnergy.
This has to go.
References wbb_bb_, wbb_sc_, and wsc_sc_.
Referenced by eval_atom_derivative(), eval_residue_pair_derivatives(), heavyatom_heavyatom_energy(), heavyatom_hydrogenatom_energy(), hydrogenatom_heavyatom_energy(), and hydrogenatom_hydrogenatom_energy().
|
inline |
|
virtual |
Evaluate the derivative vectors for a particular atom in a given (asymmetric) pose when nblist_autoupdate is being used. nblist_autoupdate cannot be used with symmetric poses, in rtmin, or in minpack.
for use only with the nblist auto-update algorithm
Reimplemented in core::scoring::elec::RNA_FA_ElecEnergy, core::scoring::elec::FA_ElecEnergyAroAll, and core::scoring::elec::FA_ElecEnergyAroAro.
References core::id::AtomID::atomno(), core::scoring::AtomNeighbor::atomno(), coulomb(), numeric::xyzVector< class >::cross(), core::scoring::EnergiesCacheableDataType::ELEC_NBLIST, elec_weight(), core::pose::Pose::energies(), core::scoring::etable::coulomb::Coulomb::eval_dfa_elecE_dr_over_r(), core::scoring::Energies::nblist(), core::pose::Pose::residue(), core::id::AtomID::rsd(), core::scoring::AtomNeighbor::rsd(), setup_weight_triple(), core::scoring::Energies::use_nblist(), core::scoring::Energies::use_nblist_auto_update(), and core::scoring::AtomNeighbor::weight().
|
inlinevirtual |
Evaluate the intra-residue energy for a given residue.
Implements core::scoring::methods::TwoBodyEnergy.
Reimplemented in core::scoring::elec::RNA_FA_ElecEnergy, core::scoring::elec::FA_ElecEnergyAroAll, and core::scoring::elec::FA_ElecEnergyAroAro.
|
virtual |
Evaluate the atom derivative f1/f2 vectors for all atoms on rsd1 in response to the atoms on rsd2, and all the atoms on rsd2 as they in response to the atoms on rsd1. This method is used with the MinimizationGraph and when nblist_autoupdate is not in use.
Reimplemented from core::scoring::methods::TwoBodyEnergy.
References core::conformation::Residue::atom_is_backbone(), core::conformation::Residue::atomic_charge(), coulomb(), numeric::xyzVector< class >::cross(), core::scoring::elec_pair_nblist, elec_weight(), core::pose::Pose::energies(), core::scoring::etable::coulomb::Coulomb::eval_dfa_elecE_dr_over_r(), core::scoring::ResPairMinimizationData::get_data(), core::scoring::ResPairMinimizationData::get_data_ref(), numeric::xyzVector< class >::length_squared(), core::conformation::Residue::seqpos(), setup_weight_triple(), core::scoring::Energies::use_nblist_auto_update(), and core::conformation::Residue::xyz().
|
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::methods::ShortRangeTwoBodyEnergy.
Reimplemented in core::scoring::elec::RNA_FA_ElecEnergy, core::scoring::elec::FA_ElecEnergyAroAll, and core::scoring::elec::FA_ElecEnergyAroAro.
References cp, core::scoring::Energies::data(), defines_score_for_residue_pair(), core::scoring::methods::elec_method, core::scoring::EnergiesCacheableDataType::ELEC_TRIE_COLLECTION, core::pose::Pose::energies(), core::scoring::fa_elec, core::scoring::fa_elec_bb_bb, core::scoring::fa_elec_bb_sc, core::scoring::fa_elec_sc_sc, basic::datacache::BasicDataCache::get(), get_count_pair_function_trie(), core::conformation::RotamerSetBase::get_trie(), core::conformation::RotamerSetBase::num_rotamers(), core::conformation::RotamerSetBase::resid(), core::pose::Pose::residue(), core::conformation::Residue::seqpos(), wbb_bb_, wbb_sc_, core::scoring::ScoreFunction::weights(), and wsc_sc_.
|
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::methods::ShortRangeTwoBodyEnergy.
Reimplemented in core::scoring::elec::RNA_FA_ElecEnergy, core::scoring::elec::FA_ElecEnergyAroAll, and core::scoring::elec::FA_ElecEnergyAroAro.
References cp, defines_score_for_residue_pair(), core::scoring::methods::elec_method, core::scoring::fa_elec, core::scoring::fa_elec_bb_bb, core::scoring::fa_elec_bb_sc, core::scoring::fa_elec_sc_sc, get_count_pair_function_trie(), core::conformation::RotamerSetBase::get_trie(), core::conformation::RotamerSetBase::resid(), core::pose::Pose::residue(), wbb_bb_, wbb_sc_, core::scoring::ScoreFunction::weights(), and wsc_sc_.
|
virtual |
called by the ScoreFunction at the end of energy evaluation. The derived class has the opportunity to accumulate a score into the pose's total_energy EnergyMap. WholeStructure energies operate within this method; any method using a NeighborList during minimization would also operate within this function call.
called at the end of energy evaluation
Reimplemented from core::scoring::methods::EnergyMethod.
References core::conformation::Residue::atom_is_backbone(), core::conformation::Residue::atomic_charge(), core::scoring::AtomNeighbor::atomno(), core::scoring::NeighborList::check_domain_map(), coulomb(), core::scoring::Energies::domain_map(), core::scoring::EnergiesCacheableDataType::ELEC_NBLIST, core::pose::Pose::energies(), core::scoring::etable::coulomb::Coulomb::eval_atom_atom_fa_elecE(), core::scoring::fa_elec, core::scoring::fa_elec_bb_bb, core::scoring::fa_elec_bb_sc, core::scoring::fa_elec_sc_sc, core::conformation::Residue::natoms(), core::scoring::Energies::nblist(), core::pose::Pose::residue(), core::scoring::AtomNeighbor::rsd(), score, core::pose::Pose::total_residue(), core::scoring::total_score, core::scoring::Energies::use_nblist(), core::scoring::Energies::use_nblist_auto_update(), core::scoring::AtomNeighbor::weight(), and core::conformation::Residue::xyz().
etable::count_pair::CountPairFunctionCOP core::scoring::elec::FA_ElecEnergy::get_count_pair_function | ( | Size const | res1, |
Size const | res2, | ||
pose::Pose const & | pose, | ||
ScoreFunction const & | |||
) | const |
Interface function for class NeighborList.
References core::pose::Pose::residue().
Referenced by setup_for_minimizing_for_residue_pair().
etable::count_pair::CountPairFunctionCOP core::scoring::elec::FA_ElecEnergy::get_count_pair_function | ( | conformation::Residue const & | rsd1, |
conformation::Residue const & | rsd2 | ||
) | const |
|
private |
figure out the trie count pair function to use Need to refactor this so that the decision "what kind of count pair behavior should I use" can be decoupled from class instantiation, and therefore shared between the creation of the trie count pair classes and the regular count pair classes
References core::scoring::methods::elec_method, core::conformation::RotamerSetBase::get_trie(), core::conformation::RotamerSetBase::resid(), and core::pose::Pose::residue().
Referenced by evaluate_rotamer_background_energies(), and evaluate_rotamer_pair_energies().
|
private |
etable::count_pair::CountPairFunctionCOP core::scoring::elec::FA_ElecEnergy::get_intrares_countpair | ( | conformation::Residue const & | , |
pose::Pose const & | , | ||
ScoreFunction const & | |||
) | const |
Interface function for class NeighborList.
References utility_exit_with_message.
|
inline |
|
inline |
How close two heavy atoms have to be such that their hydrogen atoms might interact.
References coulomb(), and core::chemical::MAX_CHEMICAL_BOND_TO_HYDROGEN_LENGTH.
Referenced by atomic_interaction_cutoff(), create_rotamer_trie(), and hydrogen_interaction_cutoff2().
|
inline |
How close two heavy atoms have to be such that their hydrogen atoms might interact, squared.
References hydrogen_interaction_cutoff().
Referenced by residue_pair_energy().
|
virtual |
void core::scoring::elec::FA_ElecEnergy::initialize | ( | ) |
Initilize constants.
References coulomb_, and core::scoring::etable::coulomb::Coulomb::initialize().
|
virtual |
Returns true if we're using neighborlist-autoupdate.
Reimplemented from core::scoring::methods::EnergyMethod.
Reimplemented in core::scoring::elec::RNA_FA_ElecEnergy, core::scoring::elec::FA_ElecEnergyAroAll, and core::scoring::elec::FA_ElecEnergyAroAro.
References core::pose::Pose::energies(), and core::scoring::Energies::use_nblist_auto_update().
References nres_monomer_.
Referenced by defines_score_for_residue_pair().
|
virtual |
default implementation noop
Reimplemented from core::scoring::methods::EnergyMethod.
Reimplemented in core::scoring::elec::RNA_FA_ElecEnergy, core::scoring::elec::FA_ElecEnergyAroAll, and core::scoring::elec::FA_ElecEnergyAroAro.
References create_rotamer_trie(), core::scoring::methods::elec_method, and core::conformation::RotamerSetBase::store_trie().
|
virtual |
Evaluate the interaction between a given residue pair accumulating the unweighted energies in an EnergyMap.
Implements core::scoring::methods::TwoBodyEnergy.
Reimplemented in core::scoring::elec::RNA_FA_ElecEnergy, core::scoring::elec::FA_ElecEnergyAroAll, and core::scoring::elec::FA_ElecEnergyAroAro.
References core::conformation::Residue::attached_H_begin(), core::conformation::Residue::attached_H_end(), core::scoring::etable::count_pair::CP_CROSSOVER_4, defines_score_for_residue_pair(), numeric::xyzVector< class >::distance_squared(), core::pose::Pose::energies(), core::scoring::fa_elec, hydrogen_interaction_cutoff2(), core::conformation::Residue::is_bonded(), core::conformation::Residue::is_pseudo_bonded(), core::conformation::Residue::nheavyatoms(), score, score_atom_pair(), core::scoring::Energies::use_nblist(), weight, and core::conformation::Residue::xyz().
|
virtual |
Evaluate the two-body energies for a particular residue, in the context of a given Pose, and with the help of a piece of cached data for minimization, increment those two body energies into the input EnergyMap. The calling function must guarantee that this EnergyMethod has had the opportunity to update the input ResPairMinimizationData object for the given residues in a call to setup_for_minimizing_for_residue_pair before this function is invoked. This function should not be called unless the use_extended_residue_pair_energy_interface() method returns "true". Default implementation provided by this base class calls utility::exit().
Reimplemented from core::scoring::methods::TwoBodyEnergy.
References core::scoring::elec_pair_nblist, core::pose::Pose::energies(), core::scoring::fa_elec, core::scoring::ResPairMinimizationData::get_data(), core::scoring::ResPairMinimizationData::get_data_ref(), score, score_atom_pair(), core::conformation::Residue::seqpos(), core::scoring::Energies::use_nblist_auto_update(), and weight.
|
inlineprivate |
References core::conformation::Residue::atom_is_backbone(), core::conformation::Residue::atomic_charge(), coulomb(), core::scoring::etable::coulomb::Coulomb::eval_atom_atom_fa_elecE(), core::scoring::fa_elec_bb_bb, core::scoring::fa_elec_bb_sc, core::scoring::fa_elec_sc_sc, and core::conformation::Residue::xyz().
Referenced by residue_pair_energy(), and residue_pair_energy_ext().
|
private |
|
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::methods::EnergyMethod.
Reimplemented in core::scoring::elec::RNA_FA_ElecEnergy, core::scoring::elec::FA_ElecEnergyAroAll, and core::scoring::elec::FA_ElecEnergyAroAro.
References core::scoring::fa_elec, core::scoring::fa_elec_bb_bb, core::scoring::fa_elec_bb_sc, core::scoring::fa_elec_sc_sc, set_nres_mono(), core::pose::Pose::update_residue_neighbors(), wbb_bb_, wbb_sc_, core::scoring::ScoreFunction::weights(), and wsc_sc_.
|
virtual |
stashes nblist if use_nblist is true
Reimplemented from core::scoring::methods::EnergyMethod.
References coulomb(), core::kinematics::MinimizerMapBase::domain_map(), core::scoring::EnergiesCacheableDataType::ELEC_NBLIST, core::pose::Pose::energies(), core::scoring::etable::coulomb::Coulomb::max_dis(), run::nblist_autoupdate_narrow, option, core::scoring::NeighborList::set_auto_update(), set_nres_mono(), core::scoring::Energies::use_nblist(), core::scoring::Energies::use_nblist_auto_update(), and XX.
|
virtual |
Called at the beginning of minimization, allowing this energy method to cache data pertinent for a single residue in the the ResPairMinimizationData that is used for a particular residue in the context of a particular Pose. This base class provides a noop implementation for this function if there is nothing that the derived class needs to perform in this setup phase.
Reimplemented from core::scoring::methods::TwoBodyEnergy.
References coulomb(), core::scoring::elec_pair_nblist, core::pose::Pose::energies(), get_count_pair_function(), core::scoring::ResPairMinimizationData::get_data(), core::conformation::Residue::seqpos(), core::scoring::ResPairMinimizationData::set_data(), and core::scoring::Energies::use_nblist_auto_update().
|
virtual |
default implementation noop
Reimplemented from core::scoring::methods::EnergyMethod.
Reimplemented in core::scoring::elec::RNA_FA_ElecEnergy, core::scoring::elec::FA_ElecEnergyAroAll, and core::scoring::elec::FA_ElecEnergyAroAro.
References core::conformation::Residue::aa(), core::chemical::aa_vrt, create_rotamer_trie(), core::scoring::Energies::data(), core::scoring::EnergiesCacheableDataType::ELEC_TRIE_COLLECTION, core::pose::Pose::energies(), core::pose::Pose::residue(), basic::datacache::BasicDataCache::set(), set_nres_mono(), and core::pose::Pose::total_residue().
|
virtual |
Reimplemented from core::scoring::methods::EnergyMethod.
Reimplemented in core::scoring::elec::RNA_FA_ElecEnergy, core::scoring::elec::FA_ElecEnergyAroAll, and core::scoring::elec::FA_ElecEnergyAroAro.
References core::scoring::EnergiesCacheableDataType::ELEC_NBLIST, core::pose::Pose::energies(), core::scoring::Energies::nblist(), core::scoring::NeighborList::prepare_for_scoring(), set_nres_mono(), core::pose::Pose::update_residue_neighbors(), and core::scoring::Energies::use_nblist().
|
private |
Private methods.
References core::scoring::fa_elec, core::scoring::fa_elec_bb_bb, core::scoring::fa_elec_bb_sc, core::scoring::fa_elec_sc_sc, core::scoring::elec::weight_triple::wbb_bb_, core::scoring::elec::weight_triple::wbb_sc_, and core::scoring::elec::weight_triple::wsc_sc_.
Referenced by eval_atom_derivative(), and eval_residue_pair_derivatives().
|
virtual |
Evaluate the interaction between the sidechain of rsd1 and the sidechain of rsd2 and accumulate the unweighted energies. The sum bb_bb(r1,r2) + bb_sc(r1,r2) + bb_sc(r2,r1) + sc_sc( r1,r2) must equal the unweighted result of a call to residue_pair_energy. By default, bb_bb & bb_sc return 0 and sc_sc returns residue pair energy.
Reimplemented from core::scoring::methods::TwoBodyEnergy.
References core::chemical::ResidueType::all_sc_atoms(), core::conformation::Residue::atomic_charge(), chemical, coulomb(), core::scoring::etable::count_pair::CP_CROSSOVER_4, defines_score_for_residue_pair(), core::scoring::etable::coulomb::Coulomb::eval_atom_atom_fa_elecE(), core::scoring::fa_elec, core::scoring::fa_elec_sc_sc, core::conformation::Residue::is_bonded(), core::conformation::Residue::is_pseudo_bonded(), score, core::conformation::Residue::type(), weight, and core::conformation::Residue::xyz().
|
virtual |
ensure this function gets called. The default behavior is to do nothing.
default implementation noop
Reimplemented from core::scoring::methods::EnergyMethod.
Reimplemented in core::scoring::elec::RNA_FA_ElecEnergy, core::scoring::elec::FA_ElecEnergyAroAll, and core::scoring::elec::FA_ElecEnergyAroAro.
References create_rotamer_trie(), core::scoring::Energies::data(), core::scoring::EnergiesCacheableDataType::ELEC_TRIE_COLLECTION, core::pose::Pose::energies(), basic::datacache::BasicDataCache::get(), and core::pose::Pose::residue().
|
virtual |
Rely on the extended version of the residue_pair_energy function during score-function evaluation in minimization? The extended version (below) takes a ResPairMinimizationData in which the derived base class has (or should have) cached a piece of data that will make residue-pair energy evaluation faster than its absense (e.g. a neighbor list). Derived energy methods should return 'true' from this function to use the extended interface. The default method implemented in this class returns 'false'.
Reimplemented from core::scoring::methods::TwoBodyEnergy.
Reimplemented in core::scoring::elec::RNA_FA_ElecEnergy.
|
privatevirtual |
Return the version of the energy method.
Implements core::scoring::methods::EnergyMethod.
Reimplemented in core::scoring::elec::RNA_FA_ElecEnergy, core::scoring::elec::FA_ElecEnergyAroAll, and core::scoring::elec::FA_ElecEnergyAroAro.
core::scoring::elec::FA_ElecEnergy::__pad0__ |
|
private |
Referenced by coulomb(), FA_ElecEnergy(), and initialize().
|
private |
Referenced by defines_score_for_residue_pair().
|
private |
Referenced by defines_score_for_residue_pair().
|
private |
Referenced by defines_score_for_residue_pair().
|
mutableprivate |
Referenced by monomer_test(), and set_nres_mono().
|
mutableprivate |
|
mutableprivate |
|
mutableprivate |