Rosetta
|
#include <NCAARotamerLibrarySpecification.hh>
Public Member Functions | |
NCAARotamerLibrarySpecification () | |
NCAARotamerLibrarySpecification (std::string const &ncaa_rotlib_path) | |
NCAARotamerLibrarySpecification (std::istream &) | |
RotamerLibrarySpecificationOP | clone () const override |
Create a copy of the RotamerLibrarySpecification, respecting the subclassing. More... | |
void | ncaa_rotlib_path (std::string const &path) |
Sets the path to the NCAA rotlib for the residue type. More... | |
void | ncaa_rotlib_n_bin_per_rot (utility::vector1< Size > const &n_bins_per_rot) |
Sets the number of rotamers for each rotatable bond described by the NCAA rotlib. More... | |
void | semirotameric_ncaa_rotlib (bool setting) |
void | nrchi_symmetric (bool setting) |
void | nrchi_start_angle (Real setting) |
std::string const & | ncaa_rotlib_path () const |
Returns the path to the NCAA rotlib for the residue type. More... | |
core::Size | ncaa_rotlib_n_rotameric_bins () const |
Returns the number of rotatable bonds described by the NCAA rotlib (not nesesarily equal to nchi) More... | |
utility::vector1< Size > const & | ncaa_rotlib_n_bin_per_rot () const |
Returns the number of rotamers for each rotatable bond described by the NCAA rotlib for all bonds. More... | |
bool | semirotameric_ncaa_rotlib () const |
bool | nrchi_symmetric () const |
Real | nrchi_start_angle () const |
std::string | keyname () const override |
Which type of SingleResidueRotamerLibrary does this specification sub-type correspond to? More... | |
std::string | cache_tag (core::chemical::ResidueType const &) const override |
How, if at all, should the corresponding SingleResidueRotamerLibrary be cached? More... | |
void | describe (std::ostream &out) const override |
Write a params-file-like description of this RotamerLibrarySpecification to the given output stream. Can be multi-line, will be ended with a newline. More... | |
void | add_rotamer_bb_torsion_index (core::Size const index) |
Add a backbone torsion index that the rotamer library is dependent on. More... | |
utility::vector1< core::Size > const & | rotamer_bb_torsion_indices () const |
Get a const reference to the list of mainchain torsion indices that this rotamer library depends upon. More... | |
void | clear_rotamer_bb_torsion_indices () |
Empties the list of mainchain torsion indices that this rotamer library depends upon. More... | |
![]() | |
RotamerLibrarySpecification ()=default | |
Static Public Member Functions | |
static std::string | library_name () |
Private Attributes | |
std::string | ncaa_rotlib_path_ |
path to the NCAA rotlib More... | |
utility::vector1< Size > | ncaa_rotlib_n_bins_per_rot_ |
the number of rotamer bins for each chi angle in the NCAA rotlib More... | |
bool | semirotameric_ncaa_rotlib_ |
whether or not the NCAA rotlib is semirotameric More... | |
bool | nrchi_symmetric_ |
Real | nrchi_start_angle_ |
utility::vector1< core::Size > | rotamer_bb_torsion_indices_ |
Which mainchain torsions are the rotamers dependent on? More... | |
core::chemical::rotamers::NCAARotamerLibrarySpecification::NCAARotamerLibrarySpecification | ( | ) |
core::chemical::rotamers::NCAARotamerLibrarySpecification::NCAARotamerLibrarySpecification | ( | std::string const & | ncaa_rotlib_path | ) |
core::chemical::rotamers::NCAARotamerLibrarySpecification::NCAARotamerLibrarySpecification | ( | std::istream & | input | ) |
References ncaa_rotlib_n_bins_per_rot_, ncaa_rotlib_path_, and core::chemical::rotamers::TR().
void core::chemical::rotamers::NCAARotamerLibrarySpecification::add_rotamer_bb_torsion_index | ( | core::Size const | index | ) |
Add a backbone torsion index that the rotamer library is dependent on.
Checks for zero or duplicated indices.
References rotamer_bb_torsion_indices_.
|
overridevirtual |
How, if at all, should the corresponding SingleResidueRotamerLibrary be cached?
The default is to return an empty string, which turns off caching.
The SingleResidueRotamerLibraries are cached in the SingleResidueRotamerLibraryFactory based on keyname() and cache_tag() (as keys in a map< string, map< string, SRRL > > ). Two RotamerLibrarySpecifications with identical return values for keyname() and cache_tag() should correspond to (functionally) identical SingleResidueRotamerLibraries.
This has to be in the RotamerLibrarySpecification, as when reading we need to know the cache string before creating the library.
A note on writing RotamerLibrarySpecifications and SingleResidueRotamerLibrarys: The functions of a SingleResidueRotamerLibrary will normally have access to the actual RotamerLibrarySpecification from the passed Residue/ResidueType. Therefore, you don't need to store all the information from a RLS in the SRRL. Not doing so allows you to have more general cache_tag(), as the cache_tag() function only needs to disambiguate RotamerLibrarySpecifications which result in different SingleResidueRotamerLibrarys. (That is, cache_tag() only needs to encapsulate data used by SingleResidueRotamerLibraryCreator to create the SingleResidueRotamerLibrary.)
The ResidueType is passed to cache_tag() so that if the SingleResidueRotamerLibraryCreator needs details from the ResidueType in order to correctly create the SingleResidueRotamerLibrary, that information can be extracted. In general, though, you want to avoid keying off of information in ResidueType as much as possible.
Reimplemented from core::chemical::rotamers::RotamerLibrarySpecification.
References core::chemical::ResidueType::mainchain_atoms(), core::chemical::ResidueTypeBase::name3(), ncaa_rotlib_n_bins_per_rot_, ncaa_rotlib_path_, nrchi_start_angle_, nrchi_symmetric_, and semirotameric_ncaa_rotlib_.
void core::chemical::rotamers::NCAARotamerLibrarySpecification::clear_rotamer_bb_torsion_indices | ( | ) |
Empties the list of mainchain torsion indices that this rotamer library depends upon.
References rotamer_bb_torsion_indices_.
|
overridevirtual |
Create a copy of the RotamerLibrarySpecification, respecting the subclassing.
Implements core::chemical::rotamers::RotamerLibrarySpecification.
|
overridevirtual |
Write a params-file-like description of this RotamerLibrarySpecification to the given output stream. Can be multi-line, will be ended with a newline.
Implements core::chemical::rotamers::RotamerLibrarySpecification.
References ncaa_rotlib_n_bins_per_rot_, ncaa_rotlib_path_, nrchi_start_angle_, nrchi_symmetric_, core::conformation::membrane::out, rotamer_bb_torsion_indices_, and semirotameric_ncaa_rotlib_.
|
overridevirtual |
Which type of SingleResidueRotamerLibrary does this specification sub-type correspond to?
Implements core::chemical::rotamers::RotamerLibrarySpecification.
References library_name().
|
static |
|
inline |
Returns the number of rotamers for each rotatable bond described by the NCAA rotlib for all bonds.
References ncaa_rotlib_n_bins_per_rot_.
|
inline |
Sets the number of rotamers for each rotatable bond described by the NCAA rotlib.
References ncaa_rotlib_n_bins_per_rot_.
|
inline |
Returns the number of rotatable bonds described by the NCAA rotlib (not nesesarily equal to nchi)
References ncaa_rotlib_n_bins_per_rot_.
|
inline |
Returns the path to the NCAA rotlib for the residue type.
References ncaa_rotlib_path_.
|
inline |
Sets the path to the NCAA rotlib for the residue type.
References ncaa_rotlib_path_, and protocols::hybridization::path.
|
inline |
References nrchi_start_angle_.
|
inline |
References nrchi_start_angle_.
|
inline |
References nrchi_symmetric_.
|
inline |
References nrchi_symmetric_.
|
inline |
Get a const reference to the list of mainchain torsion indices that this rotamer library depends upon.
References rotamer_bb_torsion_indices_.
|
inline |
References semirotameric_ncaa_rotlib_.
|
inline |
References semirotameric_ncaa_rotlib_.
|
private |
the number of rotamer bins for each chi angle in the NCAA rotlib
RM: The amount of data we have to side-encode seems like a lot. Much of this stuff seems like something that should be encoded in the library file itself.
Referenced by cache_tag(), describe(), ncaa_rotlib_n_bin_per_rot(), ncaa_rotlib_n_rotameric_bins(), and NCAARotamerLibrarySpecification().
|
private |
path to the NCAA rotlib
Referenced by cache_tag(), describe(), ncaa_rotlib_path(), and NCAARotamerLibrarySpecification().
|
private |
Referenced by cache_tag(), describe(), and nrchi_start_angle().
|
private |
Referenced by cache_tag(), describe(), and nrchi_symmetric().
|
private |
Which mainchain torsions are the rotamers dependent on?
Referenced by add_rotamer_bb_torsion_index(), clear_rotamer_bb_torsion_indices(), describe(), and rotamer_bb_torsion_indices().
|
private |
whether or not the NCAA rotlib is semirotameric
Referenced by cache_tag(), describe(), and semirotameric_ncaa_rotlib().