![]() |
Rosetta
2020.11
|
#include <RotamericSingleResidueDunbrackLibrary.hh>
Public Types | |
typedef SingleResidueDunbrackLibrary | parent |
![]() | |
typedef chemical::AA | AA |
Public Member Functions | |
RotamericSingleResidueDunbrackLibrary (chemical::ResidueType const &rt, bool dun02, bool use_bicubic, bool entropy_correction, core::Real prob_buried, core::Real prob_nonburied, bool const reduced_resolution_library=false) | |
Creator. More... | |
~RotamericSingleResidueDunbrackLibrary () override throw () | |
Real | rotamer_energy (conformation::Residue const &rsd, pose::Pose const &pose, RotamerLibraryScratchSpace &scratch) const override |
Virtual functions required by the base classes. More... | |
Real | rotamer_energy_deriv (conformation::Residue const &rsd, pose::Pose const &pose, RotamerLibraryScratchSpace &scratch) const override |
Real | best_rotamer_energy (conformation::Residue const &rsd, pose::Pose const &pose, bool curr_rotamer_only, RotamerLibraryScratchSpace &scratch) const override |
Returns the energy of the lowest-energy rotamer accessible to the given residue (based on e.g. its current phi and psi values). If curr_rotamer_only is true, then consider only the idealized version of the residue's current rotamer (local optimum); otherwise, consider all rotamers (global optimum). More... | |
void | assign_random_rotamer_with_bias (conformation::Residue const &rsd, pose::Pose const &pose, RotamerLibraryScratchSpace &scratch, numeric::random::RandomGenerator &RG, ChiVector &new_chi_angles, bool perturb_from_rotamer_center) const override |
Pick a rotamer for the input residue according to the rotamer probability distribution and assign chi angles to the input rsd. If perturb_from_rotamer_center is true, then push the rotamer off from the center; for chi angles with a normal distribution, the perturbation is taken from a Gaussian random number with a standard deviation matching the chi angle's standard deviation. For chi angles that are not normally distributed, the behavior is open to the derived classe's interpretation. More... | |
void | fill_rotamer_vector (pose::Pose const &pose, scoring::ScoreFunction const &scorefxn, pack::task::PackerTask const &task, utility::graph::GraphCOP packer_neighbor_graph, chemical::ResidueTypeCOP concrete_residue, conformation::Residue const &existing_residue, utility::vector1< utility::vector1< Real > > const &extra_chi_steps, bool buried, rotamers::RotamerVector &rotamers) const override |
utility::vector1 < DunbrackRotamerSampleData > | get_all_rotamer_samples (Real5 bbs) const override |
Return all of the rotamer sample data given a particular backbone bin. For N-terminus residues, hand in the first bb value SingleResidueDunbrackLibrary::NEUTRAL_PHI and for C-terminus residues, hand in the final bb value SingleResidueDunbrackLibrary::NEUTRAL_PSI. The returned samples should be in semi-decrasing order by probability; semi, because the rotamers are constructed in sorted order by their probability in the lower torsion bin that the input backbone torsions prescribe. More... | |
virtual Real | get_probability_for_rotamer (utility::fixedsizearray1< Real, N > bbs, Size rot_ind) const |
virtual DunbrackRotamerSampleData | get_rotamer (utility::fixedsizearray1< Real, N > bbs, Size rot_ind) const |
Real | get_probability_for_rotamer (Real phi, Real psi, Size rot_ind) const override |
Return the probability for a particular rotamer where rotamers are indexed in order of decreasing probability (or something very close to decreasing probability). More... | |
DunbrackRotamerSampleData | get_rotamer (Real phi, Real psi, Size rot_ind) const override |
Size | nchi () const override |
The number of chi represented by the library. More... | |
Size | nbb () const override |
the number of backbone dihedrals represented by the library More... | |
Size | n_rotamer_bins () const override |
void | write_to_file (utility::io::ozstream &out) const override |
void | write_to_binary (utility::io::ozstream &out) const override |
void | read_from_binary (utility::io::izstream &in) override |
bool | operator== (SingleResidueRotamerLibrary const &) const override |
Comparison operator, mainly intended to use in ASCII/binary comparsion tests Values tested should parallel those used in the read_from_binary() function. More... | |
void | get_rotamer_from_chi (ChiVector const &chi, RotVector &rot) const override |
Convert a vector of chi angles (degrees) into a integer vector of rotamer wells. Derived class should be consistent, but may be arbitrary in how wells divide angle space. More... | |
std::string | read_from_file (utility::io::izstream &in, bool first_line_three_letter_code_already_read) |
Read from input stream; stream may contain data for other amino acids. Quit once another amino acid is specified in the input file, returning the name of the next amino acid specifed (since it's already been extracted from the input stream). Return the empty string if no other amino acid is specified. More... | |
Size | find_another_representative_for_unlikely_rotamer (conformation::Residue const &rsd, pose::Pose const &pose, Size4 &rotwell) const |
void | interpolate_rotamers (conformation::Residue const &rsd, pose::Pose const &pose, RotamerLibraryScratchSpace &scratch, Size packed_rotno, PackedDunbrackRotamer< T, N, Real > &interpolated_rotamer) const |
void | get_bb_bins (utility::fixedsizearray1< Real, N > const &bbs, utility::fixedsizearray1< Size, N > &bb_bin, utility::fixedsizearray1< Size, N > &bb_bin_next, utility::fixedsizearray1< Real, N > &bb_alpha) const |
void | get_bb_bins (utility::fixedsizearray1< Real, N > const &bbs, utility::fixedsizearray1< Size, N > &bb_bin) const |
void | get_bb_bins (utility::vector1< core::Real > const &bbs, utility::vector1< core::Size > &bb_bin) const |
Version for external, non-template classes to access. More... | |
![]() | |
SingleResidueDunbrackLibrary & | operator= (SingleResidueDunbrackLibrary const &other)=delete |
SingleResidueDunbrackLibrary (SingleResidueDunbrackLibrary const &)=delete | |
SingleResidueDunbrackLibrary (chemical::ResidueType const &rt, Size const n_rotameric_chi, bool dun02, bool use_bicubic, bool dun_entropy_correction, core::Real prob_buried, core::Real prob_nonburied) | |
c-tor More... | |
virtual Size | memory_usage_in_bytes () const |
Virtual functions the derived classes must implement. More... | |
void | set_n_chi_bins (utility::vector1< Size > const &) |
Tell the base class the number of chi bins for each rotameric chi dimension. More... | |
Size | rotwell_2_rotno (utility::vector1< Size > const &rotwell) const |
Conversion functions. More... | |
Size | rotwell_2_rotno (Size4 const &rotwell) const |
Convert from the rotamer bin indices for each chi to the (non-compact) "rotamer number". More... | |
Size | rotno_2_packed_rotno (Size const rotno) const |
Convert from the rotamer number to the compacted "packed rotamer number". Returns 0 if rotno has no corresponding packed rotno. More... | |
Size | rotwell_2_packed_rotno (utility::vector1< Size > const &rotwell) const |
Convert from the rotamer bin indices for each chi to the compacted "packed rotamer number." Returns 0 if rotwell has no corresponding packed rotno. More... | |
Size | rotwell_2_packed_rotno (Size4 const &rotwell) const |
Convert from the rotamer bin indices for each chi to the compacted "packed rotamer number." Returns 0 if rotwell has no corresponding packed rotno. More... | |
void | packed_rotno_2_rotwell (Size const packed_rotno, utility::vector1< Size > &rotwell) const |
Convert from the packed rotamer number to the rotamer well. More... | |
void | packed_rotno_2_rotwell (Size const packed_rotno, Size4 &rotwell) const |
utility::vector1< Size > const & | packed_rotno_2_rotwell (Size const packed_rotno) const |
void | rotno_2_rotwell (Size const rotno, utility::vector1< Size > &rotwell) const |
Convert from the rotamer number to the rotamer well. More... | |
Size | bin_rotameric_chi (Real chi, Size which_chi) const |
, Turns out, when non-rotameric chi are taken out of the picture, all remaining chi are binned the same way, except proline. Valid only for Dun10 libraries. For D-amino acids, chi must be inverted before passing to this function. More... | |
void | bin_angle (Real const angle_start, Real const angle_step, Real const ASSERT_ONLY(angle_range), Size const nbins, Real const ang, Size &bin_lower, Size &bin_upper, Real &angle_alpha) const |
void | bin_angle (Real const angle_start, utility::vector1< core::Size > const &bin_equivs, Real const angle_step, Real const ASSERT_ONLY(angle_range), Size const nbins, Real const ang, Size &bin_lower, Size &bin_upper, Real &angle_alpha) const |
AA | aa () const |
The amino acid this library is representing. More... | |
Real | probability_to_accumulate_while_building_rotamers (bool buried) const |
When creating rotamer, what position in the CDF should one build until? Unlikely rotamers ( < 0.5 %) are numerous, but are very infrequently useful. More... | |
void | prob_to_accumulate (Real, Real) |
setters for accumulation probability cutoff (to support externally-controlled option dependence) More... | |
void | prob_to_accumulate_buried (Real) |
void | prob_to_accumulate_nonburied (Real) |
bool | operator== (rotamers::SingleResidueRotamerLibrary const &) const override |
Comparison operator, mainly intended to use in ASCII/binary comparsion tests Values tested should parallel those used in the read_from_binary() function. More... | |
![]() | |
SingleResidueRotamerLibrary () | |
~SingleResidueRotamerLibrary () override | |
virtual utility::vector1 < utility::vector1< core::Real > > | compute_proton_chi_samplings (chemical::ResidueType const &concrete_residue, pack::task::ResidueLevelTask const &rlt, bool buried) const |
Return a vector (indexed by proton_chi number) of vectors of dihedral values to use in proton chi sampling. More... | |
virtual utility::vector1 < dunbrack::ChiSetOP > | expand_proton_chis (utility::vector1< utility::vector1< core::Real > > const &sampling, chemical::ResidueType const &concrete_residue, core::Size max_rotamers=5000) const |
Given a vector of vectors of dihedrals to sample on proton chis, Will create the ChiSet vector combinitorially on those chi values (Note: The ChiSets are only valid/defined over the proton chis.) More... | |
virtual void | bump_filter (RotamerVector &rotamers, core::Size resid, scoring::ScoreFunction const &sf, pose::Pose const &pose, task::PackerTask const &task, utility::graph::GraphCOP packer_neighbor_graph) const |
Filter a RotamerVector by "bump energy" of a rotamer: All rotamers with bump energies over a certain threshold will be discarded Exception: if all rotamers are over the threshold, one rotamer (with the lowest bump energy) will be reserved. The vector "rotamers" will be modified "in-place". More... | |
virtual core::PackerEnergy | bump_check (core::conformation::ResidueCOP rotamer, core::Size resid, scoring::ScoreFunction const &sf, pose::Pose const &pose, task::PackerTask const &task, utility::graph::GraphCOP packer_neighbor_graph) const |
Computes the "bump energy" of a rotamer: the bump energy is the sum of rotamer's interactions with 1) the backbone-and-side chains of neighboring residues that are held fixed during this repacking optimization and 2) the backbones of neighboring residues that are changable during this repacking optimization. More... | |
virtual core::Size | current_rotamer (RotamerVector &rotamers, core::Size resid, task::PackerTask const &task, chemical::ResidueTypeCOP concrete_residue, conformation::Residue const &existing_residue) const |
Adds the current rotamer to rotamer vector, if the Rotlib supports it. More... | |
virtual void | emergency_rotamer (RotamerVector &rotamers, core::Size resid, pose::Pose const &pose, task::PackerTask const &task, chemical::ResidueTypeCOP concrete_residue, conformation::Residue const &existing_residue) const |
Generate an "emergency rotamer" if we don't have any. More... | |
RotamerVector | virtual_sidechain (RotamerVector const &rotamers, core::Size resid, pose::Pose const &pose, task::PackerTask const &task, chemical::ResidueTypeCOP concrete_residue, conformation::Residue const &existing_residue) const |
Add a virtualized sidechain to the rotamer vector if settings call for it. More... | |
Public Attributes | |
utility::fixedsizearray1< Size, N > | N_BB_BINS |
utility::fixedsizearray1< Real, N > | BB_BINRANGE |
utility::fixedsizearray1 < utility::vector1< core::Size > , N > | BIN_EQUIVALENTS |
utility::fixedsizearray1 < std::function< Real(conformation::Residue const &rsd, pose::Pose const &pose) >, N > | IVs |
Protected Member Functions | |
void | initialize_bicubic_splines () |
void | increment_tensor_index_recursively (utility::fixedsizearray1< Size,(N+1) > &bb_bin, utility::fixedsizearray1< Size,(N+1) > const &bb_bin_maxes, core::Size const recursion_level) const |
Given a RotamericSingleResidueDunbrackLibrary of type T (probably core::Real) and with N backbone dihedrals, a vector of coordinates in the backbone bins tensor, and a vector of sizes for the dimensions of the backbone bins tensor, increment the coordinate in a manner that ensures that all bins can be iterated over. More... | |
void | get_rotamer_from_chi_static_voronoi (ChiVector const &chi, core::Size &rot, core::conformation::Residue const &rsd, core::pose::Pose const &pose) const |
Given chi values and a pose residue, return indices specifying the nearest rotamer well centre. More... | |
void | get_rotamer_from_chi_static (ChiVector const &chi, Size4 &rot) const |
When given a statically sized fixedsizearray, use this method. More... | |
void | get_rotamer_from_chi_static (Real4 const &chi, Size4 &rot) const |
When given a statically sized fixedsizearray, use this method. More... | |
ObjexxFCL::FArray2D < PackedDunbrackRotamer< T, N > > const & | rotamers () const |
Read and write access for derived classes and parser class. More... | |
ObjexxFCL::FArray2D < PackedDunbrackRotamer< T, N > > & | rotamers () |
ObjexxFCL::FArray2D< Size > const & | packed_rotno_2_sorted_rotno () const |
ObjexxFCL::FArray2D< Size > & | packed_rotno_2_sorted_rotno () |
Size | memory_usage_static () const override |
Worker functions. More... | |
Size | memory_usage_dynamic () const override |
Real | eval_rotameric_energy_deriv (conformation::Residue const &rsd, pose::Pose const &pose, RotamerLibraryScratchSpace &scratch, bool eval_deriv) const |
Evaluates the score and chi-deviation penalty for the rotameric chi (in this class, that means all the chi) and stores the answers in the scratch object. If eval_deriv is true, then at the end of this function, scratch contains up-to-date dchidevpen_dbb, dchidevpen_dchi, chimean, chisd, chidev, chidevpen, dchimean_d(phi/psi), dchisd_d(phi/psi) rotwell and rotprob data. More... | |
void | interpolate_rotamers (RotamerLibraryScratchSpace &scratch, Size packed_rotno, utility::fixedsizearray1< Size, N > const &bb_bin, utility::fixedsizearray1< Size, N > const &bb_bin_next, utility::fixedsizearray1< Real, N > const &bb_alpha, PackedDunbrackRotamer< T, N, Real > &interpolated_rotamer, ChiVector const &chi=ChiVector(T, 0.0), bool const use_chi=false) const |
Size | make_conditional_packed_rotno_index (Size const original_bb_index, Size const bb_index, Size const packed_rotno, ChiVector const &chi, bool const use_chi) const |
Given the index of a rotamer in the current backbone bin, find the closest rotamer index in another backbone bin. More... | |
void | assign_random_rotamer (conformation::Residue const &rsd, pose::Pose const &pose, RotamerLibraryScratchSpace &scratch, numeric::random::RandomGenerator &RG, ChiVector &new_chi_angles, bool perturb_from_rotamer_center, Size &packed_rotno) const |
Assigns random chi angles and returns the packed_rotno for the chosen random rotamer. More... | |
void | assign_chi_for_interpolated_rotamer (PackedDunbrackRotamer< T, N, Real > const &interpolated_rotamer, conformation::Residue const &rsd, numeric::random::RandomGenerator &RG, ChiVector &new_chi_angles, bool perturb_from_rotamer_center) const |
void | correct_termini_derivatives (conformation::Residue const &rsd, RotamerLibraryScratchSpace &scratch) const |
Real | get_phi_from_rsd (conformation::Residue const &rsd) const override |
Real | get_psi_from_rsd (conformation::Residue const &rsd) const override |
utility::fixedsizearray1< Real, N > | get_IVs_from_rsd (conformation::Residue const &rsd, pose::Pose const &pose) const |
Real | get_IV_from_rsd (core::Size bbn, conformation::Residue const &rsd, pose::Pose const &pose) const |
template<class P > | |
DunbrackRotamer< T, N, P > | packed_rotamer_2_regular_rotamer (PackedDunbrackRotamer< T, N, P > const &packedrot) const |
void | enumerate_chi_sets (chemical::ResidueType const &rsd_type, pack::task::PackerTask const &task, Size const seqpos, bool buried, RotamericData< T, N > const &rotamer_data, utility::vector1< utility::vector1< Real > > const &extra_chi_steps, utility::vector1< ChiSetOP > &chi_set_vector) const |
This member function constructs a list of all combinations of chi angles for a rotamer sample. It relies on a virtual function chisamples_for_rotamer_chi that may be overridden by derived classes. With a list of samples for each chi, this function then enumerates all combinations. More... | |
virtual void | chisamples_for_rotamer_and_chi (chemical::ResidueType const &rsd_type, pack::task::ResidueLevelTask const &rtask, bool buried, Size const chi_index, RotamericData< T, N > const &rotamer_data, utility::vector1< Real > const &extra_steps, utility::vector1< Real > &total_chi, utility::vector1< int > &total_rot, utility::vector1< Real > &total_ex_steps, utility::vector1< Real > &chisample_prob) const |
Used in tandem with enumerate_chi_sets, this function pushes back chi sample data into the four input vectors: the 1. chi value sample,. More... | |
void | create_rotamers_from_chisets (pose::Pose const &pose, scoring::ScoreFunction const &scorefxn, pack::task::PackerTask const &task, utility::graph::GraphCOP packer_neighbor_graph, chemical::ResidueTypeCOP concrete_residue, conformation::Residue const &existing_residue, utility::vector1< ChiSetOP > const &chi_set_vector, rotamers::RotamerVector &rotamers) const |
Once all the chi have been enumerated, building the rotamers is a trivial task. This function is protected so that derived classes may simply enumerate their chi and then invoke this function. This arguably should be moved into the SingleResidueRotamerLibrary base class. More... | |
void | setup_entropy_correction () |
void | setup_entropy_correction () const |
![]() | |
bool | dun02 () const |
Read access for the derived class. More... | |
bool | use_bicubic () const |
Read access for the derived class. More... | |
bool | dun_entropy_correction () const |
Read access for the derived class. More... | |
utility::vector1< Size > const & | n_chi_bins () const |
Read access to the n_chi_bins_ vector. More... | |
void | mark_rotwell_exists (utility::vector1< Size > const &rotwell) |
The base class needs to be informed about which rotamer wells exist in order to create the rotwell to packed rot conversion data. set_chi_nbins must be called first. More... | |
void | declare_all_existing_rotwells_encountered () |
After the derived class has marked all the rotwells that do exist, the base class will create the rotwell to packerot conversion data. More... | |
Size | n_packed_rots () const |
The number of existing rotamers. More... | |
Size | n_possible_rots () const |
The number of possible rotamers – product of the chi_nbins_ array. More... | |
Private Member Functions | |
void | build_rotamers (pose::Pose const &pose, scoring::ScoreFunction const &scorefxn, pack::task::PackerTask const &task, utility::graph::GraphCOP packer_neighbor_graph, chemical::ResidueTypeCOP concrete_residue, conformation::Residue const &existing_residue, utility::vector1< utility::vector1< Real > > const &extra_chi_steps, bool buried, rotamers::RotamerVector &rotamers, PackedDunbrackRotamer< T, N, Real > const &interpolated_rotamer) const |
After an interpolated rotamer has been created, this method appends new rotamers to the vector of rotamers, taking extra samples at designated chi intervals if instructed to do so in the extra_chi_steps argument. More... | |
void | verify_phipsi_bins (Real phi, Real psi, Size const phibin, Size const psibin, Size const phibin_next, Size const psibin_next) const |
void | verify_bb_bins (utility::fixedsizearray1< Real, N > const &bbs, utility::fixedsizearray1< Size, N > const &bb_bin, utility::fixedsizearray1< Size, N > const &bb_bin_next) const |
Private Attributes | |
ObjexxFCL::FArray2D < PackedDunbrackRotamer< T, N > > | rotamers_ |
ObjexxFCL::FArray2D< Size > | packed_rotno_2_sorted_rotno_ |
utility::fixedsizearray1 < ObjexxFCL::FArray1D< Real >,(1 << N) > | ShannonEntropy_n_derivs_ |
bool | peptoid_ = false |
AMW: one peptoid flag needed. More... | |
bool | peptoid_is_achiral_ = true |
VKM: no, two, dammit! More... | |
bool | canonical_aa_ |
Is this a canonical amino acid? More... | |
bool | canonicals_use_voronoi_ |
Should canonicals use Voronoi-based detection of nearest rotamer well (true), or hard-coded definitions (false)? More... | |
bool | noncanonicals_use_voronoi_ |
Should noncanonicals use Voronoi-based detection of nearest rotamer well (true), or hard-coded definitions (false)? More... | |
bool | correct_rotamer_well_order_on_read_ |
If true, the order of rotamer wells is auto-corrected from the input rotamer file. False by default – shouldn't be necessary any more, with voronoi-based rotamer interpolation. More... | |
Friends | |
class | RotamericSingleResidueDunbrackLibraryParser |
class | SingleResidueDunbrackLibrary |
Additional Inherited Members | |
![]() | |
static void | n_rotamer_bins_for_aa (chemical::ResidueType const &rt, RotVector &rot, bool const dun02=false) |
Extract the number of rotamer bins (vector of bin counts for each chi) from the ResidueType and store it in rot. More... | |
static void | n_rotamer_bins_for_aa (chemical::AA const aa, RotVector &rot) |
static void | n_rotameric_bins_for_aa (chemical::AA const aa, RotVector &rot, bool dun02) |
static void | n_rotamer_bins_for_aa_02 (chemical::AA const aa, RotVector &rot) |
![]() | |
static Real const | PEPTIDE_NEUTRAL_PHI = -90 |
constants More... | |
static Real const | PEPTIDE_NEUTRAL_PSI = 130 |
static Real const | PEPTOID_NEUTRAL_OMG = 180 |
A good omega, phi, and psi values to use for terminal peptoid residues where they cannont be completely defined. More... | |
static Real const | PEPTOID_NEUTRAL_PHI = -90 |
static Real const | PEPTOID_NEUTRAL_PSI = 180 |
static Real const | ANGLE_DELTA |
Precision measures for comparsions. More... | |
static Real const | PROB_DELTA |
static Real const | ENERGY_DELTA |
static Real const | COEF_DELTA |
typedef SingleResidueDunbrackLibrary core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::parent |
core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::RotamericSingleResidueDunbrackLibrary | ( | chemical::ResidueType const & | rt, |
bool | dun02, | ||
bool | use_bicubic, | ||
bool | entropy_correction, | ||
core::Real | prob_buried, | ||
core::Real | prob_nonburied, | ||
bool const | reduced_resolution_library = false |
||
) |
Creator.
No default ctor RotamericSingleResidueDunbrackLibrary();
References core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::BB_BINRANGE, core::conformation::Residue::chain(), core::chemical::CTERM_CONNECT, core::conformation::Residue::has_variant_type(), core::chemical::ResidueType::is_aramid(), core::conformation::Residue::is_lower_terminus(), core::chemical::ResidueType::is_meta_aramid(), core::chemical::ResidueType::is_ortho_aramid(), core::chemical::ResidueType::is_para_aramid(), core::chemical::ResidueTypeBase::is_peptoid(), core::chemical::ResidueType::is_post_methylene_meta_aramid(), core::chemical::ResidueType::is_post_methylene_ortho_aramid(), core::chemical::ResidueType::is_post_methylene_para_aramid(), core::chemical::ResidueType::is_pre_methylene_meta_aramid(), core::chemical::ResidueType::is_pre_methylene_ortho_aramid(), core::chemical::ResidueType::is_pre_methylene_para_aramid(), core::chemical::ResidueType::is_pre_methylene_post_methylene_meta_aramid(), core::chemical::ResidueType::is_pre_methylene_post_methylene_ortho_aramid(), core::chemical::ResidueType::is_pre_methylene_post_methylene_para_aramid(), core::chemical::ResidueTypeBase::is_protein(), protocols::stepwise::modeler::is_protein(), core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::IVs, core::chemical::ResidueType::lower_connect_id(), core::conformation::Residue::mainchain_torsions(), core::chemical::element::N, core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::N_BB_BINS, core::chemical::NTERM_CONNECT, core::pack::dunbrack::SingleResidueDunbrackLibrary::PEPTIDE_NEUTRAL_PHI, core::pack::dunbrack::SingleResidueDunbrackLibrary::PEPTIDE_NEUTRAL_PSI, core::pack::dunbrack::SingleResidueDunbrackLibrary::PEPTOID_NEUTRAL_OMG, core::pack::dunbrack::SingleResidueDunbrackLibrary::PEPTOID_NEUTRAL_PHI, core::pack::dunbrack::SingleResidueDunbrackLibrary::PEPTOID_NEUTRAL_PSI, core::conformation::Residue::residue_connection_partner(), and core::conformation::Residue::type().
|
override |
|
protected |
|
protected |
Assigns random chi angles and returns the packed_rotno for the chosen random rotamer.
References core::pack::dunbrack::interpolate_rotamers(), core::pack::dunbrack::PackedDunbrackRotamer< S, N, P >::packed_rotno(), and core::pack::dunbrack::DunbrackRotamerMeanSD< S, N, P >::rotamer_probability().
|
overridevirtual |
Pick a rotamer for the input residue according to the rotamer probability distribution and assign chi angles to the input rsd. If perturb_from_rotamer_center is true, then push the rotamer off from the center; for chi angles with a normal distribution, the perturbation is taken from a Gaussian random number with a standard deviation matching the chi angle's standard deviation. For chi angles that are not normally distributed, the behavior is open to the derived classe's interpretation.
Implements core::pack::rotamers::SingleResidueRotamerLibrary.
Reimplemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T, N >.
|
overridevirtual |
Returns the energy of the lowest-energy rotamer accessible to the given residue (based on e.g. its current phi and psi values). If curr_rotamer_only is true, then consider only the idealized version of the residue's current rotamer (local optimum); otherwise, consider all rotamers (global optimum).
Implements core::pack::rotamers::SingleResidueRotamerLibrary.
Reimplemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T, N >.
References core::conformation::Residue::chi(), core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::get_rotamer_from_chi_static(), core::pack::dunbrack::interpolate_rotamers(), core::chemical::element::N, core::pack::dunbrack::DunbrackRotamerMeanSD< S, N, P >::rotamer_probability(), and core::pack::dunbrack::RotamerLibraryScratchSpace::rotwell().
|
private |
After an interpolated rotamer has been created, this method appends new rotamers to the vector of rotamers, taking extra samples at designated chi intervals if instructed to do so in the extra_chi_steps argument.
Load interpolated rotamer data into a RotamericData object on the stack so that it can be handed into the enumerate_chi_sets method, which itself relies on the "template method" chisamples_for_rotamer_and_chi. Enumerate the chi samples, and build rotamers from these chi samples.
"template method" is a design pattern where a base class calls a polymorphic method that can be overloaded by a derived class, usually in the middle of a function that does a lot of work. See "Design Patterns," Gamma et al.
References core::pack::dunbrack::DunbrackRotamerMeanSD< S, N, P >::rotamer_probability(), and core::conformation::Residue::seqpos().
|
protectedvirtual |
Used in tandem with enumerate_chi_sets, this function pushes back chi sample data into the four input vectors: the 1. chi value sample,.
Reimplemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T, N >.
References core::chemical::ResidueType::chi_2_proton_chi(), core::chemical::ResidueType::chi_atoms(), core::pack::dunbrack::DunbrackRotamerMeanSD< S, N, P >::chi_mean(), core::chemical::ResidueType::chi_rotamers(), core::pack::dunbrack::DunbrackRotamerMeanSD< S, N, P >::chi_sd(), core::pack::task::ResidueLevelTask::extrachi_sample_level(), core::chemical::ResidueType::ideal_xyz(), core::chemical::ResidueType::is_proton_chi(), core::pack::task::NO_EXTRA_CHI_SAMPLES, core::chemical::ResidueType::proton_chi_extra_samples(), core::chemical::ResidueType::proton_chi_samples(), core::pack::dunbrack::RotamericData< T, N >::rotamer(), and core::pack::dunbrack::DunbrackRotamer< S, N, P >::rotwell().
|
protected |
References core::pack::dunbrack::RotamerLibraryScratchSpace::dE_dbb(), core::pack::dunbrack::RotamerLibraryScratchSpace::dE_dbb_dev(), core::pack::dunbrack::RotamerLibraryScratchSpace::dE_dbb_rot(), core::pack::dunbrack::RotamerLibraryScratchSpace::dE_dbb_semi(), core::conformation::Residue::has_lower_connect(), core::conformation::Residue::has_upper_connect(), core::conformation::Residue::is_lower_terminus(), core::conformation::Residue::is_upper_terminus(), core::chemical::element::N, core::chemical::ResidueTypeBase::rotamer_library_specification(), and core::conformation::Residue::type().
|
protected |
Once all the chi have been enumerated, building the rotamers is a trivial task. This function is protected so that derived classes may simply enumerate their chi and then invoke this function. This arguably should be moved into the SingleResidueRotamerLibrary base class.
once a list of chi samples has been enumerated, this function instantiates Residue objectes and give them the correct geometry.
References core::pose::Pose::conformation(), core::conformation::ResidueFactory::create_residue(), core::pack::task::ResidueLevelTask::preserve_c_beta(), protocols::hotspot_hashing::reject, core::pack::task::PackerTask::residue_task(), core::pack::task::ResidueLevelTask::rotamer_operations(), and core::conformation::Residue::seqpos().
|
protected |
This member function constructs a list of all combinations of chi angles for a rotamer sample. It relies on a virtual function chisamples_for_rotamer_chi that may be overridden by derived classes. With a list of samples for each chi, this function then enumerates all combinations.
References core::chemical::ResidueType::nchi(), core::pack::task::PackerTask::residue_task(), core::pack::dunbrack::RotamericData< T, N >::rotamer(), and core::pack::dunbrack::DunbrackRotamerMeanSD< S, N, P >::rotamer_probability().
|
protected |
Evaluates the score and chi-deviation penalty for the rotameric chi (in this class, that means all the chi) and stores the answers in the scratch object. If eval_deriv is true, then at the end of this function, scratch contains up-to-date dchidevpen_dbb, dchidevpen_dchi, chimean, chisd, chidev, chidevpen, dchimean_d(phi/psi), dchisd_d(phi/psi) rotwell and rotprob data.
References protocols::cluster::calibur::aa, core::conformation::Residue::chi(), core::pack::dunbrack::RotamerLibraryScratchSpace::chidev(), core::pack::dunbrack::RotamerLibraryScratchSpace::chidevpen(), core::pack::dunbrack::RotamerLibraryScratchSpace::chimean(), core::pack::dunbrack::RotamerLibraryScratchSpace::chisd(), core::pack::dunbrack::RotamerLibraryScratchSpace::dchidevpen_dbb(), core::pack::dunbrack::RotamerLibraryScratchSpace::dchidevpen_dchi(), core::pack::dunbrack::RotamerLibraryScratchSpace::dchimean_dbb(), core::pack::dunbrack::RotamerLibraryScratchSpace::dchisd_dbb(), core::pack::dunbrack::RotamerLibraryScratchSpace::dE_dbb_dev_perchi(), core::pack::dunbrack::RotamerLibraryScratchSpace::dneglnrotprob_dbb(), core::pack::dunbrack::RotamerLibraryScratchSpace::drotprob_dbb(), core::sequence::end, core::pack::dunbrack::RotamerLibraryScratchSpace::entropy(), core::pack::dunbrack::RotamerLibraryScratchSpace::fa_dun_dev(), core::pack::dunbrack::RotamerLibraryScratchSpace::fa_dun_rot(), core::pack::dunbrack::RotamerLibraryScratchSpace::fa_dun_semi(), core::pack::dunbrack::RotamerLibraryScratchSpace::fa_dun_tot(), core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::get_rotamer_from_chi_static(), core::pack::dunbrack::interpolate_rotamers(), core::chemical::ResidueType::is_mirrored_type(), core::chemical::element::N, core::pack::dunbrack::RotamerLibraryScratchSpace::negln_rotprob(), core::pack::dunbrack::RotamerLibraryScratchSpace::rotprob(), core::pack::dunbrack::RotamerLibraryScratchSpace::rotwell(), protocols::hybridization::score, core::pack::dunbrack::subtract_chi_angles(), and core::conformation::Residue::type().
|
overridevirtual |
Implements core::pack::rotamers::SingleResidueRotamerLibrary.
Reimplemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T, N >.
References core::pack::dunbrack::interpolate_rotamers(), core::chemical::ResidueType::is_mirrored_type(), core::chemical::element::N, core::pack::dunbrack::DunbrackRotamerMeanSD< S, N, P >::rotamer_probability(), and core::conformation::Residue::type().
Size core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::find_another_representative_for_unlikely_rotamer | ( | conformation::Residue const & | rsd, |
pose::Pose const & | pose, | ||
Size4 & | rotwell | ||
) | const |
The new rotamer library represents only 75 of 81 possible arginine rotamers, and 75 of 81 lysine rotamers. In the unlikely event that a rotamer is encountered that's not represented in the library, find another rotamer to represent it. Ideally, this stand-in rotamer would be closest to the input rotamer in physical geometry. (sidechain atom rms, e.g.) The following code instead first looks through all possible rotamers with a Hamming distance of one from input rotamer trying to find one that works, looking first for rotamers from the furthest chi toward the closest chi. If no such rotamer may be found, it gives up and returns the most-probable rotamer for a phi-psi bin.
This function modifies the "rotwell" assigned to this rotamer so that later code that relies on the consistency of the rotwell and packed_rotno information will behave correctly.
Referenced by protocols::features::RotamerInitializer< T, N >::initialize_rotamer().
|
overridevirtual |
Return all of the rotamer sample data given a particular backbone bin. For N-terminus residues, hand in the first bb value SingleResidueDunbrackLibrary::NEUTRAL_PHI and for C-terminus residues, hand in the final bb value SingleResidueDunbrackLibrary::NEUTRAL_PSI. The returned samples should be in semi-decrasing order by probability; semi, because the rotamers are constructed in sorted order by their probability in the lower torsion bin that the input backbone torsions prescribe.
Implements core::pack::dunbrack::SingleResidueDunbrackLibrary.
Reimplemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T, N >.
References core::pack::dunbrack::DunbrackRotamerMeanSD< S, N, P >::chi_mean(), core::pack::dunbrack::DunbrackRotamerMeanSD< S, N, P >::chi_sd(), core::pack::dunbrack::interpolate_rotamers(), core::chemical::element::N, core::pack::dunbrack::PackedDunbrackRotamer< S, N, P >::packed_rotno(), core::pack::dunbrack::DunbrackRotamerMeanSD< S, N, P >::rotamer_probability(), core::pack::dunbrack::DunbrackRotamerSampleData::set_chi_mean(), core::pack::dunbrack::DunbrackRotamerSampleData::set_chi_sd(), core::pack::dunbrack::DunbrackRotamerSampleData::set_nchi(), core::pack::dunbrack::DunbrackRotamerSampleData::set_prob(), and core::pack::dunbrack::DunbrackRotamerSampleData::set_rotwell().
void core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::get_bb_bins | ( | utility::fixedsizearray1< Real, N > const & | bbs, |
utility::fixedsizearray1< Size, N > & | bb_bin, | ||
utility::fixedsizearray1< Size, N > & | bb_bin_next, | ||
utility::fixedsizearray1< Real, N > & | bb_alpha | ||
) | const |
The Dunbrack library's phi/psi data for a grid point (x,y) collects data in the neighborhood of (x,y). As an interpolation point p moves toward a grid point (x,y), the (x,y) share in the interpolated value goes to 1. This is distinct from having interpolation wells where an interpolation in the center of a well produces the maximum contribution from that well. Most of the basic::interpolation code is designed for the second interpretation of interpolation, and so CTSA's Dunbrack library code did funky thinks like shift by 5 degrees so that the basic::interpolation code could shift it back by 5 degrees again. The code below makes no such shift.
The alpha fraction is the distance along each axis that the interpolation point has progressed from the lower grid point toward the upper grid point; it ranges from 0 to 1.
References core::chemical::element::N.
Referenced by core::pack::dunbrack::RotamericSingleResidueDunbrackLibraryParser::configure_rotameric_single_residue_dunbrack_library().
void core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::get_bb_bins | ( | utility::fixedsizearray1< Real, N > const & | bbs, |
utility::fixedsizearray1< Size, N > & | bb_bin | ||
) | const |
void core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::get_bb_bins | ( | utility::vector1< core::Real > const & | bbs, |
utility::vector1< core::Size > & | bb_bin | ||
) | const |
Version for external, non-template classes to access.
Converts to fixedsizearrays internally.
References core::chemical::element::N.
|
protected |
Handle lower-term residues by returning a "neutral" phi value
|
protected |
Handle upper-term residues by returning a "neutral" psi value
References core::chemical::element::N.
|
overrideprotectedvirtual |
Handle lower-term residues by returning a "neutral" phi value
Implements core::pack::dunbrack::SingleResidueDunbrackLibrary.
References core::conformation::Residue::has_lower_connect(), core::conformation::Residue::is_lower_terminus(), core::chemical::ResidueType::is_mirrored_type(), core::conformation::Residue::is_peptoid(), core::conformation::Residue::is_protein(), core::conformation::Residue::mainchain_torsion(), and core::conformation::Residue::type().
|
virtual |
|
overridevirtual |
Return the probability for a particular rotamer where rotamers are indexed in order of decreasing probability (or something very close to decreasing probability).
Implements core::pack::dunbrack::SingleResidueDunbrackLibrary.
|
overrideprotectedvirtual |
Handle upper-term residues by returning a "neutral" psi value
Implements core::pack::dunbrack::SingleResidueDunbrackLibrary.
References core::conformation::Residue::has_upper_connect(), core::chemical::ResidueType::is_mirrored_type(), core::conformation::Residue::is_peptoid(), core::conformation::Residue::is_protein(), core::conformation::Residue::is_upper_terminus(), core::conformation::Residue::mainchain_torsion(), and core::conformation::Residue::type().
|
virtual |
Reimplemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T, N >.
References core::pack::dunbrack::DunbrackRotamerMeanSD< S, N, P >::chi_mean(), core::pack::dunbrack::DunbrackRotamerMeanSD< S, N, P >::chi_sd(), core::pack::dunbrack::interpolate_rotamers(), core::pack::dunbrack::PackedDunbrackRotamer< S, N, P >::packed_rotno(), core::pack::dunbrack::DunbrackRotamerMeanSD< S, N, P >::rotamer_probability(), core::pack::dunbrack::DunbrackRotamerSampleData::set_chi_mean(), core::pack::dunbrack::DunbrackRotamerSampleData::set_chi_sd(), core::pack::dunbrack::DunbrackRotamerSampleData::set_nchi(), core::pack::dunbrack::DunbrackRotamerSampleData::set_prob(), and core::pack::dunbrack::DunbrackRotamerSampleData::set_rotwell().
|
overridevirtual |
|
overridevirtual |
Convert a vector of chi angles (degrees) into a integer vector of rotamer wells. Derived class should be consistent, but may be arbitrary in how wells divide angle space.
Implements core::pack::dunbrack::SingleResidueDunbrackLibrary.
Reimplemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T, N >.
Referenced by protocols::features::RotamerInitializer< T, N >::initialize_rotamer().
|
protected |
When given a statically sized fixedsizearray, use this method.
Referenced by core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::best_rotamer_energy(), and core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::eval_rotameric_energy_deriv().
|
protected |
When given a statically sized fixedsizearray, use this method.
References protocols::cluster::calibur::aa, core::chemical::get_L_equivalent(), core::chemical::is_canonical_D_aa(), core::chemical::is_canonical_L_aa_or_gly(), and core::pack::dunbrack::rotamer_from_chi_02().
|
protected |
Given chi values and a pose residue, return indices specifying the nearest rotamer well centre.
This version uses a Voronoi-inspired algorithm: the nearest rotamer well to the input chi values, in wraparound angle space, is returned. This is compatible with non-canonicals. Might be slightly slower.
References core::pack::dunbrack::DunbrackRotamerMeanSD< S, N, P >::chi_mean(), core::chemical::ResidueType::is_mirrored_type(), core::chemical::element::N, core::pack::dunbrack::PackedDunbrackRotamer< S, N, P >::packed_rotno(), and core::conformation::Residue::type().
|
protected |
Given a RotamericSingleResidueDunbrackLibrary of type T (probably core::Real) and with N backbone dihedrals, a vector of coordinates in the backbone bins tensor, and a vector of sizes for the dimensions of the backbone bins tensor, increment the coordinate in a manner that ensures that all bins can be iterated over.
|
protected |
void core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::interpolate_rotamers | ( | conformation::Residue const & | rsd, |
pose::Pose const & | pose, | ||
RotamerLibraryScratchSpace & | scratch, | ||
Size | packed_rotno, | ||
PackedDunbrackRotamer< T, N, Real > & | interpolated_rotamer | ||
) | const |
|
protected |
References core::pack::dunbrack::DunbrackRotamerMeanSD< S, N, P >::chi_mean(), core::pack::dunbrack::DunbrackRotamerMeanSD< S, N, P >::chi_sd(), core::pack::dunbrack::RotamerLibraryScratchSpace::chimean(), core::pack::dunbrack::RotamerLibraryScratchSpace::chisd(), core::pack::dunbrack::RotamerLibraryScratchSpace::dchimean_dbb(), core::pack::dunbrack::RotamerLibraryScratchSpace::dchisd_dbb(), core::pack::dunbrack::RotamerLibraryScratchSpace::dentropy_dbb(), core::pack::dunbrack::RotamerLibraryScratchSpace::dneglnrotprob_dbb(), core::pack::dunbrack::RotamerLibraryScratchSpace::drotprob_dbb(), core::pack::dunbrack::RotamerLibraryScratchSpace::entropy(), core::pack::dunbrack::interpolate_polylinear_by_value(), core::chemical::element::N, core::pack::dunbrack::RotamerLibraryScratchSpace::negln_rotprob(), core::pack::dunbrack::PackedDunbrackRotamer< S, N, P >::packed_rotno(), core::pack::dunbrack::polycubic_interpolation(), rot(), core::pack::dunbrack::DunbrackRotamerMeanSD< S, N, P >::rotamer_probability(), and core::pack::dunbrack::RotamerLibraryScratchSpace::rotprob().
|
protected |
Given the index of a rotamer in the current backbone bin, find the closest rotamer index in another backbone bin.
References core::pack::dunbrack::DunbrackRotamerMeanSD< S, N, P >::chi_mean(), and core::pack::dunbrack::PackedDunbrackRotamer< S, N, P >::packed_rotno().
|
overrideprotectedvirtual |
Measures the amount of dynamically allocated data in this class. Must recurse to parent to count parent's dynamically allocated data.
Reimplemented from core::pack::dunbrack::SingleResidueDunbrackLibrary.
Reimplemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T, N >.
References protocols::analysis::total.
|
overrideprotectedvirtual |
Worker functions.
called only if the library is actually an RSRDL<T> object. Derived classes should not call this function or recurse. Accounts for the statically allocated data that's part of this class.
Implements core::pack::dunbrack::SingleResidueDunbrackLibrary.
Reimplemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T, N >.
|
overridevirtual |
Implements core::pack::dunbrack::SingleResidueDunbrackLibrary.
Reimplemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T, N >.
|
overridevirtual |
the number of backbone dihedrals represented by the library
Implements core::pack::dunbrack::SingleResidueDunbrackLibrary.
Reimplemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T, N >.
References core::chemical::element::N.
|
overridevirtual |
The number of chi represented by the library.
Implements core::pack::dunbrack::SingleResidueDunbrackLibrary.
Reimplemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T, N >.
|
overridevirtual |
Comparison operator, mainly intended to use in ASCII/binary comparsion tests Values tested should parallel those used in the read_from_binary() function.
Reimplemented from core::pack::rotamers::SingleResidueRotamerLibrary.
Reimplemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T, N >.
References protocols::cluster::calibur::aa, core::chemical::element::N, core::pack::dunbrack::SingleResidueDunbrackLibrary::n_packed_rots(), core::chemical::name_from_aa(), core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::packed_rotno_2_sorted_rotno_, core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::rotamers_, and core::pack::dunbrack::TR().
|
protected |
References core::pack::dunbrack::DunbrackRotamerMeanSD< S, N, P >::chi_mean(), core::pack::dunbrack::DunbrackRotamerMeanSD< S, N, P >::chi_sd(), core::pack::dunbrack::PackedDunbrackRotamer< S, N, P >::packed_rotno(), core::pack::dunbrack::DunbrackRotamerMeanSD< S, N, P >::rotamer_probability(), and core::pack::dunbrack::DunbrackRotamer< S, N, P >::rotwell().
|
inlineprotected |
|
inlineprotected |
|
overridevirtual |
Reimplemented from core::pack::dunbrack::SingleResidueDunbrackLibrary.
Reimplemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T, N >.
References core::chemical::element::N, and core::pack::dunbrack::product().
std::string core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::read_from_file | ( | utility::io::izstream & | infile, |
bool | first_line_three_letter_code_already_read | ||
) |
Read from input stream; stream may contain data for other amino acids. Quit once another amino acid is specified in the input file, returning the name of the next amino acid specifed (since it's already been extracted from the input stream). Return the empty string if no other amino acid is specified.
Returns the three letter string of the next amino acid specified in the input library.
References protocols::cluster::calibur::aa, core::pack::dunbrack::RotamericSingleResidueDunbrackLibraryParser::configure_rotameric_single_residue_dunbrack_library(), core::pack::dunbrack::DUNBRACK_FILE_DEFAULT_SCTOR, core::chemical::element::N, and core::pack::dunbrack::RotamericSingleResidueDunbrackLibraryParser::read_file().
Referenced by core::pack::dunbrack::RotamerLibrary::create_rotameric_dunlib().
|
overridevirtual |
Virtual functions required by the base classes.
Implements core::pack::rotamers::SingleResidueRotamerLibrary.
Reimplemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T, N >.
|
overridevirtual |
Implements core::pack::rotamers::SingleResidueRotamerLibrary.
Reimplemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T, N >.
References core::pack::dunbrack::RotamerLibraryScratchSpace::dchidevpen_dbb(), core::pack::dunbrack::RotamerLibraryScratchSpace::dchidevpen_dchi(), core::pack::dunbrack::RotamerLibraryScratchSpace::dE_dbb(), core::pack::dunbrack::RotamerLibraryScratchSpace::dE_dbb_dev(), core::pack::dunbrack::RotamerLibraryScratchSpace::dE_dbb_rot(), core::pack::dunbrack::RotamerLibraryScratchSpace::dE_dchi(), core::pack::dunbrack::RotamerLibraryScratchSpace::dE_dchi_dev(), core::pack::dunbrack::RotamerLibraryScratchSpace::dentropy_dbb(), core::pack::dunbrack::RotamerLibraryScratchSpace::dneglnrotprob_dbb(), core::pack::dunbrack::RotamerLibraryScratchSpace::drotprob_dbb(), core::chemical::ResidueType::is_mirrored_type(), core::chemical::element::N, core::conformation::Residue::name(), core::pack::dunbrack::RotamerLibraryScratchSpace::rotprob(), protocols::hybridization::score, core::conformation::Residue::seqpos(), and core::conformation::Residue::type().
|
inlineprotected |
Read and write access for derived classes and parser class.
References core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::rotamers_.
Referenced by core::pack::dunbrack::RotamericSingleResidueDunbrackLibraryParser::configure_rotameric_single_residue_dunbrack_library().
|
inlineprotected |
|
protected |
References core::chemical::element::N, and core::pack::dunbrack::product().
|
protected |
|
private |
References protocols::cluster::calibur::aa, and core::chemical::element::N.
|
private |
|
overridevirtual |
Reimplemented from core::pack::dunbrack::SingleResidueDunbrackLibrary.
Reimplemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T, N >.
References core::chemical::element::N, and core::pack::dunbrack::product().
|
overridevirtual |
Implements core::pack::rotamers::SingleResidueRotamerLibrary.
Reimplemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T, N >.
|
friend |
|
friend |
utility::fixedsizearray1< Real, N > core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::BB_BINRANGE |
utility::fixedsizearray1< utility::vector1< core::Size >, N> core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::BIN_EQUIVALENTS |
|
private |
Is this a canonical amino acid?
|
private |
Should canonicals use Voronoi-based detection of nearest rotamer well (true), or hard-coded definitions (false)?
Read from options system in constructor. Defaults to false (old behaviour preserved), though if we switch this to true at some point in the future, we could deprecate a lot of hard-coded well definitions.
|
private |
If true, the order of rotamer wells is auto-corrected from the input rotamer file. False by default – shouldn't be necessary any more, with voronoi-based rotamer interpolation.
utility::fixedsizearray1< std::function< Real( conformation::Residue const & rsd, pose::Pose const & pose ) >, N > core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::IVs |
utility::fixedsizearray1< Size, N > core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::N_BB_BINS |
|
private |
Should noncanonicals use Voronoi-based detection of nearest rotamer well (true), or hard-coded definitions (false)?
Read from options system in constructor. Defaults to false (old behaviour preserved), though if we switch this to true at some point in the future, we could deprecate a lot of hard-coded well definitions.
|
private |
Quick lookup that lists the sorted position for the packed rotamer number given a phi/psi. Indexed by (bb_bin_index, packed_rotno ).
Referenced by core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::operator==(), and core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::packed_rotno_2_sorted_rotno().
|
private |
AMW: one peptoid flag needed.
|
private |
VKM: no, two, dammit!
True if the petoid is entirely achiral (i.e. the sidechain is achiral, since the backbone always is). False for peptoids with chiral sidechains.
|
private |
The (chi_mean, chi_sd, packed_rotno, and prob) data for the chi dihedrals The FArray3D is indexed into by (bb_bin_index, sorted_index ), where sorted index simply means the order for a particular packed_rotno in the list of rotamers sorted by probability and the bb_bin_index is a composite of what you would get from essentially expressing the backbone torsions as a number in base N_BB_BINS (often 36).
Referenced by core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::operator==(), and core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::rotamers().
|
private |