![]() |
Rosetta
2021.16
|
#include <LK_BallEnergy.hh>

Public Types | |
| typedef chemical::ResidueType | ResidueType |
| convenience typedefs More... | |
| typedef utility::vector1< Size > | Sizes |
| typedef utility::vector1< Vector > | Vectors |
Public Types inherited from core::scoring::methods::ContextIndependentTwoBodyEnergy | |
| typedef ShortRangeTwoBodyEnergy | parent |
Public Types inherited from core::scoring::methods::ShortRangeTwoBodyEnergy | |
| 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 | |
| LK_BallEnergy (methods::EnergyMethodOptions const &options) | |
| methods::EnergyMethodOP | clone () const override |
| clone More... | |
| LK_BallEnergy (LK_BallEnergy const &src) | |
| void | setup_for_packing (pose::Pose &pose, utility::vector1< bool > const &, utility::vector1< bool > const &) const override |
| 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... | |
| 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 | prepare_rotamers_for_packing (pose::Pose const &pose, conformation::RotamerSetBase &rotamer_set) const override |
| 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... | |
| void | update_residue_for_packing (pose::Pose &, Size resid) const override |
| 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... | |
| void | setup_for_derivatives (pose::Pose &pose, ScoreFunction const &scfxn) const override |
| Called immediately before atom- and DOF-derivatives are calculated allowing the derived class a chance to prepare for future calls. More... | |
| Real | calculate_lk_desolvation_of_single_atom_by_residue (Size const atom1, conformation::Residue const &rsd1, conformation::Residue const &rsd2) |
| helper function for outside use More... | |
| Real | calculate_lk_desolvation_of_single_atom_by_residue_no_count_pair (Size const atom1, conformation::Residue const &rsd1, conformation::Residue const &rsd2) |
| void | calculate_lk_ball_atom_energies (Size const atom1, conformation::Residue const &rsd1, Size atom1_n_attached_waters, Size atom1_water_offset, WaterCoords const &rsd1_waters, Size const atom2, conformation::Residue const &rsd2, Real &lk_desolvation_of_atom1_by_atom2, Real &lk_ball_desolvation_of_atom1_by_atom2) const |
| get the lk-ball desolvation of atom1 by atom2, and the unoriented lk desolvation of atom1 by atom2 More... | |
| void | calculate_lk_ball_atom_energies_cp (Size const atom1, conformation::Residue const &rsd1, Size atom1_n_attached_waters, Size atom1_water_offset, WaterCoords const &atom1_waters, Size const atom2, conformation::Residue const &rsd2, etable::count_pair::CPCrossoverBehavior const &cp_crossover, Real &lk_desolvation_of_atom1_by_atom2, Real &lk_ball_desolvation_of_atom1_by_atom2) const |
| Real | get_lk_fractional_contribution_for_single_water (Vector const &atom2_xyz, Size const atom2_type, Vector const &atom1_water) const |
| void | eval_desolvation_derivs_no_count_pair (Real const d2, Size const atom1, conformation::Residue const &rsd1, Size const atom2, conformation::Residue const &rsd2, Real &atom1_lk_desolvation_by_atom2_deriv, Real &atom2_lk_desolvation_by_atom1_deriv) |
| 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 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 | residue_pair_energy (conformation::Residue const &rsd1, conformation::Residue const &rsd2, pose::Pose const &pose, ScoreFunction const &sfxn, EnergyMap &emap) const override |
| This guy is used during scoring if we are not minimizing, or inside linmem_ig packing and things like that... More... | |
| bool | divides_backbone_and_sidechain_energetics () const override |
| Let the energy-method consumers (e.g. the packer) use bounding-sphere logic for deciding whether bb/bb, bb/sc, and sc/sc energies should be evaluated. More... | |
| void | backbone_backbone_energy (conformation::Residue const &rsd1, conformation::Residue const &rsd2, pose::Pose const &pose, ScoreFunction const &sfxn, EnergyMap &emap) const override |
| The sum bbE(r1,r2) + bs(r1,r2) + bs(r2,r1) + ss(r1,r2) must equal rpe(r1,r2). This function evaluates only the energies of bb/bb interactions. More... | |
| void | backbone_sidechain_energy (conformation::Residue const &rsd1, conformation::Residue const &rsd2, pose::Pose const &pose, ScoreFunction const &sfxn, EnergyMap &emap) const override |
| The sum bbE(r1,r2) + bs(r1,r2) + bs(r2,r1) + ss(r1,r2) must equal rpe(r1,r2). This function evaluates only the energies of bb/sc interactions; that is, the backbone from residue 1 with the sidechain of residue 2. More... | |
| void | sidechain_sidechain_energy (conformation::Residue const &rsd1, conformation::Residue const &rsd2, pose::Pose const &pose, ScoreFunction const &sfxn, EnergyMap &emap) const override |
| The sum bbE(r1,r2) + bs(r1,r2) + bs(r2,r1) + ss(r1,r2) must equal rpe(r1,r2). This function evaluates only the energies of sc/sc interactions. More... | |
| void | residue_pair_energy (conformation::Residue const &rsd1, LKB_ResidueInfo const &rsd1_info, conformation::Residue const &rsd2, LKB_ResidueInfo const &rsd2_info, ScoreFunction const &sf, EnergyMap &emap) const |
| void | accumulate_single_atom_contributions (Size atom1_n_attached_waters, Size atom1_water_offset, WaterCoords const &rsd1_waters, AtomWeights const &atom1_wts, conformation::Residue const &rsd1, Size const atom2_type_index, Vector const &atom2_xyz, Real const lk_desolvation_of_atom1_by_atom2, EnergyMap &emap) const |
| void | setup_for_minimizing_for_residue (conformation::Residue const &rsd, pose::Pose const &pose, ScoreFunction const &scorefxn, kinematics::MinimizerMapBase const &min_map, basic::datacache::BasicDataCache &res_data_cache, ResSingleMinimizationData &resdata) const override |
| 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... | |
| void | setup_for_minimizing_for_residue_pair (conformation::Residue const &rsd1, conformation::Residue const &rsd2, pose::Pose const &, ScoreFunction const &scorefxn, kinematics::MinimizerMapBase const &min_map, ResSingleMinimizationData const &res1data, ResSingleMinimizationData const &res2data, ResPairMinimizationData &pairdata) const override |
| 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... | |
| 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... | |
| bool | requires_a_setup_for_scoring_for_residue_opportunity_during_regular_scoring (pose::Pose const &pose) const override |
| 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... | |
| void | setup_for_scoring_for_residue (conformation::Residue const &rsd, pose::Pose const &pose, ScoreFunction const &sfxn, basic::datacache::BasicDataCache &residue_data_cache) const override |
| 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... | |
| bool | requires_a_setup_for_derivatives_for_residue_opportunity (pose::Pose const &) const override |
| 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... | |
| void | setup_for_derivatives_for_residue (conformation::Residue const &rsd, pose::Pose const &pose, ScoreFunction const &sfxn, ResSingleMinimizationData &min_data, basic::datacache::BasicDataCache &residue_data_cache) const override |
| Do any setup work necessary before evaluating the derivatives for this residue. More... | |
| 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... | |
| 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 | finalize_total_energy (pose::Pose &pose, ScoreFunction const &, EnergyMap &totals) const override |
| 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... | |
| void | eval_atom_derivative (id::AtomID const &id, pose::Pose const &pose, kinematics::DomainMap const &, ScoreFunction const &sfxn, EnergyMap const &weights, Vector &F1, Vector &F2) const override |
| 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... | |
| Distance | atomic_interaction_cutoff () const override |
| how far apart must two heavy atoms be to have a zero interaction energy? More... | |
| void | indicate_required_context_graphs (utility::vector1< bool > &context_graphs_required) const override |
| Indicate in the context-graphs-required list which context-graphs this energy method requires that the Pose maintain when doing neighbor evaluation. Context graphs are allowed. More... | |
| Real | eval_lk_fraction (Real const d2_delta, Real const width) const |
| Real | eval_d_lk_fraction_dr_over_r (Real const d2_delta, Real const width) const |
| Real | get_lk_fractional_contribution (Vector const &atom2_xyz, Size const atom2_type_index, Size atom1_n_attached_waters, Size atom1_water_offset, WaterCoords const &rsd1_waters, WaterDerivContributions &d_weighted_d2_d_di, Real &weighted_water_dis2) const |
| Real | get_lk_fractional_contribution (Vector const &atom2_xyz, Size const atom2_type_index, Size const atom1_n_attached_waters, Size const atom1_water_offset, WaterCoords const &rsd1_waters) const |
| Real | get_lkbr_fractional_contribution (Vector const &atom1_base, Vector const &atom2_base, Size atom1_n_attached_waters, Size atom2_n_attached_waters, Size atom1_water_offset, Size atom2_water_offset, WaterCoords const &rsd1_waters, WaterCoords const &rsd2_waters) const |
| Real | get_lkbr_fractional_contribution_noangle (Size atom1_n_attached_waters, Size atom2_n_attached_waters, Size atom1_water_offset, Size atom2_water_offset, WaterCoords const &rsd1_waters, WaterCoords const &rsd2_waters) const |
| Real | get_lkbr_fractional_contribution (Vector const &atom1_base, Vector const &atom2_base, Size atom1_n_attached_waters, Size atom2_n_attached_waters, Size atom1_water_offset, Size atom2_water_offset, WaterCoords const &rsd1_waters, WaterCoords const &rsd2_waters, WaterDerivVectors &d_weighted_d2_d_di1, Real &weighted_d2_water_delta, Real &pointterm_lkbr, Real &angleterm_lkbr, Real &d_angleterm_lkbr_dr, bool compute_derivs=true) const |
| 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 override |
| 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... | |
| 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 override |
| 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... | |
| void | sum_deriv_contributions_for_heavyatom_pair_one_way (Size const heavyatom1, conformation::Residue const &rsd1, LKB_ResidueInfo const &rsd1_info, Size const heavyatom2, conformation::Residue const &rsd2, LKB_ResidueInfo const &rsd2_info, EnergyMap const &weights, Real const weight_factor, Real const d2, utility::vector1< DerivVectorPair > &r1_at_derivs, utility::vector1< DerivVectorPair > &r2_at_derivs) const |
| void | sum_deriv_contributions_for_heavyatom_pair (Real const d2, Size const heavyatom1, conformation::Residue const &rsd1, LKB_ResidueInfo const &rsd1_info, Size const heavyatom2, conformation::Residue const &rsd2, LKB_ResidueInfo const &rsd2_info, pose::Pose const &, EnergyMap const &weights, Real const cp_weight, utility::vector1< DerivVectorPair > &r1_at_derivs, utility::vector1< DerivVectorPair > &r2_at_derivs) const |
| void | setup_d2_bounds () |
| etable::Etable const & | etable () const |
| ObjexxFCL::FArray3D< Real > const & | solv1 () const |
| ObjexxFCL::FArray3D< Real > const & | solv2 () const |
| Real | etable_bins_per_A2 () const |
| Real | lkb_max_dis () const |
| Real | lkb_max_dis2 () const |
| Real | fasol_max_dis2 () const |
| bool | slim_etable () const |
| core::Real | get_ramp_width_A2 () const |
| core::Real | get_overlap_width_A2 () const |
| core::Real | get_multi_water_fade () const |
| core::Real | get_lkbridge_angle_widthscale () const |
| core::Real | get_overlap_target_len2 () const |
| core::Real | get_overlap_gap2 () const |
| core::Real | get_d2_low (core::Size idx) const |
| core::Size | version () const override |
| Return the version of the energy method. More... | |
Public Member Functions inherited from core::scoring::methods::ContextIndependentTwoBodyEnergy | |
| ContextIndependentTwoBodyEnergy (EnergyMethodCreatorOP) | |
| Constructor with an EnergyMethodCreator to inform the ancestor EnergyMethod class which ScoreTypes this EnergyMethod is responsible for computing. More... | |
| ~ContextIndependentTwoBodyEnergy () 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::ShortRangeTwoBodyEnergy | |
| ShortRangeTwoBodyEnergy (EnergyMethodCreatorOP) | |
| Constructor with EnergyMethodCreator to provide to the EnergyMethod grandparent the list of the ScoreTypes this EnergyMethod is responsible for computing. More... | |
| ~ShortRangeTwoBodyEnergy () override | |
| 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 override |
| 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... | |
| 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 override |
| 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... | |
| 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 override |
| 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... | |
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 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_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 utility::vector1 < id::PartialAtomID > | atoms_with_dof_derivatives (conformation::Residue const &res, pose::Pose const &p) const |
| For a particular residue, list which atoms go into defining the DOF derivatives, including any atoms on adjacent residues. The Pose is provided for context, but there is no requirement that res be a member of that Pose. 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... | |
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_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 | 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... | |
| 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 void | provide_citation_info (basic::citation_manager::CitationCollectionList &) const |
| Provide citations to the passed CitationCollectionList Subclasses should add the info for themselves and any other classes they use. More... | |
Public Attributes | |
| __pad0__:ContextIndependentTwoBodyEnergy parent | |
Private Member Functions | |
| lkbtrie::LKBRotamerTrieOP | create_rotamer_trie (conformation::RotamerSetBase const &rotset) const |
| lkbtrie::LKBRotamerTrieOP | create_rotamer_trie (conformation::Residue const &res) 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 |
Private Attributes | |
| etable::EtableCOP | etable_ |
| ObjexxFCL::FArray3D< Real > const & | solv1_ |
| these guys are taken from the etable More... | |
| ObjexxFCL::FArray3D< Real > const & | solv2_ |
| ObjexxFCL::FArray3D< Real > const & | dsolv1_ |
| Real const | etable_bins_per_A2_ |
| Real | lkb_max_dis_ |
| Real | lkb_max_dis2_ |
| Real | fasol_max_dis2_ |
| bool const | slim_etable_ |
| Real | ramp_width_A2_ |
| Real | overlap_width_A2_ |
| Real | multi_water_fade_ |
| Real | lkbridge_angle_widthscale_ |
| Real | overlap_target_len2_ |
| Real | overlap_gap2_ |
| utility::vector1< Real > | d2_low_ |
| utility::vector1< bool > | atom_type_is_charged_ |
| utility::vector1< Real > | lk_ball_prefactor_ |
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... | |
convenience typedefs
| typedef utility::vector1< Size > core::scoring::lkball::LK_BallEnergy::Sizes |
| typedef utility::vector1< Vector > core::scoring::lkball::LK_BallEnergy::Vectors |
| core::scoring::lkball::LK_BallEnergy::LK_BallEnergy | ( | methods::EnergyMethodOptions const & | options | ) |
| core::scoring::lkball::LK_BallEnergy::LK_BallEnergy | ( | LK_BallEnergy const & | src | ) |
References setup_d2_bounds().
| void core::scoring::lkball::LK_BallEnergy::accumulate_single_atom_contributions | ( | Size | atom1_n_attached_waters, |
| Size | atom1_water_offset, | ||
| WaterCoords const & | rsd1_waters, | ||
| AtomWeights const & | atom1_wts, | ||
| conformation::Residue const & | rsd1, | ||
| Size const | atom2_type_index, | ||
| Vector const & | atom2_xyz, | ||
| Real const | lk_desolvation_of_atom1_by_atom2, | ||
| EnergyMap & | emap | ||
| ) | const |
|
overridevirtual |
how far apart must two heavy atoms be to have a zero interaction energy?
If hydrogen atoms interact at the same range as heavy atoms, then this distance should build-in a 2 * max-bound-h-distance-cutoff buffer. There is an improper mixing here between run-time aquired chemical knowledge (max-bound-h-distance-cutoff) and compile time aquired scoring knowledge (max atom cutoff); this could be resolved by adding a boolean uses_hydrogen_interaction_distance() to the SRTBEnergy class along with a method of the ChemicalManager max_bound_h_distance_cutoff().
Implements core::scoring::methods::ShortRangeTwoBodyEnergy.
References lkb_max_dis_.
Referenced by create_rotamer_trie(), core::scoring::lkball::lkbtrie::LKBTrieEvaluator::hydrogen_interaction_cutoff2(), and setup_for_minimizing_for_residue_pair().
|
overridevirtual |
The sum bbE(r1,r2) + bs(r1,r2) + bs(r2,r1) + ss(r1,r2) must equal rpe(r1,r2). This function evaluates only the energies of bb/bb interactions.
Reimplemented from core::scoring::methods::TwoBodyEnergy.
References core::scoring::etable::count_pair::CP_CROSSOVER_3, core::scoring::etable::count_pair::CP_CROSSOVER_4, protocols::ligand_docking::ga_ligand_dock::crossover(), core::conformation::Residue::data(), core::conformation::Residue::data_ptr(), core::conformation::Residue::is_polymer_bonded(), and core::conformation::residue_datacache::LK_BALL_INFO.
|
overridevirtual |
The sum bbE(r1,r2) + bs(r1,r2) + bs(r2,r1) + ss(r1,r2) must equal rpe(r1,r2). This function evaluates only the energies of bb/sc interactions; that is, the backbone from residue 1 with the sidechain of residue 2.
Reimplemented from core::scoring::methods::TwoBodyEnergy.
References core::scoring::etable::count_pair::CP_CROSSOVER_3, core::scoring::etable::count_pair::CP_CROSSOVER_4, protocols::ligand_docking::ga_ligand_dock::crossover(), core::conformation::Residue::data(), core::conformation::Residue::data_ptr(), core::conformation::Residue::is_polymer_bonded(), and core::conformation::residue_datacache::LK_BALL_INFO.
| void core::scoring::lkball::LK_BallEnergy::calculate_lk_ball_atom_energies | ( | Size const | atom1, |
| conformation::Residue const & | rsd1, | ||
| Size | atom1_n_attached_waters, | ||
| Size | atom1_water_offset, | ||
| WaterCoords const & | rsd1_waters, | ||
| Size const | atom2, | ||
| conformation::Residue const & | rsd2, | ||
| Real & | lk_desolvation_of_atom1_by_atom2, | ||
| Real & | lk_ball_desolvation_of_atom1_by_atom2 | ||
| ) | const |
get the lk-ball desolvation of atom1 by atom2, and the unoriented lk desolvation of atom1 by atom2
References core::conformation::Residue::atom(), core::scoring::etable::count_pair::CP_CROSSOVER_3, core::scoring::etable::count_pair::CP_CROSSOVER_4, protocols::ligand_docking::ga_ligand_dock::crossover(), etable_, etable_bins_per_A2_, fasol_max_dis2_, get_lk_fractional_contribution(), core::conformation::Residue::is_polymer_bonded(), protocols::antibody::l1, slim_etable_, solv1_, core::conformation::Atom::type(), and core::conformation::Residue::xyz().
| void core::scoring::lkball::LK_BallEnergy::calculate_lk_ball_atom_energies_cp | ( | Size const | atom1, |
| conformation::Residue const & | rsd1, | ||
| Size | atom1_n_attached_waters, | ||
| Size | atom1_water_offset, | ||
| WaterCoords const & | atom1_waters, | ||
| Size const | atom2, | ||
| conformation::Residue const & | rsd2, | ||
| etable::count_pair::CPCrossoverBehavior const & | cp_crossover, | ||
| Real & | lk_desolvation_of_atom1_by_atom2, | ||
| Real & | lk_ball_desolvation_of_atom1_by_atom2 | ||
| ) | const |
| Real core::scoring::lkball::LK_BallEnergy::calculate_lk_desolvation_of_single_atom_by_residue | ( | Size const | atom1, |
| conformation::Residue const & | rsd1, | ||
| conformation::Residue const & | rsd2 | ||
| ) |
helper function for outside use
helper function for outsiders
References core::conformation::Residue::atom(), core::scoring::etable::count_pair::CP_CROSSOVER_3, core::scoring::etable::count_pair::CP_CROSSOVER_4, protocols::ligand_docking::ga_ligand_dock::crossover(), etable_, etable_bins_per_A2_, fasol_max_dis2_, core::conformation::Residue::is_polymer_bonded(), protocols::antibody::l1, core::conformation::Residue::nheavyatoms(), slim_etable_, solv1_, core::conformation::Atom::type(), and core::conformation::Residue::xyz().
| Real core::scoring::lkball::LK_BallEnergy::calculate_lk_desolvation_of_single_atom_by_residue_no_count_pair | ( | Size const | atom1, |
| conformation::Residue const & | rsd1, | ||
| conformation::Residue const & | rsd2 | ||
| ) |
|
overridevirtual |
clone
Implements core::scoring::methods::EnergyMethod.
|
private |
References atomic_interaction_cutoff(), core::scoring::trie::create_cpdata_correspondence_for_rotamerset(), core::scoring::lkball::create_rotamer_descriptor(), core::conformation::RotamerSetBase::num_rotamers(), core::scoring::lkball::retrieve_lkb_rotamer_set_info(), and core::conformation::RotamerSetBase::rotamer().
Referenced by prepare_rotamers_for_packing(), setup_for_packing(), and update_residue_for_packing().
|
private |
|
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.
|
overridevirtual |
Let the energy-method consumers (e.g. the packer) use bounding-sphere logic for deciding whether bb/bb, bb/sc, and sc/sc energies should be evaluated.
Reimplemented from core::scoring::methods::ShortRangeTwoBodyEnergy.
| etable::Etable const & core::scoring::lkball::LK_BallEnergy::etable | ( | ) | const |
References etable_.
Referenced by core::scoring::lkball::evaluate_lk_ball_energy_for_atom_ranges().
|
inline |
References etable_bins_per_A2_.
Referenced by core::scoring::lkball::evaluate_lk_ball_energy_for_atom_ranges().
|
overridevirtual |
Evaluate the XYZ derivative for an atom in the pose. Called during the atomtree derivative calculation, atom_tree_minimize.cc, through the ScoreFunction::eval_atom_derivative intermediary. F1 and F2 should not zeroed, rather, this class should accumulate its contribution from this atom's XYZ derivative.
The derivative scheme is based on that of Abe, Braun, Noguti and Go (1984) "Rapid Calculation of First and Second Derivatives of Conformational Energy with Respect to Dihedral Angles for Proteins. General Recurrent Equations" Computers & Chemistry 8(4) pp. 239-247. F1 and F2 correspond roughly to Fa and Ga, respectively, of equations 7a & 7b in that paper.
default implementation does not alter either the F1 or F2 vectors.
Reimplemented from core::scoring::methods::EnergyMethod.
| void core::scoring::lkball::LK_BallEnergy::eval_desolvation_derivs_no_count_pair | ( | Real const | d2, |
| Size const | atom1, | ||
| conformation::Residue const & | rsd1, | ||
| Size const | atom2, | ||
| conformation::Residue const & | rsd2, | ||
| Real & | atom1_lk_desolvation_by_atom2_deriv, | ||
| Real & | atom2_lk_desolvation_by_atom1_deriv | ||
| ) |
|
inlineoverridevirtual |
Evaluate the intra-residue energy for a given residue.
Implements core::scoring::methods::TwoBodyEnergy.
| Real core::scoring::lkball::LK_BallEnergy::eval_lk_fraction | ( | Real const | d2_delta, |
| Real const | width | ||
| ) | const |
Stolen from LK_SigmoidalFunc in lk_hack d2_delta = d2 - d2_low
Referenced by get_lk_fractional_contribution(), get_lk_fractional_contribution_for_single_water(), get_lkbr_fractional_contribution(), and get_lkbr_fractional_contribution_noangle().
|
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::atom_is_hydrogen(), fasol_max_dis2_, core::scoring::ResPairMinimizationData::get_data_ref(), core::scoring::lk_ball_bridge_uncpl, core::scoring::lkball_nblist, core::conformation::Residue::natoms(), core::scoring::lkball::retrieve_lkb_resdata(), sum_deriv_contributions_for_heavyatom_pair(), and core::conformation::Residue::xyz().
|
overridevirtual |
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.
Reimplemented from core::scoring::methods::TwoBodyEnergy.
References core::scoring::Energies::data(), core::pose::Pose::energies(), etable_, get_count_pair_function_trie(), core::conformation::RotamerSetBase::get_trie(), core::scoring::ScoreFunction::get_weight(), core::scoring::lk_ball, core::scoring::lk_ball_bridge, core::scoring::lk_ball_bridge_uncpl, core::scoring::lk_ball_iso, core::scoring::lk_ball_wtd, core::scoring::EnergiesCacheableDataType::LKB_TRIE_COLLECTION, core::scoring::methods::lkball_method, core::conformation::RotamerSetBase::num_rotamers(), core::conformation::RotamerSetBase::resid(), core::pose::Pose::residue(), and core::conformation::Residue::seqpos().
|
overridevirtual |
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.
Reimplemented from core::scoring::methods::TwoBodyEnergy.
References etable_, get_count_pair_function_trie(), core::conformation::RotamerSetBase::get_trie(), core::scoring::ScoreFunction::get_weight(), core::scoring::lk_ball, core::scoring::lk_ball_bridge, core::scoring::lk_ball_bridge_uncpl, core::scoring::lk_ball_iso, core::scoring::lk_ball_wtd, core::scoring::methods::lkball_method, and core::conformation::RotamerSetBase::resid().
|
inline |
References fasol_max_dis2_.
Referenced by core::scoring::lkball::evaluate_lk_ball_energy_for_atom_ranges().
|
overridevirtual |
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.
|
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::conformation::RotamerSetBase::get_trie(), core::scoring::methods::lkball_method, core::conformation::RotamerSetBase::resid(), and core::pose::Pose::residue().
Referenced by evaluate_rotamer_background_energies(), and evaluate_rotamer_pair_energies().
|
private |
References core::scoring::etable::count_pair::CP_CROSSOVER_3, core::scoring::etable::count_pair::CP_CROSSOVER_4, core::scoring::etable::count_pair::CP_MULTIPLE_BONDS_OR_PSEUDOBONDS, core::scoring::etable::count_pair::CP_ONE_BOND, protocols::ligand_docking::ga_ligand_dock::crossover(), core::conformation::Residue::is_polymer_bonded(), and core::conformation::Residue::seqpos().
|
inline |
References d2_low_.
| Real core::scoring::lkball::LK_BallEnergy::get_lk_fractional_contribution | ( | Vector const & | atom2_xyz, |
| Size const | atom2_type, | ||
| Size | atom1_n_attached_waters, | ||
| Size | atom1_water_offset, | ||
| WaterCoords const & | rsd1_waters, | ||
| WaterDerivContributions & | d_weighted_d2_d_di, | ||
| Real & | weighted_d2_water_delta | ||
| ) | const |
References d2_low_, eval_lk_fraction(), multi_water_fade_, and ramp_width_A2_.
Referenced by accumulate_single_atom_contributions(), calculate_lk_ball_atom_energies(), calculate_lk_ball_atom_energies_cp(), core::scoring::lkball::lkbtrie::LKBTrieEvaluator::heavyatom_heavyatom_energy(), and sum_deriv_contributions_for_heavyatom_pair_one_way().
| Real core::scoring::lkball::LK_BallEnergy::get_lk_fractional_contribution | ( | Vector const & | atom2_xyz, |
| Size const | atom2_type_index, | ||
| Size const | atom1_n_attached_waters, | ||
| Size const | atom1_water_offset, | ||
| WaterCoords const & | rsd1_waters | ||
| ) | const |
References d2_low_, eval_lk_fraction(), multi_water_fade_, and ramp_width_A2_.
| Real core::scoring::lkball::LK_BallEnergy::get_lk_fractional_contribution_for_single_water | ( | Vector const & | atom2_xyz, |
| Size const | atom2_type, | ||
| Vector const & | atom1_water | ||
| ) | const |
References d2_low_, eval_lk_fraction(), and ramp_width_A2_.
| Real core::scoring::lkball::LK_BallEnergy::get_lkbr_fractional_contribution | ( | Vector const & | atom1_base, |
| Vector const & | atom2_base, | ||
| Size | atom1_n_attached_waters, | ||
| Size | atom2_n_attached_waters, | ||
| Size | atom1_water_offset, | ||
| Size | atom2_water_offset, | ||
| WaterCoords const & | rsd1_waters, | ||
| WaterCoords const & | rsd2_waters | ||
| ) | const |
| Real core::scoring::lkball::LK_BallEnergy::get_lkbr_fractional_contribution | ( | Vector const & | atom1_base, |
| Vector const & | atom2_base, | ||
| Size | atom1_n_attached_waters, | ||
| Size | atom2_n_attached_waters, | ||
| Size | atom1_water_offset, | ||
| Size | atom2_water_offset, | ||
| WaterCoords const & | rsd1_waters, | ||
| WaterCoords const & | rsd2_waters, | ||
| WaterDerivVectors & | d_weighted_d2_d_di1, | ||
| Real & | weighted_d2_water_delta, | ||
| Real & | pointterm_lkbr, | ||
| Real & | angleterm_lkbr, | ||
| Real & | d_angleterm_lkbr_dr, | ||
| bool | compute_derivs = true |
||
| ) | const |
| Real core::scoring::lkball::LK_BallEnergy::get_lkbr_fractional_contribution_noangle | ( | Size | atom1_n_attached_waters, |
| Size | atom2_n_attached_waters, | ||
| Size | atom1_water_offset, | ||
| Size | atom2_water_offset, | ||
| WaterCoords const & | rsd1_waters, | ||
| WaterCoords const & | rsd2_waters | ||
| ) | const |
References eval_lk_fraction(), multi_water_fade_, overlap_gap2_, and overlap_width_A2_.
|
inline |
References lkbridge_angle_widthscale_.
|
inline |
References multi_water_fade_.
|
inline |
References overlap_gap2_.
|
inline |
References overlap_target_len2_.
|
inline |
References overlap_width_A2_.
|
inline |
References ramp_width_A2_.
|
overridevirtual |
Indicate in the context-graphs-required list which context-graphs this energy method requires that the Pose maintain when doing neighbor evaluation. Context graphs are allowed.
Implements core::scoring::methods::EnergyMethod.
|
inline |
References lkb_max_dis_.
|
inline |
References lkb_max_dis2_.
Referenced by core::scoring::lkball::evaluate_lk_ball_energy_for_atom_ranges().
|
overridevirtual |
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.
|
overridevirtual |
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.
default implementation noop
Reimplemented from core::scoring::methods::EnergyMethod.
References create_rotamer_trie(), core::conformation::RotamerSetBase::data(), core::conformation::residue_datacache::LK_BALL_INFO, core::conformation::RotamerSetCacheableDataType::LK_BALL_ROTAMER_SET_INFO, core::scoring::methods::lkball_method, core::conformation::RotamerSetBase::nonconst_rotamer(), core::conformation::RotamerSetBase::num_rotamers(), rot(), and core::conformation::RotamerSetBase::store_trie().
|
overridevirtual |
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.
Reimplemented from core::scoring::methods::TwoBodyEnergy.
|
overridevirtual |
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.
Reimplemented from core::scoring::methods::EnergyMethod.
|
overridevirtual |
This guy is used during scoring if we are not minimizing, or inside linmem_ig packing and things like that...
Implements core::scoring::methods::TwoBodyEnergy.
References core::conformation::Residue::data(), and core::conformation::residue_datacache::LK_BALL_INFO.
| void core::scoring::lkball::LK_BallEnergy::residue_pair_energy | ( | conformation::Residue const & | rsd1, |
| LKB_ResidueInfo const & | rsd1_info, | ||
| conformation::Residue const & | rsd2, | ||
| LKB_ResidueInfo const & | rsd2_info, | ||
| ScoreFunction const & | sf, | ||
| EnergyMap & | emap | ||
| ) | const |
| void core::scoring::lkball::LK_BallEnergy::setup_d2_bounds | ( | ) |
References core::chemical::AtomTypeSet::atom_type_index(), atom_type_is_charged_, d2_low_, etable_, core::chemical::AtomType::lj_radius(), lk_ball_prefactor_, protocols::mean_field::max(), core::chemical::AtomTypeSet::n_atomtypes(), core::chemical::AtomType::name(), ramp_width_A2_, and core::scoring::electron_density::square().
Referenced by LK_BallEnergy().
|
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.
References core::pose::Pose::update_residue_neighbors().
|
overridevirtual |
Do any setup work necessary before evaluating the derivatives for this residue.
Reimplemented from core::scoring::methods::TwoBodyEnergy.
References core::scoring::lkball::update_cached_lkb_resinfo().
Referenced by setup_for_minimizing_for_residue().
|
overridevirtual |
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 setup_for_derivatives_for_residue().
|
overridevirtual |
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 atomic_interaction_cutoff(), core::scoring::etable::count_pair::CP_CROSSOVER_3, core::scoring::etable::count_pair::CP_CROSSOVER_4, protocols::ligand_docking::ga_ligand_dock::crossover(), core::scoring::ResPairMinimizationData::get_data(), core::conformation::Residue::is_polymer_bonded(), core::scoring::lkb_respair_data, core::scoring::lkball_nblist, and core::scoring::ResPairMinimizationData::set_data().
|
overridevirtual |
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.
default implementation noop
Reimplemented from core::scoring::methods::EnergyMethod.
References core::conformation::Residue::aa(), core::chemical::aa_vrt, create_rotamer_trie(), core::scoring::Energies::data(), core::pose::Pose::energies(), core::scoring::EnergiesCacheableDataType::LKB_TRIE_COLLECTION, core::pose::Pose::residue(), core::pose::Pose::residue_data(), core::pose::Pose::size(), and core::scoring::lkball::update_cached_lkb_resinfo().
|
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::pose::Pose::update_residue_neighbors().
Referenced by protocols::cryst::ReportGradientsMover::compute().
|
overridevirtual |
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.)
Reimplemented from core::scoring::methods::EnergyMethod.
References core::scoring::lkball::update_cached_lkb_resinfo().
|
overridevirtual |
The sum bbE(r1,r2) + bs(r1,r2) + bs(r2,r1) + ss(r1,r2) must equal rpe(r1,r2). This function evaluates only the energies of sc/sc interactions.
Reimplemented from core::scoring::methods::TwoBodyEnergy.
References core::scoring::etable::count_pair::CP_CROSSOVER_3, core::scoring::etable::count_pair::CP_CROSSOVER_4, protocols::ligand_docking::ga_ligand_dock::crossover(), core::conformation::Residue::data(), core::conformation::Residue::data_ptr(), core::conformation::Residue::is_polymer_bonded(), and core::conformation::residue_datacache::LK_BALL_INFO.
|
inline |
References slim_etable_.
Referenced by core::scoring::lkball::evaluate_lk_ball_energy_for_atom_ranges().
|
inline |
References solv1_.
Referenced by core::scoring::lkball::evaluate_lk_ball_energy_for_atom_ranges().
|
inline |
References solv2_.
Referenced by core::scoring::lkball::evaluate_lk_ball_energy_for_atom_ranges().
| void core::scoring::lkball::LK_BallEnergy::sum_deriv_contributions_for_heavyatom_pair | ( | Real const | d2, |
| Size const | heavyatom1, | ||
| conformation::Residue const & | rsd1, | ||
| LKB_ResidueInfo const & | rsd1_info, | ||
| Size const | heavyatom2, | ||
| conformation::Residue const & | rsd2, | ||
| LKB_ResidueInfo const & | rsd2_info, | ||
| pose::Pose const & | , | ||
| EnergyMap const & | weights, | ||
| Real const | cp_weight, | ||
| utility::vector1< DerivVectorPair > & | r1_at_derivs, | ||
| utility::vector1< DerivVectorPair > & | r2_at_derivs | ||
| ) | const |
References sum_deriv_contributions_for_heavyatom_pair_one_way().
Referenced by eval_residue_pair_derivatives().
| void core::scoring::lkball::LK_BallEnergy::sum_deriv_contributions_for_heavyatom_pair_one_way | ( | Size const | heavyatom1, |
| conformation::Residue const & | rsd1, | ||
| LKB_ResidueInfo const & | rsd1_info, | ||
| Size const | heavyatom2, | ||
| conformation::Residue const & | rsd2, | ||
| LKB_ResidueInfo const & | rsd2_info, | ||
| EnergyMap const & | weights, | ||
| Real const | weight_factor, | ||
| Real const | d2, | ||
| utility::vector1< DerivVectorPair > & | r1_at_derivs, | ||
| utility::vector1< DerivVectorPair > & | r2_at_derivs | ||
| ) | const |
References core::conformation::Residue::atom(), core::scoring::lkball::LKB_ResidueInfo::atom1_derivs(), core::scoring::lkball::LKB_ResidueInfo::atom2_derivs(), core::scoring::lkball::LKB_ResidueInfo::atom3_derivs(), core::scoring::lkball::LKB_ResidueInfo::atom_weights(), dsolv1_, etable_, etable_bins_per_A2_, eval_d_lk_fraction_dr_over_r(), fasol_max_dis2_, get_lk_fractional_contribution(), get_lkbr_fractional_contribution(), core::scoring::lkball::LKB_ResidueInfo::get_water_builder(), core::scoring::lk_ball, core::scoring::lk_ball_bridge, core::scoring::lk_ball_bridge_uncpl, core::scoring::lk_ball_iso, core::scoring::lk_ball_wtd, lkbridge_angle_widthscale_, core::scoring::lkball::LKB_ResidueInfo::n_attached_waters(), overlap_width_A2_, ramp_width_A2_, slim_etable_, solv1_, solv2_, core::conformation::Atom::type(), core::scoring::lkball::LKB_ResidueInfo::water_offset_for_atom(), core::scoring::lkball::LKB_ResidueInfo::waters(), and core::conformation::Residue::xyz().
Referenced by sum_deriv_contributions_for_heavyatom_pair().
|
overridevirtual |
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.
default implementation noop
Reimplemented from core::scoring::methods::EnergyMethod.
References core::conformation::Residue::aa(), core::chemical::aa_vrt, create_rotamer_trie(), core::scoring::Energies::data(), core::pose::Pose::energies(), core::scoring::EnergiesCacheableDataType::LKB_TRIE_COLLECTION, core::pose::Pose::residue(), core::pose::Pose::residue_data(), and core::scoring::lkball::update_cached_lkb_resinfo().
|
overridevirtual |
Return the version of the energy method.
Implements core::scoring::methods::EnergyMethod.
| core::scoring::lkball::LK_BallEnergy::__pad0__ |
|
private |
Referenced by setup_d2_bounds().
|
private |
|
private |
|
private |
Referenced by calculate_lk_ball_atom_energies(), calculate_lk_ball_atom_energies_cp(), calculate_lk_desolvation_of_single_atom_by_residue(), calculate_lk_desolvation_of_single_atom_by_residue_no_count_pair(), etable(), eval_desolvation_derivs_no_count_pair(), evaluate_rotamer_background_energies(), evaluate_rotamer_pair_energies(), LK_BallEnergy(), setup_d2_bounds(), and sum_deriv_contributions_for_heavyatom_pair_one_way().
|
private |
Referenced by calculate_lk_ball_atom_energies(), calculate_lk_ball_atom_energies_cp(), calculate_lk_desolvation_of_single_atom_by_residue(), calculate_lk_desolvation_of_single_atom_by_residue_no_count_pair(), etable_bins_per_A2(), eval_desolvation_derivs_no_count_pair(), and sum_deriv_contributions_for_heavyatom_pair_one_way().
|
private |
Referenced by calculate_lk_ball_atom_energies(), calculate_lk_ball_atom_energies_cp(), calculate_lk_desolvation_of_single_atom_by_residue(), calculate_lk_desolvation_of_single_atom_by_residue_no_count_pair(), eval_desolvation_derivs_no_count_pair(), eval_residue_pair_derivatives(), fasol_max_dis2(), LK_BallEnergy(), and sum_deriv_contributions_for_heavyatom_pair_one_way().
|
private |
Referenced by setup_d2_bounds().
|
private |
Referenced by LK_BallEnergy(), and lkb_max_dis2().
|
private |
Referenced by atomic_interaction_cutoff(), LK_BallEnergy(), and lkb_max_dis().
|
private |
|
private |
|
private |
|
private |
Referenced by get_lkbr_fractional_contribution(), get_overlap_target_len2(), and LK_BallEnergy().
|
private |
|
private |
|
private |
Referenced by calculate_lk_ball_atom_energies(), calculate_lk_ball_atom_energies_cp(), calculate_lk_desolvation_of_single_atom_by_residue(), calculate_lk_desolvation_of_single_atom_by_residue_no_count_pair(), eval_desolvation_derivs_no_count_pair(), LK_BallEnergy(), slim_etable(), and sum_deriv_contributions_for_heavyatom_pair_one_way().
|
private |
these guys are taken from the etable
Referenced by calculate_lk_ball_atom_energies(), calculate_lk_ball_atom_energies_cp(), calculate_lk_desolvation_of_single_atom_by_residue(), calculate_lk_desolvation_of_single_atom_by_residue_no_count_pair(), LK_BallEnergy(), solv1(), and sum_deriv_contributions_for_heavyatom_pair_one_way().
|
private |
Referenced by solv2(), and sum_deriv_contributions_for_heavyatom_pair_one_way().
1.8.7