Rosetta 3.4
Public Types | Public Member Functions | Protected Member Functions | Static Protected Attributes | Friends
core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T > Class Template Reference

#include <RotamericSingleResidueDunbrackLibrary.hh>

Inheritance diagram for core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >:
Inheritance graph
[legend]
Collaboration diagram for core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef
SingleResidueDunbrackLibrary 
parent

Public Member Functions

 RotamericSingleResidueDunbrackLibrary (AA const aa_in, bool dun02)
virtual ~RotamericSingleResidueDunbrackLibrary ()
virtual Real rotamer_energy (conformation::Residue const &rsd, RotamerLibraryScratchSpace &scratch) const
 Virtual functions required by the base classes.
virtual Real rotamer_energy_deriv (conformation::Residue const &rsd, RotamerLibraryScratchSpace &scratch) const
virtual Real best_rotamer_energy (conformation::Residue const &rsd, bool curr_rotamer_only, RotamerLibraryScratchSpace &scratch) const
 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).
virtual void assign_random_rotamer_with_bias (conformation::Residue const &rsd, RotamerLibraryScratchSpace &scratch, numeric::random::RandomGenerator &RG, ChiVector &new_chi_angles, bool perturb_from_rotamer_center) const
 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.
virtual void fill_rotamer_vector (pose::Pose const &pose, scoring::ScoreFunction const &scorefxn, pack::task::PackerTask const &task, graph::GraphCOP packer_neighbor_graph, chemical::ResidueTypeCAP concrete_residue, conformation::Residue const &existing_residue, utility::vector1< utility::vector1< Real > > const &extra_chi_steps, bool buried, RotamerVector &rotamers) const
virtual utility::vector1
< DunbrackRotamerSampleData
get_all_rotamer_samples (Real phi, Real psi) const
 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.
virtual Real get_probability_for_rotamer (Real phi, Real psi, Size rot_ind) const
 Return the probability for a particular rotamer where rotamers are indexed in order of decreasing probability (or something very close to decreasing probability).
virtual DunbrackRotamerSampleData get_rotamer (Real phi, Real psi, Size rot_ind) const
virtual Size nchi () const
 The number of chi represented by the library.
virtual Size n_rotamer_bins () const
virtual void write_to_file (utility::io::ozstream &out) const
virtual void write_to_binary (utility::io::ozstream &out) const
virtual void read_from_binary (utility::io::izstream &in)
virtual void get_rotamer_from_chi (ChiVector const &chi, RotVector &rot) const
 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.
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.

Protected Member Functions

void get_rotamer_from_chi_static (ChiVector const &chi, Size4 &rot) const
 When given a statically sized fixedsizearray, use this method.
void get_rotamer_from_chi_static (Real4 const &chi, Size4 &rot) const
 When given a statically sized fixedsizearray, use this method.
ObjexxFCL::FArray3D
< PackedDunbrackRotamer< T >
> const & 
rotamers () const
 Read and write access for derived classes.
ObjexxFCL::FArray3D
< PackedDunbrackRotamer< T > > & 
rotamers ()
ObjexxFCL::FArray3D< Size > const & packed_rotno_2_sorted_rotno () const
ObjexxFCL::FArray3D< Size > & packed_rotno_2_sorted_rotno ()
virtual Size memory_usage_static () const
 Worker functions.
virtual Size memory_usage_dynamic () const
Real eval_rotameric_energy_deriv (conformation::Residue const &rsd, 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.
Size find_another_representative_for_unlikely_rotamer (conformation::Residue const &rsd, Size4 &rotwell) const
void interpolate_rotamers (conformation::Residue const &rsd, RotamerLibraryScratchSpace &scratch, Size const packed_rotno, PackedDunbrackRotamer< T, Real > &interpolated_rotamer) const
void interpolate_rotamers (RotamerLibraryScratchSpace &scratch, Size const packed_rotno, Size const phibin, Size const psibin, Size const phibin_next, Size const psibin_next, Real const phi_alpha, Real const psi_alpha, PackedDunbrackRotamer< T, Real > &interpolated_rotamer) const
void assign_random_rotamer (conformation::Residue const &rsd, 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.
void assign_chi_for_interpolated_rotamer (PackedDunbrackRotamer< T, 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
void get_phipsi_bins (Real phi, Real psi, Size &phibin, Size &psibin, Size &phibin_next, Size &psibin_next, Real &phi_alpha, Real &psi_alpha) const
void get_phipsi_bins (Real phi, Real psi, Size &phibin, Size &psibin) const
Real get_phi_from_rsd (conformation::Residue const &rsd) const
Real get_psi_from_rsd (conformation::Residue const &rsd) const
template<class P >
DunbrackRotamer< T, P > packed_rotamer_2_regular_rotamer (PackedDunbrackRotamer< T, 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 > 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.
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 > 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, 2. the rotamer well #, 3. a discription of the kind of sample (how far off the ideal rotamer) and 4. the probability of observing this chi at that sample. The rotamer_data that's input is the same data that was handed to the enumerate_chi_sets call (may be downcast as needed).
void create_rotamers_from_chisets (pose::Pose const &pose, scoring::ScoreFunction const &scorefxn, pack::task::PackerTask const &task, graph::GraphCOP packer_neighbor_graph, chemical::ResidueTypeCAP concrete_residue, conformation::Residue const &existing_residue, utility::vector1< ChiSetOP > const &chi_set_vector, 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.

Static Protected Attributes

static Size const N_PHIPSI_BINS = 36
static Real const PHIPSI_BINRANGE = 10.0

Friends

class SingleResidueDunbrackLibrary

template<Size T>
class core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >


Member Typedef Documentation


Constructor & Destructor Documentation


Member Function Documentation

template<Size T>
void core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::assign_chi_for_interpolated_rotamer ( PackedDunbrackRotamer< T, Real > const &  interpolated_rotamer,
conformation::Residue const &  rsd,
numeric::random::RandomGenerator &  RG,
ChiVector new_chi_angles,
bool  perturb_from_rotamer_center 
) const [protected]
template<Size T>
void core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::assign_random_rotamer ( conformation::Residue const &  rsd,
RotamerLibraryScratchSpace scratch,
numeric::random::RandomGenerator &  RG,
ChiVector new_chi_angles,
bool  perturb_from_rotamer_center,
Size packed_rotno 
) const [protected]
template<Size T>
void core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::assign_random_rotamer_with_bias ( conformation::Residue const &  rsd,
RotamerLibraryScratchSpace scratch,
numeric::random::RandomGenerator &  RG,
ChiVector new_chi_angles,
bool  perturb_from_rotamer_center 
) const [virtual]

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::dunbrack::SingleResidueRotamerLibrary.

Reimplemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T >.

template<Size T>
Real core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::best_rotamer_energy ( conformation::Residue const &  rsd,
bool  curr_rotamer_only,
RotamerLibraryScratchSpace scratch 
) const [virtual]

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::dunbrack::SingleResidueRotamerLibrary.

Reimplemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T >.

References core::conformation::Residue::chi(), core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::get_rotamer_from_chi_static(), core::pack::dunbrack::interpolate_rotamers(), protocols::swa::phi(), protocols::swa::psi(), core::pack::dunbrack::DunbrackRotamerMeanSD< S, P >::rotamer_probability(), and core::pack::dunbrack::RotamerLibraryScratchSpace::rotwell().

template<Size T>
void core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::chisamples_for_rotamer_and_chi ( chemical::ResidueType const &  rsd_type,
pack::task::ResidueLevelTask const &  rtask,
bool  buried,
Size const  chi_index,
RotamericData< T > 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 [protected, virtual]
template<Size T>
void core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::correct_termini_derivatives ( conformation::Residue const &  rsd,
RotamerLibraryScratchSpace scratch 
) const [protected]
template<Size T>
void core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::create_rotamers_from_chisets ( pose::Pose const &  pose,
scoring::ScoreFunction const &  scorefxn,
pack::task::PackerTask const &  task,
graph::GraphCOP  packer_neighbor_graph,
chemical::ResidueTypeCAP  concrete_residue,
conformation::Residue const &  existing_residue,
utility::vector1< ChiSetOP > const &  chi_set_vector,
RotamerVector rotamers 
) const [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().

template<Size T>
void core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::enumerate_chi_sets ( chemical::ResidueType const &  rsd_type,
pack::task::PackerTask const &  task,
Size const  seqpos,
bool  buried,
RotamericData< T > const &  rotamer_data,
utility::vector1< utility::vector1< Real > > const &  extra_chi_steps,
utility::vector1< ChiSetOP > &  chi_set_vector 
) const [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 >::rotamer(), and core::pack::dunbrack::DunbrackRotamerMeanSD< S, P >::rotamer_probability().

template<Size T>
Real core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::eval_rotameric_energy_deriv ( conformation::Residue const &  rsd,
RotamerLibraryScratchSpace scratch,
bool  eval_deriv 
) const [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 core::conformation::Residue::aa(), core::pack::dunbrack::RotamerLibraryScratchSpace::AA_PHI_INDEX, core::pack::dunbrack::RotamerLibraryScratchSpace::AA_PSI_INDEX, 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_dphi(), core::pack::dunbrack::RotamerLibraryScratchSpace::dchimean_dpsi(), core::pack::dunbrack::RotamerLibraryScratchSpace::dchisd_dphi(), core::pack::dunbrack::RotamerLibraryScratchSpace::dchisd_dpsi(), core::pack::dunbrack::RotamerLibraryScratchSpace::drotprob_dbb(), make_table_of_pilot_apps::f, 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 >::get_rotamer_from_chi_static(), core::pack::dunbrack::interpolate_rotamers(), core::conformation::Residue::mainchain_torsions(), core::conformation::Residue::nchi(), core::pack::dunbrack::RotamerLibraryScratchSpace::rotprob(), core::pack::dunbrack::RotamerLibraryScratchSpace::rotwell(), core::pack::dunbrack::subtract_chi_angles(), and core::pack::interaction_graph::T().

template<Size T>
void core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::fill_rotamer_vector ( pose::Pose const &  pose,
scoring::ScoreFunction const &  scorefxn,
pack::task::PackerTask const &  task,
graph::GraphCOP  packer_neighbor_graph,
chemical::ResidueTypeCAP  concrete_residue,
conformation::Residue const &  existing_residue,
utility::vector1< utility::vector1< Real > > const &  extra_chi_steps,
bool  buried,
RotamerVector rotamers 
) const [virtual]
template<Size T>
Size core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::find_another_representative_for_unlikely_rotamer ( conformation::Residue const &  rsd,
Size4 rotwell 
) const [protected]

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.

References core::pack::interaction_graph::T().

template<Size T>
utility::vector1< DunbrackRotamerSampleData > core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::get_all_rotamer_samples ( Real  phi,
Real  psi 
) const [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.

Implements core::pack::dunbrack::SingleResidueDunbrackLibrary.

Reimplemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T >.

References core::pack::dunbrack::DunbrackRotamerMeanSD< S, P >::chi_mean(), core::pack::dunbrack::DunbrackRotamerMeanSD< S, P >::chi_sd(), core::pack::dunbrack::interpolate_rotamers(), core::pack::dunbrack::PackedDunbrackRotamer< S, P >::packed_rotno(), core::pack::dunbrack::DunbrackRotamerMeanSD< S, 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(), core::pack::dunbrack::DunbrackRotamerSampleData::set_rotwell(), and core::pack::interaction_graph::T().

template<Size T>
Real core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::get_phi_from_rsd ( conformation::Residue const &  rsd) const [protected, virtual]
template<Size T>
void core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::get_phipsi_bins ( Real  phi,
Real  psi,
Size phibin,
Size psibin 
) const [protected]
template<Size T>
void core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::get_phipsi_bins ( Real  phi,
Real  psi,
Size phibin,
Size psibin,
Size phibin_next,
Size psibin_next,
Real phi_alpha,
Real psi_alpha 
) const [protected]

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.

template<Size T>
Real core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::get_probability_for_rotamer ( Real  phi,
Real  psi,
Size  rot_ind 
) const [virtual]

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.

Reimplemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T >.

References core::pack::dunbrack::PackedDunbrackRotamer< S, P >::packed_rotno(), and core::pack::dunbrack::DunbrackRotamerMeanSD< S, P >::rotamer_probability().

template<Size T>
Real core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::get_psi_from_rsd ( conformation::Residue const &  rsd) const [protected, virtual]
template<Size T>
DunbrackRotamerSampleData core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::get_rotamer ( Real  phi,
Real  psi,
Size  rot_ind 
) const [virtual]
template<Size T>
void core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::get_rotamer_from_chi ( ChiVector const &  chi,
RotVector rot 
) const [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.

Implements core::pack::dunbrack::SingleResidueDunbrackLibrary.

Reimplemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T >.

References core::pack::interaction_graph::T().

template<Size T>
void core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::get_rotamer_from_chi_static ( Real4 const &  chi,
Size4 rot 
) const [protected]

When given a statically sized fixedsizearray, use this method.

References core::pack::dunbrack::rotamer_from_chi_02(), and core::pack::interaction_graph::T().

template<Size T>
void core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::get_rotamer_from_chi_static ( ChiVector const &  chi,
Size4 rot 
) const [protected]
template<Size T>
void core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::interpolate_rotamers ( conformation::Residue const &  rsd,
RotamerLibraryScratchSpace scratch,
Size const  packed_rotno,
PackedDunbrackRotamer< T, Real > &  interpolated_rotamer 
) const [protected]
template<Size T>
void core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::interpolate_rotamers ( RotamerLibraryScratchSpace scratch,
Size const  packed_rotno,
Size const  phibin,
Size const  psibin,
Size const  phibin_next,
Size const  psibin_next,
Real const  phi_alpha,
Real const  psi_alpha,
PackedDunbrackRotamer< T, Real > &  interpolated_rotamer 
) const [protected]
template<Size T>
Size core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::memory_usage_dynamic ( ) const [protected, virtual]

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

template<Size T>
Size core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::memory_usage_static ( ) const [protected, virtual]

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

template<Size T>
Size core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::n_rotamer_bins ( ) const [virtual]
template<Size T>
Size core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::nchi ( ) const [virtual]
template<Size T>
template<class P >
DunbrackRotamer< T, P > core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::packed_rotamer_2_regular_rotamer ( PackedDunbrackRotamer< T, P > const &  packedrot) const [protected]
template<Size T>
ObjexxFCL::FArray3D< Size > const& core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::packed_rotno_2_sorted_rotno ( ) const [inline, protected]
template<Size T>
ObjexxFCL::FArray3D< Size >& core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::packed_rotno_2_sorted_rotno ( ) [inline, protected]
template<Size T>
void core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::read_from_binary ( utility::io::izstream &  in) [virtual]
template<Size T>
std::string core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::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 core::pack::dunbrack::DUNBRACK_MAX_SCTOR, core::chemical::name_from_aa(), protocols::swa::phi(), protocols::swa::psi(), and core::pack::interaction_graph::T().

Referenced by core::pack::dunbrack::RotamerLibrary::get_NCAARotamerLibrary().

template<Size T>
Real core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::rotamer_energy ( conformation::Residue const &  rsd,
RotamerLibraryScratchSpace scratch 
) const [virtual]

Virtual functions required by the base classes.

Implements core::pack::dunbrack::SingleResidueRotamerLibrary.

Reimplemented in core::pack::dunbrack::SemiRotamericSingleResidueDunbrackLibrary< T >.

template<Size T>
Real core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::rotamer_energy_deriv ( conformation::Residue const &  rsd,
RotamerLibraryScratchSpace scratch 
) const [virtual]
template<Size T>
ObjexxFCL::FArray3D< PackedDunbrackRotamer< T > >& core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::rotamers ( ) [inline, protected]
template<Size T>
ObjexxFCL::FArray3D< PackedDunbrackRotamer< T > > const& core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::rotamers ( ) const [inline, protected]

Read and write access for derived classes.

template<Size T>
void core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::write_to_binary ( utility::io::ozstream &  out) const [virtual]
template<Size T>
void core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::write_to_file ( utility::io::ozstream &  out) const [virtual]

Friends And Related Function Documentation

template<Size T>
friend class SingleResidueDunbrackLibrary [friend]

Member Data Documentation

template<Size T>
Size const core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::N_PHIPSI_BINS = 36 [static, protected]
template<Size T>
Real const core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T >::PHIPSI_BINRANGE = 10.0 [static, protected]

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines