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

A basic class containing info of internal coordinates needed for building an atom within a ResidueType. More...

#include <AtomICoor.hh>

Public Member Functions

 AtomICoor ()
 default constructor More...
 
 AtomICoor (std::string const &built_atom_name, Real const phi_in, Real const theta_in, Real const d_in, std::string const &stub_atom1_name, std::string const &stub_atom2_name, std::string const &stub_atom3_name, ResidueType const &rsd_type)
 constructor More...
 
 AtomICoor (std::string const &built_atom_name, Real const phi_in, Real const theta_in, Real const d_in, ICoorAtomID const &stub_atom1, ICoorAtomID const &stub_atom2, ICoorAtomID const &stub_atom3, ResidueType const &rsd_type)
 AtomICoorID version. More...
 
Real phi () const
 accessor to stub_atom1 ICoorAtomID More...
 
Real theta () const
 
Real d () const
 
ICoorAtomID const & stub_atom1 () const
 
ICoorAtomID const & stub_atom2 () const
 accessor to stub_atom2 ICoorAtomID More...
 
ICoorAtomID const & stub_atom3 () const
 accessor to stub_atom3 ICoorAtomID More...
 
bool is_internal () const
 
bool depends_on_a_true_index (utility::vector1< bool > const &atomvect) const
 Given a Boolean vector corresponding to atom indices, determine whether any of the stub indices depends on one of the atoms that are "true". More...
 
bool depends_on_polymer_lower () const
 Is this icoor immediately dependent on LOWER? More...
 
bool depends_on_polymer_upper () const
 Is this icoor immediately dependent on UPPER? More...
 
bool depends_on_residue_connection (Size const connid) const
 Returns true if any of the stub atoms is the specified connection ID. More...
 
bool depends_on_residue_connection () const
 Returns true if any of the stub atoms is a connection ID. More...
 
ICoorAtomIDstub_atom (int const atm)
 accessor to stub_atom ICoorAtomID More...
 
ICoorAtomID const & stub_atom (int const atm) const
 constant accessor to stub_atom ICoorAtomID More...
 
std::string const & built_atom () const
 The name of the atom being built by this icoor. More...
 
void show (std::ostream &) const
 
Vector build (conformation::Residue const &rsd, conformation::Conformation const &conformation) const
 
Vector build (ResidueType const &rsd_type) const
 
Vector build (conformation::Residue const &rsd) const
 WARNING: Slightly dangerous function intended for black magic use only. Rebuilds atom location from stub atoms. If stub atom are not internal atoms, their location will be rebuilt from their residue stub atom's locations, as opposed to being retrieved from connected residues via a conformation. More...
 

Private Member Functions

Vector build (Vector v1, Vector v2, Vector v3) const
 Internal, centralized implementation of the build() functions. More...
 

Private Attributes

std::string built_atom_
 
Real phi_
 
Real theta_
 
Real d_
 
ICoorAtomID stub_atom1_
 
ICoorAtomID stub_atom2_
 
ICoorAtomID stub_atom3_
 

Detailed Description

A basic class containing info of internal coordinates needed for building an atom within a ResidueType.

In atom tree, each atom is defined by its internal coordinates, which include a bond distance, a bond angle and a torsion angle. Of course, all these internal coordinates are only meaningful in the context of three reference (stub) atoms. AtomICoor information is stored in the residue param files and some terms are defined as following:

Constructor & Destructor Documentation

core::chemical::AtomICoor::AtomICoor ( )

default constructor

core::chemical::AtomICoor::AtomICoor ( std::string const &  built_atom_name,
Real const  phi_in,
Real const  theta_in,
Real const  d_in,
std::string const &  stub_atom1_name,
std::string const &  stub_atom2_name,
std::string const &  stub_atom3_name,
ResidueType const &  rsd_type 
)

constructor

core::chemical::AtomICoor::AtomICoor ( std::string const &  built_atom_name,
Real const  phi_in,
Real const  theta_in,
Real const  d_in,
ICoorAtomID const &  stub_atom1,
ICoorAtomID const &  stub_atom2,
ICoorAtomID const &  stub_atom3,
ResidueType const &  rsd_type 
)

AtomICoorID version.

Member Function Documentation

Vector core::chemical::AtomICoor::build ( conformation::Residue const &  rsd,
conformation::Conformation const &  conformation 
) const
Vector core::chemical::AtomICoor::build ( ResidueType const &  rsd_type) const
Vector core::chemical::AtomICoor::build ( conformation::Residue const &  rsd) const

WARNING: Slightly dangerous function intended for black magic use only. Rebuilds atom location from stub atoms. If stub atom are not internal atoms, their location will be rebuilt from their residue stub atom's locations, as opposed to being retrieved from connected residues via a conformation.

WARNING: Slightly dangerous function intended for black magic use only. Only to be used for situations where you know the AtomICoor /and all it's stub atoms/ can't be anything but real atoms on the given residue, and where a conformation is absolutely not availible. If you /can/ use AtomICoor::build( Residue const &, Conformation const &), you /should/.

References build(), stub_atom1_, stub_atom2_, stub_atom3_, and core::chemical::ICoorAtomID::xyz().

Vector core::chemical::AtomICoor::build ( Vector  v1,
Vector  v2,
Vector  v3 
) const
private

Internal, centralized implementation of the build() functions.

References core::kinematics::Stub::create_orthogonal(), d_, phi_, core::kinematics::Stub::spherical(), and theta_.

std::string const& core::chemical::AtomICoor::built_atom ( ) const
inline

The name of the atom being built by this icoor.

References built_atom_.

Referenced by core::chemical::compare_atom_icoor(), and core::chemical::pretty_print_atomicoor().

Real core::chemical::AtomICoor::d ( ) const
inline
bool core::chemical::AtomICoor::depends_on_a_true_index ( utility::vector1< bool > const &  atomvect) const
inline

Given a Boolean vector corresponding to atom indices, determine whether any of the stub indices depends on one of the atoms that are "true".

Called by ResidueType::update_polymer_dependent_groups() when figuring out which atoms depend on atoms that depend on a connection.

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

References core::chemical::ICoorAtomID::atomno(), stub_atom1_, stub_atom2_, and stub_atom3_.

bool core::chemical::AtomICoor::depends_on_polymer_lower ( ) const
inline

Is this icoor immediately dependent on LOWER?

Returns true if stub atom 1, 2, or 3 is LOWER.

References core::chemical::ICoorAtomID::is_polymer_lower(), stub_atom1_, stub_atom2_, and stub_atom3_.

Referenced by core::conformation::Residue::place(), and core::io::pose_from_sfr::PoseFromSFRBuilder::refine_pose().

bool core::chemical::AtomICoor::depends_on_polymer_upper ( ) const
inline

Is this icoor immediately dependent on UPPER?

Returns true if stub atom 1, 2, or 3 is UPPER.

References core::chemical::ICoorAtomID::is_polymer_upper(), stub_atom1_, stub_atom2_, and stub_atom3_.

Referenced by core::conformation::Residue::place(), and core::io::pose_from_sfr::PoseFromSFRBuilder::refine_pose().

bool core::chemical::AtomICoor::depends_on_residue_connection ( Size const  connid) const
inline

Returns true if any of the stub atoms is the specified connection ID.

References core::chemical::ICoorAtomID::is_connect(), stub_atom1_, stub_atom2_, and stub_atom3_.

bool core::chemical::AtomICoor::depends_on_residue_connection ( ) const
inline

Returns true if any of the stub atoms is a connection ID.

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

References core::chemical::ICoorAtomID::is_connect(), stub_atom1_, stub_atom2_, and stub_atom3_.

bool core::chemical::AtomICoor::is_internal ( ) const
inline
Real core::chemical::AtomICoor::phi ( ) const
inline
void core::chemical::AtomICoor::show ( std::ostream &  out) const
ICoorAtomID& core::chemical::AtomICoor::stub_atom ( int const  atm)
inline
ICoorAtomID const& core::chemical::AtomICoor::stub_atom ( int const  atm) const
inline

constant accessor to stub_atom ICoorAtomID

References stub_atom1_, stub_atom2_, and stub_atom3_.

ICoorAtomID const& core::chemical::AtomICoor::stub_atom1 ( ) const
inline
ICoorAtomID const& core::chemical::AtomICoor::stub_atom2 ( ) const
inline
ICoorAtomID const& core::chemical::AtomICoor::stub_atom3 ( ) const
inline
Real core::chemical::AtomICoor::theta ( ) const
inline

Member Data Documentation

std::string core::chemical::AtomICoor::built_atom_
private

Referenced by built_atom().

Real core::chemical::AtomICoor::d_
private

Referenced by build(), d(), and show().

Real core::chemical::AtomICoor::phi_
private

Referenced by build(), phi(), and show().

ICoorAtomID core::chemical::AtomICoor::stub_atom1_
private
ICoorAtomID core::chemical::AtomICoor::stub_atom2_
private
ICoorAtomID core::chemical::AtomICoor::stub_atom3_
private
Real core::chemical::AtomICoor::theta_
private

Referenced by build(), show(), and theta().


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