Rosetta  2019.42
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
core::chemical::ResidueType Class Reference

A class for defining a type of residue. More...

#include <ResidueType.hh>

Inheritance diagram for core::chemical::ResidueType:
Inheritance graph
[legend]

Public Member Functions

 ~ResidueType () override
 destructor More...
 
ResidueTypeCOP get_self_ptr () const
 self pointers More...
 
ResidueTypeOP get_self_ptr ()
 
ResidueTypeCAP get_self_weak_ptr () const
 
ResidueTypeAP get_self_weak_ptr ()
 
Size natoms () const override
 number of atoms More...
 
Size nheavyatoms () const override
 number of heavy atoms More...
 
Size n_hbond_acceptors () const
 number of hbond_acceptors More...
 
Size n_hbond_donors () const
 number of hbond_donors More...
 
Size nbonds () const override
 number of bonds More...
 
Size n_virtual_atoms () const override
 Counts the number of virtual atoms and returns the count. More...
 
Size last_backbone_atom () const
 index of the last backbone heavy atom More...
 
Size first_sidechain_atom () const
 index of the first sidechain atom (heavy or hydrogen) More...
 
Size first_sidechain_hydrogen () const
 index of the first sidehchain hydrogen More...
 
Size nbr_atom () const
 get nbr_atom used to define residue-level neighbors More...
 
Real nbr_radius () const
 get nbr_radius_ used to define residue-level neighbors More...
 
core::Real mass () const
 get the molecular weight of this residue More...
 
bool has_shadow_atoms () const
 Returns true if this residue has shadow atoms, false otherwise. More...
 
Size atom_being_shadowed (Size atom_shadowing) const
 Return the index of the atom that the "atom_shadowing" atom is shadowing; returns zero if the "atom_shadowing" atom is not shadowing anyone. More...
 
AtomIndices const & attached_H_begin () const
 for all heavy atoms, index numbers of their first attached Hydrogen More...
 
AtomIndices const & attached_H_end () const
 for all heavy atoms, index numbers of their last attached Hydrogen More...
 
void get_metal_binding_atoms (AtomIndices &metal_binding_indices) const
 Gets indices of all atoms that can form bonds to metals. More...
 
AtomIndices const & all_bb_atoms () const
 Indices of all backbone atoms, hydrogens and heavyatoms. More...
 
AtomIndices const & all_sc_atoms () const
 Indices of all sidechain atoms, hydrogens and heavyatoms. More...
 
AtomIndices const & Haro_index () const
 return indices of aromatic Hydrogens More...
 
AtomIndices const & Hpol_index () const
 return indices of polar Hydrogens More...
 
AtomIndices const & Hpos_polar () const
 indices of polar hydrogens as Hbond donors More...
 
AtomIndices const & Hpos_apolar () const
 indices of non-polar hydrogens as potential carbon Hbond donors More...
 
AtomIndices const & Hpos_polar_sc () const
 
AtomIndices const & accpt_pos () const
 indices of atoms as Hbond acceptors More...
 
AtomIndices const & accpt_pos_sc () const
 indices of atoms as Hbond acceptors More...
 
bool has (std::string const &atom_name) const override
 is this atom present in this residue? More...
 
std::string const & atom_name (Size const atomno) const
 get atom name by index More...
 
Size atom_index (std::string const &atom_name) const
 get atom index by name More...
 
AtomType const & atom_type (Size const atomno) const
 Get the chemical atom_type for this atom by it index number in this residue. More...
 
core::Size atom_type_index (core::Size atomno) const
 
ElementCOP element_type (core::Size atomno) const
 
core::chemical::element::Elements element (core::Size atomno) const
 Convenience function to go directly to the element enum. More...
 
int path_distance (Size at1, Size at2) const
 path distance (number of bonds separated) between a pair of atoms More...
 
utility::vector1< int > const & path_distance (Size atom) const
 shortest path distance for an atom to all other residue atoms More...
 
utility::vector1
< utility::vector1< int >
> const & 
path_distances () const
 accessor of path_distance_ data for this residue, which is a 2D array More...
 
Size attached_H_begin (Size const atom) const
 index number of the first attached Hydrogen on an atom More...
 
Size attached_H_end (Size const atom) const
 index number of the last attached Hydrogen on an atom More...
 
bool heavyatom_has_polar_hydrogens (Size atomno) const
 
bool heavyatom_is_an_acceptor (Size atomno) const
 
bool atom_is_polar_hydrogen (Size atomno) const
 
bool atom_is_aro_hydrogen (Size atomno) const
 
AtomIndices const & mainchain_atoms () const
 indices of all mainchain atoms More...
 
Size mainchain_atom (Size const mainchain_index) const
 index of mainchain atom More...
 
int formal_charge (Size const atomno) const
 
core::Real atom_charge (Size const atomno) const
 
core::Vector ideal_xyz (Size const atomno) const
 
core::Vector ideal_xyz (std::string const &atomname) const
 
bool atom_is_backbone (Size const atomno) const
 is a backbone atom (heavy or hydrogen)? More...
 
bool atom_is_sidechain (Size const atomno) const
 
bool atom_is_hydrogen (Size const atomno) const
 quick lookup: is the atom with the given index a hydrogen or not? Atoms are sorted so that heavy atoms come first and hydrogen atoms come last. More...
 
bool is_virtual (Size const atomno) const
 Check if atom is virtual. More...
 
bool is_repulsive (Size const atomno) const
 Check if atom is repulsive. More...
 
bool atom_has_property (Size const atomno, AtomProperty const property) const
 
AtomProperties const & atom_properties (Size const atomno) const
 Get the AtomicProperities object for the atom. (Note this is only the manually set properties, not all the properties of the atom.) More...
 
void show_all_atom_names (std::ostream &out) const override
 
Size nbonds (Size atom) const
 number of bonds for given atom More...
 
Size number_bonded_hydrogens (Size const atomno) const
 indicates how many proton bonded neighbors an atom has More...
 
Size number_bonded_heavyatoms (Size const atomno) const
 indicates how many heavyatom bonded neighbors an atom has More...
 
AtomIndices const & bonded_neighbor (Size const atomno) const
 indices of the bonded neighbors for an atom More...
 
utility::vector1< std::pair
< core::Size, core::Size > > 
bonds () const
 Returns a list of all pairs of atoms which are bonded. This returned list should only have only one entry per bond (So [1,2] and [2,1] will not both be present.) More...
 
bool atoms_are_bonded (core::Size const atomindex1, core::Size const atomindex2) const
 Indicates whether or not two atom indices have a chemical bond linking them. More...
 
utility::vector1< BondName >
const & 
bonded_neighbor_types (Size const atomno) const
 
utility::vector1< BondRingness >
const & 
bonded_neighbor_ringnesses (Size const atomno) const
 
BondName bond_type (core::Size const atomindex1, core::Size const atomindex2) const
 Returns the type of bond between the atoms Will return UnknownBond for something which isn't bonded. More...
 
BondRingness bond_ringness (core::Size const atomindex1, core::Size const atomindex2) const
 Returns whether the bond between the atoms is in a ring. Will return UnknownRingness for something which isn't bonded. More...
 
AtomIndices const & cut_bond_neighbor (Size const atomno) const
 indices of the bonded neighbors for an atom More...
 
AtomIndices const & nbrs (Size const atomno) const
 indices of the bonded neighbors for an atom, shortcut for bonded_neighbor(atomno) More...
 
Size nchi () const
 number of chi angles More...
 
Size n_nus () const
 Return number of nu (internal ring) angles. More...
 
Size n_rings () const
 Return the number of rings in this residue. More...
 
Size ndihe () const
 Return the number of intraresidue dihedrals. This covers all pairs of atoms that are separated by four bonds, and all pairs of intervening atoms. More...
 
Size n_proton_chi () const
 number of proton chis More...
 
bool is_proton_chi (Size const chino) const
 number of proton chis More...
 
Size proton_chi_2_chi (Size proton_chi_id) const
 translate proton_chi to global chi More...
 
Size chi_2_proton_chi (Size chi_index) const
 
utility::vector1< Real > const & proton_chi_samples (Size proton_chi) const
 
utility::vector1< Real > const & proton_chi_extra_samples (Size proton_chi) const
 
utility::vector1< std::pair
< Real, Real > > const & 
chi_rotamers (Size const chino) const
 all rotamers bins (mean, std) for a given chi angle More...
 
AtomIndices const & chi_atoms (Size const chino) const
 indices of the atoms which are used to define a given chi angle (chino) More...
 
utility::vector1< AtomIndices >
const & 
chi_atoms () const
 indices of the atoms which are used to define all the chi angles More...
 
AtomIndices const & nu_atoms (core::uint const nu_index) const
 Return indices of the atoms used to define a given nu (internal ring) angle. More...
 
utility::vector1< AtomIndices >
const & 
nu_atoms () const
 Return list of indices of the atoms used to define all the nu (internal ring) angles. More...
 
AtomIndices const & ring_atoms (uint const ring_num) const
 Return list of indices of the atoms within this residue's nth cycle, not counting virtual atoms. More...
 
utility::vector1< AtomIndices >
const & 
ring_atoms () const
 Return list of indices of the atoms within this residue's cycles, not counting virtual atoms. More...
 
bool is_ring_atom (uint const ring_num, uint const atom_id) const
 Return whether this atom is in a particular ring. More...
 
core::chemical::rings::RingSaturationType ring_saturation_type (uint const ring_num) const
 Return the saturation level of this residue's nth cycle. More...
 
utility::vector1
< core::chemical::rings::RingSaturationType >
const & 
ring_saturation_types () const
 Return the saturation level for all of this residue's cycles. More...
 
utility::vector1< std::string >
const & 
lowest_ring_conformers () const
 For each ring, what's the lowest conformer? More...
 
utility::vector1
< utility::vector1
< std::string > > const & 
low_ring_conformers () const
 Low-energy ring conformers for each ring. More...
 
utility::vector1< Size > const & last_controlling_chi () const
 Read access to the last_controlling_chi_ array. More...
 
Size last_controlling_chi (Size atomno) const
 The last_controlling_chi for an atom. 0 if an atom is controlled by no chi. More...
 
utility::vector1< AtomIndices >
const & 
atoms_last_controlled_by_chi () const
 Read access to the atoms_last_controlled_by_chi_ array. More...
 
AtomIndices const & atoms_last_controlled_by_chi (Size chi) const
 Read access to the Atoms last controlled by a particular chi. More...
 
core::Size root_atom () const
 get root_atom used as the base of the icoor tree. More...
 
AtomICoor const & icoor (Size const atm) const
 AtomICoord of an atom. More...
 
Size atom_base (Size const atomno) const
 get index of an atom's base atom More...
 
Size abase2 (Size const atomno) const
 get index of an atom's second base atom More...
 
void debug_dump_icoor () const
 Dump out atomnames and icoor values. More...
 
MMAtomType const & mm_atom_type (Size const atomno) const
 Get the MM atom_type for this atom by its index number in this residue. More...
 
std::string const & mm_name (core::Size atomno) const
 
core::Size mm_atom_type_index (core::Size atomno) const
 
gasteiger::GasteigerAtomTypeDataCOP gasteiger_atom_type (core::Size atomno) const
 Get the Gasteiger atom type for this atom Can be null if the atom type isn't set. More...
 
utility::vector1< core::Size >
const & 
bonded_orbitals (Size const atomno) const
 indices of the orbitals bonded to an atom More...
 
AtomIndices const & atoms_with_orb_index () const
 
orbitals::ICoorOrbitalData const & orbital_icoor_data (Size const orbital_index) const
 
orbitals::ICoorOrbitalData const & new_orbital_icoor_data (Size const orbital_index) const
 
core::chemical::rings::RingConformerSetCOP ring_conformer_set (core::uint ring_num) const
 Return a pointer to the object containing the set of ring conformers possible for this residue's nth cycle. More...
 
core::Size n_ring_conformer_sets () const
 
ResidueConnection const & lower_connect () const
 
Size lower_connect_id () const
 
Size lower_connect_atom () const
 index number of the atom which connects to the lower connection More...
 
ResidueConnection const & upper_connect () const
 
Size upper_connect_id () const
 
Size upper_connect_atom () const
 index number of the atom which connects to the upper connection More...
 
utility::vector1< uintbranch_connect_atoms () const
 Return a list of indices of atoms at non-polymer connections. More...
 
utility::vector1< std::string > branch_connect_atom_names () const
 Return a list of names of atoms at non-polymer connections. More...
 
Size n_possible_residue_connections () const
 number of ResidueConnections, counting polymeric residue connections More...
 
Size n_polymeric_residue_connections () const
 
Size n_non_polymeric_residue_connections () const
 
ResidueConnection const & residue_connection (Size const i) const
 Get a ResidueConection. More...
 
bool atom_forms_residue_connection (Size const atomid) const
 Does an atom form any inter-residue chemical bonds? More...
 
Size n_residue_connections_for_atom (Size const atomid) const
 How many inter-residue chemical bonds does a particular atom form? More...
 
Size residue_connection_id_for_atom (Size const atomid) const
 Convenience access function for the residue connection at a particular atom; requires that there is exactly one residue connection at this atom. More...
 
utility::vector1< Size > const & residue_connections_for_atom (Size const atomid) const
 
bool residue_connection_is_polymeric (Size const resconn_id) const
 
Size residue_connect_atom_index (Size const resconn_id) const
 
bool atom_depends_on_lower_polymeric_connection (core::Size const atom_index) const
 Does an atom with a given index have an icoor that depends, directly or indirectly, on the lower polymeric connection? More...
 
bool atom_depends_on_upper_polymeric_connection (core::Size const atom_index) const
 Does an atom with a given index have an icoor that depends, directly or indirectly, on the upper polymeric connection? More...
 
bool atom_depends_on_polymeric_connection (core::Size const atom_index) const
 Does an atom with a given index have an icoor that depends, directly or indirectly, on the upper or lower polymeric connection? More...
 
bool atom_depends_on_connection (core::Size const atom_index, core::Size const connection_id) const
 Does an atom with a given index have an icoor that depends, directly or indirectly, on a particular connection ID? More...
 
bool requires_actcoord () const
 require actcoord? More...
 
AtomIndices const & actcoord_atoms () const
 get indices for atoms used to define actcoord More...
 
bool is_sidechain_thiol () const
 is thiol? More...
 
bool is_disulfide_bonded () const
 is disulfide? More...
 
bool is_sidechain_amine () const
 is sidechain amine? More...
 
bool is_alpha_aa () const
 Is this an alpha-amino acid? More...
 
bool is_beta_aa () const
 Is this a beta-amino acid? More...
 
bool is_gamma_aa () const
 Is this a gamma-amino acid? More...
 
bool is_water () const
 is this a water residue type? More...
 
bool is_virtualizable_by_packer () const
 Is this a residue type that can be virtualized or devirtualized by the packer? More...
 
bool is_oligourea () const
 Is this an oligourea? More...
 
bool is_aramid () const
 Is this an aramid? More...
 
bool is_ortho_aramid () const
 Is this an ortho-aramid? More...
 
bool is_meta_aramid () const
 Is this a meta-aramid? More...
 
bool is_para_aramid () const
 Is this a para-aramid? More...
 
bool is_pre_methylene_ortho_aramid () const
 Is this an ortho-aramid? More...
 
bool is_pre_methylene_meta_aramid () const
 Is this a meta-aramid? More...
 
bool is_pre_methylene_para_aramid () const
 Is this a para-aramid? More...
 
bool is_post_methylene_ortho_aramid () const
 Is this an ortho-aramid? More...
 
bool is_post_methylene_meta_aramid () const
 Is this a meta-aramid? More...
 
bool is_post_methylene_para_aramid () const
 Is this a para-aramid? More...
 
bool is_pre_methylene_post_methylene_ortho_aramid () const
 Is this an ortho-aramid? More...
 
bool is_pre_methylene_post_methylene_meta_aramid () const
 Is this a meta-aramid? More...
 
bool is_pre_methylene_post_methylene_para_aramid () const
 Is this a para-aramid? More...
 
bool is_sri () const
 Is this one of SRI's special heteropolymer building blocks? More...
 
bool is_triazolemer () const
 Is this a triazolemer? More...
 
bool is_mirrored_type () const
 Is this a D_AA, R_PEPTOID, or L_RNA? More...
 
bool is_n_methylated () const
 Is this residue N-methylated? More...
 
bool is_TNA () const
 is TNA? More...
 
bool is_PNA () const
 is PNA? More...
 
bool is_coarse () const
 is coarse? More...
 
bool is_NA () const
 is Nucleic Acid? More...
 
bool is_purine () const
 is purine? More...
 
bool is_pyrimidine () const
 is pyrimidine? More...
 
bool is_solvent () const
 Is this a solvent molecule (SOLVENT property)? More...
 
bool is_canonical_nucleic () const
 Is this a canonical nucleic acid (CANONICAL_NUCLEIC property)? More...
 
bool is_canonical_aa () const
 Is this a canonical amino acid (CANONICAL_AA property)? More...
 
bool is_canonical () const
 Is this a canonical residue type (nucleic acid or amino acid)? More...
 
bool is_carbohydrate () const
 is carbohydrate? More...
 
bool is_ligand () const
 is ligand? More...
 
bool is_lipid () const
 is lipid? More...
 
bool is_metal () const
 Return true if this residue type is a metal ion, false otherwise. More...
 
bool is_metalbinding () const
 Return true if this residue type is a type that can bind to a metal ion (e.g. His, Asp, Cys, etc.), false otherwise. More...
 
bool is_membrane () const
 is membrane? More...
 
bool is_surface () const
 is surface? (e.g. enamel) More...
 
bool has_sc_orbitals () const
 does this residue have sidechain orbitals? More...
 
bool is_polar () const
 is polar? More...
 
bool is_charged () const
 is charged? More...
 
bool is_aromatic () const
 is aromatic? More...
 
bool is_cyclic () const
 is cyclic? More...
 
bool is_terminus () const
 is terminus? More...
 
bool is_lower_terminus () const
 is lower terminus? More...
 
bool is_upper_terminus () const
 is upper terminus? More...
 
bool is_branch_point () const
 is a branch-point residue? More...
 
bool is_acetylated_nterminus () const
 is acetylated n terminus More...
 
bool is_methylated_cterminus () const
 is methylated c terminus More...
 
bool is_virtual_residue () const
 Check if residue is 'VIRTUAL_RESIDUE' This ONLY checks the VIRTUAL_RESIDUE PROPERTY! More...
 
bool is_inverted_virtual_residue () const
 Check if atom is an inverted virtual. More...
 
bool is_VRT1 () const
 Check if residue is 'VRT1'. More...
 
bool is_TP3 () const
 Check if residue is a TP3 water. More...
 
bool is_adduct () const
 is an adduct-modified residue? More...
 
bool has_polymer_dependent_groups () const
 Does this type have groups (not just single atoms) that are polymer-bond dependent? More...
 
bool is_base_type () const override
 Is this ResidueTypeBase a base type? More...
 
ResidueTypeCOP get_base_type_cop () const override
 Get a pointer to this ResidueTypeBase's base ResidueTypeBase. More...
 
core::chemical::rna::RNA_Info
const & 
RNA_info () const
 
core::chemical::carbohydrates::CarbohydrateInfoCOP carbohydrate_info () const
 Return the CarbohydrateInfo object containing sugar-specific properties for this residue. More...
 
dihedral_atom_set const & dihedral (Size const dihe) const
 Return the indices for the set of atoms that define a particular intraresidue dihedral. More...
 
utility::vector1< Size > const & dihedrals_for_atom (Size atomno) const
 Returns the list of all of the indices of all the intraresidue dihedrals a particular atom is involved in. Useful for calculating the derivatives for an atom. More...
 
bondangle_atom_set const & bondangle (Size const bondang) const
 Return the indices for the set of atoms that define a particular intraresidue angle. More...
 
utility::vector1< Size > const & bondangles_for_atom (Size atomno) const
 Returns the list of all of the indices of all the intraresidue bond angles a particular atom is involved in. Useful for calculating the derivatives for an atom. More...
 
Size num_bondangles () const
 get number of intraresidue bond angles More...
 
void print_bondangles () const
 print intraresidue bond angles to standard out More...
 
void print_pretty_path_distances () const
 print chemical-bond path distances to standard out More...
 
utility::vector1< two_atom_set >
const & 
atoms_within_one_bond_of_a_residue_connection (Size resconn) const
 Returns a list of those atoms within one bond of a residue connection. For residue connection i, its position in this array is a list of pairs of atom-id's, the first of which is always the id for the atom forming residue connection i. More...
 
utility::vector1< std::pair
< Size, Size > > const & 
within1bonds_sets_for_atom (Size atomid) const
 Returns a list of pairs for atom# atomid where first == the residue_connection id that lists atomid as being within one bond of a residue connection, and second == the index of the entry containing this atom in the atoms_within_one_bond_of_a_residue_connection_[ first ] array. Useful for calculating the derivatives for an atom. More...
 
utility::vector1
< three_atom_set > const & 
atoms_within_two_bonds_of_a_residue_connection (Size resconn) const
 Returns the list of those atoms within two bonds of residue connection # resconn. Each entry in this list is a triple of atom-id's, the first of which is always the id for the atom forming residue connection resconn. More...
 
utility::vector1< std::pair
< Size, Size > > 
within2bonds_sets_for_atom (Size atomid) const
 Returns a list of pairs for atom # atomid where first == the residue_connection id that lists this atom as being within two bonds of a residue connection, and second == the index of the entry containing this atom in the atoms_within_two_bonds_of_a_residue_connection_[ first ] array. Useful for calculating the derivatives for an atom. More...
 
void select_orient_atoms (Size &center, Size &nbr1, Size &nbr2) const
 Selects three atoms for orienting this residue type. More...
 
void select_orient_atoms_standard_logic (Size &center, Size &nbr1, Size &nbr2, bool const ignore_virtuals) const
 Pick atoms to use for orienting one Residue onto another, using standard logic. More...
 
std::tuple< Size, Size, Sizeselect_orient_atoms () const
 Selects three atoms for orienting this residue type. More...
 
void show (std::ostream &output=std::cout, bool output_atomic_details=false) const override
 Generate string representation of ResidueType for debugging purposes. More...
 
template<typename MemFn , typename Ptr >
utility::signals::Link attach_destruction_obs (MemFn fn, Ptr ptr) const
 attach RestypeDestructionEvent observer function More...
 
template<typename MemFn , typename Ptr >
bool detach_destruction_obs (MemFn fn, Ptr ptr) const
 detach RestypeDestructionEvent observer function More...
 
- Public Member Functions inherited from core::chemical::ResidueTypeBase
TypeSetMode mode () const
 
AtomTypeSet const & atom_type_set () const
 access by reference the atomset for which this residue is constructed More...
 
AtomTypeSetCOP atom_type_set_ptr () const
 access by const pointer the atomset for which this residue is constructed More...
 
ElementSet const & element_set () const
 access by reference the element set for which this residue is constructed More...
 
ElementSetCOP element_set_ptr () const
 access by const pointer the element set for which this residue is constructed More...
 
MMAtomTypeSetCOP mm_atom_types_ptr () const
 
gasteiger::GasteigerAtomTypeSetCOP gasteiger_atom_typeset () const
 
void set_gasteiger_atom_typeset (gasteiger::GasteigerAtomTypeSetCOP setting)
 
orbitals::OrbitalTypeSetCOP orbital_types_ptr () const
 Get the MM atom_type for this atom by its index number in this residue. More...
 
void set_orbital_typeset (orbitals::OrbitalTypeSetCOP setting)
 
bool has_orbital_types () const
 Does this residue type define orbital types? More...
 
signed long int net_formal_charge () const
 Get the nominal net formal charge on this residue type. More...
 
void net_formal_charge (signed long int charge_in)
 Set the nominal net formal charge on this residue type. More...
 
utility::vector1< std::string >
const & 
get_metal_binding_atoms () const
 
std::string const & get_disulfide_atom_name () const
 Gets disulfide atom name. More...
 
void set_disulfide_atom_name (std::string const &n)
 Sets disulfide atom name. More...
 
std::map< std::string,
std::string > const & 
atom_aliases () const
 returns atom aliases More...
 
std::string const & atom_alias (std::string const &name) const
 returns atom alias More...
 
std::map< std::string,
std::string > const & 
canonical_atom_aliases () const
 returns atom aliases More...
 
std::string const & canonical_atom_alias (std::string const &name) const
 returns atom alias More...
 
utility::vector1< std::string > get_anomeric_pseudotorsion () const
 @ brief Gets atom names used for alternate anomeric pseudotorsion. More...
 
utility::vector1< std::string > get_anomeric_sidechain () const
 @ brief Gets atom names that are part of the anomeric side chain. More...
 
void set_anomeric_pseudotorsion (utility::vector1< std::string > const &alternate_atoms)
 Set atoms to use for anomeric pseudotorsion (if not using defaults, lower, C1, C5, C6) More...
 
void set_anomeric_sidechain (utility::vector1< std::string > const &anomeric_sidechain)
 Sets the atoms to use in the anomeric side hain. More...
 
Orbital const & orbital (Size const orbital_index) const
 
Orbital const & orbital (std::string const &orbital_name) const
 
orbitals::OrbitalType const & orbital_type (Size const orbital_index) const
 
Size n_orbitals () const
 number of orbitals More...
 
bool has_orbital (std::string const &orbital_name) const
 is this orbital present in this residue? More...
 
core::Size orbital_index (std::string const &name) const
 get orbital index by name More...
 
ResidueProperties const & properties () const
 Access the collection of properties for this ResidueTypeBase. More...
 
void set_properties (ResiduePropertiesOP properties)
 Set the collection of properties for this ResidueTypeBase. More...
 
void add_property (std::string const &property)
 Add a property to this ResidueTypeBase. More...
 
void add_property (core::chemical::ResidueProperty const property)
 Add a property to this ResidueType, by properties enum. More...
 
void set_adduct_flag (bool adduct_in)
 
void add_numeric_property (std::string const &tag, core::Real value)
 Add a numeric property. More...
 
void add_string_property (std::string const &tag, std::string value)
 Add a string property. More...
 
void delete_property (std::string const &property)
 Delete a property of this ResidueType. More...
 
void delete_property (core::chemical::ResidueProperty const property)
 Delete a property of this ResidueType, by properties enum. More...
 
void set_metapatched ()
 Set that this is a metapatched ResidueType. More...
 
bool is_metapatched () const
 Get whether this is a metapatched ResidueType. More...
 
bool is_polymer () const
 is polymer? More...
 
bool is_protein () const
 is protein? More...
 
bool is_DNA () const
 is DNA? More...
 
bool is_RNA () const
 is RNA? More...
 
bool is_d_aa () const
 is this a d-amino acid? More...
 
bool is_l_aa () const
 is this an l-amino acid? More...
 
bool is_d_rna () const
 is this a d-RNA? More...
 
bool is_l_rna () const
 is this an l-RNA? More...
 
bool is_peptoid () const
 is peptoid? More...
 
bool is_r_peptoid () const
 Is this a peptoid with a chiral side-chain with "R" chirality? More...
 
bool is_s_peptoid () const
 Is this a peptoid with a chiral side-chain with "S" chirality? More...
 
bool is_achiral_backbone () const
 is this an achiral backbone? More...
 
bool is_achiral_sidechain () const
 Does this have an achiral sidechain? More...
 
bool has_property (std::string const &property) const
 Generic property access. More...
 
bool has_property (ResidueProperty const property) const
 Generic property access, by ResidueProperty. More...
 
core::Real get_numeric_property (std::string const &tag) const
 Get a numeric property, if it exists. More...
 
std::string get_string_property (std::string const &tag) const
 Get a string property, if it exists. More...
 
void add_variant_type (VariantType const variant_type)
 Add a variant type to this ResidueTypeBase. More...
 
void add_variant_type (std::string const &variant_type)
 Add a variant type to this ResidueTypeBase by string. More...
 
void remove_variant_type (VariantType const variant_type)
 Remove a variant type to this ResidueTypeBase. More...
 
void remove_variant_type (std::string const &variant_type)
 Remove a variant type to this ResidueTypeBase by string. More...
 
bool has_variant_type (VariantType const variant_type) const
 Generic variant access. More...
 
bool has_variant_type (std::string const &variant_type) const
 Generic variant access by string. More...
 
void enable_custom_variant_types ()
 Turn on the ability to create VariantTypes "on-the-fly". More...
 
utility::vector1< std::string > variant_types () const
 get all the variant types for this ResidueTypeBase More...
 
utility::vector1< VariantTypevariant_type_enums () const
 Get a vector of VariantType enums for this ResidueTypeBase. More...
 
utility::vector1< std::string >
const & 
custom_variant_types () const
 Get a list of custom VariantType strings for this ResidueTypeBase (by const reference). More...
 
void aa (AA const &type)
 set our aa-type (could be "UNK") More...
 
void aa (std::string const &type)
 set our aa-type (could be "UNK") More...
 
void backbone_aa (std::string const &type)
 AA to use for backbone scoring. More...
 
void base_analogue (std::string const &type)
 NA to use for base-specific generalization (can be more forgiving than na_analogue for new NA backbones) More...
 
void na_analogue (std::string const &type)
 NA to use for fragment sampling and some scoring purposes. More...
 
std::string const & base_name () const
 Get this ResidueTypeBase's base name (shared with other residue types with the same base type). More...
 
std::string const & name () const
 get our (unique) residue name More...
 
void base_name (std::string const &base_name_in)
 Set this ResidueTypeBase's base name (shared with other residue types with the same base type). More...
 
void name (std::string const &name_in)
 set our (unique) residue name More...
 
std::string const & name3 () const
 get our 3letter code. This is set in the ResidueTypeBase .params file through the IO_STRING tag along with the name1 string NOTE: The "name3" is not necessarily three characters long. e.g. Metal ions may be only two characters. More...
 
void name3 (std::string const &name_in)
 set our 3letter code More...
 
char name1 () const
 get our 1letter code. This is set in the ResidueTypeBase .params file through the IO_STRING tag along with the name3 string. More...
 
void name1 (char const code)
 set our 1letter code More...
 
std::string interchangeability_group () const
 get our interchangeability-group id. Used to determine if two residue types are equivalent, except for their variant status. E.g. ResidueTypeBases ALA and ALA_Nterm would be part of the same interchangeability group. This has a degree of subjectivity; are TYR and pTYR in the same interchangeability group? Probably not. This data can be specified in the ResidueTypeBases .params file with the INTERCHANGEABILITY_GROUP tag. More...
 
void interchangeability_group (std::string setting)
 set our interchangeability-group id More...
 
void remap_pdb_atom_names (bool rename)
 Turn on geometry-based atom renaming when loading this residue type from PDB files. More...
 
bool remap_pdb_atom_names () const
 Are we using geometry-based atom renaming when loading this residue type from PDB. More...
 
AA const & aa () const
 our traditional residue type, if any More...
 
AA const & backbone_aa () const
 Returns the amino acid type to be used for backbone scoring (rama and p_aa_pp). More...
 
AA const & base_analogue () const
 Returns the nucleic acid type to be used for base features. More...
 
AA const & na_analogue () const
 Returns the nucleic acid type to be used for fragment sampling/scoring. More...
 
void rotamer_library_specification (rotamers::RotamerLibrarySpecificationOP)
 
rotamers::RotamerLibrarySpecificationCOP rotamer_library_specification () const
 
rotamers::RotamerLibrarySpecificationOP rotamer_library_specification_nonconst ()
 Nonconst access to the RotamerLibrarySpecification. More...
 
void strip_rotamer_library_specification ()
 Remove any rotamer library specifications attached to this ResidueTypeBase. More...
 
bool force_nbr_atom_orient () const
 dihedral methods More...
 
void force_nbr_atom_orient (bool force_orient)
 Set force_nbr_atom_orient_, used to control orient atoms selected by select_orient_atoms. More...
 
std::string const & get_rama_prepro_mainchain_torsion_potential_name (bool const pre_proline_position) const
 Get the key name for the mainchain torsion potential used by the RamaPrePro score term. More...
 
bool mainchain_potentials_match (ResidueTypeBase const &other) const
 Do the rama_prepro mainchain torsion potentials of this residue match another? More...
 
void set_rama_prepro_mainchain_torsion_potential_name (std::string const &name_in, bool const pre_proline_position)
 Set the key name for the mainchain torsion potential used by the RamaPrePro score term. More...
 
std::string const & get_rama_prepro_map_file_name (bool const pre_proline_position) const
 Get the file name for the mainchain torsion potential used by the RamaPrePro score term. More...
 
void set_rama_prepro_map_file_name (std::string const &filename_in, bool const pre_proline_position)
 Set the file name for the mainchain torsion potential used by the RamaPrePro score term. More...
 
bool defines_custom_rama_prepro_map (bool const pre_proline_position) const
 Returns true if and only if (a) this is not a base type, AND (b) there is a rama_prepro_mainchain_torsion_map_file_name_ defined for this ResidueTypeBase (which is presumably different from that of the base type). More...
 
void reset_mainchain_torsion_potential_names ()
 Set the names of the mainchain torsion potential maps to use to "". More...
 
utility::vector1< Adduct > const & defined_adducts () const
 get the adducts defined for this residue More...
 
void add_adduct (Adduct &adduct_in)
 
void report_adducts () const
 

Static Public Member Functions

static ResidueTypeCOP make (MutableResidueType const &residue_type)
 Make a ResidueType from a Modifiable residue type. More...
 

Private Member Functions

 ResidueType ()
 
 ResidueType (MutableResidueType const &residue_type)
 Make (most of) a ResidueType from a MutableResidueType Use ResidueType::make() instead. More...
 
 ResidueType (ResidueType const &residue_type)=delete
 make a copy of this ResidueType More...
 
ResidueTypeOP clone () const =delete
 make a copy More...
 
ResidueTypeOP placeholder_clone () const =delete
 make a copy More...
 
ResidueTypeoperator= (ResidueType const &src)=delete
 Copies <src> into the ResidueType. More...
 
utility::vector1< core::Sizesetup_atom_ordering (MutableResidueType const &source)
 Determine how to map the numeric indices of MutableResidueType to this ResidueType. ( As the MutableResidueType is const, we can assume a decent mapping here. ) More...
 
void copy_atom_info (MutableResidueType const &source, utility::vector1< core::Size > const &old_to_new)
 Iterate through the atoms, filling out the various atom info vectors. More...
 
void copy_other_info (MutableResidueType const &source, utility::vector1< core::Size > const &old_to_new)
 Fill in various other information which is being copied over from the MutableResidueType. More...
 
void initialize_derived_data ()
 Precalculate other derived data from data already present. More...
 
void update_derived_data ()
 Do other pre-calculation checks, not for otherwise uninitialized variables, but for data consistency or otherwise "incorrectly" set values. More...
 
void auto_assign_nu_atoms ()
 If a ring has been added but no nu angles have been defined, automatically assign them. More...
 
void define_mainchain_atoms ()
 If a polymer without explicitly set mainchain atoms, determine a list of main chain atoms by shortest path from LOWER to UPPER. More...
 
void update_ring_conformer_sets ()
 Update the ring conformer sets derived information. More...
 
void update_last_controlling_chi ()
 compute the last controlling chi for an atom during the update_derived_data() stage. The last controlling chi is the furthest chi downstream of the mainchain which can change the location of an atom. More...
 
void note_chi_controls_atom (Size chi, Size atomno)
 Recursive subroutine invoked by update_last_controlling_chi(). More...
 
void update_polymer_dependent_groups ()
 Determine which atoms are polymer bond-dependent. More...
 
void update_nonpolymer_dependent_groups ()
 Determine which atoms are nonpolymer bond-dependent. More...
 
void update_ncaa_rotamer_library_specification_if_present ()
 If there is an NCAARotamerLibrarySpecification, ensure that the rotamer backbone dependicies have been set. If they have not, set them to all mainchain torsions except omega (the final, inter-residue torsion). More...
 
void self_pointer_updates ()
 Do updates which need a valid get_self_ptr() (And thus can't be called from the constructor.) More...
 
void perform_checks () const
 Final check of ResidueType data, called by ResidueType::make(). More...
 

Private Attributes

Size natoms_
 
Size nbonds_
 
Size nheavyatoms_
 The number of heavy atoms. More...
 
Size n_hbond_acceptors_
 The number of hbond_acceptors. More...
 
Size n_hbond_donors_
 number of hbond_donors More...
 
Size n_backbone_heavyatoms_
 number of backbone heavy atoms More...
 
Size first_sidechain_hydrogen_
 the index of first sidechain hydrogen atom More...
 
utility::vector1< std::string > atom_names_
 
std::map< std::string, core::Sizeatom_name_to_index_
 
utility::vector1< AtomTypevec_atom_types_
 The types for each atom. More...
 
utility::vector1< core::Sizevec_atom_type_indexes_
 
utility::vector1< ElementCOPelements_
 
utility::vector1< core::Sizemm_atom_type_index_
 
utility::vector1< core::Sizegasteiger_atom_type_index_
 
utility::vector1< int > formal_charge_
 
utility::vector1< core::Realpartial_charge_
 
utility::vector1< core::Vectorideal_xyz_
 
utility::vector1
< AtomPropertiesOP
atomic_properties_
 
utility::vector1< AtomICooricoor_
 Internal coordinates on how to build the given atom. More...
 
utility::vector1< AtomIndicesbonded_neighbor_
 For each atom, list the other atom indices it's bonded to. More...
 
utility::vector1
< utility::vector1< BondName > > 
bonded_neighbor_type_
 What is the bond type of the bond connecting the equivalent entry in bonded_neighbor_? More...
 
utility::vector1
< utility::vector1
< BondRingness > > 
bonded_neighbor_ringness_
 What is the ringness type of the bond connecting the equivalent entry in bonded_neighbor_? More...
 
utility::vector1< Sizeattached_H_begin_
 indices of each heavyatom's first attached hydrogen More...
 
utility::vector1< Sizeattached_H_end_
 indices of each heavyatom's last attached hydrogen More...
 
utility::vector1
< dihedral_atom_set
dihedral_atom_sets_
 Data for the mm potentials. List all of the intra-residue dihedral angles and bond angles. vector of sets of atoms that make up dihedral angles in the residue Data for the mm potentials. More...
 
utility::vector1
< utility::vector1< Size > > 
dihedrals_for_atom_
 all intra-residue dihedral angles that each atom "participates" in More...
 
utility::vector1
< bondangle_atom_set
bondangle_atom_sets_
 vector of sets of atoms that make up bond angles in the residue More...
 
utility::vector1
< utility::vector1< Size > > 
bondangles_for_atom_
 ??? More...
 
utility::vector1< Sizelast_controlling_chi_
 Data for controlling chi. Computed in update_last_controlling_chi() for each atom 0 means an atom whose location is not determined by any chi. More...
 
utility::vector1< AtomIndicesatoms_last_controlled_by_chi_
 for chi i, the list of atoms last controlled by i E.g. chi2 on LEU list cd1, 1hd1, 1hd2, 1hd3, cd2, 2hd1, 2hd2, 2hd3, and hg1 More...
 
utility::vector1
< utility::vector1< Size > > 
bonded_orbitals_
 For each atom, which orbitals are bonded to it. More...
 
AtomIndices atoms_with_orb_index_
 indices of atoms with orbitals More...
 
AtomIndices Haro_index_
 indices of haro hydrogens More...
 
AtomIndices Hpol_index_
 indices of hpolar hydrogens More...
 
AtomIndices accpt_pos_
 indices of Hbond acceptor positions More...
 
AtomIndices Hpos_polar_
 indices of polar Hydrogens for Hbond donors More...
 
AtomIndices Hpos_apolar_
 indices of apolar hydrogens More...
 
AtomIndices accpt_pos_sc_
 indices of Hbond acceptor positions that are part of the sidechain must be a subset of the atoms listed in the accpt_pos_ array More...
 
AtomIndices Hpos_polar_sc_
 indices of polar Hydrogens for Hbond donors that are part of the sidechain must be a subset of the atoms listed in the Hpos_polar_ array More...
 
AtomIndices all_bb_atoms_
 Indices of all backbone atoms, hydrogens and heavyatoms. More...
 
AtomIndices all_sc_atoms_
 Indices of all sidechain atoms, hydrogens and heavyatoms. More...
 
utility::vector1< boolheavyatom_has_polar_hydrogens_
 Is this atom a heavyatom with polar hydrogens attached? More...
 
utility::vector1
< utility::vector1< core::Size > > 
chi_atoms_
 
utility::vector1< boolis_proton_chi_
 Is the corresponding chi in chi_atoms_ a proton chi? More...
 
utility::vector1< Sizeproton_chis_
 Indices of the chi_atoms_ vector for proton chis. More...
 
utility::vector1< Sizechi_2_proton_chi_
 A "map" of chi indices to proteon_chi indices. More...
 
utility::vector1
< utility::vector1< Real > > 
proton_chi_samples_
 For a proton chi, the primary samples to diversify the rotamer library with. More...
 
utility::vector1
< utility::vector1< Real > > 
proton_chi_extra_samples_
 For a proton chi, how to handle extra ex_ levels. More...
 
utility::vector1
< utility::vector1< std::pair
< Real, Real > > > 
chi_rotamers_
 Additional non-Dunbrack rotamer bins. More...
 
utility::vector1< AtomIndicesnu_atoms_
 AtomIndex of four atoms to build each nu angle. More...
 
utility::vector1< AtomIndicesring_atoms_
 AtomIndex of all ring atoms, not counting virtual atoms. More...
 
utility::vector1
< core::chemical::rings::RingSaturationType
ring_saturation_types_
 The saturation type of each ring in this residue. More...
 
utility::vector1
< rings::RingConformerSetOP
ring_conformer_sets_
 The sets of all possible ring conformers, one per ring. More...
 
utility::vector1< std::string > lowest_ring_conformer_
 Lowest-energy ring conformer for each ring. More...
 
utility::vector1
< utility::vector1
< std::string > > 
low_ring_conformers_
 Low-energy ring conformers for each ring. More...
 
utility::vector1
< utility::vector1< int > > 
path_distance_
 number of bonds separated between any pair of atoms in this residue More...
 
core::Size root_atom_
 Atom at the nominal root of the ICOOR tree. More...
 
core::Size nbr_atom_
 
Real nbr_radius_
 radius cutoff to define neighbors More...
 
Real mass_
 
utility::vector1
< ResidueConnection
residue_connections_
 Vector of inter-residue connections expected for this residuetype NOW includes the polymer connections, as well as disulf-type connections. More...
 
utility::vector1
< utility::vector1< Size > > 
atom_2_residue_connection_map_
 Mapping of atom indicies to residue connections. More...
 
utility::vector1
< utility::vector1
< two_atom_set > > 
atoms_within_one_bond_of_a_residue_connection_
 For calculating inter-residue bond angle and bond torsion energies, it is useful to have a list of those atoms within one bond of a residue connection atom. For residue connection i, its position in this array is a list of pairs of atom-id's, the first of which is always the id for the atom forming residue connection i. More...
 
utility::vector1
< utility::vector1< std::pair
< Size, Size > > > 
within1bonds_sets_for_atom_
 For atom i, its position in this vector is a list of pairs where first == the residue_connection id that lists this atom as being within one bond of a residue connection, and second == the index of the entry containing this atom in the atoms_within_one_bond_of_a_residue_connection_[ first ] array. More...
 
utility::vector1
< utility::vector1
< three_atom_set > > 
atoms_within_two_bonds_of_a_residue_connection_
 For calculating inter-residue bond torsion energies, it is useful to have a list of those atoms within two bonds of a residue connection atom. For residue connection i, its position in this array is a list of triples of atom-id's, the first of which is always the id for the atom forming residue connection i. More...
 
utility::vector1
< utility::vector1< std::pair
< Size, Size > > > 
within2bonds_sets_for_atom_
 For atom i, its position in this vector is a list of pairs where first == the residue_connection id that lists this atom as being within two bonds of a residue connection, and second == the index of the entry containing this atom in the atoms_within_two_bonds_of_a_residue_connection_[ first ] array. More...
 
Size lower_connect_id_
 Polymer lower connections. More...
 
Size upper_connect_id_
 Polymer upper connections. More...
 
Size n_non_polymeric_residue_connections_
 Number of non-polymeric residue connections. More...
 
Size n_polymeric_residue_connections_
 Number of polymeric residue connections. More...
 
ResidueTypeCOP base_type_cop_
 Const-access owning pointer to the base residue type. More...
 
core::chemical::rna::RNA_InfoOP rna_info_
 A container for properties unique to RNA. More...
 
core::chemical::carbohydrates::CarbohydrateInfoOP carbohydrate_info_
 A container for residue properties unique to carbohydrates. More...
 
utility::vector1< Sizeatom_base_indices_
 Index version of atom_base_. More...
 
utility::vector1< Sizeabase2_indices_
 Index version of abase2_. More...
 
AtomIndices mainchain_atoms_indices_
 Index version of mainchain_atoms_. More...
 
AtomIndices actcoord_atoms_indices_
 Index version of actcoord_atoms_. More...
 
utility::vector1< AtomIndicescut_bond_neighbor_indices_
 Index version of cut_bond_neighbor_. More...
 
utility::vector1< Sizeatom_shadowed_indices_
 Index version of atom_shadowed_. More...
 
bool has_polymer_dependent_groups_
 Does this ResidueType have groups with icoors that depend, directly or indirectly, on polymeric bonds? More...
 
utility::vector1< boolatom_depends_on_lower_polymeric_connection_
 vector of length corresponding to number of atoms indicating whether each atom is dependent on the lower polymer bond. More...
 
utility::vector1< boolatom_depends_on_upper_polymeric_connection_
 vector of length corresponding to number of atoms indicating whether each atom is dependent on the upper polymer bond. More...
 
utility::vector1
< utility::vector1< bool > > 
atom_depends_on_connection_
 An outer vector indexed to connection ID, and an inner vector indexed to atom ids. "True" means that the atom id for the inner vector depends on the connection ID for the outer. More...
 
utility::signals::BufferedSignalHub
< void,
RestypeDestructionEvent
destruction_obs_hub_
 Who needs to be told if this ResidueType is destroyed? More...
 

Additional Inherited Members

- Protected Member Functions inherited from core::chemical::ResidueTypeBase
 ResidueTypeBase ()
 
 ResidueTypeBase (AtomTypeSetCOP atom_types, ElementSetCOP element_types, MMAtomTypeSetCOP mm_atom_types, orbitals::OrbitalTypeSetCOP orbital_types)
 constructor More...
 
 ResidueTypeBase (ResidueTypeBase const &)=default
 
ResidueTypeBaseoperator= (ResidueTypeBase const &)=default
 Copies <src> into the ResidueTypeBase. More...
 
void atom_type_set (AtomTypeSetCOP setting)
 
utility::vector1< std::string > & metal_binding_atoms ()
 
std::map< std::string,
std::string > & 
atom_aliases ()
 returns atom aliases More...
 
std::map< std::string,
std::string > & 
canonical_atom_aliases ()
 returns atom aliases More...
 
utility::vector1< Orbital > & get_orbitals ()
 
std::map< std::string, int > & get_orbitals_index ()
 
AA const & backbone_aa_raw () const
 
AA const & base_analogue_raw () const
 
AA const & na_analogue_raw () const
 

Detailed Description

A class for defining a type of residue.

This class contains the "chemical" information for residues as well as the ideal xyz and internal coordinates for a residue (generated xyz coordinates are found in core/conformation/Residue.hh). A ResidueType in Rosetta can be a ligand, DNA, amino acid, or basically anything. ResidueTypes are generated through .params files, which are read from the database chemical/residue_types. For ligands, a parameter has to be provided to rosetta through the -extra_res_fa flag. Primary data are set through the residue_io.cc class. The primary data that are set are: atoms, mmatoms, orbitals, and properties of the particular ResidueType. These properties can be modified through patches, which create new ResidueTypes, and are controlled through PatchOperations.cc.

When a ResidueType is initially created, it's created as a MutableResidueType, which represents the data as an atom graph, which facilitates atomistic modification. This class (the plain ResidueType class) is a "finalized" version of the ResidueType, which doesn't permit modification, and is the main class used by most Rosetta simulations. It's created from a MutableResidueType, and for efficiency represents the data as a "struct of vectors" representation.

Correspondingly, the main representation of atoms is different between the classes. Whereas the MutableResidueType uses an opaque "vertex descriptor" to identify atoms, the plain ResidueType class uses an integer index. The order of atoms is well-defined, with heavy atoms coming before hydrogens, and backbone atoms coming before sidechain atoms. (and hydrogens in the same order as the heavyatoms they're connected to).

Properties: Properties of a residue include things like DNA, PROTEIN, CHARGED, etc. These properties indicate the type of residue it is and what properties are associated with the residue. They are set when read in. To add new ResidueProperties, add them to core/chemical/residue_properties/general_properties.list.

Orbitals: Orbitals are indexed separately from atoms. They function much the same way as atoms, except for some key differences. To find atoms bonded to orbitals, you must provide the atom index, not the orbital index. (I haven't figured out how to get the reverse to work because of the separate indices.) Orbital xyz coordinates are not updated when atom coordinates are. This is to keep speed consistent with just having atoms. To output the orbitals, use the flag -output_orbitals.

Constructor & Destructor Documentation

core::chemical::ResidueType::ResidueType ( )
privatedefault

Referenced by make().

core::chemical::ResidueType::ResidueType ( MutableResidueType const &  mrt)
private

Make (most of) a ResidueType from a MutableResidueType Use ResidueType::make() instead.

The construction of a ResidueType from a MutableResidueType happens in several stages

  1. The canonical order of atoms (backbone heavy/sidechain heavy/hydrogens) is established.
  2. Atom and bond information is converted from the graph-based to the list-base representation
  3. The other information in the MutableResidueType is converted.
  4. Derived data can be pre-computed from the initial ResidueType state.
  5. Subobjects which need back-OPs to the ResidueType can be updated (done by ResidueType::make(), not the constructor).

References copy_atom_info(), copy_other_info(), initialize_derived_data(), core::chemical::ResidueTypeBase::name(), setup_atom_ordering(), update_derived_data(), and core::chemical::MutableResidueType::validate_residue_type().

core::chemical::ResidueType::ResidueType ( ResidueType const &  residue_type)
privatedelete

make a copy of this ResidueType

core::chemical::ResidueType::~ResidueType ( )
override

destructor

References destruction_obs_hub_.

Member Function Documentation

Size core::chemical::ResidueType::abase2 ( Size const  atomno) const

get index of an atom's second base atom

References abase2_indices_, and atom_base_indices_.

Referenced by core::conformation::Residue::abase2(), and core::chemical::residue_types_identical().

AtomIndices const& core::chemical::ResidueType::accpt_pos ( ) const
inline

indices of atoms as Hbond acceptors

References accpt_pos_.

Referenced by core::conformation::Residue::accpt_pos(), and core::chemical::residue_types_identical().

AtomIndices const& core::chemical::ResidueType::accpt_pos_sc ( ) const
inline

indices of atoms as Hbond acceptors

References accpt_pos_sc_.

Referenced by core::conformation::Residue::accpt_pos_sc(), and core::chemical::residue_types_identical().

AtomIndices const& core::chemical::ResidueType::actcoord_atoms ( ) const
inline
AtomIndices const& core::chemical::ResidueType::all_bb_atoms ( ) const
inline
AtomIndices const& core::chemical::ResidueType::all_sc_atoms ( ) const
inline
Size core::chemical::ResidueType::atom_base ( Size const  atomno) const
Size core::chemical::ResidueType::atom_being_shadowed ( Size  atom_shadowing) const
inline
core::Real core::chemical::ResidueType::atom_charge ( Size const  atomno) const
inline
bool core::chemical::ResidueType::atom_depends_on_connection ( core::Size const  atom_index,
core::Size const  connection_id 
) const

Does an atom with a given index have an icoor that depends, directly or indirectly, on a particular connection ID?

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu).

References atom_depends_on_connection_, atom_index(), n_possible_residue_connections(), and natoms().

Referenced by core::chemical::residue_types_identical().

bool core::chemical::ResidueType::atom_depends_on_lower_polymeric_connection ( core::Size const  atom_index) const

Does an atom with a given index have an icoor that depends, directly or indirectly, on the lower polymeric connection?

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu).

References atom_depends_on_lower_polymeric_connection_, atom_index(), core::chemical::ResidueTypeBase::is_polymer(), and natoms().

Referenced by core::conformation::Residue::atom_depends_on_lower(), and core::chemical::residue_types_identical().

bool core::chemical::ResidueType::atom_depends_on_polymeric_connection ( core::Size const  atom_index) const

Does an atom with a given index have an icoor that depends, directly or indirectly, on the upper or lower polymeric connection?

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu).

References atom_depends_on_lower_polymeric_connection_, atom_depends_on_upper_polymeric_connection_, atom_index(), core::chemical::ResidueTypeBase::is_polymer(), and natoms().

bool core::chemical::ResidueType::atom_depends_on_upper_polymeric_connection ( core::Size const  atom_index) const

Does an atom with a given index have an icoor that depends, directly or indirectly, on the upper polymeric connection?

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu).

References atom_depends_on_upper_polymeric_connection_, atom_index(), core::chemical::ResidueTypeBase::is_polymer(), and natoms().

Referenced by core::conformation::Residue::atom_depends_on_upper(), and core::chemical::residue_types_identical().

bool core::chemical::ResidueType::atom_forms_residue_connection ( Size const  atomid) const
inline

Does an atom form any inter-residue chemical bonds?

References atom_2_residue_connection_map_.

bool core::chemical::ResidueType::atom_has_property ( Size const  atomno,
AtomProperty const  property 
) const
Size core::chemical::ResidueType::atom_index ( std::string const &  atom_name) const
inline

get atom index by name

References atom_name(), atom_name_to_index_, is_membrane(), core::chemical::ResidueTypeBase::is_protein(), and core::chemical::ResidueTypeBase::name().

Referenced by protocols::rna::movers::RNAThreadAndMinimizeMover::accomodate_length_change(), protocols::cyclic_peptide::crosslinker::SquarePlanarMetal_Helper::add_dihedral_constraint_to_stream(), protocols::cyclic_peptide::crosslinker::TrigonalPlanarMetal_Helper::add_dihedral_constraints(), protocols::splice::Splice::add_dihedral_constraints(), protocols::splice::SpliceManager::add_dihedral_constraints(), protocols::cyclic_peptide::crosslinker::TBMB_Helper::add_linker_asymmetric(), protocols::cyclic_peptide::crosslinker::TBMB_Helper::add_linker_symmetric(), protocols::hybridization::add_non_protein_cst(), protocols::stepwise::modeler::align::StepWisePoseAligner::add_to_atom_id_map_after_checks(), protocols::cyclic_peptide_predict::SimpleCycpepPredictApplication::align_and_calculate_rmsd(), protocols::denovo_design::movers::AlignResiduesMover::align_residues(), protocols::hybridization::TMalign::alignment2AtomMap(), core::pack::rotamer_set::WaterAnchorInfo::anchor_atom(), protocols::anchored_design::AnchorMoversData::anchor_noise_constraints_setup(), protocols::cyclic_peptide::DeclareBond::apply(), protocols::cyclic_peptide::CreateAngleConstraint::apply(), protocols::cyclic_peptide::CreateTorsionConstraint::apply(), protocols::cyclic_peptide::CreateDistanceConstraint::apply(), protocols::cyclic_peptide::PeptideStubMover::apply(), protocols::domain_assembly::AddAssemblyConstraints::apply(), protocols::antibody::GraftOneCDRLoop::apply(), protocols::constraint_generator::TerminiConstraintGenerator::apply(), protocols::carbohydrates::IdealizeAnomericHydrogens::apply(), protocols::simple_moves::chiral::ChiralMover::apply(), protocols::farnesyl::SampleFarnesylMover::apply(), protocols::farnesyl::InstallFarnesylMover::apply(), protocols::ncbb::ResidueReplacementRebuildMover::apply(), protocols::fldsgn::SheetConstraintGenerator::apply(), protocols::hybridization::DomainAssembly::apply(), protocols::antibody_legacy::GraftOneMover::apply(), protocols::nmr::pre::PREMover::apply(), protocols::stepwise::legacy::modeler::rna::apply_chi_cst(), protocols::enzdes::EnzdesFlexibleRegion::assemble_enzdes_fragdata(), atom_depends_on_connection(), atom_depends_on_lower_polymeric_connection(), atom_depends_on_polymeric_connection(), atom_depends_on_upper_polymeric_connection(), core::conformation::Residue::atom_index(), protocols::constraint_generator::AtomPairConstraintGenerator::atoms_to_constrain(), protocols::dna::DesignProteinBackboneAroundDNA::backrub(), core::scoring::elec::GroupElec::build_groupinfo(), protocols::LoopRebuild::build_loop_with_ccd_closure(), core::io::pose_from_sfr::PoseFromSFRBuilder::build_pdb_info_2_temps(), protocols::stepwise::sampler::rigid_body::RigidBodyStepWiseSampler::calculate_jump(), core::chemical::SetPolymerConnectAtom::changes_connections_on(), core::chemical::ConnectSulfurAndMakeVirtualProton::changes_connections_on(), core::chemical::AddConnectAndTrackingVirt::changes_connections_on(), core::chemical::AddConnectDeleteChildProton::changes_connections_on(), core::pack::guidance_scoreterms::voids_penalty_energy::VoidsPenaltyVoxelGrid::compute_burial(), protocols::fldsgn::MatchResidues::compute_comb(), protocols::flxbb::constraints_NtoC(), protocols::flxbb::constraints_sheet(), copy_other_info(), core::simple_metrics::per_residue_metrics::PerResidueRMSDMetric::create_atom_id_map(), protocols::fldsgn::SheetConstraintGenerator::create_bb_dihedral_constraint(), protocols::constraint_generator::DistanceConstraintGenerator::create_constraint(), protocols::match::Matcher::create_ds_builder(), core::scoring::methods::IdealParametersDatabase::create_parameters_for_restype(), protocols::constraint_generator::HydrogenBondConstraintGenerator::create_residue_constraint(), core::conformation::symmetry::SymmetricConformation::detect_disulfides(), core::conformation::Conformation::detect_disulfides(), protocols::stepwise::modeler::align::StepWisePoseAligner::do_checks(), core::scoring::methods::CartesianBondedEnergy::eval_interresidue_ring_derivatives(), core::scoring::methods::CartesianBondedEnergy::eval_interresidue_ring_energy(), protocols::constraint_generator::existing_atoms(), protocols::stepwise::sampler::rna::RNA_KinematicCloser::figure_out_dof_ids_and_offsets(), core::io::pose_from_sfr::PoseFromSFRBuilder::fill_name_map(), protocols::constraint_movers::AddConstraintsToCurrentConformationMover::find_best_anchor(), protocols::topology_broker::fix_mainchain_connect(), protocols::abinitio::abscript::fix_mainchain_connect(), protocols::loops::fix_with_coord_cst(), protocols::constraint_movers::AddConstraintsToCurrentConformationMover::generate_atom_pair_constraints(), protocols::topology_broker::CoordConstraintClaimer::generate_constraints(), protocols::constraint_movers::AddConstraintsToCurrentConformationMover::generate_coordinate_constraints(), core::pose::motif::get_AIDs(), core::io::pose_to_sfr::PoseToStructFileRepConverter::get_connectivity_annotation_info(), core::io::pose_to_sfr::PoseToStructFileRepConverter::get_link_record(), protocols::hybridization::InsertChunkMover::get_local_sequence_mapping(), core::scoring::elec::CountPairRepMap::get_map(), get_metal_binding_atoms(), core::io::pose_to_sfr::PoseToStructFileRepConverter::get_ssbond_record(), protocols::stepwise::modeler::rna::get_surrounding_O2prime_hydrogen(), core::chemical::ICoorAtomID::ICoorAtomID(), ideal_xyz(), core::scoring::constraints::BasePairConstraint::init_subsidiary_constraints(), protocols::match::upstream::UpstreamResTypeGeometry::initialize_from_residue_type(), core::scoring::FACTSRsdTypeInfo::initialize_intrascale(), core::conformation::Conformation::insert_residue_by_bond(), protocols::enzdes::EnzdesFlexibleRegion::minimize_region(), core::pose::named_atom_id_to_atom_id(), core::chemical::Selector_UPPER_ATOM::operator[](), core::scoring::constraints::ConstraintIO::parse_atom_pair_constraint(), core::scoring::constraints::ConstraintIO::parse_coordinate_constraint(), core::scoring::constraints::parse_NMR_name_old(), protocols::stepwise::modeler::rna::phosphate::PhosphateMover::pass_clash_check(), protocols::anchored_design::AnchoredDesignMover::perturb_anchor(), protocols::cyclic_peptide::crosslinker::TMA_Helper::place_tma_asymmetric(), protocols::cyclic_peptide::crosslinker::TMA_Helper::place_tma_symmetric(), core::chemical::pretty_print_atomicoor(), core::scoring::constraints::ConstraintIO::read_cst_angles(), core::scoring::constraints::ConstraintIO::read_cst_atom_pairs(), core::scoring::constraints::ConstraintIO::read_cst_coordinates(), core::scoring::constraints::BigBinConstraint::read_def(), protocols::constraints_additional::COMCoordinateConstraint::read_def(), protocols::constraints_additional::BindingSiteConstraint::read_def(), protocols::evaluation::PCA::read_structure(), core::io::pose_from_sfr::PoseFromSFRBuilder::refine_pose(), core::scoring::constraints::requires_CB_mapping(), protocols::ligand_docking::LigandBaseProtocol::restrain_protein_Calphas(), protocols::symmetry::SymmetrySlider::rg(), core::select::util::select_coord_for_residue(), select_orient_atoms_standard_logic(), protocols::cyclic_peptide::crosslinker::Metal_HelperBase::set_metal_bond_length(), core::pose::rna::setup_base_pair_constraints(), protocols::rna::denovo::setup_coarse_chainbreak_constraints(), core::scoring::methods::GoapRsdType::setup_connectivity(), core::scoring::constraints::SiteConstraintResidues::setup_csts(), core::scoring::constraints::SiteConstraint::setup_csts(), core::scoring::constraints::FabConstraint::setup_csts(), core::pose::toolbox::AtomLevelDomainMap::setup_movemap(), core::scoring::cryst::PhenixInterface::stealBfactorsFromFile(), protocols::fldsgn::MatchResidues::superimpose_comb(), protocols::denovo_design::movers::RotateSegmentMover::target_atoms(), protocols::chemically_conjugated_docking::ubq_ras_distance(), protocols::chemically_conjugated_docking::ubq_ras_rotation_angle(), and core::chemical::rna::RNA_Info::update_derived_rna_data().

bool core::chemical::ResidueType::atom_is_aro_hydrogen ( Size  atomno) const
inline

References vec_atom_types_.

Referenced by show(), and update_derived_data().

bool core::chemical::ResidueType::atom_is_backbone ( Size const  atomno) const
inline
bool core::chemical::ResidueType::atom_is_hydrogen ( Size const  atomno) const
inline
bool core::chemical::ResidueType::atom_is_polar_hydrogen ( Size  atomno) const
inline
bool core::chemical::ResidueType::atom_is_sidechain ( Size const  atomno) const
inline
std::string const& core::chemical::ResidueType::atom_name ( Size const  atomno) const
inline

get atom name by index

References atom_names_, core::chemical::ResidueTypeBase::name(), and core::id::to_string().

Referenced by protocols::cyclic_peptide::crosslinker::SquarePlanarMetal_Helper::add_dihedral_constraint_to_stream(), protocols::cyclic_peptide::crosslinker::TrigonalPlanarMetal_Helper::add_dihedral_constraints(), protocols::cyclic_peptide_predict::SimpleCycpepPredictApplication::align_and_calculate_rmsd(), protocols::ligand_docking::ga_ligand_dock::EntropyEstimator::analyze_trajectory(), protocols::helical_bundle::FitSimpleHelix::apply(), protocols::simple_moves::chiral::ChiralMover::apply(), protocols::rna::movers::RNAIdealizeMover::apply(), atom_index(), core::conformation::Residue::atom_name(), core::chemical::Metapatch::atoms(), protocols::stepwise::modeler::rna::base_atoms_square_deviation(), protocols::sewing::hashing::LigandBindingResPlacer::best_rotamer_for_residue(), branch_connect_atom_names(), protocols::stepwise::sampler::rigid_body::RigidBodyStepWiseSampler::calculate_jump(), core::scoring::SplitUnfoldedTwoBodyPotential::calculate_residue_emap(), protocols::denovo_design::connection::AreConnectablePredicate::check_distance(), core::scoring::rna::data::RNA_DMS_Potential::check_hbonded(), core::chemical::rna::chi1_torsion_atom(), core::pack::guidance_scoreterms::voids_penalty_energy::VoidsPenaltyVoxelGrid::compute_burial(), core::chemical::MutableResidueType::copy_atom_info(), protocols::stepwise::modeler::protein::StepWiseProteinBackboneSampler::copy_coords(), core::simple_metrics::per_residue_metrics::PerResidueRMSDMetric::create_atom_id_map(), protocols::stepwise::modeler::align::StepWisePoseAligner::create_coordinate_constraint_atom_id_map(), core::scoring::ResidueExclParams::create_excl_info(), core::scoring::methods::IdealParametersDatabase::create_parameters_for_restype(), debug_dump_icoor(), core::chemical::rna::default_jump_atom(), core::conformation::Conformation::detect_bonds(), core::conformation::Conformation::detect_pseudobonds(), protocols::stepwise::modeler::align::StepWisePoseAligner::do_checks(), core::scoring::methods::dfire::DFIRE_Potential::eval_dfire_pair_energy(), core::io::pose_from_sfr::PoseFromSFRBuilder::fill_name_map(), core::io::silent::BinarySilentStruct::fill_struct(), core::chemical::find_best_match(), core::chemical::rna::first_base_atom(), core::conformation::form_disulfide(), core::chemical::formatted_icoord_tree(), core::scoring::methods::IdealParametersDatabase::generate_impropers_map_res(), protocols::stepwise::modeler::align::StepWisePoseAligner::get_calc_rms_atom_id_map(), core::io::pose_to_sfr::PoseToStructFileRepConverter::get_link_record(), protocols::stepwise::modeler::rna::checker::RNA_VDW_BinChecker::get_matching_res_in_VDW_rep_screen_pose(), core::chemical::rna::get_rna_base_centroid(), protocols::stepwise::modeler::align::StepWisePoseAligner::get_root_triad_atom_id_map(), core::chemical::heavy_atom_names_match(), protocols::denovo_design::components::StructureDataFactory::infer_from_pose(), core::pose::toolbox::AtomID_Mapper::initialize_from_pose(), core::scoring::FACTSRsdTypeInfo::initialize_intrascale(), core::pose::rna::is_cutpoint_closed_atom(), core::scoring::methods::IdealParametersDatabase::lookup_bondangle_buildideal(), core::scoring::methods::IdealParametersDatabase::lookup_bondlength_buildideal(), core::scoring::methods::IdealParametersDatabase::lookup_torsion_legacy(), core::pose::MiniPose::MiniPose(), protocols::stepwise::modeler::rna::StepWiseRNA_CombineLongLoopFilterer::moving_res_contact_filter(), core::chemical::ICoorAtomID::name(), core::conformation::Residue::orient_onto_residue(), core::io::pose_from_sfr::PoseFromSFRBuilder::pass_3_verify_sufficient_backbone_atoms(), perform_checks(), core::conformation::Residue::place(), core::chemical::pretty_print_atomicoor(), protocols::stepwise::modeler::rna::print_atom_info(), print_bondangles(), protocols::ligand_docking::print_buried_unsat_Hbonds(), core::chemical::print_chis(), protocols::rna::denovo::print_hbonds(), protocols::stepwise::modeler::rna::print_individual_atom_info(), protocols::match::output::print_node(), core::conformation::print_node(), print_pretty_path_distances(), core::pose::rna::print_torsion_info(), protocols::denovo_design::rebuild_missing_atoms(), core::io::pose_from_sfr::remap_names_on_geometry(), core::pose::toolbox::AtomID_Mapper::renumber_after_variant_changes(), core::chemical::ResidueDatabaseIO::report_residue_type_atom(), core::chemical::ResidueDatabaseIO::report_residue_type_icoor(), core::chemical::residue_types_identical(), core::scoring::mm::score_atom_centrally(), core::scoring::methods::MMBondAngleEnergy::score_atom_centrally(), core::io::pose_from_sfr::score_mapping(), protocols::hybridization::InsertChunkMover::set_bb_xyz_aligned(), core::scoring::lkball::LKBallDatabase::setup_atom_weights(), core::scoring::methods::GoapRsdType::setup_connectivity(), protocols::stepwise::legacy::modeler::rna::StepWiseWorkingParametersSetup::setup_fold_tree(), protocols::stepwise::modeler::rna::setup_suite_atom_id_map(), core::scoring::lkball::setup_water_builders_for_residue_type(), show(), core::chemical::rna::RNA_Info::update_derived_rna_data(), protocols::stepwise::modeler::align::StepWisePoseAligner::update_superimpose_atom_id_map(), protocols::stepwise::modeler::rna::checker::RNA_VDW_BinChecker::update_VDW_screen_bin(), core::chemical::ResidueTypeKinWriter::write_restype(), and core::chemical::write_topology_file().

AtomProperties const& core::chemical::ResidueType::atom_properties ( Size const  atomno) const
inline

Get the AtomicProperities object for the atom. (Note this is only the manually set properties, not all the properties of the atom.)

References atomic_properties_.

Referenced by core::chemical::MutableResidueType::copy_atom_info(), and core::chemical::residue_types_identical().

AtomType const& core::chemical::ResidueType::atom_type ( Size const  atomno) const
inline

Get the chemical atom_type for this atom by it index number in this residue.

If we want the atom_type index (integer), we get this from the conformation::Atom itself, as seen in the code below

References vec_atom_types_.

Referenced by protocols::simple_moves::chiral::ChiralMover::apply(), protocols::generalized_kinematic_closure::filter::GeneralizedKICfilter::apply_loop_bump_check(), core::conformation::Residue::atom_type(), core::scoring::elec::GroupElec::build_groupinfo(), protocols::rna::movers::bump_check(), core::scoring::SplitUnfoldedTwoBodyPotential::calculate_residue_emap(), core::chemical::AutomorphismIterator::can_pair(), core::pack::interaction_graph::SurfacePotential::compute_pose_hpatch_score(), protocols::constraint_generator::HydrogenBondConstraintGenerator::compute_valid_atoms(), core::chemical::MutableResidueType::copy_atom_info(), protocols::motif_grafting::movers::MotifGraftMover::count_clashes_between_two_poses(), core::scoring::methods::MMBondLengthEnergy::eval_atom_derivative(), core::scoring::methods::MMBondAngleEnergy::eval_atom_derivative(), core::scoring::methods::MMBondLengthEnergy::eval_intrares_energy(), core::scoring::methods::MMBondAngleEnergy::eval_intrares_energy(), core::scoring::orbitals::OrbitalsScore::get_E_haro_one_way(), core::scoring::orbitals::OrbitalsScore::get_E_hpol_one_way(), core::scoring::orbitals::OrbitalsScore::get_orb_orb_E(), core::scoring::FACTSRsdTypeInfo::initialize_intrascale(), core::conformation::Residue::is_repulsive(), is_repulsive(), core::conformation::Residue::is_virtual(), is_virtual(), protocols::ligand_docking::rdf::RDFBinaryOrbitalFunction::operator()(), protocols::stepwise::modeler::rna::phosphate_base_phosphate_square_deviation(), print_bondangles(), protocols::match::output::print_node(), core::conformation::print_node(), core::pose::rna::print_torsion_info(), protocols::pose_metric_calculators::SemiExplicitWaterUnsatisfiedPolarsCalculator::recompute(), protocols::simple_pose_metric_calculators::BuriedUnsatisfiedPolarsCalculator::recompute(), core::chemical::ResidueDatabaseIO::report_residue_type_atom(), core::scoring::methods::MMBondLengthEnergy::residue_pair_energy(), core::pack::interaction_graph::HPatchBackgroundNode< V, E, G >::set_rotamer(), core::pack::interaction_graph::HPatchNode< V, E, G >::set_rotamers(), core::scoring::lkball::LKBallDatabase::setup_atom_weights(), core::scoring::lkball::setup_water_builders_for_residue_type(), core::chemical::ResidueTypeKinWriter::write_restype(), and core::chemical::write_topology_file().

core::Size core::chemical::ResidueType::atom_type_index ( core::Size  atomno) const
inline
bool core::chemical::ResidueType::atoms_are_bonded ( core::Size const  atom_index1,
core::Size const  atom_index2 
) const

Indicates whether or not two atom indices have a chemical bond linking them.

Note that this assumes that the Rosetta machinery is set up so that if atom 1 is bonded to atom 2, atom 2 is bonded to atom 1. This function breaks if that assumption breaks.

Author
Vikram K. Mulligan

References nbrs().

Referenced by core::conformation::get_second_atom_from_connection().

utility::vector1< AtomIndices > const& core::chemical::ResidueType::atoms_last_controlled_by_chi ( ) const
inline
AtomIndices const& core::chemical::ResidueType::atoms_last_controlled_by_chi ( Size  chi) const
inline

Read access to the Atoms last controlled by a particular chi.

References atoms_last_controlled_by_chi_.

AtomIndices const& core::chemical::ResidueType::atoms_with_orb_index ( ) const
inline
utility::vector1< two_atom_set > const& core::chemical::ResidueType::atoms_within_one_bond_of_a_residue_connection ( Size  resconn) const
inline
utility::vector1< three_atom_set > const& core::chemical::ResidueType::atoms_within_two_bonds_of_a_residue_connection ( Size  resconn) const
inline

Returns the list of those atoms within two bonds of residue connection # resconn. Each entry in this list is a triple of atom-id's, the first of which is always the id for the atom forming residue connection resconn.

References atoms_within_two_bonds_of_a_residue_connection_.

Referenced by core::scoring::GenericBondedPotential::eval_residue_pair_energy_and_derivative_torsion(), and core::scoring::methods::MMTorsionEnergy::residue_pair_energy().

template<typename MemFn , typename Ptr >
utility::signals::Link core::chemical::ResidueType::attach_destruction_obs ( MemFn  fn,
Ptr  ptr 
) const
inline

attach RestypeDestructionEvent observer function

Parameters
fnpointer to observer's unary member function with signature void( RestypeDestructionEvent const & )
ptrRAW pointer to observer object
Returns
Link that can be used to manage the connection.
Remarks
RestypeDestructionEvent observers will only be notified upon destruction of the ResidueType

References destruction_obs_hub_.

Referenced by core::scoring::elec::CountPairRepMap::get_map(), core::scoring::FACTSRsdTypeMap::get_type_info(), core::scoring::lkball::LKBallDatabase::initialize_residue_type(), core::scoring::methods::IdealParametersDatabase::parameters_for_restype(), and core::scoring::custom_pair_distance::PairFuncMap::set_atom_pair_func().

AtomIndices const& core::chemical::ResidueType::attached_H_begin ( ) const
inline
Size core::chemical::ResidueType::attached_H_begin ( Size const  atom) const
inline

index number of the first attached Hydrogen on an atom

References attached_H_begin_.

AtomIndices const& core::chemical::ResidueType::attached_H_end ( ) const
inline
Size core::chemical::ResidueType::attached_H_end ( Size const  atom) const
inline

index number of the last attached Hydrogen on an atom

References attached_H_end_.

void core::chemical::ResidueType::auto_assign_nu_atoms ( )
private

If a ring has been added but no nu angles have been defined, automatically assign them.

If a ring has been added but no nu angles have been defined, automatically assign them.

Don't even bother trying if there are multiple rings. The creator of the .params file needs to add the definitions manually.

Author
Labonte JWLab.nosp@m.onte.nosp@m.@jhu..nosp@m.edu

References n_nus(), n_rings(), nu_atoms(), nu_atoms_, ring_atoms(), and ring_atoms_.

Referenced by copy_other_info().

BondRingness core::chemical::ResidueType::bond_ringness ( core::Size const  atomindex1,
core::Size const  atomindex2 
) const
BondName core::chemical::ResidueType::bond_type ( core::Size const  atomindex1,
core::Size const  atomindex2 
) const
bondangle_atom_set const& core::chemical::ResidueType::bondangle ( Size const  bondang) const
inline
utility::vector1< Size > const& core::chemical::ResidueType::bondangles_for_atom ( Size  atomno) const
inline

Returns the list of all of the indices of all the intraresidue bond angles a particular atom is involved in. Useful for calculating the derivatives for an atom.

References bondangles_for_atom_.

Referenced by core::scoring::methods::MMBondAngleEnergy::eval_atom_derivative(), and core::chemical::residue_types_identical().

AtomIndices const & core::chemical::ResidueType::bonded_neighbor ( Size const  atomno) const
utility::vector1< BondRingness > const & core::chemical::ResidueType::bonded_neighbor_ringnesses ( Size const  atomno) const
utility::vector1< BondName > const & core::chemical::ResidueType::bonded_neighbor_types ( Size const  atomno) const
utility::vector1<core::Size> const& core::chemical::ResidueType::bonded_orbitals ( Size const  atomno) const
inline
utility::vector1< std::pair< core::Size, core::Size > > core::chemical::ResidueType::bonds ( ) const

Returns a list of all pairs of atoms which are bonded. This returned list should only have only one entry per bond (So [1,2] and [2,1] will not both be present.)

References bonded_neighbor_, and nbonds_.

Referenced by core::chemical::MutableResidueType::copy_atom_info(), core::scoring::methods::IdealParametersDatabase::generate_impropers_map_res(), core::io::pose_from_sfr::remap_names_on_geometry(), and core::io::pose_from_sfr::score_mapping().

utility::vector1< std::string > core::chemical::ResidueType::branch_connect_atom_names ( ) const

Return a list of names of atoms at non-polymer connections.

References atom_name(), and branch_connect_atoms().

Referenced by show().

utility::vector1< uint > core::chemical::ResidueType::branch_connect_atoms ( ) const
core::chemical::carbohydrates::CarbohydrateInfoCOP core::chemical::ResidueType::carbohydrate_info ( ) const

Return the CarbohydrateInfo object containing sugar-specific properties for this residue.

References carbohydrate_info_.

Referenced by core::conformation::Residue::carbohydrate_info(), core::pose::Pose::chain_sequence(), and core::pack::palette::PackerPalette::saccharide_backbones_are_compatible().

Size core::chemical::ResidueType::chi_2_proton_chi ( Size  chi_index) const
inline
AtomIndices const& core::chemical::ResidueType::chi_atoms ( Size const  chino) const
inline

indices of the atoms which are used to define a given chi angle (chino)

References chi_atoms_.

Referenced by protocols::ligand_docking::ga_ligand_dock::EntropyEstimator::analyze_trajectory(), protocols::minimization_packing::MinimalRotamer::atom_is_ideal(), protocols::stepwise::modeler::polar_hydrogens::check_if_proton_chi_atom(), protocols::simple_moves::check_if_proton_chi_atom(), core::chemical::rna::chi1_torsion_atom_index(), core::conformation::Residue::chi_atoms(), protocols::minimization_packing::MinimalRotamer::chi_matches_coords(), core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::chisamples_for_rotamer_and_chi(), core::chemical::MutableResidueType::copy_other_info(), core::scoring::methods::YHHPlanarityEnergy::defines_score_for_rsd(), protocols::stepwise::modeler::align::StepWisePoseAligner::do_checks(), core::pack::rotamers::SingleBasicRotamerLibrary::fill_rotamer_vector(), core::chemical::rna::first_base_atom_index(), protocols::match::upstream::FullChiSampleSet::FullChiSampleSet(), protocols::match::upstream::UpstreamResTypeGeometry::initialize_from_residue_type(), protocols::ligand_docking::ga_ligand_dock::LigandAligner::perturb_lig(), core::chemical::print_chis(), protocols::ligand_docking::ga_ligand_dock::LigandAligner::randomize_lig(), core::chemical::ResidueDatabaseIO::report_residue_type_chi(), core::conformation::Residue::Residue(), core::chemical::residue_types_identical(), core::chemical::rna::RNA_Info::rna_update_last_controlling_chi(), core::conformation::Residue::set_chi(), core::conformation::Residue::set_d(), core::conformation::Residue::set_theta(), protocols::ligand_docking::torsion_constraints_from_mean_sd(), core::chemical::rna::RNA_Info::update_derived_rna_data(), core::chemical::ResidueTypeKinWriter::write_restype(), and core::chemical::write_topology_file().

utility::vector1< AtomIndices > const& core::chemical::ResidueType::chi_atoms ( ) const
inline

indices of the atoms which are used to define all the chi angles

References chi_atoms_.

Referenced by perform_checks(), and update_last_controlling_chi().

utility::vector1< std::pair< Real, Real > > const& core::chemical::ResidueType::chi_rotamers ( Size const  chino) const
inline
ResidueTypeOP core::chemical::ResidueType::clone ( ) const
privatedelete

make a copy

void core::chemical::ResidueType::copy_atom_info ( MutableResidueType const &  mrt,
utility::vector1< core::Size > const &  old_to_new 
)
private
void core::chemical::ResidueType::copy_other_info ( MutableResidueType const &  source,
utility::vector1< core::Size > const &  old_to_new 
)
private

Fill in various other information which is being copied over from the MutableResidueType.

References abase2_indices_, accpt_pos_, core::chemical::MutableResidueType::actcoord_atoms(), actcoord_atoms_indices_, core::chemical::MutableResidueType::all_atoms(), core::chemical::MutableResidueType::atom(), atom_2_residue_connection_map_, core::chemical::ResidueTypeBase::atom_aliases(), atom_base_indices_, core::chemical::MutableResidueType::atom_index(), atom_index(), atom_name_to_index_, atom_names_, atom_shadowed_indices_, auto_assign_nu_atoms(), bonded_neighbor_, chi_2_proton_chi_, core::chemical::MutableResidueType::chi_atom_vds(), chi_atoms_, core::chemical::MutableResidueType::chi_rotamers(), chi_rotamers_, define_mainchain_atoms(), core::chemical::MutableResidueType::get_atom_name_to_vd_map(), icoor_, core::chemical::MutableResidueType::is_proton_chi(), is_proton_chi_, core::chemical::MutableResidueType::low_ring_conformers(), low_ring_conformers_, core::chemical::MutableResidueType::lower_connect_id(), lower_connect_id_, core::chemical::MutableResidueType::lowest_ring_conformer(), lowest_ring_conformer_, core::chemical::MutableResidueType::mainchain_atoms(), mainchain_atoms_indices_, n_non_polymeric_residue_connections_, core::chemical::MutableResidueType::n_nus(), core::chemical::MutableResidueType::n_polymeric_residue_connections(), n_polymeric_residue_connections_, core::chemical::MutableResidueType::n_possible_residue_connections(), core::chemical::MutableResidueType::n_proton_chi(), core::chemical::MutableResidueType::n_rings(), core::chemical::ResidueTypeBase::name(), core::chemical::MutableResidueType::natoms(), natoms_, nbr_atom_, core::chemical::MutableResidueType::nbr_radius(), nbr_radius_, core::chemical::MutableResidueType::nbr_vertex(), nbrs(), core::chemical::MutableResidueType::nchi(), core::chemical::MutableResidueType::nu_atoms(), nu_atoms_, core::scoring::pair, proton_chi_extra_samples_, core::chemical::MutableResidueType::proton_chi_extra_samples_for_chi(), proton_chi_samples_, core::chemical::MutableResidueType::proton_chi_samples_for_chi(), proton_chis_, core::chemical::MutableResidueType::residue_connection(), residue_connections_, core::chemical::MutableResidueType::ring_atoms(), ring_atoms_, core::chemical::MutableResidueType::ring_saturation_type(), ring_saturation_types_, core::chemical::MutableResidueType::root_atom(), root_atom_, core::chemical::MutableResidueType::shadow_atoms(), core::id::to_string(), core::chemical::MutableResidueType::upper_connect_id(), and upper_connect_id_.

Referenced by ResidueType().

AtomIndices const& core::chemical::ResidueType::cut_bond_neighbor ( Size const  atomno) const
inline
void core::chemical::ResidueType::debug_dump_icoor ( ) const
void core::chemical::ResidueType::define_mainchain_atoms ( )
private

If a polymer without explicitly set mainchain atoms, determine a list of main chain atoms by shortest path from LOWER to UPPER.

Should only be called from copy_other_data() function.

Needs connections, bonded neighbors set

References bonded_neighbor(), core::chemical::get_residue_path_distances(), core::chemical::ResidueTypeBase::is_polymer(), lower_connect(), lower_connect_atom(), lower_connect_id(), mainchain_atoms_indices_, core::chemical::ResidueTypeBase::name(), protocols::sic_dock::scores::nbr, nbrs(), core::chemical::TR(), upper_connect(), upper_connect_atom(), and upper_connect_id().

Referenced by copy_other_info().

template<typename MemFn , typename Ptr >
bool core::chemical::ResidueType::detach_destruction_obs ( MemFn  fn,
Ptr  ptr 
) const
inline

detach RestypeDestructionEvent observer function

Parameters
fnpointer to observer's unary member function with signature void( RestypeDestructionEvent const & )
ptrRAW pointer to observer object
Returns
true if disconnect successful, false if connection does not exist
Remarks
RestypeDestructionEvent observers will only be notified upon destruction of the ResidueType

References destruction_obs_hub_.

dihedral_atom_set const& core::chemical::ResidueType::dihedral ( Size const  dihe) const
inline
utility::vector1< Size > const& core::chemical::ResidueType::dihedrals_for_atom ( Size  atomno) const
inline

Returns the list of all of the indices of all the intraresidue dihedrals a particular atom is involved in. Useful for calculating the derivatives for an atom.

References dihedrals_for_atom_.

Referenced by core::scoring::methods::MMTorsionEnergy::eval_atom_derivative(), and core::chemical::residue_types_identical().

core::chemical::element::Elements core::chemical::ResidueType::element ( core::Size  atomno) const
ElementCOP core::chemical::ResidueType::element_type ( core::Size  atomno) const
inline
Size core::chemical::ResidueType::first_sidechain_atom ( ) const
inline
Size core::chemical::ResidueType::first_sidechain_hydrogen ( ) const
inline
int core::chemical::ResidueType::formal_charge ( Size const  atomno) const
inline
gasteiger::GasteigerAtomTypeDataCOP core::chemical::ResidueType::gasteiger_atom_type ( core::Size  atomno) const

Get the Gasteiger atom type for this atom Can be null if the atom type isn't set.

References gasteiger_atom_type_index_, and core::chemical::ResidueTypeBase::gasteiger_atom_typeset().

Referenced by core::chemical::MutableResidueType::copy_atom_info(), and core::chemical::residue_types_identical().

ResidueTypeCOP core::chemical::ResidueType::get_base_type_cop ( ) const
overridevirtual
void core::chemical::ResidueType::get_metal_binding_atoms ( AtomIndices metal_binding_indices) const
inline
ResidueTypeCOP core::chemical::ResidueType::get_self_ptr ( ) const
inline
ResidueTypeOP core::chemical::ResidueType::get_self_ptr ( )
inline
ResidueTypeCAP core::chemical::ResidueType::get_self_weak_ptr ( ) const
inline

Referenced by self_pointer_updates().

ResidueTypeAP core::chemical::ResidueType::get_self_weak_ptr ( )
inline
AtomIndices const& core::chemical::ResidueType::Haro_index ( ) const
inline

return indices of aromatic Hydrogens

References Haro_index_.

Referenced by core::conformation::Residue::Haro_index(), and core::chemical::residue_types_identical().

bool core::chemical::ResidueType::has ( std::string const &  atom_name) const
inlineoverridevirtual

is this atom present in this residue?

Implements core::chemical::ResidueTypeBase.

References atom_name_to_index_.

Referenced by protocols::rna::movers::RNAThreadAndMinimizeMover::accomodate_length_change(), core::select::util::any_atoms_within_cutoff(), protocols::comparative_modeling::PartialThreadingMover::apply(), protocols::fldsgn::SheetConstraintGenerator::apply(), protocols::comparative_modeling::LoopRelaxMover::apply(), protocols::comparative_modeling::ThreadingMover::apply(), core::pack::rotamer_set::WaterAnchorInfo::attaches_to_residue_type(), core::scoring::elec::GroupElec::build_groupinfo(), core::io::pose_from_sfr::PoseFromSFRBuilder::build_pdb_info_2_temps(), core::chemical::SetPolymerConnectAtom::changes_connections_on(), core::chemical::AddConnect::changes_connections_on(), core::chemical::ConnectSulfurAndMakeVirtualProton::changes_connections_on(), core::chemical::AddConnectAndTrackingVirt::changes_connections_on(), core::chemical::AddConnectDeleteChildProton::changes_connections_on(), protocols::hybridization::InsertChunkMover::check_overlap(), protocols::simple_filters::AtomicDistanceFilter::compute(), core::simple_metrics::per_residue_metrics::PerResidueRMSDMetric::create_atom_id_map(), core::scoring::methods::IdealParametersDatabase::create_parameters_for_restype(), core::scoring::disulfides::DisulfideAtomIndices::DisulfideAtomIndices(), core::scoring::disulfides::DisulfideMatchingEnergyContainer::disulfides_changed(), core::scoring::disulfides::CentroidDisulfideEnergyContainer::disulfides_changed(), protocols::frag_picker::scores::AtomBasedConstraintsScore::do_caching(), protocols::stepwise::modeler::align::StepWisePoseAligner::do_checks(), protocols::stepwise::sampler::protein::do_set_xyz(), protocols::stepwise::modeler::movemap::figure_out_stepwise_movemap(), protocols::frag_picker::scores::FragmentCrmsd::fill_CA_coords(), core::io::pose_from_sfr::PoseFromSFRBuilder::fill_name_map(), protocols::constraint_movers::AddConstraintsToCurrentConformationMover::find_best_anchor(), core::chemical::find_best_match(), core::scoring::disulfides::FullatomDisulfideEnergyContainer::find_disulfides(), core::scoring::disulfides::CentroidDisulfideEnergyContainer::find_disulfides(), protocols::rna::movers::find_nearby_res(), protocols::constraint_movers::AddConstraintsToCurrentConformationMover::generate_atom_pair_constraints(), protocols::constraint_movers::AddConstraintsToCurrentConformationMover::generate_coordinate_constraints(), core::pose::motif::get_AIDs(), core::scoring::elec::CountPairRepMap::get_map(), get_metal_binding_atoms(), core::conformation::Residue::has(), core::chemical::ICoorAtomID::ICoorAtomID(), protocols::match::upstream::UpstreamResTypeGeometry::initialize_from_residue_type(), core::scoring::FACTSRsdTypeInfo::initialize_intrascale(), protocols::relax::RelaxProtocolBase::initialize_movemap(), core::conformation::is_disulfide_bond(), core::pose::named_atom_id_to_atom_id(), core::conformation::Residue::orient_onto_residue(), protocols::hybridization::MRMover::pack_missing_sidechains(), core::conformation::Residue::place(), core::chemical::pretty_print_atomicoor(), core::scoring::constraints::ConstraintIO::read_cst_atom_pairs(), core::scoring::constraints::ConstraintIO::read_cst_coordinates(), protocols::loop_grower::LoopGrower::refine_cycle(), core::io::pose_from_sfr::PoseFromSFRBuilder::refine_pose(), core::scoring::methods::PeptideBondEnergy::residue_pair_energy(), core::scoring::methods::CustomAtomPairEnergy::residue_pair_energy(), core::select::util::select_coord_for_residue(), protocols::rna::denovo::setup_coarse_chainbreak_constraints(), core::scoring::setup_matching_atoms_with_given_names(), protocols::stepwise::modeler::protein::setup_protein_backbone_atom_id_map(), core::chemical::rna::RNA_Info::update_derived_rna_data(), and protocols::energy_based_clustering::EnergyBasedClusteringProtocol::use_in_rmsd().

bool core::chemical::ResidueType::has_polymer_dependent_groups ( ) const
inline

Does this type have groups (not just single atoms) that are polymer-bond dependent?

Always returns false for non-polymeric residue types.

References has_polymer_dependent_groups_, and core::chemical::ResidueTypeBase::is_polymer().

Referenced by core::chemical::residue_types_identical().

bool core::chemical::ResidueType::has_sc_orbitals ( ) const
bool core::chemical::ResidueType::has_shadow_atoms ( ) const
inline

Returns true if this residue has shadow atoms, false otherwise.

References atom_shadowed_indices_.

Referenced by core::conformation::Residue::has_shadow_atoms().

bool core::chemical::ResidueType::heavyatom_has_polar_hydrogens ( Size  atomno) const
bool core::chemical::ResidueType::heavyatom_is_an_acceptor ( Size  atomno) const
inline
AtomIndices const& core::chemical::ResidueType::Hpol_index ( ) const
inline
AtomIndices const& core::chemical::ResidueType::Hpos_apolar ( ) const
inline

indices of non-polar hydrogens as potential carbon Hbond donors

References Hpos_apolar_.

Referenced by core::conformation::Residue::Hpos_apolar(), and core::chemical::residue_types_identical().

AtomIndices const& core::chemical::ResidueType::Hpos_polar ( ) const
inline
AtomIndices const& core::chemical::ResidueType::Hpos_polar_sc ( ) const
inline
AtomICoor const & core::chemical::ResidueType::icoor ( Size const  atm) const
core::Vector core::chemical::ResidueType::ideal_xyz ( Size const  atomno) const
inline
core::Vector core::chemical::ResidueType::ideal_xyz ( std::string const &  atomname) const
inline

References atom_index(), and ideal_xyz().

void core::chemical::ResidueType::initialize_derived_data ( )
private
bool core::chemical::ResidueType::is_acetylated_nterminus ( ) const
bool core::chemical::ResidueType::is_adduct ( ) const
bool core::chemical::ResidueType::is_alpha_aa ( ) const
inline

Is this an alpha-amino acid?

References core::chemical::ALPHA_AA, core::chemical::ResidueProperties::has_property(), and core::chemical::ResidueTypeBase::properties().

Referenced by protocols::ncbb::SecStructMinimizeMover::add_dihedral_constraints_to_pose(), protocols::cyclic_peptide::DeclareBond::apply(), protocols::simple_moves::SetTorsion::apply(), core::select::residue_selector::PhiSelector::apply(), protocols::ncbb::SecStructMinimizeMover::apply(), core::select::residue_selector::BinSelector::apply(), protocols::denovo_design::movers::FastDesign::apply(), protocols::generalized_kinematic_closure::filter::GeneralizedKICfilter::apply_alpha_aa_rama_check(), protocols::generalized_kinematic_closure::filter::GeneralizedKICfilter::apply_loop_bump_check(), protocols::generalized_kinematic_closure::perturber::GeneralizedKICperturber::apply_perturb_dihedral_bbg(), protocols::generalized_kinematic_closure::perturber::GeneralizedKICperturber::apply_randomize_alpha_backbone_by_rama(), protocols::generalized_kinematic_closure::perturber::GeneralizedKICperturber::apply_sample_cis_peptide_bond(), core::conformation::check_good_cutpoint_neighbour(), protocols::denovo_design::construct_poly_ala_pose(), protocols::toolbox::pose_manipulation::construct_poly_uniq_restype_pose(), core::pack::palette::PackerPalette::decide_what_to_do_with_base_type(), core::conformation::form_disulfide_helper(), protocols::generalized_kinematic_closure::general_set_phi(), protocols::generalized_kinematic_closure::general_set_psi(), protocols::stepwise::modeler::protein::StepWiseProteinBackboneSampler::get_main_chain_torsion_set_list_c_terminus(), protocols::stepwise::modeler::protein::StepWiseProteinBackboneSampler::get_main_chain_torsion_set_list_coarse(), protocols::stepwise::modeler::protein::StepWiseProteinBackboneSampler::get_main_chain_torsion_set_list_full(), protocols::stepwise::modeler::protein::StepWiseProteinBackboneSampler::get_main_chain_torsion_set_list_n_terminus(), protocols::stepwise::modeler::protein::StepWiseProteinBackboneSampler::get_main_chain_torsion_set_list_sample_phi_only(), protocols::stepwise::modeler::protein::StepWiseProteinBackboneSampler::get_main_chain_torsion_set_list_sample_psi_only(), core::scoring::P_AA::get_Paa_pp_deriv(), core::scoring::bin_transitions::BinTransitionData::has_property(), protocols::cyclic_peptide_predict::SimpleCycpepPredictApplication::is_supported_restype(), protocols::denovo_design::DisulfidizeMover::mutate_disulfides_to_ala(), protocols::energy_based_clustering::EnergyBasedClusteringProtocol::mutate_to_alanine(), protocols::stepwise::modeler::protein::StepWiseProteinBackboneSampler::sample_residues_recursively(), protocols::stepwise::modeler::protein::StepWiseProteinBackboneSampler::setup_torsion_sets(), and protocols::energy_based_clustering::EnergyBasedClusteringProtocol::use_in_rmsd().

bool core::chemical::ResidueType::is_aramid ( ) const
inline
bool core::chemical::ResidueType::is_aromatic ( ) const
bool core::chemical::ResidueType::is_base_type ( ) const
overridevirtual
bool core::chemical::ResidueType::is_beta_aa ( ) const
inline

Is this a beta-amino acid?

References core::chemical::BETA_AA, core::chemical::ResidueProperties::has_property(), and core::chemical::ResidueTypeBase::properties().

Referenced by protocols::ncbb::SecStructMinimizeMover::add_dihedral_constraints_to_pose(), protocols::cyclic_peptide::DeclareBond::apply(), protocols::simple_moves::SetTorsion::apply(), core::select::residue_selector::PhiSelector::apply(), protocols::ncbb::SecStructFinder::apply(), protocols::ncbb::SecStructMinimizeMover::apply(), protocols::generalized_kinematic_closure::filter::GeneralizedKICfilter::apply_loop_bump_check(), protocols::generalized_kinematic_closure::perturber::GeneralizedKICperturber::apply_sample_cis_peptide_bond(), core::pack::rotamer_set::ContinuousRotamerSet::build_rotamers(), core::conformation::check_good_cutpoint_neighbour(), protocols::denovo_design::construct_poly_ala_pose(), protocols::toolbox::pose_manipulation::construct_poly_uniq_restype_pose(), core::pack::rotamers::SingleNCAARotamerLibraryCreator::create(), core::pack::palette::PackerPalette::decide_what_to_do_with_base_type(), core::conformation::form_disulfide_helper(), protocols::stepwise::modeler::protein::StepWiseProteinBackboneSampler::get_main_chain_torsion_set_list_c_terminus(), protocols::stepwise::modeler::protein::StepWiseProteinBackboneSampler::get_main_chain_torsion_set_list_coarse(), protocols::stepwise::modeler::protein::StepWiseProteinBackboneSampler::get_main_chain_torsion_set_list_full(), protocols::stepwise::modeler::protein::StepWiseProteinBackboneSampler::get_main_chain_torsion_set_list_n_terminus(), protocols::stepwise::modeler::protein::StepWiseProteinBackboneSampler::get_main_chain_torsion_set_list_sample_phi_only(), protocols::stepwise::modeler::protein::StepWiseProteinBackboneSampler::get_main_chain_torsion_set_list_sample_psi_only(), core::scoring::bin_transitions::BinTransitionData::has_property(), protocols::cyclic_peptide_predict::SimpleCycpepPredictApplication::is_supported_restype(), protocols::stepwise::modeler::protein::StepWiseProteinBackboneSampler::main_chain_torsion_set_lists_real(), protocols::denovo_design::DisulfidizeMover::mutate_disulfides_to_ala(), protocols::energy_based_clustering::EnergyBasedClusteringProtocol::mutate_to_alanine(), core::scoring::OmegaTether::omega_index(), core::scoring::OmegaTether::phi_index(), core::scoring::OmegaTether::psi_index(), core::pack::dunbrack::RotamerLibrary::read_from_binary(), protocols::stepwise::modeler::protein::StepWiseProteinBackboneSampler::sample_residues_recursively(), and protocols::stepwise::modeler::protein::StepWiseProteinBackboneSampler::setup_torsion_sets().

bool core::chemical::ResidueType::is_branch_point ( ) const
bool core::chemical::ResidueType::is_canonical ( ) const
bool core::chemical::ResidueType::is_canonical_aa ( ) const
bool core::chemical::ResidueType::is_canonical_nucleic ( ) const
bool core::chemical::ResidueType::is_carbohydrate ( ) const

is carbohydrate?

References core::chemical::CARBOHYDRATE, core::chemical::ResidueProperties::has_property(), and core::chemical::ResidueTypeBase::properties().

Referenced by core::conformation::Conformation::append_residue(), protocols::carbohydrates::IdealizeAnomericHydrogens::apply(), protocols::constraint_generator::DihedralConstraintGenerator::apply(), core::select::residue_selector::GlycanLayerSelector::apply(), protocols::simple_moves::CoupledMover::apply(), protocols::carbohydrates::GlycanTreeModeler::apply(), core::io::pose_from_sfr::PoseFromSFRBuilder::build_initial_pose(), protocols::flexpep_docking::FlexPepDockingPoseMetrics::calc_phipsi_RMSD(), core::simple_metrics::per_residue_metrics::PerResidueGlycanLayerMetric::calculate(), core::simple_metrics::metrics::DihedralDistanceMetric::calculate(), core::conformation::Residue::carbohydrate_info(), core::conformation::check_good_cutpoint_neighbour(), core::pack::palette::PackerPalette::decide_what_to_do_with_base_type(), core::chemical::rna::default_jump_atom(), core::select::movemap::MoveMapFactory::edit_movemap_given_pose(), core::io::pose_to_sfr::PoseToStructFileRepConverter::get_connectivity_annotation_info(), core::io::pose_to_sfr::PoseToStructFileRepConverter::get_link_record(), core::scoring::methods::get_restag(), core::io::pose_to_sfr::PoseToStructFileRepConverter::grab_torsion_records(), protocols::stepwise::modeler::StepWiseConnectionSampler::initialize_checkers(), protocols::stepwise::modeler::align::StepWiseClusterer::initialize_parameters(), protocols::stepwise::modeler::StepWiseConnectionSampler::initialize_pose_level_screeners(), protocols::stepwise::modeler::StepWiseConnectionSampler::initialize_residue_level_screeners(), protocols::stepwise::modeler::StepWiseConnectionSampler::initialize_sampler(), core::conformation::Conformation::insert_polymer_residue(), core::conformation::Residue::is_carbohydrate(), protocols::stepwise::modeler::is_protein(), core::io::pose_from_sfr::PoseFromSFRBuilder::refine_pose(), core::pose::carbohydrates::set_glycan_iupac_bb_torsions(), and protocols::rna::movers::ErraserMinimizerMover::vary_bond_geometry().

bool core::chemical::ResidueType::is_charged ( ) const
bool core::chemical::ResidueType::is_coarse ( ) const
bool core::chemical::ResidueType::is_cyclic ( ) const
bool core::chemical::ResidueType::is_disulfide_bonded ( ) const
inline

is disulfide?

References core::chemical::DISULFIDE_BONDED, core::chemical::ResidueProperties::has_property(), and core::chemical::ResidueTypeBase::properties().

Referenced by protocols::protein_interface_design::movers::PrepackMover::apply(), protocols::abinitio::DomainAssembly::apply(), protocols::cyclic_peptide::TryDisulfPermutations::apply(), protocols::minimization_packing::DisulfideOptimizationMover::apply(), protocols::hybridization::HybridizeProtocol::apply(), core::conformation::break_disulfide(), protocols::denovo_design::construct_poly_ala_pose(), core::pack::palette::PackerPalette::decide_what_to_do_with_base_type(), core::pack::palette::PackerPalette::decide_what_to_do_with_existing_type(), core::conformation::symmetry::SymmetricConformation::detect_disulfides(), core::conformation::Conformation::detect_disulfides(), core::scoring::disulfides::DisulfideMatchingEnergyContainer::disulfides_changed(), core::scoring::disulfides::CentroidDisulfideEnergyContainer::disulfides_changed(), core::scoring::EnvPairPotential::evaluate_pair_and_cenpack_score(), protocols::denovo_design::DisulfidizeMover::find_current_disulfides(), core::scoring::disulfides::DisulfideMatchingEnergyContainer::find_disulfides(), core::scoring::disulfides::CentroidDisulfideEnergyContainer::find_disulfides(), protocols::denovo_design::DisulfidizeMover::find_possible_disulfides(), core::conformation::get_disulf_partner(), protocols::enzdes::EnzdesFlexBBProtocol::get_tenA_neighbor_residues(), core::scoring::bin_transitions::BinTransitionData::has_property(), protocols::cyclic_peptide::crosslinker::OctahedralMetal_Helper::is_allowed_type(), protocols::cyclic_peptide::crosslinker::TetrahedralMetal_Helper::is_allowed_type(), core::conformation::is_disulfide_bond(), protocols::toolbox::match_enzdes_util::EnzConstraintParameters::make_constraint_covalent_helper(), protocols::energy_based_clustering::EnergyBasedClusteringProtocol::mutate_to_alanine(), core::scoring::disulfides::DisulfideMatchingEnergy::residue_pair_energy(), core::scoring::disulfides::FullatomDisulfideEnergy::residue_pair_energy(), protocols::loops::select_loop_residues(), protocols::calc_taskop_movers::DesignRepackMover::setup_packer_and_movemap(), and core::pose::full_model_info::update_disulfides_from_full_model_info().

bool core::chemical::ResidueType::is_gamma_aa ( ) const
inline
bool core::chemical::ResidueType::is_inverted_virtual_residue ( ) const
bool core::chemical::ResidueType::is_ligand ( ) const

is ligand?

References core::chemical::ResidueProperties::has_property(), core::chemical::LIGAND, and core::chemical::ResidueTypeBase::properties().

Referenced by protocols::enzdes::DetectProteinLigandInterface::apply(), protocols::enzdes::GenerateStoredRBConfs::apply(), protocols::simple_task_operations::RestrictToInterface::apply(), protocols::enzdes::RepackLigandSiteWithoutLigandMover::apply(), protocols::energy_based_clustering::EnergyBasedClusteringProtocol::calc_dist(), protocols::enzdes::EnzdesBaseProtocol::catalytic_res(), protocols::enzdes::enzutil::catalytic_res(), protocols::enzdes::LigDSasaFilter::compute(), protocols::enzdes::RepackWithoutLigandFilter::compute(), protocols::flxbb::constraints_sheet(), protocols::enzdes::PoseFoundResiduesCombination::construct_and_dump_outpose(), core::pack::rotamers::SingleLigandRotamerLibraryCreator::create(), core::pack::palette::PackerPalette::decide_what_to_do_with_base_type(), protocols::enzdes::EnzdesBaseProtocol::design_targets(), protocols::enzdes::SecondaryMatchProtocol::find_all_allowed_positions(), protocols::ligand_docking::get_ligand_seqpos(), protocols::enzdes::ModifyStoredRBConfs::get_rigid_body_confs(), core::conformation::Residue::is_ligand(), protocols::forge::remodel::RemodelLoopMover::loophash_stage(), protocols::toolbox::match_enzdes_util::EnzdesCstCache::ordered_constrained_positions(), protocols::energy_based_clustering::EnergyBasedClusteringProtocol::pose_from_posedata(), protocols::enzdes::EnzdesScorefileFilter::setup_pose_metric_calculators(), protocols::energy_based_clustering::EnergyBasedClusteringProtocol::storeposedata(), core::scoring::Energies::update_neighbor_links(), and core::chemical::write_topology_file().

bool core::chemical::ResidueType::is_lipid ( ) const
bool core::chemical::ResidueType::is_lower_terminus ( ) const

is lower terminus?

References core::chemical::ResidueProperties::has_property(), core::chemical::LOWER_TERMINUS, and core::chemical::ResidueTypeBase::properties().

Referenced by protocols::energy_based_clustering::EnergyBasedClusteringProtocol::add_cyclic_constraints(), protocols::cyclic_peptide::PeptideStubMover::apply(), protocols::simple_moves::oop::OopMover::apply(), protocols::simple_moves::triazolamer::TriazolamerMover::apply(), protocols::simple_moves::oop::OopRandomSmallMover::apply(), protocols::simple_moves::triazolamer::TriazolamerRandomSmallMover::apply(), protocols::simple_moves::MissingDensityToJumpMover::apply(), protocols::simple_moves::chiral::ChiralMover::apply(), protocols::flexpep_docking::FlexPepDockingPoseMetrics::calc_phipsi_RMSD(), core::scoring::methods::IdealParametersDatabase::create_parameters_for_restype(), core::scoring::dna::DNATorsionPotential::get_atom_ids_by_torsion(), protocols::rbsegment_relax::guess_rbsegs_from_pose(), core::conformation::Residue::is_lower_terminus(), is_terminus(), core::pose::make_pose_from_sequence(), core::conformation::Residue::orient_onto_residue_peptoid(), core::conformation::Residue::place(), protocols::energy_based_clustering::EnergyBasedClusteringProtocol::pose_from_posedata(), core::pose::remove_ligand_canonical_residues(), core::chemical::ResidueDatabaseIO::report_residue_type(), protocols::dna::set_base_segment_chainbreak_constraints(), protocols::legacy_sewing::Assembly::to_pose(), protocols::sewing::data_storage::SmartAssembly::to_pose(), and core::chemical::write_topology_file().

bool core::chemical::ResidueType::is_membrane ( ) const
bool core::chemical::ResidueType::is_meta_aramid ( ) const
inline
bool core::chemical::ResidueType::is_metal ( ) const
bool core::chemical::ResidueType::is_metalbinding ( ) const

Return true if this residue type is a type that can bind to a metal ion (e.g. His, Asp, Cys, etc.), false otherwise.

The METALBINDING property is specified in the params file under PROPERTIES.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu)

References core::chemical::ResidueProperties::has_property(), core::chemical::METALBINDING, and core::chemical::ResidueTypeBase::properties().

Referenced by core::scoring::bin_transitions::BinTransitionData::has_property(), core::conformation::Residue::is_metalbinding(), and perform_checks().

bool core::chemical::ResidueType::is_methylated_cterminus ( ) const
bool core::chemical::ResidueType::is_mirrored_type ( ) const
inline
bool core::chemical::ResidueType::is_n_methylated ( ) const
inline
bool core::chemical::ResidueType::is_NA ( ) const
inline
bool core::chemical::ResidueType::is_oligourea ( ) const
inline
bool core::chemical::ResidueType::is_ortho_aramid ( ) const
inline
bool core::chemical::ResidueType::is_para_aramid ( ) const
inline
bool core::chemical::ResidueType::is_PNA ( ) const
inline
bool core::chemical::ResidueType::is_polar ( ) const
bool core::chemical::ResidueType::is_post_methylene_meta_aramid ( ) const
inline
bool core::chemical::ResidueType::is_post_methylene_ortho_aramid ( ) const
inline
bool core::chemical::ResidueType::is_post_methylene_para_aramid ( ) const
inline
bool core::chemical::ResidueType::is_pre_methylene_meta_aramid ( ) const
inline
bool core::chemical::ResidueType::is_pre_methylene_ortho_aramid ( ) const
inline
bool core::chemical::ResidueType::is_pre_methylene_para_aramid ( ) const
inline
bool core::chemical::ResidueType::is_pre_methylene_post_methylene_meta_aramid ( ) const
inline
bool core::chemical::ResidueType::is_pre_methylene_post_methylene_ortho_aramid ( ) const
inline
bool core::chemical::ResidueType::is_pre_methylene_post_methylene_para_aramid ( ) const
inline
bool core::chemical::ResidueType::is_proton_chi ( Size const  chino) const
inline
bool core::chemical::ResidueType::is_purine ( ) const
bool core::chemical::ResidueType::is_pyrimidine ( ) const
bool core::chemical::ResidueType::is_repulsive ( Size const  atomno) const

Check if atom is repulsive.

References atom_type().

bool core::chemical::ResidueType::is_ring_atom ( uint const  ring_num,
uint const  atom_id 
) const
bool core::chemical::ResidueType::is_sidechain_amine ( ) const
inline
bool core::chemical::ResidueType::is_sidechain_thiol ( ) const
inline
bool core::chemical::ResidueType::is_solvent ( ) const
bool core::chemical::ResidueType::is_sri ( ) const
bool core::chemical::ResidueType::is_surface ( ) const
bool core::chemical::ResidueType::is_terminus ( ) const
inline
bool core::chemical::ResidueType::is_TNA ( ) const
inline
bool core::chemical::ResidueType::is_TP3 ( ) const
bool core::chemical::ResidueType::is_triazolemer ( ) const
bool core::chemical::ResidueType::is_upper_terminus ( ) const
bool core::chemical::ResidueType::is_virtual ( Size const  atomno) const
bool core::chemical::ResidueType::is_virtual_residue ( ) const
bool core::chemical::ResidueType::is_virtualizable_by_packer ( ) const
inline

Is this a residue type that can be virtualized or devirtualized by the packer?

References core::chemical::ResidueProperties::has_property(), core::chemical::ResidueTypeBase::properties(), and core::chemical::VIRTUALIZABLE_BY_PACKER.

bool core::chemical::ResidueType::is_VRT1 ( ) const
bool core::chemical::ResidueType::is_water ( ) const
inline
Size core::chemical::ResidueType::last_backbone_atom ( ) const
inline
utility::vector1< Size > const& core::chemical::ResidueType::last_controlling_chi ( ) const
inline
Size core::chemical::ResidueType::last_controlling_chi ( Size  atomno) const
inline

The last_controlling_chi for an atom. 0 if an atom is controlled by no chi.

References last_controlling_chi_.

utility::vector1< utility::vector1< std::string > > const& core::chemical::ResidueType::low_ring_conformers ( ) const
inline

Low-energy ring conformers for each ring.

References low_ring_conformers_.

Referenced by core::chemical::MutableResidueType::copy_other_info(), and core::chemical::residue_types_identical().

ResidueConnection const & core::chemical::ResidueType::lower_connect ( ) const
Size core::chemical::ResidueType::lower_connect_atom ( ) const
Size core::chemical::ResidueType::lower_connect_id ( ) const
inline
utility::vector1< std::string > const& core::chemical::ResidueType::lowest_ring_conformers ( ) const
inline

For each ring, what's the lowest conformer?

References lowest_ring_conformer_.

Referenced by core::chemical::MutableResidueType::copy_other_info(), and core::chemical::residue_types_identical().

Size core::chemical::ResidueType::mainchain_atom ( Size const  mainchain_index) const
inline
AtomIndices const& core::chemical::ResidueType::mainchain_atoms ( ) const
inline
ResidueTypeCOP core::chemical::ResidueType::make ( MutableResidueType const &  residue_type)
static
core::Real core::chemical::ResidueType::mass ( ) const
inline
MMAtomType const & core::chemical::ResidueType::mm_atom_type ( Size const  atomno) const

Get the MM atom_type for this atom by its index number in this residue.

References mm_atom_type_index(), and core::chemical::ResidueTypeBase::mm_atom_types_ptr().

Referenced by print_bondangles(), and core::chemical::write_topology_file().

core::Size core::chemical::ResidueType::mm_atom_type_index ( core::Size  atomno) const
inline
std::string const & core::chemical::ResidueType::mm_name ( core::Size  atomno) const
Size core::chemical::ResidueType::n_hbond_acceptors ( ) const
inline
Size core::chemical::ResidueType::n_hbond_donors ( ) const
inline
Size core::chemical::ResidueType::n_non_polymeric_residue_connections ( ) const
inline
Size core::chemical::ResidueType::n_nus ( ) const
inline
Size core::chemical::ResidueType::n_polymeric_residue_connections ( ) const
inline
Size core::chemical::ResidueType::n_possible_residue_connections ( ) const

number of ResidueConnections, counting polymeric residue connections

References residue_connections_.

Referenced by core::pose::add_custom_variant_type_to_pose_residue(), core::pose::add_variant_type_to_pose_residue(), protocols::cyclic_peptide::DeclareBond::apply(), protocols::cyclic_peptide::PeptideStubMover::apply(), atom_depends_on_connection(), branch_connect_atoms(), core::chemical::MutableResidueType::copy_other_info(), core::conformation::Residue::copy_residue_connections(), core::conformation::Conformation::detect_bonds(), core::conformation::Conformation::detect_pseudobonds(), core::conformation::disulfide_bonds(), protocols::viewer::dump_residue_kinemage(), core::io::silent::BinarySilentStruct::fill_struct(), protocols::abinitio::abscript::find_disulfide_partner(), core::scoring::disulfides::DisulfideMatchingEnergyContainer::find_disulfides(), core::scoring::disulfides::FullatomDisulfideEnergyContainer::find_disulfides(), core::scoring::disulfides::CentroidDisulfideEnergyContainer::find_disulfides(), core::conformation::form_disulfide(), core::conformation::get_disulf_partner(), core::conformation::get_second_atom_from_connection(), core::chemical::ICoorAtomID::ICoorAtomID(), core::scoring::mm::MMBondAngleResidueTypeParam::init(), core::conformation::is_disulfide_bond(), core::conformation::Residue::n_possible_residue_connections(), core::pose::Pose::real_to_virtual(), core::pose::remove_variant_type_from_pose_residue(), core::conformation::Residue::Residue(), core::chemical::residue_types_identical(), core::conformation::Residue::update_connections_to_other_residue(), update_nonpolymer_dependent_groups(), and core::pose::Pose::virtual_to_real().

Size core::chemical::ResidueType::n_proton_chi ( ) const
inline
Size core::chemical::ResidueType::n_residue_connections_for_atom ( Size const  atomid) const
inline
core::Size core::chemical::ResidueType::n_ring_conformer_sets ( ) const
Size core::chemical::ResidueType::n_rings ( ) const
inline
Size core::chemical::ResidueType::n_virtual_atoms ( ) const
overridevirtual

Counts the number of virtual atoms and returns the count.

The virtual count is not stored in the resiude type. This count is performed on the fly, and can hurt performance if reapeatedly carried out. Not intended for use in large loops – instead, call once and store the value.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu)

The virtual count is not stored in the residue type. This count is performed on the fly, and can hurt performance if repeatedly carried out. Not intended for use in large loops – instead, call once and store the value.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu)

Implements core::chemical::ResidueTypeBase.

References vec_atom_types_.

Referenced by core::conformation::Residue::n_virtual_atoms().

Size core::chemical::ResidueType::natoms ( ) const
inlineoverridevirtual

number of atoms

Implements core::chemical::ResidueTypeBase.

References natoms_.

Referenced by protocols::rna::movers::RNAThreadAndMinimizeMover::accomodate_length_change(), protocols::mpi_refinement::add_movemap_from_loopres(), protocols::loop_grower::LoopGrower::addnativesolution(), core::conformation::annotated_atom_graph_from_conformation(), protocols::mpi_refinement::Serial_Refine::apply(), protocols::rbsegment_relax::IdealizeHelicesMover::apply(), protocols::loophash::LoopHashMoverWrapper::apply(), protocols::rna::movers::RNAIdealizeMover::apply(), protocols::simple_moves::Tumble::apply(), protocols::rbsegment_relax::FragInsertAndAlignMover::apply(), protocols::enzdes::GenerateStoredRBConfs::apply(), protocols::seeded_abinitio::SegmentHybridizer::apply_frame(), protocols::hybridization::CartesianHybridize::apply_frame(), protocols::toolbox::apply_superposition_transform(), protocols::hybridization::CartesianSampler::apply_transform(), protocols::electron_density::DockIntoDensityMover::apply_transform(), core::conformation::symmetry::SymmetricConformation::apply_transform_Rx_plus_v(), core::conformation::Residue::apply_transform_Rx_plus_v(), protocols::simple_filters::RepeatParameterFilter::apply_transformation(), protocols::forge::methods::apply_transformation(), protocols::hybridization::apply_transformation(), atom_depends_on_connection(), atom_depends_on_lower_polymeric_connection(), atom_depends_on_polymeric_connection(), atom_depends_on_upper_polymeric_connection(), core::conformation::atom_graph_from_conformation(), atom_is_backbone(), atom_is_hydrogen(), atom_is_sidechain(), core::chemical::Metapatch::atoms(), core::scoring::automorphic_rmsd(), core::chemical::AutomorphismIterator::AutomorphismIterator(), core::pack::rotamer_set::build_anchorless_water_rotamers(), core::pack::rotamers::SingleLigandRotamerLibrary::build_base_rotamers(), core::pack::rotamer_set::build_fixed_O_water_rotamers_independent(), core::pack::rotamer_set::build_moving_O_water_rotamers_dependent(), core::pack::rotamer_set::build_moving_O_water_rotamers_independent(), core::pack::rotamer_set::build_single_anchor_water_rotamers_independet(), protocols::toolbox::CA_superimpose(), protocols::analysis::InterfaceAnalyzerMover::calc_hbond_sasaE(), core::scoring::calc_per_res_hydrophobic_sasa(), core::pose::toolbox::AtomLevelDomainMap::calculate_atom_id_domain_map(), core::pose::toolbox::AtomID_Mapper::calculate_atom_id_map(), core::scoring::SplitUnfoldedTwoBodyPotential::calculate_residue_emap(), protocols::features::ProteinResidueConformationFeatures::check_num_requested_atoms(), protocols::hybridization::InsertChunkMover::check_overlap(), core::pack::guidance_scoreterms::voids_penalty_energy::VoidsPenaltyVoxelGrid::compute_bounding_box(), core::chemical::MutableResidueType::copy_atom_info(), protocols::stepwise::modeler::protein::StepWiseProteinBackboneSampler::copy_coords(), core::conformation::copy_residue_coordinates_and_rebuild_missing_atoms(), protocols::motif_grafting::movers::MotifGraftMover::count_clashes_between_two_poses(), core::simple_metrics::per_residue_metrics::PerResidueRMSDMetric::create_atom_id_map(), core::scoring::ResidueExclParams::create_excl_info(), core::scoring::methods::IdealParametersDatabase::create_parameters_for_restype(), debug_dump_icoor(), core::pose::toolbox::AtomLevelDomainMap::disallow_movement_of_input_res(), protocols::stepwise::modeler::align::StepWisePoseAligner::do_checks(), core::select::movemap::MoveMapFactory::edit_movemap_given_pose(), core::scoring::methods::MMBondLengthEnergy::eval_intrares_energy(), core::scoring::methods::MMLJEnergyIntra::eval_intrares_energy(), core::scoring::GenericBondedPotential::eval_residue_energy_and_derivative_improper(), core::chemical::find_best_match(), protocols::rna::movers::find_nearby_res(), first_sidechain_atom(), core::chemical::formatted_icoord_tree(), protocols::ligand_docking::frac_atoms_within(), core::pose::motif::get_backbone_reference_frame_atomids_with_downstream(), core::scoring::elec::GroupElec::get_group(), core::chemical::get_residue_path_distances(), protocols::motif_grafting::movers::MotifGraftMover::get_rotated_and_translated_pose(), protocols::magnesium::MgScanner::get_score(), core::scoring::mm::MMBondAngleResidueTypeParam::init(), core::io::pose_to_sfr::PoseToStructFileRepConverter::init_from_pose(), core::pose::toolbox::AtomLevelDomainMap::initialize(), core::pose::initialize_atomid_map(), initialize_derived_data(), core::pose::toolbox::AtomID_Mapper::initialize_from_pose(), protocols::match::upstream::UpstreamResTypeGeometry::initialize_from_residue_type(), core::scoring::FACTSRsdTypeInfo::initialize_intrascale(), core::scoring::FACTSRsdTypeInfo::initialize_parameters(), core::conformation::Residue::natoms(), protocols::ligand_docking::LigandDockProtocol::optimize_orientation3(), core::conformation::Residue::orient_onto_location(), core::conformation::Residue::orient_onto_residue_peptoid(), protocols::ligand_docking::ga_ligand_dock::LigandAligner::perturb_lig(), protocols::rna::movers::RNAIdealizeMover::perturb_pose(), protocols::stepwise::modeler::rna::phosphate_base_phosphate_square_deviation(), core::conformation::Residue::place(), core::import_pose::atom_tree_diffs::pose_from_atom_tree_diff(), core::chemical::pretty_print_atomicoor(), print_pretty_path_distances(), core::scoring::methods::PoissonBoltzmannEnergy::protein_position_equal_within(), protocols::mpi_refinement::ramp_minpack_loop(), protocols::mpi_refinement::WorkUnit_Sampler::ramp_minpack_loop2(), protocols::ligand_docking::ga_ligand_dock::LigandAligner::randomize_lig(), protocols::denovo_design::rebuild_missing_atoms(), core::conformation::symmetry::recenter(), core::io::pose_from_sfr::remap_names_on_geometry(), core::pose::toolbox::AtomID_Mapper::renumber_after_variant_changes(), protocols::fibril::reorient_extended_fibril(), protocols::features::ProteinBondGeometryFeatures::report_intrares_lengths(), core::chemical::ResidueDatabaseIO::report_residue_type_atom(), core::chemical::ResidueDatabaseIO::report_residue_type_bond(), core::chemical::ResidueDatabaseIO::report_residue_type_cut_bond(), core::chemical::ResidueDatabaseIO::report_residue_type_icoor(), core::conformation::Residue::Residue(), core::scoring::methods::MMLJEnergyInter::residue_pair_energy(), core::chemical::residue_types_identical(), core::chemical::rna::RNA_Info::rna_update_last_controlling_chi(), protocols::matdes::rot_pose(), protocols::sic_dock::rot_pose(), protocols::toolbox::rigid_body::rotate(), core::io::pose_from_sfr::score_mapping(), select_orient_atoms(), select_orient_atoms_standard_logic(), protocols::hybridization::InsertChunkMover::set_bb_xyz_aligned(), protocols::toolbox::rigid_body::set_to_origin(), core::scoring::lkball::LKBallDatabase::setup_atom_weights(), core::scoring::methods::GoapRsdType::setup_connectivity(), core::scoring::lkball::setup_water_builders_for_residue_type(), show(), protocols::loop_grower::LoopPartialSolution::store_coordinates(), core::scoring::superimpose_pose(), core::pose::Pose::total_atoms(), protocols::matdes::trans_pose(), protocols::sic_dock::trans_pose(), protocols::toolbox::rigid_body::translate(), protocols::rna::denovo::translate_virtual_anchor_to_first_rigid_body(), protocols::rna::movers::ErraserMinimizerMover::turn_off_for_chunks(), update_derived_data(), core::chemical::rna::RNA_Info::update_derived_rna_data(), update_last_controlling_chi(), update_nonpolymer_dependent_groups(), update_polymer_dependent_groups(), core::scoring::methods::Burial_v2Energy::using_atom_distance(), core::chemical::ResidueTypeKinWriter::write_restype(), core::chemical::write_topology_file(), core::scoring::motif::xform_pose(), protocols::sic_dock::xform_pose(), core::fragment::xform_pose(), and protocols::sic_dock::xform_pose_rev().

Size core::chemical::ResidueType::nbonds ( ) const
inlineoverridevirtual

number of bonds

Implements core::chemical::ResidueTypeBase.

References nbonds_.

Referenced by core::chemical::residue_types_identical().

Size core::chemical::ResidueType::nbonds ( Size  atom) const
inline

number of bonds for given atom

References bonded_neighbor_.

Size core::chemical::ResidueType::nbr_atom ( ) const
inline
Real core::chemical::ResidueType::nbr_radius ( ) const
inline
AtomIndices const& core::chemical::ResidueType::nbrs ( Size const  atomno) const
inline
Size core::chemical::ResidueType::nchi ( ) const
inline

number of chi angles

References chi_atoms_.

Referenced by protocols::simple_moves::RepeatPropagationMover::add_cap_seq(), core::pose::add_variant_type_to_residue(), protocols::ligand_docking::ga_ligand_dock::EntropyEstimator::analyze_trajectory(), protocols::simple_moves::CombinePoseMover::apply(), protocols::enzdes::SetCatalyticResPackBehavior::apply(), protocols::simple_moves::CopyRotamerMover::apply(), protocols::simple_moves::sidechain_moves::SidechainMover::apply(), protocols::simple_moves::CopyRotamerMover::apply_from_template_pose(), protocols::minimization_packing::MinimalRotamer::atom_is_ideal(), core::pack::rotamer_set::build_rotamers_from_rotamer_bins(), protocols::comparative_modeling::chis_from_pose(), core::chemical::MutableResidueType::copy_other_info(), protocols::simple_moves::RepeatPropagationMover::copy_phi_psi_omega(), core::pack::rotamers::SingleNCAARotamerLibraryCreator::create(), core::scoring::methods::YHHPlanarityEnergy::defines_score_for_rsd(), protocols::simple_moves::sidechain_moves::SidechainMoverBase::dof_id_ranges(), protocols::simple_moves::sidechain_moves::SidechainMover::dof_id_ranges(), protocols::simple_moves::DumpSingleResidueRotamers::enumerate_aa_rotamer(), core::pack::dunbrack::RotamericSingleResidueDunbrackLibrary< T, N >::enumerate_chi_sets(), core::pack::rotamers::SingleResidueRotamerLibrary::expand_proton_chis(), core::chemical::rna::RNA_Info::figure_out_chi_order(), core::io::silent::ProteinSilentStruct_Template< T >::fill_pose(), protocols::match::upstream::FullChiSampleSet::FullChiSampleSet(), protocols::stepwise::modeler::StepWiseConnectionSampler::initialize_carbohydrate_bond_sampler(), initialize_derived_data(), protocols::match::upstream::UpstreamResTypeGeometry::initialize_from_residue_type(), protocols::stepwise::modeler::StepWiseConnectionSampler::initialize_ligand_bond_sampler(), protocols::features::ProteinResidueConformationFeatures::load_conformation(), core::scoring::methods::IdealParametersDatabase::lookup_torsion_legacy(), protocols::stepwise::modeler::StepWiseMinimizer::move_side_chain(), core::pack::dunbrack::SingleResidueDunbrackLibrary::n_rotamer_bins_for_aa(), core::conformation::Residue::nchi(), protocols::ligand_docking::LigandDockProtocol::optimize_orientation3(), protocols::stepwise::modeler::output_movemap(), protocols::canonical_sampling::MetricRecorder::parse_my_tag(), perform_checks(), protocols::ligand_docking::ga_ligand_dock::LigandAligner::perturb_lig(), core::chemical::print_chis(), protocols::ligand_docking::ga_ligand_dock::LigandAligner::randomize_lig(), protocols::minimization_packing::MinimalRotamer::record_chi(), core::pose::remove_variant_type_from_residue(), core::chemical::ResidueDatabaseIO::report_residue_type_chi(), core::chemical::ResidueDatabaseIO::report_residue_type_chi_rotamer(), core::conformation::Residue::Residue(), core::chemical::residue_types_identical(), core::chemical::rna::RNA_Info::rna_note_chi_controls_atom(), core::chemical::rna::RNA_Info::rna_update_last_controlling_chi(), core::pose::carbohydrates::set_glycan_iupac_bb_torsions(), core::pose::carbohydrates::set_glycan_iupac_chi_torsions(), protocols::rna::denovo::movers::RNA_Minimizer::setup_movemap(), core::pose::toolbox::AtomLevelDomainMap::setup_movemap(), core::chemical::rna::RNA_Info::update_derived_rna_data(), update_last_controlling_chi(), core::chemical::ResidueTypeKinWriter::write_restype(), and core::chemical::write_topology_file().

Size core::chemical::ResidueType::ndihe ( ) const
inline
orbitals::ICoorOrbitalData const & core::chemical::ResidueType::new_orbital_icoor_data ( Size const  orbital_index) const
Size core::chemical::ResidueType::nheavyatoms ( ) const
inlineoverridevirtual

number of heavy atoms

Implements core::chemical::ResidueTypeBase.

References nheavyatoms_.

Referenced by protocols::energy_based_clustering::EnergyBasedClusteringProtocol::align_with_offset(), protocols::rna::movers::RNAIdealizeMover::apply(), protocols::simple_task_operations::RestrictToInterface::apply(), core::chemical::AutomorphismIterator::AutomorphismIterator(), protocols::stepwise::modeler::rna::base_atoms_square_deviation(), core::scoring::elec::GroupElec::build_groupinfo(), protocols::analysis::InterfaceAnalyzerMover::calc_hbond_sasaE(), core::scoring::calc_per_res_hydrophobic_sasa(), protocols::pose_length_moves::InsertResMover::center_of_mass(), protocols::simple_moves::Tumble::center_of_mass(), protocols::rna::movers::com_of_true_residues(), core::pack::interaction_graph::SurfacePotential::compute_pose_hpatch_score(), core::scoring::compute_sc_centroid(), core::scoring::compute_sc_radius(), core::simple_metrics::per_residue_metrics::PerResidueRMSDMetric::create_atom_id_map(), protocols::stepwise::modeler::align::StepWisePoseAligner::create_coordinate_constraint_atom_id_map(), core::pose::rna::detect_base_contacts(), protocols::stepwise::modeler::align::StepWisePoseAligner::do_checks(), protocols::ligand_docking::ga_ligand_dock::GALigandDock::final_exact_cartmin(), protocols::stepwise::modeler::align::StepWisePoseAligner::get_calc_rms_atom_id_map(), protocols::minimization_packing::MinimalRotamer::has_ideal_geometry(), core::chemical::heavy_atom_names_match(), core::pose::initialize_atomid_map_heavy_only(), core::pose::named_atom_id_to_atom_id(), core::conformation::Residue::nheavyatoms(), protocols::ligand_docking::LigandDockProtocol::optimize_orientation3(), protocols::stepwise::modeler::rna::phosphate_base_phosphate_square_deviation(), core::conformation::Residue::place(), protocols::minimization_packing::MinimalRotamer::record_internal_geometry(), core::chemical::residue_types_identical(), select_orient_atoms(), select_orient_atoms_standard_logic(), core::pack::interaction_graph::HPatchBackgroundNode< V, E, G >::set_rotamer(), core::pack::interaction_graph::HPatchNode< V, E, G >::set_rotamers(), core::scoring::lkball::LKBallDatabase::setup_atom_weights(), protocols::stepwise::modeler::rna::suite_square_deviation(), and protocols::stepwise::modeler::align::StepWisePoseAligner::update_superimpose_atom_id_map().

void core::chemical::ResidueType::note_chi_controls_atom ( Size  chi,
Size  atomno 
)
private

Recursive subroutine invoked by update_last_controlling_chi().

O(N) recursive algorithm for determining the last chi for each atom. Each atom is visited at most twice.

References atom_base(), bonded_neighbor(), last_controlling_chi_, and nbrs().

Referenced by update_last_controlling_chi().

AtomIndices const& core::chemical::ResidueType::nu_atoms ( core::uint const  nu_index) const
inline
utility::vector1< AtomIndices > const& core::chemical::ResidueType::nu_atoms ( ) const
inline

Return list of indices of the atoms used to define all the nu (internal ring) angles.

References nu_atoms_.

Referenced by auto_assign_nu_atoms().

Size core::chemical::ResidueType::num_bondangles ( ) const
inline
Size core::chemical::ResidueType::number_bonded_heavyatoms ( Size const  atomno) const

indicates how many heavyatom bonded neighbors an atom has

References bonded_neighbor(), and number_bonded_hydrogens().

Referenced by core::scoring::orbitals::surrogate_atom_for_orbital().

Size core::chemical::ResidueType::number_bonded_hydrogens ( Size const  atomno) const
inline
ResidueType& core::chemical::ResidueType::operator= ( ResidueType const &  src)
privatedelete

Copies <src> into the ResidueType.

orbitals::ICoorOrbitalData const & core::chemical::ResidueType::orbital_icoor_data ( Size const  orbital_index) const
int core::chemical::ResidueType::path_distance ( Size  at1,
Size  at2 
) const
inline
utility::vector1< int > const& core::chemical::ResidueType::path_distance ( Size  atom) const
inline

shortest path distance for an atom to all other residue atoms

References path_distance_.

utility::vector1< utility::vector1< int > > const& core::chemical::ResidueType::path_distances ( ) const
inline

accessor of path_distance_ data for this residue, which is a 2D array

References path_distance_.

Referenced by initialize_derived_data(), core::conformation::Residue::path_distances(), and core::chemical::residue_types_identical().

void core::chemical::ResidueType::perform_checks ( ) const
private
ResidueTypeOP core::chemical::ResidueType::placeholder_clone ( ) const
privatedelete

make a copy

void core::chemical::ResidueType::print_bondangles ( ) const
void core::chemical::ResidueType::print_pretty_path_distances ( ) const

print chemical-bond path distances to standard out

References atom_name(), natoms(), path_distance_, and core::chemical::TR().

Size core::chemical::ResidueType::proton_chi_2_chi ( Size  proton_chi_id) const
inline
utility::vector1< Real > const& core::chemical::ResidueType::proton_chi_extra_samples ( Size  proton_chi) const
inline
utility::vector1< Real > const& core::chemical::ResidueType::proton_chi_samples ( Size  proton_chi) const
inline
bool core::chemical::ResidueType::requires_actcoord ( ) const
Size core::chemical::ResidueType::residue_connect_atom_index ( Size const  resconn_id) const
ResidueConnection const & core::chemical::ResidueType::residue_connection ( Size const  i) const
Size core::chemical::ResidueType::residue_connection_id_for_atom ( Size const  atomid) const
inline
bool core::chemical::ResidueType::residue_connection_is_polymeric ( Size const  resconn_id) const
inline
utility::vector1< Size > const& core::chemical::ResidueType::residue_connections_for_atom ( Size const  atomid) const
inline
AtomIndices const& core::chemical::ResidueType::ring_atoms ( uint const  ring_num) const
inline
utility::vector1< AtomIndices > const& core::chemical::ResidueType::ring_atoms ( ) const
inline

Return list of indices of the atoms within this residue's cycles, not counting virtual atoms.

References ring_atoms_.

Referenced by auto_assign_nu_atoms().

core::chemical::rings::RingConformerSetCOP core::chemical::ResidueType::ring_conformer_set ( core::uint  ring_num) const
core::chemical::rings::RingSaturationType core::chemical::ResidueType::ring_saturation_type ( uint const  ring_num) const
inline

Return the saturation level of this residue's nth cycle.

References ring_saturation_types_.

Referenced by core::conformation::Residue::ring_conformer().

utility::vector1< core::chemical::rings::RingSaturationType > const& core::chemical::ResidueType::ring_saturation_types ( ) const
inline

Return the saturation level for all of this residue's cycles.

References ring_saturation_types_.

Referenced by core::chemical::MutableResidueType::copy_other_info().

core::chemical::rna::RNA_Info const & core::chemical::ResidueType::RNA_info ( ) const
core::Size core::chemical::ResidueType::root_atom ( ) const
inline
void core::chemical::ResidueType::select_orient_atoms ( Size center,
Size nbr1,
Size nbr2 
) const
std::tuple< Size, Size, Size > core::chemical::ResidueType::select_orient_atoms ( ) const

Selects three atoms for orienting this residue type.

Note
Returns tuple of form [center, nbr1, nbr2]

References core::conformation::membrane::center, protocols::sic_dock::scores::nbr1(), and protocols::sic_dock::scores::nbr2().

void core::chemical::ResidueType::select_orient_atoms_standard_logic ( Size center,
Size nbr1,
Size nbr2,
bool const  ignore_virtuals 
) const

Pick atoms to use for orienting one Residue onto another, using standard logic.

Standard logic applies to case in which (a) the residue has backbone atoms, and (b) the residue has sidechain atoms, and (c) the orient mode has not been set explicitly to force_nbr_atom_orient. We loop through all backbone atoms and find the first atom that is bonded to a sidechain atom AND two other backbone atoms. The first such atom becomes "center", and its two backbone neighbors become "nbr1" and "nbr2".

Note
If ignore_virtuals is true, none of the atoms involved can be virtuals. If false, they can be.
Author
Vikram K. Mulligan (vmull.nosp@m.igan.nosp@m.@flat.nosp@m.iron.nosp@m.insti.nosp@m.tute.nosp@m..org).

References atom_base(), atom_index(), atom_is_backbone(), bonded_neighbor(), is_virtual(), natoms(), protocols::sic_dock::scores::nbr, nbrs(), and nheavyatoms().

Referenced by select_orient_atoms().

void core::chemical::ResidueType::self_pointer_updates ( )
private
utility::vector1< core::Size > core::chemical::ResidueType::setup_atom_ordering ( MutableResidueType const &  mrt)
private

Determine how to map the numeric indices of MutableResidueType to this ResidueType. ( As the MutableResidueType is const, we can assume a decent mapping here. )

Because there isn't necessarily any consistent order in the MutableResidueType (particularly because patching often adds and removes atoms) we need to reorder the atoms. The atoms are reordered with the backbone atoms coming first, sidechain atoms second, and finally hydrogens last.

We attempt to keep the atom ordering more-or-less the same as the implicit ordering in the MutableResidueType.

References core::chemical::MutableResidueType::all_atoms(), core::chemical::MutableResidueType::atom(), core::chemical::MutableResidueType::atom_index(), attached_H_begin_, attached_H_end_, core::chemical::MutableResidueType::bonded_hydrogens(), first_sidechain_hydrogen_, core::chemical::MutableResidueType::is_backbone_heavyatom(), n_backbone_heavyatoms_, natoms_, and nheavyatoms_.

Referenced by ResidueType().

void core::chemical::ResidueType::show ( std::ostream &  output = std::cout,
bool  output_atomic_details = false 
) const
overridevirtual
void core::chemical::ResidueType::show_all_atom_names ( std::ostream &  out) const
overridevirtual
void core::chemical::ResidueType::update_derived_data ( )
private
void core::chemical::ResidueType::update_last_controlling_chi ( )
private

compute the last controlling chi for an atom during the update_derived_data() stage. The last controlling chi is the furthest chi downstream of the mainchain which can change the location of an atom.

Should only be called from initialize_derived_data() function.

References atom_base(), atoms_last_controlled_by_chi_, bonded_neighbor(), chi_atoms(), last_controlling_chi_, natoms(), nchi(), and note_chi_controls_atom().

Referenced by initialize_derived_data().

void core::chemical::ResidueType::update_ncaa_rotamer_library_specification_if_present ( )
private

If there is an NCAARotamerLibrarySpecification, ensure that the rotamer backbone dependicies have been set. If they have not, set them to all mainchain torsions except omega (the final, inter-residue torsion).

Should only be called from update_derived_data() function.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu).
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu).

References mainchain_atoms_indices_, core::chemical::ResidueTypeBase::rotamer_library_specification(), and core::chemical::ResidueTypeBase::rotamer_library_specification_nonconst().

Referenced by update_derived_data().

void core::chemical::ResidueType::update_nonpolymer_dependent_groups ( )
private

Determine which atoms are nonpolymer bond-dependent.

Should only be called from initialize_derived_data() function.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu)

Should only be called from update_derived_data() function.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu)

References atom_depends_on_connection_, icoor(), n_possible_residue_connections(), and natoms().

Referenced by initialize_derived_data().

void core::chemical::ResidueType::update_polymer_dependent_groups ( )
private

Determine which atoms are polymer bond-dependent.

Should only be called from initialize_derived_data() function.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu)

Should only be called from update_derived_data() function.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu)

References atom_depends_on_lower_polymeric_connection_, atom_depends_on_upper_polymeric_connection_, has_polymer_dependent_groups_, icoor(), core::chemical::ResidueTypeBase::is_polymer(), and natoms().

Referenced by initialize_derived_data().

void core::chemical::ResidueType::update_ring_conformer_sets ( )
private
ResidueConnection const & core::chemical::ResidueType::upper_connect ( ) const
Size core::chemical::ResidueType::upper_connect_atom ( ) const
Size core::chemical::ResidueType::upper_connect_id ( ) const
inline

References upper_connect_id_.

Referenced by core::conformation::Conformation::append_residue_by_bond(), protocols::cyclic_peptide::DeclareBond::apply(), protocols::cyclic_peptide::PeptideStubMover::apply(), core::select::residue_selector::PhiSelector::apply(), core::select::residue_selector::BinSelector::apply(), protocols::cyclic_peptide::RamaMutationSelector::apply(), protocols::generalized_kinematic_closure::perturber::GeneralizedKICperturber::apply_copy_backbone_dihedrals(), core::scoring::bin_transitions::BinTransitionCalculator::are_normally_bonded(), core::chemical::ICoorAtomID::atom_id(), core::conformation::Conformation::backbone_torsion_angle_atoms(), core::conformation::Residue::connected_residue_at_upper(), core::chemical::MutableResidueType::copy_other_info(), core::scoring::ResidueExclParams::create_excl_info(), core::scoring::methods::IdealParametersDatabase::create_parameters_for_restype(), define_mainchain_atoms(), core::scoring::methods::CartesianBondedEnergy::eval_intraresidue_dof_derivative(), core::scoring::Ramachandran::eval_rama_score_residue(), core::scoring::methods::CartesianBondedEnergy::eval_residue_pair_derivatives(), core::io::silent::BinarySilentStruct::fill_struct(), core::io::pose_to_sfr::PoseToStructFileRepConverter::get_connectivity_annotation_info(), core::conformation::Residue::has_upper_connect(), core::conformation::Residue::is_polymer_bonded(), protocols::stepwise::monte_carlo::mover::StepWiseMasterMover::moves_for_pose(), core::chemical::Selector_UPPER_ATOM::operator[](), protocols::stepwise::modeler::protein::StepWiseProteinBackboneSampler::rama_energy(), core::scoring::GenericBondedPotential::residue_pair_derivatives(), core::scoring::GenericBondedPotential::residue_pair_energy(), core::scoring::methods::CartesianBondedEnergy::residue_pair_energy(), core::scoring::methods::CartesianBondedEnergy::residue_pair_energy_sorted(), and core::chemic