|
Rosetta 3.5
|
A class for an algorithm. Given a conformation of the downstream partner, the algorithm is responsible for producing a set of hits. More...
#include <SecondaryMatcherToDownstreamResidue.hh>


Public Types | |
| typedef DownstreamAlgorithm | parent |
| typedef std::pair < SecMatchResiduePairEvaluatorCOP, Size > | Evaluator_MCFI_ID_Pair |
| typedef std::list < Evaluator_MCFI_ID_Pair > | EvaluatorSet |
Public Types inherited from protocols::match::downstream::DownstreamAlgorithm | |
| typedef core::Size | Size |
| typedef core::Vector | Vector |
Public Member Functions | |
| SecondaryMatcherToDownstreamResidue (core::pose::PoseCOP upstream_pose, Size geom_cst_id) | |
| virtual | ~SecondaryMatcherToDownstreamResidue () |
| virtual DownstreamAlgorithmOP | clone () const |
| virtual std::list< Hit > | build_hits_at_all_positions (Matcher &matcher) |
| Main driver function for hit generation. This DownstreamAlgorithm structures it's iteration over the hits from previous rounds as follows: for i = 1:this->geom_cst_id() - 1 if ( ! matcher->representative_downstream_algorithm( i )->generates_primary_hits() ) continue; for j = 1:n_build_points_for_geomcst( i ) recover_downstream_coordinates_from_previous_round( hit_subset_j ); initialize TaretRotamerCoords data for all downstream algorithms with the same geom_cst_id #omp parallel for /// All class access below this point is const and parallelizable for k = 1:n_build_positions /// call this function to start l loop: matcher.upstream_builder[ geom_cst_id() ]->build( k ) for l = 1:n_rotamers_k /// call to start m loop: downstream_algorithm->build( k, l, rotamer_l ) ) for m = 1:n_hits_in_block_j if ( respair_evaluator_->evaluate_residues( rotamer_l, rotamer_m ) hit_list.append( Hit( k, l, i, 1, hit[ m ].second() )); return hit_list There are two important consequences to this hit-generation layout. More... | |
| virtual void | respond_to_primary_hitlist_change (Matcher &matcher, Size round_just_completed) |
| mimic the classic matcher's reset of the Occupied space hash. More... | |
| virtual void | respond_to_peripheral_hitlist_change (Matcher &matcher) |
| Remove my hits if they fall into a volume of the occupied space hash that is no longer occupied. More... | |
| virtual std::list< Hit > | build (Size const scaffold_build_point_id, Size const upstream_conf_id, core::conformation::Residue const &upstream_residue) const |
| Iterate across the conformations of the downstream residue coming from hits generated in previous rounds, and add hits for each upstream residue that (Also, see comments for the build_at_all_positions method.) More... | |
| virtual bool | upstream_only () const |
| returns false; this secondary matcher describes the location of the downstream partner even though it does not generate that location itself. Matches may be found by hashing the 6D coordinate of the downstream partner. More... | |
| virtual bool | generates_primary_hits () const |
| This method returns 'false' since this matcher does not describe the coordinates of the downstream partner at all. More... | |
| HitPtrListCOP | hits_to_include_with_partial_match (match_dspos1 const &) const |
| This method is invoked by the Matcher as it enumerates matches should this class return "true" in it's upstream_only. method. The Matcher will enumerate matches placing hits into the match for all of the geometric-constraints which describe the downstream partner's 6D coordinates in their hits, and then for all other geometric constraints in ascending order. The hits for upstream residues 1 to geom_cst_id() - 1 are all valid; the hit for geom-cst i, given that i > geom_cst_id() - 1 is valid if and only if the downstream algorithm for geom-cst i returns true in it's upstream_only(). The Hit const * list should point at the Matcher's hits. Between prepare-for-match enumeration and note_match_enumeration_completed, the Matcher provides a guarantee to the downstream algorithm that it's hit lists have not changed, and therefore all Hit *'s remain valid. The Matcher is providing a "match_dspos1 const &" instead of a "match const &" because this DownstreamAlgorithm should not be examining the 6D coordinates of the downstream partner according to other geometric constraints, and because the Matcher's match_dspos1-enumeration technique could not readily construct a match, the Matcher's match-enumeration technique can readily construct a match_dspos1. Data in the input match_dspos1 relating to the downstream partner is undefined. More... | |
| virtual Size | n_possible_hits_per_upstream_conformation () const |
| void | set_downstream_restype (core::chemical::ResidueTypeCOP downstream_restype) |
| void | set_focused_geomcst_id (Size focused_geomcst_id) |
| void | add_evaluator (SecMatchResiduePairEvaluatorCOP evaluator, Size mcfi_id) |
| void | set_catalytic_atoms (utility::vector1< core::Size > catalytic_atoms) |
Public Member Functions inherited from protocols::match::downstream::DownstreamAlgorithm | |
| DownstreamAlgorithm (Size geom_cst_id) | |
| DownstreamAlgorithm (DownstreamAlgorithm const &) | |
| DownstreamAlgorithm const & | operator= (DownstreamAlgorithm const &) |
| virtual | ~DownstreamAlgorithm () |
| virtual void | prepare_for_match_enumeration (Matcher const &) |
| Called at the conclusion of matching, the Matcher signals to the downstream algorithm that it's time to prepare for match generation; if the downstream algorithm needs to enumerate compatible hits in response to the invokation of its hits_to_include_with_partial_match method, then now is the time to prepare for those calls. Base class has a noop implementation. More... | |
| void | set_bb_grid (BumpGridCOP bbgrid) |
| void | set_active_site_grid (ActiveSiteGridCOP active_site_grid) |
| Size | geom_cst_id () const |
| void | set_dsbuilder (DownstreamBuilderOP dsbuilder) |
| DownstreamBuilderOP | get_dsbuilder () const |
| bool | are_colliding (core::conformation::Residue const &us_res, core::conformation::Residue const &ds_res, utility::vector1< core::id::AtomID > const &ds_atoms, utility::vector1< core::Size > const &catalytic_atoms) const |
Private Member Functions | |
| void | prepare_for_hit_generation (Matcher &matcher) |
| void | prepare_for_hit_generation_for_geomcst (Matcher &matcher, Size target_geomcst_id) |
| bool | prepare_for_hit_generation_at_target_build_point (Matcher &matcher, Size target_geomcst_id, upstream::ScaffoldBuildPoint const &target_build_point) |
| void | set_target_rotamer_coords (TargetRotamerCoordsOP target_geomcst_coords) |
| Allow another SecondaryMatcherToDownstreamResidue to set my TargetRotamerCoords object so that we can share this data. More... | |
| void | set_ds_coords_needed (utility::vector1< core::id::AtomID > ds_coords) |
| bool | ds_atom_present (Size index) const |
| utility::vector1 < utility::vector1 < utility::vector1< std::pair < core::Size, core::Real > > > > | get_min_sep_d2_from_upstream_atoms () const |
Additional Inherited Members | |
Protected Member Functions inherited from protocols::match::downstream::DownstreamAlgorithm | |
| BumpGrid const & | bbgrid () const |
| bool | active_site_grid_set () const |
| ActiveSiteGrid const & | active_site_grid () const |
| std::list< Hit > | default_build_hits_at_all_positions (Matcher const &matcher) const |
| Non-virtual, const method for generating hits by first iterating across all build points and then invoking upstream_builder->build( build_point_i ) and splicing together the results. This method is invoked by default if the derived class does not override build_hits_at_all_positions. More... | |
A class for an algorithm. Given a conformation of the downstream partner, the algorithm is responsible for producing a set of hits.
Definition at line 53 of file SecondaryMatcherToDownstreamResidue.hh.
| typedef std::pair< SecMatchResiduePairEvaluatorCOP, Size > protocols::match::downstream::SecondaryMatcherToDownstreamResidue::Evaluator_MCFI_ID_Pair |
Definition at line 57 of file SecondaryMatcherToDownstreamResidue.hh.
| typedef std::list< Evaluator_MCFI_ID_Pair > protocols::match::downstream::SecondaryMatcherToDownstreamResidue::EvaluatorSet |
Definition at line 58 of file SecondaryMatcherToDownstreamResidue.hh.
| typedef DownstreamAlgorithm protocols::match::downstream::SecondaryMatcherToDownstreamResidue::parent |
Definition at line 56 of file SecondaryMatcherToDownstreamResidue.hh.
| protocols::match::downstream::SecondaryMatcherToDownstreamResidue::SecondaryMatcherToDownstreamResidue | ( | core::pose::PoseCOP | upstream_pose, |
| Size | geom_cst_id | ||
| ) |
Definition at line 63 of file SecondaryMatcherToDownstreamResidue.cc.
References catalytic_atoms_.
Referenced by clone().
|
virtual |
Definition at line 73 of file SecondaryMatcherToDownstreamResidue.cc.
| void protocols::match::downstream::SecondaryMatcherToDownstreamResidue::add_evaluator | ( | SecMatchResiduePairEvaluatorCOP | evaluator, |
| Size | mcfi_id | ||
| ) |
Definition at line 321 of file SecondaryMatcherToDownstreamResidue.cc.
References respair_evaluators_.
Referenced by protocols::match::Matcher::add_secondary_downstream_match_geometry_for_constraint().
|
virtual |
Iterate across the conformations of the downstream residue coming from hits generated in previous rounds, and add hits for each upstream residue that (Also, see comments for the build_at_all_positions method.)
Iterate across the hits from a particular upstream build point i that were generated in a previous round, and see if the geometry of the input upstream_residue has "satisfactory interactions" with the hits from upstream-build-point i; if so, it appends a Hit to the hitlist returned at the end of the method. (Also, see comments for the build_at_all_positions method.)
Implements protocols::match::downstream::DownstreamAlgorithm.
Definition at line 218 of file SecondaryMatcherToDownstreamResidue.cc.
References protocols::match::downstream::DownstreamAlgorithm::are_colliding(), catalytic_atoms_, downstream_atom_coordinates_needed_, downstream_restype_, protocols::match::Hit::first(), protocols::match::downstream::DownstreamAlgorithm::get_dsbuilder(), respair_evaluators_, protocols::match::Hit::second(), core::conformation::Residue::seqpos(), core::conformation::Residue::set_xyz(), core::io::serialization::size(), target_downstream_coords_, and upstream_pose_.
|
virtual |
Main driver function for hit generation. This DownstreamAlgorithm structures it's iteration over the hits from previous rounds as follows: for i = 1:this->geom_cst_id() - 1 if ( ! matcher->representative_downstream_algorithm( i )->generates_primary_hits() ) continue; for j = 1:n_build_points_for_geomcst( i ) recover_downstream_coordinates_from_previous_round( hit_subset_j ); initialize TaretRotamerCoords data for all downstream algorithms with the same geom_cst_id #omp parallel for /// All class access below this point is const and parallelizable for k = 1:n_build_positions /// call this function to start l loop: matcher.upstream_builder[ geom_cst_id() ]->build( k ) for l = 1:n_rotamers_k /// call to start m loop: downstream_algorithm->build( k, l, rotamer_l ) ) for m = 1:n_hits_in_block_j if ( respair_evaluator_->evaluate_residues( rotamer_l, rotamer_m ) hit_list.append( Hit( k, l, i, 1, hit[ m ].second() )); return hit_list There are two important consequences to this hit-generation layout.
Reimplemented from protocols::match::downstream::DownstreamAlgorithm.
Definition at line 83 of file SecondaryMatcherToDownstreamResidue.cc.
References protocols::fldsgn::topology::compare(), core::sequence::end, focused_geomcst_id_, protocols::match::downstream::DownstreamAlgorithm::geom_cst_id(), protocols::match::Matcher::per_constraint_build_points(), prepare_for_hit_generation(), prepare_for_hit_generation_at_target_build_point(), prepare_for_hit_generation_for_geomcst(), protocols::match::Matcher::representative_downstream_algorithm(), protocols::match::downstream::TR(), and protocols::match::Matcher::upstream_builder().
|
virtual |
Implements protocols::match::downstream::DownstreamAlgorithm.
Definition at line 76 of file SecondaryMatcherToDownstreamResidue.cc.
References SecondaryMatcherToDownstreamResidue().
|
private |
Definition at line 454 of file SecondaryMatcherToDownstreamResidue.cc.
References downstream_atom_coordinates_needed_.
Referenced by prepare_for_hit_generation_for_geomcst().
|
virtual |
This method returns 'false' since this matcher does not describe the coordinates of the downstream partner at all.
Implements protocols::match::downstream::DownstreamAlgorithm.
Definition at line 286 of file SecondaryMatcherToDownstreamResidue.cc.
|
private |
|
virtual |
This method is invoked by the Matcher as it enumerates matches should this class return "true" in it's upstream_only. method. The Matcher will enumerate matches placing hits into the match for all of the geometric-constraints which describe the downstream partner's 6D coordinates in their hits, and then for all other geometric constraints in ascending order. The hits for upstream residues 1 to geom_cst_id() - 1 are all valid; the hit for geom-cst i, given that i > geom_cst_id() - 1 is valid if and only if the downstream algorithm for geom-cst i returns true in it's upstream_only(). The Hit const * list should point at the Matcher's hits. Between prepare-for-match enumeration and note_match_enumeration_completed, the Matcher provides a guarantee to the downstream algorithm that it's hit lists have not changed, and therefore all Hit *'s remain valid. The Matcher is providing a "match_dspos1 const &" instead of a "match const &" because this DownstreamAlgorithm should not be examining the 6D coordinates of the downstream partner according to other geometric constraints, and because the Matcher's match_dspos1-enumeration technique could not readily construct a match, the Matcher's match-enumeration technique can readily construct a match_dspos1. Data in the input match_dspos1 relating to the downstream partner is undefined.
Implements protocols::match::downstream::DownstreamAlgorithm.
Definition at line 293 of file SecondaryMatcherToDownstreamResidue.cc.
|
virtual |
Implements protocols::match::downstream::DownstreamAlgorithm.
Definition at line 301 of file SecondaryMatcherToDownstreamResidue.cc.
References target_downstream_coords_.
|
private |
Definition at line 331 of file SecondaryMatcherToDownstreamResidue.cc.
References downstream_atom_coordinates_needed_, downstream_restype_, focused_geomcst_id_, protocols::match::downstream::DownstreamAlgorithm::geom_cst_id(), protocols::match::Matcher::nonconst_downstream_algorithms(), target_downstream_coords_, and protocols::match::downstream::TR().
Referenced by build_hits_at_all_positions().
|
private |
Definition at line 464 of file SecondaryMatcherToDownstreamResidue.cc.
References downstream_atom_coordinates_needed_, downstream_restype_, focused_geomcst_id_, protocols::match::downstream::DownstreamAlgorithm::get_dsbuilder(), hits_for_focused_geomcst_and_build_point_begin_, hits_for_focused_geomcst_and_build_point_end_, hits_for_focused_geomcst_end_, protocols::match::upstream::ScaffoldBuildPoint::index(), protocols::match::upstream::ScaffoldBuildPoint::original_insertion_point(), core::conformation::Residue::set_xyz(), target_downstream_coords_, and protocols::match::downstream::TR().
Referenced by build_hits_at_all_positions().
|
private |
Definition at line 410 of file SecondaryMatcherToDownstreamResidue.cc.
References protocols::toolbox::match_enzdes_util::LigandConformer::collision_check_id_2_restype_id(), downstream_atom_coordinates_needed_, protocols::match::Matcher::downstream_builder(), ds_atom_present(), focused_geomcst_id_, protocols::match::downstream::DownstreamAlgorithm::geom_cst_id(), protocols::match::downstream::DownstreamAlgorithm::get_dsbuilder(), protocols::match::Matcher::hits(), hits_for_focused_geomcst_and_build_point_begin_, hits_for_focused_geomcst_and_build_point_end_, hits_for_focused_geomcst_end_, protocols::toolbox::match_enzdes_util::LigandConformer::n_collision_check_atoms(), protocols::match::Matcher::nonconst_downstream_algorithms(), protocols::match::downstream::DownstreamAlgorithm::set_dsbuilder(), and target_downstream_coords_.
Referenced by build_hits_at_all_positions().
|
virtual |
Remove my hits if they fall into a volume of the occupied space hash that is no longer occupied.
Drop hits that had previously seemed viable after another round completed; during that round, certain previously occupied regions of 6D were not filled with new hits. Any previously-generated hit that falls into a region of 6D which is no longer occupied should be elminated since it could not ever result in a match; it is inviable.
Reimplemented from protocols::match::downstream::DownstreamAlgorithm.
Definition at line 176 of file SecondaryMatcherToDownstreamResidue.cc.
References protocols::match::Matcher::erase_hit(), protocols::match::downstream::DownstreamAlgorithm::geom_cst_id(), protocols::match::Matcher::hit_list_begin(), protocols::match::Matcher::hit_list_end(), protocols::match::Matcher::hits(), protocols::match::Matcher::occ_space_hash(), occspace_rev_id_at_last_update_, and protocols::match::downstream::TR().
|
virtual |
mimic the classic matcher's reset of the Occupied space hash.
Reimplemented from protocols::match::downstream::DownstreamAlgorithm.
Definition at line 134 of file SecondaryMatcherToDownstreamResidue.cc.
References protocols::match::downstream::DownstreamAlgorithm::geom_cst_id(), protocols::match::Matcher::hits(), protocols::match::Matcher::occ_space_hash(), occspace_rev_id_at_last_update_, and protocols::match::downstream::TR().
|
inline |
Definition at line 159 of file SecondaryMatcherToDownstreamResidue.hh.
References catalytic_atoms_.
| void protocols::match::downstream::SecondaryMatcherToDownstreamResidue::set_downstream_restype | ( | core::chemical::ResidueTypeCOP | downstream_restype) |
Definition at line 308 of file SecondaryMatcherToDownstreamResidue.cc.
References downstream_restype_.
|
inlineprivate |
Definition at line 204 of file SecondaryMatcherToDownstreamResidue.hh.
References downstream_atom_coordinates_needed_.
| void protocols::match::downstream::SecondaryMatcherToDownstreamResidue::set_focused_geomcst_id | ( | Size | focused_geomcst_id) |
Definition at line 315 of file SecondaryMatcherToDownstreamResidue.cc.
References focused_geomcst_id_.
|
private |
Allow another SecondaryMatcherToDownstreamResidue to set my TargetRotamerCoords object so that we can share this data.
Definition at line 533 of file SecondaryMatcherToDownstreamResidue.cc.
References target_downstream_coords_.
|
virtual |
returns false; this secondary matcher describes the location of the downstream partner even though it does not generate that location itself. Matches may be found by hashing the 6D coordinate of the downstream partner.
Implements protocols::match::downstream::DownstreamAlgorithm.
Definition at line 280 of file SecondaryMatcherToDownstreamResidue.cc.
|
private |
Definition at line 236 of file SecondaryMatcherToDownstreamResidue.hh.
Referenced by build(), SecondaryMatcherToDownstreamResidue(), and set_catalytic_atoms().
|
private |
Definition at line 231 of file SecondaryMatcherToDownstreamResidue.hh.
Referenced by build(), ds_atom_present(), prepare_for_hit_generation(), prepare_for_hit_generation_at_target_build_point(), prepare_for_hit_generation_for_geomcst(), and set_ds_coords_needed().
|
private |
Definition at line 220 of file SecondaryMatcherToDownstreamResidue.hh.
Referenced by build(), prepare_for_hit_generation(), prepare_for_hit_generation_at_target_build_point(), and set_downstream_restype().
|
private |
Definition at line 225 of file SecondaryMatcherToDownstreamResidue.hh.
Referenced by build_hits_at_all_positions(), prepare_for_hit_generation(), prepare_for_hit_generation_at_target_build_point(), prepare_for_hit_generation_for_geomcst(), and set_focused_geomcst_id().
|
private |
Definition at line 226 of file SecondaryMatcherToDownstreamResidue.hh.
Referenced by prepare_for_hit_generation_at_target_build_point(), and prepare_for_hit_generation_for_geomcst().
|
private |
Definition at line 227 of file SecondaryMatcherToDownstreamResidue.hh.
Referenced by prepare_for_hit_generation_at_target_build_point(), and prepare_for_hit_generation_for_geomcst().
|
private |
Definition at line 228 of file SecondaryMatcherToDownstreamResidue.hh.
Referenced by prepare_for_hit_generation_at_target_build_point(), and prepare_for_hit_generation_for_geomcst().
|
private |
Definition at line 239 of file SecondaryMatcherToDownstreamResidue.hh.
Referenced by respond_to_peripheral_hitlist_change(), and respond_to_primary_hitlist_change().
|
private |
Definition at line 222 of file SecondaryMatcherToDownstreamResidue.hh.
Referenced by add_evaluator(), and build().
|
mutableprivate |
Definition at line 230 of file SecondaryMatcherToDownstreamResidue.hh.
Referenced by build(), n_possible_hits_per_upstream_conformation(), prepare_for_hit_generation(), prepare_for_hit_generation_at_target_build_point(), prepare_for_hit_generation_for_geomcst(), and set_target_rotamer_coords().
|
private |
Definition at line 221 of file SecondaryMatcherToDownstreamResidue.hh.
Referenced by build().
1.8.4