Rosetta
|
#include <LigandConformerBuilder.hh>
Public Types | |
typedef DownstreamBuilder | parent |
![]() | |
typedef utility::VirtualBase | parent |
typedef core::id::AtomID | AtomID |
typedef core::Vector | Vector |
typedef core::Real | Real |
typedef numeric::HomogeneousTransform< Real > | HTReal |
Public Member Functions | |
LigandConformerBuilder () | |
LigandConformerBuilder (LigandConformerBuilder const &) | |
~LigandConformerBuilder () override | |
DownstreamBuilderOP | clone () const override |
std::list< Hit > | build (HTReal const &atom3_frame, core::Size const scaffold_build_point_id, core::Size const upstream_conf_id, core::Size const external_geometry_id, core::conformation::Residue const &upstream_residue) const override |
void | determine_redundant_conformer_groups (utility::vector1< core::Size > const &relevant_atom_indices) |
goes through the list of conformers and does rms calculations (overlaid on the relevant_atom_indices) between them. any conformers that have an rms < rmsd_unique_cutoff_ will be grouped together in a conformer_group More... | |
core::Size | assign_conformer_group_to_residue (core::conformation::Residue const &residue, utility::vector1< core::Size > const &relevant_atom_indices) const |
void | set_bb_grid (BumpGridCOP bbgrid) override |
bool | hits_potentially_incompatible () const override |
In case downstream builders can return hits that are incompatible with each other (e.g. different ligand conformations ) the matcher needs to know about this to allow for speedy match enumeration. More... | |
bool | compatible (Hit const &my_hit, DownstreamBuilder const &other, Hit const &other_hit, bool first_dispatch=true) const override |
bool | compatible (Hit const &my_hit, LigandConformerBuilder const &other, Hit const &other_hit, bool first_dispatch=true) const override |
void | require_atom_to_reside_in_active_site (core::id::AtomID const &id) override |
ProbeRadius | atom1_radius () const override |
ProbeRadius | atom2_radius () const override |
ProbeRadius | atom3_radius () const override |
bool | atom1_belongs_in_active_site () const override |
bool | atom2_belongs_in_active_site () const override |
bool | atom3_belongs_in_active_site () const override |
Real | atom1_atom2_distance () const override |
Real | atom2_atom3_distance () const override |
Real | atom1_atom2_atom3_angle () const override |
Returns an angle in degrees between the three downstream atoms. More... | |
void | coordinates_from_hit (Hit const &hit, utility::vector1< AtomID > const &atom_indices, utility::vector1< Vector > &atom_coords) const override |
core::pose::PoseCOP | downstream_pose_from_hit (Hit const &hit) const override |
core::Size | n_possible_hits_per_at3frame () const override |
void | initialize_from_residue (core::Size atom1, core::Size atom2, core::Size atom3, 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 LigandConformerBuilders. More... | |
void | initialize_upstream_residue (core::chemical::ResidueTypeCOP upstream_res, core::scoring::etable::count_pair::CountPairFunctionCOP count_pair=nullptr) |
void | ignore_h_collisions (bool setting) |
void | set_idealize_conformers (bool setting) |
void | set_rmsd_unique_cutoff (core::Real setting) |
toolbox::match_enzdes_util::LigandConformerOP | get_lig_conformers (core::Size conf_id) const override |
core::chemical::ResidueTypeCOP | get_upstream_restype () const override |
![]() | |
DownstreamBuilder () | |
DownstreamBuilder (DownstreamBuilder const &) | |
~DownstreamBuilder () override | |
void | set_occupied_space_hash (OccupiedSpaceHashCOP occ_space) |
void | set_active_site_grid (ActiveSiteGridCOP active_site_grid) |
virtual bool | compatible (Hit const &my_hit, RigidLigandBuilder const &other, Hit const &other_hit, bool first_dispatch=true) const |
Private Member Functions | |
std::list< Hit > | build_conformer_group (core::Size const confgrp_id, HTReal const &atom3_frame, core::Size const scaffold_build_point_id, core::Size const upstream_conf_id, core::Size const external_geometry_id, core::conformation::Residue const &upstream_residue) const |
void | initialize_upstream_nonbonded_min_separation_d2 () |
void | initialize_conformers (core::conformation::Residue const &residue) |
Private Attributes | |
core::chemical::ResidueTypeCOP | downstream_restype_ |
core::chemical::ResidueTypeCOP | upstream_restype_ |
bool | ignore_h_collisions_ |
bool | idealize_conformers_ |
utility::fixedsizearray1< core::Size, 3 > | orientation_atoms_ |
utility::fixedsizearray1< core::Size, 3 > | atoms_123_ |
utility::fixedsizearray1< ProbeRadius, 3 > | radii_123_ |
utility::fixedsizearray1< bool, 3 > | ats123_reqd_in_active_site_ |
utility::vector1< ProbeRadius > | atom_radii_ |
utility::vector1< bool > | atom_required_in_active_site_ |
utility::vector1< core::Size > | non_collision_detection_atoms_reqd_in_active_site_ |
Real | rmsd_unique_cutoff_ |
Grouped into sets compatible ligand conformers. More... | |
utility::vector1< utility::vector1< core::Size > > | conformer_group_indices_ |
utility::vector1< core::Size > | conformer_group_for_conformer_ |
utility::vector1< toolbox::match_enzdes_util::LigandConformerOP > | lig_conformers_ |
utility::vector1< utility::vector1< std::pair< core::Size, Real > > > | min_sep_d2_from_upstream_atoms_ |
Additional Inherited Members | |
![]() | |
bool | bbgrid_set () const |
BumpGrid const & | bbgrid () const |
bool | occ_space_set () const |
OccupiedSpaceHash const & | occ_space () const |
bool | active_site_grid_set () const |
ActiveSiteGrid const & | active_site_grid () const |
protocols::match::downstream::LigandConformerBuilder::LigandConformerBuilder | ( | ) |
protocols::match::downstream::LigandConformerBuilder::LigandConformerBuilder | ( | LigandConformerBuilder const & | other | ) |
References lig_conformers_.
|
overridedefault |
core::Size protocols::match::downstream::LigandConformerBuilder::assign_conformer_group_to_residue | ( | core::conformation::Residue const & | residue, |
utility::vector1< core::Size > const & | relevant_atom_indices | ||
) | const |
For results to make sense, the relevant atom indices being passed in should be identical to the ones that the conformer groups were determined with in the above function, although this isn't being enforced
References core::conformation::Residue::atom(), conformer_group_indices_, lig_conformers_, and core::conformation::Atom::xyz().
|
overridevirtual |
Returns an angle in degrees between the three downstream atoms.
Implements protocols::match::downstream::DownstreamBuilder.
References downstream_restype_, and lig_conformers_.
Referenced by initialize_conformers().
|
overridevirtual |
Implements protocols::match::downstream::DownstreamBuilder.
References downstream_restype_, and lig_conformers_.
Referenced by initialize_conformers().
|
overridevirtual |
Implements protocols::match::downstream::DownstreamBuilder.
References ats123_reqd_in_active_site_.
|
overridevirtual |
Implements protocols::match::downstream::DownstreamBuilder.
References downstream_restype_, and radii_123_.
|
overridevirtual |
Implements protocols::match::downstream::DownstreamBuilder.
References downstream_restype_, and lig_conformers_.
Referenced by initialize_conformers().
|
overridevirtual |
Implements protocols::match::downstream::DownstreamBuilder.
References ats123_reqd_in_active_site_.
|
overridevirtual |
Implements protocols::match::downstream::DownstreamBuilder.
References downstream_restype_, and radii_123_.
|
overridevirtual |
Implements protocols::match::downstream::DownstreamBuilder.
References ats123_reqd_in_active_site_.
|
overridevirtual |
Implements protocols::match::downstream::DownstreamBuilder.
References downstream_restype_, and radii_123_.
|
overridevirtual |
Implements protocols::match::downstream::DownstreamBuilder.
References build_conformer_group(), and conformer_group_indices_.
|
private |
References protocols::match::downstream::DownstreamBuilder::active_site_grid(), atom_radii_, atom_required_in_active_site_, protocols::match::downstream::DownstreamBuilder::bbgrid(), protocols::match::downstream::DownstreamBuilder::bbgrid_set(), conformer_group_indices_, downstream_restype_, protocols::match::Hit::first(), lig_conformers_, min_sep_d2_from_upstream_atoms_, non_collision_detection_atoms_reqd_in_active_site_, protocols::match::downstream::DownstreamBuilder::occ_space(), protocols::match::downstream::DownstreamBuilder::occ_space_set(), protocols::match::Hit::second(), core::conformation::Residue::type(), upstream_restype_, core::conformation::Residue::xyz(), and protocols::match::ZERO.
Referenced by build().
|
overridevirtual |
Implements protocols::match::downstream::DownstreamBuilder.
|
overridevirtual |
Reimplemented from protocols::match::downstream::DownstreamBuilder.
References protocols::match::downstream::DownstreamBuilder::compatible().
Referenced by protocols::match::downstream::DownstreamBuilder::compatible().
|
overridevirtual |
LigandConformerBuilder checks whether the ligand conformers in both hits are in the same conformer group
Reimplemented from protocols::match::downstream::DownstreamBuilder.
References conformer_group_for_conformer_, and protocols::match::Hit::downstream_conf_id().
void protocols::match::downstream::LigandConformerBuilder::determine_redundant_conformer_groups | ( | utility::vector1< core::Size > const & | relevant_atom_indices | ) |
goes through the list of conformers and does rms calculations (overlaid on the relevant_atom_indices) between them. any conformers that have an rms < rmsd_unique_cutoff_ will be grouped together in a conformer_group
References conformer_group_for_conformer_, conformer_group_indices_, lig_conformers_, rmsd_unique_cutoff_, and protocols::match::downstream::TR().
|
overridevirtual |
|
overridevirtual |
Implements protocols::match::downstream::DownstreamBuilder.
References lig_conformers_.
|
overridevirtual |
Implements protocols::match::downstream::DownstreamBuilder.
References upstream_restype_.
|
overridevirtual |
In case downstream builders can return hits that are incompatible with each other (e.g. different ligand conformations ) the matcher needs to know about this to allow for speedy match enumeration.
Implements protocols::match::downstream::DownstreamBuilder.
References conformer_group_indices_.
void protocols::match::downstream::LigandConformerBuilder::ignore_h_collisions | ( | bool | setting | ) |
References downstream_restype_, and ignore_h_collisions_.
|
private |
References core::pose::Pose::append_residue_by_jump(), protocols::idealize::IdealizeMover::apply(), atom1_atom2_atom3_angle(), atom1_atom2_distance(), atom2_atom3_distance(), core::conformation::Residue::atom_name(), atoms_123_, conformer_group_for_conformer_, conformer_group_indices_, core::pack::rotamers::SingleResidueRotamerLibraryFactory::get(), idealize_conformers_, ignore_h_collisions_, lig_conformers_, core::conformation::Residue::name(), core::conformation::Residue::nheavyatoms(), orientation_atoms_, core::pose::Pose::replace_residue(), protocols::idealize::IdealizeMover::report_CA_rmsd(), core::pose::Pose::residue(), core::scoring::rms, core::id::to_string(), protocols::match::downstream::TR(), core::conformation::Residue::type(), and core::conformation::Residue::xyz().
Referenced by initialize_from_residue().
void protocols::match::downstream::LigandConformerBuilder::initialize_from_residue | ( | core::Size | atom1, |
core::Size | atom2, | ||
core::Size | atom3, | ||
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 LigandConformerBuilders.
References core::conformation::Residue::atom(), atom_radii_, atom_required_in_active_site_, core::conformation::Residue::atom_type(), atoms_123_, downstream_restype_, core::chemical::AtomType::element(), ignore_h_collisions_, initialize_conformers(), core::conformation::Residue::name(), core::conformation::Residue::natoms(), orientation_atoms_, protocols::match::probe_radius_for_atom_type(), radii_123_, protocols::match::downstream::TR(), core::conformation::Atom::type(), core::conformation::Residue::type_ptr(), and protocols::match::ZERO.
|
private |
References atom_radii_, protocols::match::downstream::DownstreamBuilder::bbgrid(), protocols::match::downstream::DownstreamBuilder::bbgrid_set(), lig_conformers_, min_sep_d2_from_upstream_atoms_, protocols::match::probe_radius_for_atom_type(), protocols::match::BumpGrid::required_separation_distance(), and upstream_restype_.
Referenced by initialize_upstream_residue(), and set_bb_grid().
void protocols::match::downstream::LigandConformerBuilder::initialize_upstream_residue | ( | core::chemical::ResidueTypeCOP | upstream_res, |
core::scoring::etable::count_pair::CountPairFunctionCOP | count_pair = nullptr |
||
) |
|
overridevirtual |
Implements protocols::match::downstream::DownstreamBuilder.
References lig_conformers_.
|
overridevirtual |
|
overridevirtual |
void protocols::match::downstream::LigandConformerBuilder::set_idealize_conformers | ( | bool | setting | ) |
References idealize_conformers_.
void protocols::match::downstream::LigandConformerBuilder::set_rmsd_unique_cutoff | ( | core::Real | setting | ) |
References rmsd_unique_cutoff_.
|
private |
|
private |
Referenced by build_conformer_group(), initialize_from_residue(), and require_atom_to_reside_in_active_site().
|
private |
|
private |
|
private |
Referenced by compatible(), determine_redundant_conformer_groups(), and initialize_conformers().
|
private |
|
private |
Referenced by atom1_atom2_atom3_angle(), atom1_atom2_distance(), atom1_radius(), atom2_atom3_distance(), atom2_radius(), atom3_radius(), build_conformer_group(), downstream_pose_from_hit(), ignore_h_collisions(), initialize_from_residue(), initialize_upstream_residue(), and require_atom_to_reside_in_active_site().
|
private |
Referenced by initialize_conformers(), and set_idealize_conformers().
|
private |
Referenced by ignore_h_collisions(), initialize_conformers(), and initialize_from_residue().
|
private |
Referenced by assign_conformer_group_to_residue(), atom1_atom2_atom3_angle(), atom1_atom2_distance(), atom2_atom3_distance(), build_conformer_group(), coordinates_from_hit(), determine_redundant_conformer_groups(), downstream_pose_from_hit(), get_lig_conformers(), initialize_conformers(), initialize_upstream_nonbonded_min_separation_d2(), initialize_upstream_residue(), LigandConformerBuilder(), n_possible_hits_per_at3frame(), and require_atom_to_reside_in_active_site().
|
private |
Detect collision between the upstream residue (sidechain?!) conformation and the atoms of the downstream residue
Referenced by build_conformer_group(), initialize_upstream_nonbonded_min_separation_d2(), and initialize_upstream_residue().
|
private |
Referenced by build_conformer_group(), and require_atom_to_reside_in_active_site().
|
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_conformers(), and initialize_from_residue().
|
private |
Referenced by atom1_radius(), atom2_radius(), atom3_radius(), initialize_from_residue(), and initialize_upstream_residue().
|
private |
Grouped into sets compatible ligand conformers.
Referenced by determine_redundant_conformer_groups(), and set_rmsd_unique_cutoff().
|
private |