hbnet_energy

Bindings for core::pack::guidance_scoreterms::hbnet_energy namespace

class pyrosetta.rosetta.core.pack.guidance_scoreterms.hbnet_energy.HBNetEnergy

Bases: pyrosetta.rosetta.core.scoring.methods.WholeStructureEnergy, pyrosetta.rosetta.core.scoring.annealing.ResidueArrayAnnealableEnergy

HBNetEnergy, an EnergyMethod that gives a bonus for hydrogen bond networks, which ramps nonlinearly with the size of the networks. This class is derived from base class WholeStructureEnergy, which is meaningful only on entire structures. These EnergyMethods do all of their work in the “finalize_total_energy” section of scorefunction evaluation.

assign(self: pyrosetta.rosetta.core.pack.guidance_scoreterms.hbnet_energy.HBNetEnergy, : pyrosetta.rosetta.core.pack.guidance_scoreterms.hbnet_energy.HBNetEnergy) → pyrosetta.rosetta.core.pack.guidance_scoreterms.hbnet_energy.HBNetEnergy

C++: core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::operator=(const class core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy &) –> class core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy &

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

calculate_energy(*args, **kwargs)

Overloaded function.

  1. calculate_energy(self: pyrosetta.rosetta.core.pack.guidance_scoreterms.hbnet_energy.HBNetEnergy, resvect: pyrosetta.rosetta.utility.vector1_std_shared_ptr_const_core_conformation_Residue_t) -> float
  2. calculate_energy(self: pyrosetta.rosetta.core.pack.guidance_scoreterms.hbnet_energy.HBNetEnergy, resvect: pyrosetta.rosetta.utility.vector1_std_shared_ptr_const_core_conformation_Residue_t, substitution_position: int) -> float

Calculate the total energy given a vector of const owning pointers to residues.

Called directly by the ResidueArrayAnnealingEvaluator during packer runs.

C++: core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::calculate_energy(const class utility::vector1<class std::shared_ptr<const class core::conformation::Residue>, class std::allocator<class std::shared_ptr<const class core::conformation::Residue> > > &, const unsigned long) const –> double

clean_up_residuearrayannealableenergy_after_packing(self: pyrosetta.rosetta.core.scoring.annealing.ResidueArrayAnnealableEnergy, pose: pyrosetta.rosetta.core.pose.Pose) → None
Allows the ResidueArrayAnnealableEnergy to clean up cached data, either within the EnergyMethod or in the pose, after

a packer run.

Base class version does nothing; may be overridden by derived classes.

C++: core::scoring::annealing::ResidueArrayAnnealableEnergy::clean_up_residuearrayannealableenergy_after_packing(class core::pose::Pose &) –> void

clone(self: pyrosetta.rosetta.core.pack.guidance_scoreterms.hbnet_energy.HBNetEnergy) → pyrosetta.rosetta.core.scoring.methods.EnergyMethod
Clone: create a copy of this object, and return an owning pointer
to the copy.

C++: core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::clone() const –> class std::shared_ptr<class core::scoring::methods::EnergyMethod>

commit_considered_substitution(self: pyrosetta.rosetta.core.pack.guidance_scoreterms.hbnet_energy.HBNetEnergy) → None

What to do when a substitution that was considered is accepted.

Vikram K. Mulligan (vmullig.edu).

C++: core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::commit_considered_substitution() –> void

defines_high_order_terms(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : pyrosetta.rosetta.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: pyrosetta.rosetta.core.pose.Pose, domain_map: ObjexxFCL::FArray1D<int>, sfxn: pyrosetta.rosetta.core.scoring.ScoreFunction, emap: pyrosetta.rosetta.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, : pyrosetta.rosetta.core.pose.Pose, : pyrosetta.rosetta.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.pack.guidance_scoreterms.hbnet_energy.HBNetEnergy, pose: pyrosetta.rosetta.core.pose.Pose) → None

Re-enable this scoreterm after a minimization trajectory.

C++: core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::finalize_after_minimizing(class core::pose::Pose &) const –> void

finalize_total_energy(self: pyrosetta.rosetta.core.pack.guidance_scoreterms.hbnet_energy.HBNetEnergy, pose: pyrosetta.rosetta.core.pose.Pose, : pyrosetta.rosetta.core.scoring.ScoreFunction, totals: pyrosetta.rosetta.core.scoring.EMapVector) → None

Actually calculate the total energy

Called by the scoring machinery. The update_residue_neighbors() function of the pose must be called first.

C++: core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::finalize_total_energy(class core::pose::Pose &, const class core::scoring::ScoreFunction &, class core::scoring::EMapVector &) const –> void

hbnet_energy_ramping_enum_from_string(self: pyrosetta.rosetta.core.pack.guidance_scoreterms.hbnet_energy.HBNetEnergy, ramping_string: str) → pyrosetta.rosetta.core.pack.guidance_scoreterms.hbnet_energy.HBNetEnergyRamping

Given a string for an HBNetEnergyRamping type, return the corresponding enum.

Returns HBNetEnergyRampINVALID if the string isn’t recognized.

C++: core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::hbnet_energy_ramping_enum_from_string(const class std::basic_string<char> &) const –> enum core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergyRamping

hbnet_energy_ramping_string_from_enum(self: pyrosetta.rosetta.core.pack.guidance_scoreterms.hbnet_energy.HBNetEnergy, ramping_enum: pyrosetta.rosetta.core.pack.guidance_scoreterms.hbnet_energy.HBNetEnergyRamping) → str

Given an enum for an HBNetEnergyRamping type, return the corresponding string.

Returns “INVALID” if the string isn’t recognized.

C++: core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::hbnet_energy_ramping_string_from_enum(const enum core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergyRamping) const –> std::string

indicate_required_context_graphs(self: pyrosetta.rosetta.core.pack.guidance_scoreterms.hbnet_energy.HBNetEnergy, context_graphs_required: pyrosetta.rosetta.utility.vector1_bool) → None
HBNetEnergy is context-independent and thus indicates that no context graphs need to be maintained by
class Energies.

C++: core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::indicate_required_context_graphs(class utility::vector1<bool, class std::allocator<bool> > &) const –> void

max_network_size(*args, **kwargs)

Overloaded function.

  1. max_network_size(self: pyrosetta.rosetta.core.pack.guidance_scoreterms.hbnet_energy.HBNetEnergy) -> int

Get the maximum network size, beyond which there is no bonus for making a network bigger.

A value of “0” (the default) means no max.

C++: core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::max_network_size() const –> unsigned long

  1. max_network_size(self: pyrosetta.rosetta.core.pack.guidance_scoreterms.hbnet_energy.HBNetEnergy, setting: int) -> None

Set the maximum network size, beyond which there is no bonus for making a network bigger.

A value of “0” (the default) means no max.

C++: core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::max_network_size(const unsigned long) –> 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, : pyrosetta.rosetta.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, : pyrosetta.rosetta.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

report(self: pyrosetta.rosetta.core.pack.guidance_scoreterms.hbnet_energy.HBNetEnergy) → None

Get a summary of all loaded data.

C++: core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::report() const –> void

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

set_hbnet_energy_ramping(*args, **kwargs)

Overloaded function.

  1. set_hbnet_energy_ramping(self: pyrosetta.rosetta.core.pack.guidance_scoreterms.hbnet_energy.HBNetEnergy, ramping_string: str) -> None
Set the way that HBNetEnergy scales with network size,
by string.

C++: core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::set_hbnet_energy_ramping(const class std::basic_string<char> &) –> void

  1. set_hbnet_energy_ramping(self: pyrosetta.rosetta.core.pack.guidance_scoreterms.hbnet_energy.HBNetEnergy, ramping_enum: pyrosetta.rosetta.core.pack.guidance_scoreterms.hbnet_energy.HBNetEnergyRamping) -> None
Set the way that HBNetEnergy scales with network size,
by enum.

C++: core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::set_hbnet_energy_ramping(const enum core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergyRamping) –> void

set_up_residuearrayannealableenergy_for_packing(self: pyrosetta.rosetta.core.pack.guidance_scoreterms.hbnet_energy.HBNetEnergy, pose: pyrosetta.rosetta.core.pose.Pose, rotamersets: pyrosetta.rosetta.core.pack.rotamer_set.RotamerSets, sfxn: pyrosetta.rosetta.core.scoring.ScoreFunction) → None

Cache data from the pose in this EnergyMethod in anticipation of scoring.

C++: core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::set_up_residuearrayannealableenergy_for_packing(class core::pose::Pose &, const class core::pack::rotamer_set::RotamerSets &, const class core::scoring::ScoreFunction &) –> void

setup_for_derivatives(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, pose: pyrosetta.rosetta.core.pose.Pose, sfxn: pyrosetta.rosetta.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.pack.guidance_scoreterms.hbnet_energy.HBNetEnergy, pose: pyrosetta.rosetta.core.pose.Pose, sfxn: pyrosetta.rosetta.core.scoring.ScoreFunction, minmap: pyrosetta.rosetta.core.kinematics.MinimizerMapBase) → None

Disable this scoreterm during minimization trajectory.

C++: core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::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, : pyrosetta.rosetta.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_scoring(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : pyrosetta.rosetta.core.pose.Pose, : pyrosetta.rosetta.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: pyrosetta.rosetta.core.pose.Pose, sfxn: pyrosetta.rosetta.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, : pyrosetta.rosetta.core.pose.Pose, : bool) → None

show additional information of the energy method

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

update_residue_for_packing(self: pyrosetta.rosetta.core.scoring.methods.EnergyMethod, : pyrosetta.rosetta.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.pack.guidance_scoreterms.hbnet_energy.HBNetEnergy) → int

HBNetEnergy is version 1.0 right now.

C++: core::pack::guidance_scoreterms::hbnet_energy::HBNetEnergy::version() const –> unsigned long

class pyrosetta.rosetta.core.pack.guidance_scoreterms.hbnet_energy.HBNetEnergyRamping

Bases: pybind11_builtins.pybind11_object

Allowed types of HBNetEnergy rampings.

If you add to this list, update the HBNetEnergy::hbnet_energy_ramping_string_from_enum() function.

Members:

HBNetEnergyRampQuadratic

HBNetEnergyRampLinear

HBNetEnergyRampLogarithmic

HBNetEnergyRampSquareRoot

HBNetEnergyRampINVALID

HBNetEnergyRamp_end_of_list