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

#include <CartesianBondedEnergy.hh>

Inheritance diagram for core::scoring::methods::CartesianBondedEnergy:
Inheritance graph
[legend]

Public Types

typedef
ContextIndependentLRTwoBodyEnergy 
parent
 
- Public Types inherited from core::scoring::methods::ContextIndependentLRTwoBodyEnergy
typedef LongRangeTwoBodyEnergy parent
 
- Public Types inherited from core::scoring::methods::LongRangeTwoBodyEnergy
typedef TwoBodyEnergy parent
 
- Public Types inherited from core::scoring::methods::TwoBodyEnergy
typedef EnergyMethod parent
 
- Public Types inherited from core::scoring::methods::EnergyMethod
typedef utility::VirtualBase parent
 

Public Member Functions

 CartesianBondedEnergy ()=delete
 
 CartesianBondedEnergy (methods::EnergyMethodOptions const &options)
 EnergyMethod. More...
 
 CartesianBondedEnergy (CartesianBondedEnergy const &src)
 
 ~CartesianBondedEnergy () override
 
EnergyMethodOP clone () const override
 clone More...
 
void setup_for_scoring (pose::Pose &pose, ScoreFunction const &) const override
 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...
 
void setup_for_derivatives (pose::Pose &pose, ScoreFunction const &sfxn) const override
 Called immediately before atom- and DOF-derivatives are calculated allowing the derived class a chance to prepare for future calls. More...
 
void idealize_proline_nvs (pose::Pose &pose) const
 Idealize the virtual NV atom of every proline in the pose. This prevents innacurate pro-close scores when switching between cartesian and non-cartesian score functions. More...
 
bool defines_residue_pair_energy (pose::Pose const &pose, Size res1, Size res2) const override
 
void residue_pair_energy (conformation::Residue const &rsd1, conformation::Residue const &rsd2, pose::Pose const &pose, ScoreFunction const &, EnergyMap &emap) const override
 Evaluate the interaction between a given residue pair accumulating the unweighted energies in an EnergyMap. More...
 
void eval_intrares_energy (conformation::Residue const &, pose::Pose const &, ScoreFunction const &, EnergyMap &) const override
 Evaluate the intra-residue energy for a given residue. More...
 
void eval_intrares_derivatives (conformation::Residue const &rsd, ResSingleMinimizationData const &res_data_cache, pose::Pose const &pose, EnergyMap const &weights, utility::vector1< DerivVectorPair > &atom_derivs) const override
 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...
 
void eval_residue_pair_derivatives (conformation::Residue const &rsd1, conformation::Residue const &rsd2, ResSingleMinimizationData const &, ResSingleMinimizationData const &, ResPairMinimizationData const &min_data, pose::Pose const &, EnergyMap const &weights, utility::vector1< DerivVectorPair > &r1_atom_derivs, utility::vector1< DerivVectorPair > &r2_atom_derivs) const override
 Evaluate the derivative for an atom in rsd1 with respect to rsd2 in the context of a particular pose, and increment the F1 and F2 vectors. 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 ResPairMinimizationData object for the given residue in a call to prepare_for_minimization before this function is invoked. DEPRECATED. Too slow. Too much overhead for each atom; slowed fast-relax runs by ~40%. More...
 
void eval_residue_pair_derivatives_sorted (conformation::Residue const &rsd1, conformation::Residue const &rsd2, ResSingleMinimizationData const &, ResSingleMinimizationData const &, ResPairMinimizationData const &min_data, pose::Pose const &, EnergyMap const &weights, utility::vector1< DerivVectorPair > &r1_atom_derivs, utility::vector1< DerivVectorPair > &r2_atom_derivs) const
 
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 override
 
bool defines_intrares_energy (EnergyMap const &) const override
 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...
 
bool defines_intrares_dof_derivatives (pose::Pose const &) const override
 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...
 
bool minimize_in_whole_structure_context (pose::Pose const &) const override
 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 Distance atomic_interaction_cutoff () const
 CartesianBondedEnergy does not have an atomic interation threshold. More...
 
void indicate_required_context_graphs (utility::vector1< bool > &) const override
 CartesianBondedEnergy is context independent; indicates that no context graphs are required. More...
 
methods::LongRangeEnergyType long_range_type () const override
 
- Public Member Functions inherited from core::scoring::methods::ContextIndependentLRTwoBodyEnergy
 ContextIndependentLRTwoBodyEnergy (EnergyMethodCreatorOP)
 
 ~ContextIndependentLRTwoBodyEnergy () 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...
 
- Public Member Functions inherited from core::scoring::methods::LongRangeTwoBodyEnergy
 LongRangeTwoBodyEnergy (EnergyMethodCreatorOP creator)
 Constructor with an EnergyMethodCreator to inform the grandparent EnergyMethod class which ScoreTypes this EnergyMethod computes. More...
 
 ~LongRangeTwoBodyEnergy () override
 
- Public Member Functions inherited from core::scoring::methods::TwoBodyEnergy
 TwoBodyEnergy (EnergyMethodCreatorOP)
 Constructor, requiring an EnergyMethodCreator. No default constructor provided to force EnergyMethod writers to provide an energy-method-creator at construction time. More...
 
 ~TwoBodyEnergy () override
 
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...
 
virtual void setup_for_minimizing_for_residue (conformation::Residue const &rsd, pose::Pose const &pose, ScoreFunction const &sfxn, kinematics::MinimizerMapBase const &minmap, basic::datacache::BasicDataCache &residue_data_cache, 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 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 bool requires_a_setup_for_scoring_for_residue_opportunity_during_minimization (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, basic::datacache::BasicDataCache &res_data_cache) 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 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...
 
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 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...
 
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 the derived class's residue_pair_energy method. 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 rotamr. More...
 
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 rotamr. 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 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_minimizing (pose::Pose &, ScoreFunction const &, kinematics::MinimizerMapBase const &) const
 Called at the beginning of atom tree minimization, this method allows the derived class the opportunity to initialize pertinent data that will be used during minimization. During minimzation, the chemical structure of the pose is constant, so assumptions on the number of atoms per residue and their identities are safe so long as the pose's Energies object's "use_nblist()" method returns true. More...
 
virtual void finalize_after_minimizing (pose::Pose &pose) const
 Called after minimization, allowing a derived class to do some teardown steps. More...
 
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...
 
virtual void finalize_total_energy (pose::Pose &pose, ScoreFunction const &sfxn, EnergyMap &total_energy) 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...
 
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...
 
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...
 

Private Member Functions

void residue_pair_energy_sorted (conformation::Residue const &rsd1, conformation::Residue const &rsd2, pose::Pose const &pose, ScoreFunction const &sf, EnergyMap &emap) const
 Score evaluation methods. More...
 
void eval_singleres_energy (conformation::Residue const &rsd, ResidueCartBondedParameters const &rsdparams, Real phi, Real psi, pose::Pose const &pose, EnergyMap &emap) const
 Methods for intra-residue energies. More...
 
void eval_singleres_torsion_energies (conformation::Residue const &rsd, ResidueCartBondedParameters const &resparams, pose::Pose const &pose, EnergyMap &emap) const
 helper function to handle intrares torsions More...
 
void eval_singleres_ring_energies (conformation::Residue const &rsd, pose::Pose const &pose, EnergyMap &emap) const
 helper function to handle intrares ring torsions & angles More...
 
void eval_singleres_improper_energies (conformation::Residue const &rsd, ResidueCartBondedParameters const &resparams, Real const phi, Real const psi, pose::Pose const &pose, EnergyMap &emap) const
 helper function to handle intrares bond improper torsions More...
 
void eval_singleres_angle_energies (conformation::Residue const &rsd, ResidueCartBondedParameters const &resparams, Real const phi, Real const psi, pose::Pose const &pose, EnergyMap &emap) const
 helper function to handle intrares bond angles More...
 
void eval_singleres_length_energies (conformation::Residue const &rsd, ResidueCartBondedParameters const &resparams, Real const phi, Real const psi, pose::Pose const &pose, EnergyMap &emap) const
 helper function to handle intrares bond lengths More...
 
void eval_residue_pair_energies (conformation::Residue const &rsd1, conformation::Residue const &rsd2, ResidueCartBondedParameters const &rsd1params, ResidueCartBondedParameters const &rsd2params, Real phi1, Real psi1, Real phi2, Real psi2, pose::Pose const &pose, EnergyMap &emap) const
 Methods for inter-residue energies. More...
 
void eval_interresidue_angle_energies_two_from_rsd1 (conformation::Residue const &rsd1, conformation::Residue const &rsd2, ResidueCartBondedParameters const &rsd1params, ResidueCartBondedParameters const &rsd2params, Real phi1, Real psi1, pose::Pose const &pose, EnergyMap &emap) const
 Evaluate all inter. More...
 
void eval_interresidue_angle_energies_two_from_rsd2 (conformation::Residue const &rsd1, conformation::Residue const &rsd2, ResidueCartBondedParameters const &rsd1params, ResidueCartBondedParameters const &rsd2params, Real phi2, Real psi2, pose::Pose const &pose, EnergyMap &emap) const
 
void eval_interresidue_bond_energy (conformation::Residue const &rsd1, conformation::Residue const &rsd2, ResidueCartBondedParameters const &rsd1params, ResidueCartBondedParameters const &rsd2params, Real phi2, Real psi2, pose::Pose const &pose, EnergyMap &emap) const
 
void eval_interresidue_improper_energy (conformation::Residue const &rsd1, conformation::Residue const &rsd2, ResidueCartBondedParameters const &rsd1params, ResidueCartBondedParameters const &rsd2params, pose::Pose const &pose, EnergyMap &emap) const
 
void eval_interresidue_ring_energy (conformation::Residue const &rsd1, conformation::Residue const &rsd2, pose::Pose const &pose, EnergyMap &emap) const
 
void eval_singleres_derivatives (conformation::Residue const &rsd, ResidueCartBondedParameters const &resparams, Real phi, Real psi, EnergyMap const &weights, utility::vector1< DerivVectorPair > &r_atom_derivs) const
 Derivative evaluation methods. More...
 
void eval_singleres_ring_derivatives (conformation::Residue const &rsd, EnergyMap const &weights, utility::vector1< DerivVectorPair > &r_atom_derivs) const
 evaluate intra-residue ring derivatives More...
 
void eval_singleres_improper_derivatives (conformation::Residue const &rsd, ResidueCartBondedParameters const &resparams, Real const phi, Real const psi, EnergyMap const &weights, utility::vector1< DerivVectorPair > &r_atom_derivs) const
 evaluate intra-residue improper torsion derivatives More...
 
void eval_singleres_angle_derivatives (conformation::Residue const &rsd, ResidueCartBondedParameters const &resparams, Real const phi, Real const psi, EnergyMap const &weights, utility::vector1< DerivVectorPair > &r_atom_derivs) const
 evaluate intra-residue angle derivatives More...
 
void eval_singleres_length_derivatives (conformation::Residue const &rsd, ResidueCartBondedParameters const &resparams, Real const phi, Real const psi, EnergyMap const &weights, utility::vector1< DerivVectorPair > &r_atom_derivs) const
 evaluate intra-residue bond-length derivatives More...
 
void eval_singleres_torsion_derivatives (conformation::Residue const &rsd, ResidueCartBondedParameters const &resparams, EnergyMap const &weights, utility::vector1< DerivVectorPair > &r_atom_derivs) const
 evaluate intra-residue torsion derivatives More...
 
void eval_interresidue_angle_derivs_two_from_rsd1 (conformation::Residue const &rsd1, conformation::Residue const &rsd2, ResidueCartBondedParameters const &rsd1params, ResidueCartBondedParameters const &rsd2params, Real phi1, Real psi1, EnergyMap const &weights, utility::vector1< DerivVectorPair > &r1_atom_derivs, utility::vector1< DerivVectorPair > &r2_atom_derivs) const
 evaluate inter-residue angle derivatives where two of the atoms defining the angle are from rsd1 More...
 
void eval_interresidue_angle_derivs_two_from_rsd2 (conformation::Residue const &rsd1, conformation::Residue const &rsd2, ResidueCartBondedParameters const &rsd1params, ResidueCartBondedParameters const &rsd2params, Real phi2, Real psi2, EnergyMap const &weights, utility::vector1< DerivVectorPair > &r1_atom_derivs, utility::vector1< DerivVectorPair > &r2_atom_derivs) const
 evaluate inter-residue angle derivatives where two of the atoms defining the angle are from rsd2 More...
 
void eval_interresidue_bond_length_derivs (conformation::Residue const &rsd1, conformation::Residue const &rsd2, ResidueCartBondedParameters const &rsd1params, ResidueCartBondedParameters const &rsd2params, Real phi2, Real psi2, EnergyMap const &weights, utility::vector1< DerivVectorPair > &r1_atom_derivs, utility::vector1< DerivVectorPair > &r2_atom_derivs) const
 evaluate inter-residue bond-length derivatives More...
 
void eval_interresidue_improper_derivatives (conformation::Residue const &rsd1, conformation::Residue const &rsd2, ResidueCartBondedParameters const &res1params, ResidueCartBondedParameters const &res2params, EnergyMap const &weights, utility::vector1< DerivVectorPair > &r1_atom_derivs, utility::vector1< DerivVectorPair > &r2_atom_derivs) const
 evaluate inter-residue improper torsion derivatives More...
 
void eval_interresidue_ring_derivatives (conformation::Residue const &rsd1, conformation::Residue const &rsd2, EnergyMap const &weights, utility::vector1< DerivVectorPair > &r1_atom_derivs, utility::vector1< DerivVectorPair > &r2_atom_derivs) const
 
Real eval_score (Real val, Real K, Real val0) const
 Common to evaluating the score for torsions, angles, and lengths. More...
 
core::Size version () const override
 Return the version of the energy method. More...
 

Static Private Member Functions

static IdealParametersDatabaseOP get_db (Real k_len, Real k_ang, Real k_tors, Real k_tors_prot, Real k_tors_improper)
 Evaluate the derivative for a. More...
 

Private Attributes

IdealParametersDatabaseOP db_
 
bool linear_bonded_potential_
 
std::string pro_nv_
 
bool skip_cutpoints_
 

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

the energy method

Member Typedef Documentation

Constructor & Destructor Documentation

core::scoring::methods::CartesianBondedEnergy::CartesianBondedEnergy ( )
delete
core::scoring::methods::CartesianBondedEnergy::CartesianBondedEnergy ( methods::EnergyMethodOptions const &  options)
core::scoring::methods::CartesianBondedEnergy::CartesianBondedEnergy ( CartesianBondedEnergy const &  src)
default
core::scoring::methods::CartesianBondedEnergy::~CartesianBondedEnergy ( )
overridedefault

Member Function Documentation

Distance core::scoring::methods::CartesianBondedEnergy::atomic_interaction_cutoff ( ) const
virtual

CartesianBondedEnergy does not have an atomic interation threshold.

EnergyMethodOP core::scoring::methods::CartesianBondedEnergy::clone ( ) const
overridevirtual
bool core::scoring::methods::CartesianBondedEnergy::defines_intrares_dof_derivatives ( pose::Pose const &  p) const
inlineoverridevirtual

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.

Reimplemented from core::scoring::methods::TwoBodyEnergy.

bool core::scoring::methods::CartesianBondedEnergy::defines_intrares_energy ( EnergyMap const &  weights) const
inlineoverridevirtual

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.

bool core::scoring::methods::CartesianBondedEnergy::defines_residue_pair_energy ( pose::Pose const &  pose,
Size  res1,
Size  res2 
) const
overridevirtual
void core::scoring::methods::CartesianBondedEnergy::eval_interresidue_angle_derivs_two_from_rsd1 ( conformation::Residue const &  rsd1,
conformation::Residue const &  rsd2,
ResidueCartBondedParameters const &  rsd1params,
ResidueCartBondedParameters const &  rsd2params,
Real  phi1,
Real  psi1,
EnergyMap const &  weights,
utility::vector1< DerivVectorPair > &  r1_atom_derivs,
utility::vector1< DerivVectorPair > &  r2_atom_derivs 
) const
private

evaluate inter-residue angle derivatives where two of the atoms defining the angle are from rsd1

References core::conformation::Residue::aa(), core::chemical::aa_dpr, core::chemical::aa_pro, core::conformation::Residue::atom_name(), core::chemical::ResidueConnection::atomno(), core::chemical::ResidueType::atoms_within_one_bond_of_a_residue_connection(), core::scoring::methods::ResidueCartBondedParameters::bb_N_index(), core::scoring::cart_bonded, core::scoring::cart_bonded_angle, core::conformation::Residue::connections_to_residue(), db_, core::conformation::Residue::has_lower_connect(), core::conformation::Residue::has_upper_connect(), core::chemical::ResidueConnection::index(), core::chemical::is_canonical_D_aa(), core::conformation::Residue::is_lower_terminus(), core::conformation::Residue::is_upper_terminus(), core::scoring::methods::CartBondedParameters::K(), linear_bonded_potential_, core::conformation::Residue::lower_connect(), core::scoring::methods::CartBondedParameters::mu(), core::chemical::num_canonical_aas, core::conformation::Residue::residue_connection(), core::conformation::Residue::residue_connection_conn_id(), core::conformation::Residue::residue_connection_partner(), core::conformation::Residue::seqpos(), core::conformation::Residue::type(), core::conformation::Residue::upper_connect(), core::scoring::methods::ResidueCartBondedParameters::upper_connect_angle_params(), and core::conformation::Residue::xyz().

Referenced by eval_residue_pair_derivatives_sorted().

void core::scoring::methods::CartesianBondedEnergy::eval_interresidue_angle_derivs_two_from_rsd2 ( conformation::Residue const &  rsd1,
conformation::Residue const &  rsd2,
ResidueCartBondedParameters const &  rsd1params,
ResidueCartBondedParameters const &  rsd2params,
Real  phi2,
Real  psi2,
EnergyMap const &  weights,
utility::vector1< DerivVectorPair > &  r1_atom_derivs,
utility::vector1< DerivVectorPair > &  r2_atom_derivs 
) const
private
void core::scoring::methods::CartesianBondedEnergy::eval_interresidue_angle_energies_two_from_rsd1 ( conformation::Residue const &  rsd1,
conformation::Residue const &  rsd2,
ResidueCartBondedParameters const &  rsd1params,
ResidueCartBondedParameters const &  rsd2params,
Real  phi1,
Real  psi1,
pose::Pose const &  pose,
EnergyMap emap 
) const
private
void core::scoring::methods::CartesianBondedEnergy::eval_interresidue_angle_energies_two_from_rsd2 ( conformation::Residue const &  rsd1,
conformation::Residue const &  rsd2,
ResidueCartBondedParameters const &  rsd1params,
ResidueCartBondedParameters const &  rsd2params,
Real  phi2,
Real  psi2,
pose::Pose const &  pose,
EnergyMap emap 
) const
private
void core::scoring::methods::CartesianBondedEnergy::eval_interresidue_bond_energy ( conformation::Residue const &  rsd1,
conformation::Residue const &  rsd2,
ResidueCartBondedParameters const &  rsd1params,
ResidueCartBondedParameters const &  rsd2params,
Real  phi2,
Real  psi2,
pose::Pose const &  pose,
EnergyMap emap 
) const
private
void core::scoring::methods::CartesianBondedEnergy::eval_interresidue_bond_length_derivs ( conformation::Residue const &  rsd1,
conformation::Residue const &  rsd2,
ResidueCartBondedParameters const &  rsd1params,
ResidueCartBondedParameters const &  rsd2params,
Real  phi2,
Real  psi2,
EnergyMap const &  weights,
utility::vector1< DerivVectorPair > &  r1_atom_derivs,
utility::vector1< DerivVectorPair > &  r2_atom_derivs 
) const
private
void core::scoring::methods::CartesianBondedEnergy::eval_interresidue_improper_derivatives ( conformation::Residue const &  rsd1,
conformation::Residue const &  rsd2,
ResidueCartBondedParameters const &  res1params,
ResidueCartBondedParameters const &  res2params,
EnergyMap const &  weights,
utility::vector1< DerivVectorPair > &  r1_atom_derivs,
utility::vector1< DerivVectorPair > &  r2_atom_derivs 
) const
private

evaluate inter-residue improper torsion derivatives

References core::conformation::Residue::aa(), core::chemical::aa_dpr, core::chemical::aa_pro, core::scoring::methods::ResidueCartBondedParameters::bb_C_index(), core::scoring::methods::ResidueCartBondedParameters::bb_CA_index(), core::scoring::methods::ResidueCartBondedParameters::bb_H_index(), core::scoring::methods::ResidueCartBondedParameters::bb_N_index(), core::scoring::methods::ResidueCartBondedParameters::bb_O_index(), core::scoring::methods::ResidueCartBondedParameters::ca_cprev_n_h_interres_improper_params(), core::scoring::methods::ResidueCartBondedParameters::ca_nnext_c_o_interres_improper_params(), core::scoring::cart_bonded, core::scoring::cart_bonded_improper, core::scoring::cart_bonded_torsion, core::conformation::Residue::has_lower_connect(), core::conformation::Residue::has_upper_connect(), core::chemical::ResidueConnection::index(), core::chemical::is_canonical_D_aa(), core::conformation::Residue::is_lower_terminus(), core::conformation::Residue::is_polymer_bonded(), core::conformation::Residue::is_protein(), core::conformation::Residue::is_upper_terminus(), linear_bonded_potential_, core::conformation::Residue::lower_connect(), core::scoring::methods::ResidueCartBondedParameters::oprev_cprev_n_h_interres_improper_params(), core::scoring::methods::ResidueCartBondedParameters::pro_cd_cprev_n_ca_interres_improper_params(), core::scoring::methods::ResidueCartBondedParameters::pro_CD_index(), core::conformation::Residue::residue_connection_partner(), core::conformation::Residue::seqpos(), core::conformation::Residue::upper_connect(), and core::conformation::Residue::xyz().

Referenced by eval_residue_pair_derivatives_sorted().

void core::scoring::methods::CartesianBondedEnergy::eval_interresidue_improper_energy ( conformation::Residue const &  rsd1,
conformation::Residue const &  rsd2,
ResidueCartBondedParameters const &  rsd1params,
ResidueCartBondedParameters const &  rsd2params,
pose::Pose const &  pose,
EnergyMap emap 
) const
private

References core::conformation::Residue::aa(), core::chemical::aa_dpr, core::chemical::aa_pro, core::conformation::Residue::atom_name(), core::scoring::methods::ResidueCartBondedParameters::bb_C_index(), core::scoring::methods::ResidueCartBondedParameters::bb_CA_index(), core::scoring::methods::ResidueCartBondedParameters::bb_H_index(), core::scoring::methods::ResidueCartBondedParameters::bb_N_index(), core::scoring::methods::ResidueCartBondedParameters::bb_O_index(), core::scoring::methods::ResidueCartBondedParameters::ca_cprev_n_h_interres_improper_params(), core::scoring::methods::ResidueCartBondedParameters::ca_nnext_c_o_interres_improper_params(), core::scoring::cart_bonded, core::scoring::cart_bonded_improper, core::scoring::cart_bonded_torsion, CUTOFF, eval_score(), core::scoring::methods::get_restag(), core::conformation::Residue::has_lower_connect(), core::conformation::Residue::has_upper_connect(), core::chemical::ResidueConnection::index(), core::chemical::is_canonical_D_aa(), core::conformation::Residue::is_lower_terminus(), core::conformation::Residue::is_polymer_bonded(), core::conformation::Residue::is_protein(), core::conformation::Residue::is_upper_terminus(), core::conformation::Residue::lower_connect(), core::scoring::methods::ResidueCartBondedParameters::oprev_cprev_n_h_interres_improper_params(), core::pose::Pose::pdb_info(), core::scoring::methods::ResidueCartBondedParameters::pro_cd_cprev_n_ca_interres_improper_params(), core::scoring::methods::ResidueCartBondedParameters::pro_CD_index(), core::conformation::Residue::residue_connection_partner(), core::conformation::Residue::seqpos(), core::scoring::methods::TR(), core::conformation::Residue::type(), core::conformation::Residue::upper_connect(), and core::conformation::Residue::xyz().

Referenced by eval_residue_pair_energies().

void core::scoring::methods::CartesianBondedEnergy::eval_interresidue_ring_derivatives ( conformation::Residue const &  rsd1,
conformation::Residue const &  rsd2,
EnergyMap const &  weights,
utility::vector1< DerivVectorPair > &  r1_atom_derivs,
utility::vector1< DerivVectorPair > &  r2_atom_derivs 
) const
private
void core::scoring::methods::CartesianBondedEnergy::eval_interresidue_ring_energy ( conformation::Residue const &  rsd1,
conformation::Residue const &  rsd2,
pose::Pose const &  pose,
EnergyMap emap 
) const
private
void core::scoring::methods::CartesianBondedEnergy::eval_intrares_derivatives ( conformation::Residue const &  rsd,
ResSingleMinimizationData const &  min_data,
pose::Pose const &  pose,
EnergyMap const &  weights,
utility::vector1< DerivVectorPair > &  atom_derivs 
) const
overridevirtual

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.

Reimplemented from core::scoring::methods::TwoBodyEnergy.

References core::conformation::Residue::aa(), core::chemical::aa_vrt, db_, eval_singleres_derivatives(), core::conformation::Residue::has_lower_connect(), core::conformation::Residue::has_upper_connect(), core::chemical::ResidueConnection::index(), core::chemical::is_canonical_D_aa(), core::chemical::ResidueTypeBase::is_polymer(), core::conformation::Residue::is_protein(), core::conformation::Residue::lower_connect(), core::conformation::Residue::mainchain_torsion(), core::pose::Pose::residue(), core::conformation::Residue::residue_connection_partner(), core::conformation::Residue::seqpos(), core::conformation::Residue::type(), and core::conformation::Residue::upper_connect().

void core::scoring::methods::CartesianBondedEnergy::eval_intrares_energy ( conformation::Residue const &  rsd,
pose::Pose const &  pose,
ScoreFunction const &  sfxn,
EnergyMap emap 
) const
overridevirtual
Real core::scoring::methods::CartesianBondedEnergy::eval_intraresidue_dof_derivative ( conformation::Residue const &  rsd,
ResSingleMinimizationData const &  min_data,
id::DOF_ID const &  dof_id,
id::TorsionID const &  tor_id,
pose::Pose const &  pose,
ScoreFunction const &  sfxn,
EnergyMap const &  weights 
) const
overridevirtual

Evaluate dE/dphi and dE/dpsi for the backbone-dependent terms, if they are active.

Reimplemented from core::scoring::methods::TwoBodyEnergy.

References core::conformation::Residue::aa(), core::chemical::aa_dpr, core::chemical::aa_pro, core::chemical::ResidueConnection::atomno(), core::id::BB, core::scoring::methods::ResidueCartBondedParameters::bbdep_angle_parameters(), core::scoring::methods::ResidueCartBondedParameters::bbdep_length_parameters(), core::scoring::cart_bonded, core::scoring::cart_bonded_angle, core::scoring::cart_bonded_length, core::conformation::Residue::connected_residue_at_resconn(), db_, core::scoring::methods::CartBondedParameters::dK_dphi(), core::scoring::methods::CartBondedParameters::dK_dpsi(), core::scoring::methods::CartBondedParameters::dmu_dphi(), core::scoring::methods::CartBondedParameters::dmu_dpsi(), core::conformation::Residue::has_upper_connect(), core::conformation::Residue::is_protein(), core::scoring::methods::CartBondedParameters::K(), core::chemical::element::K, linear_bonded_potential_, core::chemical::ResidueType::lower_connect(), core::conformation::Residue::mainchain_torsion(), core::scoring::methods::CartBondedParameters::mu(), core::pose::Pose::residue(), core::pose::Pose::residue_type(), core::conformation::Residue::seqpos(), core::id::TorsionID::torsion(), core::id::TorsionID::type(), core::conformation::Residue::type(), core::chemical::ResidueType::upper_connect(), core::chemical::ResidueType::upper_connect_id(), core::id::TorsionID::valid(), core::conformation::Residue::xyz(), and core::pose::Pose::xyz().

void core::scoring::methods::CartesianBondedEnergy::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
overridevirtual

Evaluate the derivative for an atom in rsd1 with respect to rsd2 in the context of a particular pose, and increment the F1 and F2 vectors. 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 ResPairMinimizationData object for the given residue in a call to prepare_for_minimization before this function is invoked. DEPRECATED. Too slow. Too much overhead for each atom; slowed fast-relax runs by ~40%.

Evaluate the derivatives for all atoms on rsd1 and rsd2 with respect to each other and increment the derivatives in atom-derivatives vector1s. The calling function must guarantee that the r1_atom_derivs vector1 holds at least as many entries as there are atoms in rsd1, and that the r2_atom_derivs vector1 holds at least as many entries as there are atoms in rsd2.

Reimplemented from core::scoring::methods::TwoBodyEnergy.

References core::conformation::Residue::connected_residue_at_resconn(), eval_residue_pair_derivatives_sorted(), core::conformation::Residue::has_upper_connect(), core::conformation::Residue::seqpos(), core::conformation::Residue::type(), and core::chemical::ResidueType::upper_connect_id().

void core::scoring::methods::CartesianBondedEnergy::eval_residue_pair_derivatives_sorted ( conformation::Residue const &  rsd1,
conformation::Residue const &  rsd2,
ResSingleMinimizationData const &  ,
ResSingleMinimizationData const &  ,
ResPairMinimizationData const &  min_data,
pose::Pose const &  ,
EnergyMap const &  weights,
utility::vector1< DerivVectorPair > &  r1_atom_derivs,
utility::vector1< DerivVectorPair > &  r2_atom_derivs 
) const
void core::scoring::methods::CartesianBondedEnergy::eval_residue_pair_energies ( conformation::Residue const &  rsd1,
conformation::Residue const &  rsd2,
ResidueCartBondedParameters const &  rsd1params,
ResidueCartBondedParameters const &  rsd2params,
Real  phi1,
Real  psi1,
Real  phi2,
Real  psi2,
pose::Pose const &  pose,
EnergyMap emap 
) const
private

Methods for inter-residue energies.

Evaluate all the inter-residue components

rsd1.seqpos < rsd2.seqpos, and rsd1&rsd2 should be chemically bonded.

References eval_interresidue_angle_energies_two_from_rsd1(), eval_interresidue_angle_energies_two_from_rsd2(), eval_interresidue_bond_energy(), eval_interresidue_improper_energy(), and eval_interresidue_ring_energy().

Referenced by residue_pair_energy_sorted().

Real core::scoring::methods::CartesianBondedEnergy::eval_score ( Real  val,
Real  K,
Real  val0 
) const
private

Common to evaluating the score for torsions, angles, and lengths.

Evaluate either the harmonic or linearized-harmonic energy given by either: score = 0.5 * K * (val-val0)^2 or score = 0.5 * K * (val-val0)^2 if std::abs(val-val0) < 1 = 0.5 * K * std::abs(val-val0) otherwise

References linear_bonded_potential_.

Referenced by eval_interresidue_angle_energies_two_from_rsd1(), eval_interresidue_angle_energies_two_from_rsd2(), eval_interresidue_bond_energy(), eval_interresidue_improper_energy(), eval_interresidue_ring_energy(), eval_singleres_angle_energies(), eval_singleres_improper_energies(), eval_singleres_length_energies(), and eval_singleres_ring_energies().

void core::scoring::methods::CartesianBondedEnergy::eval_singleres_angle_derivatives ( conformation::Residue const &  rsd,
ResidueCartBondedParameters const &  resparams,
Real const  phi,
Real const  psi,
EnergyMap const &  weights,
utility::vector1< DerivVectorPair > &  r_atom_derivs 
) const
private
void core::scoring::methods::CartesianBondedEnergy::eval_singleres_angle_energies ( conformation::Residue const &  rsd,
ResidueCartBondedParameters const &  resparams,
Real const  phi,
Real const  psi,
pose::Pose const &  pose,
EnergyMap emap 
) const
private
void core::scoring::methods::CartesianBondedEnergy::eval_singleres_derivatives ( conformation::Residue const &  rsd,
ResidueCartBondedParameters const &  resparams,
Real  phi,
Real  psi,
EnergyMap const &  weights,
utility::vector1< DerivVectorPair > &  r_atom_derivs 
) const
private
void core::scoring::methods::CartesianBondedEnergy::eval_singleres_energy ( conformation::Residue const &  rsd,
ResidueCartBondedParameters const &  rsdparams,
Real  phi,
Real  psi,
pose::Pose const &  pose,
EnergyMap emap 
) const
private
void core::scoring::methods::CartesianBondedEnergy::eval_singleres_improper_derivatives ( conformation::Residue const &  rsd,
ResidueCartBondedParameters const &  resparams,
Real const  phi,
Real const  psi,
EnergyMap const &  weights,
utility::vector1< DerivVectorPair > &  r_atom_derivs 
) const
private
void core::scoring::methods::CartesianBondedEnergy::eval_singleres_improper_energies ( conformation::Residue const &  rsd,
ResidueCartBondedParameters const &  resparams,
Real const  phi,
Real const  psi,
pose::Pose const &  pose,
EnergyMap emap 
) const
private
void core::scoring::methods::CartesianBondedEnergy::eval_singleres_length_derivatives ( conformation::Residue const &  rsd,
ResidueCartBondedParameters const &  resparams,
Real const  phi,
Real const  psi,
EnergyMap const &  weights,
utility::vector1< DerivVectorPair > &  r_atom_derivs 
) const
private
void core::scoring::methods::CartesianBondedEnergy::eval_singleres_length_energies ( conformation::Residue const &  rsd,
ResidueCartBondedParameters const &  resparams,
Real const  phi,
Real const  psi,
pose::Pose const &  pose,
EnergyMap emap 
) const
private
void core::scoring::methods::CartesianBondedEnergy::eval_singleres_ring_derivatives ( conformation::Residue const &  rsd,
EnergyMap const &  weights,
utility::vector1< DerivVectorPair > &  r_atom_derivs 
) const
private
void core::scoring::methods::CartesianBondedEnergy::eval_singleres_ring_energies ( conformation::Residue const &  rsd,
pose::Pose const &  pose,
EnergyMap emap 
) const
private
void core::scoring::methods::CartesianBondedEnergy::eval_singleres_torsion_derivatives ( conformation::Residue const &  rsd,
ResidueCartBondedParameters const &  resparams,
EnergyMap const &  weights,
utility::vector1< DerivVectorPair > &  r_atom_derivs 
) const
private
void core::scoring::methods::CartesianBondedEnergy::eval_singleres_torsion_energies ( conformation::Residue const &  rsd,
ResidueCartBondedParameters const &  resparams,
pose::Pose const &  pose,
EnergyMap emap 
) const
private
IdealParametersDatabaseOP core::scoring::methods::CartesianBondedEnergy::get_db ( Real  k_len,
Real  k_ang,
Real  k_tors,
Real  k_tors_prot,
Real  k_tors_improper 
)
staticprivate

Evaluate the derivative for a.

Accessor function which gives access to the appropriate IdealParametersDatabase

Referenced by CartesianBondedEnergy().

void core::scoring::methods::CartesianBondedEnergy::idealize_proline_nvs ( pose::Pose pose) const
void core::scoring::methods::CartesianBondedEnergy::indicate_required_context_graphs ( utility::vector1< bool > &  ) const
overridevirtual

CartesianBondedEnergy is context independent; indicates that no context graphs are required.

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

methods::LongRangeEnergyType core::scoring::methods::CartesianBondedEnergy::long_range_type ( ) const
overridevirtual
bool core::scoring::methods::CartesianBondedEnergy::minimize_in_whole_structure_context ( pose::Pose const &  ) const
inlineoverridevirtual

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.

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

void core::scoring::methods::CartesianBondedEnergy::residue_pair_energy ( conformation::Residue const &  rsd1,
conformation::Residue const &  rsd2,
pose::Pose const &  pose,
ScoreFunction const &  sfxn,
EnergyMap emap 
) const
overridevirtual
void core::scoring::methods::CartesianBondedEnergy::residue_pair_energy_sorted ( conformation::Residue const &  rsd1,
conformation::Residue const &  rsd2,
pose::Pose const &  pose,
ScoreFunction const &  sf,
EnergyMap emap 
) const
private
void core::scoring::methods::CartesianBondedEnergy::setup_for_derivatives ( pose::Pose pose,
ScoreFunction const &  sfxn 
) const
overridevirtual

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.

void core::scoring::methods::CartesianBondedEnergy::setup_for_scoring ( pose::Pose ,
ScoreFunction const &   
) const
overridevirtual

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.

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

References core::scoring::cart_bonded, core::scoring::cart_bonded_angle, core::scoring::cart_bonded_improper, core::scoring::cart_bonded_length, core::scoring::cart_bonded_proper, core::scoring::cart_bonded_ring, core::scoring::cart_bonded_torsion, core::pose::Pose::energies(), core::pose::symmetry::is_symmetric(), long_range_type(), core::pose::Pose::size(), core::pose::symmetry::symmetry_info(), and core::scoring::methods::TR().

core::Size core::scoring::methods::CartesianBondedEnergy::version ( ) const
overrideprivatevirtual

Return the version of the energy method.

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

Member Data Documentation

IdealParametersDatabaseOP core::scoring::methods::CartesianBondedEnergy::db_
private
bool core::scoring::methods::CartesianBondedEnergy::linear_bonded_potential_
private
std::string core::scoring::methods::CartesianBondedEnergy::pro_nv_
private

Referenced by idealize_proline_nvs().

bool core::scoring::methods::CartesianBondedEnergy::skip_cutpoints_
private

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