Rosetta  2020.37
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
core::pack::dunbrack::SingleResidueDunbrackLibrary Class Referenceabstract

#include <SingleResidueDunbrackLibrary.hh>

Inheritance diagram for core::pack::dunbrack::SingleResidueDunbrackLibrary:
Inheritance graph
[legend]

Public Types

typedef chemical::AA AA
 

Public Member Functions

SingleResidueDunbrackLibraryoperator= (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 void write_to_binary (utility::io::ozstream &out) const
 
virtual void read_from_binary (utility::io::izstream &in)
 
virtual utility::vector1
< DunbrackRotamerSampleData
get_all_rotamer_samples (Real5 bbs) const =0
 Return all of the rotamer sample data given a particular phi/psi. For N-terminus residues, hand in the phi value SingleResidueDunbrackLibrary::PHI_NEUTRAL and for C-terminus residues, hand in the psi value SingleResidueDunbrackLibrary::PSI_NEUTRAL. 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 phi-psi bin that the input phi/psi perscribes. More...
 
virtual Real get_probability_for_rotamer (Real phi, Real psi, Size rot_ind) const =0
 Return the probability for a particular rotamer where rotamers are indexed in order of decreasing probability (or something very close to decreasing probability). More...
 
virtual DunbrackRotamerSampleData get_rotamer (Real phi, Real psi, Size rot_ind) const =0
 
virtual Real get_phi_from_rsd (conformation::Residue const &rsd) const =0
 
virtual Real get_psi_from_rsd (conformation::Residue const &rsd) const =0
 
virtual Size memory_usage_in_bytes () const
 Virtual functions the derived classes must implement. More...
 
virtual Size nchi () const =0
 The number of chi represented by the library. More...
 
virtual Size nbb () const =0
 the number of backbone dihedrals represented by the library More...
 
virtual Size n_rotamer_bins () const =0
 
void set_n_chi_bins (utility::vector1< Size > const &)
 Tell the base class the number of chi bins for each rotameric chi dimension. More...
 
virtual void get_rotamer_from_chi (ChiVector const &chi, RotVector &rot) const =0
 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...
 
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...
 
- Public Member Functions inherited from core::pack::rotamers::SingleResidueRotamerLibrary
 SingleResidueRotamerLibrary ()
 
 ~SingleResidueRotamerLibrary () override
 
virtual Real rotamer_energy_deriv (conformation::Residue const &rsd, pose::Pose const &pose, dunbrack::RotamerLibraryScratchSpace &scratch) const =0
 
virtual Real rotamer_energy (conformation::Residue const &rsd, pose::Pose const &pose, dunbrack::RotamerLibraryScratchSpace &scratch) const =0
 
virtual Real best_rotamer_energy (conformation::Residue const &rsd, pose::Pose const &pose, bool curr_rotamer_only, dunbrack::RotamerLibraryScratchSpace &scratch) const =0
 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...
 
virtual void assign_random_rotamer_with_bias (conformation::Residue const &rsd, pose::Pose const &pose, dunbrack::RotamerLibraryScratchSpace &scratch, numeric::random::RandomGenerator &RG, dunbrack::ChiVector &new_chi_angles, bool perturb_from_rotamer_center) const =0
 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...
 
virtual 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, RotamerVector &rotamers) const =0
 
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...
 
virtual void write_to_file (utility::io::ozstream &out) const =0
 

Static Public Member Functions

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 Public Attributes

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
 

Protected Member Functions

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...
 
virtual Size memory_usage_static () const =0
 Worker functions available to the derived classes. More...
 
virtual Size memory_usage_dynamic () const
 
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 hokey_template_workaround ()
 This function forces the instantiation of virtual templated methods in the derived classes. Functions like this one are necessary when combining polymorphism and templates. Though these functions must be compiled, they need never be called. Do not call this function. More...
 

Private Attributes

bool const dun02_
 
bool use_bicubic_
 
bool dun_entropy_correction_
 
AA const aa_
 data More...
 
Size const n_rotameric_chi_
 
utility::vector1< Sizen_chi_bins_
 
utility::vector1< Sizen_chi_products_
 
Size n_packed_rots_
 
Size n_possible_rots_
 
Real prob_to_accumulate_buried_
 
Real prob_to_accumulate_nonburied_
 
utility::vector1< boolrotwell_exists_
 
bool packed_rotno_conversion_data_current_
 
utility::vector1< Sizerotno_2_packed_rotno_
 
utility::vector1< Sizepacked_rotno_2_rotno_
 
utility::vector1
< utility::vector1< Size > > 
packed_rotno_2_rotwell_
 

Member Typedef Documentation

Constructor & Destructor Documentation

core::pack::dunbrack::SingleResidueDunbrackLibrary::SingleResidueDunbrackLibrary ( SingleResidueDunbrackLibrary const &  )
delete
core::pack::dunbrack::SingleResidueDunbrackLibrary::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 
)

Member Function Documentation

AA core::pack::dunbrack::SingleResidueDunbrackLibrary::aa ( ) const
inline

The amino acid this library is representing.

References aa_.

void core::pack::dunbrack::SingleResidueDunbrackLibrary::bin_angle ( Real const  angle_start,
Real const  angle_step,
Real const   ASSERT_ONLYangle_range,
Size const  nbins,
Real const  ang,
Size bin_lower,
Size bin_upper,
Real angle_alpha 
) const
inline
void core::pack::dunbrack::SingleResidueDunbrackLibrary::bin_angle ( Real const  angle_start,
utility::vector1< core::Size > const &  bin_equivs,
Real const  angle_step,
Real const   ASSERT_ONLYangle_range,
Size const  nbins,
Real const  ang,
Size bin_lower,
Size bin_upper,
Real angle_alpha 
) const
inline
Size core::pack::dunbrack::SingleResidueDunbrackLibrary::bin_rotameric_chi ( Real  chi,
Size  which_chi 
) const
inline

, 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.

References aa_, core::chemical::aa_b3p, core::chemical::aa_dpr, core::chemical::aa_pro, core::chemical::ou3_pro, and core::id::to_string().

void core::pack::dunbrack::SingleResidueDunbrackLibrary::declare_all_existing_rotwells_encountered ( )
protected

After the derived class has marked all the rotwells that do exist, the base class will create the rotwell to packerot conversion data.

After the derived class has marked all the rotwells that do exist, the base class will create the rotwell to packedrot conversion data.

References n_packed_rots_, n_possible_rots_, packed_rotno_2_rotno_, packed_rotno_2_rotwell_, packed_rotno_conversion_data_current_, rotno_2_packed_rotno_, rotno_2_rotwell(), and rotwell_exists_.

Referenced by core::pack::dunbrack::RotamericSingleResidueDunbrackLibraryParser::configure_rotameric_single_residue_dunbrack_library().

bool core::pack::dunbrack::SingleResidueDunbrackLibrary::dun02 ( ) const
inlineprotected

Read access for the derived class.

References dun02_.

Referenced by n_rotamer_bins_for_aa().

bool core::pack::dunbrack::SingleResidueDunbrackLibrary::dun_entropy_correction ( ) const
inlineprotected
virtual utility::vector1< DunbrackRotamerSampleData > core::pack::dunbrack::SingleResidueDunbrackLibrary::get_all_rotamer_samples ( Real5  bbs) const
pure virtual

Return all of the rotamer sample data given a particular phi/psi. For N-terminus residues, hand in the phi value SingleResidueDunbrackLibrary::PHI_NEUTRAL and for C-terminus residues, hand in the psi value SingleResidueDunbrackLibrary::PSI_NEUTRAL. 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 phi-psi bin that the input phi/psi perscribes.

Implemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T, N >, and core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >.

virtual Real core::pack::dunbrack::SingleResidueDunbrackLibrary::get_phi_from_rsd ( conformation::Residue const &  rsd) const
pure virtual
virtual Real core::pack::dunbrack::SingleResidueDunbrackLibrary::get_probability_for_rotamer ( Real  phi,
Real  psi,
Size  rot_ind 
) const
pure virtual

Return the probability for a particular rotamer where rotamers are indexed in order of decreasing probability (or something very close to decreasing probability).

Implemented in core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >.

virtual Real core::pack::dunbrack::SingleResidueDunbrackLibrary::get_psi_from_rsd ( conformation::Residue const &  rsd) const
pure virtual
virtual DunbrackRotamerSampleData core::pack::dunbrack::SingleResidueDunbrackLibrary::get_rotamer ( Real  phi,
Real  psi,
Size  rot_ind 
) const
pure virtual
virtual void core::pack::dunbrack::SingleResidueDunbrackLibrary::get_rotamer_from_chi ( ChiVector const &  chi,
RotVector rot 
) const
pure virtual

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.

Implemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T, N >, and core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >.

void core::pack::dunbrack::SingleResidueDunbrackLibrary::hokey_template_workaround ( )
private

This function forces the instantiation of virtual templated methods in the derived classes. Functions like this one are necessary when combining polymorphism and templates. Though these functions must be compiled, they need never be called. Do not call this function.

forces instantiation of virtual functions for templated derived classes... part of the uglyness of mixing templates and polymorphism. Never invoke this function.

References core::pack::dunbrack::FIVE, FOREACH_Chi_BB, INIT, core::chemical::ResidueType::make(), and rot().

void core::pack::dunbrack::SingleResidueDunbrackLibrary::mark_rotwell_exists ( utility::vector1< Size > const &  rotwell)
protected

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.

References packed_rotno_conversion_data_current_, rotwell_2_rotno(), and rotwell_exists_.

Referenced by core::pack::dunbrack::RotamericSingleResidueDunbrackLibraryParser::configure_rotameric_single_residue_dunbrack_library().

Size core::pack::dunbrack::SingleResidueDunbrackLibrary::memory_usage_dynamic ( ) const
protectedvirtual
Size core::pack::dunbrack::SingleResidueDunbrackLibrary::memory_usage_in_bytes ( ) const
virtual

Virtual functions the derived classes must implement.

Derived classes should invoke base class function as well.

References memory_usage_dynamic(), and memory_usage_static().

virtual Size core::pack::dunbrack::SingleResidueDunbrackLibrary::memory_usage_static ( ) const
protectedpure virtual
utility::vector1< Size > const& core::pack::dunbrack::SingleResidueDunbrackLibrary::n_chi_bins ( ) const
inlineprotected

Read access to the n_chi_bins_ vector.

References n_chi_bins_.

Size core::pack::dunbrack::SingleResidueDunbrackLibrary::n_packed_rots ( ) const
inlineprotected
Size core::pack::dunbrack::SingleResidueDunbrackLibrary::n_possible_rots ( ) const
inlineprotected

The number of possible rotamers – product of the chi_nbins_ array.

References n_possible_rots_.

Referenced by core::pack::dunbrack::RotamericSingleResidueDunbrackLibraryParser::configure_rotameric_single_residue_dunbrack_library().

virtual Size core::pack::dunbrack::SingleResidueDunbrackLibrary::n_rotamer_bins ( ) const
pure virtual
void core::pack::dunbrack::SingleResidueDunbrackLibrary::n_rotamer_bins_for_aa ( chemical::ResidueType const &  rt,
RotVector rot,
bool const  dun02 = false 
)
static

Extract the number of rotamer bins (vector of bin counts for each chi) from the ResidueType and store it in rot.

Author
Rewritten by Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu) to make this general and to remove hard-coded information about canonical amino acids.

References core::chemical::ResidueTypeBase::aa(), core::chemical::ResidueType::chi_rotamers(), dun02(), core::chemical::ResidueType::is_canonical_aa(), n_rotameric_bins_for_aa(), core::chemical::ResidueType::nchi(), and rot().

Referenced by SingleResidueDunbrackLibrary().

void core::pack::dunbrack::SingleResidueDunbrackLibrary::n_rotamer_bins_for_aa ( chemical::AA const  aa,
RotVector rot 
)
static

The number of wells for canonical amino acids defined for the 08 library; includes the number of wells for the semi-rotameric chi (arbitrarily chosen).

the number of wells defined for the 08 library; includes the number of wells for the semi-rotameric chi (arbitrarily chosen).

References core::chemical::aa_ala, core::chemical::aa_arg, core::chemical::aa_asn, core::chemical::aa_asp, core::chemical::aa_cys, core::chemical::aa_gln, core::chemical::aa_glu, core::chemical::aa_gly, core::chemical::aa_his, core::chemical::aa_ile, core::chemical::aa_leu, core::chemical::aa_lys, core::chemical::aa_met, core::chemical::aa_phe, core::chemical::aa_pro, core::chemical::aa_ser, core::chemical::aa_thr, core::chemical::aa_trp, core::chemical::aa_tyr, and core::chemical::aa_val.

void core::pack::dunbrack::SingleResidueDunbrackLibrary::n_rotamer_bins_for_aa_02 ( chemical::AA const  aa,
RotVector rot 
)
static

To continue supporting the 2002 Dunbrack library, we need to preserve the rotamer well definitions for canonical amino acids that it made.

To continue supporting the 2002 Dunbrack library, we need to preserve the rotamer well definitions that it made.

References core::chemical::aa_ala, core::chemical::aa_arg, core::chemical::aa_asn, core::chemical::aa_asp, core::chemical::aa_cys, core::chemical::aa_gln, core::chemical::aa_glu, core::chemical::aa_gly, core::chemical::aa_his, core::chemical::aa_ile, core::chemical::aa_leu, core::chemical::aa_lys, core::chemical::aa_met, core::chemical::aa_phe, core::chemical::aa_pro, core::chemical::aa_ser, core::chemical::aa_thr, core::chemical::aa_trp, core::chemical::aa_tyr, and core::chemical::aa_val.

Referenced by n_rotameric_bins_for_aa().

void core::pack::dunbrack::SingleResidueDunbrackLibrary::n_rotameric_bins_for_aa ( chemical::AA const  aa,
RotVector rot,
bool  dun02 
)
static
virtual Size core::pack::dunbrack::SingleResidueDunbrackLibrary::nbb ( ) const
pure virtual
virtual Size core::pack::dunbrack::SingleResidueDunbrackLibrary::nchi ( ) const
pure virtual
SingleResidueDunbrackLibrary& core::pack::dunbrack::SingleResidueDunbrackLibrary::operator= ( SingleResidueDunbrackLibrary const &  other)
delete
bool core::pack::dunbrack::SingleResidueDunbrackLibrary::operator== ( rotamers::SingleResidueRotamerLibrary const &  rhs) const
overridevirtual
void core::pack::dunbrack::SingleResidueDunbrackLibrary::packed_rotno_2_rotwell ( Size const  packed_rotno,
utility::vector1< Size > &  rotwell 
) const

Convert from the packed rotamer number to the rotamer well.

References packed_rotno_2_rotwell_.

Referenced by protocols::features::RotamerInitializer< T, N >::initialize_rotamer(), read_from_binary(), and write_to_binary().

void core::pack::dunbrack::SingleResidueDunbrackLibrary::packed_rotno_2_rotwell ( Size const  packed_rotno,
Size4 rotwell 
) const
utility::vector1< Size > const & core::pack::dunbrack::SingleResidueDunbrackLibrary::packed_rotno_2_rotwell ( Size const  packed_rotno) const
void core::pack::dunbrack::SingleResidueDunbrackLibrary::prob_to_accumulate ( Real  buried,
Real  nonburied 
)

setters for accumulation probability cutoff (to support externally-controlled option dependence)

References prob_to_accumulate_buried(), and prob_to_accumulate_nonburied().

void core::pack::dunbrack::SingleResidueDunbrackLibrary::prob_to_accumulate_buried ( Real  buried)
void core::pack::dunbrack::SingleResidueDunbrackLibrary::prob_to_accumulate_nonburied ( Real  nonburied)
Real core::pack::dunbrack::SingleResidueDunbrackLibrary::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.

References prob_to_accumulate_buried_, and prob_to_accumulate_nonburied_.

void core::pack::dunbrack::SingleResidueDunbrackLibrary::read_from_binary ( utility::io::izstream &  in)
virtual
Size core::pack::dunbrack::SingleResidueDunbrackLibrary::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.

References packed_rotno_conversion_data_current_, and rotno_2_packed_rotno_.

Referenced by read_from_binary(), rotwell_2_packed_rotno(), and write_to_binary().

void core::pack::dunbrack::SingleResidueDunbrackLibrary::rotno_2_rotwell ( Size const  rotno,
utility::vector1< Size > &  rotwell 
) const

Convert from the rotamer number to the rotamer well.

not as fast as going through the packed_rotno_2_rotwell_ lookup table, but does the modulo converstion from a 1-based index to a lexicographical index ordering.

if there are 3 chi, and 3 rotamer bins per chi, then 21 would represent (3-1) * 3**2 + (1-1) * 3**1 + (3-1) * 3**0 + 1 = [ 3, 1, 3 ];

References n_chi_products_, and n_rotameric_chi_.

Referenced by declare_all_existing_rotwells_encountered().

Size core::pack::dunbrack::SingleResidueDunbrackLibrary::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.

References packed_rotno_conversion_data_current_, rotno_2_packed_rotno(), and rotwell_2_rotno().

Referenced by core::pack::dunbrack::RotamericSingleResidueDunbrackLibraryParser::configure_rotameric_single_residue_dunbrack_library(), and protocols::features::RotamerInitializer< T, N >::initialize_rotamer().

Size core::pack::dunbrack::SingleResidueDunbrackLibrary::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.

References packed_rotno_conversion_data_current_, rotno_2_packed_rotno(), and rotwell_2_rotno().

Size core::pack::dunbrack::SingleResidueDunbrackLibrary::rotwell_2_rotno ( utility::vector1< Size > const &  rotwell) const

Conversion functions.

Convert from the rotamer bin indices for each chi to the (non-compact) "rotamer number"

References n_chi_products_.

Referenced by protocols::features::RotamerInitializer< T, N >::initialize_rotamer(), mark_rotwell_exists(), and rotwell_2_packed_rotno().

Size core::pack::dunbrack::SingleResidueDunbrackLibrary::rotwell_2_rotno ( Size4 const &  rotwell) const

Convert from the rotamer bin indices for each chi to the (non-compact) "rotamer number".

References n_chi_products_.

void core::pack::dunbrack::SingleResidueDunbrackLibrary::set_n_chi_bins ( utility::vector1< Size > const &  n_chi_bins)

Tell the base class the number of chi bins for each rotameric chi dimension.

Sets the number of bins for a particular chi angle, used for the NCAAs, info for CAAs is hardcoded bellow

References n_chi_bins_, n_chi_products_, n_possible_rots_, n_rotameric_chi_, rotno_2_packed_rotno_, and rotwell_exists_.

bool core::pack::dunbrack::SingleResidueDunbrackLibrary::use_bicubic ( ) const
inlineprotected

Read access for the derived class.

References use_bicubic_.

void core::pack::dunbrack::SingleResidueDunbrackLibrary::write_to_binary ( utility::io::ozstream &  out) const
virtual

Member Data Documentation

AA const core::pack::dunbrack::SingleResidueDunbrackLibrary::aa_
private

data

Referenced by aa(), bin_rotameric_chi(), and operator==().

core::Real const core::pack::dunbrack::SingleResidueDunbrackLibrary::ANGLE_DELTA
static
core::Real const core::pack::dunbrack::SingleResidueDunbrackLibrary::COEF_DELTA
static
bool const core::pack::dunbrack::SingleResidueDunbrackLibrary::dun02_
private

Referenced by dun02(), and operator==().

bool core::pack::dunbrack::SingleResidueDunbrackLibrary::dun_entropy_correction_
private

Referenced by dun_entropy_correction().

core::Real const core::pack::dunbrack::SingleResidueDunbrackLibrary::ENERGY_DELTA
static
utility::vector1< Size > core::pack::dunbrack::SingleResidueDunbrackLibrary::n_chi_bins_
private
utility::vector1< Size > core::pack::dunbrack::SingleResidueDunbrackLibrary::n_chi_products_
private
Size core::pack::dunbrack::SingleResidueDunbrackLibrary::n_packed_rots_
private
Size core::pack::dunbrack::SingleResidueDunbrackLibrary::n_possible_rots_
private
Size const core::pack::dunbrack::SingleResidueDunbrackLibrary::n_rotameric_chi_
private
utility::vector1< Size > core::pack::dunbrack::SingleResidueDunbrackLibrary::packed_rotno_2_rotno_
private
utility::vector1< utility::vector1< Size > > core::pack::dunbrack::SingleResidueDunbrackLibrary::packed_rotno_2_rotwell_
private
bool core::pack::dunbrack::SingleResidueDunbrackLibrary::packed_rotno_conversion_data_current_
private
Real const core::pack::dunbrack::SingleResidueDunbrackLibrary::PEPTIDE_NEUTRAL_PHI = -90
static

constants

A good phi and psi values to use for terminal peptide residues where they cannont be completely defined

Referenced by protocols::match::upstream::OriginalBackboneBuildPoint::initialize_from_residue(), and core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::RotamericSingleResidueDunbrackLibrary().

Real const core::pack::dunbrack::SingleResidueDunbrackLibrary::PEPTIDE_NEUTRAL_PSI = 130
static
Real const core::pack::dunbrack::SingleResidueDunbrackLibrary::PEPTOID_NEUTRAL_OMG = 180
static

A good omega, phi, and psi values to use for terminal peptoid residues where they cannont be completely defined.

Referenced by core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::RotamericSingleResidueDunbrackLibrary().

Real const core::pack::dunbrack::SingleResidueDunbrackLibrary::PEPTOID_NEUTRAL_PHI = -90
static
Real const core::pack::dunbrack::SingleResidueDunbrackLibrary::PEPTOID_NEUTRAL_PSI = 180
static
core::Real const core::pack::dunbrack::SingleResidueDunbrackLibrary::PROB_DELTA
static
Real core::pack::dunbrack::SingleResidueDunbrackLibrary::prob_to_accumulate_buried_
private
Real core::pack::dunbrack::SingleResidueDunbrackLibrary::prob_to_accumulate_nonburied_
private
utility::vector1< Size > core::pack::dunbrack::SingleResidueDunbrackLibrary::rotno_2_packed_rotno_
private
utility::vector1< bool > core::pack::dunbrack::SingleResidueDunbrackLibrary::rotwell_exists_
private
bool core::pack::dunbrack::SingleResidueDunbrackLibrary::use_bicubic_
private

Referenced by use_bicubic().


The documentation for this class was generated from the following files: