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

Public Types | |
| typedef pose::Pose | Pose |
| typedef chemical::AA | AA |
Public Member Functions | |
| RamaPrePro () | |
| ~RamaPrePro () override=default | |
| Real | eval_rpp_rama_score (core::conformation::Conformation const &conf, core::chemical::ResidueTypeCOP res1, core::chemical::ResidueTypeCOP res2, utility::vector1< core::Real > const &mainchain_torsions) const |
| Evaluate the rama score for this residue (res1) given the identity of the next (res_aa2). More... | |
| void | eval_rpp_rama_derivatives (core::conformation::Conformation const &conf, core::chemical::ResidueTypeCOP res1, core::chemical::ResidueTypeCOP res2, utility::vector1< core::Real > const &mainchain_torsions, utility::vector1< core::Real > &gradient) const |
| Evaluate the rama score for this residue (res1) given the identity of the next (res_aa2). More... | |
| void | eval_rpp_rama_score (AA const res_aa1, core::chemical::ResidueTypeCOP res2, Real const phi, Real const psi, Real &score_rama, Real &denergy_dphi, Real &denergy_dpsi, bool const return_derivs) const |
| Evaluate the rama score for this residue (res_aa1) given the identity of the next (res_aa2). More... | |
| void | random_mainchain_torsions (core::conformation::Conformation const &conf, core::chemical::ResidueTypeCOP res1, core::chemical::ResidueTypeCOP res2, utility::vector1< core::Real > &torsions) const |
| Given the current residue (res1) and the next one (res2), randomly draw mainchain torsion values for the current residue, biased by the Ramachandran probabilities for its type. More... | |
| utility::vector1< core::Size > const & | get_mainchain_torsions_covered (core::conformation::Conformation const &conf, core::chemical::ResidueTypeCOP res1, core::chemical::ResidueTypeCOP res2) const |
| Get a const reference to the vector of mainchain torsions indices that the mainchain potential for a given noncanonical ResidueType covers. More... | |
| utility::vector1 < id::PartialAtomID > | atoms_w_dof_derivatives (conformation::Residue const &res, pose::Pose const &) const |
| Return a vector of the atoms that determine the DOFs covered by the RamaPrePro tables; these may extend beyond the residue in question and therefore must be described using PartialAtomIDs. More... | |
| void | random_mainchain_torsions (core::chemical::AA const res_aa1, core::chemical::ResidueTypeCOP res2, utility::vector1< core::Real > &torsions) const |
| Given the current residue (res1) and the next one (res2), randomly draw mainchain torsion values for the current residue, biased by the Ramachandran probabilities for its type. More... | |
| bool | is_N_substituted (core::chemical::ResidueTypeCOP restype) const |
| Returns true if this aa is aa_pro or aa_dpr, false otherwise. More... | |
Private Member Functions | |
| void | read_canonical_rpp_tables () |
| Ensure that the RamaPrePro scoring tables for the 20 canonical amino acids are set up, and that we are storing pointers to them in a map of AA enum -> MainchainScoreTableCOP. More... | |
| utility::vector1< core::Real > | invert_vector (utility::vector1< core::Real > const &input_vect) const |
| Return the input vector multiplied by -1. More... | |
| utility::vector1< core::Size > const & | get_mainchain_torsions_covered (core::conformation::Conformation const &conf, core::chemical::ResidueTypeCOP res, bool res_next_n_substituted) const |
| Get a const reference to the vector of mainchain torsions indices that the mainchain potential for a given noncanonical ResidueType covers. More... | |
Private Attributes | |
| std::map< core::chemical::AA, core::chemical::mainchain_potential::MainchainScoreTableCOP > | canonical_score_tables_ |
| Owning pointers to the MainchainScoreTables for the canonical amino acids. More... | |
| std::map< core::chemical::AA, core::chemical::mainchain_potential::MainchainScoreTableCOP > | canonical_prepro_score_tables_ |
| Owning pointers to the MainchainScoreTables for the canonical amino acids, pre-proline versions. More... | |
| core::scoring::RamaPrePro::RamaPrePro | ( | ) |
References read_canonical_rpp_tables().
|
overridedefault |
| utility::vector1< id::PartialAtomID > core::scoring::RamaPrePro::atoms_w_dof_derivatives | ( | conformation::Residue const & | res, |
| pose::Pose const & | pose | ||
| ) | const |
Return a vector of the atoms that determine the DOFs covered by the RamaPrePro tables; these may extend beyond the residue in question and therefore must be described using PartialAtomIDs.
The PartialAtomID is currently only able to represent the connect atoms themselves – they cannot specify the atoms away from the connect atoms that might also define torsions. If any RamaPrePro table were to use the last mainchain torsion in a residue (e.g. omega for amino acids), then the last atom defining that torsion would be excluded from the list.
References core::pose::Pose::conformation(), get_mainchain_torsions_covered(), core::conformation::insert_partial_atom_ids_for_mainchain_torsion(), and core::conformation::Residue::type_ptr().
Referenced by core::energy_methods::RamaPreProEnergy::atoms_with_dof_derivatives().
| void core::scoring::RamaPrePro::eval_rpp_rama_derivatives | ( | core::conformation::Conformation const & | conf, |
| core::chemical::ResidueTypeCOP | res1, | ||
| core::chemical::ResidueTypeCOP | res2, | ||
| utility::vector1< core::Real > const & | input_mainchain_torsions, | ||
| utility::vector1< core::Real > & | gradient | ||
| ) | const |
Evaluate the rama score for this residue (res1) given the identity of the next (res_aa2).
Evaluate the rama score for this residue (res1) given the identity of the next (res2).
This version works for noncanonical or canonical residues with any number of mainchain torsions. If the next residue's identity is pro or d-pro, a different score table is used.
This version works for noncanonical or canonical residues with any number of mainchain torsions. If the next residue's identity is pro or d-pro, a different score table is used.
References core::chemical::aa_gly, eval_rpp_rama_score(), core::scoring::ScoringManager::get_rama_prepro_mainchain_torsion_potential(), invert_vector(), core::chemical::is_canonical_D_aa(), core::chemical::is_canonical_L_aa_or_gly(), is_N_substituted(), and core::conformation::Conformation::residue_type_set_for_conf().
Referenced by core::energy_methods::RamaPreProEnergy::eval_intraresidue_dof_derivative().
| Real core::scoring::RamaPrePro::eval_rpp_rama_score | ( | core::conformation::Conformation const & | conf, |
| core::chemical::ResidueTypeCOP | res1, | ||
| core::chemical::ResidueTypeCOP | res2, | ||
| utility::vector1< core::Real > const & | input_mainchain_torsions | ||
| ) | const |
Evaluate the rama score for this residue (res1) given the identity of the next (res_aa2).
Evaluate the rama score for this residue (res1) given the identity of the next (res2).
This version works for noncanonical or canonical residues with any number of mainchain torsions. If the next residue's identity is pro or d-pro, a different score table is used.
References core::chemical::aa_gly, core::scoring::ScoringManager::get_rama_prepro_mainchain_torsion_potential(), invert_vector(), core::chemical::is_canonical_D_aa(), core::chemical::is_canonical_L_aa_or_gly(), is_N_substituted(), and core::conformation::Conformation::residue_type_set_for_conf().
Referenced by protocols::generalized_kinematic_closure::filter::GeneralizedKICfilter::apply_rama_prepro_check(), eval_rpp_rama_derivatives(), protocols::stepwise::modeler::protein::StepWiseProteinBackboneSampler::rama_energy(), and core::energy_methods::RamaPreProEnergy::residue_pair_energy().
| void core::scoring::RamaPrePro::eval_rpp_rama_score | ( | AA const | res_aa1, |
| core::chemical::ResidueTypeCOP | res2, | ||
| Real const | phi, | ||
| Real const | psi, | ||
| Real & | score_rama, | ||
| Real & | denergy_dphi, | ||
| Real & | denergy_dpsi, | ||
| bool const | return_derivs | ||
| ) | const |
Evaluate the rama score for this residue (res_aa1) given the identity of the next (res_aa2).
Evaluate the rama score for this residue (res_aa1) given the identity of the next (res2).
This version only works for canonical L-amino acids, canonical D-amino acids, or glycine. If the next residue's identity is pro or d-pro, a different score table is used. Note: if return_derivs is true, the gradient vector is populated only. If it is false, then only the score_rama value is populated.
References core::chemical::aa_gly, canonical_prepro_score_tables_, canonical_score_tables_, core::chemical::get_L_equivalent(), core::chemical::is_canonical_D_aa(), core::chemical::is_canonical_L_aa_or_gly(), is_N_substituted(), and core::chemical::num_canonical_aas.
| utility::vector1< core::Size > const & core::scoring::RamaPrePro::get_mainchain_torsions_covered | ( | core::conformation::Conformation const & | conf, |
| core::chemical::ResidueTypeCOP | res1, | ||
| core::chemical::ResidueTypeCOP | res2 | ||
| ) | const |
Get a const reference to the vector of mainchain torsions indices that the mainchain potential for a given noncanonical ResidueType covers.
For example, for an oligourea, this would return {1, 2, 3}, since the Rama maps for oligoureas cover phi, theta, and psi (mainchain torsions 1, 2, and 3, respectively), but not mu or omega (mainchain torsions 4 and 5).
| [in] | conf | The current conformation, for reference. |
| [in] | res1 | The current residue, for which we're drawing mainchain torsions. |
| [in] | res2 | The next residue, used to determine whether to use pre-proline tables or not. |
References is_N_substituted().
Referenced by atoms_w_dof_derivatives(), and protocols::cyclic_peptide_predict::SimpleCycpepPredictApplication::set_mainchain_torsions().
|
private |
Get a const reference to the vector of mainchain torsions indices that the mainchain potential for a given noncanonical ResidueType covers.
For example, for an oligourea, this would return {1, 2, 3}, since the Rama maps for oligoureas cover phi, theta, and psi (mainchain torsions 1, 2, and 3, respectively), but not mu or omega (mainchain torsions 4 and 5).
| [in] | conf | The current conformation, for reference. |
| [in] | res1 | The current residue, for which we're drawing mainchain torsions. |
| [in] | res2 | The next residue, used to determine whether to use pre-proline tables or not. |
References core::chemical::aa_unk, core::scoring::ScoringManager::get_rama_prepro_mainchain_torsion_potential(), and core::conformation::Conformation::residue_type_set_for_conf().
|
private |
Return the input vector multiplied by -1.
Referenced by eval_rpp_rama_derivatives(), and eval_rpp_rama_score().
| bool core::scoring::RamaPrePro::is_N_substituted | ( | core::chemical::ResidueTypeCOP | restype | ) | const |
Returns true if this aa is aa_pro or aa_dpr, false otherwise.
Also returns true for an N-methyl amino acid, peptoid, or proline-like oligourea.
References protocols::cluster::calibur::aa, core::chemical::aa_dpr, core::chemical::aa_pro, and core::chemical::ou3_pro.
Referenced by eval_rpp_rama_derivatives(), eval_rpp_rama_score(), get_mainchain_torsions_covered(), and random_mainchain_torsions().
| void core::scoring::RamaPrePro::random_mainchain_torsions | ( | core::conformation::Conformation const & | conf, |
| core::chemical::ResidueTypeCOP | res1, | ||
| core::chemical::ResidueTypeCOP | res2, | ||
| utility::vector1< core::Real > & | torsions | ||
| ) | const |
Given the current residue (res1) and the next one (res2), randomly draw mainchain torsion values for the current residue, biased by the Ramachandran probabilities for its type.
This version is general, usable for canonicals or noncanonicals.
| [in] | conf | The current conformation, for reference. |
| [in] | res1 | The current residue, for which we're drawing mainchain torsions. |
| [in] | res2 | The next residue, used to determine whether to use pre-proline tables or not. |
| [out] | torsions | A vector of mainchain torsions for the current residue. |
This version is general, usable for canonicals or noncanonicals.
| [in] | res1 | The current residue, for which we're drawing mainchain torsions. |
| [in] | res2 | The next residue, used to determine whether to use pre-proline tables or not. |
| [out] | torsions | A vector of mainchain torsions for the current residue. |
References core::chemical::aa_gly, core::chemical::is_canonical_D_aa(), core::chemical::is_canonical_L_aa_or_gly(), is_N_substituted(), and core::conformation::Conformation::residue_type_set_for_conf().
Referenced by protocols::backbone_moves::RandomizeBBByRamaPrePro::apply(), and protocols::cyclic_peptide_predict::SimpleCycpepPredictApplication::set_mainchain_torsions().
| void core::scoring::RamaPrePro::random_mainchain_torsions | ( | core::chemical::AA const | res_aa1, |
| core::chemical::ResidueTypeCOP | res2, | ||
| utility::vector1< core::Real > & | torsions | ||
| ) | const |
Given the current residue (res1) and the next one (res2), randomly draw mainchain torsion values for the current residue, biased by the Ramachandran probabilities for its type.
This version is for canonical residues only.
| [in] | res_aa1 | The AA enum for a canonical residue type. |
| [in] | res2 | The next residue, used to determine whether to use pre-proline tables or not. |
| [out] | torsions | A vector of mainchain torsions for the current residue. |
References canonical_prepro_score_tables_, canonical_score_tables_, core::chemical::get_L_equivalent(), core::chemical::is_canonical_D_aa(), is_N_substituted(), and core::chemical::num_canonical_aas.
|
private |
Ensure that the RamaPrePro scoring tables for the 20 canonical amino acids are set up, and that we are storing pointers to them in a map of AA enum -> MainchainScoreTableCOP.
References canonical_prepro_score_tables_, canonical_score_tables_, core::chemical::FA_STANDARD, core::chemical::first_l_aa, core::scoring::ScoringManager::get_rama_prepro_mainchain_torsion_potential(), and core::chemical::num_canonical_aas.
Referenced by RamaPrePro().
|
private |
Owning pointers to the MainchainScoreTables for the canonical amino acids, pre-proline versions.
Referenced by eval_rpp_rama_score(), random_mainchain_torsions(), and read_canonical_rpp_tables().
|
private |
Owning pointers to the MainchainScoreTables for the canonical amino acids.
Referenced by eval_rpp_rama_score(), random_mainchain_torsions(), and read_canonical_rpp_tables().
1.8.7