methods

Bindings for protocols::scoring::methods namespace

class pyrosetta.rosetta.protocols.scoring.methods.EnsembleEnergy

Bases: WholeStructureEnergy

assign(self: pyrosetta.rosetta.protocols.scoring.methods.EnsembleEnergy, : pyrosetta.rosetta.protocols.scoring.methods.EnsembleEnergy) pyrosetta.rosetta.protocols.scoring.methods.EnsembleEnergy

C++: protocols::scoring::methods::EnsembleEnergy::operator=(const class protocols::scoring::methods::EnsembleEnergy &) –> class protocols::scoring::methods::EnsembleEnergy &

atomic_interaction_cutoff(self: pyrosetta.rosetta.core.scoring.methods.WholeStructureEnergy) float

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().

This method allows the WholeStructureEnergy class to define which edges should be included in the EnergyGraph so that during the finalize() method the Energy class can iterate across the EnergyGraph. This iteration occurrs in the SecondaryStructureEnergy class, where the edges must span 12 angstroms between the centroids. Arguably, the SecondaryStructureEnergy class could use the TwelveANeighborGraph (a context graph) and not require that the EnergyGraph span such long distances.

C++: core::scoring::methods::WholeStructureEnergy::atomic_interaction_cutoff() const –> double

atomistic_energy(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, atmno: int, rsd: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, scorefxn: core::scoring::ScoreFunction, emap: core::scoring::EMapVector) None
Evaluate the (one body) energy associated with a particular atom

This may be a “self” energy, or it may be the single atom contribution from a whole structure term. NOTE: all the cautions of EnergyMethod::has_atomistic_energies() apply here. For most terms this is likely a no-op. Terms which implement this non-trivially should return true from has_atomistic_energies()

This is return-by-reference in the EnergyMap - Implementations should accumulate, not replace.

C++: core::scoring::methods::EnergyMethod::atomistic_energy(unsigned long, const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

atomistic_pair_energy(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, atmno1: int, rsd1: pyrosetta.rosetta.core.conformation.Residue, atomno2: int, rsd2: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, scorefxn: core::scoring::ScoreFunction, emap: core::scoring::EMapVector) None
Evaluate the energy for a particular pair of atoms

This function may be fed the same residue with different atom numbers NOTE: all the cautions of EnergyMethod::has_atomistic_energies() apply here. For most terms this is likely a no-op. Terms which implement this non-trivially should return true from has_atomistic_pairwise_energies()

This is return-by-reference in the EnergyMap - Implementations should accumulate, not replace.

C++: core::scoring::methods::EnergyMethod::atomistic_pair_energy(unsigned long, const class core::conformation::Residue &, unsigned long, const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

clone(self: pyrosetta.rosetta.protocols.scoring.methods.EnsembleEnergy) pyrosetta.rosetta.core.scoring.methods.EnergyMethod

clone

C++: protocols::scoring::methods::EnsembleEnergy::clone() const –> class std::shared_ptr<class core::scoring::methods::EnergyMethod>

defines_high_order_terms(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose) bool
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”.

C++: core::scoring::methods::EnergyMethod::defines_high_order_terms(const class core::pose::Pose &) const –> bool

eval_atom_derivative(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, id: pyrosetta.rosetta.core.id.AtomID, pose: core::pose::Pose, domain_map: pyrosetta.rosetta.ObjexxFCL.FArray1D_int_t, sfxn: core::scoring::ScoreFunction, emap: core::scoring::EMapVector, F1: pyrosetta.rosetta.numeric.xyzVector_double_t, F2: pyrosetta.rosetta.numeric.xyzVector_double_t) None
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.

C++: core::scoring::methods::EnergyMethod::eval_atom_derivative(const class core::id::AtomID &, const class core::pose::Pose &, const class ObjexxFCL::FArray1D<int> &, const class core::scoring::ScoreFunction &, const class core::scoring::EMapVector &, class numeric::xyzVector<double> &, class numeric::xyzVector<double> &) const –> void

finalize_after_derivatives(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : core::scoring::ScoreFunction) None

called at the end of derivatives evaluation

C++: core::scoring::methods::EnergyMethod::finalize_after_derivatives(class core::pose::Pose &, const class core::scoring::ScoreFunction &) const –> void

finalize_after_minimizing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose) None
Called after minimization, allowing a derived class to do some

teardown steps.

Base class function does nothing. Derived classes may override.

Vikram K. Mulligan (vmullig.edu).

C++: core::scoring::methods::EnergyMethod::finalize_after_minimizing(class core::pose::Pose &) const –> void

finalize_total_energy(self: pyrosetta.rosetta.protocols.scoring.methods.EnsembleEnergy, pose: pyrosetta.rosetta.core.pose.Pose, : pyrosetta.rosetta.core.scoring.ScoreFunction, emap: pyrosetta.rosetta.core.scoring.EMapVector) None

C++: protocols::scoring::methods::EnsembleEnergy::finalize_total_energy(class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

has_atomistic_energies(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod) bool
Does this EnergyMethod have a non-trivial implementation of the (one body) atomistic energy method?

Note that this may return false even if the score term theoretically could support atomistic energies. And even if this function returns true, it’s not necessarily the case that all atoms will get assigned an energy, or that the sum over all atoms (or atom pairs) will result in the same energy as the residue-level approach. The atomistic functions are intended for supplemental informational purposes only. The residue-level energies are the main interface for EnergyMethods.

C++: core::scoring::methods::EnergyMethod::has_atomistic_energies() const –> bool

has_atomistic_pairwise_energies(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod) bool
Does this EnergyMethod have a non-trivial implementation of the pairwise atomistic energy method?

NOTE: all the cautions of EnergyMethod::has_atomistic_energies() apply here.

C++: core::scoring::methods::EnergyMethod::has_atomistic_pairwise_energies() const –> bool

indicate_required_context_graphs(self: pyrosetta.rosetta.protocols.scoring.methods.EnsembleEnergy, : pyrosetta.rosetta.utility.vector1_bool) None

C++: protocols::scoring::methods::EnsembleEnergy::indicate_required_context_graphs(class utility::vector1<bool, class std::allocator<bool> > &) const –> void

method_type(self: pyrosetta.rosetta.core.scoring.methods.WholeStructureEnergy) pyrosetta.rosetta.core.scoring.methods.EnergyMethodType

C++: core::scoring::methods::WholeStructureEnergy::method_type() const –> enum core::scoring::methods::EnergyMethodType

minimize_in_whole_structure_context(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose) bool
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.

C++: core::scoring::methods::EnergyMethod::minimize_in_whole_structure_context(const class core::pose::Pose &) const –> bool

prepare_rotamers_for_packing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : pyrosetta.rosetta.core.conformation.RotamerSetBase) None
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.

C++: core::scoring::methods::EnergyMethod::prepare_rotamers_for_packing(const class core::pose::Pose &, class core::conformation::RotamerSetBase &) const –> void

provide_citation_info(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : pyrosetta.rosetta.basic.citation_manager.CitationCollectionList) None
Provide citations to the passed CitationCollectionList

Subclasses should add the info for themselves and any other classes they use.

The default implementation of this function does nothing. It may be overriden by energy methods wishing to provide citation information.

C++: core::scoring::methods::EnergyMethod::provide_citation_info(class basic::citation_manager::CitationCollectionList &) const –> void

requires_a_setup_for_scoring_for_residue_opportunity_during_regular_scoring(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose) bool
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

C++: core::scoring::methods::EnergyMethod::requires_a_setup_for_scoring_for_residue_opportunity_during_regular_scoring(const class core::pose::Pose &) const –> bool

score_types(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod) pyrosetta.rosetta.utility.vector1_core_scoring_ScoreType

Returns the score types that this energy method computes.

C++: core::scoring::methods::EnergyMethod::score_types() const –> const class utility::vector1<enum core::scoring::ScoreType, class std::allocator<enum core::scoring::ScoreType> > &

setup_for_derivatives(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction) None
Called immediately before atom- and DOF-derivatives are calculated

allowing the derived class a chance to prepare for future calls.

C++: core::scoring::methods::EnergyMethod::setup_for_derivatives(class core::pose::Pose &, const class core::scoring::ScoreFunction &) const –> void

setup_for_minimizing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : core::scoring::ScoreFunction, : core::kinematics::MinimizerMapBase) None
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.

C++: core::scoring::methods::EnergyMethod::setup_for_minimizing(class core::pose::Pose &, const class core::scoring::ScoreFunction &, const class core::kinematics::MinimizerMapBase &) const –> void

setup_for_packing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : pyrosetta.rosetta.utility.vector1_bool, : pyrosetta.rosetta.utility.vector1_bool) None
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.

C++: core::scoring::methods::EnergyMethod::setup_for_packing(class core::pose::Pose &, const class utility::vector1<bool, class std::allocator<bool> > &, const class utility::vector1<bool, class std::allocator<bool> > &) const –> void

setup_for_packing_with_rotsets(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose, rotsets: core::pack_basic::RotamerSetsBase, sfxn: core::scoring::ScoreFunction) None
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.

The exact order of events when setting up for packing are as follows:
  1. setup_for_packing() is called for all energy methods

  2. rotamers are built

  3. setup_for_packing_with_rotsets() is called for all energy methods

  4. prepare_rotamers_for_packing() is called for all energy methods

  5. The energy methods are asked to score all rotamers and rotamer pairs

  6. Annealing

The pose is specifically non-const here so that energy methods can store data in it

: Used in ApproximateBuriedUnsatPenalty to pre-compute compatible rotamers

C++: core::scoring::methods::EnergyMethod::setup_for_packing_with_rotsets(class core::pose::Pose &, const class std::shared_ptr<class core::pack_basic::RotamerSetsBase> &, const class core::scoring::ScoreFunction &) const –> void

setup_for_scoring(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : core::scoring::ScoreFunction) None
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.

C++: core::scoring::methods::EnergyMethod::setup_for_scoring(class core::pose::Pose &, const class core::scoring::ScoreFunction &) const –> void

setup_for_scoring_for_residue(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, rsd: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, residue_data_cache: pyrosetta.rosetta.basic.datacache.BasicDataCache) None
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.)

C++: core::scoring::methods::EnergyMethod::setup_for_scoring_for_residue(const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class basic::datacache::BasicDataCache &) const –> void

show_additional_info(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : pyrosetta.rosetta.std.ostream, : core::pose::Pose, : bool) None

show additional information of the energy method

C++: core::scoring::methods::EnergyMethod::show_additional_info(std::ostream &, class core::pose::Pose &, bool) const –> void

update_residue_for_packing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, resid: int) None
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.

C++: core::scoring::methods::EnergyMethod::update_residue_for_packing(class core::pose::Pose &, unsigned long) const –> void

version(self: pyrosetta.rosetta.protocols.scoring.methods.EnsembleEnergy) int

C++: protocols::scoring::methods::EnsembleEnergy::version() const –> unsigned long

class pyrosetta.rosetta.protocols.scoring.methods.EnsembleEnergyCreator

Bases: EnergyMethodCreator

assign(self: pyrosetta.rosetta.protocols.scoring.methods.EnsembleEnergyCreator, : pyrosetta.rosetta.protocols.scoring.methods.EnsembleEnergyCreator) pyrosetta.rosetta.protocols.scoring.methods.EnsembleEnergyCreator

C++: protocols::scoring::methods::EnsembleEnergyCreator::operator=(const class protocols::scoring::methods::EnsembleEnergyCreator &) –> class protocols::scoring::methods::EnsembleEnergyCreator &

create_energy_method(self: pyrosetta.rosetta.protocols.scoring.methods.EnsembleEnergyCreator, : pyrosetta.rosetta.core.scoring.methods.EnergyMethodOptions) pyrosetta.rosetta.core.scoring.methods.EnergyMethod

Instantiate a new EnsembleEnergy

C++: protocols::scoring::methods::EnsembleEnergyCreator::create_energy_method(const class core::scoring::methods::EnergyMethodOptions &) const –> class std::shared_ptr<class core::scoring::methods::EnergyMethod>

score_types_for_method(self: pyrosetta.rosetta.protocols.scoring.methods.EnsembleEnergyCreator) pyrosetta.rosetta.utility.vector1_core_scoring_ScoreType
Return the set of score types claimed by the EnergyMethod

this EnergyMethodCreator creates in its create_energy_method() function

C++: protocols::scoring::methods::EnsembleEnergyCreator::score_types_for_method() const –> class utility::vector1<enum core::scoring::ScoreType, class std::allocator<enum core::scoring::ScoreType> >

class pyrosetta.rosetta.protocols.scoring.methods.InterchainEnvEnergy

Bases: ContextDependentOneBodyEnergy

assign(self: pyrosetta.rosetta.core.scoring.methods.ContextDependentOneBodyEnergy, : pyrosetta.rosetta.core.scoring.methods.ContextDependentOneBodyEnergy) pyrosetta.rosetta.core.scoring.methods.ContextDependentOneBodyEnergy

C++: core::scoring::methods::ContextDependentOneBodyEnergy::operator=(const class core::scoring::methods::ContextDependentOneBodyEnergy &) –> class core::scoring::methods::ContextDependentOneBodyEnergy &

atomistic_energy(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, atmno: int, rsd: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, scorefxn: core::scoring::ScoreFunction, emap: core::scoring::EMapVector) None
Evaluate the (one body) energy associated with a particular atom

This may be a “self” energy, or it may be the single atom contribution from a whole structure term. NOTE: all the cautions of EnergyMethod::has_atomistic_energies() apply here. For most terms this is likely a no-op. Terms which implement this non-trivially should return true from has_atomistic_energies()

This is return-by-reference in the EnergyMap - Implementations should accumulate, not replace.

C++: core::scoring::methods::EnergyMethod::atomistic_energy(unsigned long, const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

atomistic_pair_energy(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, atmno1: int, rsd1: pyrosetta.rosetta.core.conformation.Residue, atomno2: int, rsd2: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, scorefxn: core::scoring::ScoreFunction, emap: core::scoring::EMapVector) None
Evaluate the energy for a particular pair of atoms

This function may be fed the same residue with different atom numbers NOTE: all the cautions of EnergyMethod::has_atomistic_energies() apply here. For most terms this is likely a no-op. Terms which implement this non-trivially should return true from has_atomistic_pairwise_energies()

This is return-by-reference in the EnergyMap - Implementations should accumulate, not replace.

C++: core::scoring::methods::EnergyMethod::atomistic_pair_energy(unsigned long, const class core::conformation::Residue &, unsigned long, const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

clone(self: pyrosetta.rosetta.protocols.scoring.methods.InterchainEnvEnergy) pyrosetta.rosetta.core.scoring.methods.EnergyMethod

clone

C++: protocols::scoring::methods::InterchainEnvEnergy::clone() const –> class std::shared_ptr<class core::scoring::methods::EnergyMethod>

defines_dof_derivatives(self: pyrosetta.rosetta.core.scoring.methods.OneBodyEnergy, p: core::pose::Pose) bool
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.

C++: core::scoring::methods::OneBodyEnergy::defines_dof_derivatives(const class core::pose::Pose &) const –> bool

defines_high_order_terms(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose) bool
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”.

C++: core::scoring::methods::EnergyMethod::defines_high_order_terms(const class core::pose::Pose &) const –> bool

defines_score_for_residue(self: pyrosetta.rosetta.core.scoring.methods.OneBodyEnergy, : pyrosetta.rosetta.core.conformation.Residue) bool
During minimization, energy methods are allowed to decide that they say nothing

about a particular residue (e.g. no non-zero energy) and as a result they will not be queried for a derivative or an energy. The default behavior is to return “true” for all residues.

C++: core::scoring::methods::OneBodyEnergy::defines_score_for_residue(const class core::conformation::Residue &) const –> bool

eval_atom_derivative(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, id: pyrosetta.rosetta.core.id.AtomID, pose: core::pose::Pose, domain_map: pyrosetta.rosetta.ObjexxFCL.FArray1D_int_t, sfxn: core::scoring::ScoreFunction, emap: core::scoring::EMapVector, F1: pyrosetta.rosetta.numeric.xyzVector_double_t, F2: pyrosetta.rosetta.numeric.xyzVector_double_t) None
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.

C++: core::scoring::methods::EnergyMethod::eval_atom_derivative(const class core::id::AtomID &, const class core::pose::Pose &, const class ObjexxFCL::FArray1D<int> &, const class core::scoring::ScoreFunction &, const class core::scoring::EMapVector &, class numeric::xyzVector<double> &, class numeric::xyzVector<double> &) const –> void

eval_residue_derivatives(self: pyrosetta.rosetta.core.scoring.methods.OneBodyEnergy, rsd: pyrosetta.rosetta.core.conformation.Residue, min_data: core::scoring::ResSingleMinimizationData, pose: core::pose::Pose, weights: core::scoring::EMapVector, atom_derivs: pyrosetta.rosetta.utility.vector1_core_scoring_DerivVectorPair) None
Evaluate the derivatives for all atoms on this residue and increment them

into the input atom_derivs vector1. The calling function must guarantee that setup for derivatives is called before this function is, and that the atom_derivs vector contains at least as many entries as there are atoms in the input Residue. This base class provides a default noop implementation of this function.

C++: core::scoring::methods::OneBodyEnergy::eval_residue_derivatives(const class core::conformation::Residue &, const class core::scoring::ResSingleMinimizationData &, const class core::pose::Pose &, const class core::scoring::EMapVector &, class utility::vector1<class core::scoring::DerivVectorPair, class std::allocator<class core::scoring::DerivVectorPair> > &) const –> void

eval_residue_dof_derivative(self: pyrosetta.rosetta.core.scoring.methods.OneBodyEnergy, rsd: pyrosetta.rosetta.core.conformation.Residue, min_data: core::scoring::ResSingleMinimizationData, dof_id: pyrosetta.rosetta.core.id.DOF_ID, torsion_id: core::id::TorsionID, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, weights: core::scoring::EMapVector) float
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.

C++: core::scoring::methods::OneBodyEnergy::eval_residue_dof_derivative(const class core::conformation::Residue &, const class core::scoring::ResSingleMinimizationData &, const class core::id::DOF_ID &, const class core::id::TorsionID &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, const class core::scoring::EMapVector &) const –> double

finalize_after_derivatives(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : core::scoring::ScoreFunction) None

called at the end of derivatives evaluation

C++: core::scoring::methods::EnergyMethod::finalize_after_derivatives(class core::pose::Pose &, const class core::scoring::ScoreFunction &) const –> void

finalize_after_minimizing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose) None
Called after minimization, allowing a derived class to do some

teardown steps.

Base class function does nothing. Derived classes may override.

Vikram K. Mulligan (vmullig.edu).

C++: core::scoring::methods::EnergyMethod::finalize_after_minimizing(class core::pose::Pose &) const –> void

finalize_total_energy(self: pyrosetta.rosetta.protocols.scoring.methods.InterchainEnvEnergy, pose: pyrosetta.rosetta.core.pose.Pose, : pyrosetta.rosetta.core.scoring.ScoreFunction, emap: pyrosetta.rosetta.core.scoring.EMapVector) None

C++: protocols::scoring::methods::InterchainEnvEnergy::finalize_total_energy(class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

has_atomistic_energies(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod) bool
Does this EnergyMethod have a non-trivial implementation of the (one body) atomistic energy method?

Note that this may return false even if the score term theoretically could support atomistic energies. And even if this function returns true, it’s not necessarily the case that all atoms will get assigned an energy, or that the sum over all atoms (or atom pairs) will result in the same energy as the residue-level approach. The atomistic functions are intended for supplemental informational purposes only. The residue-level energies are the main interface for EnergyMethods.

C++: core::scoring::methods::EnergyMethod::has_atomistic_energies() const –> bool

has_atomistic_pairwise_energies(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod) bool
Does this EnergyMethod have a non-trivial implementation of the pairwise atomistic energy method?

NOTE: all the cautions of EnergyMethod::has_atomistic_energies() apply here.

C++: core::scoring::methods::EnergyMethod::has_atomistic_pairwise_energies() const –> bool

indicate_required_context_graphs(self: pyrosetta.rosetta.protocols.scoring.methods.InterchainEnvEnergy, : pyrosetta.rosetta.utility.vector1_bool) None

C++: protocols::scoring::methods::InterchainEnvEnergy::indicate_required_context_graphs(class utility::vector1<bool, class std::allocator<bool> > &) const –> void

method_type(self: pyrosetta.rosetta.core.scoring.methods.ContextDependentOneBodyEnergy) pyrosetta.rosetta.core.scoring.methods.EnergyMethodType
Returns the cd_1b element of the EnergyMethodType enumeration; this method

should NOT be overridden by derived classes.

C++: core::scoring::methods::ContextDependentOneBodyEnergy::method_type() const –> enum core::scoring::methods::EnergyMethodType

minimize_in_whole_structure_context(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose) bool
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.

C++: core::scoring::methods::EnergyMethod::minimize_in_whole_structure_context(const class core::pose::Pose &) const –> bool

prepare_rotamers_for_packing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : pyrosetta.rosetta.core.conformation.RotamerSetBase) None
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.

C++: core::scoring::methods::EnergyMethod::prepare_rotamers_for_packing(const class core::pose::Pose &, class core::conformation::RotamerSetBase &) const –> void

provide_citation_info(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : pyrosetta.rosetta.basic.citation_manager.CitationCollectionList) None
Provide citations to the passed CitationCollectionList

Subclasses should add the info for themselves and any other classes they use.

The default implementation of this function does nothing. It may be overriden by energy methods wishing to provide citation information.

C++: core::scoring::methods::EnergyMethod::provide_citation_info(class basic::citation_manager::CitationCollectionList &) const –> void

requires_a_setup_for_derivatives_for_residue_opportunity(self: pyrosetta.rosetta.core.scoring.methods.OneBodyEnergy, pose: core::pose::Pose) bool
Does this EnergyMethod require the opportunity to examine the residue before derivative evaluation begins? Not

all energy methods would. The ScoreFunction will not ask energy methods to examine residues that are uninterested in doing so.

C++: core::scoring::methods::OneBodyEnergy::requires_a_setup_for_derivatives_for_residue_opportunity(const class core::pose::Pose &) const –> bool

requires_a_setup_for_scoring_for_residue_opportunity_during_minimization(self: pyrosetta.rosetta.core.scoring.methods.OneBodyEnergy, pose: core::pose::Pose) bool
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.

C++: core::scoring::methods::OneBodyEnergy::requires_a_setup_for_scoring_for_residue_opportunity_during_minimization(const class core::pose::Pose &) const –> bool

requires_a_setup_for_scoring_for_residue_opportunity_during_regular_scoring(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose) bool
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

C++: core::scoring::methods::EnergyMethod::requires_a_setup_for_scoring_for_residue_opportunity_during_regular_scoring(const class core::pose::Pose &) const –> bool

residue_energy(self: pyrosetta.rosetta.protocols.scoring.methods.InterchainEnvEnergy, rsd: pyrosetta.rosetta.core.conformation.Residue, : pyrosetta.rosetta.core.pose.Pose, : pyrosetta.rosetta.core.scoring.EMapVector) None

C++: protocols::scoring::methods::InterchainEnvEnergy::residue_energy(const class core::conformation::Residue &, const class core::pose::Pose &, class core::scoring::EMapVector &) const –> void

residue_energy_ext(self: pyrosetta.rosetta.core.scoring.methods.OneBodyEnergy, rsd: pyrosetta.rosetta.core.conformation.Residue, min_data: core::scoring::ResSingleMinimizationData, pose: core::pose::Pose, emap: core::scoring::EMapVector) None
Evaluate the one-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 one body energies into the input EnergyMap. 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 setup_for_minimizing_for_residue before this function is invoked. This function should not be called unless the use_extended_residue_energy_interface() method returns “true”. Default implementation provided by this base class calls utility::exit(). The Pose merely serves as context, and the input residue is not required to be a member of the Pose.

C++: core::scoring::methods::OneBodyEnergy::residue_energy_ext(const class core::conformation::Residue &, const class core::scoring::ResSingleMinimizationData &, const class core::pose::Pose &, class core::scoring::EMapVector &) const –> void

score_types(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod) pyrosetta.rosetta.utility.vector1_core_scoring_ScoreType

Returns the score types that this energy method computes.

C++: core::scoring::methods::EnergyMethod::score_types() const –> const class utility::vector1<enum core::scoring::ScoreType, class std::allocator<enum core::scoring::ScoreType> > &

setup_for_derivatives(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction) None
Called immediately before atom- and DOF-derivatives are calculated

allowing the derived class a chance to prepare for future calls.

C++: core::scoring::methods::EnergyMethod::setup_for_derivatives(class core::pose::Pose &, const class core::scoring::ScoreFunction &) const –> void

setup_for_derivatives_for_residue(self: pyrosetta.rosetta.core.scoring.methods.OneBodyEnergy, rsd: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, min_data: core::scoring::ResSingleMinimizationData, res_data_cache: pyrosetta.rosetta.basic.datacache.BasicDataCache) None

Do any setup work necessary before evaluating the derivatives for this residue

C++: core::scoring::methods::OneBodyEnergy::setup_for_derivatives_for_residue(const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::ResSingleMinimizationData &, class basic::datacache::BasicDataCache &) const –> void

setup_for_minimizing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : core::scoring::ScoreFunction, : core::kinematics::MinimizerMapBase) None
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.

C++: core::scoring::methods::EnergyMethod::setup_for_minimizing(class core::pose::Pose &, const class core::scoring::ScoreFunction &, const class core::kinematics::MinimizerMapBase &) const –> void

setup_for_minimizing_for_residue(self: pyrosetta.rosetta.core.scoring.methods.OneBodyEnergy, rsd: pyrosetta.rosetta.core.conformation.Residue, : core::pose::Pose, : core::scoring::ScoreFunction, : core::kinematics::MinimizerMapBase, : pyrosetta.rosetta.basic.datacache.BasicDataCache, : core::scoring::ResSingleMinimizationData) None
Called at the beginning of minimization, allowing this energy method to cache data

pertinent for a single residue in the the ResSingleMinimizationData 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. The Pose merely serves as context, and the input residue is not required to be a member of the Pose.

C++: core::scoring::methods::OneBodyEnergy::setup_for_minimizing_for_residue(const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, const class core::kinematics::MinimizerMapBase &, class basic::datacache::BasicDataCache &, class core::scoring::ResSingleMinimizationData &) const –> void

setup_for_packing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : pyrosetta.rosetta.utility.vector1_bool, : pyrosetta.rosetta.utility.vector1_bool) None
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.

C++: core::scoring::methods::EnergyMethod::setup_for_packing(class core::pose::Pose &, const class utility::vector1<bool, class std::allocator<bool> > &, const class utility::vector1<bool, class std::allocator<bool> > &) const –> void

setup_for_packing_with_rotsets(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose, rotsets: core::pack_basic::RotamerSetsBase, sfxn: core::scoring::ScoreFunction) None
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.

The exact order of events when setting up for packing are as follows:
  1. setup_for_packing() is called for all energy methods

  2. rotamers are built

  3. setup_for_packing_with_rotsets() is called for all energy methods

  4. prepare_rotamers_for_packing() is called for all energy methods

  5. The energy methods are asked to score all rotamers and rotamer pairs

  6. Annealing

The pose is specifically non-const here so that energy methods can store data in it

: Used in ApproximateBuriedUnsatPenalty to pre-compute compatible rotamers

C++: core::scoring::methods::EnergyMethod::setup_for_packing_with_rotsets(class core::pose::Pose &, const class std::shared_ptr<class core::pack_basic::RotamerSetsBase> &, const class core::scoring::ScoreFunction &) const –> void

setup_for_scoring(self: pyrosetta.rosetta.protocols.scoring.methods.InterchainEnvEnergy, pose: pyrosetta.rosetta.core.pose.Pose, : pyrosetta.rosetta.core.scoring.ScoreFunction) None

C++: protocols::scoring::methods::InterchainEnvEnergy::setup_for_scoring(class core::pose::Pose &, const class core::scoring::ScoreFunction &) const –> void

setup_for_scoring_for_residue(*args, **kwargs)

Overloaded function.

  1. setup_for_scoring_for_residue(self: pyrosetta.rosetta.core.scoring.methods.OneBodyEnergy, rsd: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, residue_data_cache: pyrosetta.rosetta.basic.datacache.BasicDataCache) -> None

  2. setup_for_scoring_for_residue(self: pyrosetta.rosetta.core.scoring.methods.OneBodyEnergy, rsd: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, min_data: core::scoring::ResSingleMinimizationData) -> None

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

C++: core::scoring::methods::OneBodyEnergy::setup_for_scoring_for_residue(const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::ResSingleMinimizationData &) const –> void

show_additional_info(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : pyrosetta.rosetta.std.ostream, : core::pose::Pose, : bool) None

show additional information of the energy method

C++: core::scoring::methods::EnergyMethod::show_additional_info(std::ostream &, class core::pose::Pose &, bool) const –> void

update_residue_for_packing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, resid: int) None
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.

C++: core::scoring::methods::EnergyMethod::update_residue_for_packing(class core::pose::Pose &, unsigned long) const –> void

use_extended_residue_energy_interface(self: pyrosetta.rosetta.core.scoring.methods.OneBodyEnergy) bool
Rely on the extended version of the residue_energy function during score-function

evaluation in minimization? The extended version (below) takes a ResSingleMinimizationData. Return ‘true’ for the extended version. The default method implemented in this class returns ‘false’

C++: core::scoring::methods::OneBodyEnergy::use_extended_residue_energy_interface() const –> bool

version(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod) int

Return the version of the energy method

C++: core::scoring::methods::EnergyMethod::version() const –> unsigned long

class pyrosetta.rosetta.protocols.scoring.methods.InterchainEnvEnergyCreator

Bases: EnergyMethodCreator

assign(self: pyrosetta.rosetta.protocols.scoring.methods.InterchainEnvEnergyCreator, : pyrosetta.rosetta.protocols.scoring.methods.InterchainEnvEnergyCreator) pyrosetta.rosetta.protocols.scoring.methods.InterchainEnvEnergyCreator

C++: protocols::scoring::methods::InterchainEnvEnergyCreator::operator=(const class protocols::scoring::methods::InterchainEnvEnergyCreator &) –> class protocols::scoring::methods::InterchainEnvEnergyCreator &

create_energy_method(self: pyrosetta.rosetta.protocols.scoring.methods.InterchainEnvEnergyCreator, : pyrosetta.rosetta.core.scoring.methods.EnergyMethodOptions) pyrosetta.rosetta.core.scoring.methods.EnergyMethod

Instantiate a new InterchainEnvEnergy

C++: protocols::scoring::methods::InterchainEnvEnergyCreator::create_energy_method(const class core::scoring::methods::EnergyMethodOptions &) const –> class std::shared_ptr<class core::scoring::methods::EnergyMethod>

score_types_for_method(self: pyrosetta.rosetta.protocols.scoring.methods.InterchainEnvEnergyCreator) pyrosetta.rosetta.utility.vector1_core_scoring_ScoreType
Return the set of score types claimed by the EnergyMethod

this EnergyMethodCreator creates in its create_energy_method() function

C++: protocols::scoring::methods::InterchainEnvEnergyCreator::score_types_for_method() const –> class utility::vector1<enum core::scoring::ScoreType, class std::allocator<enum core::scoring::ScoreType> >

class pyrosetta.rosetta.protocols.scoring.methods.InterchainPairEnergy

Bases: ContextIndependentTwoBodyEnergy

assign(self: pyrosetta.rosetta.core.scoring.methods.ContextIndependentTwoBodyEnergy, : pyrosetta.rosetta.core.scoring.methods.ContextIndependentTwoBodyEnergy) pyrosetta.rosetta.core.scoring.methods.ContextIndependentTwoBodyEnergy

C++: core::scoring::methods::ContextIndependentTwoBodyEnergy::operator=(const class core::scoring::methods::ContextIndependentTwoBodyEnergy &) –> class core::scoring::methods::ContextIndependentTwoBodyEnergy &

atomic_interaction_cutoff(self: pyrosetta.rosetta.protocols.scoring.methods.InterchainPairEnergy) float

C++: protocols::scoring::methods::InterchainPairEnergy::atomic_interaction_cutoff() const –> double

atomistic_energy(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, atmno: int, rsd: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, scorefxn: core::scoring::ScoreFunction, emap: core::scoring::EMapVector) None
Evaluate the (one body) energy associated with a particular atom

This may be a “self” energy, or it may be the single atom contribution from a whole structure term. NOTE: all the cautions of EnergyMethod::has_atomistic_energies() apply here. For most terms this is likely a no-op. Terms which implement this non-trivially should return true from has_atomistic_energies()

This is return-by-reference in the EnergyMap - Implementations should accumulate, not replace.

C++: core::scoring::methods::EnergyMethod::atomistic_energy(unsigned long, const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

atomistic_pair_energy(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, atmno1: int, rsd1: pyrosetta.rosetta.core.conformation.Residue, atomno2: int, rsd2: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, scorefxn: core::scoring::ScoreFunction, emap: core::scoring::EMapVector) None
Evaluate the energy for a particular pair of atoms

This function may be fed the same residue with different atom numbers NOTE: all the cautions of EnergyMethod::has_atomistic_energies() apply here. For most terms this is likely a no-op. Terms which implement this non-trivially should return true from has_atomistic_pairwise_energies()

This is return-by-reference in the EnergyMap - Implementations should accumulate, not replace.

C++: core::scoring::methods::EnergyMethod::atomistic_pair_energy(unsigned long, const class core::conformation::Residue &, unsigned long, const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

backbone_backbone_energy(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, rsd1: pyrosetta.rosetta.core.conformation.Residue, rsd2: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, emap: core::scoring::EMapVector) None
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.

C++: core::scoring::methods::TwoBodyEnergy::backbone_backbone_energy(const class core::conformation::Residue &, const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

backbone_sidechain_energy(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, rsd1: pyrosetta.rosetta.core.conformation.Residue, rsd2: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, emap: core::scoring::EMapVector) None
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.

C++: core::scoring::methods::TwoBodyEnergy::backbone_sidechain_energy(const class core::conformation::Residue &, const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

bump_energy_backbone(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, : pyrosetta.rosetta.core.conformation.Residue, : pyrosetta.rosetta.core.conformation.Residue, : core::pose::Pose, : core::scoring::ScoreFunction, : core::scoring::EMapVector) None

C++: core::scoring::methods::TwoBodyEnergy::bump_energy_backbone(const class core::conformation::Residue &, const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

bump_energy_full(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, : pyrosetta.rosetta.core.conformation.Residue, : pyrosetta.rosetta.core.conformation.Residue, : core::pose::Pose, : core::scoring::ScoreFunction, : core::scoring::EMapVector) None

C++: core::scoring::methods::TwoBodyEnergy::bump_energy_full(const class core::conformation::Residue &, const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

clone(self: pyrosetta.rosetta.protocols.scoring.methods.InterchainPairEnergy) pyrosetta.rosetta.core.scoring.methods.EnergyMethod

clone

C++: protocols::scoring::methods::InterchainPairEnergy::clone() const –> class std::shared_ptr<class core::scoring::methods::EnergyMethod>

defines_high_order_terms(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose) bool
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”.

C++: core::scoring::methods::EnergyMethod::defines_high_order_terms(const class core::pose::Pose &) const –> bool

defines_intrares_dof_derivatives(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, p: core::pose::Pose) bool
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.

C++: core::scoring::methods::TwoBodyEnergy::defines_intrares_dof_derivatives(const class core::pose::Pose &) const –> bool

defines_intrares_energy(self: pyrosetta.rosetta.protocols.scoring.methods.InterchainPairEnergy, : pyrosetta.rosetta.core.scoring.EMapVector) bool

This method should admit to defining intraresidue energies

C++: protocols::scoring::methods::InterchainPairEnergy::defines_intrares_energy(const class core::scoring::EMapVector &) const –> bool

defines_intrares_energy_for_residue(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, res: pyrosetta.rosetta.core.conformation.Residue) bool
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.

C++: core::scoring::methods::TwoBodyEnergy::defines_intrares_energy_for_residue(const class core::conformation::Residue &) const –> bool

defines_score_for_residue_pair(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, res1: pyrosetta.rosetta.core.conformation.Residue, res2: pyrosetta.rosetta.core.conformation.Residue, res_moving_wrt_eachother: bool) bool
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.

C++: core::scoring::methods::TwoBodyEnergy::defines_score_for_residue_pair(const class core::conformation::Residue &, const class core::conformation::Residue &, bool) const –> bool

divides_backbone_and_sidechain_energetics(self: pyrosetta.rosetta.core.scoring.methods.ShortRangeTwoBodyEnergy) bool
A derived class should return true for this function if it implements its own

versions of the backbone_backbone_energy, backbone_sidechain_energy and sidechain_sidechain_energy functions. The default sidechain_sidechain_energy implemented by the TwoBodyEnergy base class calls residue_pair_energy. If the derived class implements its own versions of these functions, then calling code may avoid calling it on pairs of residues that are “provably distant” based on a pair of bounding spheres for a sidechains and backbones and this method’s atomic_interaction_cutoff energy method.

C++: core::scoring::methods::ShortRangeTwoBodyEnergy::divides_backbone_and_sidechain_energetics() const –> bool

eval_atom_derivative(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, id: pyrosetta.rosetta.core.id.AtomID, pose: core::pose::Pose, domain_map: pyrosetta.rosetta.ObjexxFCL.FArray1D_int_t, sfxn: core::scoring::ScoreFunction, emap: core::scoring::EMapVector, F1: pyrosetta.rosetta.numeric.xyzVector_double_t, F2: pyrosetta.rosetta.numeric.xyzVector_double_t) None
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.

C++: core::scoring::methods::EnergyMethod::eval_atom_derivative(const class core::id::AtomID &, const class core::pose::Pose &, const class ObjexxFCL::FArray1D<int> &, const class core::scoring::ScoreFunction &, const class core::scoring::EMapVector &, class numeric::xyzVector<double> &, class numeric::xyzVector<double> &) const –> void

eval_intrares_derivatives(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, rsd: pyrosetta.rosetta.core.conformation.Residue, min_data: core::scoring::ResSingleMinimizationData, pose: core::pose::Pose, weights: core::scoring::EMapVector, atom_derivs: pyrosetta.rosetta.utility.vector1_core_scoring_DerivVectorPair) None
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.

C++: core::scoring::methods::TwoBodyEnergy::eval_intrares_derivatives(const class core::conformation::Residue &, const class core::scoring::ResSingleMinimizationData &, const class core::pose::Pose &, const class core::scoring::EMapVector &, class utility::vector1<class core::scoring::DerivVectorPair, class std::allocator<class core::scoring::DerivVectorPair> > &) const –> void

eval_intrares_energy(self: pyrosetta.rosetta.protocols.scoring.methods.InterchainPairEnergy, : pyrosetta.rosetta.core.conformation.Residue, : pyrosetta.rosetta.core.pose.Pose, : pyrosetta.rosetta.core.scoring.ScoreFunction, : pyrosetta.rosetta.core.scoring.EMapVector) None

C++: protocols::scoring::methods::InterchainPairEnergy::eval_intrares_energy(const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

eval_intrares_energy_ext(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, rsd: pyrosetta.rosetta.core.conformation.Residue, data_cache: core::scoring::ResSingleMinimizationData, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, emap: core::scoring::EMapVector) None
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.

C++: core::scoring::methods::TwoBodyEnergy::eval_intrares_energy_ext(const class core::conformation::Residue &, const class core::scoring::ResSingleMinimizationData &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

eval_intraresidue_dof_derivative(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, rsd: pyrosetta.rosetta.core.conformation.Residue, min_data: core::scoring::ResSingleMinimizationData, dof_id: pyrosetta.rosetta.core.id.DOF_ID, torsion_id: core::id::TorsionID, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, weights: core::scoring::EMapVector) float
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.

C++: core::scoring::methods::TwoBodyEnergy::eval_intraresidue_dof_derivative(const class core::conformation::Residue &, const class core::scoring::ResSingleMinimizationData &, const class core::id::DOF_ID &, const class core::id::TorsionID &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, const class core::scoring::EMapVector &) const –> double

eval_residue_pair_derivatives(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, rsd1: pyrosetta.rosetta.core.conformation.Residue, rsd2: pyrosetta.rosetta.core.conformation.Residue, : core::scoring::ResSingleMinimizationData, : core::scoring::ResSingleMinimizationData, min_data: core::scoring::ResPairMinimizationData, pose: core::pose::Pose, weights: core::scoring::EMapVector, r1_atom_derivs: pyrosetta.rosetta.utility.vector1_core_scoring_DerivVectorPair, r2_atom_derivs: pyrosetta.rosetta.utility.vector1_core_scoring_DerivVectorPair) None
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.

C++: core::scoring::methods::TwoBodyEnergy::eval_residue_pair_derivatives(const class core::conformation::Residue &, const class core::conformation::Residue &, const class core::scoring::ResSingleMinimizationData &, const class core::scoring::ResSingleMinimizationData &, const class core::scoring::ResPairMinimizationData &, const class core::pose::Pose &, const class core::scoring::EMapVector &, class utility::vector1<class core::scoring::DerivVectorPair, class std::allocator<class core::scoring::DerivVectorPair> > &, class utility::vector1<class core::scoring::DerivVectorPair, class std::allocator<class core::scoring::DerivVectorPair> > &) const –> void

evaluate_rotamer_background_energies(self: pyrosetta.rosetta.core.scoring.methods.ShortRangeTwoBodyEnergy, set: pyrosetta.rosetta.core.conformation.RotamerSetBase, residue: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, weights: core::scoring::EMapVector, energy_vector: pyrosetta.rosetta.utility.vector1_float) None
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

C++: core::scoring::methods::ShortRangeTwoBodyEnergy::evaluate_rotamer_background_energies(const class core::conformation::RotamerSetBase &, const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, const class core::scoring::EMapVector &, class utility::vector1<float, class std::allocator<float> > &) const –> void

evaluate_rotamer_background_energy_maps(self: pyrosetta.rosetta.core.scoring.methods.ShortRangeTwoBodyEnergy, set: pyrosetta.rosetta.core.conformation.RotamerSetBase, residue: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, weights: core::scoring::EMapVector, emaps: pyrosetta.rosetta.utility.vector1_core_scoring_EMapVector) None
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

C++: core::scoring::methods::ShortRangeTwoBodyEnergy::evaluate_rotamer_background_energy_maps(const class core::conformation::RotamerSetBase &, const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, const class core::scoring::EMapVector &, class utility::vector1<class core::scoring::EMapVector, class std::allocator<class core::scoring::EMapVector> > &) const –> void

evaluate_rotamer_intrares_energies(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, set: pyrosetta.rosetta.core.conformation.RotamerSetBase, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, energies: pyrosetta.rosetta.utility.vector1_float) None
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.

C++: core::scoring::methods::TwoBodyEnergy::evaluate_rotamer_intrares_energies(const class core::conformation::RotamerSetBase &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class utility::vector1<float, class std::allocator<float> > &) const –> void

evaluate_rotamer_intrares_energy_maps(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, set: pyrosetta.rosetta.core.conformation.RotamerSetBase, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, emaps: pyrosetta.rosetta.utility.vector1_core_scoring_EMapVector) None
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.

C++: core::scoring::methods::TwoBodyEnergy::evaluate_rotamer_intrares_energy_maps(const class core::conformation::RotamerSetBase &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class utility::vector1<class core::scoring::EMapVector, class std::allocator<class core::scoring::EMapVector> > &) const –> void

evaluate_rotamer_pair_energies(self: pyrosetta.rosetta.core.scoring.methods.ShortRangeTwoBodyEnergy, set1: pyrosetta.rosetta.core.conformation.RotamerSetBase, set2: pyrosetta.rosetta.core.conformation.RotamerSetBase, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, weights: core::scoring::EMapVector, energy_table: pyrosetta.rosetta.ObjexxFCL.FArray2D_float_t) None
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

C++: core::scoring::methods::ShortRangeTwoBodyEnergy::evaluate_rotamer_pair_energies(const class core::conformation::RotamerSetBase &, const class core::conformation::RotamerSetBase &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, const class core::scoring::EMapVector &, class ObjexxFCL::FArray2D<float> &) const –> void

finalize_after_derivatives(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : core::scoring::ScoreFunction) None

called at the end of derivatives evaluation

C++: core::scoring::methods::EnergyMethod::finalize_after_derivatives(class core::pose::Pose &, const class core::scoring::ScoreFunction &) const –> void

finalize_after_minimizing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose) None
Called after minimization, allowing a derived class to do some

teardown steps.

Base class function does nothing. Derived classes may override.

Vikram K. Mulligan (vmullig.edu).

C++: core::scoring::methods::EnergyMethod::finalize_after_minimizing(class core::pose::Pose &) const –> void

finalize_total_energy(self: pyrosetta.rosetta.protocols.scoring.methods.InterchainPairEnergy, pose: pyrosetta.rosetta.core.pose.Pose, : pyrosetta.rosetta.core.scoring.ScoreFunction, : pyrosetta.rosetta.core.scoring.EMapVector) None

C++: protocols::scoring::methods::InterchainPairEnergy::finalize_total_energy(class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

has_atomistic_energies(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod) bool
Does this EnergyMethod have a non-trivial implementation of the (one body) atomistic energy method?

Note that this may return false even if the score term theoretically could support atomistic energies. And even if this function returns true, it’s not necessarily the case that all atoms will get assigned an energy, or that the sum over all atoms (or atom pairs) will result in the same energy as the residue-level approach. The atomistic functions are intended for supplemental informational purposes only. The residue-level energies are the main interface for EnergyMethods.

C++: core::scoring::methods::EnergyMethod::has_atomistic_energies() const –> bool

has_atomistic_pairwise_energies(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod) bool
Does this EnergyMethod have a non-trivial implementation of the pairwise atomistic energy method?

NOTE: all the cautions of EnergyMethod::has_atomistic_energies() apply here.

C++: core::scoring::methods::EnergyMethod::has_atomistic_pairwise_energies() const –> bool

indicate_required_context_graphs(self: pyrosetta.rosetta.protocols.scoring.methods.InterchainPairEnergy, : pyrosetta.rosetta.utility.vector1_bool) None

C++: protocols::scoring::methods::InterchainPairEnergy::indicate_required_context_graphs(class utility::vector1<bool, class std::allocator<bool> > &) const –> void

method_type(self: pyrosetta.rosetta.core.scoring.methods.ContextIndependentTwoBodyEnergy) pyrosetta.rosetta.core.scoring.methods.EnergyMethodType

C++: core::scoring::methods::ContextIndependentTwoBodyEnergy::method_type() const –> enum core::scoring::methods::EnergyMethodType

minimize_in_whole_structure_context(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose) bool
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.

C++: core::scoring::methods::EnergyMethod::minimize_in_whole_structure_context(const class core::pose::Pose &) const –> bool

prepare_rotamers_for_packing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : pyrosetta.rosetta.core.conformation.RotamerSetBase) None
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.

C++: core::scoring::methods::EnergyMethod::prepare_rotamers_for_packing(const class core::pose::Pose &, class core::conformation::RotamerSetBase &) const –> void

provide_citation_info(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : pyrosetta.rosetta.basic.citation_manager.CitationCollectionList) None
Provide citations to the passed CitationCollectionList

Subclasses should add the info for themselves and any other classes they use.

The default implementation of this function does nothing. It may be overriden by energy methods wishing to provide citation information.

C++: core::scoring::methods::EnergyMethod::provide_citation_info(class basic::citation_manager::CitationCollectionList &) const –> void

requires_a_setup_for_derivatives_for_residue_opportunity(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, pose: core::pose::Pose) bool
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.

C++: core::scoring::methods::TwoBodyEnergy::requires_a_setup_for_derivatives_for_residue_opportunity(const class core::pose::Pose &) const –> bool

requires_a_setup_for_derivatives_for_residue_pair_opportunity(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, pose: core::pose::Pose) bool
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.

C++: core::scoring::methods::TwoBodyEnergy::requires_a_setup_for_derivatives_for_residue_pair_opportunity(const class core::pose::Pose &) const –> bool

requires_a_setup_for_scoring_for_residue_opportunity_during_minimization(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, pose: core::pose::Pose) bool
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.

C++: core::scoring::methods::TwoBodyEnergy::requires_a_setup_for_scoring_for_residue_opportunity_during_minimization(const class core::pose::Pose &) const –> bool

requires_a_setup_for_scoring_for_residue_opportunity_during_regular_scoring(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose) bool
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

C++: core::scoring::methods::EnergyMethod::requires_a_setup_for_scoring_for_residue_opportunity_during_regular_scoring(const class core::pose::Pose &) const –> bool

requires_a_setup_for_scoring_for_residue_pair_opportunity(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, pose: core::pose::Pose) bool
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.

C++: core::scoring::methods::TwoBodyEnergy::requires_a_setup_for_scoring_for_residue_pair_opportunity(const class core::pose::Pose &) const –> bool

residue_pair_energy(self: pyrosetta.rosetta.protocols.scoring.methods.InterchainPairEnergy, rsd1: pyrosetta.rosetta.core.conformation.Residue, rsd2: pyrosetta.rosetta.core.conformation.Residue, : pyrosetta.rosetta.core.pose.Pose, : pyrosetta.rosetta.core.scoring.ScoreFunction, emap: pyrosetta.rosetta.core.scoring.EMapVector) None

C++: protocols::scoring::methods::InterchainPairEnergy::residue_pair_energy(const class core::conformation::Residue &, const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

residue_pair_energy_ext(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, rsd1: pyrosetta.rosetta.core.conformation.Residue, rsd2: pyrosetta.rosetta.core.conformation.Residue, min_data: core::scoring::ResPairMinimizationData, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, emap: core::scoring::EMapVector) None
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().

C++: core::scoring::methods::TwoBodyEnergy::residue_pair_energy_ext(const class core::conformation::Residue &, const class core::conformation::Residue &, const class core::scoring::ResPairMinimizationData &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

score_types(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod) pyrosetta.rosetta.utility.vector1_core_scoring_ScoreType

Returns the score types that this energy method computes.

C++: core::scoring::methods::EnergyMethod::score_types() const –> const class utility::vector1<enum core::scoring::ScoreType, class std::allocator<enum core::scoring::ScoreType> > &

setup_for_derivatives(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction) None
Called immediately before atom- and DOF-derivatives are calculated

allowing the derived class a chance to prepare for future calls.

C++: core::scoring::methods::EnergyMethod::setup_for_derivatives(class core::pose::Pose &, const class core::scoring::ScoreFunction &) const –> void

setup_for_derivatives_for_residue(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, rsd: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, min_data: core::scoring::ResSingleMinimizationData, res_data_cache: pyrosetta.rosetta.basic.datacache.BasicDataCache) None

Do any setup work necessary before evaluating the derivatives for this residue

C++: core::scoring::methods::TwoBodyEnergy::setup_for_derivatives_for_residue(const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::ResSingleMinimizationData &, class basic::datacache::BasicDataCache &) const –> void

setup_for_derivatives_for_residue_pair(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, rsd1: pyrosetta.rosetta.core.conformation.Residue, rsd2: pyrosetta.rosetta.core.conformation.Residue, minsingle_data1: core::scoring::ResSingleMinimizationData, minsingle_data2: core::scoring::ResSingleMinimizationData, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, data_cache: core::scoring::ResPairMinimizationData) None

Do any setup work necessary before evaluating the derivatives for this residue pair

C++: core::scoring::methods::TwoBodyEnergy::setup_for_derivatives_for_residue_pair(const class core::conformation::Residue &, const class core::conformation::Residue &, const class core::scoring::ResSingleMinimizationData &, const class core::scoring::ResSingleMinimizationData &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::ResPairMinimizationData &) const –> void

setup_for_minimizing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : core::scoring::ScoreFunction, : core::kinematics::MinimizerMapBase) None
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.

C++: core::scoring::methods::EnergyMethod::setup_for_minimizing(class core::pose::Pose &, const class core::scoring::ScoreFunction &, const class core::kinematics::MinimizerMapBase &) const –> void

setup_for_minimizing_for_residue(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, rsd: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, minmap: core::kinematics::MinimizerMapBase, residue_data_cache: pyrosetta.rosetta.basic.datacache.BasicDataCache, res_data_cache: core::scoring::ResSingleMinimizationData) None
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.

C++: core::scoring::methods::TwoBodyEnergy::setup_for_minimizing_for_residue(const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, const class core::kinematics::MinimizerMapBase &, class basic::datacache::BasicDataCache &, class core::scoring::ResSingleMinimizationData &) const –> void

setup_for_minimizing_for_residue_pair(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, rsd1: pyrosetta.rosetta.core.conformation.Residue, rsd2: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, minmap: core::kinematics::MinimizerMapBase, res1_data_cache: core::scoring::ResSingleMinimizationData, res2_data_cache: core::scoring::ResSingleMinimizationData, data_cache: core::scoring::ResPairMinimizationData) None
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.

C++: core::scoring::methods::TwoBodyEnergy::setup_for_minimizing_for_residue_pair(const class core::conformation::Residue &, const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, const class core::kinematics::MinimizerMapBase &, const class core::scoring::ResSingleMinimizationData &, const class core::scoring::ResSingleMinimizationData &, class core::scoring::ResPairMinimizationData &) const –> void

setup_for_packing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : pyrosetta.rosetta.utility.vector1_bool, : pyrosetta.rosetta.utility.vector1_bool) None
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.

C++: core::scoring::methods::EnergyMethod::setup_for_packing(class core::pose::Pose &, const class utility::vector1<bool, class std::allocator<bool> > &, const class utility::vector1<bool, class std::allocator<bool> > &) const –> void

setup_for_packing_with_rotsets(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose, rotsets: core::pack_basic::RotamerSetsBase, sfxn: core::scoring::ScoreFunction) None
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.

The exact order of events when setting up for packing are as follows:
  1. setup_for_packing() is called for all energy methods

  2. rotamers are built

  3. setup_for_packing_with_rotsets() is called for all energy methods

  4. prepare_rotamers_for_packing() is called for all energy methods

  5. The energy methods are asked to score all rotamers and rotamer pairs

  6. Annealing

The pose is specifically non-const here so that energy methods can store data in it

: Used in ApproximateBuriedUnsatPenalty to pre-compute compatible rotamers

C++: core::scoring::methods::EnergyMethod::setup_for_packing_with_rotsets(class core::pose::Pose &, const class std::shared_ptr<class core::pack_basic::RotamerSetsBase> &, const class core::scoring::ScoreFunction &) const –> void

setup_for_scoring(self: pyrosetta.rosetta.protocols.scoring.methods.InterchainPairEnergy, pose: pyrosetta.rosetta.core.pose.Pose, : pyrosetta.rosetta.core.scoring.ScoreFunction) None

C++: protocols::scoring::methods::InterchainPairEnergy::setup_for_scoring(class core::pose::Pose &, const class core::scoring::ScoreFunction &) const –> void

setup_for_scoring_for_residue(*args, **kwargs)

Overloaded function.

  1. setup_for_scoring_for_residue(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, rsd: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, residue_data_cache: pyrosetta.rosetta.basic.datacache.BasicDataCache) -> None

  2. setup_for_scoring_for_residue(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, rsd: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, min_data: core::scoring::ResSingleMinimizationData) -> None

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

C++: core::scoring::methods::TwoBodyEnergy::setup_for_scoring_for_residue(const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::ResSingleMinimizationData &) const –> void

setup_for_scoring_for_residue_pair(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, rsd1: pyrosetta.rosetta.core.conformation.Residue, rsd2: pyrosetta.rosetta.core.conformation.Residue, minsingle_data1: core::scoring::ResSingleMinimizationData, minsingle_data2: core::scoring::ResSingleMinimizationData, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, data_cache: core::scoring::ResPairMinimizationData) None
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

C++: core::scoring::methods::TwoBodyEnergy::setup_for_scoring_for_residue_pair(const class core::conformation::Residue &, const class core::conformation::Residue &, const class core::scoring::ResSingleMinimizationData &, const class core::scoring::ResSingleMinimizationData &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::ResPairMinimizationData &) const –> void

show_additional_info(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : pyrosetta.rosetta.std.ostream, : core::pose::Pose, : bool) None

show additional information of the energy method

C++: core::scoring::methods::EnergyMethod::show_additional_info(std::ostream &, class core::pose::Pose &, bool) const –> void

sidechain_sidechain_energy(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy, rsd1: pyrosetta.rosetta.core.conformation.Residue, rsd2: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, emap: core::scoring::EMapVector) None
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.

C++: core::scoring::methods::TwoBodyEnergy::sidechain_sidechain_energy(const class core::conformation::Residue &, const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

update_residue_for_packing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, resid: int) None
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.

C++: core::scoring::methods::EnergyMethod::update_residue_for_packing(class core::pose::Pose &, unsigned long) const –> void

use_extended_intrares_energy_interface(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy) bool
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.

C++: core::scoring::methods::TwoBodyEnergy::use_extended_intrares_energy_interface() const –> bool

use_extended_residue_pair_energy_interface(self: pyrosetta.rosetta.core.scoring.methods.TwoBodyEnergy) bool
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’

C++: core::scoring::methods::TwoBodyEnergy::use_extended_residue_pair_energy_interface() const –> bool

version(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod) int

Return the version of the energy method

C++: core::scoring::methods::EnergyMethod::version() const –> unsigned long

class pyrosetta.rosetta.protocols.scoring.methods.InterchainPairEnergyCreator

Bases: EnergyMethodCreator

assign(self: pyrosetta.rosetta.protocols.scoring.methods.InterchainPairEnergyCreator, : pyrosetta.rosetta.protocols.scoring.methods.InterchainPairEnergyCreator) pyrosetta.rosetta.protocols.scoring.methods.InterchainPairEnergyCreator

C++: protocols::scoring::methods::InterchainPairEnergyCreator::operator=(const class protocols::scoring::methods::InterchainPairEnergyCreator &) –> class protocols::scoring::methods::InterchainPairEnergyCreator &

create_energy_method(self: pyrosetta.rosetta.protocols.scoring.methods.InterchainPairEnergyCreator, : pyrosetta.rosetta.core.scoring.methods.EnergyMethodOptions) pyrosetta.rosetta.core.scoring.methods.EnergyMethod

Instantiate a new InterchainPairEnergy

C++: protocols::scoring::methods::InterchainPairEnergyCreator::create_energy_method(const class core::scoring::methods::EnergyMethodOptions &) const –> class std::shared_ptr<class core::scoring::methods::EnergyMethod>

score_types_for_method(self: pyrosetta.rosetta.protocols.scoring.methods.InterchainPairEnergyCreator) pyrosetta.rosetta.utility.vector1_core_scoring_ScoreType
Return the set of score types claimed by the EnergyMethod

this EnergyMethodCreator creates in its create_energy_method() function

C++: protocols::scoring::methods::InterchainPairEnergyCreator::score_types_for_method() const –> class utility::vector1<enum core::scoring::ScoreType, class std::allocator<enum core::scoring::ScoreType> >

class pyrosetta.rosetta.protocols.scoring.methods.ResidualDipolarCouplingEnergyRigidSegments

Bases: WholeStructureEnergy

assign(self: pyrosetta.rosetta.protocols.scoring.methods.ResidualDipolarCouplingEnergyRigidSegments, : pyrosetta.rosetta.protocols.scoring.methods.ResidualDipolarCouplingEnergyRigidSegments) pyrosetta.rosetta.protocols.scoring.methods.ResidualDipolarCouplingEnergyRigidSegments

C++: protocols::scoring::methods::ResidualDipolarCouplingEnergyRigidSegments::operator=(const class protocols::scoring::methods::ResidualDipolarCouplingEnergyRigidSegments &) –> class protocols::scoring::methods::ResidualDipolarCouplingEnergyRigidSegments &

atomic_interaction_cutoff(self: pyrosetta.rosetta.core.scoring.methods.WholeStructureEnergy) float

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().

This method allows the WholeStructureEnergy class to define which edges should be included in the EnergyGraph so that during the finalize() method the Energy class can iterate across the EnergyGraph. This iteration occurrs in the SecondaryStructureEnergy class, where the edges must span 12 angstroms between the centroids. Arguably, the SecondaryStructureEnergy class could use the TwelveANeighborGraph (a context graph) and not require that the EnergyGraph span such long distances.

C++: core::scoring::methods::WholeStructureEnergy::atomic_interaction_cutoff() const –> double

atomistic_energy(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, atmno: int, rsd: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, scorefxn: core::scoring::ScoreFunction, emap: core::scoring::EMapVector) None
Evaluate the (one body) energy associated with a particular atom

This may be a “self” energy, or it may be the single atom contribution from a whole structure term. NOTE: all the cautions of EnergyMethod::has_atomistic_energies() apply here. For most terms this is likely a no-op. Terms which implement this non-trivially should return true from has_atomistic_energies()

This is return-by-reference in the EnergyMap - Implementations should accumulate, not replace.

C++: core::scoring::methods::EnergyMethod::atomistic_energy(unsigned long, const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

atomistic_pair_energy(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, atmno1: int, rsd1: pyrosetta.rosetta.core.conformation.Residue, atomno2: int, rsd2: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, scorefxn: core::scoring::ScoreFunction, emap: core::scoring::EMapVector) None
Evaluate the energy for a particular pair of atoms

This function may be fed the same residue with different atom numbers NOTE: all the cautions of EnergyMethod::has_atomistic_energies() apply here. For most terms this is likely a no-op. Terms which implement this non-trivially should return true from has_atomistic_pairwise_energies()

This is return-by-reference in the EnergyMap - Implementations should accumulate, not replace.

C++: core::scoring::methods::EnergyMethod::atomistic_pair_energy(unsigned long, const class core::conformation::Residue &, unsigned long, const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

clone(self: pyrosetta.rosetta.protocols.scoring.methods.ResidualDipolarCouplingEnergyRigidSegments) pyrosetta.rosetta.core.scoring.methods.EnergyMethod

C++: protocols::scoring::methods::ResidualDipolarCouplingEnergyRigidSegments::clone() const –> class std::shared_ptr<class core::scoring::methods::EnergyMethod>

defines_high_order_terms(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose) bool
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”.

C++: core::scoring::methods::EnergyMethod::defines_high_order_terms(const class core::pose::Pose &) const –> bool

eval_atom_derivative(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, id: pyrosetta.rosetta.core.id.AtomID, pose: core::pose::Pose, domain_map: pyrosetta.rosetta.ObjexxFCL.FArray1D_int_t, sfxn: core::scoring::ScoreFunction, emap: core::scoring::EMapVector, F1: pyrosetta.rosetta.numeric.xyzVector_double_t, F2: pyrosetta.rosetta.numeric.xyzVector_double_t) None
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.

C++: core::scoring::methods::EnergyMethod::eval_atom_derivative(const class core::id::AtomID &, const class core::pose::Pose &, const class ObjexxFCL::FArray1D<int> &, const class core::scoring::ScoreFunction &, const class core::scoring::EMapVector &, class numeric::xyzVector<double> &, class numeric::xyzVector<double> &) const –> void

finalize_after_derivatives(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : core::scoring::ScoreFunction) None

called at the end of derivatives evaluation

C++: core::scoring::methods::EnergyMethod::finalize_after_derivatives(class core::pose::Pose &, const class core::scoring::ScoreFunction &) const –> void

finalize_after_minimizing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose) None
Called after minimization, allowing a derived class to do some

teardown steps.

Base class function does nothing. Derived classes may override.

Vikram K. Mulligan (vmullig.edu).

C++: core::scoring::methods::EnergyMethod::finalize_after_minimizing(class core::pose::Pose &) const –> void

finalize_total_energy(self: pyrosetta.rosetta.protocols.scoring.methods.ResidualDipolarCouplingEnergyRigidSegments, pose: pyrosetta.rosetta.core.pose.Pose, : pyrosetta.rosetta.core.scoring.ScoreFunction, totals: pyrosetta.rosetta.core.scoring.EMapVector) None

C++: protocols::scoring::methods::ResidualDipolarCouplingEnergyRigidSegments::finalize_total_energy(class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

has_atomistic_energies(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod) bool
Does this EnergyMethod have a non-trivial implementation of the (one body) atomistic energy method?

Note that this may return false even if the score term theoretically could support atomistic energies. And even if this function returns true, it’s not necessarily the case that all atoms will get assigned an energy, or that the sum over all atoms (or atom pairs) will result in the same energy as the residue-level approach. The atomistic functions are intended for supplemental informational purposes only. The residue-level energies are the main interface for EnergyMethods.

C++: core::scoring::methods::EnergyMethod::has_atomistic_energies() const –> bool

has_atomistic_pairwise_energies(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod) bool
Does this EnergyMethod have a non-trivial implementation of the pairwise atomistic energy method?

NOTE: all the cautions of EnergyMethod::has_atomistic_energies() apply here.

C++: core::scoring::methods::EnergyMethod::has_atomistic_pairwise_energies() const –> bool

indicate_required_context_graphs(self: pyrosetta.rosetta.protocols.scoring.methods.ResidualDipolarCouplingEnergyRigidSegments, : pyrosetta.rosetta.utility.vector1_bool) None

C++: protocols::scoring::methods::ResidualDipolarCouplingEnergyRigidSegments::indicate_required_context_graphs(class utility::vector1<bool, class std::allocator<bool> > &) const –> void

method_type(self: pyrosetta.rosetta.core.scoring.methods.WholeStructureEnergy) pyrosetta.rosetta.core.scoring.methods.EnergyMethodType

C++: core::scoring::methods::WholeStructureEnergy::method_type() const –> enum core::scoring::methods::EnergyMethodType

minimize_in_whole_structure_context(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose) bool
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.

C++: core::scoring::methods::EnergyMethod::minimize_in_whole_structure_context(const class core::pose::Pose &) const –> bool

prepare_rotamers_for_packing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : pyrosetta.rosetta.core.conformation.RotamerSetBase) None
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.

C++: core::scoring::methods::EnergyMethod::prepare_rotamers_for_packing(const class core::pose::Pose &, class core::conformation::RotamerSetBase &) const –> void

provide_citation_info(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : pyrosetta.rosetta.basic.citation_manager.CitationCollectionList) None
Provide citations to the passed CitationCollectionList

Subclasses should add the info for themselves and any other classes they use.

The default implementation of this function does nothing. It may be overriden by energy methods wishing to provide citation information.

C++: core::scoring::methods::EnergyMethod::provide_citation_info(class basic::citation_manager::CitationCollectionList &) const –> void

requires_a_setup_for_scoring_for_residue_opportunity_during_regular_scoring(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose) bool
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

C++: core::scoring::methods::EnergyMethod::requires_a_setup_for_scoring_for_residue_opportunity_during_regular_scoring(const class core::pose::Pose &) const –> bool

score_types(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod) pyrosetta.rosetta.utility.vector1_core_scoring_ScoreType

Returns the score types that this energy method computes.

C++: core::scoring::methods::EnergyMethod::score_types() const –> const class utility::vector1<enum core::scoring::ScoreType, class std::allocator<enum core::scoring::ScoreType> > &

setup_for_derivatives(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction) None
Called immediately before atom- and DOF-derivatives are calculated

allowing the derived class a chance to prepare for future calls.

C++: core::scoring::methods::EnergyMethod::setup_for_derivatives(class core::pose::Pose &, const class core::scoring::ScoreFunction &) const –> void

setup_for_minimizing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : core::scoring::ScoreFunction, : core::kinematics::MinimizerMapBase) None
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.

C++: core::scoring::methods::EnergyMethod::setup_for_minimizing(class core::pose::Pose &, const class core::scoring::ScoreFunction &, const class core::kinematics::MinimizerMapBase &) const –> void

setup_for_packing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : pyrosetta.rosetta.utility.vector1_bool, : pyrosetta.rosetta.utility.vector1_bool) None
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.

C++: core::scoring::methods::EnergyMethod::setup_for_packing(class core::pose::Pose &, const class utility::vector1<bool, class std::allocator<bool> > &, const class utility::vector1<bool, class std::allocator<bool> > &) const –> void

setup_for_packing_with_rotsets(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose, rotsets: core::pack_basic::RotamerSetsBase, sfxn: core::scoring::ScoreFunction) None
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.

The exact order of events when setting up for packing are as follows:
  1. setup_for_packing() is called for all energy methods

  2. rotamers are built

  3. setup_for_packing_with_rotsets() is called for all energy methods

  4. prepare_rotamers_for_packing() is called for all energy methods

  5. The energy methods are asked to score all rotamers and rotamer pairs

  6. Annealing

The pose is specifically non-const here so that energy methods can store data in it

: Used in ApproximateBuriedUnsatPenalty to pre-compute compatible rotamers

C++: core::scoring::methods::EnergyMethod::setup_for_packing_with_rotsets(class core::pose::Pose &, const class std::shared_ptr<class core::pack_basic::RotamerSetsBase> &, const class core::scoring::ScoreFunction &) const –> void

setup_for_scoring(self: pyrosetta.rosetta.protocols.scoring.methods.ResidualDipolarCouplingEnergyRigidSegments, : pyrosetta.rosetta.core.pose.Pose, : pyrosetta.rosetta.core.scoring.ScoreFunction) None

C++: protocols::scoring::methods::ResidualDipolarCouplingEnergyRigidSegments::setup_for_scoring(class core::pose::Pose &, const class core::scoring::ScoreFunction &) const –> void

setup_for_scoring_for_residue(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, rsd: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, residue_data_cache: pyrosetta.rosetta.basic.datacache.BasicDataCache) None
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.)

C++: core::scoring::methods::EnergyMethod::setup_for_scoring_for_residue(const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class basic::datacache::BasicDataCache &) const –> void

show_additional_info(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : pyrosetta.rosetta.std.ostream, : core::pose::Pose, : bool) None

show additional information of the energy method

C++: core::scoring::methods::EnergyMethod::show_additional_info(std::ostream &, class core::pose::Pose &, bool) const –> void

update_residue_for_packing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, resid: int) None
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.

C++: core::scoring::methods::EnergyMethod::update_residue_for_packing(class core::pose::Pose &, unsigned long) const –> void

version(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod) int

Return the version of the energy method

C++: core::scoring::methods::EnergyMethod::version() const –> unsigned long

class pyrosetta.rosetta.protocols.scoring.methods.ResidualDipolarCouplingEnergyRigidSegmentsCreator

Bases: EnergyMethodCreator

assign(self: pyrosetta.rosetta.protocols.scoring.methods.ResidualDipolarCouplingEnergyRigidSegmentsCreator, : pyrosetta.rosetta.protocols.scoring.methods.ResidualDipolarCouplingEnergyRigidSegmentsCreator) pyrosetta.rosetta.protocols.scoring.methods.ResidualDipolarCouplingEnergyRigidSegmentsCreator

C++: protocols::scoring::methods::ResidualDipolarCouplingEnergyRigidSegmentsCreator::operator=(const class protocols::scoring::methods::ResidualDipolarCouplingEnergyRigidSegmentsCreator &) –> class protocols::scoring::methods::ResidualDipolarCouplingEnergyRigidSegmentsCreator &

create_energy_method(self: pyrosetta.rosetta.protocols.scoring.methods.ResidualDipolarCouplingEnergyRigidSegmentsCreator, : pyrosetta.rosetta.core.scoring.methods.EnergyMethodOptions) pyrosetta.rosetta.core.scoring.methods.EnergyMethod

Instantiate a new ResidualDipolarCouplingEnergy

C++: protocols::scoring::methods::ResidualDipolarCouplingEnergyRigidSegmentsCreator::create_energy_method(const class core::scoring::methods::EnergyMethodOptions &) const –> class std::shared_ptr<class core::scoring::methods::EnergyMethod>

score_types_for_method(self: pyrosetta.rosetta.protocols.scoring.methods.ResidualDipolarCouplingEnergyRigidSegmentsCreator) pyrosetta.rosetta.utility.vector1_core_scoring_ScoreType
Return the set of score types claimed by the EnergyMethod

this EnergyMethodCreator creates in its create_energy_method() function

C++: protocols::scoring::methods::ResidualDipolarCouplingEnergyRigidSegmentsCreator::score_types_for_method() const –> class utility::vector1<enum core::scoring::ScoreType, class std::allocator<enum core::scoring::ScoreType> >

class pyrosetta.rosetta.protocols.scoring.methods.SpecialRotamerEnergy

Bases: ContextIndependentOneBodyEnergy

assign(self: pyrosetta.rosetta.protocols.scoring.methods.SpecialRotamerEnergy, : pyrosetta.rosetta.protocols.scoring.methods.SpecialRotamerEnergy) pyrosetta.rosetta.protocols.scoring.methods.SpecialRotamerEnergy

C++: protocols::scoring::methods::SpecialRotamerEnergy::operator=(const class protocols::scoring::methods::SpecialRotamerEnergy &) –> class protocols::scoring::methods::SpecialRotamerEnergy &

atomistic_energy(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, atmno: int, rsd: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, scorefxn: core::scoring::ScoreFunction, emap: core::scoring::EMapVector) None
Evaluate the (one body) energy associated with a particular atom

This may be a “self” energy, or it may be the single atom contribution from a whole structure term. NOTE: all the cautions of EnergyMethod::has_atomistic_energies() apply here. For most terms this is likely a no-op. Terms which implement this non-trivially should return true from has_atomistic_energies()

This is return-by-reference in the EnergyMap - Implementations should accumulate, not replace.

C++: core::scoring::methods::EnergyMethod::atomistic_energy(unsigned long, const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

atomistic_pair_energy(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, atmno1: int, rsd1: pyrosetta.rosetta.core.conformation.Residue, atomno2: int, rsd2: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, scorefxn: core::scoring::ScoreFunction, emap: core::scoring::EMapVector) None
Evaluate the energy for a particular pair of atoms

This function may be fed the same residue with different atom numbers NOTE: all the cautions of EnergyMethod::has_atomistic_energies() apply here. For most terms this is likely a no-op. Terms which implement this non-trivially should return true from has_atomistic_pairwise_energies()

This is return-by-reference in the EnergyMap - Implementations should accumulate, not replace.

C++: core::scoring::methods::EnergyMethod::atomistic_pair_energy(unsigned long, const class core::conformation::Residue &, unsigned long, const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

clone(self: pyrosetta.rosetta.protocols.scoring.methods.SpecialRotamerEnergy) pyrosetta.rosetta.core.scoring.methods.EnergyMethod

clone

C++: protocols::scoring::methods::SpecialRotamerEnergy::clone() const –> class std::shared_ptr<class core::scoring::methods::EnergyMethod>

defines_dof_derivatives(self: pyrosetta.rosetta.core.scoring.methods.OneBodyEnergy, p: core::pose::Pose) bool
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.

C++: core::scoring::methods::OneBodyEnergy::defines_dof_derivatives(const class core::pose::Pose &) const –> bool

defines_high_order_terms(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose) bool
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”.

C++: core::scoring::methods::EnergyMethod::defines_high_order_terms(const class core::pose::Pose &) const –> bool

defines_score_for_residue(self: pyrosetta.rosetta.core.scoring.methods.OneBodyEnergy, : pyrosetta.rosetta.core.conformation.Residue) bool
During minimization, energy methods are allowed to decide that they say nothing

about a particular residue (e.g. no non-zero energy) and as a result they will not be queried for a derivative or an energy. The default behavior is to return “true” for all residues.

C++: core::scoring::methods::OneBodyEnergy::defines_score_for_residue(const class core::conformation::Residue &) const –> bool

eval_atom_derivative(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, id: pyrosetta.rosetta.core.id.AtomID, pose: core::pose::Pose, domain_map: pyrosetta.rosetta.ObjexxFCL.FArray1D_int_t, sfxn: core::scoring::ScoreFunction, emap: core::scoring::EMapVector, F1: pyrosetta.rosetta.numeric.xyzVector_double_t, F2: pyrosetta.rosetta.numeric.xyzVector_double_t) None
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.

C++: core::scoring::methods::EnergyMethod::eval_atom_derivative(const class core::id::AtomID &, const class core::pose::Pose &, const class ObjexxFCL::FArray1D<int> &, const class core::scoring::ScoreFunction &, const class core::scoring::EMapVector &, class numeric::xyzVector<double> &, class numeric::xyzVector<double> &) const –> void

eval_dof_derivative(self: pyrosetta.rosetta.protocols.scoring.methods.SpecialRotamerEnergy, dof_id: pyrosetta.rosetta.core.id.DOF_ID, tor_id: pyrosetta.rosetta.core.id.TorsionID, pose: pyrosetta.rosetta.core.pose.Pose, sfxn: pyrosetta.rosetta.core.scoring.ScoreFunction, weights: pyrosetta.rosetta.core.scoring.EMapVector) float

C++: protocols::scoring::methods::SpecialRotamerEnergy::eval_dof_derivative(const class core::id::DOF_ID &, const class core::id::TorsionID &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, const class core::scoring::EMapVector &) const –> double

eval_residue_derivatives(self: pyrosetta.rosetta.core.scoring.methods.OneBodyEnergy, rsd: pyrosetta.rosetta.core.conformation.Residue, min_data: core::scoring::ResSingleMinimizationData, pose: core::pose::Pose, weights: core::scoring::EMapVector, atom_derivs: pyrosetta.rosetta.utility.vector1_core_scoring_DerivVectorPair) None
Evaluate the derivatives for all atoms on this residue and increment them

into the input atom_derivs vector1. The calling function must guarantee that setup for derivatives is called before this function is, and that the atom_derivs vector contains at least as many entries as there are atoms in the input Residue. This base class provides a default noop implementation of this function.

C++: core::scoring::methods::OneBodyEnergy::eval_residue_derivatives(const class core::conformation::Residue &, const class core::scoring::ResSingleMinimizationData &, const class core::pose::Pose &, const class core::scoring::EMapVector &, class utility::vector1<class core::scoring::DerivVectorPair, class std::allocator<class core::scoring::DerivVectorPair> > &) const –> void

eval_residue_dof_derivative(self: pyrosetta.rosetta.core.scoring.methods.OneBodyEnergy, rsd: pyrosetta.rosetta.core.conformation.Residue, min_data: core::scoring::ResSingleMinimizationData, dof_id: pyrosetta.rosetta.core.id.DOF_ID, torsion_id: core::id::TorsionID, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, weights: core::scoring::EMapVector) float
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.

C++: core::scoring::methods::OneBodyEnergy::eval_residue_dof_derivative(const class core::conformation::Residue &, const class core::scoring::ResSingleMinimizationData &, const class core::id::DOF_ID &, const class core::id::TorsionID &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, const class core::scoring::EMapVector &) const –> double

finalize_after_derivatives(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : core::scoring::ScoreFunction) None

called at the end of derivatives evaluation

C++: core::scoring::methods::EnergyMethod::finalize_after_derivatives(class core::pose::Pose &, const class core::scoring::ScoreFunction &) const –> void

finalize_after_minimizing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose) None
Called after minimization, allowing a derived class to do some

teardown steps.

Base class function does nothing. Derived classes may override.

Vikram K. Mulligan (vmullig.edu).

C++: core::scoring::methods::EnergyMethod::finalize_after_minimizing(class core::pose::Pose &) const –> void

finalize_total_energy(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, total_energy: core::scoring::EMapVector) None
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.

C++: core::scoring::methods::EnergyMethod::finalize_total_energy(class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

has_atomistic_energies(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod) bool
Does this EnergyMethod have a non-trivial implementation of the (one body) atomistic energy method?

Note that this may return false even if the score term theoretically could support atomistic energies. And even if this function returns true, it’s not necessarily the case that all atoms will get assigned an energy, or that the sum over all atoms (or atom pairs) will result in the same energy as the residue-level approach. The atomistic functions are intended for supplemental informational purposes only. The residue-level energies are the main interface for EnergyMethods.

C++: core::scoring::methods::EnergyMethod::has_atomistic_energies() const –> bool

has_atomistic_pairwise_energies(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod) bool
Does this EnergyMethod have a non-trivial implementation of the pairwise atomistic energy method?

NOTE: all the cautions of EnergyMethod::has_atomistic_energies() apply here.

C++: core::scoring::methods::EnergyMethod::has_atomistic_pairwise_energies() const –> bool

indicate_required_context_graphs(self: pyrosetta.rosetta.protocols.scoring.methods.SpecialRotamerEnergy, : pyrosetta.rosetta.utility.vector1_bool) None
SpecialRotamerEnergy is context independent; indicates that no

context graphs are required

C++: protocols::scoring::methods::SpecialRotamerEnergy::indicate_required_context_graphs(class utility::vector1<bool, class std::allocator<bool> > &) const –> void

method_type(self: pyrosetta.rosetta.core.scoring.methods.ContextIndependentOneBodyEnergy) pyrosetta.rosetta.core.scoring.methods.EnergyMethodType
Returns the ci_1b element of the EnergyMethodType enumeration; this

method should NOT be overridden by derived classes.

C++: core::scoring::methods::ContextIndependentOneBodyEnergy::method_type() const –> enum core::scoring::methods::EnergyMethodType

minimize_in_whole_structure_context(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose) bool
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.

C++: core::scoring::methods::EnergyMethod::minimize_in_whole_structure_context(const class core::pose::Pose &) const –> bool

prepare_rotamers_for_packing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : pyrosetta.rosetta.core.conformation.RotamerSetBase) None
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.

C++: core::scoring::methods::EnergyMethod::prepare_rotamers_for_packing(const class core::pose::Pose &, class core::conformation::RotamerSetBase &) const –> void

provide_citation_info(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : pyrosetta.rosetta.basic.citation_manager.CitationCollectionList) None
Provide citations to the passed CitationCollectionList

Subclasses should add the info for themselves and any other classes they use.

The default implementation of this function does nothing. It may be overriden by energy methods wishing to provide citation information.

C++: core::scoring::methods::EnergyMethod::provide_citation_info(class basic::citation_manager::CitationCollectionList &) const –> void

requires_a_setup_for_derivatives_for_residue_opportunity(self: pyrosetta.rosetta.core.scoring.methods.OneBodyEnergy, pose: core::pose::Pose) bool
Does this EnergyMethod require the opportunity to examine the residue before derivative evaluation begins? Not

all energy methods would. The ScoreFunction will not ask energy methods to examine residues that are uninterested in doing so.

C++: core::scoring::methods::OneBodyEnergy::requires_a_setup_for_derivatives_for_residue_opportunity(const class core::pose::Pose &) const –> bool

requires_a_setup_for_scoring_for_residue_opportunity_during_minimization(self: pyrosetta.rosetta.core.scoring.methods.OneBodyEnergy, pose: core::pose::Pose) bool
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.

C++: core::scoring::methods::OneBodyEnergy::requires_a_setup_for_scoring_for_residue_opportunity_during_minimization(const class core::pose::Pose &) const –> bool

requires_a_setup_for_scoring_for_residue_opportunity_during_regular_scoring(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose) bool
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

C++: core::scoring::methods::EnergyMethod::requires_a_setup_for_scoring_for_residue_opportunity_during_regular_scoring(const class core::pose::Pose &) const –> bool

residue_energy(self: pyrosetta.rosetta.protocols.scoring.methods.SpecialRotamerEnergy, rsd: pyrosetta.rosetta.core.conformation.Residue, pose: pyrosetta.rosetta.core.pose.Pose, emap: pyrosetta.rosetta.core.scoring.EMapVector) None

C++: protocols::scoring::methods::SpecialRotamerEnergy::residue_energy(const class core::conformation::Residue &, const class core::pose::Pose &, class core::scoring::EMapVector &) const –> void

residue_energy_ext(self: pyrosetta.rosetta.core.scoring.methods.OneBodyEnergy, rsd: pyrosetta.rosetta.core.conformation.Residue, min_data: core::scoring::ResSingleMinimizationData, pose: core::pose::Pose, emap: core::scoring::EMapVector) None
Evaluate the one-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 one body energies into the input EnergyMap. 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 setup_for_minimizing_for_residue before this function is invoked. This function should not be called unless the use_extended_residue_energy_interface() method returns “true”. Default implementation provided by this base class calls utility::exit(). The Pose merely serves as context, and the input residue is not required to be a member of the Pose.

C++: core::scoring::methods::OneBodyEnergy::residue_energy_ext(const class core::conformation::Residue &, const class core::scoring::ResSingleMinimizationData &, const class core::pose::Pose &, class core::scoring::EMapVector &) const –> void

score_types(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod) pyrosetta.rosetta.utility.vector1_core_scoring_ScoreType

Returns the score types that this energy method computes.

C++: core::scoring::methods::EnergyMethod::score_types() const –> const class utility::vector1<enum core::scoring::ScoreType, class std::allocator<enum core::scoring::ScoreType> > &

setup_for_derivatives(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction) None
Called immediately before atom- and DOF-derivatives are calculated

allowing the derived class a chance to prepare for future calls.

C++: core::scoring::methods::EnergyMethod::setup_for_derivatives(class core::pose::Pose &, const class core::scoring::ScoreFunction &) const –> void

setup_for_derivatives_for_residue(self: pyrosetta.rosetta.core.scoring.methods.OneBodyEnergy, rsd: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, min_data: core::scoring::ResSingleMinimizationData, res_data_cache: pyrosetta.rosetta.basic.datacache.BasicDataCache) None

Do any setup work necessary before evaluating the derivatives for this residue

C++: core::scoring::methods::OneBodyEnergy::setup_for_derivatives_for_residue(const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::ResSingleMinimizationData &, class basic::datacache::BasicDataCache &) const –> void

setup_for_minimizing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : core::scoring::ScoreFunction, : core::kinematics::MinimizerMapBase) None
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.

C++: core::scoring::methods::EnergyMethod::setup_for_minimizing(class core::pose::Pose &, const class core::scoring::ScoreFunction &, const class core::kinematics::MinimizerMapBase &) const –> void

setup_for_minimizing_for_residue(self: pyrosetta.rosetta.core.scoring.methods.OneBodyEnergy, rsd: pyrosetta.rosetta.core.conformation.Residue, : core::pose::Pose, : core::scoring::ScoreFunction, : core::kinematics::MinimizerMapBase, : pyrosetta.rosetta.basic.datacache.BasicDataCache, : core::scoring::ResSingleMinimizationData) None
Called at the beginning of minimization, allowing this energy method to cache data

pertinent for a single residue in the the ResSingleMinimizationData 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. The Pose merely serves as context, and the input residue is not required to be a member of the Pose.

C++: core::scoring::methods::OneBodyEnergy::setup_for_minimizing_for_residue(const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, const class core::kinematics::MinimizerMapBase &, class basic::datacache::BasicDataCache &, class core::scoring::ResSingleMinimizationData &) const –> void

setup_for_packing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : pyrosetta.rosetta.utility.vector1_bool, : pyrosetta.rosetta.utility.vector1_bool) None
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.

C++: core::scoring::methods::EnergyMethod::setup_for_packing(class core::pose::Pose &, const class utility::vector1<bool, class std::allocator<bool> > &, const class utility::vector1<bool, class std::allocator<bool> > &) const –> void

setup_for_packing_with_rotsets(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose, rotsets: core::pack_basic::RotamerSetsBase, sfxn: core::scoring::ScoreFunction) None
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.

The exact order of events when setting up for packing are as follows:
  1. setup_for_packing() is called for all energy methods

  2. rotamers are built

  3. setup_for_packing_with_rotsets() is called for all energy methods

  4. prepare_rotamers_for_packing() is called for all energy methods

  5. The energy methods are asked to score all rotamers and rotamer pairs

  6. Annealing

The pose is specifically non-const here so that energy methods can store data in it

: Used in ApproximateBuriedUnsatPenalty to pre-compute compatible rotamers

C++: core::scoring::methods::EnergyMethod::setup_for_packing_with_rotsets(class core::pose::Pose &, const class std::shared_ptr<class core::pack_basic::RotamerSetsBase> &, const class core::scoring::ScoreFunction &) const –> void

setup_for_scoring(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : core::scoring::ScoreFunction) None
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.

C++: core::scoring::methods::EnergyMethod::setup_for_scoring(class core::pose::Pose &, const class core::scoring::ScoreFunction &) const –> void

setup_for_scoring_for_residue(*args, **kwargs)

Overloaded function.

  1. setup_for_scoring_for_residue(self: pyrosetta.rosetta.core.scoring.methods.OneBodyEnergy, rsd: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, residue_data_cache: pyrosetta.rosetta.basic.datacache.BasicDataCache) -> None

  2. setup_for_scoring_for_residue(self: pyrosetta.rosetta.core.scoring.methods.OneBodyEnergy, rsd: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, min_data: core::scoring::ResSingleMinimizationData) -> None

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

C++: core::scoring::methods::OneBodyEnergy::setup_for_scoring_for_residue(const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::ResSingleMinimizationData &) const –> void

show_additional_info(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : pyrosetta.rosetta.std.ostream, : core::pose::Pose, : bool) None

show additional information of the energy method

C++: core::scoring::methods::EnergyMethod::show_additional_info(std::ostream &, class core::pose::Pose &, bool) const –> void

update_residue_for_packing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, resid: int) None
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.

C++: core::scoring::methods::EnergyMethod::update_residue_for_packing(class core::pose::Pose &, unsigned long) const –> void

use_extended_residue_energy_interface(self: pyrosetta.rosetta.core.scoring.methods.OneBodyEnergy) bool
Rely on the extended version of the residue_energy function during score-function

evaluation in minimization? The extended version (below) takes a ResSingleMinimizationData. Return ‘true’ for the extended version. The default method implemented in this class returns ‘false’

C++: core::scoring::methods::OneBodyEnergy::use_extended_residue_energy_interface() const –> bool

version(self: pyrosetta.rosetta.protocols.scoring.methods.SpecialRotamerEnergy) int

C++: protocols::scoring::methods::SpecialRotamerEnergy::version() const –> unsigned long

class pyrosetta.rosetta.protocols.scoring.methods.SpecialRotamerEnergyCreator

Bases: EnergyMethodCreator

assign(self: pyrosetta.rosetta.protocols.scoring.methods.SpecialRotamerEnergyCreator, : pyrosetta.rosetta.protocols.scoring.methods.SpecialRotamerEnergyCreator) pyrosetta.rosetta.protocols.scoring.methods.SpecialRotamerEnergyCreator

C++: protocols::scoring::methods::SpecialRotamerEnergyCreator::operator=(const class protocols::scoring::methods::SpecialRotamerEnergyCreator &) –> class protocols::scoring::methods::SpecialRotamerEnergyCreator &

create_energy_method(self: pyrosetta.rosetta.protocols.scoring.methods.SpecialRotamerEnergyCreator, : pyrosetta.rosetta.core.scoring.methods.EnergyMethodOptions) pyrosetta.rosetta.core.scoring.methods.EnergyMethod

Instantiate a new SpecialRotamerEnergy

C++: protocols::scoring::methods::SpecialRotamerEnergyCreator::create_energy_method(const class core::scoring::methods::EnergyMethodOptions &) const –> class std::shared_ptr<class core::scoring::methods::EnergyMethod>

score_types_for_method(self: pyrosetta.rosetta.protocols.scoring.methods.SpecialRotamerEnergyCreator) pyrosetta.rosetta.utility.vector1_core_scoring_ScoreType
Return the set of score types claimed by the EnergyMethod

this EnergyMethodCreator creates in its create_energy_method() function

C++: protocols::scoring::methods::SpecialRotamerEnergyCreator::score_types_for_method() const –> class utility::vector1<enum core::scoring::ScoreType, class std::allocator<enum core::scoring::ScoreType> >

class pyrosetta.rosetta.protocols.scoring.methods.TargetClashEnergy

Bases: WholeStructureEnergy

assign(self: pyrosetta.rosetta.protocols.scoring.methods.TargetClashEnergy, : pyrosetta.rosetta.protocols.scoring.methods.TargetClashEnergy) pyrosetta.rosetta.protocols.scoring.methods.TargetClashEnergy

C++: protocols::scoring::methods::TargetClashEnergy::operator=(const class protocols::scoring::methods::TargetClashEnergy &) –> class protocols::scoring::methods::TargetClashEnergy &

atomic_interaction_cutoff(self: pyrosetta.rosetta.core.scoring.methods.WholeStructureEnergy) float

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().

This method allows the WholeStructureEnergy class to define which edges should be included in the EnergyGraph so that during the finalize() method the Energy class can iterate across the EnergyGraph. This iteration occurrs in the SecondaryStructureEnergy class, where the edges must span 12 angstroms between the centroids. Arguably, the SecondaryStructureEnergy class could use the TwelveANeighborGraph (a context graph) and not require that the EnergyGraph span such long distances.

C++: core::scoring::methods::WholeStructureEnergy::atomic_interaction_cutoff() const –> double

atomistic_energy(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, atmno: int, rsd: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, scorefxn: core::scoring::ScoreFunction, emap: core::scoring::EMapVector) None
Evaluate the (one body) energy associated with a particular atom

This may be a “self” energy, or it may be the single atom contribution from a whole structure term. NOTE: all the cautions of EnergyMethod::has_atomistic_energies() apply here. For most terms this is likely a no-op. Terms which implement this non-trivially should return true from has_atomistic_energies()

This is return-by-reference in the EnergyMap - Implementations should accumulate, not replace.

C++: core::scoring::methods::EnergyMethod::atomistic_energy(unsigned long, const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

atomistic_pair_energy(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, atmno1: int, rsd1: pyrosetta.rosetta.core.conformation.Residue, atomno2: int, rsd2: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, scorefxn: core::scoring::ScoreFunction, emap: core::scoring::EMapVector) None
Evaluate the energy for a particular pair of atoms

This function may be fed the same residue with different atom numbers NOTE: all the cautions of EnergyMethod::has_atomistic_energies() apply here. For most terms this is likely a no-op. Terms which implement this non-trivially should return true from has_atomistic_pairwise_energies()

This is return-by-reference in the EnergyMap - Implementations should accumulate, not replace.

C++: core::scoring::methods::EnergyMethod::atomistic_pair_energy(unsigned long, const class core::conformation::Residue &, unsigned long, const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

clone(self: pyrosetta.rosetta.protocols.scoring.methods.TargetClashEnergy) pyrosetta.rosetta.core.scoring.methods.EnergyMethod

clone

C++: protocols::scoring::methods::TargetClashEnergy::clone() const –> class std::shared_ptr<class core::scoring::methods::EnergyMethod>

defines_high_order_terms(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose) bool
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”.

C++: core::scoring::methods::EnergyMethod::defines_high_order_terms(const class core::pose::Pose &) const –> bool

eval_atom_derivative(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, id: pyrosetta.rosetta.core.id.AtomID, pose: core::pose::Pose, domain_map: pyrosetta.rosetta.ObjexxFCL.FArray1D_int_t, sfxn: core::scoring::ScoreFunction, emap: core::scoring::EMapVector, F1: pyrosetta.rosetta.numeric.xyzVector_double_t, F2: pyrosetta.rosetta.numeric.xyzVector_double_t) None
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.

C++: core::scoring::methods::EnergyMethod::eval_atom_derivative(const class core::id::AtomID &, const class core::pose::Pose &, const class ObjexxFCL::FArray1D<int> &, const class core::scoring::ScoreFunction &, const class core::scoring::EMapVector &, class numeric::xyzVector<double> &, class numeric::xyzVector<double> &) const –> void

finalize_after_derivatives(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : core::scoring::ScoreFunction) None

called at the end of derivatives evaluation

C++: core::scoring::methods::EnergyMethod::finalize_after_derivatives(class core::pose::Pose &, const class core::scoring::ScoreFunction &) const –> void

finalize_after_minimizing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose) None
Called after minimization, allowing a derived class to do some

teardown steps.

Base class function does nothing. Derived classes may override.

Vikram K. Mulligan (vmullig.edu).

C++: core::scoring::methods::EnergyMethod::finalize_after_minimizing(class core::pose::Pose &) const –> void

finalize_total_energy(self: pyrosetta.rosetta.protocols.scoring.methods.TargetClashEnergy, pose: pyrosetta.rosetta.core.pose.Pose, : pyrosetta.rosetta.core.scoring.ScoreFunction, totals: pyrosetta.rosetta.core.scoring.EMapVector) None

C++: protocols::scoring::methods::TargetClashEnergy::finalize_total_energy(class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

has_atomistic_energies(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod) bool
Does this EnergyMethod have a non-trivial implementation of the (one body) atomistic energy method?

Note that this may return false even if the score term theoretically could support atomistic energies. And even if this function returns true, it’s not necessarily the case that all atoms will get assigned an energy, or that the sum over all atoms (or atom pairs) will result in the same energy as the residue-level approach. The atomistic functions are intended for supplemental informational purposes only. The residue-level energies are the main interface for EnergyMethods.

C++: core::scoring::methods::EnergyMethod::has_atomistic_energies() const –> bool

has_atomistic_pairwise_energies(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod) bool
Does this EnergyMethod have a non-trivial implementation of the pairwise atomistic energy method?

NOTE: all the cautions of EnergyMethod::has_atomistic_energies() apply here.

C++: core::scoring::methods::EnergyMethod::has_atomistic_pairwise_energies() const –> bool

indicate_required_context_graphs(self: pyrosetta.rosetta.protocols.scoring.methods.TargetClashEnergy, : pyrosetta.rosetta.utility.vector1_bool) None

C++: protocols::scoring::methods::TargetClashEnergy::indicate_required_context_graphs(class utility::vector1<bool, class std::allocator<bool> > &) const –> void

initiate_voxel(self: pyrosetta.rosetta.protocols.scoring.methods.TargetClashEnergy) None

C++: protocols::scoring::methods::TargetClashEnergy::initiate_voxel() –> void

method_type(self: pyrosetta.rosetta.core.scoring.methods.WholeStructureEnergy) pyrosetta.rosetta.core.scoring.methods.EnergyMethodType

C++: core::scoring::methods::WholeStructureEnergy::method_type() const –> enum core::scoring::methods::EnergyMethodType

minimize_in_whole_structure_context(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose) bool
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.

C++: core::scoring::methods::EnergyMethod::minimize_in_whole_structure_context(const class core::pose::Pose &) const –> bool

prepare_rotamers_for_packing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : pyrosetta.rosetta.core.conformation.RotamerSetBase) None
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.

C++: core::scoring::methods::EnergyMethod::prepare_rotamers_for_packing(const class core::pose::Pose &, class core::conformation::RotamerSetBase &) const –> void

provide_citation_info(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : pyrosetta.rosetta.basic.citation_manager.CitationCollectionList) None
Provide citations to the passed CitationCollectionList

Subclasses should add the info for themselves and any other classes they use.

The default implementation of this function does nothing. It may be overriden by energy methods wishing to provide citation information.

C++: core::scoring::methods::EnergyMethod::provide_citation_info(class basic::citation_manager::CitationCollectionList &) const –> void

requires_a_setup_for_scoring_for_residue_opportunity_during_regular_scoring(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose) bool
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

C++: core::scoring::methods::EnergyMethod::requires_a_setup_for_scoring_for_residue_opportunity_during_regular_scoring(const class core::pose::Pose &) const –> bool

score_types(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod) pyrosetta.rosetta.utility.vector1_core_scoring_ScoreType

Returns the score types that this energy method computes.

C++: core::scoring::methods::EnergyMethod::score_types() const –> const class utility::vector1<enum core::scoring::ScoreType, class std::allocator<enum core::scoring::ScoreType> > &

setup_for_derivatives(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction) None
Called immediately before atom- and DOF-derivatives are calculated

allowing the derived class a chance to prepare for future calls.

C++: core::scoring::methods::EnergyMethod::setup_for_derivatives(class core::pose::Pose &, const class core::scoring::ScoreFunction &) const –> void

setup_for_minimizing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : core::scoring::ScoreFunction, : core::kinematics::MinimizerMapBase) None
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.

C++: core::scoring::methods::EnergyMethod::setup_for_minimizing(class core::pose::Pose &, const class core::scoring::ScoreFunction &, const class core::kinematics::MinimizerMapBase &) const –> void

setup_for_packing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, : pyrosetta.rosetta.utility.vector1_bool, : pyrosetta.rosetta.utility.vector1_bool) None
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.

C++: core::scoring::methods::EnergyMethod::setup_for_packing(class core::pose::Pose &, const class utility::vector1<bool, class std::allocator<bool> > &, const class utility::vector1<bool, class std::allocator<bool> > &) const –> void

setup_for_packing_with_rotsets(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: core::pose::Pose, rotsets: core::pack_basic::RotamerSetsBase, sfxn: core::scoring::ScoreFunction) None
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.

The exact order of events when setting up for packing are as follows:
  1. setup_for_packing() is called for all energy methods

  2. rotamers are built

  3. setup_for_packing_with_rotsets() is called for all energy methods

  4. prepare_rotamers_for_packing() is called for all energy methods

  5. The energy methods are asked to score all rotamers and rotamer pairs

  6. Annealing

The pose is specifically non-const here so that energy methods can store data in it

: Used in ApproximateBuriedUnsatPenalty to pre-compute compatible rotamers

C++: core::scoring::methods::EnergyMethod::setup_for_packing_with_rotsets(class core::pose::Pose &, const class std::shared_ptr<class core::pack_basic::RotamerSetsBase> &, const class core::scoring::ScoreFunction &) const –> void

setup_for_scoring(self: pyrosetta.rosetta.protocols.scoring.methods.TargetClashEnergy, pose: pyrosetta.rosetta.core.pose.Pose, : pyrosetta.rosetta.core.scoring.ScoreFunction) None

C++: protocols::scoring::methods::TargetClashEnergy::setup_for_scoring(class core::pose::Pose &, const class core::scoring::ScoreFunction &) const –> void

setup_for_scoring_for_residue(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, rsd: pyrosetta.rosetta.core.conformation.Residue, pose: core::pose::Pose, sfxn: core::scoring::ScoreFunction, residue_data_cache: pyrosetta.rosetta.basic.datacache.BasicDataCache) None
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.)

C++: core::scoring::methods::EnergyMethod::setup_for_scoring_for_residue(const class core::conformation::Residue &, const class core::pose::Pose &, const class core::scoring::ScoreFunction &, class basic::datacache::BasicDataCache &) const –> void

show_additional_info(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : pyrosetta.rosetta.std.ostream, : core::pose::Pose, : bool) None

show additional information of the energy method

C++: core::scoring::methods::EnergyMethod::show_additional_info(std::ostream &, class core::pose::Pose &, bool) const –> void

update_residue_for_packing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : core::pose::Pose, resid: int) None
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.

C++: core::scoring::methods::EnergyMethod::update_residue_for_packing(class core::pose::Pose &, unsigned long) const –> void

version(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod) int

Return the version of the energy method

C++: core::scoring::methods::EnergyMethod::version() const –> unsigned long

class pyrosetta.rosetta.protocols.scoring.methods.TargetClashEnergyCreator

Bases: EnergyMethodCreator

assign(self: pyrosetta.rosetta.protocols.scoring.methods.TargetClashEnergyCreator, : pyrosetta.rosetta.protocols.scoring.methods.TargetClashEnergyCreator) pyrosetta.rosetta.protocols.scoring.methods.TargetClashEnergyCreator

C++: protocols::scoring::methods::TargetClashEnergyCreator::operator=(const class protocols::scoring::methods::TargetClashEnergyCreator &) –> class protocols::scoring::methods::TargetClashEnergyCreator &

create_energy_method(self: pyrosetta.rosetta.protocols.scoring.methods.TargetClashEnergyCreator, options: pyrosetta.rosetta.core.scoring.methods.EnergyMethodOptions) pyrosetta.rosetta.core.scoring.methods.EnergyMethod

Instantiate a new MembraneLipo

C++: protocols::scoring::methods::TargetClashEnergyCreator::create_energy_method(const class core::scoring::methods::EnergyMethodOptions &) const –> class std::shared_ptr<class core::scoring::methods::EnergyMethod>

score_types_for_method(self: pyrosetta.rosetta.protocols.scoring.methods.TargetClashEnergyCreator) pyrosetta.rosetta.utility.vector1_core_scoring_ScoreType
Return the set of score types claimed by the EnergyMethod

this EnergyMethodCreator creates in its create_energy_method() function

C++: protocols::scoring::methods::TargetClashEnergyCreator::score_types_for_method() const –> class utility::vector1<enum core::scoring::ScoreType, class std::allocator<enum core::scoring::ScoreType> >