Rosetta 3.4
|
#include <LK_hack.hh>
Public Types | |
typedef ContextIndependentTwoBodyEnergy | parent |
Public Member Functions | |
LK_hack (etable::Etable const &etable_in) | |
virtual EnergyMethodOP | clone () const |
clone | |
LK_hack (LK_hack const &src) | |
virtual void | setup_for_derivatives (pose::Pose &pose, ScoreFunction const &scfxn) const |
Called immediately before atom- and DOF-derivatives are calculated allowing the derived class a chance to prepare for future calls. | |
virtual void | eval_atom_derivative (id::AtomID const &id, pose::Pose const &pose, kinematics::DomainMap const &domain_map, ScoreFunction const &sfxn, EnergyMap const &weights, Vector &F1, Vector &F2) const |
called during gradient-based minimization inside dfunc | |
virtual void | residue_pair_energy (conformation::Residue const &rsd1, conformation::Residue const &rsd2, pose::Pose const &pose, ScoreFunction const &, EnergyMap &emap) const |
Evaluate the interaction between a given residue pair accumulating the unweighted energies in an EnergyMap. | |
virtual bool | defines_intrares_energy (EnergyMap const &) const |
Two body energies are able to define intra-residue energies, and to do so only in the presence of certain non-zero weights. The ScoreFunction will hand over its weight set as it asks whether the energy method defines an intraresidue energy or not. | |
virtual void | eval_intrares_energy (conformation::Residue const &, pose::Pose const &, ScoreFunction const &, EnergyMap &) const |
Evaluate the intra-residue energy for a given residue. | |
virtual Distance | atomic_interaction_cutoff () const |
how far apart must two heavy atoms be to have a zero interaction energy? | |
void | indicate_required_context_graphs (utility::vector1< bool > &context_graphs_required) const |
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. |
Reimplemented from core::scoring::methods::ContextIndependentTwoBodyEnergy.
core::scoring::methods::LK_hack::LK_hack | ( | etable::Etable const & | etable_in | ) |
Referenced by clone().
core::scoring::methods::LK_hack::LK_hack | ( | LK_hack const & | src | ) |
Distance core::scoring::methods::LK_hack::atomic_interaction_cutoff | ( | ) | const [virtual] |
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 core::scoring::etable::Etable::max_dis().
EnergyMethodOP core::scoring::methods::LK_hack::clone | ( | ) | const [virtual] |
virtual bool core::scoring::methods::LK_hack::defines_intrares_energy | ( | EnergyMap const & | weights | ) | const [inline, virtual] |
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.
void core::scoring::methods::LK_hack::eval_atom_derivative | ( | id::AtomID const & | id, |
pose::Pose const & | pose, | ||
kinematics::DomainMap const & | domain_map, | ||
ScoreFunction const & | sfxn, | ||
EnergyMap const & | weights, | ||
Vector & | F1, | ||
Vector & | F2 | ||
) | const [virtual] |
called during gradient-based minimization inside dfunc
F1 and F2 are not zeroed -- contributions from this atom are just summed in
Reimplemented from core::scoring::methods::EnergyMethod.
References core::pose::Pose::residue().
virtual void core::scoring::methods::LK_hack::eval_intrares_energy | ( | conformation::Residue const & | rsd, |
pose::Pose const & | pose, | ||
ScoreFunction const & | sfxn, | ||
EnergyMap & | emap | ||
) | const [inline, virtual] |
Evaluate the intra-residue energy for a given residue.
Implements core::scoring::methods::TwoBodyEnergy.
void core::scoring::methods::LK_hack::indicate_required_context_graphs | ( | utility::vector1< bool > & | context_graphs_required | ) | const [virtual] |
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.
void core::scoring::methods::LK_hack::residue_pair_energy | ( | conformation::Residue const & | rsd1, |
conformation::Residue const & | rsd2, | ||
pose::Pose const & | pose, | ||
ScoreFunction const & | sfxn, | ||
EnergyMap & | emap | ||
) | const [virtual] |
Evaluate the interaction between a given residue pair accumulating the unweighted energies in an EnergyMap.
Implements core::scoring::methods::TwoBodyEnergy.
References core::conformation::Residue::atom(), core::conformation::Residue::atom_is_hydrogen(), core::conformation::Residue::atom_type(), core::conformation::Residue::bonded_neighbor(), core::conformation::Residue::connect_map(), core::chemical::ResConnID::connid(), core::scoring::methods::LK_SigmoidalFunc::cos_flipped_ANGLE_CUTOFF_HIGH, core::scoring::methods::LK_SigmoidalFunc::cos_flipped_ANGLE_CUTOFF_LOW, core::scoring::etable::count_pair::CP_CROSSOVER_4, core::chemical::AtomType::is_acceptor(), core::chemical::AtomType::is_donor(), core::scoring::lk_hack, core::chemical::ResidueType::n_residue_connections_for_atom(), core::conformation::Residue::nheavyatoms(), core::chemical::ResConnID::resid(), core::pose::Pose::residue(), core::chemical::ResidueType::residue_connections_for_atom(), core::conformation::Atom::type(), core::conformation::Residue::type(), core::conformation::Atom::xyz(), and core::conformation::Residue::xyz().
void core::scoring::methods::LK_hack::setup_for_derivatives | ( | pose::Pose & | pose, |
ScoreFunction const & | sfxn | ||
) | const [virtual] |
Called immediately before atom- and DOF-derivatives are calculated allowing the derived class a chance to prepare for future calls.
default implementation noop
Reimplemented from core::scoring::methods::EnergyMethod.
References core::scoring::lk_hack, core::pose::Pose::update_residue_neighbors(), and core::scoring::ScoreFunction::weights().