Rosetta  2020.37
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
protocols::toolbox::match_enzdes_util::LigandConformer Class Reference

#include <LigandConformer.hh>

Inheritance diagram for protocols::toolbox::match_enzdes_util::LigandConformer:
Inheritance graph
[legend]

Public Types

typedef utility::VirtualBase parent
 
typedef core::Size Size
 
typedef core::Real Real
 
typedef core::Vector Vector
 
typedef
numeric::geometry::hashing::Real6 
Real6
 
typedef
numeric::HomogeneousTransform
< Real
HTReal
 

Public Member Functions

 LigandConformer ()
 
 LigandConformer (LigandConformer const &)
 
 ~LigandConformer () override
 
Real atom1_atom2_distance () const
 
Real atom2_atom3_distance () const
 
Real atom1_atom2_atom3_angle () const
 Returns an angle in degrees between the three downstream atoms. More...
 
Real oatom1_oatom2_distance () const
 returns the distance between orientation atom 1 and orientation atom 2 More...
 
Real oatom2_oatom3_distance () const
 returns the distance between orientation atom 2 and orientation atom 3 More...
 
Real oatom1_oatom2_oatom3_angle () const
 Returns an angle in degrees between the three orientation atoms. More...
 
void coordinates_from_orientation (Real6 const &orientation, utility::vector1< core::id::AtomID > const &atom_indices, utility::vector1< Vector > &atom_coords) const
 
void initialize_from_residue (core::Size D1, core::Size D2, core::Size D3, core::Size orientation_atom1, core::Size orientation_atom2, core::Size orientation_atom3, core::conformation::Residue const &residue)
 Specify the residue, with coordinates, that's being used as the downstream partner. This class is meant to be used in conjuction with the ClassicMatchAglrotihm, and therefore the initialization routines are specific for that algorithm. In this initialization function, one must list atoms "D1, D2 and D3" in the convention of describing the rigid-body orientation between three atoms of the upstream partner (atoms U3, U2 & U1) and three atoms of the downstream partner (atoms D1, D2 & D3) in terms of 2 angles, 1 distance, and 3 dihedrals. The user must also list the 3 atoms used to define the orientation frame of the downstream ligand. It is essential to the matching algorithm that the same three orientation atoms are used for all LigandConformers. More...
 
void ignore_h_collisions (bool setting)
 
Real6 global_orientation_from_frame3 (HTReal const &frame3) const
 The orientaton frame at orientation atom 3 given the coordinate frame at D3 (this frame is called frame3) More...
 
HTReal frame_from_global_orientation (Real6 orientation) const
 The orientation frame at orientation atom 3 given orientation atom 3's xyz coordinates and the euler angles describing the frame. More...
 
void move_atoms_to_collcheck_begin (utility::vector1< core::Size > const &restype_atnos_to_move_early)
 
core::Size n_collision_check_atoms () const
 
core::Size restype_id_2_collision_check_id (core::Size restype_atomno) const
 
core::Size collision_check_id_2_restype_id (core::Size coll_check_id) const
 
Vector coordinate_in_D3_frame (core::Size restype_atomno, HTReal const &frame3) const
 
Vector coordinate_in_global_frame (core::Size restype_atomno, HTReal const &orientation_frame) const
 
void get_global_coords_as_FArray2D (ObjexxFCL::FArray2D< numeric::Real > &coords, HTReal const &orientation_frame, utility::vector1< core::Size > const &restype_atomnos) const
 @ brief helper function to get the coordinates in 2D FArray format More...
 
core::chemical::ResidueType const & get_lig_restype () const
 

Private Member Functions

void create_collcheck_ordering (utility::vector1< bool > selected, core::Size count_from)
 

Private Attributes

core::chemical::ResidueTypeCOP ligand_restype_
 
utility::fixedsizearray1
< core::Size, 3 > 
orientation_atoms_
 
HTReal oframe_in_D3frame_
 
utility::vector1< Vectorpoints_in_global_orintation_frame_
 The coordinates of all the ligand atoms in the global orientation frame. More...
 
utility::fixedsizearray1
< core::Size, 3 > 
atoms_123_
 
Real d12_
 
Real d23_
 
Real ang123_
 
utility::vector1< Vectorpoints_in_D3_frame_
 angle between D1, D2 and D3 More...
 
bool ignore_h_collisions_
 
utility::vector1< core::Sizecollision_check_id_2_restype_id_
 
utility::vector1< core::Sizerestype_id_2_collision_check_id_
 

Member Typedef Documentation

typedef numeric::HomogeneousTransform< Real > protocols::toolbox::match_enzdes_util::LigandConformer::HTReal
typedef numeric::geometry::hashing::Real6 protocols::toolbox::match_enzdes_util::LigandConformer::Real6

Constructor & Destructor Documentation

protocols::toolbox::match_enzdes_util::LigandConformer::LigandConformer ( )
protocols::toolbox::match_enzdes_util::LigandConformer::LigandConformer ( LigandConformer const &  )
default
protocols::toolbox::match_enzdes_util::LigandConformer::~LigandConformer ( )
overridedefault

Member Function Documentation

LigandConformer::Real protocols::toolbox::match_enzdes_util::LigandConformer::atom1_atom2_atom3_angle ( ) const

Returns an angle in degrees between the three downstream atoms.

References ang123_, and ligand_restype_.

LigandConformer::Real protocols::toolbox::match_enzdes_util::LigandConformer::atom1_atom2_distance ( ) const

References d12_, and ligand_restype_.

LigandConformer::Real protocols::toolbox::match_enzdes_util::LigandConformer::atom2_atom3_distance ( ) const

References d23_, and ligand_restype_.

core::Size protocols::toolbox::match_enzdes_util::LigandConformer::collision_check_id_2_restype_id ( core::Size  coll_check_id) const
inline
Vector protocols::toolbox::match_enzdes_util::LigandConformer::coordinate_in_D3_frame ( core::Size  restype_atomno,
HTReal const &  frame3 
) const
inline

References points_in_D3_frame_.

Vector protocols::toolbox::match_enzdes_util::LigandConformer::coordinate_in_global_frame ( core::Size  restype_atomno,
HTReal const &  orientation_frame 
) const
inline
void protocols::toolbox::match_enzdes_util::LigandConformer::coordinates_from_orientation ( Real6 const &  orientation,
utility::vector1< core::id::AtomID > const &  atom_indices,
utility::vector1< Vector > &  atom_coords 
) const
void protocols::toolbox::match_enzdes_util::LigandConformer::create_collcheck_ordering ( utility::vector1< bool selected,
core::Size  count_from 
)
private
LigandConformer::HTReal protocols::toolbox::match_enzdes_util::LigandConformer::frame_from_global_orientation ( Real6  orientation) const

The orientation frame at orientation atom 3 given orientation atom 3's xyz coordinates and the euler angles describing the frame.

Referenced by coordinates_from_orientation().

void protocols::toolbox::match_enzdes_util::LigandConformer::get_global_coords_as_FArray2D ( ObjexxFCL::FArray2D< numeric::Real > &  coords,
HTReal const &  orientation_frame,
utility::vector1< core::Size > const &  restype_atomnos 
) const

@ brief helper function to get the coordinates in 2D FArray format

References protocols::simple_filters::coords(), and points_in_global_orintation_frame_.

core::chemical::ResidueType const & protocols::toolbox::match_enzdes_util::LigandConformer::get_lig_restype ( ) const

References ligand_restype_.

LigandConformer::Real6 protocols::toolbox::match_enzdes_util::LigandConformer::global_orientation_from_frame3 ( HTReal const &  frame3) const

The orientaton frame at orientation atom 3 given the coordinate frame at D3 (this frame is called frame3)

References oframe_in_D3frame_.

void protocols::toolbox::match_enzdes_util::LigandConformer::ignore_h_collisions ( bool  setting)
void protocols::toolbox::match_enzdes_util::LigandConformer::initialize_from_residue ( core::Size  D1,
core::Size  D2,
core::Size  D3,
core::Size  orientation_atom1,
core::Size  orientation_atom2,
core::Size  orientation_atom3,
core::conformation::Residue const &  residue 
)

Specify the residue, with coordinates, that's being used as the downstream partner. This class is meant to be used in conjuction with the ClassicMatchAglrotihm, and therefore the initialization routines are specific for that algorithm. In this initialization function, one must list atoms "D1, D2 and D3" in the convention of describing the rigid-body orientation between three atoms of the upstream partner (atoms U3, U2 & U1) and three atoms of the downstream partner (atoms D1, D2 & D3) in terms of 2 angles, 1 distance, and 3 dihedrals. The user must also list the 3 atoms used to define the orientation frame of the downstream ligand. It is essential to the matching algorithm that the same three orientation atoms are used for all LigandConformers.

References ang123_, core::conformation::Residue::atom_type(), atoms_123_, collision_check_id_2_restype_id_, create_collcheck_ordering(), d12_, d23_, core::chemical::AtomType::element(), ignore_h_collisions_, ligand_restype_, core::chemical::AtomType::name(), core::conformation::Residue::natoms(), core::conformation::Residue::nheavyatoms(), oframe_in_D3frame_, orientation_atoms_, points_in_D3_frame_, points_in_global_orintation_frame_, restype_id_2_collision_check_id_, core::conformation::Residue::type_ptr(), and core::conformation::Residue::xyz().

void protocols::toolbox::match_enzdes_util::LigandConformer::move_atoms_to_collcheck_begin ( utility::vector1< core::Size > const &  restype_atnos_to_move_early)
core::Size protocols::toolbox::match_enzdes_util::LigandConformer::n_collision_check_atoms ( ) const
inline
LigandConformer::Real protocols::toolbox::match_enzdes_util::LigandConformer::oatom1_oatom2_distance ( ) const

returns the distance between orientation atom 1 and orientation atom 2

References ligand_restype_, orientation_atoms_, and points_in_D3_frame_.

LigandConformer::Real protocols::toolbox::match_enzdes_util::LigandConformer::oatom1_oatom2_oatom3_angle ( ) const

Returns an angle in degrees between the three orientation atoms.

References ligand_restype_, orientation_atoms_, and points_in_D3_frame_.

LigandConformer::Real protocols::toolbox::match_enzdes_util::LigandConformer::oatom2_oatom3_distance ( ) const

returns the distance between orientation atom 2 and orientation atom 3

References ligand_restype_, orientation_atoms_, and points_in_D3_frame_.

core::Size protocols::toolbox::match_enzdes_util::LigandConformer::restype_id_2_collision_check_id ( core::Size  restype_atomno) const
inline

Member Data Documentation

Real protocols::toolbox::match_enzdes_util::LigandConformer::ang123_
private
utility::fixedsizearray1< core::Size, 3 > protocols::toolbox::match_enzdes_util::LigandConformer::atoms_123_
private

The indices for the three atoms defining the location of the downstream partner from the upstream partner. D1 D2 and D3. These indices are in the restype indexing of atoms.

Referenced by initialize_from_residue(), and move_atoms_to_collcheck_begin().

utility::vector1< core::Size > protocols::toolbox::match_enzdes_util::LigandConformer::collision_check_id_2_restype_id_
private
Real protocols::toolbox::match_enzdes_util::LigandConformer::d12_
private
Real protocols::toolbox::match_enzdes_util::LigandConformer::d23_
private
bool protocols::toolbox::match_enzdes_util::LigandConformer::ignore_h_collisions_
private
core::chemical::ResidueTypeCOP protocols::toolbox::match_enzdes_util::LigandConformer::ligand_restype_
private
HTReal protocols::toolbox::match_enzdes_util::LigandConformer::oframe_in_D3frame_
private
utility::fixedsizearray1< core::Size, 3 > protocols::toolbox::match_enzdes_util::LigandConformer::orientation_atoms_
private

The indices of the three atoms defining the orientation of the ligand in the global coordinate frame These indices are in the restype indexing of atoms.

Referenced by initialize_from_residue(), oatom1_oatom2_distance(), oatom1_oatom2_oatom3_angle(), and oatom2_oatom3_distance().

utility::vector1< Vector > protocols::toolbox::match_enzdes_util::LigandConformer::points_in_D3_frame_
private

angle between D1, D2 and D3

The coordinates of the other ligand atoms in the coordinate frame from atom D3.

Referenced by coordinate_in_D3_frame(), create_collcheck_ordering(), initialize_from_residue(), move_atoms_to_collcheck_begin(), oatom1_oatom2_distance(), oatom1_oatom2_oatom3_angle(), and oatom2_oatom3_distance().

utility::vector1< Vector > protocols::toolbox::match_enzdes_util::LigandConformer::points_in_global_orintation_frame_
private

The coordinates of all the ligand atoms in the global orientation frame.

Referenced by coordinate_in_global_frame(), coordinates_from_orientation(), get_global_coords_as_FArray2D(), and initialize_from_residue().

utility::vector1< core::Size > protocols::toolbox::match_enzdes_util::LigandConformer::restype_id_2_collision_check_id_
private

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