rna

Bindings for protocols::rna namespace

class pyrosetta.rosetta.protocols.rna.AlignmentEnergy

Bases: WholeStructureEnergy

An RMSD-type energy to a reference pose, complete with derivatives hacked out of coordinate constraints

align_pose(self: pyrosetta.rosetta.protocols.rna.AlignmentEnergy, align_pose: pyrosetta.rosetta.core.pose.Pose) None

C++: protocols::rna::AlignmentEnergy::align_pose(const class std::shared_ptr<class core::pose::Pose> &) –> void

assign(self: pyrosetta.rosetta.protocols.rna.AlignmentEnergy, : pyrosetta.rosetta.protocols.rna.AlignmentEnergy) pyrosetta.rosetta.protocols.rna.AlignmentEnergy

C++: protocols::rna::AlignmentEnergy::operator=(const class protocols::rna::AlignmentEnergy &) –> class protocols::rna::AlignmentEnergy &

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.rna.AlignmentEnergy) pyrosetta.rosetta.core.scoring.methods.EnergyMethod
Clone: create a copy of this object, and return an owning pointer

to the copy.

C++: protocols::rna::AlignmentEnergy::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.protocols.rna.AlignmentEnergy, id: pyrosetta.rosetta.core.id.AtomID, pose: pyrosetta.rosetta.core.pose.Pose, domain_map: pyrosetta.rosetta.ObjexxFCL.FArray1D_int_t, 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

C++: protocols::rna::AlignmentEnergy::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.rna.AlignmentEnergy, 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.

C++: protocols::rna::AlignmentEnergy::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.rna.AlignmentEnergy, context_graphs_required: pyrosetta.rosetta.utility.vector1_bool) None

Is the score context dependent or context independent?

C++: protocols::rna::AlignmentEnergy::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

pose_aligner(self: pyrosetta.rosetta.protocols.rna.AlignmentEnergy) protocols::stepwise::modeler::align::StepWisePoseAligner

C++: protocols::rna::AlignmentEnergy::pose_aligner() const –> const class std::shared_ptr<class protocols::stepwise::modeler::align::StepWisePoseAligner> &

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

rmsd_screen(self: pyrosetta.rosetta.protocols.rna.AlignmentEnergy, setting: float) None

C++: protocols::rna::AlignmentEnergy::rmsd_screen(const double) –> 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_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.rna.AlignmentEnergy, pose: pyrosetta.rosetta.core.pose.Pose, : pyrosetta.rosetta.core.scoring.ScoreFunction) None

Indicate required setup steps for scoring

C++: protocols::rna::AlignmentEnergy::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.rna.AlignmentEnergy) int

Indicates the current version of this score term

C++: protocols::rna::AlignmentEnergy::version() const –> unsigned long

class pyrosetta.rosetta.protocols.rna.AlignmentEnergyCreator

Bases: EnergyMethodCreator

assign(self: pyrosetta.rosetta.protocols.rna.AlignmentEnergyCreator, : pyrosetta.rosetta.protocols.rna.AlignmentEnergyCreator) pyrosetta.rosetta.protocols.rna.AlignmentEnergyCreator

C++: protocols::rna::AlignmentEnergyCreator::operator=(const class protocols::rna::AlignmentEnergyCreator &) –> class protocols::rna::AlignmentEnergyCreator &

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

Instantiate a new AlignmentEnergy.

C++: protocols::rna::AlignmentEnergyCreator::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.rna.AlignmentEnergyCreator) pyrosetta.rosetta.utility.vector1_core_scoring_ScoreType
Return the set of score types claimed by the EnergyMethod that

this EnergyMethodCreator creates in its create_energy_method() function.

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